Skip to content

Commit

Permalink
Setup base URL after Swagger is initialized #1126
Browse files Browse the repository at this point in the history
  • Loading branch information
chornyi committed Jan 6, 2016
1 parent f0576f9 commit f8625e3
Show file tree
Hide file tree
Showing 2 changed files with 71 additions and 73 deletions.
74 changes: 71 additions & 3 deletions springfox-swagger-ui/src/web/js/springfox.js
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,75 @@ $(function() {
}
};
window.springfox = springfox;
window.oAuthRedirectUrl = springfox.baseUrl() + '/webjars/springfox-swagger-ui/o2c.html'
window.oAuthRedirectUrl = springfox.baseUrl() + '/webjars/springfox-swagger-ui/o2c.html';

window.springfox.uiConfig(function(data) {
window.swaggerUi = new SwaggerUi({
dom_id: "swagger-ui-container",
validatorUrl: data.validatorUrl,
supportedSubmitMethods: ['get', 'post', 'put', 'delete', 'patch'],
onComplete: function(swaggerApi, swaggerUi) {

initializeSpringfox();

if (window.SwaggerTranslator) {
window.SwaggerTranslator.translate();
}

$('pre code').each(function(i, e) {
hljs.highlightBlock(e)
});

},
onFailure: function(data) {
log("Unable to Load SwaggerUI");
},
docExpansion: "none",
apisSorter: "alpha",
showRequestHeaders: false
});

initializeBaseUrl();

function addApiKeyAuthorization() {
var key = encodeURIComponent($('#input_apiKey')[0].value);
if (key && key.trim() != "") {
var apiKeyAuth = new SwaggerClient.ApiKeyAuthorization("api_key", key, window.apiKeyVehicle);
window.swaggerUi.api.clientAuthorizations.add("api_key", apiKeyAuth);
log("added key " + key);
}
}

$('#input_apiKey').change(addApiKeyAuthorization);

function log() {
if ('console' in window) {
console.log.apply(console, arguments);
}
}

function oAuthIsDefined(security) {
return security.clientId
&& security.clientSecret
&& security.appName
&& security.realm;
}

function initializeSpringfox() {
var security = {};
window.springfox.securityConfig(function(data) {
security = data;
window.apiKeyVehicle = security.apiKeyVehicle || 'query';
if (security.apiKey) {
$('#input_apiKey').val(security.apiKey);
addApiKeyAuthorization();
}
if (typeof initOAuth == "function" && oAuthIsDefined(security)) {
initOAuth(security);
}
});
}
});

$('#select_baseUrl').change(function() {
window.swaggerUi.headerView.trigger('update-swagger-ui', {
Expand All @@ -32,7 +100,7 @@ $(function() {
return withRelativePath + location;
}

$(document).ready(function() {
function initializeBaseUrl() {
var relativeLocation = springfox.baseUrl();

$('#input_baseUrl').hide();
Expand All @@ -50,7 +118,7 @@ $(function() {
$urlDropdown.change();
});

});
}

});

Expand Down
70 changes: 0 additions & 70 deletions springfox-swagger-ui/src/web/swagger-ui.html
Original file line number Diff line number Diff line change
Expand Up @@ -23,76 +23,6 @@
<script src='webjars/springfox-swagger-ui/lib/swagger-oauth.js' type='text/javascript'></script>

<script src='webjars/springfox-swagger-ui/springfox.js' type='text/javascript'></script>
<script type="text/javascript">
$(function() {

window.springfox.uiConfig(function(data) {
window.swaggerUi = new SwaggerUi({
dom_id: "swagger-ui-container",
validatorUrl: data.validatorUrl,
supportedSubmitMethods: ['get', 'post', 'put', 'delete', 'patch'],
onComplete: function(swaggerApi, swaggerUi) {

initializeSpringfox();

if (window.SwaggerTranslator) {
window.SwaggerTranslator.translate();
}

$('pre code').each(function(i, e) {
hljs.highlightBlock(e)
});

},
onFailure: function(data) {
log("Unable to Load SwaggerUI");
},
docExpansion: "none",
apisSorter: "alpha",
showRequestHeaders: false
});

function addApiKeyAuthorization() {
var key = encodeURIComponent($('#input_apiKey')[0].value);
if (key && key.trim() != "") {
var apiKeyAuth = new SwaggerClient.ApiKeyAuthorization("api_key", key, window.apiKeyVehicle);
window.swaggerUi.api.clientAuthorizations.add("api_key", apiKeyAuth);
log("added key " + key);
}
}

$('#input_apiKey').change(addApiKeyAuthorization);

function log() {
if ('console' in window) {
console.log.apply(console, arguments);
}
}

function oAuthIsDefined(security) {
return security.clientId
&& security.clientSecret
&& security.appName
&& security.realm;
}

function initializeSpringfox() {
var security = {};
window.springfox.securityConfig(function(data) {
security = data;
window.apiKeyVehicle = security.apiKeyVehicle || 'query';
if (security.apiKey) {
$('#input_apiKey').val(security.apiKey);
addApiKeyAuthorization();
}
if (typeof initOAuth == "function" && oAuthIsDefined(security)) {
initOAuth(security);
}
});
}
});
});
</script>
</head>

<body class="swagger-section">
Expand Down

0 comments on commit f8625e3

Please sign in to comment.