[auth] moved authorizations into the header

This commit is contained in:
Anna Bodnia
2016-03-07 18:09:49 +02:00
parent 91c1b2ccd7
commit 23332b1310
12 changed files with 122 additions and 71 deletions

40
dist/swagger-ui.js vendored
View File

@@ -18849,6 +18849,10 @@ window.SwaggerUi = Backbone.Router.extend({
if (this.mainView) {
this.mainView.clear();
}
if (this.authView) {
this.authView.remove();
}
var url = this.options.url;
if (url && url.indexOf('http') !== 0) {
url = this.buildUrl(window.location.href.toString(), url);
@@ -18880,6 +18884,7 @@ window.SwaggerUi = Backbone.Router.extend({
// This is bound to success handler for SwaggerApi
// so it gets called when SwaggerApi completes loading
render: function(){
var authsModel;
this.showMessage('Finished Loading Resource Information. Rendering Swagger UI...');
this.mainView = new SwaggerUi.Views.MainView({
model: this.api,
@@ -18887,6 +18892,20 @@ window.SwaggerUi = Backbone.Router.extend({
swaggerOptions: this.options,
router: this
}).render();
if (!_.isEmpty(this.api.securityDefinitions)){
authsModel = {
auths: _.map(this.api.securityDefinitions, function (auth, name) {
var result = {};
result[name] = auth;
return result;
})
};
this.authView = new SwaggerUi.Views.AuthButtonView({
model: authsModel,
router: this
});
$('#auth_container').append(this.authView.render().el);
}
this.showMessage();
switch (this.options.docExpansion) {
case 'full':
@@ -19318,8 +19337,7 @@ SwaggerUi.Views.HeaderView = Backbone.View.extend({
}
this.trigger('update-swagger-ui', {
url: $('#input_baseUrl').val(),
apiKey: $('#input_apiKey').val()
url: $('#input_baseUrl').val()
});
},
@@ -19330,7 +19348,6 @@ SwaggerUi.Views.HeaderView = Backbone.View.extend({
$('#input_baseUrl').val(url);
//$('#input_apiKey').val(apiKey);
if (trigger) {
this.trigger('update-swagger-ui', {url:url});
}
@@ -19422,26 +19439,9 @@ SwaggerUi.Views.MainView = Backbone.View.extend({
},
render: function () {
// Render the outer container for resources
var authsModel, parsedDefinitions;
$(this.el).html(Handlebars.templates.main(this.model));
this.model.securityDefinitions = this.model.securityDefinitions || {};
if (!_.isEmpty(this.model.securityDefinitions)) {
parsedDefinitions = _.map(this.model.securityDefinitions, function (auth, name) {
var result = {};
result[name] = auth;
return result;
});
authsModel = { auths: parsedDefinitions };
authsModel.isLogout = !_.isEmpty(window.swaggerUi.api.clientAuthorizations.authz);
this.authView = new SwaggerUi.Views.AuthButtonView({model: authsModel, router: this.router});
this.$('.authorize-wrapper').append(this.authView.render().el);
}
// Render each resource
var resources = {};