added todo
This commit is contained in:
parent
886aae895a
commit
42cea47d3a
8 changed files with 80 additions and 79 deletions
|
|
@ -1,18 +1,19 @@
|
|||
[class^="icon-"] {
|
||||
[class^="icon-"], [class*=" icon-"] {
|
||||
display: inline-block;
|
||||
width: 14px;
|
||||
height: 14px;
|
||||
line-height: 14px;
|
||||
vertical-align: text-top;
|
||||
background-image: url(../img/glyphicons-halflings.png);
|
||||
background-image: url("../lib/images/icons/glyphicons-halflings.png");
|
||||
background-position: 14px 14px;
|
||||
background-repeat: no-repeat;
|
||||
*margin-right: .3em;
|
||||
}
|
||||
[class^="icon-"]:last-child {
|
||||
[class^="icon-"]:last-child, [class*=" icon-"]:last-child {
|
||||
*margin-left: 0;
|
||||
}
|
||||
.icon-white {
|
||||
background-image: url(../img/glyphicons-halflings-white.png);
|
||||
background-image: url("../lib/images/icons/glyphicons-halflings-white.png");
|
||||
}
|
||||
.icon-glass {
|
||||
background-position: 0 0;
|
||||
|
|
|
|||
39
css/bootstrap/label.css
Normal file
39
css/bootstrap/label.css
Normal file
|
|
@ -0,0 +1,39 @@
|
|||
.label {
|
||||
padding: 2px 4px 3px;
|
||||
font-size: 11.049999999999999px;
|
||||
font-weight: bold;
|
||||
color: #ffffff;
|
||||
text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
|
||||
background-color: #999999;
|
||||
-webkit-border-radius: 3px;
|
||||
-moz-border-radius: 3px;
|
||||
border-radius: 3px;
|
||||
}
|
||||
.label:hover {
|
||||
color: #ffffff;
|
||||
text-decoration: none;
|
||||
}
|
||||
.label-important {
|
||||
background-color: #b94a48;
|
||||
}
|
||||
.label-important:hover {
|
||||
background-color: #953b39;
|
||||
}
|
||||
.label-warning {
|
||||
background-color: #f89406;
|
||||
}
|
||||
.label-warning:hover {
|
||||
background-color: #c67605;
|
||||
}
|
||||
.label-success {
|
||||
background-color: #468847;
|
||||
}
|
||||
.label-success:hover {
|
||||
background-color: #356635;
|
||||
}
|
||||
.label-info {
|
||||
background-color: #3a87ad;
|
||||
}
|
||||
.label-info:hover {
|
||||
background-color: #2d6987;
|
||||
}
|
||||
|
|
@ -23,7 +23,6 @@ function startup() {
|
|||
user_defaults = profile.defaults;
|
||||
user_roles = profile.roles;
|
||||
user_email = profile.email;
|
||||
profile.start_items = r.start_items;
|
||||
home_page = r.home_page;
|
||||
_p.letter_heads = r.letter_heads;
|
||||
|
||||
|
|
|
|||
|
|
@ -147,6 +147,7 @@ function $c_page(module, page, method, arg, call_back, no_spinner, freeze_msg, b
|
|||
|
||||
// generic server call (call page, object)
|
||||
wn.call = function(args) {
|
||||
if(!args.args) args.args = {};
|
||||
if(args.module && args.page) {
|
||||
$c_page(args.module, args.page, args.method, args.args, args.callback,
|
||||
args.no_spinner, false, args.btn);
|
||||
|
|
|
|||
29
js/wn/ui/toolbar.min.js
vendored
29
js/wn/ui/toolbar.min.js
vendored
|
|
@ -1,3 +1,4 @@
|
|||
|
||||
/*
|
||||
* lib/js/wn/ui/toolbar/selector_dialog.js
|
||||
*/
|
||||
|
|
@ -33,8 +34,7 @@ if(rd[1]){var dt=rd[0];var dn=rd[1];this.add(dt,dn,0);}}}});
|
|||
/*
|
||||
* lib/js/wn/ui/toolbar/toolbar.js
|
||||
*/
|
||||
wn.ui.toolbar.Toolbar=Class.extend({init:function(){this.make();this.make_home();this.make_document();wn.ui.toolbar.recent=new wn.ui.toolbar.RecentDocs();if(in_list(user_roles,'Administrator'))
|
||||
this.make_options();this.make_tools();this.set_user_name();this.make_logout();$('.dropdown-toggle').dropdown();$(document).trigger('toolbar_setup');},make:function(){$('header').append('<div class="navbar navbar-fixed-top">\
|
||||
wn.ui.toolbar.Toolbar=Class.extend({init:function(){this.make();this.make_home();this.make_document();this.make_apps();wn.ui.toolbar.recent=new wn.ui.toolbar.RecentDocs();this.make_tools();this.set_user_name();this.make_logout();$('.dropdown-toggle').dropdown();$(document).trigger('toolbar_setup');},make:function(){$('header').append('<div class="navbar navbar-fixed-top">\
|
||||
<div class="navbar-inner">\
|
||||
<div class="container">\
|
||||
<a class="brand"></a>\
|
||||
|
|
@ -51,13 +51,17 @@ this.make_options();this.make_tools();this.set_user_name();this.make_logout();$(
|
|||
</ul>\
|
||||
</div>\
|
||||
</div>\
|
||||
</div>');},make_home:function(){$('.navbar .nav:first').append('<li data-name="navbar-home"><a href="#'+home_page+'">Home</a></li>')},make_document:function(){wn.ui.toolbar.new_dialog=new wn.ui.toolbar.NewDialog();wn.ui.toolbar.search=new wn.ui.toolbar.Search();wn.ui.toolbar.report=new wn.ui.toolbar.Report();$('.navbar .nav:first').append('<li class="dropdown">\
|
||||
</div>');},make_home:function(){$('.navbar .nav:first').append('<li data-name="navbar-home">\
|
||||
<a href="#!'+home_page+'">Home</a></li>');$('.navbar .brand').attr('href',"#!"+home_page);},make_document:function(){wn.ui.toolbar.new_dialog=new wn.ui.toolbar.NewDialog();wn.ui.toolbar.search=new wn.ui.toolbar.Search();wn.ui.toolbar.report=new wn.ui.toolbar.Report();$('.navbar .nav:first').append('<li class="dropdown">\
|
||||
<a class="dropdown-toggle" href="#" data-toggle="dropdown"\
|
||||
onclick="return false;">Document<b class="caret"></b></a>\
|
||||
<ul class="dropdown-menu" id="toolbar-document">\
|
||||
<li><a href="#" onclick="return wn.ui.toolbar.new_dialog.show();">New</a></li>\
|
||||
<li><a href="#" onclick="return wn.ui.toolbar.search.show();">Search</a></li>\
|
||||
<li><a href="#" onclick="return wn.ui.toolbar.report.show();">Report</a></li>\
|
||||
<li><a href="#" onclick="return wn.ui.toolbar.new_dialog.show();">\
|
||||
<i class="icon-plus"></i> New</a></li>\
|
||||
<li><a href="#" onclick="return wn.ui.toolbar.search.show();">\
|
||||
<i class="icon-search"></i> Search</a></li>\
|
||||
<li><a href="#" onclick="return wn.ui.toolbar.report.show();">\
|
||||
<i class="icon-list"></i> Report</a></li>\
|
||||
</ul>\
|
||||
</li>');},make_tools:function(){$('.navbar .nav:first').append('<li class="dropdown">\
|
||||
<a class="dropdown-toggle" data-toggle="dropdown" href="#" \
|
||||
|
|
@ -69,13 +73,16 @@ this.make_options();this.make_tools();this.set_user_name();this.make_logout();$(
|
|||
</ul>\
|
||||
</li>');if(has_common(user_roles,['Administrator','System Manager'])){$('#toolbar-tools').append('<li><a href="#" \
|
||||
onclick="return wn.ui.toolbar.download_backup();">\
|
||||
Download Backup</a></li>');}},make_options:function(){$('.navbar .nav:first').append('<li class="dropdown">\
|
||||
Download Backup</a></li>');}},make_apps:function(){$('.navbar .nav:first').append('<li class="dropdown">\
|
||||
<a class="dropdown-toggle" data-toggle="dropdown" \
|
||||
href="#" onclick="return false;">Options<b class="caret"></b></a>\
|
||||
<ul class="dropdown-menu" id="toolbar-options">\
|
||||
href="#" onclick="return false;">Apps<b class="caret"></b></a>\
|
||||
<ul class="dropdown-menu">\
|
||||
<li><a href="#!messages">Messages</a></li>\
|
||||
<li><a href="#!todo">To Do</a></li>\
|
||||
<li><a href="#!calendar">Calendar</a></li>\
|
||||
<li><a href="#!questions">Knowledge Base</a></li>\
|
||||
</ul>\
|
||||
</li>');profile.start_items.sort(function(a,b){return(a[4]-b[4])});for(var i=0;i<profile.start_items.length;i++){var d=profile.start_items[i];var ispage=d[0]=='Page';$('#toolbar-options').append(repl('<li><a href="#%(type)s%(dt)s%(dn)s">\
|
||||
%(dn)s</a></li>',{type:(ispage?'':'Form/'),dt:(ispage?'':(d[0]+'/')),dn:d[5]||d[1]}));}},set_user_name:function(){var fn=user_fullname;if(fn.length>15)fn=fn.substr(0,12)+'...';$('#toolbar-user-link').html(fn+'<b class="caret"></b>');},make_logout:function(){$('#toolbar-user').append('<li><a href="#" onclick="return logout();">Logout</a></li>');}});wn.ui.toolbar.clear_cache=function(){localStorage&&localStorage.clear();$c('webnotes.session_cache.clear',{},function(r,rt){show_alert(r.message);});return false;}
|
||||
</li>');},set_user_name:function(){var fn=user_fullname;if(fn.length>15)fn=fn.substr(0,12)+'...';$('#toolbar-user-link').html(fn+'<b class="caret"></b>');},make_logout:function(){$('#toolbar-user').append('<li><a href="#" onclick="return logout();">Logout</a></li>');}});wn.ui.toolbar.clear_cache=function(){localStorage&&localStorage.clear();$c('webnotes.session_cache.clear',{},function(r,rt){show_alert(r.message);});return false;}
|
||||
wn.ui.toolbar.download_backup=function(){$c('webnotes.utils.backups.get_backup',{},function(r,rt){});return false;}
|
||||
wn.ui.toolbar.show_about=function(){try{wn.require('lib/js/wn/misc/about.js');wn.ui.misc.about();}catch(e){console.log(e);}
|
||||
return false;}
|
||||
|
|
@ -26,9 +26,8 @@ wn.ui.toolbar.Toolbar = Class.extend({
|
|||
this.make();
|
||||
this.make_home();
|
||||
this.make_document();
|
||||
this.make_apps();
|
||||
wn.ui.toolbar.recent = new wn.ui.toolbar.RecentDocs();
|
||||
if(in_list(user_roles, 'Administrator'))
|
||||
this.make_options();
|
||||
this.make_tools();
|
||||
this.set_user_name();
|
||||
this.make_logout();
|
||||
|
|
@ -57,7 +56,9 @@ wn.ui.toolbar.Toolbar = Class.extend({
|
|||
</div>');
|
||||
},
|
||||
make_home: function() {
|
||||
$('.navbar .nav:first').append('<li data-name="navbar-home"><a href="#'+home_page+'">Home</a></li>')
|
||||
$('.navbar .nav:first').append('<li data-name="navbar-home">\
|
||||
<a href="#!'+home_page+'">Home</a></li>');
|
||||
$('.navbar .brand').attr('href', "#!" + home_page);
|
||||
},
|
||||
|
||||
make_document: function() {
|
||||
|
|
@ -68,9 +69,12 @@ wn.ui.toolbar.Toolbar = Class.extend({
|
|||
<a class="dropdown-toggle" href="#" data-toggle="dropdown"\
|
||||
onclick="return false;">Document<b class="caret"></b></a>\
|
||||
<ul class="dropdown-menu" id="toolbar-document">\
|
||||
<li><a href="#" onclick="return wn.ui.toolbar.new_dialog.show();">New</a></li>\
|
||||
<li><a href="#" onclick="return wn.ui.toolbar.search.show();">Search</a></li>\
|
||||
<li><a href="#" onclick="return wn.ui.toolbar.report.show();">Report</a></li>\
|
||||
<li><a href="#" onclick="return wn.ui.toolbar.new_dialog.show();">\
|
||||
<i class="icon-plus"></i> New</a></li>\
|
||||
<li><a href="#" onclick="return wn.ui.toolbar.search.show();">\
|
||||
<i class="icon-search"></i> Search</a></li>\
|
||||
<li><a href="#" onclick="return wn.ui.toolbar.report.show();">\
|
||||
<i class="icon-list"></i> Report</a></li>\
|
||||
</ul>\
|
||||
</li>');
|
||||
},
|
||||
|
|
@ -92,26 +96,17 @@ wn.ui.toolbar.Toolbar = Class.extend({
|
|||
Download Backup</a></li>');
|
||||
}
|
||||
},
|
||||
make_options: function() {
|
||||
make_apps: function() {
|
||||
$('.navbar .nav:first').append('<li class="dropdown">\
|
||||
<a class="dropdown-toggle" data-toggle="dropdown" \
|
||||
href="#" onclick="return false;">Options<b class="caret"></b></a>\
|
||||
<ul class="dropdown-menu" id="toolbar-options">\
|
||||
href="#" onclick="return false;">Apps<b class="caret"></b></a>\
|
||||
<ul class="dropdown-menu">\
|
||||
<li><a href="#!messages">Messages</a></li>\
|
||||
<li><a href="#!todo">To Do</a></li>\
|
||||
<li><a href="#!calendar">Calendar</a></li>\
|
||||
<li><a href="#!questions">Knowledge Base</a></li>\
|
||||
</ul>\
|
||||
</li>');
|
||||
|
||||
profile.start_items.sort(function(a,b){return (a[4]-b[4])});
|
||||
|
||||
for(var i=0;i< profile.start_items.length;i++) {
|
||||
var d = profile.start_items[i];
|
||||
var ispage = d[0]=='Page';
|
||||
$('#toolbar-options').append(repl('<li><a href="#%(type)s%(dt)s%(dn)s">\
|
||||
%(dn)s</a></li>', {
|
||||
type : (ispage ? '' : 'Form/'),
|
||||
dt : (ispage ? '' : (d[0] + '/')),
|
||||
dn : d[5] || d[1]
|
||||
}));
|
||||
}
|
||||
},
|
||||
|
||||
set_user_name: function() {
|
||||
|
|
|
|||
|
|
@ -50,7 +50,6 @@ def get_bootinfo():
|
|||
|
||||
if webnotes.session['user'] != 'Guest':
|
||||
import webnotes.widgets.menus
|
||||
bootinfo['start_items'] = webnotes.widgets.menus.get_menu_items()
|
||||
bootinfo['dt_labels'] = get_dt_labels()
|
||||
|
||||
# home page
|
||||
|
|
|
|||
|
|
@ -31,64 +31,24 @@ from webnotes.utils import cint, cstr
|
|||
|
||||
sql = webnotes.conn.sql
|
||||
|
||||
@webnotes.whitelist()
|
||||
def get_menu_items():
|
||||
"""
|
||||
Returns a list of items to show in `Options` of the Web Notes Toolbar
|
||||
List contains Pages and Single DocTypes
|
||||
"""
|
||||
import webnotes.utils
|
||||
|
||||
rl = webnotes.user.get_roles() + [webnotes.session['user']]
|
||||
role_options = ["role = '"+r+"'" for r in rl]
|
||||
|
||||
sql = webnotes.conn.sql
|
||||
menuitems = []
|
||||
|
||||
# pages
|
||||
pages = sql("select distinct parent from `tabPage Role` where docstatus!=2 and (%s)" % (' OR '.join(role_options)))
|
||||
|
||||
for p in pages:
|
||||
tmp = sql("select icon, parent_node, menu_index, show_in_menu from tabPage where name = '%s'" % p[0])
|
||||
if tmp and tmp[0][3]:
|
||||
menuitems.append(['Page', p[0] or '', tmp[0][1] or '', tmp[0][0] or '', webnotes.utils.cint(tmp[0][2])])
|
||||
|
||||
# singles
|
||||
tmp = sql("select smallicon, parent_node, menu_index, name from tabDocType where (show_in_menu = 1 and show_in_menu is not null)")
|
||||
singles = {}
|
||||
for t in tmp: singles[t[3]] = t
|
||||
|
||||
for p in webnotes.user.can_read:
|
||||
tmp = singles.get(p, None)
|
||||
if tmp: menuitems.append([p, p, tmp[1] or '', tmp[0] or '', int(tmp[2] or 0)])
|
||||
|
||||
return menuitems
|
||||
|
||||
@webnotes.whitelist()
|
||||
def has_result():
|
||||
"""return Yes if the given dt has any records"""
|
||||
return sql("select name from `tab%s` limit 1" % \
|
||||
webnotes.form_dict.get('dt')) and 'Yes' or 'No'
|
||||
|
||||
# --------------------------------------------------------------
|
||||
|
||||
def is_submittable(dt):
|
||||
return sql("select name from tabDocPerm where parent=%s and ifnull(submit,0)=1 and docstatus<1 limit 1", dt)
|
||||
|
||||
# --------------------------------------------------------------
|
||||
|
||||
def can_cancel(dt):
|
||||
return sql('select name from tabDocPerm where parent="%s" and ifnull(cancel,0)=1 and docstatus<1 and role in ("%s") limit 1' % (dt, '", "'.join(webnotes.user.get_roles())))
|
||||
|
||||
# --------------------------------------------------------------
|
||||
def get_dt_trend(dt):
|
||||
ret = {}
|
||||
for r in sql("select datediff(now(),modified), count(*) from `tab%s` where datediff(now(),modified) between 0 and 30 group by date(modified)" % dt):
|
||||
ret[cint(r[0])] = cint(r[1])
|
||||
return ret
|
||||
|
||||
# --------------------------------------------------------------
|
||||
|
||||
def get_columns(out, sf, fl, dt, tag_fields):
|
||||
if not fl:
|
||||
fl = sf
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue