merge
diff --git a/build.json b/build.json
index e9ecc18..79813e3 100644
--- a/build.json
+++ b/build.json
@@ -1,183 +1,19 @@
-[
- {
- "lib/js/core.min.js": [
- "lib/js/wn/class.js",
- "lib/js/wn/provide.js",
- "lib/js/wn/versions.js",
- "lib/js/wn/assets.js",
- "lib/js/wn/require.js",
- "lib/js/wn/dom.js",
- "lib/js/wn/model.js",
- "lib/js/wn/misc/tools.js",
- "lib/js/wn/misc/user.js",
- "lib/js/lib/json2.js",
- "lib/js/wn/router.js",
- "lib/js/wn/ui/listing.js",
- "lib/js/wn/views/container.js",
- "lib/js/wn/views/doclistview.js",
- "lib/js/wn/views/pageview.js",
- "lib/js/wn/views/formview.js",
- "lib/js/wn/views/reportview.js",
- "lib/js/wn/request.js",
- "lib/js/core.js"
- ]
- },
-
- {
- "lib/js/wn/ui/toolbar.min.js": [
- "lib/js/wn/ui/toolbar/selector_dialog.js",
- "lib/js/wn/ui/toolbar/new.js",
- "lib/js/wn/ui/toolbar/search.js",
- "lib/js/wn/ui/toolbar/report.js",
- "lib/js/wn/ui/toolbar/recent.js",
- "lib/js/wn/ui/toolbar/toolbar.js"
- ]
- },
-
- {
- "lib/js/legacy/report.compressed.js": [
- "lib/js/legacy/widgets/report_builder/report_builder.js",
- "lib/js/legacy/widgets/report_builder/datatable.js",
- "lib/js/legacy/widgets/report_builder/calculator.js"
- ]
- },
-
- {
- "css/all-web.css": [
- "lib/css/bootstrap/headings.css",
- "lib/css/bootstrap/buttons.css",
- "lib/css/bootstrap/navbar.css",
- "lib/css/bootstrap/dropdown.css",
- "lib/css/bootstrap/tooltip.css",
- "lib/css/legacy/body.css",
- "lib/css/legacy/messages.css",
- "lib/css/legacy/dialog.css",
- "lib/css/ui/common.css",
- "lib/css/ui/fonts.css",
- "lib/css/ui/list.css",
- "erpnext/startup/startup.css",
- "erpnext/website/css/website.css"
- ]
- },
-
- {
- "css/all-app.css": [
- "lib/css/bootstrap/headings.css",
- "lib/css/bootstrap/buttons.css",
- "lib/css/bootstrap/navbar.css",
- "lib/css/bootstrap/dropdown.css",
- "lib/css/bootstrap/tooltip.css",
- "lib/css/bootstrap/label.css",
- "lib/css/bootstrap/icons.css",
- "lib/css/bootstrap/popover.css",
- "lib/css/legacy/body.css",
- "lib/css/legacy/messages.css",
- "lib/css/legacy/forms.css",
- "lib/css/legacy/grid.css",
- "lib/css/legacy/listing.css",
- "lib/css/legacy/report.css",
- "lib/css/legacy/dialog.css",
- "lib/css/legacy/tabs.css",
- "lib/css/legacy/sidebar.css",
- "lib/css/Aristo/aristo.selected.css",
- "lib/css/ui/common.css",
- "lib/css/ui/list.css",
- "lib/css/ui/views.css",
- "lib/css/ui/fonts.css",
- "erpnext/startup/startup.css"
- ]
- },
-
- {
- "js/all-web.js": [
- "lib/js/lib/history/history.min.js:concat",
- "lib/js/lib/bootstrap.min.js:concat",
- "lib/js/core.min.js:concat",
- "lib/js/legacy/globals.js",
- "lib/js/legacy/utils/datatype.js",
- "lib/js/legacy/utils/datetime.js",
- "lib/js/legacy/utils/dom.js",
- "lib/js/legacy/utils/handler.js",
- "lib/js/legacy/utils/msgprint.js",
- "lib/js/wn/ui/appframe.js",
- "lib/js/wn/ui/dialog.js",
- "lib/js/legacy/widgets/dialog.js",
- "lib/js/wn/ui/listing.js",
- "lib/js/legacy/webpage/page_header.js",
- "lib/js/legacy/webpage/spinner.js",
- "lib/js/legacy/webpage/loaders.js",
- "lib/js/legacy/wn/widgets/footer.js",
- "lib/js/legacy/model/local_data.js",
- "lib/js/legacy/model/doclist.js",
- "lib/js/wn/app.js",
- "js/app.js",
- "erpnext/startup/startup.js",
- "erpnext/website/js/topbar.js"
- ]
- },
-
- {
- "js/all-app.js": [
- "lib/js/lib/history/history.min.js:concat",
- "lib/js/lib/jquery/jquery.ui.core.js:concat",
- "lib/js/lib/jquery/jquery.ui.datepicker.js:concat",
- "lib/js/lib/jquery/jquery.ui.autocomplete.js:concat",
- "lib/js/lib/tiny_mce_33/jquery.tinymce.js:concat",
- "lib/js/lib/bootstrap.min.js:concat",
- "lib/js/lib/sprintf.js",
- "lib/js/core.min.js:concat",
- "lib/js/legacy/globals.js",
- "lib/js/legacy/utils/datatype.js",
- "lib/js/legacy/utils/datetime.js",
- "lib/js/legacy/utils/dom.js",
- "lib/js/legacy/utils/handler.js",
- "lib/js/legacy/utils/msgprint.js",
- "lib/js/legacy/utils/printElement.js",
- "lib/js/legacy/widgets/form/fields.js",
- "lib/js/wn/ui/appframe.js",
- "lib/js/wn/ui/dialog.js",
- "lib/js/wn/ui/button.js",
- "lib/js/legacy/widgets/dialog.js",
- "lib/js/legacy/widgets/layout.js",
- "lib/js/legacy/widgets/tabbedpage.js",
- "lib/js/legacy/webpage/page_header.js",
- "lib/js/legacy/widgets/tags.js",
- "lib/js/legacy/widgets/export_query.js",
- "lib/js/legacy/webpage/search.js",
- "lib/js/legacy/webpage/spinner.js",
- "lib/js/legacy/webpage/error_console.js",
- "lib/js/legacy/webpage/loaders.js",
- "lib/js/legacy/webpage/uploader.js",
- "lib/js/legacy/wn/page_layout.js",
- "lib/js/legacy/wn/widgets/page_sidebar.js",
- "lib/js/legacy/wn/widgets/footer.js",
- "lib/js/legacy/model/local_data.js",
- "lib/js/legacy/model/doclist.js",
- "lib/js/wn/ui/toolbar.min.js:concat",
- "lib/js/wn/views/breadcrumbs.js",
- "lib/js/legacy/widgets/form/fields.js",
- "lib/js/legacy/widgets/form/form_dialog.js",
- "lib/js/legacy/widgets/form/form_header.js",
- "lib/js/legacy/widgets/form/form.js",
- "lib/js/legacy/widgets/form/form_fields.js",
- "lib/js/legacy/widgets/form/grid.js",
- "lib/js/legacy/widgets/form/form_grid.js",
- "lib/js/legacy/widgets/form/print_format.js",
- "lib/js/legacy/widgets/form/email.js",
- "lib/js/legacy/widgets/form/clientscriptAPI.js",
- "lib/js/legacy/widgets/form/form_comments.js",
- "lib/js/legacy/wn/widgets/form/sidebar.js",
- "lib/js/legacy/wn/widgets/form/comments.js",
- "lib/js/legacy/wn/widgets/form/attachments.js",
- "lib/js/legacy/wn/widgets/form/assign_to.js",
- "lib/js/wn/app.js",
- "js/app.js",
- "erpnext/startup/startup.js",
- "erpnext/startup/js/modules.js",
- "erpnext/startup/js/toolbar.js",
- "erpnext/startup/js/feature_setup.js"
- ]
- }
-
-]
-
+{
+ "css/all-web.css": [
+ "erpnext/startup/startup.css",
+ "erpnext/website/css/website.css"
+ ],
+ "css/all-app.css": [
+ "erpnext/startup/startup.css"
+ ],
+ "js/all-web.js": [
+ "erpnext/startup/startup.js",
+ "erpnext/website/js/topbar.js"
+ ],
+ "js/all-app.js": [
+ "erpnext/startup/startup.js",
+ "erpnext/startup/js/modules.js",
+ "erpnext/startup/js/toolbar.js",
+ "erpnext/startup/js/feature_setup.js"
+ ]
+}
\ No newline at end of file
diff --git a/css/all-app.css b/css/all-app.css
index d74e30c..033ca6e 100644
--- a/css/all-app.css
+++ b/css/all-app.css
@@ -3565,3 +3565,64 @@
}
+
+/*
+ * erpnext/startup/startup.css
+ */
+h1, h2, h3, h4, h5 {
+ font-family: "Helvetica Neue", "Open Sans", Helvetica, sans-serif;
+ font-weight: normal;
+ margin-top: 0.2em;
+}
+
+body {
+ font-family: "Helvetica Neue", "Open Sans", Helvetica, sans-serif;
+ font-size: 13px;
+}
+
+span, div, td, input, textarea, button, select {
+ font-family: inherit;
+}
+
+body {
+ background: url(../images/redbeech.jpg) repeat;
+ color: #616161;
+}
+
+.small {
+ font-size: 11.5px;
+}
+
+.erpnext-footer {
+ margin: 11px auto;
+ text-align: center;
+}
+
+.navbar-new-comments {
+ margin: -3px 0px;
+ padding: 2px;
+ min-width: 20px;
+ text-align: center;
+ display: inline-block;
+ border-radius: 2px;
+ color: #999999;
+ background-color: #333131;
+}
+
+.navbar-new-comments:hover,
+.navbar-new-comments:active,
+.navbar-new-comments:focus {
+ color: #fff;
+}
+
+.navbar-new-comments-true {
+ color: #fff;
+ background-color: #B00D07;
+}
+
+/*extra size menus for recent*/
+.dropdown-menu#toolbar-recent, .dropdown-menu#toolbar-options, .dropdown-menu#toolbar-help{
+ min-width: 160px !important;
+ max-width: 260px !important;
+}
+
diff --git a/css/all-web.css b/css/all-web.css
index cc2db5a..53eb733 100644
--- a/css/all-web.css
+++ b/css/all-web.css
@@ -1882,3 +1882,216 @@
border-top: 1px solid #f8f8f8;
border-bottom: 1px solid #ccc;
}
+
+/*
+ * erpnext/startup/startup.css
+ */
+h1, h2, h3, h4, h5 {
+ font-family: "Helvetica Neue", "Open Sans", Helvetica, sans-serif;
+ font-weight: normal;
+ margin-top: 0.2em;
+}
+
+body {
+ font-family: "Helvetica Neue", "Open Sans", Helvetica, sans-serif;
+ font-size: 13px;
+}
+
+span, div, td, input, textarea, button, select {
+ font-family: inherit;
+}
+
+body {
+ background: url(../images/redbeech.jpg) repeat;
+ color: #616161;
+}
+
+.small {
+ font-size: 11.5px;
+}
+
+.erpnext-footer {
+ margin: 11px auto;
+ text-align: center;
+}
+
+.navbar-new-comments {
+ margin: -3px 0px;
+ padding: 2px;
+ min-width: 20px;
+ text-align: center;
+ display: inline-block;
+ border-radius: 2px;
+ color: #999999;
+ background-color: #333131;
+}
+
+.navbar-new-comments:hover,
+.navbar-new-comments:active,
+.navbar-new-comments:focus {
+ color: #fff;
+}
+
+.navbar-new-comments-true {
+ color: #fff;
+ background-color: #B00D07;
+}
+
+/*extra size menus for recent*/
+.dropdown-menu#toolbar-recent, .dropdown-menu#toolbar-options, .dropdown-menu#toolbar-help{
+ min-width: 160px !important;
+ max-width: 260px !important;
+}
+
+
+/*
+ * erpnext/website/css/website.css
+ */
+div#body_div, header .container, .content, #opened-page-selector, footer {
+ width: 900px;
+}
+
+.layout_wrapper {
+ padding: 27px;
+}
+
+p, li {
+ line-height: 1.6em;
+}
+
+pre {
+ background-color: #F8F8F8;
+ border: 1px solid #CCCCCC;
+ border-radius: 3px 3px 3px 3px;
+ font-size: 13px;
+ line-height: 19px;
+ overflow: auto;
+ padding: 6px 10px;
+ margin-bottom: 9px;
+}
+
+.web-content input[type="text"], .web-content input[type="password"], .web-content select {
+ min-width: 180px;
+}
+
+.web-head-section {
+ margin-bottom: 20px
+}
+
+.web-main-section {
+ width: 65%;
+ float: left;
+ margin-bottom: 20px;
+}
+
+.web-side-section {
+ width: 30%;
+ float: right;
+ margin-bottom: 20px;
+ margin-right: 15px;
+ color: #606060;
+ overflow-x: hidden;
+ font-size: 90%;
+}
+
+.web-page-status {
+ padding: 7px;
+ color: #777;
+ clear: both;
+ text-align: right;
+}
+
+.web-page-status a,
+.web-page-status a:hover,
+.web-page-status a:visited {
+ padding: 2px;
+ background-color: #777;
+ color: #FFF;
+ text-decoration: none;
+}
+
+.web-page-status a:hover {
+ background-color: #444;
+}
+
+footer {
+ color: #777;
+}
+
+.web-footer {
+ color: inherit;
+ text-align: center;
+ margin: 10px;
+ line-height: 1.7;
+}
+
+.web-footer div, .web-footer a {
+ font-size: 11px;
+}
+
+.web-footer-menu {
+ margin-bottom: 7px;
+}
+footer a, footer a:visited {
+ color: #777;
+}
+
+footer a:hover {
+ background-color: #777;
+ color: #fff;
+}
+
+.web-footer-menu ul {
+ list-style: none;
+ margin: 0px;
+ padding: 0px;
+}
+
+.web-footer-menu ul li {
+ display: inline;
+ padding: 2px 15px;
+ border-right: 1px solid #999;
+}
+
+.web-footer-menu ul li:last-child {
+ border-right: 0px solid #777 !important;
+}
+
+/* slide view */
+
+.next-slide {
+ margin: 0px -27px 100px -27px;
+ background: #ffffff; /* Old browsers */
+ background: -moz-linear-gradient(top, #eeeeee 0%, #fff 100%); /* FF3.6+ */
+ background: -webkit-linear-gradient(top, #eeeeee 0%, #fff 100%); /* Chrome10+,Safari5.1+ */
+ background: -o-linear-gradient(top, #eeeeee 0%, #fff 100%); /* Opera 11.10+ */
+ background: -ms-linear-gradient(top, #eeeeee 0%, #fff 100%); /* IE10+ */
+ background: linear-gradient(top, #eeeeee 0%, #fff 100%); /* W3C */
+ filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#eeeeee', endColorstr='#fff',GradientType=0 ); /* IE6-9 */
+ height: 36px;
+}
+
+.slide-shadow {
+ background: #eeeeee; /* Old browsers */
+ background: -moz-linear-gradient(top, #bababa 0%,#eeeeee 100%); /* FF3.6+ */
+ background: -webkit-linear-gradient(top, #bababa 0%,#eeeeee 100%); /* Chrome10+,Safari5.1+ */
+ background: -o-linear-gradient(top, #bababa 0%,#eeeeee 100%); /* Opera 11.10+ */
+ background: -ms-linear-gradient(top, #bababa 0%,#eeeeee 100%); /* IE10+ */
+ background: linear-gradient(top, #bababa 0%,#eeeeee 100%); /* W3C */
+ filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#bababa', endColorstr='#eeeeee',GradientType=0 ); /* IE6-9 */
+ height: 3px;
+ margin: 100px -27px 0px -27px;
+ border-top: 1px solid #bababa;
+}
+
+.two-column {
+ width: 40%;
+ float: left;
+ padding: 5%;
+}
+
+.clear {
+ clear: both;
+}
+
+/* */
diff --git a/erpnext/accounts/page/accounts_browser/accounts_browser.js b/erpnext/accounts/page/accounts_browser/accounts_browser.js
index 3c900e9..32ea4ed 100644
--- a/erpnext/accounts/page/accounts_browser/accounts_browser.js
+++ b/erpnext/accounts/page/accounts_browser/accounts_browser.js
@@ -21,6 +21,7 @@
// see ledger
pscript['onload_Accounts Browser'] = function(wrapper){
+ wn.require('lib/js/wn/ui/tree.js');
wrapper.appframe = new wn.ui.AppFrame($(wrapper).find('.appframe-area'));
wrapper.appframe.add_button('New Company', function() { newdoc('Company'); }, 'icon-plus');
@@ -57,11 +58,9 @@
}
pscript['onshow_Accounts Browser'] = function(wrapper){
- //wn.require('lib/js/wn/ui/tree.js');
-
// set route
var ctype = wn.get_route()[1] || 'Account';
- wrapper.appframe.$titlebar.find('.appframe-title').html('Chart of '+ctype+'s');
+ wrapper.appframe.title('Chart of '+ctype+'s');
if(erpnext.account_chart && erpnext.account_chart.ctype != ctype) {
wrapper.$company_select.change();
diff --git a/erpnext/website/doctype/style_settings/style_settings.txt b/erpnext/website/doctype/style_settings/style_settings.txt
index 18a4d1a..b87a02c 100644
--- a/erpnext/website/doctype/style_settings/style_settings.txt
+++ b/erpnext/website/doctype/style_settings/style_settings.txt
@@ -3,9 +3,9 @@
# These values are common in all dictionaries
{
- 'creation': '2012-03-27 14:36:48',
+ 'creation': '2012-04-02 16:02:43',
'docstatus': 0,
- 'modified': '2012-03-27 14:36:48',
+ 'modified': '2012-04-16 13:36:48',
'modified_by': u'Administrator',
'owner': u'Administrator'
},
@@ -23,7 +23,7 @@
'name': '__common__',
'section_style': u'Simple',
'show_in_menu': 0,
- 'version': 18
+ 'version': 19
},
# These values are common for all DocField
@@ -95,7 +95,7 @@
'fieldname': u'font',
'fieldtype': u'Select',
'label': u'Font',
- 'options': u'\nLucida Grande\nVerdana\nArial\nGeorgia\nTahoma\nLato\nOpen Sans',
+ 'options': u'\nHelvetica Neue\nLucida Grande\nVerdana\nArial\nGeorgia\nTahoma\nLato\nOpen Sans',
'permlevel': 0
},
@@ -115,7 +115,7 @@
'fieldname': u'heading_font',
'fieldtype': u'Select',
'label': u'Heading Font',
- 'options': u'\nLucida Grande\nVerdana\nArial\nGeorgia\nTahoma\nLato\nOpen Sans',
+ 'options': u'\nHelvetica Neue\nLucida Grande\nVerdana\nArial\nGeorgia\nTahoma\nLato\nOpen Sans',
'permlevel': 0
},
@@ -153,4 +153,4 @@
'permlevel': 0,
'print_hide': 1
}
-]
+]
\ No newline at end of file
diff --git a/js/all-app.js b/js/all-app.js
index c9a727d..b5942dd 100644
--- a/js/all-app.js
+++ b/js/all-app.js
@@ -240,7 +240,7 @@
wn.views.formview.show(route[1],route[2]);break;case"Report":wn.views.reportview.show(route[1],route[2]);break;default:wn.views.pageview.show(route[0]);}}
wn.get_route=function(route){if(!route)
route=window.location.hash;if(route.substr(0,1)=='#')route=route.substr(1);if(route.substr(0,1)=='!')route=route.substr(1);return $.map(route.split('/'),function(r){return decodeURIComponent(r);});}
-wn.set_route=function(){route=$.map(arguments,function(a){return encodeURIComponent(a)}).join('/');window.location.hash=route;set_favicon();}
+wn.set_route=function(){route=$.map(arguments,function(a){return encodeURIComponent(a)}).join('/');window.location.hash=route;wn.app.set_favicon();}
wn._cur_route=null;$(window).bind('hashchange',function(){if(location.hash==wn._cur_route)
return;wn.route();if(wn.boot.analytics_code){try{eval(wn.boot.analytics_code);}catch(e){console.log(e);}}});
/*
@@ -2155,4 +2155,84 @@
*/
wn.app={name:'ERPNext',license:'GNU/GPL - Usage Condition: All "erpnext" branding must be kept as it is',source:'https://github.com/webnotes/erpnext',publisher:'Web Notes Technologies Pvt Ltd, Mumbai',copyright:'© Web Notes Technologies Pvt Ltd',version:'2.'+window._version_number}
wn.modules_path='erpnext';$(document).bind('toolbar_setup',function(){$('.brand').html('<b>erp</b>next\
- <i class="icon-home icon-white navbar-icon-home" ></i>').hover(function(){$(this).find('.icon-home').addClass('navbar-icon-home-hover');},function(){$(this).find('.icon-home').removeClass('navbar-icon-home-hover');});});
\ No newline at end of file
+ <i class="icon-home icon-white navbar-icon-home" ></i>').hover(function(){$(this).find('.icon-home').addClass('navbar-icon-home-hover');},function(){$(this).find('.icon-home').removeClass('navbar-icon-home-hover');});});
+/*
+ * erpnext/startup/startup.js
+ */
+var current_module;var is_system_manager=0;wn.provide('erpnext.startup');erpnext.modules={'Selling':'selling-home','Accounts':'accounts-home','Stock':'stock-home','Buying':'buying-home','Support':'support-home','Projects':'projects-home','Production':'production-home','Website':'website-home','HR':'hr-home','Setup':'Setup','Activity':'activity','To Do':'todo','Calendar':'calendar','Messages':'messages','Knowledge Base':'questions','Dashboard':'dashboard'}
+erpnext.startup.set_globals=function(){wn.control_panel.sync_with_gateway=wn.boot.sync_with_gateway
+pscript.is_erpnext_saas=cint(wn.control_panel.sync_with_gateway)
+if(inList(user_roles,'System Manager'))is_system_manager=1;}
+erpnext.startup.start=function(){$('#startup_div').html('Starting up...').toggle(true);erpnext.startup.set_globals();if(wn.boot.user_background){erpnext.set_user_background(wn.boot.user_background);}
+if(user=='Guest'){if(wn.boot.custom_css){set_style(wn.boot.custom_css);}
+if(wn.boot.website_settings.title_prefix){wn.title_prefix=wn.boot.website_settings.title_prefix;}}else{wn.boot.profile.allow_modules=wn.boot.profile.allow_modules.concat(['To Do','Knowledge Base','Calendar','Activity','Messages'])
+if(user_roles.indexOf('Accounts Manager')!=-1){wn.boot.profile.allow_modules.push('Dashboard');}
+erpnext.toolbar.setup();erpnext.startup.set_periodic_updates();if(in_list(user_roles,'System Manager')&&(wn.boot.setup_complete=='No')){wn.require("erpnext/startup/js/complete_setup.js");erpnext.complete_setup();}}
+$('#startup_div').toggle(false);}
+show_chart_browser=function(nm,chart_type){var call_back=function(){if(nm=='Sales Browser'){var sb_obj=new SalesBrowser();sb_obj.set_val(chart_type);}
+else if(nm=='Accounts Browser')
+pscript.make_chart(chart_type);}
+loadpage(nm,call_back);}
+var update_messages=function(reset){if(inList(['Guest'],user)||!wn.session_alive){return;}
+if(!reset){var set_messages=function(r){if(!r.exc){wn.container.wntoolbar.set_new_comments(r.message.unread_messages);var show_in_circle=function(parent_id,msg){var parent=$('#'+parent_id);if(parent){if(msg){parent.find('span:first').text(msg);parent.toggle(true);}else{parent.toggle(false);}}}
+show_in_circle('unread_messages',r.message.unread_messages.length);show_in_circle('open_support_tickets',r.message.open_support_tickets);show_in_circle('things_todo',r.message.things_todo);show_in_circle('todays_events',r.message.todays_events);}else{clearInterval(wn.updates.id);}}
+wn.call({method:'startup.startup.get_global_status_messages',callback:set_messages});}else{wn.container.wntoolbar.set_new_comments(0);$('#unread_messages').toggle(false);}}
+erpnext.startup.set_periodic_updates=function(){wn.updates={};if(wn.updates.id){clearInterval(wn.updates.id);}
+wn.updates.id=setInterval(update_messages,60000);}
+erpnext.set_user_background=function(src){set_style(repl('body { background: url("files/%(src)s") repeat;}',{src:src}))}
+$(document).bind('startup',function(){erpnext.startup.start();});
+/*
+ * erpnext/startup/js/modules.js
+ */
+wn.provide('erpnext.module_page');erpnext.module_page.setup_page=function(module,wrapper){erpnext.module_page.hide_links(wrapper);erpnext.module_page.make_list(module,wrapper);$(wrapper).find("a[title]").tooltip({delay:{show:500,hide:100}});}
+erpnext.module_page.hide_links=function(wrapper){$(wrapper).find('[href*="List/"]').each(function(){var href=$(this).attr('href');var dt=href.split('/')[1];if(wn.boot.profile.all_read.indexOf(get_label_doctype(dt))==-1){var txt=$(this).text();$(this).parent().css('color','#999').html(txt);}});$(wrapper).find('[data-doctype]').each(function(){var dt=$(this).attr('data-doctype');if(wn.boot.profile.all_read.indexOf(dt)==-1){var txt=$(this).text();$(this).parent().css('color','#999').html(txt);}});$(wrapper).find('[href*="Form/"]').each(function(){var href=$(this).attr('href');var dt=href.split('/')[1];if(wn.boot.profile.all_read.indexOf(get_label_doctype(dt))==-1){var txt=$(this).text();$(this).parent().css('color','#999').html(txt);}});}
+erpnext.module_page.make_list=function(module,wrapper){wrapper.list=new wn.ui.Listing({parent:$(wrapper).find('.reports-list').get(0),method:'utilities.get_report_list',render_row:function(row,data){if(!data.parent_doc_type)data.parent_doc_type=data.doc_type;$(row).html(repl('<a href="#!Report/%(doc_type)s/%(criteria_name)s" \
+ data-doctype="%(parent_doc_type)s">\
+ %(criteria_name)s</a>',data))},args:{module:module},no_refresh:true,callback:function(r){erpnext.module_page.hide_links(wrapper)}});wrapper.list.run();}
+/*
+ * erpnext/startup/js/toolbar.js
+ */
+wn.provide('erpnext.toolbar');erpnext.toolbar.setup=function(){erpnext.toolbar.add_modules();$('#toolbar-user').append('<li><a href="#!profile-settings">Profile Settings</a></li>');$('.navbar .pull-right').append('\
+ <li><a href="#!messages" title="Unread Messages"><span class="navbar-new-comments"></span></a></li>');$('.navbar .pull-right').prepend('<li class="dropdown">\
+ <a class="dropdown-toggle" data-toggle="dropdown" href="#" \
+ onclick="return false;">Help<b class="caret"></b></a>\
+ <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>')
+if(pscript.is_erpnext_saas&&is_system_manager){$('#toolbar-user').append('<li><a href="#billing">Billing</a></li>')}
+$.extend(wn.container.wntoolbar,{set_new_comments:function(new_comments){var navbar_nc=$('.navbar-new-comments');if(new_comments&&new_comments.length>0){navbar_nc.text(new_comments.length);navbar_nc.addClass('navbar-new-comments-true')
+$.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{navbar_nc.removeClass('navbar-new-comments-true');navbar_nc.text(0);}}});wn.container.wntoolbar.set_new_comments();}
+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>\
+ <ul class="dropdown-menu modules">\
+ </ul>\
+ </li>').prependTo('.navbar .nav:first');if(wn.boot.modules_list)
+wn.boot.modules_list=JSON.parse(wn.boot.modules_list);else
+wn.boot.modules_list=keys(erpnext.modules).sort();for(var i in wn.boot.modules_list){var m=wn.boot.modules_list[i]
+if(m!='Setup'&&wn.boot.profile.allow_modules.indexOf(m)!=-1){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));}}
+if(user_roles.indexOf("Accounts Manager")!=-1){$('.navbar .modules').append('<li><a href="#!dashboard" \
+ data-module="Dashboard">Dashboard</a></li>');}
+if(user_roles.indexOf("System Manager")!=-1){$('.navbar .modules').append('<li class="divider"></li>\
+ <li><a href="#!Setup" data-module="Setup">Setup</a></li>');}}
+/*
+ * erpnext/startup/js/feature_setup.js
+ */
+pscript.feature_dict={'fs_projects':{'BOM':{'fields':['project_name']},'Delivery Note':{'fields':['project_name']},'Purchase Invoice':{'fields':['project_name']},'Production Order':{'fields':['project_name']},'Purchase Order':{'fields':['project_name']},'Purchase Receipt':{'fields':['project_name']},'Sales Invoice':{'fields':['project_name']},'Sales Order':{'fields':['project_name']},'Stock Entry':{'fields':['project_name']},'Timesheet':{'timesheet_details':['project_name']}},'fs_packing_details':{},'fs_discounts':{'Delivery Note':{'delivery_note_details':['adj_rate']},'Quotation':{'quotation_details':['adj_rate']},'Sales Invoice':{'entries':['adj_rate']},'Sales Order':{'sales_order_details':['adj_rate','ref_rate']}},'fs_purchase_discounts':{'Purchase Order':{'po_details':['purchase_ref_rate','discount_rate','import_ref_rate']},'Purchase Receipt':{'purchase_receipt_details':['purchase_ref_rate','discount_rate','import_ref_rate']},'Purchase Invoice':{'entries':['purchase_ref_rate','discount_rate','import_ref_rate']}},'fs_brands':{'Delivery Note':{'delivery_note_details':['brand']},'Purchase Request':{'indent_details':['brand']},'Item':{'fields':['brand']},'Purchase Order':{'po_details':['brand']},'Purchase Invoice':{'entries':['brand']},'Quotation':{'quotation_details':['brand']},'Sales Invoice':{'entries':['brand']},'Sales BOM':{'fields':['new_item_brand']},'Sales Order':{'sales_order_details':['brand']},'Serial No':{'fields':['brand']}},'fs_after_sales_installations':{'Delivery Note':{'fields':['installation_status','per_installed'],'delivery_note_details':['installed_qty']}},'fs_item_batch_nos':{'Delivery Note':{'delivery_note_details':['batch_no']},'Item':{'fields':['has_batch_no']},'Purchase Receipt':{'purchase_receipt_details':['batch_no']},'Quality Inspection':{'fields':['batch_no']},'Sales and Pruchase Return Wizard':{'return_details':['batch_no']},'Sales Invoice':{'entries':['batch_no']},'Stock Entry':{'mtn_details':['batch_no']},'Stock Ledger Entry':{'fields':['batch_no']}},'fs_item_serial_nos':{'Customer Issue':{'fields':['serial_no']},'Delivery Note':{'delivery_note_details':['serial_no'],'packing_details':['serial_no']},'Installation Note':{'installed_item_details':['serial_no']},'Item':{'fields':['has_serial_no']},'Maintenance Schedule':{'item_maintenance_detail':['serial_no'],'maintenance_schedule_detail':['serial_no']},'Maintenance Visit':{'maintenance_visit_details':['serial_no']},'Purchase Receipt':{'purchase_receipt_details':['serial_no']},'Quality Inspection':{'fields':['item_serial_no']},'Sales and Pruchase Return Wizard':{'return_details':['serial_no']},'Sales Invoice':{'entries':['serial_no']},'Stock Entry':{'mtn_details':['serial_no']},'Stock Ledger Entry':{'fields':['serial_no']}},'fs_item_group_in_details':{'Delivery Note':{'delivery_note_details':['item_group']},'Opportunity':{'enquiry_details':['item_group']},'Purchase Request':{'indent_details':['item_group']},'Item':{'fields':['item_group']},'Global Defaults':{'fields':['default_item_group']},'Purchase Order':{'po_details':['item_group']},'Purchase Receipt':{'purchase_receipt_details':['item_group']},'Purchase Voucher':{'entries':['item_group']},'Quotation':{'quotation_details':['item_group']},'Sales Invoice':{'entries':['item_group']},'Sales BOM':{'fields':['serial_no']},'Sales Order':{'sales_order_details':['item_group']},'Serial No':{'fields':['item_group']},'Sales Partner':{'partner_target_details':['item_group']},'Sales Person':{'target_details':['item_group']},'Territory':{'target_details':['item_group']}},'fs_page_break':{'Delivery Note':{'delivery_note_details':['page_break'],'packing_details':['page_break']},'Purchase Request':{'indent_details':['page_break']},'Purchase Order':{'po_details':['page_break']},'Purchase Receipt':{'purchase_receipt_details':['page_break']},'Purchase Voucher':{'entries':['page_break']},'Quotation':{'quotation_details':['page_break']},'Sales Invoice':{'entries':['page_break']},'Sales Order':{'sales_order_details':['page_break']}},'fs_exports':{'Delivery Note':{'fields':['Note','conversion_rate','currency','grand_total_export','in_words_export','rounded_total_export'],'delivery_note_details':['base_ref_rate','amount','basic_rate']},'POS Setting':{'fields':['conversion_rate','currency']},'Quotation':{'fields':['Note HTML','OT Notes','conversion_rate','currency','grand_total_export','in_words_export','rounded_total_export'],'quotation_details':['base_ref_rate','amount','basic_rate']},'Sales Invoice':{'fields':['conversion_rate','currency','grand_total_export','in_words_export','rounded_total_export'],'entries':['base_ref_rate','amount','basic_rate']},'Item':{'ref_rate_details':['ref_currency']},'Sales BOM':{'fields':['currency']},'Sales Order':{'fields':['Note1','OT Notes','conversion_rate','currency','grand_total_export','in_words_export','rounded_total_export'],'sales_order_details':['base_ref_rate','amount','basic_rate']}},'fs_imports':{'Purchase Invoice':{'fields':['conversion_rate','currency','grand_total_import','in_words_import','net_total_import','other_charges_added_import','other_charges_deducted_import'],'entries':['purchase_ref_rate','amount','rate']},'Purchase Order':{'fields':['Note HTML','conversion_rate','currency','grand_total_import','in_words_import','net_total_import','other_charges_added_import','other_charges_deducted_import'],'po_details':['purchase_ref_rate','amount','purchase_rate']},'Purchase Receipt':{'fields':['conversion_rate','currency','grand_total_import','in_words_import','net_total_import','other_charges_added_import','other_charges_deducted_import'],'purchase_receipt_details':['purchase_ref_rate','amount','purchase_rate']},'Supplier Quotation':{'fields':['conversion_rate','currency']}},'fs_item_advanced':{'Item':{'fields':['item_customer_details']}},'fs_sales_extras':{'Address':{'fields':['sales_partner']},'Contact':{'fields':['sales_partner']},'Customer':{'fields':['sales_team']},'Delivery Note':{'fields':['sales_team','Packing List']},'Item':{'fields':['item_customer_details']},'Sales Invoice':{'fields':['sales_team']},'Sales Order':{'fields':['sales_team','Packing List']}},'fs_more_info':{'Delivery Note':{'fields':['More Info']},'Opportunity':{'fields':['More Info']},'Purchase Request':{'fields':['More Info']},'Lead':{'fields':['More Info']},'Purchase Invoice':{'fields':['More Info']},'Purchase Order':{'fields':['More Info']},'Purchase Receipt':{'fields':['More Info']},'Quotation':{'fields':['More Info']},'Sales Invoice':{'fields':['More Info']},'Sales Order':{'fields':['More Info']},},'fs_quality':{'Item':{'fields':['Item Inspection Criteria','inspection_required']},'Purchase Receipt':{'purchase_receipt_details':['qa_no']}},'fs_manufacturing':{'Item':{'fields':['Manufacturing']}},'fs_pos':{'Sales Invoice':{'fields':['is_pos']}},'fs_recurring_invoice':{'Sales Invoice':{'fields':['Recurring Invoice']}}}
+$(document).bind('form_refresh',function(){for(sys_feat in sys_defaults)
+{if(sys_defaults[sys_feat]=='0'&&(sys_feat in pscript.feature_dict))
+{if(cur_frm.doc.doctype in pscript.feature_dict[sys_feat])
+{for(fort in pscript.feature_dict[sys_feat][cur_frm.doc.doctype])
+{if(fort=='fields')
+hide_field(pscript.feature_dict[sys_feat][cur_frm.doc.doctype][fort]);else if(cur_frm.fields_dict[fort])
+{for(grid_field in pscript.feature_dict[sys_feat][cur_frm.doc.doctype][fort])
+cur_frm.fields_dict[fort].grid.set_column_disp(pscript.feature_dict[sys_feat][cur_frm.doc.doctype][fort][grid_field],false);}
+else
+msgprint('Grid "'+fort+'" does not exists');}}}}})
\ No newline at end of file
diff --git a/js/all-web.js b/js/all-web.js
index 0181320..1497c9c 100644
--- a/js/all-web.js
+++ b/js/all-web.js
@@ -127,7 +127,7 @@
wn.views.formview.show(route[1],route[2]);break;case"Report":wn.views.reportview.show(route[1],route[2]);break;default:wn.views.pageview.show(route[0]);}}
wn.get_route=function(route){if(!route)
route=window.location.hash;if(route.substr(0,1)=='#')route=route.substr(1);if(route.substr(0,1)=='!')route=route.substr(1);return $.map(route.split('/'),function(r){return decodeURIComponent(r);});}
-wn.set_route=function(){route=$.map(arguments,function(a){return encodeURIComponent(a)}).join('/');window.location.hash=route;set_favicon();}
+wn.set_route=function(){route=$.map(arguments,function(a){return encodeURIComponent(a)}).join('/');window.location.hash=route;wn.app.set_favicon();}
wn._cur_route=null;$(window).bind('hashchange',function(){if(location.hash==wn._cur_route)
return;wn.route();if(wn.boot.analytics_code){try{eval(wn.boot.analytics_code);}catch(e){console.log(e);}}});
/*
@@ -855,4 +855,57 @@
*/
wn.app={name:'ERPNext',license:'GNU/GPL - Usage Condition: All "erpnext" branding must be kept as it is',source:'https://github.com/webnotes/erpnext',publisher:'Web Notes Technologies Pvt Ltd, Mumbai',copyright:'© Web Notes Technologies Pvt Ltd',version:'2.'+window._version_number}
wn.modules_path='erpnext';$(document).bind('toolbar_setup',function(){$('.brand').html('<b>erp</b>next\
- <i class="icon-home icon-white navbar-icon-home" ></i>').hover(function(){$(this).find('.icon-home').addClass('navbar-icon-home-hover');},function(){$(this).find('.icon-home').removeClass('navbar-icon-home-hover');});});
\ No newline at end of file
+ <i class="icon-home icon-white navbar-icon-home" ></i>').hover(function(){$(this).find('.icon-home').addClass('navbar-icon-home-hover');},function(){$(this).find('.icon-home').removeClass('navbar-icon-home-hover');});});
+/*
+ * erpnext/startup/startup.js
+ */
+var current_module;var is_system_manager=0;wn.provide('erpnext.startup');erpnext.modules={'Selling':'selling-home','Accounts':'accounts-home','Stock':'stock-home','Buying':'buying-home','Support':'support-home','Projects':'projects-home','Production':'production-home','Website':'website-home','HR':'hr-home','Setup':'Setup','Activity':'activity','To Do':'todo','Calendar':'calendar','Messages':'messages','Knowledge Base':'questions','Dashboard':'dashboard'}
+erpnext.startup.set_globals=function(){wn.control_panel.sync_with_gateway=wn.boot.sync_with_gateway
+pscript.is_erpnext_saas=cint(wn.control_panel.sync_with_gateway)
+if(inList(user_roles,'System Manager'))is_system_manager=1;}
+erpnext.startup.start=function(){$('#startup_div').html('Starting up...').toggle(true);erpnext.startup.set_globals();if(wn.boot.user_background){erpnext.set_user_background(wn.boot.user_background);}
+if(user=='Guest'){if(wn.boot.custom_css){set_style(wn.boot.custom_css);}
+if(wn.boot.website_settings.title_prefix){wn.title_prefix=wn.boot.website_settings.title_prefix;}}else{wn.boot.profile.allow_modules=wn.boot.profile.allow_modules.concat(['To Do','Knowledge Base','Calendar','Activity','Messages'])
+if(user_roles.indexOf('Accounts Manager')!=-1){wn.boot.profile.allow_modules.push('Dashboard');}
+erpnext.toolbar.setup();erpnext.startup.set_periodic_updates();if(in_list(user_roles,'System Manager')&&(wn.boot.setup_complete=='No')){wn.require("erpnext/startup/js/complete_setup.js");erpnext.complete_setup();}}
+$('#startup_div').toggle(false);}
+show_chart_browser=function(nm,chart_type){var call_back=function(){if(nm=='Sales Browser'){var sb_obj=new SalesBrowser();sb_obj.set_val(chart_type);}
+else if(nm=='Accounts Browser')
+pscript.make_chart(chart_type);}
+loadpage(nm,call_back);}
+var update_messages=function(reset){if(inList(['Guest'],user)||!wn.session_alive){return;}
+if(!reset){var set_messages=function(r){if(!r.exc){wn.container.wntoolbar.set_new_comments(r.message.unread_messages);var show_in_circle=function(parent_id,msg){var parent=$('#'+parent_id);if(parent){if(msg){parent.find('span:first').text(msg);parent.toggle(true);}else{parent.toggle(false);}}}
+show_in_circle('unread_messages',r.message.unread_messages.length);show_in_circle('open_support_tickets',r.message.open_support_tickets);show_in_circle('things_todo',r.message.things_todo);show_in_circle('todays_events',r.message.todays_events);}else{clearInterval(wn.updates.id);}}
+wn.call({method:'startup.startup.get_global_status_messages',callback:set_messages});}else{wn.container.wntoolbar.set_new_comments(0);$('#unread_messages').toggle(false);}}
+erpnext.startup.set_periodic_updates=function(){wn.updates={};if(wn.updates.id){clearInterval(wn.updates.id);}
+wn.updates.id=setInterval(update_messages,60000);}
+erpnext.set_user_background=function(src){set_style(repl('body { background: url("files/%(src)s") repeat;}',{src:src}))}
+$(document).bind('startup',function(){erpnext.startup.start();});
+/*
+ * erpnext/website/js/topbar.js
+ */
+wn.provide('erpnext.navbar');erpnext.navbar.Navbar=Class.extend({init:function(){this.make();$('.brand').html(wn.boot.website_settings.brand_html);this.make_items();$('.dropdown-toggle').dropdown();},make:function(){$('header').append('<div class="navbar navbar-fixed-top">\
+ <div class="navbar-inner">\
+ <div class="container">\
+ <a class="brand">[brand]</a>\
+ <ul class="nav">\
+ </ul>\
+ <img src="lib/images/ui/spinner.gif" id="spinner"/>\
+ <ul class="nav pull-right">\
+ <li><a href="#!Login Page">Login</a></li>\
+ </ul>\
+ </div>\
+ </div>\
+ </div>');$('.brand').attr('href','#!'+(wn.boot.website_settings.home_page||'Login Page'))},make_items:function(){var items=wn.boot.website_menus;for(var i=0;i<items.length;i++){var item=items[i];if(!item.parent_label&&item.parentfield=='top_bar_items'){item.route=item.url||item.custom_page;$('header .nav:first').append(repl('<li data-label="%(label)s">\
+ <a href="#!%(route)s">%(label)s</a></li>',item))}}
+for(var i=0;i<items.length;i++){var item=items[i];if(item.parent_label&&item.parentfield=='top_bar_items'){$parent_li=$(repl('header li[data-label="%(parent_label)s"]',item));if(!$parent_li.hasClass('dropdown')){$parent_li.addClass('dropdown');$parent_li.find('a:first').addClass('dropdown-toggle').attr('data-toggle','dropdown').attr('href','').append('<b class="caret"></b>').click(function(){return false;});$parent_li.append('<ul class="dropdown-menu"></ul>');}
+item.route=item.url||item.custom_page;$parent_li.find('.dropdown-menu').append(repl('<li data-label="%(label)s">\
+ <a href="#!%(route)s">%(label)s</a></li>',item))}}}});erpnext.Footer=Class.extend({init:function(){$('footer').html(repl('<div class="web-footer">\
+ <div class="web-footer-menu"><ul></ul></div>\
+ <div class="web-footer-address">%(address)s</div>\
+ <div class="web-footer-copyright">© %(copyright)s</div>\
+ <div class="web-footer-powered">Powered by \
+ <a href="https://erpnext.com">erpnext.com</a></div>\
+ </div>',wn.boot.website_settings));this.make_items();},make_items:function(){var items=wn.boot.website_menus
+for(var i=0;i<items.length;i++){var item=items[i];if(!item.parent_label&&item.parentfield=='footer_items'){item.route=item.url||item.custom_page;$('.web-footer-menu ul').append(repl('<li><a href="#!%(route)s" \
+ data-label="%(label)s">%(label)s</a></li>',item))}}}});$(document).bind('startup',function(){erpnext.footer=new erpnext.Footer();erpnext.navbar.navbar=new erpnext.navbar.Navbar();})
\ No newline at end of file