mirror of
https://github.com/haiwen/seahub.git
synced 2025-05-31 11:07:10 +00:00
77 lines
2.1 KiB
JavaScript
77 lines
2.1 KiB
JavaScript
/*global define*/
|
|
define([
|
|
'jquery',
|
|
'backbone',
|
|
'common',
|
|
|
|
'orgadmin-app/views/side-nav',
|
|
|
|
'sysadmin-app/views/address-book',
|
|
'sysadmin-app/views/address-book-group',
|
|
|
|
'app/views/account'
|
|
], function($, Backbone, Common, SideNavView,
|
|
AddressBookView, AddressBookGroupView,
|
|
AccountView) {
|
|
|
|
"use strict";
|
|
|
|
var Router = Backbone.Router.extend({
|
|
routes: {
|
|
'': 'showAddressBook',
|
|
|
|
'address-book/': 'showAddressBook',
|
|
'address-book/groups/:group_id/': 'showAddressBookGroup',
|
|
|
|
// Default
|
|
'*actions': 'showAddressBook',
|
|
},
|
|
|
|
initialize: function() {
|
|
$('#initial-loading').hide()
|
|
.next('.row').removeClass('hide');
|
|
|
|
Common.prepareApiCsrf();
|
|
Common.initLocale();
|
|
|
|
this.accountView = new AccountView();
|
|
this.sideNavView = new SideNavView();
|
|
app.ui = {
|
|
sideNavView: this.sideNavView,
|
|
accountView: this.accountView
|
|
};
|
|
|
|
$('#info-bar .close').on('click', Common.closeTopNoticeBar);
|
|
|
|
this.addressBookView = new AddressBookView();
|
|
this.addressBookGroupView = new AddressBookGroupView();
|
|
},
|
|
|
|
switchCurrentView: function(newView) {
|
|
if (!this.currentView) {
|
|
this.currentView = newView;
|
|
} else {
|
|
if (this.currentView != newView) {
|
|
this.currentView.hide();
|
|
this.currentView = newView;
|
|
}
|
|
}
|
|
},
|
|
|
|
showAddressBook: function() {
|
|
this.switchCurrentView(this.addressBookView);
|
|
this.sideNavView.setCurTab('address-book');
|
|
this.addressBookView.show();
|
|
},
|
|
|
|
showAddressBookGroup: function(group_id) {
|
|
this.switchCurrentView(this.addressBookGroupView);
|
|
this.sideNavView.setCurTab('address-book');
|
|
this.addressBookGroupView.show({'group_id': group_id});
|
|
}
|
|
|
|
});
|
|
|
|
return Router;
|
|
});
|