forked from matrix-org/matrix.org
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathswagger-ui.patch
80 lines (75 loc) · 2.78 KB
/
swagger-ui.patch
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
--- api/client-server/index.html 2017-08-03 11:16:08.456850097 +0100
+++ api/client-server/index.html 2017-08-03 11:19:33.398545134 +0100
@@ -24,6 +24,7 @@
<script src='lib/highlight.9.1.0.pack.js' type='text/javascript'></script>
<script src='lib/highlight.9.1.0.pack_extended.js' type='text/javascript'></script>
<script src='lib/jsoneditor.min.js' type='text/javascript'></script>
+ <script src='lib/js-yaml.min.js' type='text/javascript'></script>
<script src='lib/marked.js' type='text/javascript'></script>
<script src='lib/swagger-oauth.js' type='text/javascript'></script>
@@ -38,7 +39,7 @@
if (url && url.length > 1) {
url = decodeURIComponent(url[1]);
} else {
- url = "http://petstore.swagger.io/v2/swagger.json";
+ url = window.location.pathname.replace(/[^/]*$/, '') + "json/api-docs.json";
}
hljs.configure({
@@ -65,6 +66,11 @@
});
}
+ if (!window.hs_url) {
+ window.hs_url = swaggerUi.api.scheme + "://" + swaggerUi.api.host;
+ }
+ setHsUrl(window.hs_url);
+
if(window.SwaggerTranslator) {
window.SwaggerTranslator.translate();
}
@@ -86,23 +92,37 @@
console.log.apply(console, arguments);
}
}
- });
+
+ $("#url_selector").submit(function(ev) {
+ ev.preventDefault();
+ window.hs_url = $("#serverurl").attr("value");
+ setHsUrl(window.hs_url);
+ });
+ });
+ function setHsUrl(hs_url) {
+ var r = hs_url.split("://", 2);
+ $("#serverurl").attr("value", hs_url);
+ window.swaggerUi.api.setSchemes([r[0]]);
+ window.swaggerUi.api.setHost(r[1]);
+ }
</script>
+
+<link rel="stylesheet" href="/swagger.css">
+
</head>
<body class="swagger-section">
-<div id='header'>
- <div class="swagger-ui-wrap">
- <a id="logo" href="http://swagger.io"><img class="logo__img" alt="swagger" height="30" width="30" src="images/logo_small.png" /><span class="logo__title">swagger</span></a>
- <form id='api_selector'>
- <div class='input'><input placeholder="http://example.com/api" id="input_baseUrl" name="baseUrl" type="text"/></div>
- <div id='auth_container'></div>
- <div class='input'><a id="explore" class="header__btn" href="#" data-sw-translate>Explore</a></div>
- </form>
- </div>
-</div>
<div id="message-bar" class="swagger-ui-wrap" data-sw-translate> </div>
+
+<form id="api_selector">
+ <div id="auth_container"></div>
+</form>
+<form id="url_selector" style="float: right; clear: right; margin: 10px 5px;">
+ <label for="serverurl">Homeserver URL:</label>
+ <input type="text" id="serverurl"/>
+ <input type="submit" value="Update"/>
+</form>
<div id="swagger-ui-container" class="swagger-ui-wrap"></div>
</body>
</html>