blob: bcd2ddd388f0b24cdba3d7c3a78185ca616c3133 [file] [log] [blame]
Rushabh Mehta3966f1d2012-02-23 12:35:32 +05301// ERPNext - web based ERP (http://erpnext.com)
2// Copyright (C) 2012 Web Notes Technologies Pvt Ltd
3//
4// This program is free software: you can redistribute it and/or modify
5// it under the terms of the GNU General Public License as published by
6// the Free Software Foundation, either version 3 of the License, or
7// (at your option) any later version.
8//
9// This program is distributed in the hope that it will be useful,
10// but WITHOUT ANY WARRANTY; without even the implied warranty of
11// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12// GNU General Public License for more details.
13//
14// You should have received a copy of the GNU General Public License
15// along with this program. If not, see <http://www.gnu.org/licenses/>.
16
Rushabh Mehta8c309be2012-01-20 13:47:16 +053017/* toolbar settings */
18wn.provide('erpnext.toolbar');
19
20erpnext.toolbar.setup = function() {
Rushabh Mehtad0251332012-02-21 17:26:50 +053021 // modules
22 erpnext.toolbar.add_modules();
23
Rushabh Mehta8c309be2012-01-20 13:47:16 +053024 // profile
Rushabh Mehta523aec42013-01-07 15:39:54 +053025 $('#toolbar-user').append('<li><a href="#Form/Profile/'+user+'">'
26 +wn._("My Settings")+'...</a></li>');
Rushabh Mehtad0251332012-02-21 17:26:50 +053027
Anand Doshi5b1beeb2012-02-27 17:17:48 +053028 $('.navbar .pull-right').append('\
Rushabh Mehta523aec42013-01-07 15:39:54 +053029 <li><a href="#!messages" title="'+wn._('Unread Messages')
30 +'"><span class="navbar-new-comments"></span></a></li>');
Rushabh Mehta8c309be2012-01-20 13:47:16 +053031
32 // help
Anand Doshi5b1beeb2012-02-27 17:17:48 +053033 $('.navbar .pull-right').prepend('<li class="dropdown">\
Rushabh Mehta6e156c72012-02-21 11:19:24 +053034 <a class="dropdown-toggle" data-toggle="dropdown" href="#" \
Rushabh Mehta523aec42013-01-07 15:39:54 +053035 onclick="return false;">'+wn._('Help')+'<b class="caret"></b></a>\
Rushabh Mehta8c309be2012-01-20 13:47:16 +053036 <ul class="dropdown-menu" id="toolbar-help">\
37 </ul></li>')
38
Rushabh Mehta523aec42013-01-07 15:39:54 +053039 $('#toolbar-help').append('<li><a href="https://erpnext.com/manual" target="_blank">'
40 +wn._('Documentation')+'</a></li>')
Rushabh Mehta8c309be2012-01-20 13:47:16 +053041
Rushabh Mehta523aec42013-01-07 15:39:54 +053042 $('#toolbar-help').append('<li><a href="http://groups.google.com/group/erpnext-user-forum" target="_blank">'
43 +wn._('Forum')+'</a></li>')
Rushabh Mehta8c309be2012-01-20 13:47:16 +053044
45 $('#toolbar-help').append('<li><a href="http://www.providesupport.com?messenger=iwebnotes" target="_blank">\
Rushabh Mehta523aec42013-01-07 15:39:54 +053046 '+wn._('Live Chat')+'</a></li>')
Rushabh Mehta8c309be2012-01-20 13:47:16 +053047
Anand Doshi2aa9ba62012-04-30 15:43:34 +053048 erpnext.toolbar.set_new_comments();
Anand Doshic3023be2012-02-20 16:31:55 +053049}
50
Rushabh Mehtad0251332012-02-21 17:26:50 +053051erpnext.toolbar.add_modules = function() {
52 $('<li class="dropdown">\
53 <a class="dropdown-toggle" data-toggle="dropdown" href="#"\
Rushabh Mehtaeadedb52013-02-06 13:15:13 +053054 title="'+wn._("Modules")+'"\
Rushabh Mehta8c713e72013-02-06 16:10:48 +053055 onclick="return false;"><i class="icon-th"></i></a>\
Rushabh Mehta17da7642012-02-28 18:56:56 +053056 <ul class="dropdown-menu modules">\
Rushabh Mehtad0251332012-02-21 17:26:50 +053057 </ul>\
Anand Doshi5b1beeb2012-02-27 17:17:48 +053058 </li>').prependTo('.navbar .nav:first');
Rushabh Mehta17da7642012-02-28 18:56:56 +053059
Rushabh Mehta8fbfbfb2013-02-13 22:02:09 +053060 var modules_list = wn.user.get_desktop_items().sort();
Anand Doshi03741692013-02-16 15:05:37 +053061
62 var _get_list_item = function(m) {
63 args = {
64 module: m,
65 module_page: wn.modules[m].link,
66 module_label: wn._(wn.modules[m].label || m),
67 icon: wn.modules[m].icon
68 }
69
70 return repl('<li><a href="#!%(module_page)s" \
71 data-module="%(module)s"><i class="%(icon)s" style="display: inline-block; \
72 width: 21px; margin-top: -2px; margin-left: -7px;"></i>\
73 %(module_label)s</a></li>', args);
74 }
Rushabh Mehta17da7642012-02-28 18:56:56 +053075
76 // add to dropdown
Rushabh Mehta5ade7ca2012-12-21 21:40:19 +053077 for(var i in modules_list) {
78 var m = modules_list[i]
Anand Doshi70a3db72012-12-24 18:07:35 +053079 if(m!='Setup' && wn.boot.profile.allow_modules.indexOf(m)!=-1 && wn.modules[m]) {
Anand Doshi03741692013-02-16 15:05:37 +053080 $('.navbar .modules').append(_get_list_item(m));
Rushabh Mehta17da7642012-02-28 18:56:56 +053081 }
Rushabh Mehta17da7642012-02-28 18:56:56 +053082 }
83
84 // setup for system manager
85 if(user_roles.indexOf("System Manager")!=-1) {
Anand Doshi03741692013-02-16 15:05:37 +053086 $('.navbar .modules').append('<li class="divider">' + _get_list_item("Setup"));
Rushabh Mehta17da7642012-02-28 18:56:56 +053087 }
88
Rushabh Mehtad0251332012-02-21 17:26:50 +053089}
90
Anand Doshi2aa9ba62012-04-30 15:43:34 +053091erpnext.toolbar.set_new_comments = function(new_comments) {
92 var navbar_nc = $('.navbar-new-comments');
Rushabh Mehta9d0569a2012-11-13 11:42:42 +053093 if(cint(new_comments)) {
Anand Doshi2aa9ba62012-04-30 15:43:34 +053094 navbar_nc.addClass('navbar-new-comments-true')
Rushabh Mehta9d0569a2012-11-13 11:42:42 +053095 navbar_nc.text(new_comments);
Anand Doshi2aa9ba62012-04-30 15:43:34 +053096 } else {
97 navbar_nc.removeClass('navbar-new-comments-true');
98 navbar_nc.text(0);
99 }
Rushabh Mehta523aec42013-01-07 15:39:54 +0530100}