cleaned out some global variables
parent
ff4c0ab289
commit
82f1ba61f3
|
@ -387,13 +387,13 @@ var AppRouter = Backbone.Router.extend({
|
||||||
this.accessTokensList = new AccessTokenCollection();
|
this.accessTokensList = new AccessTokenCollection();
|
||||||
this.refreshTokensList = new RefreshTokenCollection();
|
this.refreshTokensList = new RefreshTokenCollection();
|
||||||
|
|
||||||
|
this.clientListView = new ClientListView({model:this.clientList, stats: this.clientStats, systemScopeList: this.systemScopeList, whiteListList: this.whiteListList});
|
||||||
this.clientListView = new ClientListView({model:this.clientList, stats: this.clientStats});
|
this.whiteListListView = new WhiteListListView({model:this.whiteListList, clientList: this.clientList, systemScopeList: this.systemScopeList});
|
||||||
this.whiteListListView = new WhiteListListView({model:this.whiteListList});
|
this.approvedSiteListView = new ApprovedSiteListView({model:this.approvedSiteList, clientList: this.clientList, systemScopeList: this.systemScopeList});
|
||||||
this.approvedSiteListView = new ApprovedSiteListView({model:this.approvedSiteList});
|
|
||||||
this.blackListListView = new BlackListListView({model:this.blackListList});
|
this.blackListListView = new BlackListListView({model:this.blackListList});
|
||||||
this.systemScopeListView = new SystemScopeListView({model:this.systemScopeList});
|
this.systemScopeListView = new SystemScopeListView({model:this.systemScopeList});
|
||||||
this.tokensListView = new TokenListView({model: {access: this.accessTokensList, refresh: this.refreshTokensList}});
|
this.tokensListView = new TokenListView({model: {access: this.accessTokensList, refresh: this.refreshTokensList}, clientList: this.clientList, systemScopeList: this.systemScopeList});
|
||||||
|
this.dynRegRootView = new DynRegRootView({systemScopeList: this.systemScopeList});
|
||||||
|
|
||||||
this.breadCrumbView = new BreadCrumbView({
|
this.breadCrumbView = new BreadCrumbView({
|
||||||
collection:new Backbone.Collection()
|
collection:new Backbone.Collection()
|
||||||
|
@ -401,6 +401,15 @@ var AppRouter = Backbone.Router.extend({
|
||||||
|
|
||||||
this.breadCrumbView.render();
|
this.breadCrumbView.render();
|
||||||
|
|
||||||
|
// set up loading dependencies
|
||||||
|
|
||||||
|
/*
|
||||||
|
this.clientListView.dependsOn = [this.systemScopeList];
|
||||||
|
this.whiteListListView.dependsOn = [this.whiteListList, this.clientList];
|
||||||
|
this.accessTokensListView.dependsOn = [this.clientList];
|
||||||
|
this.refreshTokenListView.dependsOn = [this.clientList];
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
//
|
//
|
||||||
// Several items depend on the clients and whitelists being loaded, so we're going to pre-fetch them here
|
// Several items depend on the clients and whitelists being loaded, so we're going to pre-fetch them here
|
||||||
|
@ -408,10 +417,12 @@ var AppRouter = Backbone.Router.extend({
|
||||||
//
|
//
|
||||||
|
|
||||||
// load things in the right order:
|
// load things in the right order:
|
||||||
|
|
||||||
$("#loading").html("server configuration");
|
$("#loading").html("server configuration");
|
||||||
var base = $('base').attr('href');
|
var base = $('base').attr('href');
|
||||||
$.getJSON(base + '.well-known/openid-configuration', function(data) {
|
$.getJSON(base + '.well-known/openid-configuration', function(data) {
|
||||||
app.serverConfiguration = data;
|
app.serverConfiguration = data;
|
||||||
|
/**/
|
||||||
$("#content .progress .bar").css("width", "20%");
|
$("#content .progress .bar").css("width", "20%");
|
||||||
$("#loading").html("scopes");
|
$("#loading").html("scopes");
|
||||||
app.systemScopeList.fetch({
|
app.systemScopeList.fetch({
|
||||||
|
@ -428,10 +439,12 @@ var AppRouter = Backbone.Router.extend({
|
||||||
$("#loading").html("statistics");
|
$("#loading").html("statistics");
|
||||||
app.clientStats.fetch({
|
app.clientStats.fetch({
|
||||||
success: function(model, response) {
|
success: function(model, response) {
|
||||||
|
/**/
|
||||||
$("#content .progress .bar").css("width", "100%");
|
$("#content .progress .bar").css("width", "100%");
|
||||||
$("#loading").html("console");
|
$("#loading").html("console");
|
||||||
var baseUrl = $.url(app.serverConfiguration.issuer);
|
var baseUrl = $.url(app.serverConfiguration.issuer);
|
||||||
Backbone.history.start({pushState: true, root: baseUrl.attr('relative') + 'manage/'});
|
Backbone.history.start({pushState: true, root: baseUrl.attr('relative') + 'manage/'});
|
||||||
|
/**/
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
@ -440,6 +453,7 @@ var AppRouter = Backbone.Router.extend({
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
/**/
|
||||||
});
|
});
|
||||||
|
|
||||||
},
|
},
|
||||||
|
@ -489,7 +503,7 @@ var AppRouter = Backbone.Router.extend({
|
||||||
idTokenValiditySeconds:600
|
idTokenValiditySeconds:600
|
||||||
}, { silent: true });
|
}, { silent: true });
|
||||||
|
|
||||||
this.clientFormView = new ClientFormView({model:client});
|
this.clientFormView = new ClientFormView({model:client, systemScopeList: this.systemScopeList});
|
||||||
$('#content').html(this.clientFormView.render().el);
|
$('#content').html(this.clientFormView.render().el);
|
||||||
setPageTitle("New Client");
|
setPageTitle("New Client");
|
||||||
},
|
},
|
||||||
|
@ -527,7 +541,7 @@ var AppRouter = Backbone.Router.extend({
|
||||||
displayClientSecret:false
|
displayClientSecret:false
|
||||||
}, { silent: true });
|
}, { silent: true });
|
||||||
|
|
||||||
this.clientFormView = new ClientFormView({model:client});
|
this.clientFormView = new ClientFormView({model:client, systemScopeList: this.systemScopeList});
|
||||||
$('#content').html(this.clientFormView.render().el);
|
$('#content').html(this.clientFormView.render().el);
|
||||||
|
|
||||||
setPageTitle("Edit Client");
|
setPageTitle("Edit Client");
|
||||||
|
@ -577,7 +591,7 @@ var AppRouter = Backbone.Router.extend({
|
||||||
allowedScopes: client.get('scope')
|
allowedScopes: client.get('scope')
|
||||||
}, { silent: true });
|
}, { silent: true });
|
||||||
|
|
||||||
this.whiteListFormView = new WhiteListFormView({model: whiteList, client: client});
|
this.whiteListFormView = new WhiteListFormView({model: whiteList, client: client, systemScopeList: this.systemScopeList});
|
||||||
$('#content').html(this.whiteListFormView.render().el);
|
$('#content').html(this.whiteListFormView.render().el);
|
||||||
setPageTitle("Create New Whitelist");
|
setPageTitle("Create New Whitelist");
|
||||||
} else {
|
} else {
|
||||||
|
@ -607,7 +621,7 @@ var AppRouter = Backbone.Router.extend({
|
||||||
|
|
||||||
// if there's no client, this is an error
|
// if there's no client, this is an error
|
||||||
if (client != null) {
|
if (client != null) {
|
||||||
this.whiteListFormView = new WhiteListFormView({model: whiteList, client: client});
|
this.whiteListFormView = new WhiteListFormView({model: whiteList, client: client, systemScopeList: this.systemScopeList});
|
||||||
$('#content').html(this.whiteListFormView.render().el);
|
$('#content').html(this.whiteListFormView.render().el);
|
||||||
setPageTitle("Edit Whitelist");
|
setPageTitle("Edit Whitelist");
|
||||||
|
|
||||||
|
@ -760,7 +774,6 @@ var AppRouter = Backbone.Router.extend({
|
||||||
{text:"Client Registration", href:"manage/#dev/dynreg"}
|
{text:"Client Registration", href:"manage/#dev/dynreg"}
|
||||||
]);
|
]);
|
||||||
|
|
||||||
this.dynRegRootView = new DynRegRootView();
|
|
||||||
$('#content').html(this.dynRegRootView.render().el);
|
$('#content').html(this.dynRegRootView.render().el);
|
||||||
|
|
||||||
setPageTitle("Self-service Client Registration");
|
setPageTitle("Self-service Client Registration");
|
||||||
|
|
|
@ -135,10 +135,10 @@ var ClientView = Backbone.View.extend({
|
||||||
},
|
},
|
||||||
|
|
||||||
render:function (eventName) {
|
render:function (eventName) {
|
||||||
var json = {client: this.model.toJSON(), count: this.options.count};
|
var json = {client: this.model.toJSON(), count: this.options.count, whiteList: this.options.whiteList};
|
||||||
this.$el.html(this.template(json));
|
this.$el.html(this.template(json));
|
||||||
|
|
||||||
$('.scope-list', this.el).html(this.scopeTemplate({scopes: this.model.get('scope'), systemScopes: app.systemScopeList}));
|
$('.scope-list', this.el).html(this.scopeTemplate({scopes: this.model.get('scope'), systemScopes: this.options.systemScopeList}));
|
||||||
|
|
||||||
this.$('.dynamically-registered').tooltip({title: 'This client was dynamically registered'});
|
this.$('.dynamically-registered').tooltip({title: 'This client was dynamically registered'});
|
||||||
|
|
||||||
|
@ -157,8 +157,7 @@ var ClientView = Backbone.View.extend({
|
||||||
},
|
},
|
||||||
|
|
||||||
whiteListClient:function() {
|
whiteListClient:function() {
|
||||||
var whiteList = app.whiteListList.getByClientId(this.model.get('clientId'));
|
if (this.options.whiteList == null) {
|
||||||
if (whiteList == null) {
|
|
||||||
// create a new one
|
// create a new one
|
||||||
app.navigate('admin/whitelist/new/' + this.model.id, {trigger: true});
|
app.navigate('admin/whitelist/new/' + this.model.id, {trigger: true});
|
||||||
} else {
|
} else {
|
||||||
|
@ -246,11 +245,15 @@ var ClientListView = Backbone.View.extend({
|
||||||
// append and render table structure
|
// append and render table structure
|
||||||
$(this.el).html($('#tmpl-client-table').html());
|
$(this.el).html($('#tmpl-client-table').html());
|
||||||
|
|
||||||
|
var whiteList = this.options.whiteListList.getByClientId(this.model.get('clientId'));
|
||||||
|
|
||||||
_.each(this.model.models, function (client) {
|
_.each(this.model.models, function (client) {
|
||||||
$("#client-table",this.el).append(
|
$("#client-table",this.el).append(
|
||||||
new ClientView({
|
new ClientView({
|
||||||
model:client,
|
model:client,
|
||||||
count:this.options.stats.get(client.get('id'))
|
count:this.options.stats.get(client.get('id')),
|
||||||
|
systemScopeList: this.options.systemScopeList,
|
||||||
|
whiteList: this.options.whiteListList.getByClientId(client.get('clientId'))
|
||||||
}).render().el);
|
}).render().el);
|
||||||
}, this);
|
}, this);
|
||||||
|
|
||||||
|
@ -637,7 +640,7 @@ var ClientFormView = Backbone.View.extend({
|
||||||
|
|
||||||
$("#scope .controls",this.el).html(new ListWidgetView({
|
$("#scope .controls",this.el).html(new ListWidgetView({
|
||||||
placeholder: 'new scope',
|
placeholder: 'new scope',
|
||||||
autocomplete: _.uniq(_.flatten(app.systemScopeList.pluck("value"))),
|
autocomplete: _.uniq(_.flatten(this.options.systemScopeList.pluck("value"))),
|
||||||
collection: this.scopeCollection}).render().el);
|
collection: this.scopeCollection}).render().el);
|
||||||
|
|
||||||
// build and bind contacts
|
// build and bind contacts
|
||||||
|
|
|
@ -96,7 +96,7 @@ var DynRegRootView = Backbone.View.extend({
|
||||||
|
|
||||||
client.fetch({success: function() {
|
client.fetch({success: function() {
|
||||||
|
|
||||||
var dynRegEditView = new DynRegEditView({model: client});
|
var dynRegEditView = new DynRegEditView({model: client, systemScopeList: this.systemScopeList});
|
||||||
|
|
||||||
$('#content').html(dynRegEditView.render().el);
|
$('#content').html(dynRegEditView.render().el);
|
||||||
app.navigate('dev/dynreg/edit', {trigger: true});
|
app.navigate('dev/dynreg/edit', {trigger: true});
|
||||||
|
@ -352,7 +352,7 @@ var DynRegEditView = Backbone.View.extend({
|
||||||
|
|
||||||
$("#scope .controls",this.el).html(new ListWidgetView({
|
$("#scope .controls",this.el).html(new ListWidgetView({
|
||||||
placeholder: 'new scope',
|
placeholder: 'new scope',
|
||||||
autocomplete: _.uniq(_.flatten(app.systemScopeList.pluck("value"))),
|
autocomplete: _.uniq(_.flatten(this.options.systemScopeList.pluck("value"))),
|
||||||
collection: this.scopeCollection}).render().el);
|
collection: this.scopeCollection}).render().el);
|
||||||
|
|
||||||
// build and bind contacts
|
// build and bind contacts
|
||||||
|
|
|
@ -45,14 +45,14 @@ var ApprovedSiteListView = Backbone.View.extend({
|
||||||
|
|
||||||
_.each(this.model.models, function(approvedSite) {
|
_.each(this.model.models, function(approvedSite) {
|
||||||
// look up client
|
// look up client
|
||||||
var client = app.clientList.getByClientId(approvedSite.get('clientId'));
|
var client = this.options.clientList.getByClientId(approvedSite.get('clientId'));
|
||||||
|
|
||||||
if (client != null) {
|
if (client != null) {
|
||||||
|
|
||||||
if (approvedSite.get('whitelistedSite') != null) {
|
if (approvedSite.get('whitelistedSite') != null) {
|
||||||
$('#grant-whitelist-table', this.el).append(new ApprovedSiteView({model: approvedSite, client: client}).render().el);
|
$('#grant-whitelist-table', this.el).append(new ApprovedSiteView({model: approvedSite, client: client, systemScopeList: this.options.systemScopeList}).render().el);
|
||||||
} else {
|
} else {
|
||||||
$('#grant-table', this.el).append(new ApprovedSiteView({model: approvedSite, client: client}).render().el);
|
$('#grant-table', this.el).append(new ApprovedSiteView({model: approvedSite, client: client, systemScopeList: this.options.systemScopeList}).render().el);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -158,7 +158,7 @@ var ApprovedSiteView = Backbone.View.extend({
|
||||||
|
|
||||||
this.$el.html(this.template(json));
|
this.$el.html(this.template(json));
|
||||||
|
|
||||||
$('.scope-list', this.el).html(this.scopeTemplate({scopes: this.model.get('allowedScopes'), systemScopes: app.systemScopeList}));
|
$('.scope-list', this.el).html(this.scopeTemplate({scopes: this.model.get('allowedScopes'), systemScopes: this.options.systemScopeList}));
|
||||||
|
|
||||||
this.$('.dynamically-registered').tooltip({title: 'This client was dynamically registered'});
|
this.$('.dynamically-registered').tooltip({title: 'This client was dynamically registered'});
|
||||||
this.$('.whitelisted-site').tooltip({title: 'This site was whitelisted by an adminstrator'});
|
this.$('.whitelisted-site').tooltip({title: 'This site was whitelisted by an adminstrator'});
|
||||||
|
|
|
@ -84,7 +84,7 @@ var AccessTokenView = Backbone.View.extend({
|
||||||
$('.token-full', this.el).hide();
|
$('.token-full', this.el).hide();
|
||||||
|
|
||||||
// show scopes
|
// show scopes
|
||||||
$('.scope-list', this.el).html(this.scopeTemplate({scopes: this.model.get('scopes'), systemScopes: app.systemScopeList}));
|
$('.scope-list', this.el).html(this.scopeTemplate({scopes: this.model.get('scopes'), systemScopes: this.options.systemScopeList}));
|
||||||
|
|
||||||
return this;
|
return this;
|
||||||
},
|
},
|
||||||
|
@ -206,7 +206,7 @@ var RefreshTokenView = Backbone.View.extend({
|
||||||
$('.token-full', this.el).hide();
|
$('.token-full', this.el).hide();
|
||||||
|
|
||||||
// show scopes
|
// show scopes
|
||||||
$('.scope-list', this.el).html(this.scopeTemplate({scopes: this.model.get('scopes'), systemScopes: app.systemScopeList}));
|
$('.scope-list', this.el).html(this.scopeTemplate({scopes: this.model.get('scopes'), systemScopes: this.options.systemScopeList}));
|
||||||
|
|
||||||
return this;
|
return this;
|
||||||
|
|
||||||
|
@ -308,17 +308,17 @@ var TokenListView = Backbone.View.extend({
|
||||||
|
|
||||||
_.each(this.model.access.models, function (token) {
|
_.each(this.model.access.models, function (token) {
|
||||||
// look up client
|
// look up client
|
||||||
var client = app.clientList.getByClientId(token.get('clientId'));
|
var client = _self.options.clientList.getByClientId(token.get('clientId'));
|
||||||
|
|
||||||
$('#access-token-table', _self.el).append(new AccessTokenView({model: token, client: client}).render().el);
|
$('#access-token-table', _self.el).append(new AccessTokenView({model: token, client: client, systemScopeList: _self.options.systemScopeList}).render().el);
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
||||||
_.each(this.model.refresh.models, function (token) {
|
_.each(this.model.refresh.models, function (token) {
|
||||||
// look up client
|
// look up client
|
||||||
var client = app.clientList.getByClientId(token.get('clientId'));
|
var client = _self.options.clientList.getByClientId(token.get('clientId'));
|
||||||
|
|
||||||
$('#refresh-token-table', _self.el).append(new RefreshTokenView({model: token, client: client}).render().el);
|
$('#refresh-token-table', _self.el).append(new RefreshTokenView({model: token, client: client, systemScopeList: _self.options.systemScopeList}).render().el);
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
|
@ -60,11 +60,11 @@ var WhiteListListView = Backbone.View.extend({
|
||||||
_.each(this.model.models, function (whiteList) {
|
_.each(this.model.models, function (whiteList) {
|
||||||
|
|
||||||
// look up client
|
// look up client
|
||||||
var client = app.clientList.getByClientId(whiteList.get('clientId'));
|
var client = this.options.clientList.getByClientId(whiteList.get('clientId'));
|
||||||
|
|
||||||
// if there's no client ID, this is an error!
|
// if there's no client ID, this is an error!
|
||||||
if (client != null) {
|
if (client != null) {
|
||||||
$('#whitelist-table', this.el).append(new WhiteListView({model: whiteList, client: client}).render().el);
|
$('#whitelist-table', this.el).append(new WhiteListView({model: whiteList, client: client, systemScopeList: this.options.systemScopeList}).render().el);
|
||||||
}
|
}
|
||||||
|
|
||||||
}, this);
|
}, this);
|
||||||
|
@ -115,7 +115,7 @@ var WhiteListView = Backbone.View.extend({
|
||||||
|
|
||||||
this.$el.html(this.template(json));
|
this.$el.html(this.template(json));
|
||||||
|
|
||||||
$('.scope-list', this.el).html(this.scopeTemplate({scopes: this.model.get('allowedScopes'), systemScopes: app.systemScopeList}));
|
$('.scope-list', this.el).html(this.scopeTemplate({scopes: this.model.get('allowedScopes'), systemScopes: this.options.systemScopeList}));
|
||||||
|
|
||||||
this.$('.dynamically-registered').tooltip({title: 'This client was dynamically registered'});
|
this.$('.dynamically-registered').tooltip({title: 'This client was dynamically registered'});
|
||||||
|
|
||||||
|
|
|
@ -18,10 +18,12 @@
|
||||||
|
|
||||||
<script type="text/html" id="tmpl-client">
|
<script type="text/html" id="tmpl-client">
|
||||||
<td>
|
<td>
|
||||||
<% if (count) { %>
|
<% if (count == 0) { %>
|
||||||
|
<span class="label label-important">0</span>
|
||||||
|
<% } else if (count != null) { %>
|
||||||
<span class="label label-info"><%= count %></span>
|
<span class="label label-info"><%= count %></span>
|
||||||
<% } else { %>
|
<% } else { %>
|
||||||
<span class="label label-important">0</span>
|
<!-- hold for count -->
|
||||||
<% } %>
|
<% } %>
|
||||||
<% if (client.dynamicallyRegistered) { %>
|
<% if (client.dynamicallyRegistered) { %>
|
||||||
<span class="label label-inverse dynamically-registered"><i class="icon-globe icon-white"></i></span>
|
<span class="label label-inverse dynamically-registered"><i class="icon-globe icon-white"></i></span>
|
||||||
|
@ -64,7 +66,11 @@
|
||||||
|
|
||||||
<td>
|
<td>
|
||||||
<button class="btn btn-edit"><i class="icon-edit"></i> Edit</button>
|
<button class="btn btn-edit"><i class="icon-edit"></i> Edit</button>
|
||||||
<button class="btn btn-warning btn-whitelist">Whitelist</button>
|
<% if (whiteList != null) { %>
|
||||||
|
<button class="btn btn-warning btn-whitelist"><i class="icon-wrench icon-white"></i> Whitelist</button>
|
||||||
|
<% } else { %>
|
||||||
|
<button class="btn btn-warning btn-whitelist"><i class="icon-plus-sign icon-white"></i> Whitelist</button>
|
||||||
|
<% } %>
|
||||||
<button class="btn btn-danger btn-delete pull-right"><i class="icon-trash icon-white"></i> Delete</button>
|
<button class="btn btn-danger btn-delete pull-right"><i class="icon-trash icon-white"></i> Delete</button>
|
||||||
</td>
|
</td>
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue