2012-02-23 07:05:32 +00:00
|
|
|
// ERPNext - web based ERP (http://erpnext.com)
|
|
|
|
// Copyright (C) 2012 Web Notes Technologies Pvt Ltd
|
|
|
|
//
|
|
|
|
// This program is free software: you can redistribute it and/or modify
|
|
|
|
// it under the terms of the GNU General Public License as published by
|
|
|
|
// the Free Software Foundation, either version 3 of the License, or
|
|
|
|
// (at your option) any later version.
|
|
|
|
//
|
|
|
|
// This program is distributed in the hope that it will be useful,
|
|
|
|
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
|
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
|
|
// GNU General Public License for more details.
|
|
|
|
//
|
|
|
|
// You should have received a copy of the GNU General Public License
|
|
|
|
// along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
|
|
|
2012-01-20 08:17:16 +00:00
|
|
|
/* toolbar settings */
|
|
|
|
wn.provide('erpnext.toolbar');
|
|
|
|
|
|
|
|
erpnext.toolbar.setup = function() {
|
2012-02-21 11:56:50 +00:00
|
|
|
// modules
|
|
|
|
erpnext.toolbar.add_modules();
|
|
|
|
|
2012-01-20 08:17:16 +00:00
|
|
|
// profile
|
2012-02-27 12:47:57 +00:00
|
|
|
$('#toolbar-user').append('<li><a href="#!profile-settings">Profile Settings</a></li>');
|
2012-02-21 11:56:50 +00:00
|
|
|
|
2012-02-27 11:47:48 +00:00
|
|
|
$('.navbar .pull-right').append('\
|
2012-02-27 12:47:57 +00:00
|
|
|
<li><a href="#!messages" title="Unread Messages"><span class="navbar-new-comments"></span></a></li>');
|
2012-01-20 08:17:16 +00:00
|
|
|
|
|
|
|
// help
|
2012-02-27 11:47:48 +00:00
|
|
|
$('.navbar .pull-right').prepend('<li class="dropdown">\
|
2012-02-21 05:49:24 +00:00
|
|
|
<a class="dropdown-toggle" data-toggle="dropdown" href="#" \
|
|
|
|
onclick="return false;">Help<b class="caret"></b></a>\
|
2012-01-20 08:17:16 +00:00
|
|
|
<ul class="dropdown-menu" id="toolbar-help">\
|
|
|
|
</ul></li>')
|
|
|
|
|
|
|
|
$('#toolbar-help').append('<li><a href="http://erpnext.blogspot.com/2011/03/erpnext-help.html" target="_blank">\
|
|
|
|
Documentation</a></li>')
|
|
|
|
|
|
|
|
$('#toolbar-help').append('<li><a href="http://groups.google.com/group/erpnext-user-forum" target="_blank">\
|
|
|
|
Forum</a></li>')
|
|
|
|
|
|
|
|
$('#toolbar-help').append('<li><a href="http://www.providesupport.com?messenger=iwebnotes" target="_blank">\
|
|
|
|
Live Chat (Office Hours)</a></li>')
|
|
|
|
|
2012-03-16 12:58:09 +00:00
|
|
|
$.extend(wn.container.wntoolbar, {
|
2012-02-20 11:01:55 +00:00
|
|
|
set_new_comments: function(new_comments) {
|
2012-02-27 11:47:48 +00:00
|
|
|
var navbar_nc = $('.navbar-new-comments');
|
2012-02-20 11:01:55 +00:00
|
|
|
if(new_comments && new_comments.length>0) {
|
2012-02-27 11:47:48 +00:00
|
|
|
navbar_nc.text(new_comments.length);
|
|
|
|
navbar_nc.addClass('navbar-new-comments-true')
|
2012-02-20 11:01:55 +00:00
|
|
|
$.each(new_comments, function(i, v) {
|
|
|
|
var msg = 'New Message: ' + (v[1].length<=100 ? v[1] : (v[1].substr(0, 100) + "..."));
|
|
|
|
var id = v[0].replace('/', '-');
|
|
|
|
if(!$('#' + id)[0]) { show_alert(msg, id); }
|
|
|
|
})
|
|
|
|
} else {
|
2012-02-27 11:47:48 +00:00
|
|
|
navbar_nc.removeClass('navbar-new-comments-true');
|
|
|
|
navbar_nc.text(0);
|
2012-02-20 11:01:55 +00:00
|
|
|
}
|
|
|
|
}
|
|
|
|
});
|
|
|
|
|
2012-03-16 12:58:09 +00:00
|
|
|
wn.container.wntoolbar.set_new_comments();
|
2012-02-20 11:01:55 +00:00
|
|
|
}
|
|
|
|
|
2012-02-21 11:56:50 +00:00
|
|
|
erpnext.toolbar.add_modules = function() {
|
|
|
|
$('<li class="dropdown">\
|
|
|
|
<a class="dropdown-toggle" data-toggle="dropdown" href="#"\
|
|
|
|
onclick="return false;">Modules<b class="caret"></b></a>\
|
2012-02-28 13:26:56 +00:00
|
|
|
<ul class="dropdown-menu modules">\
|
2012-02-21 11:56:50 +00:00
|
|
|
</ul>\
|
2012-02-27 11:47:48 +00:00
|
|
|
</li>').prependTo('.navbar .nav:first');
|
2012-02-28 13:26:56 +00:00
|
|
|
|
|
|
|
// if no modules list then show all
|
|
|
|
if(wn.boot.modules_list)
|
|
|
|
wn.boot.modules_list = JSON.parse(wn.boot.modules_list);
|
|
|
|
else
|
2012-02-29 05:25:43 +00:00
|
|
|
wn.boot.modules_list = keys(erpnext.modules).sort();
|
2012-02-28 13:26:56 +00:00
|
|
|
|
|
|
|
// add to dropdown
|
|
|
|
for(var i in wn.boot.modules_list) {
|
|
|
|
var m = wn.boot.modules_list[i]
|
2012-02-29 05:25:43 +00:00
|
|
|
|
2012-03-01 05:54:45 +00:00
|
|
|
if(m!='Setup' && wn.boot.profile.allow_modules.indexOf(m)!=-1) {
|
2012-02-29 05:25:43 +00:00
|
|
|
args = {
|
|
|
|
module: m,
|
|
|
|
module_page: erpnext.modules[m],
|
|
|
|
module_label: m=='HR' ? 'Human Resources' : m
|
|
|
|
}
|
|
|
|
|
|
|
|
$('.navbar .modules').append(repl('<li><a href="#!%(module_page)s" \
|
|
|
|
data-module="%(module)s">%(module_label)s</a></li>', args));
|
2012-02-28 13:26:56 +00:00
|
|
|
}
|
|
|
|
}
|
2012-03-01 05:54:45 +00:00
|
|
|
|
|
|
|
// dasboard for accounts system manager
|
|
|
|
if(user_roles.indexOf("Accounts Manager")!=-1) {
|
|
|
|
$('.navbar .modules').append('<li><a href="#!dashboard" \
|
|
|
|
data-module="Dashboard">Dashboard</a></li>');
|
|
|
|
}
|
2012-02-28 13:26:56 +00:00
|
|
|
|
|
|
|
// setup for system manager
|
|
|
|
if(user_roles.indexOf("System Manager")!=-1) {
|
|
|
|
$('.navbar .modules').append('<li class="divider"></li>\
|
|
|
|
<li><a href="#!Setup" data-module="Setup">Setup</a></li>');
|
|
|
|
}
|
|
|
|
|
2012-02-21 11:56:50 +00:00
|
|
|
}
|
|
|
|
|