Vous ne pouvez pas sélectionner plus de 25 sujets Les noms de sujets doivent commencer par une lettre ou un nombre, peuvent contenir des tirets ('-') et peuvent comporter jusqu'à 35 caractères.

toolbar.min.js 6.4 KiB

il y a 13 ans
il y a 13 ans
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. /*
  2. * lib/js/wn/ui/toolbar/selector_dialog.js
  3. */
  4. wn.provide('wn.ui.toolbar');wn.ui.toolbar.SelectorDialog=Class.extend({init:function(opts){this.opts=opts;try{this.make_dialog();}catch(e){console.log(e);}
  5. this.bind_events();},make_dialog:function(){this.dialog=new wn.widgets.Dialog({title:this.opts.title,width:300,fields:[{fieldtype:'Select',fieldname:'doctype',options:'Select...',label:'Select Type'},{fieldtype:'Button',label:'Go',fieldname:'go'}]});},bind_events:function(){var me=this;$(this.dialog.fields_dict.go.input).click(function(){if(!me.dialog.display)return;me.dialog.hide();me.opts.execute(me.dialog.fields_dict.doctype.get_value());});$(this.dialog.fields_dict.doctype.input).change(function(){me.dialog.fields_dict.go.input.click();}).keypress(function(ev){if(ev.which==13){me.dialog.fields_dict.go.input.click();}});},show:function(){this.dialog.show();this.dialog.fields_dict.doctype.input.focus();return false;},set_values:function(lst){for(var i=0;i<lst.length;i++)
  6. lst[i]=get_doctype_label(lst[i]);var sel=this.dialog.fields_dict.doctype.input;$(sel).empty();add_sel_options(sel,lst.sort());}})
  7. /*
  8. * lib/js/wn/ui/toolbar/new.js
  9. */
  10. wn.ui.toolbar.NewDialog=wn.ui.toolbar.SelectorDialog.extend({init:function(){this._super({title:"New Record",execute:function(val){new_doc(val);},});this.set_values(profile.can_create.join(',').split(','));}});
  11. /*
  12. * lib/js/wn/ui/toolbar/search.js
  13. */
  14. wn.ui.toolbar.Search=wn.ui.toolbar.SelectorDialog.extend({init:function(){this._super({title:"Search",execute:function(val){selector.set_search(val);selector.show();},});this.set_values(profile.can_read.join(',').split(','));makeselector();}});
  15. /*
  16. * lib/js/wn/ui/toolbar/report.js
  17. */
  18. wn.ui.toolbar.Report=wn.ui.toolbar.SelectorDialog.extend({init:function(){this._super({title:"Start Report For",execute:function(val){loadreport(val,null,null,null,1);},});this.set_values(profile.can_get_report.join(',').split(','));}});
  19. /*
  20. * lib/js/wn/ui/toolbar/recent.js
  21. */
  22. wn.ui.toolbar.RecentDocs=Class.extend({init:function(){$('.topbar .nav:first').append('<li class="dropdown">\
  23. <a class="dropdown-toggle" href="#" onclick="return false;">Recent</a>\
  24. <ul class="dropdown-menu" id="toolbar-recent"></ul>\
  25. </li>');this.setup();this.bind_events();},bind_events:function(){rename_observers.push(this);},rename_notify:function(dt,old,name){this.remove(dt,old);this.add(dt,name,1);},add:function(dt,dn,on_top){if(this.istable(dt))return;this.remove(dt,dn);var html=repl('<li data-docref="%(dt)s/%(dn)s">\
  26. <a href="#Form/%(dt)s/%(dn)s">\
  27. <span class="help">%(dt)s:</span> %(dn)s\
  28. </a></li>',{dt:dt,dn:dn});if(on_top){$('#toolbar-recent').prepend(html);}else{$('#toolbar-recent').append(html);}},istable:function(dt){return locals.DocType[dt]&&locals.DocType[dt].istable||false;},remove:function(dt,dn){$(repl('#toolbar-recent li[data-docref="%(dt)s/%(dn)s"]',{dt:dt,dn:dn})).remove();},setup:function(){try{var rlist=JSON.parse(profile.recent);}
  29. catch(e){return;}
  30. var m=rlist.length;if(m>15)m=15;for(var i=0;i<m;i++){var rd=rlist[i]
  31. if(rd[1]){var dt=rd[0];var dn=rd[1];this.add(dt,dn,0);}}}});
  32. /*
  33. * lib/js/wn/ui/toolbar/toolbar.js
  34. */
  35. wn.ui.toolbar.Toolbar=Class.extend({init:function(){this.make();this.make_home();this.make_new();this.make_search();this.make_report();wn.ui.toolbar.recent=new wn.ui.toolbar.RecentDocs();if(in_list(user_roles,'Administrator'))
  36. this.make_options();this.make_tools();this.set_user_name();this.make_logout();$('.topbar').dropdown();$(document).trigger('toolbar_setup');},make:function(){$('header').append('<div class="topbar">\
  37. <div class="topbar-inner">\
  38. <div class="container">\
  39. <a class="brand"></a>\
  40. <ul class="nav">\
  41. </ul>\
  42. <img src="lib/images/ui/spinner.gif" id="spinner"/>\
  43. <ul class="nav secondary-nav">\
  44. <li class="dropdown">\
  45. <a class="dropdown-toggle" href="#" onclick="return false;" id="toolbar-user-link"></a>\
  46. <ul class="dropdown-menu" id="toolbar-user">\
  47. </ul>\
  48. </li>\
  49. </ul>\
  50. </div>\
  51. </div>\
  52. </div>');},make_home:function(){$('.topbar .nav:first').append('<li><a href="#'+home_page+'">Home</a></li>')},make_new:function(){wn.ui.toolbar.new_dialog=new wn.ui.toolbar.NewDialog();$('.topbar .nav:first').append('<li><a href="#" \
  53. onclick="return wn.ui.toolbar.new_dialog.show();">New</a></li>');},make_search:function(){wn.ui.toolbar.search=new wn.ui.toolbar.Search();$('.topbar .nav:first').append('<li><a href="#" \
  54. onclick="return wn.ui.toolbar.search.show();">Search</a></li>');},make_report:function(){wn.ui.toolbar.report=new wn.ui.toolbar.Report();$('.topbar .nav:first').append('<li><a href="#" \
  55. onclick="return wn.ui.toolbar.report.show();">Report</a></li>');},make_tools:function(){$('.topbar .nav:first').append('<li class="dropdown">\
  56. <a class="dropdown-toggle" href="#" onclick="return false;">Tools</a>\
  57. <ul class="dropdown-menu" id="toolbar-tools">\
  58. <li><a href="#" onclick="return err_console.show();">Error Console</a></li>\
  59. <li><a href="#" onclick="return wn.ui.toolbar.clear_cache();">Clear Cache</a></li>\
  60. <li><a href="#" onclick="return wn.ui.toolbar.show_about();">About</a></li>\
  61. </ul>\
  62. </li>');if(has_common(user_roles,['Administrator','System Manager'])){$('#toolbar-tools').append('<li><a href="#" \
  63. onclick="return wn.ui.toolbar.download_backup();">\
  64. Download Backup</a></li>');}},make_options:function(){$('.topbar .nav:first').append('<li class="dropdown">\
  65. <a class="dropdown-toggle" href="#" onclick="return false;">Options</a>\
  66. <ul class="dropdown-menu" id="toolbar-options">\
  67. </ul>\
  68. </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">\
  69. %(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);},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;}
  70. wn.ui.toolbar.download_backup=function(){$c('webnotes.utils.backups.get_backup',{},function(r,rt){});return false;}
  71. wn.ui.toolbar.show_about=function(){try{wn.require('lib/js/wn/misc/about.js');wn.ui.misc.about();}catch(e){console.log(e);}
  72. return false;}