wn.provide('erpnext.desktop'); erpnext.desktop.gradient = "" erpnext.desktop.refresh = function() { erpnext.desktop.add_classes(); erpnext.desktop.render(); } erpnext.desktop.add_classes = function() { $.each(wn.module_css_classes, function(i, v) { v.name = i; $(repl(erpnext.desktop.gradient, v)).appendTo('head'); }); } erpnext.desktop.render = function() { var icons = { 'Accounts': { sprite: 'account', label: 'Accounts'}, 'Selling': { sprite: 'selling', label: 'Selling'}, 'Stock': { sprite: 'stock', label: 'Stock'}, 'Buying': { sprite: 'buying', label: 'Buying'}, 'Support': { sprite: 'support', label: 'Support'}, 'HR': { sprite: 'hr', label: 'Human
Resources'}, 'Projects': { sprite: 'project', label: 'Projects'}, 'Production': { sprite: 'production', label: 'Production'}, 'Website': { sprite: 'website', label: 'Website'}, 'Activity': { sprite: 'feed', label: 'Activity'}, 'Setup': { sprite: 'setting', label: 'Setup'}, 'Dashboard': { sprite: 'dashboard', label: 'Dashboard'}, 'To Do': { sprite: 'todo', label: 'To Do'}, 'Messages': { sprite: 'messages', label: 'Messages'}, 'Calendar': { sprite: 'calendar', label: 'Calendar'}, 'Knowledge Base': { sprite: 'kb', label: 'Knowledge
Base'} } var add_icon = function(m) { var icon = icons[m]; icon.link = erpnext.modules[m]; icon.gradient = wn.module_css_map[m]; $('#icon-grid').append(repl('\
\
\
\
\
%(label)s
\
', icon)); } // setup for(var i in wn.boot.modules_list) { var m = wn.boot.modules_list[i]; if(!in_list(['Setup', 'Dashboard'], m) && wn.boot.profile.allow_modules.indexOf(m)!=-1) add_icon(m); } if(user_roles.indexOf('Accounts Manager')!=-1) add_icon('Dashboard') if(user_roles.indexOf('System Manager')!=-1) add_icon('Setup') // apps erpnext.desktop.show_pending_notifications(); } erpnext.desktop.show_pending_notifications = function() { var add_circle = function(str_module, id, title) { var module = $('#'+str_module); module.find('a:first').append( repl('', {id: id, title: title})); var case_border = module.find('.case-border'); var circle = module.find('.circle'); var add_hover_and_click = function(primary, secondary, hover_class, click_class) { primary .hover( function() { secondary.addClass(hover_class); }, function() { secondary.removeClass(hover_class); }) .mousedown(function() { secondary.addClass(click_class); }) .mouseup(function() { secondary.removeClass(click_class); }) .focusin(function() { $(this).mousedown(); }) .focusout(function() { $(this).mouseup(); }) } add_hover_and_click(case_border, circle, 'hover-effect', 'circle-click'); add_hover_and_click(circle, case_border, 'hover-effect', 'case-border-click'); } add_circle('messages', 'unread_messages', 'Unread Messages'); add_circle('support', 'open_support_tickets', 'Open Support Tickets'); add_circle('todo', 'things_todo', 'Things To Do'); add_circle('calendar', 'todays_events', 'Todays Events'); add_circle('project', 'open_tasks', 'Open Tasks'); add_circle('kb', 'unanswered_questions', 'Unanswered Questions'); erpnext.update_messages(); } pscript.onload_desktop = function() { // load desktop erpnext.desktop.refresh(); }