new Promise(function (resolve, reject) {
var jobObj = jobItem[0];
newJobModel = new JobModel(jobObj);
- if (newJobModel) {
- resolve(newJobModel);
- } else {
- reject();
- }
+ resolve(newJobModel);
});
}
return data[name];
}
- /**
- * FIXME: unused code
- */
- function _findTreeNode(name) {
- var regular = name.replace(/([.?*+^$[\]\\(){}|-])/g, '\\$1');
- return $tree.treeview('findNodes', [ '^' + regular + '$' ])[0];
- }
-
function _setDefaultPackage(defaultPackages) {
var nodes = []
var pickDefault = _.pick(pkgInfo, defaultPackages);
$('#tic-navbar-login').toggleClass('hidden', true); // hidden
$('#tic-navbar-logout').toggleClass('hidden', false); // visible
$('#tic-page-logout-dropdown-toggle').html(user.data.user_email +'<span class="caret">');
+
+ updatePermission();
} else {
if (user.reason === 'email') {
logger.info('invalid email');
$('#tic-navbar-logout').toggleClass('hidden', true); // hidden
$('#tic-page-logout-dropdown-toggle').html('');
}
+ updatePermission();
});
});
+ function initSession() {
+ Util.GET('api/session')
+ .then(function (user) {
+ if (user.group !== 'GUEST') {
+ $('#tic-navbar-login').toggleClass('hidden', true); // hidden
+ $('#tic-navbar-logout').toggleClass('hidden', false); // visible
+ $('#tic-page-logout-dropdown-toggle').html(user.email +'<span class="caret">');
+ }
+ updatePermission();
+ });
+ }
+
+ initSession();
+ }
+
+ function updatePermission() {
+ // TODO: add permission control of group
+ Util.GET('api/session')
+ .then(function (user) {
+ if (user.group === 'ADMIN') {
+ $('#tic-package-create').toggleClass('hidden', false);
+ } else if (user.group === 'MASTER') {
+ $('#tic-package-create').toggleClass('hidden', false);
+ } else { // 'GUEST'
+ $('#tic-package-create').toggleClass('hidden', true);
+ }
+ });
}
init();