diff --git a/build.json b/build.json index 499d594af4..33032d788c 100644 --- a/build.json +++ b/build.json @@ -3,14 +3,22 @@ "lib/js/core.min.js": [ "lib/js/wn/class.js", "lib/js/wn/provide.js", - "lib/js/wn/xmlhttp.js", "lib/js/wn/versions.js", "lib/js/wn/assets.js", "lib/js/wn/require.js", "lib/js/wn/dom.js", - "lib/js/wn/page.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" ] }, @@ -57,10 +65,12 @@ "lib/css/legacy/grid.css", "lib/css/legacy/listing.css", "lib/css/legacy/report.css", - "lib/css/legacy/autosuggest.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/list.css", + "lib/css/ui/fonts.css", "lib/css/bootstrap/headings.css", "lib/css/bootstrap/buttons.css", "lib/css/bootstrap/navbar.css", @@ -68,7 +78,8 @@ "lib/css/bootstrap/tooltip.css", "lib/css/bootstrap/label.css", "lib/css/bootstrap/icons.css", - "erpnext/startup/startup.css" + "lib/css/bootstrap/popover.css", + "erpnext/startup/startup.css" ] }, @@ -87,15 +98,13 @@ "lib/js/legacy/utils/shortcut.js", "lib/js/legacy/widgets/form/fields.js", "lib/js/wn/ui/dialog.js", + "lib/js/wn/ui/button.js", "lib/js/legacy/widgets/dialog.js", "lib/js/wn/ui/listing.js", "lib/js/legacy/widgets/layout.js", "lib/js/legacy/webpage/page_header.js", - "lib/js/legacy/widgets/select.js", - "lib/js/legacy/webpage/history.js", "lib/js/legacy/webpage/search.js", "lib/js/legacy/webpage/spinner.js", - "lib/js/legacy/webpage/freeze_page.js", "lib/js/legacy/webpage/error_console.js", "lib/js/legacy/webpage/loaders.js", "lib/js/legacy/webpage/uploader.js", @@ -104,7 +113,6 @@ "lib/js/legacy/wn/widgets/footer.js", "lib/js/legacy/model/local_data.js", "lib/js/legacy/model/doclist.js", - "lib/js/legacy/webpage/body.js", "lib/js/legacy/app.js", "js/app.js", "erpnext/startup/startup.js", @@ -115,8 +123,10 @@ { "js/all-app.js": [ "lib/js/lib/history/history.min.js:concat", - "lib/js/legacy/jquery/jquery-ui.min.js:concat", - "lib/js/legacy/tiny_mce_33/jquery.tinymce.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", @@ -130,19 +140,15 @@ "lib/js/legacy/utils/printElement.js", "lib/js/legacy/widgets/form/fields.js", "lib/js/wn/ui/dialog.js", + "lib/js/wn/ui/button.js", "lib/js/legacy/widgets/dialog.js", - "lib/js/legacy/widgets/listing.js", - "lib/js/wn/ui/listing.js", "lib/js/legacy/widgets/layout.js", "lib/js/legacy/widgets/tabbedpage.js", "lib/js/legacy/webpage/page_header.js", - "lib/js/legacy/widgets/select.js", "lib/js/legacy/widgets/tags.js", "lib/js/legacy/widgets/export_query.js", - "lib/js/legacy/webpage/history.js", "lib/js/legacy/webpage/search.js", "lib/js/legacy/webpage/spinner.js", - "lib/js/legacy/webpage/freeze_page.js", "lib/js/legacy/webpage/error_console.js", "lib/js/legacy/webpage/loaders.js", "lib/js/legacy/webpage/uploader.js", @@ -153,9 +159,8 @@ "lib/js/legacy/model/local_data.js", "lib/js/legacy/model/doclist.js", "lib/js/wn/ui/toolbar.min.js:concat", - "lib/js/legacy/webpage/body.js", "lib/js/legacy/widgets/form/fields.js", - "lib/js/legacy/widgets/form/form_container.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", diff --git a/css/all-app.css b/css/all-app.css index 0dea8b7316..790887eacc 100644 --- a/css/all-app.css +++ b/css/all-app.css @@ -1,7 +1,8 @@ /* * lib/css/legacy/body.css - */html { + */ +html { margin: 0px; padding: 0px; } @@ -10,7 +11,7 @@ body { margin: 0px; padding: 0px; font-family: Arial, Helvetica, Sans; - font-size: 12px; + font-size: 14px; color: #000; background-color: #e2e2e2; } @@ -25,19 +26,22 @@ label { } select, input, textarea { - border: 1px solid #AAA; + border: 1px solid #ccc; -moz-border-radius: 4px; -webkit-border-radius: 4px; - font-size: 13px; + font-size: inherit; padding: 4px; - color: #222; + color: #444; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); + -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); } textarea { font-family: inherit; height: 120px; width: 90%; - font-size: 12px; + font-size: inherit; white-space: normal; } @@ -100,8 +104,16 @@ div.fix_ff_cursor { overflow: auto; } div.comment { color: #444; } +.small { + font-size: 11px; +} + +.help { + margin: 3px 0px; + color: #888; +} + div#body_div { - position: relative; display: none; padding-right: 7px; width: 900px; @@ -109,15 +121,40 @@ div#body_div { margin-top: 56px; } -footer { +.content { width: 900px; - margin: auto; + margin-bottom: 30px; +} + +.background-fade-in { + -webkit-transition: background 1s ease-in; /* property duration timing-function delay */ + -moz-transition: background 1s ease-in; + -o-transition: background 1s ease-in; + transition: background 1s ease-in; +} + +footer { + position: absolute; + bottom: 0px; + width: 100%; } header .container { width: 900px; margin: auto; } +@media (max-width: 1200px) { + div#body_div, header .container, .content, #opened-page-selector, footer { + width: 900px; + } +} + +@media (min-width: 1200px) { + div#body_div, header .container, .content, #opened-page-selector, footer { + width: 1100px; + } +} + div.no_script { display: none; } @@ -131,7 +168,6 @@ div.loading_div { display: none; text-align: center; padding: 2px; - font-size: 12px; border: 1px solid #FF4; } @@ -156,27 +192,18 @@ div.std-footer-item { -moz-border-radius: 5px; border-radius: 5px; } -.gradient { - background: #ededed; /* Old browsers */ - background: -moz-linear-gradient(top, #ededed 0%, #d1d1d1 47%, #b7b7b7 100%); /* FF3.6+ */ - background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ededed), color-stop(47%,#d1d1d1), color-stop(100%,#b7b7b7)); /* Chrome,Safari4+ */ - background: -webkit-linear-gradient(top, #ededed 0%,#d1d1d1 47%,#b7b7b7 100%); /* Chrome10+,Safari5.1+ */ - background: -o-linear-gradient(top, #ededed 0%,#d1d1d1 47%,#b7b7b7 100%); /* Opera11.10+ */ - background: -ms-linear-gradient(top, #ededed 0%,#d1d1d1 47%,#b7b7b7 100%); /* IE10+ */ - filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ededed', endColorstr='#b7b7b7',GradientType=0 ); /* IE6-9 */ - background: linear-gradient(top, #ededed 0%,#d1d1d1 47%,#b7b7b7 100%); /* W3C */ -} .layout_wrapper, .layout-wrapper { - -moz-box-shadow: 1px 1px 8px #555; - -webkit-box-shadow: 1px 1px 8px #555; - box-shadow: 1px 1px 8px #555; + -moz-box-shadow: 0px 0px 6px rgba(0,0,0,0.3); + -webkit-box-shadow: 0px 0px 6px rgba(0,0,0,0.3); + box-shadow: 0px 0px 6px rgba(0,0,0,0.3); background-color: #fff; padding: 15px; + margin-bottom: 30px; } .layout-wrapper-background { - background-color: #f2f2f2 !important; + background-color: #fafafa !important; padding: 0px; } @@ -185,7 +212,7 @@ div.std-footer-item { float: left; padding: 15px; background-color: #FFF; - min-height: 450px; + min-height: 600px; -moz-box-shadow: 7px 0px 6px -2px #ddd; -webkit-box-shadow: 7px 0px 6px -2px #ddd; box-shadow: 7px 0px 6px -2px #ddd; @@ -194,10 +221,10 @@ div.std-footer-item { .layout-side-section { width: 22%; /*float: right;*/ - color: #606060; + color: #606060; overflow-x: hidden; padding: 15px; - min-height: 450px; + min-height: 600px; } /* from bootstrap */ @@ -232,17 +259,20 @@ div.std-footer-item { .avatar-small { display: inline-block; - min-width: 29px; + width: 24px; + height: 20px; + vertical-align: middle; + overflow: hidden; + margin: 0px 3px; } .avatar-small img { - height: 24px; - margin-bottom: -7px; - max-width: 24px; + width: 24px; } /* * lib/css/legacy/messages.css */ + /* FLOATING MESSAGE */ .btn-img { cursor: pointer; } @@ -291,9 +321,29 @@ div.notice { text-align: center; font-size: 14px; } + /* * lib/css/legacy/forms.css - *//* FORMS */ + */ +/* FORMS */ + +div.form-section-head { + margin: 11px 0px 3px 0px; + border-top: 1px solid #ccc; + padding-top: 11px; +} + +div.form-layout-row:first-child .form-section-head { + border-top: 0px solid #ccc !important; +} + +div.form-section-head h3 { + line-height: 20px; +} + +div.form-section-head hr { + margin: 9px 0px; +} div.frm_print_wrapper { @@ -323,24 +373,6 @@ div.grid_tbarlinks { } -div.frm_tip_box { - margin: 0px; - padding: 8px; - background-color: #FFC; - display: none; - font-size: 11px; - border: 1px solid #FFB; -} - -div.frm_tip_box table { - border-collapse: collapse; - vertical-align: top; -} - -td.frm_tray_area { - width: 122px; -} - div.dialog_frm { position: relative; margin: 10px; @@ -437,19 +469,14 @@ div.time_field select{ .datainputcell { padding: 2px 0px; } -.field_description, .help { - margin: 3px 0px 11px 0px; - color: #888; - font-style: italic; +.help ol { + padding-left: 19px; } .field_description_top { margin-bottom: 3px; } -.field_label { - font-size:11px; -} .input_area input, select, textarea { font-size: 14px; padding: 2px; @@ -500,7 +527,6 @@ div.sidebar-comment-wrapper input { } div.sidebar-comment-message { margin-top: 8px; - font-size: 11px; color: #777; } @@ -511,13 +537,14 @@ div.sidebar-comment-text { color: #444; } div.sidebar-comment-info { - font-size: 10px; color: #777; } + /* * lib/css/legacy/grid.css */ + /* Grid */ @@ -638,19 +665,11 @@ div.sidebar-comment-info { } .gridDivSelected option { border: 0px; } + /* * lib/css/legacy/listing.css - *//* listing 2.0 */ + */ -div.listing-more { - margin: 7px 0px 17px 0px; - text-align: center; - display: none; -} - -div.listing-toolbar { - margin: 7px 0px; -} /* SRS */ @@ -694,12 +713,10 @@ div.srs_filter_area td { vertical-align: middle; } - - - /* * lib/css/legacy/report.css */ + /* Reports */ div.report_grid_area { @@ -878,103 +895,11 @@ table.builder_tab td { width: 33%; padding: 2px; } -/* - * lib/css/legacy/autosuggest.css - *//* -================================================ -autosuggest, inquisitor style -================================================ -*/ - -div.autosuggest -{ - position: absolute; - margin-top: 3px; - border: 1px solid #222; -} - -div.autosuggest ul -{ - list-style: none; - margin: 0px; - padding: 2px; - overflow: hidden; - background-color: #FFF; -} - -div.autosuggest ul li -{ - color: #444; - padding: 0; - margin: 0; - text-align: left; -} - -div.autosuggest ul li a -{ - color: #444; - display: block; - text-decoration: none; - position: relative; - padding: 0; - width: 100%; -} -div.autosuggest ul li a:hover -{ - -} -div.autosuggest ul li.as_highlight a:hover -{ - background-color: #45A; - color: #FFF; -} - -div.autosuggest ul li a span -{ - display: block; - padding: 3px 6px; - color: #444; - border-bottom:1px solid #DDD; -} - -div.autosuggest ul li a span small -{ - display: block; - font-weight: normal; - color: #444; -} - -div.autosuggest ul li.as_highlight a span small -{ - color: #FFF; -} - -div.autosuggest ul li.as_highlight a span { - color: #FFF; -} - -div.autosuggest ul li.as_highlight a -{ - color: #FFF; - background-color: #45A; - cursor: pointer; -} - -div.autosuggest ul li.as_warning -{ - font-weight: bold; - text-align: center; -} - -div.autosuggest ul em -{ - font-style: normal; - font-weight: bold; -} /* * lib/css/legacy/dialog.css - *//***** Dialogs *******/ + */ +/***** Dialogs *******/ div.dialog_wrapper { position: absolute; @@ -1052,9 +977,11 @@ div.dialog_row table td textarea { font-size: 12px; } + /* * lib/css/legacy/tabs.css */ + /******* TABS ********/ div.box_label_wrapper { @@ -1108,9 +1035,11 @@ ul.box_tabs li.box_tab_selected { ul.box_tabs li.box_tab_selected a { color: #fff; } + /* * lib/css/legacy/sidebar.css - */div.psidebar { + */ +div.psidebar { } div.psidebar div.head { @@ -1126,9 +1055,8 @@ div.psidebar div.section { } div.psidebar div.section-head { - font-size: 12px; padding: 5px 11px; - border-bottom: 2px solid #444; + border-bottom: 1px solid #aaa; } div.psidebar div.section-body { @@ -1140,12 +1068,685 @@ div.psidebar div.section-item { } div.psidebar div.section-item, div.psidebar .section-link { - font-size: 11px; color: #666; } + +/* + * lib/css/Aristo/aristo.selected.css + */ +/* + * jQuery UI CSS Framework 1.8.7 + * + * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about) + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * http://docs.jquery.com/UI/Theming/API + */ + +/* Layout helpers +----------------------------------*/ +.ui-helper-hidden { display: none; } +.ui-helper-hidden-accessible { position: absolute !important; clip: rect(1px 1px 1px 1px); clip: rect(1px,1px,1px,1px); } +.ui-helper-reset { margin: 0; padding: 0; border: 0; outline: 0; line-height: 1.3; text-decoration: none; font-size: 100%; list-style: none; } +.ui-helper-clearfix:after { content: "."; display: block; height: 0; clear: both; visibility: hidden; } +.ui-helper-clearfix { display: inline-block; } +/* required comment for clearfix to work in Opera \*/ +* html .ui-helper-clearfix { height:1%; } +.ui-helper-clearfix { display:block; } +/* end clearfix */ +.ui-helper-zfix { width: 100%; height: 100%; top: 0; left: 0; position: absolute; opacity: 0; filter:Alpha(Opacity=0); } + + +/* Interaction Cues +----------------------------------*/ +.ui-state-disabled { cursor: default !important; } + + +/* Icons +----------------------------------*/ + +/* states and images */ +.ui-icon { display: block; text-indent: -99999px; overflow: hidden; background-repeat: no-repeat; } + + +/* Misc visuals +----------------------------------*/ + +/* Overlays */ +.ui-widget-overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; } + + +/* + * jQuery UI CSS Framework 1.8.7 + * + * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about) + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * http://docs.jquery.com/UI/Theming/API + * + * To view and modify this theme, visit http://jqueryui.com/themeroller/?ctl=themeroller + */ + + +/* Component containers +----------------------------------*/ +.ui-widget { font-family: Arial,sans-serif; font-size: 1.1em; } +.ui-widget .ui-widget { font-size: 1em; } +.ui-widget input, .ui-widget select, .ui-widget textarea, .ui-widget button { font-family: Arial,sans-serif; font-size: 1em; } +.ui-widget-content { border: 1px solid #B6B6B6; background: #ffffff; color: #4F4F4F; } +.ui-widget-content a { color: #4F4F4F; } +.ui-widget-header { border: 1px solid #B6B6B6; color: #4F4F4F; font-weight: bold; } +.ui-widget-header { + background: #ededed url(../lib/css/Aristo/images/bg_fallback.png) 0 0 repeat-x; /* Old browsers */ + background: -moz-linear-gradient(top, #ededed 0%, #c4c4c4 100%); /* FF3.6+ */ + background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ededed), color-stop(100%,#c4c4c4)); /* Chrome,Safari4+ */ + background: -webkit-linear-gradient(top, #ededed 0%,#c4c4c4 100%); /* Chrome10+,Safari5.1+ */ + background: -o-linear-gradient(top, #ededed 0%,#c4c4c4 100%); /* Opera11.10+ */ + background: -ms-linear-gradient(top, #ededed 0%,#c4c4c4 100%); /* IE10+ */ + background: linear-gradient(top, #ededed 0%,#c4c4c4 100%); /* W3C */ +} +.ui-widget-header a { color: #4F4F4F; } + +/* Interaction states +----------------------------------*/ +.ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default { border: 1px solid #B6B6B6; font-weight: normal; color: #4F4F4F; } +.ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default { + background: #ededed url(../lib/css/Aristo/images/bg_fallback.png) 0 0 repeat-x; /* Old browsers */ + background: -moz-linear-gradient(top, #ededed 0%, #c4c4c4 100%); /* FF3.6+ */ + background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ededed), color-stop(100%,#c4c4c4)); /* Chrome,Safari4+ */ + background: -webkit-linear-gradient(top, #ededed 0%,#c4c4c4 100%); /* Chrome10+,Safari5.1+ */ + background: -o-linear-gradient(top, #ededed 0%,#c4c4c4 100%); /* Opera11.10+ */ + background: -ms-linear-gradient(top, #ededed 0%,#c4c4c4 100%); /* IE10+ */ + background: linear-gradient(top, #ededed 0%,#c4c4c4 100%); /* W3C */ + -webkit-box-shadow: 0 1px 0 rgba(255,255,255,0.6) inset; + -moz-box-shadow: 0 1px 0 rgba(255,255,255,0.6) inset; + box-shadow: 0 1px 0 rgba(255,255,255,0.6) inset; +} +.ui-state-default a, .ui-state-default a:link, .ui-state-default a:visited { color: #4F4F4F; text-decoration: none; } +.ui-state-hover, .ui-widget-content .ui-state-hover, .ui-widget-header .ui-state-hover, .ui-state-focus, .ui-widget-content .ui-state-focus, .ui-widget-header .ui-state-focus { border: 1px solid #9D9D9D; font-weight: normal; color: #313131; } +.ui-state-hover a, .ui-state-hover a:hover { color: #313131; text-decoration: none; } +.ui-state-active, .ui-widget-content .ui-state-active, .ui-widget-header .ui-state-active { + outline: none; + color: #1c4257; border: 1px solid #7096ab; + background: #ededed url(../lib/css/Aristo/images/bg_fallback.png) 0 -50px repeat-x; /* Old browsers */ + background: -moz-linear-gradient(top, #b9e0f5 0%, #92bdd6 100%); /* FF3.6+ */ + background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#b9e0f5), color-stop(100%,#92bdd6)); /* Chrome,Safari4+ */ + background: -webkit-linear-gradient(top, #b9e0f5 0%,#92bdd6 100%); /* Chrome10+,Safari5.1+ */ + background: -o-linear-gradient(top, #b9e0f5 0%,#92bdd6 100%); /* Opera11.10+ */ + background: -ms-linear-gradient(top, #b9e0f5 0%,#92bdd6 100%); /* IE10+ */ + background: linear-gradient(top, #b9e0f5 0%,#92bdd6 100%); /* W3C */ + -webkit-box-shadow: none; + -moz-box-shadow: none; + box-shadow: none; +} +.ui-state-active a, .ui-state-active a:link, .ui-state-active a:visited { color: #313131; text-decoration: none; } +.ui-widget :active { outline: none; } + +/* Interaction Cues +----------------------------------*/ +.ui-state-highlight, .ui-widget-content .ui-state-highlight, .ui-widget-header .ui-state-highlight { border: 1px solid #d2dbf4; background: #f4f8fd; color: #0d2054; -moz-border-radius: 0 !important; -webkit-border-radius: 0 !important; border-radius: 0 !important; } +.ui-state-highlight a, .ui-widget-content .ui-state-highlight a,.ui-widget-header .ui-state-highlight a { color: #363636; } +.ui-state-error, .ui-widget-content .ui-state-error, .ui-widget-header .ui-state-error { border: 1px solid #e2d0d0; background: #fcf0f0; color: #280b0b; -moz-border-radius: 0 !important; -webkit-border-radius: 0 !important; border-radius: 0 !important; } +.ui-state-error a, .ui-widget-content .ui-state-error a, .ui-widget-header .ui-state-error a { color: #cd0a0a; } +.ui-state-error-text, .ui-widget-content .ui-state-error-text, .ui-widget-header .ui-state-error-text { color: #cd0a0a; } +.ui-priority-primary, .ui-widget-content .ui-priority-primary, .ui-widget-header .ui-priority-primary { font-weight: bold; } +.ui-priority-secondary, .ui-widget-content .ui-priority-secondary, .ui-widget-header .ui-priority-secondary { opacity: .7; filter:Alpha(Opacity=70); font-weight: normal; } +.ui-state-disabled, .ui-widget-content .ui-state-disabled, .ui-widget-header .ui-state-disabled { opacity: .35; filter:Alpha(Opacity=35); background-image: none; } + +/* Icons +----------------------------------*/ + +/* states and images */ +.ui-icon { width: 16px; height: 16px; background-image: url(../lib/css/Aristo/images/ui-icons_222222_256x240.png); } +.ui-widget-content .ui-icon {background-image: url(../lib/css/Aristo/images/ui-icons_222222_256x240.png); } +.ui-widget-header .ui-icon {background-image: url(../lib/css/Aristo/images/ui-icons_222222_256x240.png); } +.ui-state-default .ui-icon { background-image: url(../lib/css/Aristo/images/ui-icons_454545_256x240.png); } +.ui-state-hover .ui-icon, .ui-state-focus .ui-icon {background-image: url(../lib/css/Aristo/images/ui-icons_454545_256x240.png); } +.ui-state-active .ui-icon {background-image: url(../lib/css/Aristo/images/ui-icons_454545_256x240.png); } +.ui-state-highlight .ui-icon {background-image: url(../lib/css/Aristo/images/ui-icons_454545_256x240.png); } +.ui-state-error .ui-icon, .ui-state-error-text .ui-icon { background: url(../lib/css/Aristo/images/icon_sprite.png) -16px 0 no-repeat !important; } +.ui-state-highlight .ui-icon, .ui-state-error .ui-icon { margin-top: -1px; } + +/* positioning */ +.ui-icon-carat-1-n { background-position: 0 0; } +.ui-icon-carat-1-ne { background-position: -16px 0; } +.ui-icon-carat-1-e { background-position: -32px 0; } +.ui-icon-carat-1-se { background-position: -48px 0; } +.ui-icon-carat-1-s { background-position: -64px 0; } +.ui-icon-carat-1-sw { background-position: -80px 0; } +.ui-icon-carat-1-w { background-position: -96px 0; } +.ui-icon-carat-1-nw { background-position: -112px 0; } +.ui-icon-carat-2-n-s { background-position: -128px 0; } +.ui-icon-carat-2-e-w { background-position: -144px 0; } +.ui-icon-triangle-1-n { background-position: 0 -16px; } +.ui-icon-triangle-1-ne { background-position: -16px -16px; } +.ui-icon-triangle-1-e { background-position: -32px -16px; } +.ui-icon-triangle-1-se { background-position: -48px -16px; } +.ui-icon-triangle-1-s { background-position: -64px -16px; } +.ui-icon-triangle-1-sw { background-position: -80px -16px; } +.ui-icon-triangle-1-w { background-position: -96px -16px; } +.ui-icon-triangle-1-nw { background-position: -112px -16px; } +.ui-icon-triangle-2-n-s { background-position: -128px -16px; } +.ui-icon-triangle-2-e-w { background-position: -144px -16px; } +.ui-icon-arrow-1-n { background-position: 0 -32px; } +.ui-icon-arrow-1-ne { background-position: -16px -32px; } +.ui-icon-arrow-1-e { background-position: -32px -32px; } +.ui-icon-arrow-1-se { background-position: -48px -32px; } +.ui-icon-arrow-1-s { background-position: -64px -32px; } +.ui-icon-arrow-1-sw { background-position: -80px -32px; } +.ui-icon-arrow-1-w { background-position: -96px -32px; } +.ui-icon-arrow-1-nw { background-position: -112px -32px; } +.ui-icon-arrow-2-n-s { background-position: -128px -32px; } +.ui-icon-arrow-2-ne-sw { background-position: -144px -32px; } +.ui-icon-arrow-2-e-w { background-position: -160px -32px; } +.ui-icon-arrow-2-se-nw { background-position: -176px -32px; } +.ui-icon-arrowstop-1-n { background-position: -192px -32px; } +.ui-icon-arrowstop-1-e { background-position: -208px -32px; } +.ui-icon-arrowstop-1-s { background-position: -224px -32px; } +.ui-icon-arrowstop-1-w { background-position: -240px -32px; } +.ui-icon-arrowthick-1-n { background-position: 0 -48px; } +.ui-icon-arrowthick-1-ne { background-position: -16px -48px; } +.ui-icon-arrowthick-1-e { background-position: -32px -48px; } +.ui-icon-arrowthick-1-se { background-position: -48px -48px; } +.ui-icon-arrowthick-1-s { background-position: -64px -48px; } +.ui-icon-arrowthick-1-sw { background-position: -80px -48px; } +.ui-icon-arrowthick-1-w { background-position: -96px -48px; } +.ui-icon-arrowthick-1-nw { background-position: -112px -48px; } +.ui-icon-arrowthick-2-n-s { background-position: -128px -48px; } +.ui-icon-arrowthick-2-ne-sw { background-position: -144px -48px; } +.ui-icon-arrowthick-2-e-w { background-position: -160px -48px; } +.ui-icon-arrowthick-2-se-nw { background-position: -176px -48px; } +.ui-icon-arrowthickstop-1-n { background-position: -192px -48px; } +.ui-icon-arrowthickstop-1-e { background-position: -208px -48px; } +.ui-icon-arrowthickstop-1-s { background-position: -224px -48px; } +.ui-icon-arrowthickstop-1-w { background-position: -240px -48px; } +.ui-icon-arrowreturnthick-1-w { background-position: 0 -64px; } +.ui-icon-arrowreturnthick-1-n { background-position: -16px -64px; } +.ui-icon-arrowreturnthick-1-e { background-position: -32px -64px; } +.ui-icon-arrowreturnthick-1-s { background-position: -48px -64px; } +.ui-icon-arrowreturn-1-w { background-position: -64px -64px; } +.ui-icon-arrowreturn-1-n { background-position: -80px -64px; } +.ui-icon-arrowreturn-1-e { background-position: -96px -64px; } +.ui-icon-arrowreturn-1-s { background-position: -112px -64px; } +.ui-icon-arrowrefresh-1-w { background-position: -128px -64px; } +.ui-icon-arrowrefresh-1-n { background-position: -144px -64px; } +.ui-icon-arrowrefresh-1-e { background-position: -160px -64px; } +.ui-icon-arrowrefresh-1-s { background-position: -176px -64px; } +.ui-icon-arrow-4 { background-position: 0 -80px; } +.ui-icon-arrow-4-diag { background-position: -16px -80px; } +.ui-icon-extlink { background-position: -32px -80px; } +.ui-icon-newwin { background-position: -48px -80px; } +.ui-icon-refresh { background-position: -64px -80px; } +.ui-icon-shuffle { background-position: -80px -80px; } +.ui-icon-transfer-e-w { background-position: -96px -80px; } +.ui-icon-transferthick-e-w { background-position: -112px -80px; } +.ui-icon-folder-collapsed { background-position: 0 -96px; } +.ui-icon-folder-open { background-position: -16px -96px; } +.ui-icon-document { background-position: -32px -96px; } +.ui-icon-document-b { background-position: -48px -96px; } +.ui-icon-note { background-position: -64px -96px; } +.ui-icon-mail-closed { background-position: -80px -96px; } +.ui-icon-mail-open { background-position: -96px -96px; } +.ui-icon-suitcase { background-position: -112px -96px; } +.ui-icon-comment { background-position: -128px -96px; } +.ui-icon-person { background-position: -144px -96px; } +.ui-icon-print { background-position: -160px -96px; } +.ui-icon-trash { background-position: -176px -96px; } +.ui-icon-locked { background-position: -192px -96px; } +.ui-icon-unlocked { background-position: -208px -96px; } +.ui-icon-bookmark { background-position: -224px -96px; } +.ui-icon-tag { background-position: -240px -96px; } +.ui-icon-home { background-position: 0 -112px; } +.ui-icon-flag { background-position: -16px -112px; } +.ui-icon-calendar { background-position: -32px -112px; } +.ui-icon-cart { background-position: -48px -112px; } +.ui-icon-pencil { background-position: -64px -112px; } +.ui-icon-clock { background-position: -80px -112px; } +.ui-icon-disk { background-position: -96px -112px; } +.ui-icon-calculator { background-position: -112px -112px; } +.ui-icon-zoomin { background-position: -128px -112px; } +.ui-icon-zoomout { background-position: -144px -112px; } +.ui-icon-search { background-position: -160px -112px; } +.ui-icon-wrench { background-position: -176px -112px; } +.ui-icon-gear { background-position: -192px -112px; } +.ui-icon-heart { background-position: -208px -112px; } +.ui-icon-star { background-position: -224px -112px; } +.ui-icon-link { background-position: -240px -112px; } +.ui-icon-cancel { background-position: 0 -128px; } +.ui-icon-plus { background-position: -16px -128px; } +.ui-icon-plusthick { background-position: -32px -128px; } +.ui-icon-minus { background-position: -48px -128px; } +.ui-icon-minusthick { background-position: -64px -128px; } +.ui-icon-close { background-position: -80px -128px; } +.ui-icon-closethick { background-position: -96px -128px; } +.ui-icon-key { background-position: -112px -128px; } +.ui-icon-lightbulb { background-position: -128px -128px; } +.ui-icon-scissors { background-position: -144px -128px; } +.ui-icon-clipboard { background-position: -160px -128px; } +.ui-icon-copy { background-position: -176px -128px; } +.ui-icon-contact { background-position: -192px -128px; } +.ui-icon-image { background-position: -208px -128px; } +.ui-icon-video { background-position: -224px -128px; } +.ui-icon-script { background-position: -240px -128px; } +.ui-icon-alert { background-position: 0 -144px; } +.ui-icon-info { background: url(../lib/css/Aristo/images/icon_sprite.png) 0 0 no-repeat !important; } +.ui-icon-notice { background-position: -32px -144px; } +.ui-icon-help { background-position: -48px -144px; } +.ui-icon-check { background-position: -64px -144px; } +.ui-icon-bullet { background-position: -80px -144px; } +.ui-icon-radio-off { background-position: -96px -144px; } +.ui-icon-radio-on { background-position: -112px -144px; } +.ui-icon-pin-w { background-position: -128px -144px; } +.ui-icon-pin-s { background-position: -144px -144px; } +.ui-icon-play { background-position: 0 -160px; } +.ui-icon-pause { background-position: -16px -160px; } +.ui-icon-seek-next { background-position: -32px -160px; } +.ui-icon-seek-prev { background-position: -48px -160px; } +.ui-icon-seek-end { background-position: -64px -160px; } +.ui-icon-seek-start { background-position: -80px -160px; } +/* ui-icon-seek-first is deprecated, use ui-icon-seek-start instead */ +.ui-icon-seek-first { background-position: -80px -160px; } +.ui-icon-stop { background-position: -96px -160px; } +.ui-icon-eject { background-position: -112px -160px; } +.ui-icon-volume-off { background-position: -128px -160px; } +.ui-icon-volume-on { background-position: -144px -160px; } +.ui-icon-power { background-position: 0 -176px; } +.ui-icon-signal-diag { background-position: -16px -176px; } +.ui-icon-signal { background-position: -32px -176px; } +.ui-icon-battery-0 { background-position: -48px -176px; } +.ui-icon-battery-1 { background-position: -64px -176px; } +.ui-icon-battery-2 { background-position: -80px -176px; } +.ui-icon-battery-3 { background-position: -96px -176px; } +.ui-icon-circle-plus { background-position: 0 -192px; } +.ui-icon-circle-minus { background-position: -16px -192px; } +.ui-icon-circle-close { background-position: -32px -192px; } +.ui-icon-circle-triangle-e { background-position: -48px -192px; } +.ui-icon-circle-triangle-s { background-position: -64px -192px; } +.ui-icon-circle-triangle-w { background-position: -80px -192px; } +.ui-icon-circle-triangle-n { background-position: -96px -192px; } +.ui-icon-circle-arrow-e { background-position: -112px -192px; } +.ui-icon-circle-arrow-s { background-position: -128px -192px; } +.ui-icon-circle-arrow-w { background-position: -144px -192px; } +.ui-icon-circle-arrow-n { background-position: -160px -192px; } +.ui-icon-circle-zoomin { background-position: -176px -192px; } +.ui-icon-circle-zoomout { background-position: -192px -192px; } +.ui-icon-circle-check { background-position: -208px -192px; } +.ui-icon-circlesmall-plus { background-position: 0 -208px; } +.ui-icon-circlesmall-minus { background-position: -16px -208px; } +.ui-icon-circlesmall-close { background-position: -32px -208px; } +.ui-icon-squaresmall-plus { background-position: -48px -208px; } +.ui-icon-squaresmall-minus { background-position: -64px -208px; } +.ui-icon-squaresmall-close { background-position: -80px -208px; } +.ui-icon-grip-dotted-vertical { background-position: 0 -224px; } +.ui-icon-grip-dotted-horizontal { background-position: -16px -224px; } +.ui-icon-grip-solid-vertical { background-position: -32px -224px; } +.ui-icon-grip-solid-horizontal { background-position: -48px -224px; } +.ui-icon-gripsmall-diagonal-se { background-position: -64px -224px; } +.ui-icon-grip-diagonal-se { background-position: -80px -224px; } + + +/* Misc visuals +----------------------------------*/ + +/* Corner radius */ +.ui-corner-tl { -moz-border-radius-topleft: 3px; -webkit-border-top-left-radius: 3px; border-top-left-radius: 3px; } +.ui-corner-tr { -moz-border-radius-topright: 3px; -webkit-border-top-right-radius: 3px; border-top-right-radius: 3px; } +.ui-corner-bl { -moz-border-radius-bottomleft: 3px; -webkit-border-bottom-left-radius: 3px; border-bottom-left-radius: 3px; } +.ui-corner-br { -moz-border-radius-bottomright: 3px; -webkit-border-bottom-right-radius: 3px; border-bottom-right-radius: 3px; } +.ui-corner-top { -moz-border-radius-topleft: 3px; -webkit-border-top-left-radius: 3px; border-top-left-radius: 3px; -moz-border-radius-topright: 3px; -webkit-border-top-right-radius: 3px; border-top-right-radius: 3px; } +.ui-corner-bottom { -moz-border-radius-bottomleft: 3px; -webkit-border-bottom-left-radius: 3px; border-bottom-left-radius: 3px; -moz-border-radius-bottomright: 3px; -webkit-border-bottom-right-radius: 3px; border-bottom-right-radius: 3px; } +.ui-corner-right { -moz-border-radius-topright: 3px; -webkit-border-top-right-radius: 3px; border-top-right-radius: 3px; -moz-border-radius-bottomright: 3px; -webkit-border-bottom-right-radius: 3px; border-bottom-right-radius: 3px; } +.ui-corner-left { -moz-border-radius-topleft: 3px; -webkit-border-top-left-radius: 3px; border-top-left-radius: 3px; -moz-border-radius-bottomleft: 3px; -webkit-border-bottom-left-radius: 3px; border-bottom-left-radius: 3px; } +.ui-corner-all { -moz-border-radius: 3px; -webkit-border-radius: 3px; border-radius: 3px; } + +/* Overlays */ +.ui-widget-overlay { background: #262b33; opacity: .70;filter:Alpha(Opacity=70); } +.ui-widget-shadow { margin: -8px 0 0 -8px; padding: 8px; background: #000000; opacity: .30;filter:Alpha(Opacity=30); -moz-border-radius: 8px; -webkit-border-radius: 8px; border-radius: 8px; } + +/* + * jQuery UI Autocomplete 1.8.7 + * + * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about) + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * http://docs.jquery.com/UI/Autocomplete#theming + */ +.ui-autocomplete { + position: absolute; cursor: default; z-index: 3; + -moz-border-radius: 0; + -webkit-border-radius: 0; + border-radius: 0; + -moz-box-shadow: 0 1px 5px rgba(0,0,0,0.3); + -webkit-box-shadow: 0 1px 5px rgba(0,0,0,0.3); + box-shadow: 0 1px 5px rgba(0,0,0,0.3); +} + +/* workarounds */ +* html .ui-autocomplete { width:1px; } /* without this, the menu expands to 100% in IE6 */ + +/* + * jQuery UI Menu 1.8.7 + * + * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about) + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * http://docs.jquery.com/UI/Menu#theming + */ +.ui-menu { + list-style:none; + padding: 2px; + margin: 0; + display:block; + float: left; +} +.ui-menu .ui-menu { + margin-top: -3px; +} +.ui-menu .ui-menu-item { + margin:0; + padding: 0; + zoom: 1; + float: left; + clear: left; + width: 100%; +} +.ui-menu .ui-menu-item a { + text-decoration:none; + display:block; + padding:.2em .4em; + line-height:1.5; + zoom:1; +} +.ui-menu .ui-menu-item a.ui-state-hover, +.ui-menu .ui-menu-item a.ui-state-active { + font-weight: normal; + margin: -1px; + background: #5f83b9; + color: #FFFFFF; + border-color: #466086; + -moz-border-radius: 0; + -webkit-border-radius: 0; + border-radius: 0; +} + +/* + * jQuery UI Datepicker 1.8.7 + * + * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about) + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * http://docs.jquery.com/UI/Datepicker#theming + */ +.ui-datepicker { width: 17em; padding: 0; display: none; border-color: #DDDDDD; } +.ui-datepicker { + -moz-box-shadow: 0 4px 8px rgba(0,0,0,0.5); + -webkit-box-shadow: 0 4px 8px rgba(0,0,0,0.5); + box-shadow: 0 4px 8px rgba(0,0,0,0.5); +} +.ui-datepicker .ui-datepicker-header { position:relative; padding:.35em 0; border: none; border-bottom: 1px solid #B6B6B6; -moz-border-radius: 0; -webkit-border-radius: 0; border-radius: 0; } +.ui-datepicker .ui-datepicker-prev, .ui-datepicker .ui-datepicker-next { position:absolute; top: 6px; width: 1.8em; height: 1.8em; } +.ui-datepicker .ui-datepicker-prev-hover, .ui-datepicker .ui-datepicker-next-hover { border: 1px none; } +.ui-datepicker .ui-datepicker-prev { left:2px; } +.ui-datepicker .ui-datepicker-next { right:2px; } +.ui-datepicker .ui-datepicker-prev span { background-position: 0px -32px !important; } +.ui-datepicker .ui-datepicker-next span { background-position: -16px -32px !important; } +.ui-datepicker .ui-datepicker-prev-hover span { background-position: 0px -48px !important; } +.ui-datepicker .ui-datepicker-next-hover span { background-position: -16px -48px !important; } +.ui-datepicker .ui-datepicker-prev span, .ui-datepicker .ui-datepicker-next span { display: block; position: absolute; left: 50%; margin-left: -8px; top: 50%; margin-top: -8px; background: url(../lib/css/Aristo/images/icon_sprite.png) no-repeat; } +.ui-datepicker .ui-datepicker-title { margin: 0 2.3em; line-height: 1.8em; text-align: center; font-size: 12px; text-shadow: 0 1px 0 rgba(255,255,255,0.6); } +.ui-datepicker .ui-datepicker-title select { font-size:1em; margin:1px 0; } +.ui-datepicker select.ui-datepicker-month-year {width: 100%;} +.ui-datepicker select.ui-datepicker-month, +.ui-datepicker select.ui-datepicker-year { width: 49%;} +.ui-datepicker table {width: 100%; font-size: .9em; border-collapse: collapse; margin:0 0 .4em; } +.ui-datepicker th { padding: .7em .3em; text-align: center; font-weight: bold; border: 0; } +.ui-datepicker td { border: 0; padding: 1px; } +.ui-datepicker td span, .ui-datepicker td a { display: block; padding: .2em; text-align: right; text-decoration: none; } +.ui-datepicker .ui-datepicker-buttonpane { background-image: none; margin: .7em 0 0 0; padding:0 .2em; border-left: 0; border-right: 0; border-bottom: 0; } +.ui-datepicker .ui-datepicker-buttonpane button { float: right; margin: .5em .2em .4em; cursor: pointer; padding: .2em .6em .3em .6em; width:auto; overflow:visible; } +.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current { float:left; } +.ui-datepicker table .ui-state-highlight { border-color: #5F83B9; } +.ui-datepicker table .ui-state-hover { background: #5F83B9; color: #FFF; font-weight: bold; text-shadow: 0 1px 1px #234386; -webkit-box-shadow: 0 0px 0 rgba(255,255,255,0.6) inset; -moz-box-shadow: 0 0px 0 rgba(255,255,255,0.6) inset; box-shadow: 0 0px 0 rgba(255,255,255,0.6) inset; border-color: #5F83B9; } +.ui-datepicker-calendar .ui-state-default { background: transparent; border-color: #FFF; } +.ui-datepicker-calendar .ui-state-active { background: #5F83B9; border-color: #5F83B9; color: #FFF; font-weight: bold; text-shadow: 0 1px 1px #234386; } + +/* with multiple calendars */ +.ui-datepicker.ui-datepicker-multi { width:auto; } +.ui-datepicker-multi .ui-datepicker-group { float:left; } +.ui-datepicker-multi .ui-datepicker-group table { width:95%; margin:0 auto .4em; } +.ui-datepicker-multi-2 .ui-datepicker-group { width:50%; } +.ui-datepicker-multi-3 .ui-datepicker-group { width:33.3%; } +.ui-datepicker-multi-4 .ui-datepicker-group { width:25%; } +.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header { border-left-width:0; } +.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header { border-left-width:0; } +.ui-datepicker-multi .ui-datepicker-buttonpane { clear:left; } +.ui-datepicker-row-break { clear:both; width:100%; } + +/* RTL support */ +.ui-datepicker-rtl { direction: rtl; } +.ui-datepicker-rtl .ui-datepicker-prev { right: 2px; left: auto; } +.ui-datepicker-rtl .ui-datepicker-next { left: 2px; right: auto; } +.ui-datepicker-rtl .ui-datepicker-prev:hover { right: 1px; left: auto; } +.ui-datepicker-rtl .ui-datepicker-next:hover { left: 1px; right: auto; } +.ui-datepicker-rtl .ui-datepicker-buttonpane { clear:right; } +.ui-datepicker-rtl .ui-datepicker-buttonpane button { float: left; } +.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current { float:right; } +.ui-datepicker-rtl .ui-datepicker-group { float:right; } +.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header { border-right-width:0; border-left-width:1px; } +.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header { border-right-width:0; border-left-width:1px; } + +/* IE6 IFRAME FIX (taken from datepicker 1.5.3 */ +.ui-datepicker-cover { + display: none; /*sorry for IE5*/ + display/**/: block; /*sorry for IE5*/ + position: absolute; /*must have*/ + z-index: -1; /*must have*/ + filter: mask(); /*must have*/ + top: -4px; /*must have*/ + left: -4px; /*must have*/ + width: 200px; /*must have*/ + height: 200px; /*must have*/ +} + + + +/* + * lib/css/ui/list.css + */ +.hide { + display: none; +} + +.list-filters { + margin: 7px 0px; +} + +.wnlist .img-load { + display: none; + float: left; + margin-bottom: 8px; +} + +/* list-row */ +div.list-row { + border-bottom: 1px solid #eee; + padding: 5px 0px; +} +div.list-row:hover { + background-color: #eef +} + +div.list-row .label { + margin-right: 4px; +} + +div.list-row table { + table-layout: fixed; + border-collapse: collapse; + width: 100%; +} + +div.list-row table td { + overflow: hidden; + padding-right: 3px; + vertical-align: middle; + height: 24px; + max-height: 24px; +} + +div.paging-button { + text-align: center; + padding: 11px 0px; +} + +div.show_filters { + display: none; +} + +div.filter_list { + padding: 13px; +} + +div.show_filters.well { + margin-top: 11px; + margin-bottom: 11px; +} + +div.filter_list .run_btn { + text-align: right; +} + +div.filter_list .add_filter { + margin: 3px 0px; +} + +div.list_filter { + margin: 7px 0px; +} + +div.list_filter input, div.list_filter select { + width: 130px; + margin-right: 7px; +} + +/* bar */ + +span.bar-outer { + display: inline-block; + margin: 0px 7px; + margin-top: 3px; + background-color: #fff; + border: 1px solid #aaa; + height: 10px; +} + +span.bar-inner { + display: inline-block; + background-color: #bdf; + height: 100%; + margin-bottom: 2px; + float: left; +} +span.bar-complete { + background-color: #009900; +} +span.bar-empty { + background-color: #990000; +} + + +/* stats */ + +div.stat-wrapper { + margin-bottom: 19px; +} + +div.stat-grid { + border: 2px solid #bbb; + background-color: white; + border-radius: 5px; + -moz-border-radius: 5px; + -webkit-border-radius: 5px; + overflow: hidden; +} + +div.stat-label { + position: relative; + padding: 3px; + text-align: center; +} +div.stat-label, div.stat-label a { + z-index: 5; +} + +div.stat-item { + position: relative; + border-bottom: 1px solid #ddd; +} +div.stat-item:last-child { + border-bottom: 0px solid #ddd; +} + +div.stat-bar { + position: absolute; + left: 0px; + background-color: #def; + height: 100%; + z-index: 0; +} + + + + + +/* + * lib/css/ui/fonts.css + */ +@font-face { + font-family: 'Pontano Sans'; + font-style: normal; + font-weight: 800; + src: url('../lib/css/fonts/pontanosans.woff') format('woff'); +} + +@font-face { + font-family: 'Droid Sans'; + font-style: normal; + font-weight: normal; + src: local('Droid Sans'), local('DroidSans'), url('../lib/css/fonts/droidsans.woff') format('woff'); +} + +@font-face { + font-family: 'PT Sans'; + font-style: normal; + font-weight: normal; + src: local('PT Sans'), local('PTSans-Regular'), url('../lib/css/fonts/ptsans.woff') format('woff'); +} + +@font-face { + font-family: 'Open Sans'; + font-style: normal; + font-weight: 400; + src: local('Open Sans'), local('OpenSans'), url('../lib/css/fonts/opensans.woff') format('woff'); +} +@font-face { + font-family: 'Lato'; + font-style: normal; + font-weight: 400; + src: local('Lato Regular'), local('Lato-Regular'), url('../lib/css/fonts/lato.woff') format('woff'); +} + + + /* * lib/css/bootstrap/headings.css - *//* heading from bootstrap */ + */ +/* heading from bootstrap */ h1, h2, @@ -1206,9 +1807,12 @@ h6 { color: #999999; text-transform: uppercase; } + /* * lib/css/bootstrap/buttons.css - */.close { + */ +.close { + font-family: Helvetica, Sans; float: right; font-size: 20px; font-weight: bold; @@ -1591,9 +2195,11 @@ button.btn.small, input[type="submit"].btn.small { .btn-small .caret { margin-top: 4px; } + /* * lib/css/bootstrap/navbar.css - */.nav { + */ +.nav { margin-left: 0; margin-bottom: 18px; list-style: none; @@ -2059,9 +2665,11 @@ button.btn.small, input[type="submit"].btn.small { padding: 0px 20px; } + /* * lib/css/bootstrap/dropdown.css - */.dropdown { + */ +.dropdown { position: relative; } .dropdown-toggle { @@ -2161,9 +2769,11 @@ button.btn.small, input[type="submit"].btn.small { .dropdown.open .dropdown-menu { display: block; } + /* * lib/css/bootstrap/tooltip.css - */.tooltip { + */ +.tooltip { position: absolute; z-index: 1020; display: block; @@ -2329,9 +2939,11 @@ button.btn.small, input[type="submit"].btn.small { .popover-content p, .popover-content ul, .popover-content ol { margin-bottom: 0; } + /* * lib/css/bootstrap/label.css - */.label { + */ +.label { padding: 2px 4px 3px; font-size: 11.049999999999999px; font-weight: bold; @@ -2370,9 +2982,11 @@ button.btn.small, input[type="submit"].btn.small { .label-info:hover { background-color: #2d6987; } + /* * lib/css/bootstrap/icons.css - */[class^="icon-"], [class*=" icon-"] { + */ +[class^="icon-"], [class*=" icon-"] { display: inline-block; width: 14px; height: 14px; @@ -2749,16 +3363,114 @@ button.btn.small, input[type="submit"].btn.small { .icon-resize-horizontal { background-position: -456px -118px; } + +/* + * lib/css/bootstrap/popover.css + */ +.popover { + position: absolute; + top: 0; + left: 0; + z-index: 1010; + display: none; + padding: 5px; +} +.popover.top { + margin-top: -5px; +} +.popover.right { + margin-left: 5px; +} +.popover.bottom { + margin-top: 5px; +} +.popover.left { + margin-left: -5px; +} +.popover.top .arrow { + bottom: 0; + left: 50%; + margin-left: -5px; + border-left: 5px solid transparent; + border-right: 5px solid transparent; + border-top: 5px solid #000000; +} +.popover.right .arrow { + top: 50%; + left: 0; + margin-top: -5px; + border-top: 5px solid transparent; + border-bottom: 5px solid transparent; + border-right: 5px solid #000000; +} +.popover.bottom .arrow { + top: 0; + left: 50%; + margin-left: -5px; + border-left: 5px solid transparent; + border-right: 5px solid transparent; + border-bottom: 5px solid #000000; +} +.popover.left .arrow { + top: 50%; + right: 0; + margin-top: -5px; + border-top: 5px solid transparent; + border-bottom: 5px solid transparent; + border-left: 5px solid #000000; +} +.popover .arrow { + position: absolute; + width: 0; + height: 0; +} +.popover-inner { + padding: 3px; + width: 280px; + overflow: hidden; + background: #000000; + background: rgba(0, 0, 0, 0.8); + -webkit-border-radius: 6px; + -moz-border-radius: 6px; + border-radius: 6px; + -webkit-box-shadow: 0 3px 7px rgba(0, 0, 0, 0.3); + -moz-box-shadow: 0 3px 7px rgba(0, 0, 0, 0.3); + box-shadow: 0 3px 7px rgba(0, 0, 0, 0.3); +} +.popover-title { + padding: 9px 15px; + line-height: 1; + background-color: #f5f5f5; + border-bottom: 1px solid #eee; + -webkit-border-radius: 3px 3px 0 0; + -moz-border-radius: 3px 3px 0 0; + border-radius: 3px 3px 0 0; +} +.popover-content { + padding: 14px; + background-color: #ffffff; + -webkit-border-radius: 0 0 3px 3px; + -moz-border-radius: 0 0 3px 3px; + border-radius: 0 0 3px 3px; + -webkit-background-clip: padding-box; + -moz-background-clip: padding-box; + background-clip: padding-box; +} +.popover-content p, .popover-content ul, .popover-content ol { + margin-bottom: 0; +} + /* * erpnext/startup/startup.css - */h1, h2, h3, h4, h5 { - font-family: Tahoma, Arial, Verdana, sans-serif; + */ +h1, h2, h3, h4, h5 { + font-family: "Lato", Helvetica, "Helvetica Neue", sans-serif; font-weight: bold; } body { - font-family: 'Lucida Grande', 'Lucida Sans Unicode', Verdana, sans-serif; - font-size: 12px; + font-family: "Lato", Helvetica, "Helvetica Neue", sans-serif; + font-size: 13px; } span, div, td, input, textarea, button, select { @@ -2766,7 +3478,11 @@ span, div, td, input, textarea, button, select { } body { - background: url(../images/stripedbg.png) repeat; + background: url(../images/redbeech.jpg) repeat; +} + +.small { + font-size: 11.5px; } .erpnext-footer { @@ -2835,3 +3551,4 @@ body { min-width: 160px !important; max-width: 260px !important; } + diff --git a/css/all-web.css b/css/all-web.css index 36d9cda882..6a75d12c2a 100644 --- a/css/all-web.css +++ b/css/all-web.css @@ -1,7 +1,8 @@ /* * lib/css/legacy/body.css - */html { + */ +html { margin: 0px; padding: 0px; } @@ -10,7 +11,7 @@ body { margin: 0px; padding: 0px; font-family: Arial, Helvetica, Sans; - font-size: 12px; + font-size: 14px; color: #000; background-color: #e2e2e2; } @@ -25,19 +26,22 @@ label { } select, input, textarea { - border: 1px solid #AAA; + border: 1px solid #ccc; -moz-border-radius: 4px; -webkit-border-radius: 4px; - font-size: 13px; + font-size: inherit; padding: 4px; - color: #222; + color: #444; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); + -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); } textarea { font-family: inherit; height: 120px; width: 90%; - font-size: 12px; + font-size: inherit; white-space: normal; } @@ -100,8 +104,16 @@ div.fix_ff_cursor { overflow: auto; } div.comment { color: #444; } +.small { + font-size: 11px; +} + +.help { + margin: 3px 0px; + color: #888; +} + div#body_div { - position: relative; display: none; padding-right: 7px; width: 900px; @@ -109,15 +121,40 @@ div#body_div { margin-top: 56px; } -footer { +.content { width: 900px; - margin: auto; + margin-bottom: 30px; +} + +.background-fade-in { + -webkit-transition: background 1s ease-in; /* property duration timing-function delay */ + -moz-transition: background 1s ease-in; + -o-transition: background 1s ease-in; + transition: background 1s ease-in; +} + +footer { + position: absolute; + bottom: 0px; + width: 100%; } header .container { width: 900px; margin: auto; } +@media (max-width: 1200px) { + div#body_div, header .container, .content, #opened-page-selector, footer { + width: 900px; + } +} + +@media (min-width: 1200px) { + div#body_div, header .container, .content, #opened-page-selector, footer { + width: 1100px; + } +} + div.no_script { display: none; } @@ -131,7 +168,6 @@ div.loading_div { display: none; text-align: center; padding: 2px; - font-size: 12px; border: 1px solid #FF4; } @@ -156,27 +192,18 @@ div.std-footer-item { -moz-border-radius: 5px; border-radius: 5px; } -.gradient { - background: #ededed; /* Old browsers */ - background: -moz-linear-gradient(top, #ededed 0%, #d1d1d1 47%, #b7b7b7 100%); /* FF3.6+ */ - background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ededed), color-stop(47%,#d1d1d1), color-stop(100%,#b7b7b7)); /* Chrome,Safari4+ */ - background: -webkit-linear-gradient(top, #ededed 0%,#d1d1d1 47%,#b7b7b7 100%); /* Chrome10+,Safari5.1+ */ - background: -o-linear-gradient(top, #ededed 0%,#d1d1d1 47%,#b7b7b7 100%); /* Opera11.10+ */ - background: -ms-linear-gradient(top, #ededed 0%,#d1d1d1 47%,#b7b7b7 100%); /* IE10+ */ - filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ededed', endColorstr='#b7b7b7',GradientType=0 ); /* IE6-9 */ - background: linear-gradient(top, #ededed 0%,#d1d1d1 47%,#b7b7b7 100%); /* W3C */ -} .layout_wrapper, .layout-wrapper { - -moz-box-shadow: 1px 1px 8px #555; - -webkit-box-shadow: 1px 1px 8px #555; - box-shadow: 1px 1px 8px #555; + -moz-box-shadow: 0px 0px 6px rgba(0,0,0,0.3); + -webkit-box-shadow: 0px 0px 6px rgba(0,0,0,0.3); + box-shadow: 0px 0px 6px rgba(0,0,0,0.3); background-color: #fff; padding: 15px; + margin-bottom: 30px; } .layout-wrapper-background { - background-color: #f2f2f2 !important; + background-color: #fafafa !important; padding: 0px; } @@ -185,7 +212,7 @@ div.std-footer-item { float: left; padding: 15px; background-color: #FFF; - min-height: 450px; + min-height: 600px; -moz-box-shadow: 7px 0px 6px -2px #ddd; -webkit-box-shadow: 7px 0px 6px -2px #ddd; box-shadow: 7px 0px 6px -2px #ddd; @@ -194,10 +221,10 @@ div.std-footer-item { .layout-side-section { width: 22%; /*float: right;*/ - color: #606060; + color: #606060; overflow-x: hidden; padding: 15px; - min-height: 450px; + min-height: 600px; } /* from bootstrap */ @@ -232,17 +259,20 @@ div.std-footer-item { .avatar-small { display: inline-block; - min-width: 29px; + width: 24px; + height: 20px; + vertical-align: middle; + overflow: hidden; + margin: 0px 3px; } .avatar-small img { - height: 24px; - margin-bottom: -7px; - max-width: 24px; + width: 24px; } /* * lib/css/legacy/messages.css */ + /* FLOATING MESSAGE */ .btn-img { cursor: pointer; } @@ -291,9 +321,11 @@ div.notice { text-align: center; font-size: 14px; } + /* * lib/css/legacy/dialog.css - *//***** Dialogs *******/ + */ +/***** Dialogs *******/ div.dialog_wrapper { position: absolute; @@ -371,9 +403,11 @@ div.dialog_row table td textarea { font-size: 12px; } + /* * lib/css/bootstrap/headings.css - *//* heading from bootstrap */ + */ +/* heading from bootstrap */ h1, h2, @@ -434,9 +468,12 @@ h6 { color: #999999; text-transform: uppercase; } + /* * lib/css/bootstrap/buttons.css - */.close { + */ +.close { + font-family: Helvetica, Sans; float: right; font-size: 20px; font-weight: bold; @@ -819,9 +856,11 @@ button.btn.small, input[type="submit"].btn.small { .btn-small .caret { margin-top: 4px; } + /* * lib/css/bootstrap/navbar.css - */.nav { + */ +.nav { margin-left: 0; margin-bottom: 18px; list-style: none; @@ -1287,9 +1326,11 @@ button.btn.small, input[type="submit"].btn.small { padding: 0px 20px; } + /* * lib/css/bootstrap/dropdown.css - */.dropdown { + */ +.dropdown { position: relative; } .dropdown-toggle { @@ -1389,9 +1430,11 @@ button.btn.small, input[type="submit"].btn.small { .dropdown.open .dropdown-menu { display: block; } + /* * lib/css/bootstrap/tooltip.css - */.tooltip { + */ +.tooltip { position: absolute; z-index: 1020; display: block; @@ -1557,16 +1600,18 @@ button.btn.small, input[type="submit"].btn.small { .popover-content p, .popover-content ul, .popover-content ol { margin-bottom: 0; } + /* * erpnext/startup/startup.css - */h1, h2, h3, h4, h5 { - font-family: Tahoma, Arial, Verdana, sans-serif; + */ +h1, h2, h3, h4, h5 { + font-family: "Lato", Helvetica, "Helvetica Neue", sans-serif; font-weight: bold; } body { - font-family: 'Lucida Grande', 'Lucida Sans Unicode', Verdana, sans-serif; - font-size: 12px; + font-family: "Lato", Helvetica, "Helvetica Neue", sans-serif; + font-size: 13px; } span, div, td, input, textarea, button, select { @@ -1574,7 +1619,11 @@ span, div, td, input, textarea, button, select { } body { - background: url(../images/stripedbg.png) repeat; + background: url(../images/redbeech.jpg) repeat; +} + +.small { + font-size: 11.5px; } .erpnext-footer { @@ -1644,9 +1693,11 @@ body { max-width: 260px !important; } + /* * erpnext/website/css/website.css - */.layout_wrapper { + */ +.layout_wrapper { padding: 20px; } @@ -1757,4 +1808,4 @@ footer a:hover { .web-footer-menu ul li:last-child { border-right: 0px solid #777 !important; -} \ No newline at end of file +} diff --git a/css/style-app.css b/css/style-app.css deleted file mode 100644 index f5447cf80d..0000000000 --- a/css/style-app.css +++ /dev/null @@ -1,1850 +0,0 @@ - -/* - * lib/css/legacy/body.css - */html { - margin: 0px; - padding: 0px; -} - -body { - margin: 0px; - padding: 0px; - font-family: Arial, Helvetica, Sans; - font-size: 12px; - color: #000; -} - -/* heading from bootstrap */ - -h1, -h2, -h3, -h4, -h5, -h6 { - margin: 0; - font-weight: bold; - color: #333333; - text-rendering: optimizelegibility; - margin-bottom: 0.3em; -} -h1 small, -h2 small, -h3 small, -h4 small, -h5 small, -h6 small { - font-weight: normal; - color: #999999; -} -h1 { - font-size: 30px; - line-height: 36px; -} -h1 small { - font-size: 18px; -} -h2 { - font-size: 24px; - line-height: 36px; -} -h2 small { - font-size: 18px; -} -h3 { - line-height: 27px; - font-size: 18px; -} -h3 small { - font-size: 14px; -} -h4, h5, h6 { - line-height: 18px; -} -h4 { - font-size: 14px; -} -h4 small { - font-size: 12px; -} -h5 { - font-size: 12px; -} -h6 { - font-size: 11px; - color: #999999; - text-transform: uppercase; -} - -pre { margin: 0px; padding: 0px; } - -button { margin: 2px; margin-left: 0px; } - -label { - padding-top: 15px; - color: #404040; -} - -select, input, textarea { - border: 1px solid #AAA; - -moz-border-radius: 4px; - -webkit-border-radius: 4px; - font-size: 13px; - padding: 4px; - color: #222; -} - -textarea { - font-family: inherit; - height: 120px; - width: 90%; - font-size: 12px; - white-space: normal; -} - -table { padding: 0px; border-collapse: 'collapse'} - -td { - padding:0px; - margin: 0px; - vertical-align: top; -} - -p { - margin: 0px 0px 9px 0px; - line-height: 1.5em; -} - -li { - line-height: 1.5em; -} - -a:active { outline:none; } - -:focus { -moz-outline-style:none; } - -table.simpletable { border-collapse: collapse; margin-bottom: 10px;} -table.simpletable td {border: 1pt solid #000; vertical-align: top; padding: 2px; } - -div.fix_ff_cursor { overflow: auto; } - -/* --- Layout --- */ - -div.comment { color: #444; } - -div#body_div { - position: relative; - display: none; - margin-top: 56px; - padding-right: 7px; -} - -div.no_script { - display: none; -} - -div.loading_div { - position: absolute; - background-color: #FFFFCC; - z-index: 1999; - right: 5px; - width: 90px; - display: none; - text-align: center; - padding: 2px; - font-size: 12px; - border: 1px solid #FF4; -} - - -div#head_div { background-color: #FFF; } - -#head_banner { background-color: #FFF; } - -.link_type { - padding:2px; - color: #00b; - text-decoration: underline; - cursor: pointer; -} - -.link_type:hover { - color: #fff !important; - background-color: #07b; - text-decoration: none; -} - -div.std-footer { - margin: 13px 0px; - border-top: 1px solid #AAA; - padding: 13px; -} - -div.std-footer-item { - margin: 0px 13px 13px 0px; -} - -.shadow { - -moz-box-shadow: 0px 2px 2px #888; - -webkit-box-shadow: 0px 2px 2px #888; - box-shadow: 0px 2px 2px #888; -} - -.round { - -webkit-border-radius: 5px; - -moz-border-radius: 5px; - border-radius: 5px; -} -.gradient { - background: #ededed; /* Old browsers */ - background: -moz-linear-gradient(top, #ededed 0%, #d1d1d1 47%, #b7b7b7 100%); /* FF3.6+ */ - background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ededed), color-stop(47%,#d1d1d1), color-stop(100%,#b7b7b7)); /* Chrome,Safari4+ */ - background: -webkit-linear-gradient(top, #ededed 0%,#d1d1d1 47%,#b7b7b7 100%); /* Chrome10+,Safari5.1+ */ - background: -o-linear-gradient(top, #ededed 0%,#d1d1d1 47%,#b7b7b7 100%); /* Opera11.10+ */ - background: -ms-linear-gradient(top, #ededed 0%,#d1d1d1 47%,#b7b7b7 100%); /* IE10+ */ - filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ededed', endColorstr='#b7b7b7',GradientType=0 ); /* IE6-9 */ - background: linear-gradient(top, #ededed 0%,#d1d1d1 47%,#b7b7b7 100%); /* W3C */ -} - -.header-gradient { - background: #84827c; /* Old browsers */ - background: -moz-linear-gradient(top, #84827c 0%, #27211c 100%); /* FF3.6+ */ - background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#84827c), color-stop(100%,#27211c)); /* Chrome,Safari4+ */ - background: -webkit-linear-gradient(top, #84827c 0%,#27211c 100%); /* Chrome10+,Safari5.1+ */ - background: -o-linear-gradient(top, #84827c 0%,#27211c 100%); /* Opera11.10+ */ - background: -ms-linear-gradient(top, #84827c 0%,#27211c 100%); /* IE10+ */ - filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#84827c', endColorstr='#27211c',GradientType=0 ); /* IE6-9 */ - background: linear-gradient(top, #84827c 0%,#27211c 100%); /* W3C */ - color: #FFF; -} - -.layout_wrapper { - padding: 15px; - -moz-box-shadow: 1px 1px 6px #AAA; - -webkit-box-shadow: 1px 1px 6px #AAA; - box-shadow: 1px 1px 6px #AAA; - background-color: #FFF; -} - -/* from bootstrap */ -.container { - margin-left: auto; - margin-right: auto; - zoom: 1; -} -.container:before, .container:after { - display: table; - content: ""; - zoom: 1; -} -.container:after { - clear: both; -} - -/* - * lib/css/legacy/menus.css - */ -/******** Menus - menu.js ************/ - -ul.menu_toolbar { - z-index: 30; - padding: 0px; - margin: 0px; - margin-top: 1px; -} - -ul.menu_toolbar li { - list-style: none; - margin: 0px; - float: left; -} - -.top_menu { - margin: 0px; - padding: 4px; - cursor: pointer; - color: #FFF; - margin-right: 8px; -} - -.top_menu_mo { - background-color: #000; - - -moz-border-radius: 5px; - -webkit-border-radius: 5px; -} - -div.menu_toolbar_dropdown { - position: absolute; - margin-top: 4px; - margin-left: 8px; - width: 140px; - background-color: #FFF; - color: #000; - display: none; - border: 2px solid #333; - z-index: 31; - overflow-y: auto; - overflow-x: hidden; -} - -div.dd_item { - cursor: pointer; - padding: 4px; - background-color: #FFF; -} -div.dd_item_mo { background-color: #FE8; } -/* - * lib/css/legacy/messages.css - */ -/* FLOATING MESSAGE */ - -.btn-img { cursor: pointer; } - -div.fetching { color: #888; text-align:right; } - -div.notice { - postion: absolute; - background-color: #000; - -moz-border-radius: 5px; -webkit-border-radius: 5px; - opacity: 0.6; - right: 0; - top: 0; - margin-top: 8px; - z-index: -1; - padding: 8px; -} - -/** help **/ - -.info-box { - background-color: #F8F8F8; - border: 1px solid #CCCCCC; - border-radius: 3px 3px 3px 3px; - line-height: 1.6em; - overflow: auto; - padding: 6px 10px; - margin-bottom: 9px; -} - -.help_box, .help-box { - background-color:#FFC; - font-size: 13px; - color: #864; - padding: 7px; - margin: 11px 0px; - border: 1px solid #EEB; -} - -.help_box_big { - background-color:#FFC; - color: #864; - padding: 7px; - margin: 7px 0px; - border: 1px solid #EEB; - text-align: center; - font-size: 14px; -} -/* - * lib/css/legacy/forms.css - *//* FORMS */ - - -div.frm_print_wrapper { - background-color:#FFF; - border:1px solid #444; - padding: 40px; - - box-shadow:1px 1px 8px #229; - -moz-box-shadow: 1px 1px 8px #229; - -webkit-box-shadow: 1px 1px 8px #229; -} - -div.page_break { - margin: 24px 0px; - border-top: 1px dashed #888; -} - -div.grid_tbarlinks { - border-bottom: 0px; - background-color: #CCC; - padding: 4px 4px 2px 4px; - width: 180px; - float: right; - - -moz-border-radius-topleft: 5px; -moz-border-radius-topright: 5px; - -webkit-border-top-left-radius: 5px; -webkit-border-top-right-radius: 5px; -} - - -div.frm_tip_box { - margin: 0px; - padding: 8px; - background-color: #FFC; - display: none; - font-size: 11px; - border: 1px solid #FFB; -} - -div.frm_tip_box table { - border-collapse: collapse; - vertical-align: top; -} - -td.frm_tray_area { - width: 122px; -} - -div.dialog_frm { - position: relative; - margin: 10px; -} - - - -/*------------------*/ - -.top_cell { - height: 50px; -} - -div.attach_area { - padding: 8px; - margin: 8px; - background-color: #EEE; -} - -div.attach_area table { - width: 100%; -} - -.tablabel_normal { - margin: 0 4px 0 0; - padding: 3px 5px; - line-height: 1.3em; - display: inline; - cursor: pointer; -} - -.tablabel_selected { - margin: 0 4px 0 0; - padding: 3px 5px; - line-height: 1.3em; - font-weight: bold; - display: inline; - cursor: pointer; - color: #000; -} - -.scrollhead_wrapper { - position: absolute; - z-index: 1; - height: 30px; -} - -.treeimg { - cursor: pointer; - margin-right: 3px; -} - - -.sectionCell { - padding: 5px; - vertical-align: top; -} - -.code_area { - width: 80%; - margin: 8px; - padding: 4px; - background-color: #F8F8F8; - border: 1px solid #CCC; - overflow-x: auto; -} - -.code_text { - width: 100%; - height: 360px; - margin-top: 3px; - font-family: Courier, Fixed; - font-size: 12px; -} - -div.time_field select{ - display: inline; - margin: 2px; - width: 45px; -} - -/* Documents */ - -.frm_field_table { - width: 100%; - border-collapse: collapse; -} - -.datalabelcell { - padding: 2px 0px; - width: 160px; - vertical-align: top; -} -.datainputcell { padding: 2px 0px; } - - -.field_description, .help { - margin: 3px 0px 11px 0px; - color: #888; - font-style: italic; -} - -.field_description_top { - margin-bottom: 3px; -} - -.field_label { - font-size:11px; -} -.input_area input, select, textarea { - font-size: 14px; - padding: 2px; -} - -.input_area input { - width: 80%; - margin: 0px; -} -.input_area select { - width: 80%; -} -.input_area textarea { - width: 90%; -} - -.disp_area { - width: 80%; - padding: 2px 0px; - font-size: 12px; -} -.disp_area_no_val { - height: 14px; -} - -.no_img { - padding: 40px; - width: 100px; - height: 20px; - color: #888; - text-align: center; - border: 1px solid #AAA; -} - -.input-mandatory { - font-size: 14px !important; - font-weight: bold; -} - -.field-to-update { - background-color:#FEE; -} - -/* sidebar */ - -div.sidebar-comment-wrapper input { - width: 50%; -} -div.sidebar-comment-message { - margin-top: 8px; - font-size: 11px; - color: #777; -} - -div.sidebar-comment-text { - font-size: 12px; - font-weight: bold; - margin-top: 8px; - color: #444; -} -div.sidebar-comment-info { - font-size: 10px; - color: #777; -} -/* - * lib/css/legacy/grid.css - */ - -/* Grid */ - - -/* --- Simple --- */ -.grid_wrapper_simple { - width: 100%; - margin-bottom: 8px; - border: 1px solid #AA9; -} - -.grid_head_wrapper_simple { - padding: 0px; - border-bottom: 2px solid #AAA; -} - -.grid_head_wrapper_simple td { - border-right: 1px solid #AA9; -} - -.grid_head_wrapper_simple td div { - padding: 2px; -} - -.grid_tab_wrapper_simple { -} - -.grid_cell_simple { - padding: 2px; - background-color: #fff; - border-right: 1px solid #AA9; -} - - -/* --- Normal --- */ -.grid_wrapper { - position: relative; - overflow: auto; - border: 1px solid #AAA; - width: 100%; - margin-bottom: 8px; - background-color: #fff; -} - -.grid_tab_wrapper { - position: absolute; - top: 40px; - border-bottom: 1px solid #DDD; -} - -.grid_table, .grid_head_table { - table-layout: fixed; - border-collapse: collapse; - /*width: 100%;*/ -} - -.grid_cell { - border-right: 1px solid #ddd; - padding: 0px; - background-color: #fff; -} - -.grid_head_wrapper { - position: absolute; - z-index: 1; - height: 40px; - padding: 0px; - overflow: hidden; - /*background-color: #fff;*/ -} - -.grid_head_table td { - background-color: #EEE; - border-right: 1px solid #AAA; - border-bottom: 1px solid #AAA; - height: 40px; - padding: 0px; -} - -.grid_head_table td div { - color: #222; - font-weight: bold; - overflow: hidden; - padding: 2px 0px; - text-align: center; -} - -.grid_selector { - padding: 1px; - border-right: 1px solid #DDD; - width: 20px; - background-color: #fff; -} - -.grid_cell_div { - padding: 2px; - cursor: pointer; - overflow: hidden; - border: 2px solid #FFF; -} - -.grid_cell_div_selected { - border: 2px solid #88f; -} - -.grid_cell_div input, .grid_cell_div select, .grid_cell_div div input { - margin: 0px; - border: 0px; - width: 100%; - margin: 0px; - } - -.grid_cell_div textarea { - border: 3px solid #abf; - height:200px; - width: 300px; - z-index: 10; - position:absolute; -} - -.gridDivSelected option { border: 0px; } -/* - * lib/css/legacy/listing.css - *//* listing 2.0 */ - -div.listing-more { - margin: 7px 0px 17px 0px; - text-align: center; - display: none; -} - -div.listing-toolbar { - margin: 7px 0px; -} - -/* SRS */ - -table.srs_result_tab { - border: 2px solid #AAA; - border-collapse: collapse; -} - -/* firefox bug fix for disappering borders */ -table.srs_result_tab td, table.srs_result_tab tr, table.srs_result_tab tbody, table.srs_result_tab div { - position: static; -} - -table.srs_result_tab td { - padding: 3px 2px; - position: static; -} - -div.srs_body_area { -} - -div.srs_results_area { -} - -div.srs_filter_wrapper { - border: 1px solid #CCF; - - background-color: #EEF; - margin:0px 0px 8px 0px; - - -moz-border-radius: 5px; - -webkit-border-radius: 5px; - border-radius: 5px; -} - -div.srs_filter_area { - padding: 8px; -} - -div.srs_filter_area td { - vertical-align: middle; -} - - - - -/* - * lib/css/legacy/report.css - */ -/* Reports */ - -div.report_grid_area { - position: relative; - padding: 8px; -} - - -div.report_tab { - border: 1px solid #AAA; - position: relative; - overflow: auto; -} - -div.report_no_data { - padding: 8px; - background-color: #EEE; - border: 1px solid #DDD; - position: absolute; - margin-left: 40%; - margin-top: 50px; - display: none; -} - -div.report_htitle { - float: left; - padding: 2px; - font-size: 14px; - font-weight: bold; - margin-left: 4px; - color: #665; - /*font-weight: bold;*/ -} - -div.report_tbar { - /*background: url('../images/ui/blue-back.gif') repeat-x; */ - background-color: #EEF; - border: 1px solid #CCF; - border-bottom: 0px; - height: 28px; -} - -div.report_tbar table{ - width: 100%; -} -div.report_tbar table td { - -} -div.report_tbar table td div { - position: relative; -} -div.report_tbar button, div.report_tbar select, div.report_tbar img { - font-size: 11px; - margin: 0px; -} - -div.report_head_wrapper { - position: absolute; - height: 24px; - top: 0px; - z-index: 1; -} - -div.report_tab_wrapper { - position: absolute; - border-bottom: 1px solid #AAA; - border-top: 1px solid #AAA; -} - -div.report_tab_wrapper table, div.report_head_wrapper table { - table-layout: fixed; - border-collapse: collapse; - /*width: 100%;*/ -} - -div.report_tab_wrapper table td, div.report_head_wrapper table td { - border-left: 1px solid #AAA; - border-right: 1px solid #AAA; - border-bottom: 1px solid #AAA; - overflow: hidden; - padding: 0px; -} - -div.report_tab_wrapper table td div, div.report_head_wrapper table td div { - padding: 3px; - overflow: hidden; -} - -.report_head_cell { - background-color: #EEE; - border-bottom: 1px solid #AA9; - text-align: center; - font-weight: bold; -} -.report_head_cell div { - color:#222; - height: 18px; -} - - -/* FINDER */ - -div.finder_wrapper { -} - -div.finder_body_area { - margin: 16px; -} - -div.finder_body { - display: none; -} - -div.finder_advanced_area table { - width: 80%; -} - -div.finder_advanced_area textarea { - width: 80%; -} - -div.finder_filter_area { - position: relative; -} - -div.filter_head { - font-size: 14px; - margin-bottom: 2px; -} -div.filter_dt_head { - font-size: 14px; - font-weight: bold; - margin-bottom: 2px; -} -table.filter_tab { - width: 96%; - border-collapse: collapse; -} - -table.filter_tab td { - width: 50%; -} - -div.finder_picker_area { - -} -div.builder_field { - margin: 0px; -} -div.builder_dt_head { - font-size: 14px; - font-weight: bold; - margin-bottom: 2px; -} - -div.builder_field table { - width: 90%; - border-collapse: collapse; -} - -div.builder_label { - height: 20px; -} - -div.builder_head { - font-size: 16px; - font-weight: bold; - color: #AB6; -} - -table.builder_tab { - width: 96%; - border-collapse: collapse; -} - -table.builder_tab td { - width: 33%; - padding: 2px; -} -/* - * lib/css/legacy/calendar.css - *//**** CALENDAR ****/ - -.caldiv { - position:absolute; - visibility:hidden; - background-color:white; - width: 144px; - z-index: 301; /* always on top(?) */ -} - - - -div.cal_wrapper { } -div.cal_body { - margin: 16px; - background-color: #DDD; - position: relative; - border-radius: 5px; - -moz-border-radius: 5px; - -webkit-border-radius: 5px; -} - -div.cal_head { - margin: 16px; - margin-bottom: 0px; -} -div.cal_head div { - font-size: 18px; - color: #666; - padding-top: 8px; -} - -div.cal_view_body { - margin: 16px; -} - -div.cal_view_body_plain { - margin: 16px; -} - -div.cal_month_head { -} - -div.cal_month_body { - border-top: 1px solid #888; -} - -.cal_month_headtable { - /*table-layout:fixed;*/ - width: 100%; -} - -.cal_month_name { - width: 100%; - color: #888; - font-size: 14px; - font-weight: bold; - text-align: center; - padding: 4px; -} - -.cal_month_headtable tr td{ - font-size: 12px; - font-weight: bold; - text-align: center; - padding: 4px; -} - -table.cal_month_table { - border-collapse: collapse; - /*table-layout:fixed;*/ - height: 100%; - width: 100%; -} - -table.cal_month_table td { - width: 14.29%; - height: 20%; - /*overflow:hidden;*/ - padding:0px; -} - -div.cal_month_date { - width:100%; - height:25%; - font-size: 10px; - overflow:hidden; - /*background-color: #EEF;*/ -} - -div.cal_month_date_holiday { - /*background-color: #FFF;*/ -} - -div.cal_month_unit { - width:100%; - height:75%; - overflow:hidden; - cursor:pointer; - /*background-color:#FFF;*/ -} - -div.cal_vu_disabled { - background-color:#FFF; - cursor:default; -} - -table.cal_day_table { - border-collapse: collapse; - width: 100%; -} - -table.cal_day_table td { -} - -div.cal_day_body { - width: 100%; - height: 80%; - overflow-y: auto; - overflow-x: hidden; - border-top: 1px solid #AAA; -} - -div.cal_day_unit{ - width:100%; - cursor:pointer; -} - -table.cal_week_table { - border-collapse: collapse; - width: 100%; -} - -table.cal_week_table td { - width: 12.5%; -} - -div.cal_week_body { - width: 100%; - height: 80%; - overflow-y: auto; - overflow-x: hidden; - border-top: 1px solid #888; -} - -div.cal_week_unit{ - width: 100%; - cursor:pointer; -} - -div.cal_event { - width: 100%; - height: 12px; - overflow: hidden; - font-size: 11px; - color: #00B; - margin-bottom: 2px; - text-decoration: underline; -} - -div.cal_event_Public { - color: GREEN; -} - -div.cal_event_Private { - color: BLUE; -} - -div.cal_event_hover { - text-decoration: underline; -} - -/* - * lib/css/legacy/autosuggest.css - *//* -================================================ -autosuggest, inquisitor style -================================================ -*/ - -div.autosuggest -{ - position: absolute; - margin-top: 3px; - border: 1px solid #222; -} - -div.autosuggest ul -{ - list-style: none; - margin: 0px; - padding: 2px; - overflow: hidden; - background-color: #FFF; -} - -div.autosuggest ul li -{ - color: #444; - padding: 0; - margin: 0; - text-align: left; -} - -div.autosuggest ul li a -{ - color: #444; - display: block; - text-decoration: none; - position: relative; - padding: 0; - width: 100%; -} -div.autosuggest ul li a:hover -{ - -} -div.autosuggest ul li.as_highlight a:hover -{ - background-color: #45A; - color: #FFF; -} - -div.autosuggest ul li a span -{ - display: block; - padding: 3px 6px; - color: #444; - border-bottom:1px solid #DDD; -} - -div.autosuggest ul li a span small -{ - display: block; - font-weight: normal; - color: #444; -} - -div.autosuggest ul li.as_highlight a span small -{ - color: #FFF; -} - -div.autosuggest ul li.as_highlight a span { - color: #FFF; -} - -div.autosuggest ul li.as_highlight a -{ - color: #FFF; - background-color: #45A; - cursor: pointer; -} - -div.autosuggest ul li.as_warning -{ - font-weight: bold; - text-align: center; -} - -div.autosuggest ul em -{ - font-style: normal; - font-weight: bold; -} - -/* - * lib/css/legacy/dialog.css - *//***** Dialogs *******/ - -div.dialog_wrapper { - position: absolute; - width: 440px; - display: none; - z-index: 90; - background-color: #FFF; - border: 3px solid #222; - box-shadow:1px 1px 5px #777; - -moz-box-shadow: 1px 1px 5px #777; - -webkit-box-shadow: 1px 1px 5px #777; - - border-radius: 5px; - -moz-border-radius: 5px; - -webkit-border-radius: 5px; -} - -div.dialog_head { - height: 22px; - padding: 4px; - background-color: #222; - color: #FFF; -} - -div.dialog_body { - padding: 8px 4px 16px 4px; - border-radius: 5px; - -moz-border-radius: 5px; - -webkit-border-radius: 5px; -} - -div.dialog_back { - position: fixed; - display: none; - top: 0px; - left: 0px; - bottom: 0px; - right: 0px; - background-color: #EEE; - opacity: 0.6; - z-index: 50; - text-align: center; -} - -div.dialog_message { - display: none; - position: absolute; - width: 250px; - font-size: 12px; - z-index: 91; - background-color:#FFF; - padding: 12px; - border: 1px solid #444; -} - -div.dialog_row { - padding: 8px 8px 0px 8px; -} - -div.dialog_row table { - width: 100%; -} - -div.dialog_row table td { -} - -div.dialog_row input[type="text"], div.dialog_row input[type="password"], div.dialog_row textarea, div.dialog_row select { - width: 80%; - font-size: 14px; -} - -div.dialog_row table td textarea { - width: 80%; - height: 200px; - font-size: 12px; -} - -/* - * lib/css/legacy/tabs.css - */ -/******* TABS ********/ - -div.box_label_wrapper { - border-bottom: 6px solid #777; -} - -div.box_label_body { - height: 22px; -} - -ul.box_tabs { - margin: 0px; - padding: 0px; - list-style: none; -} - -ul.box_tabs li { - height: 22px; - float:left; - font-size: 12px; - text-decoration: underline; - - background-color: #DDD; - - margin:0; - margin-left: 4px; - padding:0 0 0 9px; - cursor: pointer; -} - -ul.box_tabs a { - display:block; - padding:3px 15px 3px 6px; - text-decoration:none; -} - -ul.box_tabs li.box_tab_mouseover { - background-color: #BBB; -} - - -ul.box_tabs li.box_tab_selected { -/* background:url("../images/ui/rc/tab-left-CCC.gif") no-repeat left top; - background-color: #ABABAB; */ - - background-color: #777; - - background: -webkit-gradient(linear, left top, left bottom, from(#999), to(#777)); - background: -moz-linear-gradient(top, #999, #777); - - color: #FFF; - font-weight:bold; - -} -ul.box_tabs li.box_tab_selected a { -/* background:url("../images/ui/rc/tab-right-CCC.gif") no-repeat right top; */ -} - -/* - * lib/css/legacy/bw-icons.css - */ -/** general icons **/ - -.wn-icon { background: url('lib/images/icons/icons.png'); width: 16px; height: 16px; cursor: pointer; } -.ic-2x2_grid { background-position: 0 0; } -.ic-3x3_grid { background-position: 0 -36px; } -.ic-3x3_grid_2 { background-position: 0 -72px; } -.ic-air_signal { background-position: 0 -108px; } -.ic-align_center { background-position: 0 -144px; } -.ic-align_just { background-position: 0 -180px; } -.ic-align_left { background-position: 0 -216px; } -.ic-align_right { background-position: 0 -252px; } -.ic-app_window { background-position: 0 -288px; } -.ic-arrow_bottom { background-position: 0 -324px; } -.ic-arrow_bottom_left { background-position: 0 -360px; } -.ic-arrow_bottom_right { background-position: 0 -396px; } -.ic-arrow_l { background-position: 0 -432px; } -.ic-arrow_left { background-position: 0 -468px; } -.ic-arrow_r { background-position: 0 -504px; } -.ic-arrow_right { background-position: 0 -540px; } -.ic-arrow_top { background-position: 0 -576px; } -.ic-arrow_top_left { background-position: 0 -612px; } -.ic-arrow_top_right { background-position: 0 -648px; } -.ic-arrow_two_head { background-position: 0 -684px; } -.ic-arrow_two_head_2 { background-position: 0 -720px; } -.ic-attention { background-position: 0 -756px; } -.ic-battery { background-position: 0 -792px; } -.ic-bell { background-position: 0 -828px; } -.ic-book { background-position: 0 -864px; } -.ic-bookmark_1 { background-position: 0 -900px; } -.ic-bookmark_2 { background-position: 0 -936px; } -.ic-box { background-position: 0 -972px; } -.ic-br_down { background-position: 0 -1008px; } -.ic-br_next { background-position: 0 -1044px; } -.ic-br_prev { background-position: 0 -1080px; } -.ic-br_up { background-position: 0 -1116px; } -.ic-brackets { background-position: 0 -1152px; } -.ic-browser { background-position: 0 -1188px; } -.ic-brush { background-position: 0 -1224px; } -.ic-bug { background-position: 0 -1260px; } -.ic-burst { background-position: 0 -1296px; } -.ic-calc { background-position: 0 -1332px; } -.ic-calendar_1 { background-position: 0 -1368px; } -.ic-calendar_2 { background-position: 0 -1404px; } -.ic-cancel { background-position: 0 -1440px; } -.ic-case { background-position: 0 -1476px; } -.ic-cc { background-position: 0 -1512px; } -.ic-cert { background-position: 0 -1548px; } -.ic-chart_bar { background-position: 0 -1584px; } -.ic-chart_line { background-position: 0 -1620px; } -.ic-chart_line_2 { background-position: 0 -1656px; } -.ic-chart_pie { background-position: 0 -1692px; } -.ic-checkbox_checked { background-position: 0 -1728px; } -.ic-checkbox_unchecked { background-position: 0 -1764px; } -.ic-checkmark { background-position: 0 -1800px; } -.ic-clip { background-position: 0 -1836px; } -.ic-clipboard_copy { background-position: 0 -1872px; } -.ic-clipboard_cut { background-position: 0 -1908px; } -.ic-clipboard_past { background-position: 0 -1944px; } -.ic-clock { background-position: -36px 0; } -.ic-cloud { background-position: -36px -36px; } -.ic-cloud_rain { background-position: -36px -72px; } -.ic-cog { background-position: -36px -108px; } -.ic-comp { background-position: -36px -144px; } -.ic-compass { background-position: -36px -180px; } -.ic-contact_card { background-position: -36px -216px; } -.ic-cube { background-position: -36px -252px; } -.ic-cur_bp { background-position: -36px -288px; } -.ic-cur_dollar { background-position: -36px -324px; } -.ic-cur_euro { background-position: -36px -360px; } -.ic-cur_yen { background-position: -36px -396px; } -.ic-cursor_H_split { background-position: -36px -432px; } -.ic-cursor_V_split { background-position: -36px -468px; } -.ic-cursor_arrow { background-position: -36px -504px; } -.ic-cursor_drag_arrow { background-position: -36px -540px; } -.ic-cursor_drag_arrow_2 { background-position: -36px -576px; } -.ic-cursor_drag_hand { background-position: -36px -612px; } -.ic-cursor_hand { background-position: -36px -648px; } -.ic-db { background-position: -36px -684px; } -.ic-delete { background-position: -36px -720px; } -.ic-doc_delete { background-position: -36px -756px; } -.ic-doc_edit { background-position: -36px -792px; } -.ic-doc_empty { background-position: -36px -828px; } -.ic-doc_export { background-position: -36px -864px; } -.ic-doc_import { background-position: -36px -900px; } -.ic-doc_lines { background-position: -36px -936px; } -.ic-doc_lines_stright { background-position: -36px -972px; } -.ic-doc_minus { background-position: -36px -1008px; } -.ic-doc_new { background-position: -36px -1044px; } -.ic-doc_plus { background-position: -36px -1080px; } -.ic-document { background-position: -36px -1116px; } -.ic-download { background-position: -36px -1152px; } -.ic-emotion_sad { background-position: -36px -1188px; } -.ic-emotion_smile { background-position: -36px -1224px; } -.ic-expand { background-position: -36px -1260px; } -.ic-eye { background-position: -36px -1296px; } -.ic-eye_inv { background-position: -36px -1332px; } -.ic-facebook { background-position: -36px -1368px; } -.ic-filter { background-position: -36px -1404px; } -.ic-fire { background-position: -36px -1440px; } -.ic-flag { background-position: -36px -1476px; } -.ic-folder { background-position: -36px -1512px; } -.ic-folder_arrow { background-position: -36px -1548px; } -.ic-folder_delete { background-position: -36px -1584px; } -.ic-folder_minus { background-position: -36px -1620px; } -.ic-folder_open { background-position: -36px -1656px; } -.ic-folder_plus { background-position: -36px -1692px; } -.ic-font_bold { background-position: -36px -1728px; } -.ic-font_italic { background-position: -36px -1764px; } -.ic-font_size { background-position: -36px -1800px; } -.ic-font_strokethrough { background-position: -36px -1836px; } -.ic-font_underline { background-position: -36px -1872px; } -.ic-game_pad { background-position: -36px -1908px; } -.ic-globe_1 { background-position: -36px -1944px; } -.ic-globe_2 { background-position: -72px 0; } -.ic-globe_3 { background-position: -72px -36px; } -.ic-google { background-position: -72px -72px; } -.ic-hand_1 { background-position: -72px -108px; } -.ic-hand_2 { background-position: -72px -144px; } -.ic-hand_contra { background-position: -72px -180px; } -.ic-hand_pro { background-position: -72px -216px; } -.ic-headphones { background-position: -72px -252px; } -.ic-heart { background-position: -72px -288px; } -.ic-heart_empty { background-position: -72px -324px; } -.ic-home { background-position: -72px -360px; } -.ic-image_text { background-position: -72px -396px; } -.ic-inbox { background-position: -72px -432px; } -.ic-indent_decrease { background-position: -72px -468px; } -.ic-indent_increase { background-position: -72px -504px; } -.ic-info { background-position: -72px -540px; } -.ic-iphone { background-position: -72px -576px; } -.ic-key { background-position: -72px -612px; } -.ic-layers_1 { background-position: -72px -648px; } -.ic-layers_2 { background-position: -72px -684px; } -.ic-lightbulb { background-position: -72px -720px; } -.ic-lighting { background-position: -72px -756px; } -.ic-link { background-position: -72px -792px; } -.ic-list_bullets { background-position: -72px -828px; } -.ic-list_num { background-position: -72px -864px; } -.ic-magic_wand { background-position: -72px -900px; } -.ic-mail { background-position: -72px -936px; } -.ic-mail_2 { background-position: -72px -972px; } -.ic-mic { background-position: -72px -1008px; } -.ic-monitor { background-position: -72px -1044px; } -.ic-movie { background-position: -72px -1080px; } -.ic-music { background-position: -72px -1116px; } -.ic-net_comp { background-position: -72px -1152px; } -.ic-network { background-position: -72px -1188px; } -.ic-notepad { background-position: -72px -1224px; } -.ic-notepad_2 { background-position: -72px -1260px; } -.ic-on-off { background-position: -72px -1296px; } -.ic-openid { background-position: -72px -1332px; } -.ic-padlock_closed { background-position: -72px -1368px; } -.ic-padlock_open { background-position: -72px -1404px; } -.ic-page_layout { background-position: -72px -1440px; } -.ic-paragraph { background-position: -72px -1476px; } -.ic-pencil { background-position: -72px -1512px; } -.ic-phone { background-position: -72px -1548px; } -.ic-phone_1 { background-position: -72px -1584px; } -.ic-phone_2 { background-position: -72px -1620px; } -.ic-phone_touch { background-position: -72px -1656px; } -.ic-photo { background-position: -72px -1692px; } -.ic-picture { background-position: -72px -1728px; } -.ic-pin { background-position: -72px -1764px; } -.ic-pin_2 { background-position: -72px -1800px; } -.ic-pin_map { background-position: -72px -1836px; } -.ic-pin_map_down { background-position: -72px -1872px; } -.ic-pin_map_left { background-position: -72px -1908px; } -.ic-pin_map_right { background-position: -72px -1944px; } -.ic-pin_map_top { background-position: -108px 0; } -.ic-pin_sq_down { background-position: -108px -36px; } -.ic-pin_sq_left { background-position: -108px -72px; } -.ic-pin_sq_right { background-position: -108px -108px; } -.ic-pin_sq_top { background-position: -108px -144px; } -.ic-playback_ff { background-position: -108px -180px; } -.ic-playback_next { background-position: -108px -216px; } -.ic-playback_pause { background-position: -108px -252px; } -.ic-playback_play { background-position: -108px -288px; } -.ic-playback_prev { background-position: -108px -324px; } -.ic-playback_rec { background-position: -108px -360px; } -.ic-playback_reload { background-position: -108px -396px; } -.ic-playback_rew { background-position: -108px -432px; } -.ic-playback_stop { background-position: -108px -468px; } -.ic-preso { background-position: -108px -504px; } -.ic-print { background-position: -108px -540px; } -.ic-question { background-position: -108px -576px; } -.ic-redo { background-position: -108px -612px; } -.ic-rnd_br_down { background-position: -108px -648px; } -.ic-rnd_br_first { background-position: -108px -684px; } -.ic-rnd_br_last { background-position: -108px -720px; } -.ic-rnd_br_next { background-position: -108px -756px; } -.ic-rnd_br_prev { background-position: -108px -792px; } -.ic-rnd_br_up { background-position: -108px -828px; } -.ic-round { background-position: -108px -864px; } -.ic-round_and_up { background-position: -108px -900px; } -.ic-round_arrow_left { background-position: -108px -936px; } -.ic-round_arrow_right { background-position: -108px -972px; } -.ic-round_checkmark { background-position: -108px -1008px; } -.ic-round_delete { background-position: -108px -1044px; } -.ic-round_minus { background-position: -108px -1080px; } -.ic-round_plus { background-position: -108px -1116px; } -.ic-rss { background-position: -108px -1152px; } -.ic-rss_sq { background-position: -108px -1188px; } -.ic-sand { background-position: -108px -1224px; } -.ic-sat_dish { background-position: -108px -1260px; } -.ic-save { background-position: -108px -1296px; } -.ic-server { background-position: -108px -1332px; } -.ic-share { background-position: -108px -1368px; } -.ic-shop_cart { background-position: -108px -1404px; } -.ic-sound_high { background-position: -108px -1440px; } -.ic-sound_low { background-position: -108px -1476px; } -.ic-sound_mute { background-position: -108px -1512px; } -.ic-spechbubble { background-position: -108px -1548px; } -.ic-spechbubble_2 { background-position: -108px -1584px; } -.ic-spechbubble_sq { background-position: -108px -1620px; } -.ic-spechbubble_sq_line { background-position: -108px -1656px; } -.ic-sq_br_down { background-position: -108px -1692px; } -.ic-sq_br_first { background-position: -108px -1728px; } -.ic-sq_br_last { background-position: -108px -1764px; } -.ic-sq_br_next { background-position: -108px -1800px; } -.ic-sq_br_prev { background-position: -108px -1836px; } -.ic-sq_br_up { background-position: -108px -1872px; } -.ic-sq_down { background-position: -108px -1908px; } -.ic-sq_minus { background-position: -108px -1944px; } -.ic-sq_next { background-position: -144px 0; } -.ic-sq_plus { background-position: -144px -36px; } -.ic-sq_prev { background-position: -144px -72px; } -.ic-sq_up { background-position: -144px -108px; } -.ic-square_shape { background-position: -144px -144px; } -.ic-star { background-position: -144px -180px; } -.ic-star_fav { background-position: -144px -216px; } -.ic-star_fav_empty { background-position: -144px -252px; } -.ic-sun { background-position: -144px -288px; } -.ic-tag { background-position: -144px -324px; } -.ic-tape { background-position: -144px -360px; } -.ic-target { background-position: -144px -396px; } -.ic-text_curstor { background-position: -144px -432px; } -.ic-text_letter_t { background-position: -144px -468px; } -.ic-top_right_expand { background-position: -144px -504px; } -.ic-trash { background-position: -144px -540px; } -.ic-twitter { background-position: -144px -576px; } -.ic-twitter_2 { background-position: -144px -612px; } -.ic-undo { background-position: -144px -648px; } -.ic-user { background-position: -144px -684px; } -.ic-users { background-position: -144px -720px; } -.ic-wrench { background-position: -144px -756px; } -.ic-wrench_plus { background-position: -144px -792px; } -.ic-wrench_plus_2 { background-position: -144px -828px; } -.ic-zoom { background-position: -144px -864px; } - - -/* - * lib/css/legacy/sidebar.css - */div.psidebar-wrapper { - margin: 0px 8px; -} - -div.psidebar-head { - font-size: 14px; - font-weight: bold; - color: #555; - margin-bottom: 12px; -} - -div.psidebar-section { - background-color: #fff; - border: 1px solid #b2b2b7; - margin-bottom: 11px; - overflow: hidden; -} - -div.psidebar-section-head { - font-size: 12px; - padding: 5px 11px; - background: #eeeeee; /* Old browsers */ - background: -moz-linear-gradient(top, #eeeeee 0%, #cccccc 100%); /* FF3.6+ */ - background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#eeeeee), color-stop(100%,#cccccc)); /* Chrome,Safari4+ */ - background: -webkit-linear-gradient(top, #eeeeee 0%,#cccccc 100%); /* Chrome10+,Safari5.1+ */ - background: -o-linear-gradient(top, #eeeeee 0%,#cccccc 100%); /* Opera 11.10+ */ - background: -ms-linear-gradient(top, #eeeeee 0%,#cccccc 100%); /* IE10+ */ - background: linear-gradient(top, #eeeeee 0%,#cccccc 100%); /* W3C */ - filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#eeeeee', endColorstr='#cccccc',GradientType=0 ); /* IE6-9 */ -} - -div.psidebar-section-body { - margin: 7px 11px 11px 11px; -} - -div.psidebar-section-item { - margin-bottom: 7px; -} - -.psidebar-section-link { - font-size: 11px; - color: #666; -} - -div.follower-list { - color: #666; - margin-top: 7px; - font-size: 11px; -} -/* - * lib/css/legacy/bootstrap-buttons.css - */.btn.danger, -.alert-message.danger, -.btn.danger:hover, -.alert-message.danger:hover, -.btn.error, -.alert-message.error, -.btn.error:hover, -.alert-message.error:hover, -.btn.success, -.alert-message.success, -.btn.success:hover, -.alert-message.success:hover, -.btn.info, -.alert-message.info, -.btn.info:hover, -.alert-message.info:hover { - color: #ffffff; -} -.btn .close, .alert-message .close { - font-family: Arial, sans-serif; - line-height: 18px; -} -.btn.danger, -.alert-message.danger, -.btn.error, -.alert-message.error { - background-color: #c43c35; - background-repeat: repeat-x; - background-image: -khtml-gradient(linear, left top, left bottom, from(#ee5f5b), to(#c43c35)); - background-image: -moz-linear-gradient(top, #ee5f5b, #c43c35); - background-image: -ms-linear-gradient(top, #ee5f5b, #c43c35); - background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #ee5f5b), color-stop(100%, #c43c35)); - background-image: -webkit-linear-gradient(top, #ee5f5b, #c43c35); - background-image: -o-linear-gradient(top, #ee5f5b, #c43c35); - background-image: linear-gradient(top, #ee5f5b, #c43c35); - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ee5f5b', endColorstr='#c43c35', GradientType=0); - text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); - border-color: #c43c35 #c43c35 #882a25; - border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); -} -.btn.success, .alert-message.success { - background-color: #57a957; - background-repeat: repeat-x; - background-image: -khtml-gradient(linear, left top, left bottom, from(#62c462), to(#57a957)); - background-image: -moz-linear-gradient(top, #62c462, #57a957); - background-image: -ms-linear-gradient(top, #62c462, #57a957); - background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #62c462), color-stop(100%, #57a957)); - background-image: -webkit-linear-gradient(top, #62c462, #57a957); - background-image: -o-linear-gradient(top, #62c462, #57a957); - background-image: linear-gradient(top, #62c462, #57a957); - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#62c462', endColorstr='#57a957', GradientType=0); - text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); - border-color: #57a957 #57a957 #3d773d; - border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); -} -.btn.info, .alert-message.info { - background-color: #339bb9; - background-repeat: repeat-x; - background-image: -khtml-gradient(linear, left top, left bottom, from(#5bc0de), to(#339bb9)); - background-image: -moz-linear-gradient(top, #5bc0de, #339bb9); - background-image: -ms-linear-gradient(top, #5bc0de, #339bb9); - background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #5bc0de), color-stop(100%, #339bb9)); - background-image: -webkit-linear-gradient(top, #5bc0de, #339bb9); - background-image: -o-linear-gradient(top, #5bc0de, #339bb9); - background-image: linear-gradient(top, #5bc0de, #339bb9); - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#5bc0de', endColorstr='#339bb9', GradientType=0); - text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); - border-color: #339bb9 #339bb9 #22697d; - border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); -} -.btn { - cursor: pointer; - display: inline-block; - background-color: #e6e6e6; - background-repeat: no-repeat; - background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#ffffff), color-stop(25%, #ffffff), to(#e6e6e6)); - background-image: -webkit-linear-gradient(#ffffff, #ffffff 25%, #e6e6e6); - background-image: -moz-linear-gradient(top, #ffffff, #ffffff 25%, #e6e6e6); - background-image: -ms-linear-gradient(#ffffff, #ffffff 25%, #e6e6e6); - background-image: -o-linear-gradient(#ffffff, #ffffff 25%, #e6e6e6); - background-image: linear-gradient(#ffffff, #ffffff 25%, #e6e6e6); - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#e6e6e6', GradientType=0); - padding: 5px 14px 6px; - text-shadow: 0 1px 1px rgba(255, 255, 255, 0.75); - color: #333; - font-size: 11px; - line-height: normal; - border: 1px solid #ccc; - border-bottom-color: #bbb; - -webkit-border-radius: 4px; - -moz-border-radius: 4px; - border-radius: 4px; - -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05); - -moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05); - box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05); - -webkit-transition: 0.1s linear all; - -moz-transition: 0.1s linear all; - -ms-transition: 0.1s linear all; - -o-transition: 0.1s linear all; - transition: 0.1s linear all; -} -.btn:hover { - background-position: 0 -15px; - color: #333; - text-decoration: none; -} -.btn:focus { - outline: 1px dotted #666; -} -.btn.primary { - color: #ffffff; - background-color: #0064cd; - background-repeat: repeat-x; - background-image: -khtml-gradient(linear, left top, left bottom, from(#049cdb), to(#0064cd)); - background-image: -moz-linear-gradient(top, #049cdb, #0064cd); - background-image: -ms-linear-gradient(top, #049cdb, #0064cd); - background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #049cdb), color-stop(100%, #0064cd)); - background-image: -webkit-linear-gradient(top, #049cdb, #0064cd); - background-image: -o-linear-gradient(top, #049cdb, #0064cd); - background-image: linear-gradient(top, #049cdb, #0064cd); - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#049cdb', endColorstr='#0064cd', GradientType=0); - text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); - border-color: #0064cd #0064cd #003f81; - border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); -} -.btn.active, .btn :active { - -webkit-box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.25), 0 1px 2px rgba(0, 0, 0, 0.05); - -moz-box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.25), 0 1px 2px rgba(0, 0, 0, 0.05); - box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.25), 0 1px 2px rgba(0, 0, 0, 0.05); -} -.btn.disabled { - cursor: default; - background-image: none; - filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); - filter: alpha(opacity=65); - -khtml-opacity: 0.65; - -moz-opacity: 0.65; - opacity: 0.65; - -webkit-box-shadow: none; - -moz-box-shadow: none; - box-shadow: none; -} -.btn[disabled] { - cursor: default; - background-image: none; - filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); - filter: alpha(opacity=65); - -khtml-opacity: 0.65; - -moz-opacity: 0.65; - opacity: 0.65; - -webkit-box-shadow: none; - -moz-box-shadow: none; - box-shadow: none; -} -.btn.large { - font-size: 15px; - line-height: normal; - padding: 9px 14px 9px; - -webkit-border-radius: 6px; - -moz-border-radius: 6px; - border-radius: 6px; -} -.btn.small { - padding: 5px 7px 5px; - font-size: 11px; -} -:root .alert-message, :root .btn { - border-radius: 0 \0; -} -button.btn::-moz-focus-inner, input[type=submit].btn::-moz-focus-inner { - padding: 0; - border: 0; -} - -/* CLose */ - -.close { - float: right; - color: #000000; - font-size: 15px; - font-weight: bold; - line-height: 13.5px; - margin-bottom: -2px; - text-shadow: 0 1px 0 #ffffff; - filter: alpha(opacity=25); - -khtml-opacity: 0.25; - -moz-opacity: 0.25; - opacity: 0.25; - text-decoration: none; -} -.close:hover { - color: #000000; - text-decoration: none; - filter: alpha(opacity=40); - -khtml-opacity: 0.4; - -moz-opacity: 0.4; - opacity: 0.4; - cursor: pointer; - font-weight: bold; -} \ No newline at end of file diff --git a/css/style-web.css b/css/style-web.css deleted file mode 100644 index a80fa2d31d..0000000000 --- a/css/style-web.css +++ /dev/null @@ -1,629 +0,0 @@ - -/* - * lib/css/legacy/body.css - */html { - margin: 0px; - padding: 0px; -} - -body { - margin: 0px; - padding: 0px; - font-family: Arial, Helvetica, Sans; - font-size: 12px; - color: #000; -} - -/* heading from bootstrap */ - -h1, -h2, -h3, -h4, -h5, -h6 { - margin: 0; - font-weight: bold; - color: #333333; - text-rendering: optimizelegibility; - margin-bottom: 0.3em; -} -h1 small, -h2 small, -h3 small, -h4 small, -h5 small, -h6 small { - font-weight: normal; - color: #999999; -} -h1 { - font-size: 30px; - line-height: 36px; -} -h1 small { - font-size: 18px; -} -h2 { - font-size: 24px; - line-height: 36px; -} -h2 small { - font-size: 18px; -} -h3 { - line-height: 27px; - font-size: 18px; -} -h3 small { - font-size: 14px; -} -h4, h5, h6 { - line-height: 18px; -} -h4 { - font-size: 14px; -} -h4 small { - font-size: 12px; -} -h5 { - font-size: 12px; -} -h6 { - font-size: 11px; - color: #999999; - text-transform: uppercase; -} - -pre { margin: 0px; padding: 0px; } - -button { margin: 2px; margin-left: 0px; } - -label { - padding-top: 15px; - color: #404040; -} - -select, input, textarea { - border: 1px solid #AAA; - -moz-border-radius: 4px; - -webkit-border-radius: 4px; - font-size: 13px; - padding: 4px; - color: #222; -} - -textarea { - font-family: inherit; - height: 120px; - width: 90%; - font-size: 12px; - white-space: normal; -} - -table { padding: 0px; border-collapse: 'collapse'} - -td { - padding:0px; - margin: 0px; - vertical-align: top; -} - -p { - margin: 0px 0px 9px 0px; - line-height: 1.5em; -} - -li { - line-height: 1.5em; -} - -a:active { outline:none; } - -:focus { -moz-outline-style:none; } - -table.simpletable { border-collapse: collapse; margin-bottom: 10px;} -table.simpletable td {border: 1pt solid #000; vertical-align: top; padding: 2px; } - -div.fix_ff_cursor { overflow: auto; } - -/* --- Layout --- */ - -div.comment { color: #444; } - -div#body_div { - position: relative; - display: none; - margin-top: 56px; - padding-right: 7px; -} - -div.no_script { - display: none; -} - -div.loading_div { - position: absolute; - background-color: #FFFFCC; - z-index: 1999; - right: 5px; - width: 90px; - display: none; - text-align: center; - padding: 2px; - font-size: 12px; - border: 1px solid #FF4; -} - - -div#head_div { background-color: #FFF; } - -#head_banner { background-color: #FFF; } - -.link_type { - padding:2px; - color: #00b; - text-decoration: underline; - cursor: pointer; -} - -.link_type:hover { - color: #fff !important; - background-color: #07b; - text-decoration: none; -} - -div.std-footer { - margin: 13px 0px; - border-top: 1px solid #AAA; - padding: 13px; -} - -div.std-footer-item { - margin: 0px 13px 13px 0px; -} - -.shadow { - -moz-box-shadow: 0px 2px 2px #888; - -webkit-box-shadow: 0px 2px 2px #888; - box-shadow: 0px 2px 2px #888; -} - -.round { - -webkit-border-radius: 5px; - -moz-border-radius: 5px; - border-radius: 5px; -} -.gradient { - background: #ededed; /* Old browsers */ - background: -moz-linear-gradient(top, #ededed 0%, #d1d1d1 47%, #b7b7b7 100%); /* FF3.6+ */ - background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ededed), color-stop(47%,#d1d1d1), color-stop(100%,#b7b7b7)); /* Chrome,Safari4+ */ - background: -webkit-linear-gradient(top, #ededed 0%,#d1d1d1 47%,#b7b7b7 100%); /* Chrome10+,Safari5.1+ */ - background: -o-linear-gradient(top, #ededed 0%,#d1d1d1 47%,#b7b7b7 100%); /* Opera11.10+ */ - background: -ms-linear-gradient(top, #ededed 0%,#d1d1d1 47%,#b7b7b7 100%); /* IE10+ */ - filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ededed', endColorstr='#b7b7b7',GradientType=0 ); /* IE6-9 */ - background: linear-gradient(top, #ededed 0%,#d1d1d1 47%,#b7b7b7 100%); /* W3C */ -} - -.header-gradient { - background: #84827c; /* Old browsers */ - background: -moz-linear-gradient(top, #84827c 0%, #27211c 100%); /* FF3.6+ */ - background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#84827c), color-stop(100%,#27211c)); /* Chrome,Safari4+ */ - background: -webkit-linear-gradient(top, #84827c 0%,#27211c 100%); /* Chrome10+,Safari5.1+ */ - background: -o-linear-gradient(top, #84827c 0%,#27211c 100%); /* Opera11.10+ */ - background: -ms-linear-gradient(top, #84827c 0%,#27211c 100%); /* IE10+ */ - filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#84827c', endColorstr='#27211c',GradientType=0 ); /* IE6-9 */ - background: linear-gradient(top, #84827c 0%,#27211c 100%); /* W3C */ - color: #FFF; -} - -.layout_wrapper { - padding: 15px; - -moz-box-shadow: 1px 1px 6px #AAA; - -webkit-box-shadow: 1px 1px 6px #AAA; - box-shadow: 1px 1px 6px #AAA; - background-color: #FFF; -} - -/* from bootstrap */ -.container { - margin-left: auto; - margin-right: auto; - zoom: 1; -} -.container:before, .container:after { - display: table; - content: ""; - zoom: 1; -} -.container:after { - clear: both; -} - -/* - * lib/css/legacy/menus.css - */ -/******** Menus - menu.js ************/ - -ul.menu_toolbar { - z-index: 30; - padding: 0px; - margin: 0px; - margin-top: 1px; -} - -ul.menu_toolbar li { - list-style: none; - margin: 0px; - float: left; -} - -.top_menu { - margin: 0px; - padding: 4px; - cursor: pointer; - color: #FFF; - margin-right: 8px; -} - -.top_menu_mo { - background-color: #000; - - -moz-border-radius: 5px; - -webkit-border-radius: 5px; -} - -div.menu_toolbar_dropdown { - position: absolute; - margin-top: 4px; - margin-left: 8px; - width: 140px; - background-color: #FFF; - color: #000; - display: none; - border: 2px solid #333; - z-index: 31; - overflow-y: auto; - overflow-x: hidden; -} - -div.dd_item { - cursor: pointer; - padding: 4px; - background-color: #FFF; -} -div.dd_item_mo { background-color: #FE8; } -/* - * lib/css/legacy/messages.css - */ -/* FLOATING MESSAGE */ - -.btn-img { cursor: pointer; } - -div.fetching { color: #888; text-align:right; } - -div.notice { - postion: absolute; - background-color: #000; - -moz-border-radius: 5px; -webkit-border-radius: 5px; - opacity: 0.6; - right: 0; - top: 0; - margin-top: 8px; - z-index: -1; - padding: 8px; -} - -/** help **/ - -.info-box { - background-color: #F8F8F8; - border: 1px solid #CCCCCC; - border-radius: 3px 3px 3px 3px; - line-height: 1.6em; - overflow: auto; - padding: 6px 10px; - margin-bottom: 9px; -} - -.help_box, .help-box { - background-color:#FFC; - font-size: 13px; - color: #864; - padding: 7px; - margin: 11px 0px; - border: 1px solid #EEB; -} - -.help_box_big { - background-color:#FFC; - color: #864; - padding: 7px; - margin: 7px 0px; - border: 1px solid #EEB; - text-align: center; - font-size: 14px; -} -/* - * lib/css/legacy/dialog.css - *//***** Dialogs *******/ - -div.dialog_wrapper { - position: absolute; - width: 440px; - display: none; - z-index: 90; - background-color: #FFF; - border: 3px solid #222; - box-shadow:1px 1px 5px #777; - -moz-box-shadow: 1px 1px 5px #777; - -webkit-box-shadow: 1px 1px 5px #777; - - border-radius: 5px; - -moz-border-radius: 5px; - -webkit-border-radius: 5px; -} - -div.dialog_head { - height: 22px; - padding: 4px; - background-color: #222; - color: #FFF; -} - -div.dialog_body { - padding: 8px 4px 16px 4px; - border-radius: 5px; - -moz-border-radius: 5px; - -webkit-border-radius: 5px; -} - -div.dialog_back { - position: fixed; - display: none; - top: 0px; - left: 0px; - bottom: 0px; - right: 0px; - background-color: #EEE; - opacity: 0.6; - z-index: 50; - text-align: center; -} - -div.dialog_message { - display: none; - position: absolute; - width: 250px; - font-size: 12px; - z-index: 91; - background-color:#FFF; - padding: 12px; - border: 1px solid #444; -} - -div.dialog_row { - padding: 8px 8px 0px 8px; -} - -div.dialog_row table { - width: 100%; -} - -div.dialog_row table td { -} - -div.dialog_row input[type="text"], div.dialog_row input[type="password"], div.dialog_row textarea, div.dialog_row select { - width: 80%; - font-size: 14px; -} - -div.dialog_row table td textarea { - width: 80%; - height: 200px; - font-size: 12px; -} - -/* - * lib/css/legacy/bootstrap-buttons.css - */.btn.danger, -.alert-message.danger, -.btn.danger:hover, -.alert-message.danger:hover, -.btn.error, -.alert-message.error, -.btn.error:hover, -.alert-message.error:hover, -.btn.success, -.alert-message.success, -.btn.success:hover, -.alert-message.success:hover, -.btn.info, -.alert-message.info, -.btn.info:hover, -.alert-message.info:hover { - color: #ffffff; -} -.btn .close, .alert-message .close { - font-family: Arial, sans-serif; - line-height: 18px; -} -.btn.danger, -.alert-message.danger, -.btn.error, -.alert-message.error { - background-color: #c43c35; - background-repeat: repeat-x; - background-image: -khtml-gradient(linear, left top, left bottom, from(#ee5f5b), to(#c43c35)); - background-image: -moz-linear-gradient(top, #ee5f5b, #c43c35); - background-image: -ms-linear-gradient(top, #ee5f5b, #c43c35); - background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #ee5f5b), color-stop(100%, #c43c35)); - background-image: -webkit-linear-gradient(top, #ee5f5b, #c43c35); - background-image: -o-linear-gradient(top, #ee5f5b, #c43c35); - background-image: linear-gradient(top, #ee5f5b, #c43c35); - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ee5f5b', endColorstr='#c43c35', GradientType=0); - text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); - border-color: #c43c35 #c43c35 #882a25; - border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); -} -.btn.success, .alert-message.success { - background-color: #57a957; - background-repeat: repeat-x; - background-image: -khtml-gradient(linear, left top, left bottom, from(#62c462), to(#57a957)); - background-image: -moz-linear-gradient(top, #62c462, #57a957); - background-image: -ms-linear-gradient(top, #62c462, #57a957); - background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #62c462), color-stop(100%, #57a957)); - background-image: -webkit-linear-gradient(top, #62c462, #57a957); - background-image: -o-linear-gradient(top, #62c462, #57a957); - background-image: linear-gradient(top, #62c462, #57a957); - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#62c462', endColorstr='#57a957', GradientType=0); - text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); - border-color: #57a957 #57a957 #3d773d; - border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); -} -.btn.info, .alert-message.info { - background-color: #339bb9; - background-repeat: repeat-x; - background-image: -khtml-gradient(linear, left top, left bottom, from(#5bc0de), to(#339bb9)); - background-image: -moz-linear-gradient(top, #5bc0de, #339bb9); - background-image: -ms-linear-gradient(top, #5bc0de, #339bb9); - background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #5bc0de), color-stop(100%, #339bb9)); - background-image: -webkit-linear-gradient(top, #5bc0de, #339bb9); - background-image: -o-linear-gradient(top, #5bc0de, #339bb9); - background-image: linear-gradient(top, #5bc0de, #339bb9); - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#5bc0de', endColorstr='#339bb9', GradientType=0); - text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); - border-color: #339bb9 #339bb9 #22697d; - border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); -} -.btn { - cursor: pointer; - display: inline-block; - background-color: #e6e6e6; - background-repeat: no-repeat; - background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#ffffff), color-stop(25%, #ffffff), to(#e6e6e6)); - background-image: -webkit-linear-gradient(#ffffff, #ffffff 25%, #e6e6e6); - background-image: -moz-linear-gradient(top, #ffffff, #ffffff 25%, #e6e6e6); - background-image: -ms-linear-gradient(#ffffff, #ffffff 25%, #e6e6e6); - background-image: -o-linear-gradient(#ffffff, #ffffff 25%, #e6e6e6); - background-image: linear-gradient(#ffffff, #ffffff 25%, #e6e6e6); - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#e6e6e6', GradientType=0); - padding: 5px 14px 6px; - text-shadow: 0 1px 1px rgba(255, 255, 255, 0.75); - color: #333; - font-size: 11px; - line-height: normal; - border: 1px solid #ccc; - border-bottom-color: #bbb; - -webkit-border-radius: 4px; - -moz-border-radius: 4px; - border-radius: 4px; - -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05); - -moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05); - box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05); - -webkit-transition: 0.1s linear all; - -moz-transition: 0.1s linear all; - -ms-transition: 0.1s linear all; - -o-transition: 0.1s linear all; - transition: 0.1s linear all; -} -.btn:hover { - background-position: 0 -15px; - color: #333; - text-decoration: none; -} -.btn:focus { - outline: 1px dotted #666; -} -.btn.primary { - color: #ffffff; - background-color: #0064cd; - background-repeat: repeat-x; - background-image: -khtml-gradient(linear, left top, left bottom, from(#049cdb), to(#0064cd)); - background-image: -moz-linear-gradient(top, #049cdb, #0064cd); - background-image: -ms-linear-gradient(top, #049cdb, #0064cd); - background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #049cdb), color-stop(100%, #0064cd)); - background-image: -webkit-linear-gradient(top, #049cdb, #0064cd); - background-image: -o-linear-gradient(top, #049cdb, #0064cd); - background-image: linear-gradient(top, #049cdb, #0064cd); - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#049cdb', endColorstr='#0064cd', GradientType=0); - text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); - border-color: #0064cd #0064cd #003f81; - border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); -} -.btn.active, .btn :active { - -webkit-box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.25), 0 1px 2px rgba(0, 0, 0, 0.05); - -moz-box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.25), 0 1px 2px rgba(0, 0, 0, 0.05); - box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.25), 0 1px 2px rgba(0, 0, 0, 0.05); -} -.btn.disabled { - cursor: default; - background-image: none; - filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); - filter: alpha(opacity=65); - -khtml-opacity: 0.65; - -moz-opacity: 0.65; - opacity: 0.65; - -webkit-box-shadow: none; - -moz-box-shadow: none; - box-shadow: none; -} -.btn[disabled] { - cursor: default; - background-image: none; - filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); - filter: alpha(opacity=65); - -khtml-opacity: 0.65; - -moz-opacity: 0.65; - opacity: 0.65; - -webkit-box-shadow: none; - -moz-box-shadow: none; - box-shadow: none; -} -.btn.large { - font-size: 15px; - line-height: normal; - padding: 9px 14px 9px; - -webkit-border-radius: 6px; - -moz-border-radius: 6px; - border-radius: 6px; -} -.btn.small { - padding: 5px 7px 5px; - font-size: 11px; -} -:root .alert-message, :root .btn { - border-radius: 0 \0; -} -button.btn::-moz-focus-inner, input[type=submit].btn::-moz-focus-inner { - padding: 0; - border: 0; -} - -/* CLose */ - -.close { - float: right; - color: #000000; - font-size: 15px; - font-weight: bold; - line-height: 13.5px; - margin-bottom: -2px; - text-shadow: 0 1px 0 #ffffff; - filter: alpha(opacity=25); - -khtml-opacity: 0.25; - -moz-opacity: 0.25; - opacity: 0.25; - text-decoration: none; -} -.close:hover { - color: #000000; - text-decoration: none; - filter: alpha(opacity=40); - -khtml-opacity: 0.4; - -moz-opacity: 0.4; - opacity: 0.4; - cursor: pointer; - font-weight: bold; -} \ No newline at end of file diff --git a/erpnext/accounts/Module Def/Accounts/Accounts.txt b/erpnext/accounts/Module Def/Accounts/Accounts.txt deleted file mode 100644 index f9c36c823f..0000000000 --- a/erpnext/accounts/Module Def/Accounts/Accounts.txt +++ /dev/null @@ -1,411 +0,0 @@ -# Module Def, Accounts -[ - - # These values are common in all dictionaries - { - 'creation': '2010-09-25 10:50:37', - 'docstatus': 0, - 'modified': '2011-12-07 16:18:28', - 'modified_by': 'Administrator', - 'owner': 'Administrator' - }, - - # These values are common for all Module Def Role - { - 'doctype': 'Module Def Role', - 'name': '__common__', - 'parent': 'Accounts', - 'parentfield': 'roles', - 'parenttype': 'Module Def' - }, - - # These values are common for all Module Def Item - { - 'doctype': 'Module Def Item', - 'name': '__common__', - 'parent': 'Accounts', - 'parentfield': 'items', - 'parenttype': 'Module Def' - }, - - # These values are common for all Module Def - { - 'disabled': 'No', - 'doctype': u'Module Def', - 'doctype_list': 'GL Mapper, Journal Voucher\nGL Mapper, Payable Voucher\nGL Mapper, Receivable Voucher\nDocType Label, Receivable Voucher\nDocType Label, Payable Voucher', - 'file_list': 'finance.gif,FileData/00210', - 'is_hidden': 'No', - 'last_updated_date': '2010-12-08 10:13:30', - 'module_desc': 'Data about your payables, receivables and books of accounts', - 'module_icon': 'Accounts.gif', - 'module_label': 'Accounts', - 'module_name': 'Accounts', - 'module_seq': 5, - 'name': '__common__' - }, - - # Module Def, Accounts - { - 'doctype': u'Module Def', - 'name': 'Accounts' - }, - - # Module Def Item - { - 'click_function': "show_chart_browser('Accounts Browser','Account')", - 'description': 'Manage your accounts', - 'display_name': 'Chart of Accounts', - 'doc_name': 'Accounts Browser', - 'doc_type': 'Pages', - 'doctype': 'Module Def Item' - }, - - # Module Def Item - { - 'click_function': "show_chart_browser('Accounts Browser','Cost Center')", - 'description': 'Manage your cost centers', - 'display_name': 'Chart of Cost Centers', - 'doc_name': 'Accounts Browser', - 'doc_type': 'Pages', - 'doctype': 'Module Def Item' - }, - - # Module Def Item - { - 'description': 'Regular journal entry', - 'display_name': 'Journal Voucher', - 'doc_name': 'Journal Voucher', - 'doc_type': 'Forms', - 'doctype': 'Module Def Item', - 'fields': 'voucher_type\nvoucher_date\nfiscal_year\ntotal_debit\ntotal_credit' - }, - - # Module Def Item - { - 'description': 'Outgoing Invoice to your customers', - 'display_name': 'Sales Invoice', - 'doc_name': 'Receivable Voucher', - 'doc_type': 'Forms', - 'doctype': 'Module Def Item', - 'fields': 'voucher_date\ndue_date\ndebit_to\ngrand_total\noutstanding_amount' - }, - - # Module Def Item - { - 'description': 'Incoming invoice from your service providers', - 'display_name': 'Purchase Invoice', - 'doc_name': 'Payable Voucher', - 'doc_type': 'Forms', - 'doctype': 'Module Def Item', - 'fields': 'voucher_date\ncredit_to\nbill_no\ngrand_total\noutstanding_amount' - }, - - # Module Def Item - { - 'description': 'Lease Agreement for Vehicles', - 'display_name': 'Lease Agreement', - 'doc_name': 'Lease Agreement', - 'doc_type': 'Forms', - 'doctype': 'Module Def Item' - }, - - # Module Def Item - { - 'description': 'Profit & Loss and Balance Sheet builder', - 'display_name': 'Financial Statements', - 'doc_name': 'Financial Statements', - 'doc_type': 'Pages', - 'doctype': 'Module Def Item', - 'icon': 'table.gif' - }, - - # Module Def Item - { - 'description': 'Update your actual clearance dates and find out if bank ledger tallies with your bank statement.', - 'display_name': 'Bank Reconciliation', - 'doc_name': 'Bank Reconciliation', - 'doc_type': 'Single DocType', - 'doctype': 'Module Def Item' - }, - - # Module Def Item - { - 'description': 'Link your invoices and payment vouchers to clear/update outstanding amount', - 'display_name': 'Internal Reconciliation', - 'doc_name': 'Internal Reconciliation', - 'doc_type': 'Single DocType', - 'doctype': 'Module Def Item' - }, - - # Module Def Item - { - 'display_name': 'TDS Payment', - 'doc_name': 'TDS Payment', - 'doc_type': 'Setup Forms', - 'doctype': 'Module Def Item' - }, - - # Module Def Item - { - 'display_name': 'TDS Return Acknowledgement', - 'doc_name': 'TDS Return Acknowledgement', - 'doc_type': 'Setup Forms', - 'doctype': 'Module Def Item' - }, - - # Module Def Item - { - 'display_name': 'Form 16A', - 'doc_name': 'Form 16A', - 'doc_type': 'Setup Forms', - 'doctype': 'Module Def Item' - }, - - # Module Def Item - { - 'description': 'Account closing entry (Profit Booking) on any date', - 'display_name': 'Period Closing Voucher', - 'doc_name': 'Period Closing Voucher', - 'doc_type': 'Setup Forms', - 'doctype': 'Module Def Item' - }, - - # Module Def Item - { - 'description': 'You can export balance of selected ledgers within a specific period', - 'display_name': 'Ledger Balance Export', - 'doc_name': 'Ledger Balance Export', - 'doc_type': 'Single DocType', - 'doctype': 'Module Def Item' - }, - - # Module Def Item - { - 'description': 'Track C-Form received from customers', - 'display_name': 'C-Form', - 'doc_name': 'C-Form', - 'doc_type': 'Setup Forms', - 'doctype': 'Module Def Item' - }, - - # Module Def Item - { - 'display_name': 'General Ledger', - 'doc_name': 'GL Entry', - 'doc_type': 'Reports', - 'doctype': 'Module Def Item' - }, - - # Module Def Item - { - 'display_name': 'Accounts Receivable', - 'doc_name': 'GL Entry', - 'doc_type': 'Reports', - 'doctype': 'Module Def Item' - }, - - # Module Def Item - { - 'display_name': 'Accounts Payable', - 'doc_name': 'GL Entry', - 'doc_type': 'Reports', - 'doctype': 'Module Def Item' - }, - - # Module Def Item - { - 'display_name': 'Bank Reconciliation Statement', - 'doc_name': 'Journal Voucher Detail', - 'doc_type': 'Reports', - 'doctype': 'Module Def Item' - }, - - # Module Def Item - { - 'display_name': 'Trial Balance', - 'doc_name': 'Account', - 'doc_type': 'Reports', - 'doctype': 'Module Def Item' - }, - - # Module Def Item - { - 'display_name': 'Sales Register', - 'doc_name': 'Receivable Voucher', - 'doc_type': 'Reports', - 'doctype': 'Module Def Item' - }, - - # Module Def Item - { - 'display_name': 'Purchase Register', - 'doc_name': 'Payable Voucher', - 'doc_type': 'Reports', - 'doctype': 'Module Def Item' - }, - - # Module Def Item - { - 'display_name': 'Bank Clearance report', - 'doc_name': 'Journal Voucher Detail', - 'doc_type': 'Reports', - 'doctype': 'Module Def Item' - }, - - # Module Def Item - { - 'display_name': 'Monthly Ledger Summary Report', - 'doc_name': 'GL Entry', - 'doc_type': 'Reports', - 'doctype': 'Module Def Item' - }, - - # Module Def Item - { - 'display_name': 'Collection Report', - 'doc_name': 'Journal Voucher Detail', - 'doc_type': 'Reports', - 'doctype': 'Module Def Item' - }, - - # Module Def Item - { - 'display_name': 'Total amout collection for a period - Customerwise', - 'doc_name': 'Account', - 'doc_type': 'Reports', - 'doctype': 'Module Def Item' - }, - - # Module Def Item - { - 'display_name': 'Payment Report', - 'doc_name': 'Journal Voucher Detail', - 'doc_type': 'Reports', - 'doctype': 'Module Def Item' - }, - - # Module Def Item - { - 'display_name': 'Itemwise Sales Register', - 'doc_name': 'RV Detail', - 'doc_type': 'Reports', - 'doctype': 'Module Def Item' - }, - - # Module Def Item - { - 'display_name': 'Itemwise Purchase Register', - 'doc_name': 'PV Detail', - 'doc_type': 'Reports', - 'doctype': 'Module Def Item' - }, - - # Module Def Item - { - 'display_name': 'Cost Center wise Expense', - 'doc_name': 'GL Entry', - 'doc_type': 'Reports', - 'doctype': 'Module Def Item' - }, - - # Module Def Item - { - 'display_name': 'TDS Return', - 'doc_name': 'TDS Payment Detail', - 'doc_type': 'Reports', - 'doctype': 'Module Def Item' - }, - - # Module Def Item - { - 'display_name': 'Budget Variance Report', - 'doc_name': 'Budget Detail', - 'doc_type': 'Reports', - 'doctype': 'Module Def Item' - }, - - # Module Def Item - { - 'display_name': 'Payment Receipt Report', - 'doc_name': 'GL Entry', - 'doc_type': 'Reports', - 'doctype': 'Module Def Item' - }, - - # Module Def Item - { - 'description': 'Track total commission given to your Business Associate', - 'display_name': 'Business Associate Commission Report', - 'doc_name': 'Receivable Voucher', - 'doc_type': 'Reports', - 'doctype': 'Module Def Item' - }, - - # Module Def Item - { - 'display_name': 'Lease Agreement List', - 'doc_name': 'GL Entry', - 'doc_type': 'Reports', - 'doctype': 'Module Def Item' - }, - - # Module Def Item - { - 'display_name': 'Lease Monthly Future Installment Inflows', - 'doc_name': 'GL Entry', - 'doc_type': 'Reports', - 'doctype': 'Module Def Item' - }, - - # Module Def Item - { - 'display_name': 'Lease Overdue Age Wise', - 'doc_name': 'GL Entry', - 'doc_type': 'Reports', - 'doctype': 'Module Def Item' - }, - - # Module Def Item - { - 'display_name': 'Lease Overdue List', - 'doc_name': 'GL Entry', - 'doc_type': 'Reports', - 'doctype': 'Module Def Item' - }, - - # Module Def Item - { - 'display_name': 'Lease Receipts Client Wise', - 'doc_name': 'GL Entry', - 'doc_type': 'Reports', - 'doctype': 'Module Def Item' - }, - - # Module Def Item - { - 'display_name': 'Lease Yearly Future Installment Inflows', - 'doc_name': 'GL Entry', - 'doc_type': 'Reports', - 'doctype': 'Module Def Item' - }, - - # Module Def Item - { - 'display_name': 'Voucher wise tax details', - 'doc_name': 'RV Tax Detail', - 'doc_type': 'Reports', - 'doctype': 'Module Def Item' - }, - - # Module Def Role - { - 'doctype': 'Module Def Role', - 'role': 'Accounts Manager' - }, - - # Module Def Role - { - 'doctype': 'Module Def Role', - 'role': 'Accounts User' - } -] \ No newline at end of file diff --git a/erpnext/accounts/Print Format/POS Invoice/POS Invoice.txt b/erpnext/accounts/Print Format/POS Invoice/POS Invoice.txt index 6a7e83589f..8664b3882b 100644 --- a/erpnext/accounts/Print Format/POS Invoice/POS Invoice.txt +++ b/erpnext/accounts/Print Format/POS Invoice/POS Invoice.txt @@ -3,25 +3,26 @@ # These values are common in all dictionaries { - 'creation': '2011-10-19 14:27:47', + 'creation': '2011-12-21 11:08:55', 'docstatus': 0, - 'modified': '2011-10-19 14:29:45', - 'modified_by': 'Administrator', - 'owner': 'Administrator' + 'modified': '2012-03-20 12:29:49', + 'modified_by': u'Administrator', + 'owner': u'Administrator' }, # These values are common for all Print Format { + 'doc_type': u'Receivable Voucher', 'doctype': 'Print Format', - 'html': '\n\n\n\n\n\n\n
\n\n\n\n\n\n\n\n\n
NO: DATE:
M/s
\n\n
\n \n\n
\n\n\n
\n \n
\n\n
\n\n\n\n\n\n
For
 
Signatory
\n\n', - 'module': 'Accounts', + 'html': u'\n\n\n\n\n\n\n\n\n\n \n \n\n\n \n\n
NO: DATE:
M/s
\n\n
\n\n
\n\n

\n\n \n \n \n \n
For
 
Signatory
\n\n\n', + 'module': u'Accounts', 'name': '__common__', - 'standard': 'Yes' + 'standard': u'Yes' }, # Print Format, POS Invoice { 'doctype': 'Print Format', - 'name': 'POS Invoice' + 'name': u'POS Invoice' } ] \ No newline at end of file diff --git a/erpnext/accounts/Role/Accounts Manager/Accounts Manager.txt b/erpnext/accounts/Role/Accounts Manager/Accounts Manager.txt deleted file mode 100644 index 6f6759cdd9..0000000000 --- a/erpnext/accounts/Role/Accounts Manager/Accounts Manager.txt +++ /dev/null @@ -1,26 +0,0 @@ -# Role, Accounts Manager -[ - - # These values are common in all dictionaries - { - 'creation': '2010-08-08 17:08:51', - 'docstatus': 0, - 'modified': '2009-03-19 14:57:46', - 'modified_by': 'Administrator', - 'owner': 'Administrator' - }, - - # These values are common for all Role - { - 'doctype': 'Role', - 'module': 'Accounts', - 'name': '__common__', - 'role_name': 'Accounts Manager' - }, - - # Role, Accounts Manager - { - 'doctype': 'Role', - 'name': 'Accounts Manager' - } -] \ No newline at end of file diff --git a/erpnext/accounts/Role/Accounts User/Accounts User.txt b/erpnext/accounts/Role/Accounts User/Accounts User.txt deleted file mode 100644 index 519924e334..0000000000 --- a/erpnext/accounts/Role/Accounts User/Accounts User.txt +++ /dev/null @@ -1,26 +0,0 @@ -# Role, Accounts User -[ - - # These values are common in all dictionaries - { - 'creation': '2010-08-08 17:08:51', - 'docstatus': 0, - 'modified': '2010-04-08 12:05:21', - 'modified_by': 'Administrator', - 'owner': 'Administrator' - }, - - # These values are common for all Role - { - 'doctype': 'Role', - 'module': 'Accounts', - 'name': '__common__', - 'role_name': 'Accounts User' - }, - - # Role, Accounts User - { - 'doctype': 'Role', - 'name': 'Accounts User' - } -] \ No newline at end of file diff --git a/erpnext/accounts/__init__.py b/erpnext/accounts/__init__.py index 44d6aec5e2..9df7240965 100644 --- a/erpnext/accounts/__init__.py +++ b/erpnext/accounts/__init__.py @@ -18,6 +18,11 @@ import webnotes from webnotes.utils import flt from webnotes.model.code import get_obj +install_docs = [ + {"doctype":"Role", "name":"Accounts Manager"}, + {"doctype":"Role", "name":"Accounts User"} +] + @webnotes.whitelist() def get_default_bank_account(): """ diff --git a/erpnext/accounts/doctype/gl_control/gl_control.py b/erpnext/accounts/doctype/gl_control/gl_control.py index 93bef5de76..fa98441258 100644 --- a/erpnext/accounts/doctype/gl_control/gl_control.py +++ b/erpnext/accounts/doctype/gl_control/gl_control.py @@ -560,10 +560,12 @@ def send_notification(new_rv): - +
Customer
%s
%s
Invoice Date: %s
Due Date: %s
Invoice Date : %s
Invoice Period : %s to %s
Due Date : %s
- ''' % (com, new_rv.doc.name, new_rv.doc.customer, new_rv.doc.address_display, new_rv.doc.posting_date, new_rv.doc.due_date) + ''' % (com, new_rv.doc.name, new_rv.doc.customer, new_rv.doc.address_display, getdate(new_rv.doc.posting_date).strftime("%d-%m-%Y"), \ + getdate(add_days(add_months(new_rv.doc.posting_date, -1), 1)).strftime("%d-%m-%Y"), getdate(new_rv.doc.posting_date).strftime("%d-%m-%Y"),\ + getdate(new_rv.doc.due_date).strftime("%d-%m-%Y")) tbl = ''' @@ -596,10 +598,10 @@ def send_notification(new_rv):
- Terms: + Terms and Conditions: %s - ''' % (new_rv.doc.net_total, new_rv.doc.total_tax,new_rv.doc.grand_total, new_rv.doc.in_words,new_rv.doc.terms) + ''' % (new_rv.doc.net_total, new_rv.doc.other_charges_total,new_rv.doc.grand_total, new_rv.doc.in_words,new_rv.doc.terms) msg = hd + tbl + totals diff --git a/erpnext/accounts/doctype/journal_voucher/listview.js b/erpnext/accounts/doctype/journal_voucher/listview.js new file mode 100644 index 0000000000..5d7f85a7d9 --- /dev/null +++ b/erpnext/accounts/doctype/journal_voucher/listview.js @@ -0,0 +1,34 @@ +wn.doclistviews['Journal Voucher'] = wn.views.ListView.extend({ + init: function(d) { + this._super(d); + this.fields = this.fields.concat([ + '`tabJournal Voucher`.voucher_type', + '`tabJournal Voucher`.remark', + '`tabJournal Voucher`.total_debit' + ]); + this.stats = this.stats.concat(['voucher_type']); + }, + prepare_data: function(data) { + this._super(data); + if(!data.remark) data.remark = ''; + if(data.remark.length> 30) { + data.remark = '' + data.remark.substr(0,30) + + '...'; + } + }, + columns: [ + {width: '5%', content:'avatar'}, + {width: '3%', content:'docstatus'}, + {width: '12%', content:'name'}, + {width: '15%', content:'voucher_type'}, + {width: '38%', content:'tags+remark', css: {'color':'#aaa'}}, + { + width: '18%', + content: function(parent, data) { + $(parent).html(sys_defaults.currency + ' ' + fmt_money(data.total_debit)) + }, + css: {'text-align':'right'} + }, + {width: '12%', content:'modified', css: {'text-align': 'right', 'color':'#777'}} + ], +}); \ No newline at end of file diff --git a/erpnext/accounts/doctype/payable_voucher/payable_voucher.js b/erpnext/accounts/doctype/payable_voucher/payable_voucher.js index 99bd24c6b8..2715bfd5a8 100644 --- a/erpnext/accounts/doctype/payable_voucher/payable_voucher.js +++ b/erpnext/accounts/doctype/payable_voucher/payable_voucher.js @@ -17,8 +17,8 @@ cur_frm.cscript.tname = "PV Detail"; cur_frm.cscript.fname = "entries"; cur_frm.cscript.other_fname = "purchase_tax_details"; -$import(Purchase Other Charges) -$import(Purchase Common) +wn.require('erpnext/buying/doctype/purchase_other_charges/purchase_other_charges.js'); +wn.require('erpnext/buying/doctype/purchase_common/purchase_common.js'); // On Load // -------- @@ -162,7 +162,7 @@ cur_frm.cscript.is_opening = function(doc, dt, dn) { // Recalculate Button // ------------------- -cur_frm.cscript['Recalculate'] = function(doc, dt, dn) { +cur_frm.cscript['Recalculate'] = function(doc, cdt, cdn) { cur_frm.cscript['Calculate Tax'](doc,cdt,cdn); calc_total_advance(doc,cdt,cdn); } diff --git a/erpnext/accounts/doctype/payable_voucher/payable_voucher.py b/erpnext/accounts/doctype/payable_voucher/payable_voucher.py index 1a09a451c7..d930583536 100644 --- a/erpnext/accounts/doctype/payable_voucher/payable_voucher.py +++ b/erpnext/accounts/doctype/payable_voucher/payable_voucher.py @@ -123,7 +123,10 @@ class DocType(TransactionBase): def get_pv_details(self, arg): import json - item_det = sql("select item_name, brand, description, item_group,purchase_account,cost_center from tabItem where name=%s",arg,as_dict=1) + item_det = sql("select item_name, brand, description, item_group,purchase_account,cost_center, last_purchase_rate from tabItem where name=%s",arg,as_dict=1) + lpr = item_det and flt(item_det[0]['last_purchase_rate']) or 0 + import_lpr = lpr / flt(self.doc.conversion_rate) or 1 + tax = sql("select tax_type, tax_rate from `tabItem Tax` where parent = %s" , arg) t = {} for x in tax: t[x[0]] = flt(x[1]) @@ -132,13 +135,17 @@ class DocType(TransactionBase): 'brand' : item_det and item_det[0]['brand'] or '', 'description' : item_det and item_det[0]['description'] or '', 'item_group' : item_det and item_det[0]['item_group'] or '', - 'rate' : 0.00, + 'rate' : lpr, + 'purchase_ref_rate' : lpr, + 'import_ref_rate' : import_lpr, + 'import_rate' : import_lpr, 'qty' : 0.00, 'amount' : 0.00, 'expense_head' : item_det and item_det[0]['purchase_account'] or '', 'cost_center' : item_det and item_det[0]['cost_center'] or '', 'item_tax_rate' : json.dumps(t) } + return ret diff --git a/erpnext/accounts/doctype/receivable_voucher/listview.js b/erpnext/accounts/doctype/receivable_voucher/listview.js new file mode 100644 index 0000000000..d30431ff32 --- /dev/null +++ b/erpnext/accounts/doctype/receivable_voucher/listview.js @@ -0,0 +1,32 @@ +// render +wn.doclistviews['Receivable Voucher'] = wn.views.ListView.extend({ + init: function(d) { + this._super(d) + this.fields = this.fields.concat([ + "`tabReceivable Voucher`.customer", + "ifnull(`tabReceivable Voucher`.outstanding_amount,0) as outstanding_amount", + "ifnull(`tabReceivable Voucher`.grand_total,0) as grand_total", + "`tabReceivable Voucher`.currency", + "ifnull(`tabReceivable Voucher`.grand_total_export,0) as grand_total_export" + ]); + }, + prepare_data: function(data) { + this._super(data); + data.paid = flt((data.grand_total - data.outstanding_amount) / data.grand_total * 100, 2); + }, + columns: [ + {width: '5%', content:'avatar'}, + {width: '3%', content:'docstatus'}, + {width: '15%', content:'name'}, + {width: '37%', content:'tags+customer', css: {color:'#aaa'}}, + { + width: '18%', + content: function(parent, data) { + $(parent).html(data.currency + ' ' + fmt_money(data.grand_total_export)) + }, + css: {'text-align':'right'} + }, + {width: '10%', content: 'paid', type:'bar-graph', label:'Paid'}, + {width: '12%', content:'modified', css: {'text-align': 'right', 'color':'#777'}} + ] +}); diff --git a/erpnext/accounts/doctype/receivable_voucher/receivable_voucher.js b/erpnext/accounts/doctype/receivable_voucher/receivable_voucher.js index 391bbcd8ae..6db3b52475 100644 --- a/erpnext/accounts/doctype/receivable_voucher/receivable_voucher.js +++ b/erpnext/accounts/doctype/receivable_voucher/receivable_voucher.js @@ -22,9 +22,10 @@ cur_frm.cscript.sales_team_fname = "sales_team"; // print heading cur_frm.pformat.print_heading = 'Invoice'; -$import(Sales Common) -$import(Other Charges) -$import(SMS Control) +wn.require('erpnext/selling/doctype/sales_common/sales_common.js'); +wn.require('erpnext/setup/doctype/other_charges/other_charges.js'); +wn.require('erpnext/utilities/doctype/sms_control/sms_control.js'); +wn.require('erpnext/setup/doctype/notification_control/notification_control.js'); // On Load // ------- @@ -162,14 +163,24 @@ cur_frm.cscript.warehouse = function(doc, cdt , cdn) { cur_frm.cscript.customer = function(doc,dt,dn,onload) { var callback = function(r,rt) { + var callback2 = function(doc, dt, dn) { + doc = locals[dt][dn]; + if(doc.debit_to && doc.posting_date){ + get_server_fields('get_cust_and_due_date','','',doc,dt,dn,1, + function(doc, dt, dn) { + cur_frm.refresh(); + }); + + } + } var doc = locals[cur_frm.doctype][cur_frm.docname]; - get_server_fields('get_debit_to','','',doc, dt, dn, 0); - cur_frm.refresh(); + get_server_fields('get_debit_to','','',doc, dt, dn, 0, callback2); } var args = onload ? 'onload':'' if(doc.customer) $c_obj(make_doclist(doc.doctype, doc.name), 'get_default_customer_address', args, callback); if(doc.customer) unhide_field(['customer_address','contact_person','customer_name','address_display','contact_display','contact_mobile','contact_email','territory','customer_group']); + } @@ -476,7 +487,6 @@ cur_frm.cscript.convert_into_recurring_invoice = function(doc) { } } -$import(Notification Control) cur_frm.cscript.on_submit = function(doc, cdt, cdn) { var args = { type: 'Sales Invoice', diff --git a/erpnext/accounts/page/accounts_browser/accounts_browser.html b/erpnext/accounts/page/accounts_browser/accounts_browser.html index 8614f2c1d2..8cfde8aea2 100644 --- a/erpnext/accounts/page/accounts_browser/accounts_browser.html +++ b/erpnext/accounts/page/accounts_browser/accounts_browser.html @@ -1,4 +1,4 @@
-
+
\ No newline at end of file diff --git a/erpnext/accounts/page/accounts_browser/accounts_browser.js b/erpnext/accounts/page/accounts_browser/accounts_browser.js index 60c168d5ab..49cbcb38f6 100644 --- a/erpnext/accounts/page/accounts_browser/accounts_browser.js +++ b/erpnext/accounts/page/accounts_browser/accounts_browser.js @@ -46,7 +46,7 @@ pscript.make_chart = function(b) { //================== table body====================================== var ac_main_grid = make_table($i('ab_body'),1,2,'100%',['60%','40%'],{border:"0px", padding:"4px",tableLayout: "fixed", borderCollapse: "collapse"}); $y($td(ac_main_grid,0,0),{border: "1px solid #dddddd", padding: "8px"}); - pscript.account_tree = $a($td(ac_main_grid,0,0),'div'); + pscript.account_tree = $a($td(ac_main_grid,0,0),'div', '',{minHeight:'400px'}); $y($td(ac_main_grid,0,1),{border: "1px solid #DDD"}); pscript.la = $a($td(ac_main_grid,0,1),'div'); pscript.acc_period_bal = $a($td(ac_main_grid,0,1),'div'); diff --git a/erpnext/accounts/search_criteria/lease_receipts_client_wise/lease_receipts_client_wise.sql b/erpnext/accounts/search_criteria/lease_receipts_client_wise/lease_receipts_client_wise.sql index f951388aaf..af49c813f1 100644 --- a/erpnext/accounts/search_criteria/lease_receipts_client_wise/lease_receipts_client_wise.sql +++ b/erpnext/accounts/search_criteria/lease_receipts_client_wise/lease_receipts_client_wise.sql @@ -1,5 +1,5 @@ SELECT gl.account,sum(gl.credit) as amount FROM `tabGL Entry` gl, `tabAccount` a -WHERE gl.account=a.name and a.master_type='Customer' and gl.posting_date between '%(date)s' and '%(date1)s' +WHERE gl.account=a.name and a.master_type='Customer' and gl.posting_date between '%(date)s' and '%(date1)s' and ifnull(gl.is_cancelled, 'No') = 'No' GROUP BY gl.account ORDER BY posting_date diff --git a/erpnext/accounts/search_criteria/trial_balance/trial_balance.py b/erpnext/accounts/search_criteria/trial_balance/trial_balance.py index 34a828a5a2..d9f00d19ec 100644 --- a/erpnext/accounts/search_criteria/trial_balance/trial_balance.py +++ b/erpnext/accounts/search_criteria/trial_balance/trial_balance.py @@ -114,8 +114,8 @@ for r in res: r.append(flt(opening<0 and -opening or 0)) r.append(flt(debit)) r.append(flt(credit)) - r.append(flt(closing>0 and closing or 0)) - r.append(flt(closing<0 and -closing or 0)) + r.append(flt(closing>0.01 and closing or 0)) + r.append(flt(closing<-0.01 and -closing or 0)) out =[] diff --git a/erpnext/buying/Module Def/Buying/Buying.txt b/erpnext/buying/Module Def/Buying/Buying.txt deleted file mode 100644 index 16cae81509..0000000000 --- a/erpnext/buying/Module Def/Buying/Buying.txt +++ /dev/null @@ -1,155 +0,0 @@ -# Module Def, Buying -[ - - # These values are common in all dictionaries - { - 'creation': '2011-07-01 17:40:38', - 'docstatus': 0, - 'modified': '2012-01-10 17:52:19', - 'modified_by': 'Administrator', - 'owner': 'Administrator' - }, - - # These values are common for all Module Def Role - { - 'doctype': 'Module Def Role', - 'name': '__common__', - 'parent': 'Buying', - 'parentfield': 'roles', - 'parenttype': 'Module Def' - }, - - # These values are common for all Module Def Item - { - 'doctype': 'Module Def Item', - 'name': '__common__', - 'parent': 'Buying', - 'parentfield': 'items', - 'parenttype': 'Module Def' - }, - - # These values are common for all Module Def - { - 'disabled': 'No', - 'doctype': u'Module Def', - 'doctype_list': 'DocType Mapper, Purchase Receipt-Payable Voucher\nDocType Mapper, Purchase Order-Payable Voucher\nDocType Mapper, Purchase Order-Purchase Receipt\nDocType Mapper, Indent-Purchase Order\nPrint Format, Purchase Order Format\nPrint Format, Purchase Receipt Format\nDocType Label, Indent', - 'file_list': 'scm.gif,FileData/00209', - 'is_hidden': 'No', - 'module_desc': '

All details about your Suppliers and past transactions

', - 'module_icon': 'Buying.gif', - 'module_label': 'Buying', - 'module_name': 'Buying', - 'module_seq': 4, - 'name': '__common__' - }, - - # Module Def, Buying - { - 'doctype': u'Module Def', - 'name': 'Buying' - }, - - # Module Def Item - { - 'description': 'Your Supplier Database', - 'display_name': 'Supplier', - 'doc_name': 'Supplier', - 'doc_type': 'Forms', - 'doctype': 'Module Def Item', - 'fields': 'id\nsupplier_type\nsupplier_status\ncompany' - }, - - # Module Def Item - { - 'description': 'Buy requests from various people in your company', - 'display_name': 'Indent', - 'doc_name': 'Indent', - 'doc_type': 'Forms', - 'doctype': 'Module Def Item', - 'fields': 'status\ntransaction_date\nsales_order_no\nremark' - }, - - # Module Def Item - { - 'description': 'Orders you have placed to your suppliers', - 'display_name': 'Purchase Order', - 'doc_name': 'Purchase Order', - 'doc_type': 'Forms', - 'doctype': 'Module Def Item', - 'fields': 'status\nsupplier\ntransaction_date\ngrand_total' - }, - - # Module Def Item - { - 'display_name': 'Itemwise Receipt Details', - 'doc_name': 'Purchase Receipt Detail', - 'doc_type': 'Reports', - 'doctype': 'Module Def Item' - }, - - # Module Def Item - { - 'display_name': 'Purchase in Transit', - 'doc_name': 'PV Detail', - 'doc_type': 'Reports', - 'doctype': 'Module Def Item' - }, - - # Module Def Item - { - 'display_name': 'Pending PO Items To Receive', - 'doc_name': 'PO Detail', - 'doc_type': 'Reports', - 'doctype': 'Module Def Item' - }, - - # Module Def Item - { - 'display_name': 'Pending PO Items To Bill', - 'doc_name': 'PO Detail', - 'doc_type': 'Reports', - 'doctype': 'Module Def Item' - }, - - # Module Def Item - { - 'display_name': 'Itemwise Purchase Details', - 'doc_name': 'PO Detail', - 'doc_type': 'Reports', - 'doctype': 'Module Def Item' - }, - - # Module Def Item - { - 'description': 'Ledger details of your creditors', - 'display_name': "Creditor's Ledger", - 'doc_name': 'GL Entry', - 'doc_type': 'Reports', - 'doctype': 'Module Def Item', - 'icon': 'accept.gif' - }, - - # Module Def Role - { - 'doctype': 'Module Def Role', - 'role': 'Purchase User' - }, - - # Module Def Role - { - 'doctype': 'Module Def Role', - 'role': 'Purchase Manager' - }, - - # Module Def Role - { - 'doctype': 'Module Def Role', - 'role': 'Administrator' - }, - - # Module Def Role - { - 'doctype': 'Module Def Role', - 'role': 'Purchase Master Manager' - } -] \ No newline at end of file diff --git a/erpnext/buying/doctype/indent/indent.js b/erpnext/buying/doctype/indent/indent.js index 570e06c1b8..1940e5a606 100644 --- a/erpnext/buying/doctype/indent/indent.js +++ b/erpnext/buying/doctype/indent/indent.js @@ -17,8 +17,8 @@ cur_frm.cscript.tname = "Indent Detail"; cur_frm.cscript.fname = "indent_details"; -$import(Purchase Common) -$import(SMS Control) +wn.require('erpnext/buying/doctype/purchase_common/purchase_common.js'); +wn.require('erpnext/utilities/doctype/sms_control/sms_control.js'); cur_frm.cscript.indent_doctype_label = get_doctype_label('Indent'); //========================== On Load ================================================= diff --git a/erpnext/buying/doctype/purchase_common/purchase_common.js b/erpnext/buying/doctype/purchase_common/purchase_common.js index f0f24a0eca..4ac3fdfb20 100644 --- a/erpnext/buying/doctype/purchase_common/purchase_common.js +++ b/erpnext/buying/doctype/purchase_common/purchase_common.js @@ -393,12 +393,12 @@ cur_frm.cscript.calc_amount = function(doc, n) { refresh_field('net_total'); refresh_field('net_total_import'); - cur_frm.cscript.val_cal_charges(doc, cdt, cdn, tname, fname, other_fname); + cur_frm.cscript.val_cal_charges(doc, tname, fname, other_fname); } //======== Function was broken away from cur_frm.cscript.calc_amount as PV has fieldname 'rate' instead of 'purchase_rate'=========== -cur_frm.cscript.val_cal_charges = function(doc, cdt, cdn, tname, fname, other_fname){ +cur_frm.cscript.val_cal_charges = function(doc, tname, fname, other_fname){ doc = locals[doc.doctype][doc.name] if(flt(doc.net_total) > 0) { @@ -416,7 +416,7 @@ cur_frm.cscript.val_cal_charges = function(doc, cdt, cdn, tname, fname, other_fn } cur_frm.cscript.calc_other_charges(doc , tname , fname , other_fname); // calculate other charges } - cur_frm.cscript.calc_doc_values(doc, cdt, cdn, tname, fname, other_fname); // calculates total amounts + cur_frm.cscript.calc_doc_values(doc, tname, fname, other_fname); // calculates total amounts refresh_many(['net_total', 'grand_total', 'rounded_total', 'grand_total_import', 'rounded_total_import', 'in_words', 'in_words_import', 'purchase_tax_details', 'total_tax', 'other_charges_added', 'other_charges_deducted', 'net_total_import', 'other_charges_added_import', 'other_charges_deducted_import']); @@ -545,9 +545,10 @@ cur_frm.cscript.calc_other_charges = function(doc , tname , fname , other_fname) // ******* Calculation of total amounts of document (item amount + other charges)**************** -cur_frm.cscript.calc_doc_values = function(doc, cdt, cdn, tname, fname, other_fname) { +cur_frm.cscript.calc_doc_values = function(doc, tname, fname, other_fname) { doc = locals[doc.doctype][doc.name]; - var net_total = 0; var total_tax = 0; var other_charges_added = 0; var other_charges_deducted = 0; + var net_total = 0; var total_tax = 0; var other_charges_added = 0; + var other_charges_deducted = 0; var cl = getchildren(tname, doc.name, fname); for(var i = 0; i. -$import(Contact Control) +wn.require('erpnext/setup/doctype/contact_control/contact_control.js'); cur_frm.cscript.onload = function(doc,dt,dn){ @@ -54,19 +54,10 @@ cur_frm.cscript.refresh = function(doc,dt,dn) { cur_frm.cscript.make_address = function() { if(!cur_frm.address_list) { - cur_frm.address_list = new wn.widgets.Listing({ + cur_frm.address_list = new wn.ui.Listing({ parent: cur_frm.fields_dict['Address HTML'].wrapper, page_length: 2, new_doctype: "Address", - new_doc_onload: function(dn) { - ndoc = locals["Address"][dn]; - ndoc.supplier = cur_frm.doc.name; - ndoc.supplier_name = cur_frm.doc.supplier_name; - ndoc.address_type = 'Office'; - }, - new_doc_onsave: function(dn) { - cur_frm.address_list.run() - }, get_query: function() { return "select name, address_type, address_line1, address_line2, city, state, country, pincode, fax, email_id, phone, is_primary_address, is_shipping_address from tabAddress where supplier='"+cur_frm.docname+"' and docstatus != 2 order by is_primary_address desc" }, @@ -96,18 +87,10 @@ cur_frm.cscript.make_address = function() { cur_frm.cscript.make_contact = function() { if(!cur_frm.contact_list) { - cur_frm.contact_list = new wn.widgets.Listing({ + cur_frm.contact_list = new wn.ui.Listing({ parent: cur_frm.fields_dict['Contact HTML'].wrapper, page_length: 2, new_doctype: "Contact", - new_doc_onload: function(dn) { - ndoc = locals["Contact"][dn]; - ndoc.supplier = cur_frm.doc.name; - ndoc.supplier_name = cur_frm.doc.supplier_name; - }, - new_doc_onsave: function(dn) { - cur_frm.contact_list.run() - }, get_query: function() { return "select name, first_name, last_name, email_id, phone, mobile_no, department, designation, is_primary_contact from tabContact where supplier='"+cur_frm.docname+"' and docstatus != 2 order by is_primary_contact desc" }, @@ -128,6 +111,7 @@ cur_frm.cscript.make_contact = function() { // make purchase order list cur_frm.cscript.make_po_list = function(parent, doc){ + wn.require('lib/js/legacy/widgets/listing.js'); var lst = new Listing(); lst.colwidths = ['5%','25%','20%','25%','25%']; lst.colnames = ['Sr.','Id','Status','PO Date','Grand Total']; @@ -142,6 +126,7 @@ cur_frm.cscript.make_po_list = function(parent, doc){ // make purchase receipt list cur_frm.cscript.make_pr_list = function(parent,doc){ + wn.require('lib/js/legacy/widgets/listing.js'); var lst = new Listing(); lst.colwidths = ['5%','20%','20%','20%','15%','20%']; lst.colnames = ['Sr.','Id','Status','Receipt Date','% Billed','Grand Total']; @@ -156,6 +141,7 @@ cur_frm.cscript.make_pr_list = function(parent,doc){ // make purchase invoice list cur_frm.cscript.make_pi_list = function(parent,doc){ + wn.require('lib/js/legacy/widgets/listing.js'); var lst = new Listing(); lst.colwidths = ['5%','20%','20%','20%','15%','20%']; lst.colnames = ['Sr.','Id','Posting Date','Credit To','Bill Date','Grand Total']; diff --git a/erpnext/home/page/activity/activity.js b/erpnext/home/page/activity/activity.js index 62604b79a8..83f018dc62 100644 --- a/erpnext/home/page/activity/activity.js +++ b/erpnext/home/page/activity/activity.js @@ -1,5 +1,5 @@ wn.pages['activity'].onload = function(wrapper) { - var list = new wn.widgets.Listing({ + var list = new wn.ui.Listing({ method: 'home.page.activity.activity.get_feed', parent: $('#activity-list'), render_row: function(row, data) { diff --git a/erpnext/home/page/dashboard/dashboard.js b/erpnext/home/page/dashboard/dashboard.js index 1d01ee92e3..072af25465 100644 --- a/erpnext/home/page/dashboard/dashboard.js +++ b/erpnext/home/page/dashboard/dashboard.js @@ -16,12 +16,12 @@ pscript.onload_dashboard = function() { // load jqplot - wn.require('lib/css/jqplot.css'); - wn.require('lib/js/legacy/jquery/jquery.jqplot.min.js'); - wn.require('lib/js/legacy/jquery/jqplot-plugins/jqplot.barRenderer.js'); - wn.require('lib/js/legacy/jquery/jqplot-plugins/jqplot.canvasAxisTickRenderer.min.js'); - wn.require('lib/js/legacy/jquery/jqplot-plugins/jqplot.canvasTextRenderer.min.js'); - wn.require('lib/js/legacy/jquery/jqplot-plugins/jqplot.categoryAxisRenderer.min.js'); + wn.require('lib/css/lib/jqplot.css'); + wn.require('lib/js/lib/jqplot/jquery.jqplot.min.js'); + wn.require('lib/js/lib/jqplot/jqplot-plugins/jqplot.barRenderer.js'); + wn.require('lib/js/lib/jqplot/jqplot-plugins/jqplot.canvasAxisTickRenderer.min.js'); + wn.require('lib/js/lib/jqplot/jqplot-plugins/jqplot.canvasTextRenderer.min.js'); + wn.require('lib/js/lib/jqplot/jqplot-plugins/jqplot.categoryAxisRenderer.min.js'); pscript.dashboard_settings = { diff --git a/erpnext/home/page/desktop/desktop.css b/erpnext/home/page/desktop/desktop.css index cc6126e200..59e50eb0a8 100644 --- a/erpnext/home/page/desktop/desktop.css +++ b/erpnext/home/page/desktop/desktop.css @@ -46,10 +46,10 @@ width: 56px; height: 56px; border: 4px solid white; - box-shadow: 0 0 10px 1px black; - -moz-box-shadow: 0 0 10px 1px black; - -webkit-box-shadow: 0 0 10px 1px black; - -o-box-shadow: 0 0 10px 1px black; + box-shadow: 0 0 4px 1px black; + -moz-box-shadow: 0 0 4px 1px black; + -webkit-box-shadow: 0 0 4px 1px black; + -o-box-shadow: 0 0 4px 1px black; margin: auto; } @@ -62,17 +62,16 @@ .case-label { color: white; - /*font-size: 12px;*/ padding-top: 10px; text-align: center; - text-shadow: 1px 1px 5px #000, 3px 3px 5px #000; + text-shadow: 1px 1px 2px #000, 1px 1px 2px #000, 1px 1px 2px #000, 0px 0px 2px #000; } /* Hover and click effects */ .case-border:hover, .circle:hover, .hover-effect { - box-shadow: 0 0 2px 0px black, 0 0 10px 1px white !important; - -moz-box-shadow: 0 0 2px 0px black, 0 0 10px 1px white !important; - -webkit-box-shadow: 0 0 2px 0px black, 0 0 10px 1px white !important; + box-shadow: 0 0 2px 0px black, 0 0 4px 1px white !important; + -moz-box-shadow: 0 0 2px 0px black, 0 0 4px 1px white !important; + -webkit-box-shadow: 0 0 2px 0px black, 0 0 4px 1px white !important; -o-box-shadow: 0 0 2px 0px black, 0 0 10px 1px white !important; } @@ -105,10 +104,10 @@ margin-top: -74px; margin-right: 10px; border: 2px solid white; - box-shadow: 0 0 10px 1px black; - -moz-box-shadow: 0 0 10px 1px black; - -webkit-box-shadow: 0 0 10px 1px black; - -o-box-shadow: 0 0 10px 1px black; + box-shadow: 0 0 4px 1px black; + -moz-box-shadow: 0 0 4px 1px black; + -webkit-box-shadow: 0 0 4px 1px black; + -o-box-shadow: 0 0 4px 1px black; } .circle-text { diff --git a/erpnext/home/page/event_updates/event_updates.js b/erpnext/home/page/event_updates/event_updates.js index b2825f31be..797d8e95c9 100644 --- a/erpnext/home/page/event_updates/event_updates.js +++ b/erpnext/home/page/event_updates/event_updates.js @@ -470,7 +470,7 @@ FeedList.prototype.make_list = function() { var me = this; this.list_area = $a(this.wrapper,'div') - this.list = new wn.widgets.Listing({ + this.list = new wn.ui.Listing({ parent: this.list_area, query: repl('select \ distinct t1.name, t1.feed_type, t1.doc_type, t1.doc_name, t1.subject, t1.modified_by, \ @@ -600,7 +600,7 @@ pscript.home_make_status = function() { // get values $c_page('home', 'event_updates', 'get_status_details', user, function(r,rt) { - //page_body.wntoolbar.set_new_comments(r.message.unread_messages); + //wn.container.wntoolbar.set_new_comments(r.message.unread_messages); // render online users pscript.online_users_obj.render(r.message.online_users); diff --git a/erpnext/home/page/my_company/my_company.js b/erpnext/home/page/my_company/my_company.js index 8217cc71c1..7b198df167 100644 --- a/erpnext/home/page/my_company/my_company.js +++ b/erpnext/home/page/my_company/my_company.js @@ -179,7 +179,7 @@ MemberList.prototype.make_list = function() { var me = this; this.lst_area = $a(this.list_wrapper, 'div'); - this.lst = new wn.widgets.Listing({ + this.lst = new wn.ui.Listing({ parent: this.lst_area, as_dict: 1, get_query: function() { @@ -692,7 +692,7 @@ MemberConversation = function(parent, uid, fullname) { this.my_messages_box = $a(this.lst_area, 'div', 'my-company-conversation-head', {marginBottom:'7px'}, 'Messages by everyone to me
To send a message, click on the user on the left') } - this.lst = new wn.widgets.Listing({ + this.lst = new wn.ui.Listing({ parent: this.lst_area, as_dict: 1, no_result_message: (user==uid diff --git a/erpnext/hr/doctype/expense_voucher/expense_voucher.js b/erpnext/hr/doctype/expense_voucher/expense_voucher.js index 2e03567751..2363dbd696 100644 --- a/erpnext/hr/doctype/expense_voucher/expense_voucher.js +++ b/erpnext/hr/doctype/expense_voucher/expense_voucher.js @@ -100,7 +100,7 @@ cur_frm.cscript.sanctioned_amount = function(doc,cdt,cdn){ cur_frm.cscript.calculate_total(doc,cdt,cdn); } -$import(Notification Control); +wn.require('erpnext/setup/doctype/notification_control/notification_control.js'); cur_frm.cscript['Approve'] = function(doc,cdt,cdn){ @@ -244,7 +244,6 @@ cur_frm.cscript['Update Voucher'] = function(doc){ }); } -$import(Notification Control) cur_frm.cscript.on_submit = function(doc, cdt, cdn) { var args = { type: 'Expense Voucher', diff --git a/erpnext/knowledge_base/page/question_view/question_view.js b/erpnext/knowledge_base/page/question_view/question_view.js index 578347188e..a193f16f11 100644 --- a/erpnext/knowledge_base/page/question_view/question_view.js +++ b/erpnext/knowledge_base/page/question_view/question_view.js @@ -131,7 +131,7 @@ KBAnswerList = function(args) { this.make_list = function() { - this.list = new wn.widgets.Listing({ + this.list = new wn.ui.Listing({ parent: me.parent, as_dict: 1, no_result_message: 'No answers yet, be the first one to answer!', @@ -185,4 +185,4 @@ KBAnswer = function(body, data, ans_list) { } -$import(knowledge_base/page/kb_common/kb_common.js); \ No newline at end of file +wn.require('erpnext/knowledge_base/page/kb_common/kb_common.js'); \ No newline at end of file diff --git a/erpnext/knowledge_base/page/questions/questions.js b/erpnext/knowledge_base/page/questions/questions.js index 7261cd88f9..6b0ca25079 100644 --- a/erpnext/knowledge_base/page/questions/questions.js +++ b/erpnext/knowledge_base/page/questions/questions.js @@ -107,7 +107,7 @@ function KnowledgeBase(w) { this.list_area = $a(w, 'div', '', {marginRight:'13px'}) this.no_result = $a(w, 'div','help_box',{display:'none'},'No questions asked yet! Be the first one to ask') - this.list = new wn.widgets.Listing({ + this.list = new wn.ui.Listing({ parent: this.list_area, no_results_message: 'No questions found. Ask a new question!', as_dict: 1, @@ -215,4 +215,4 @@ KBQuestion = function(parent, det, kb) { this.make() } -$import(knowledge_base/page/kb_common/kb_common.js); \ No newline at end of file +wn.require('erpnext/knowledge_base/page/kb_common/kb_common.js'); \ No newline at end of file diff --git a/erpnext/patches/before_jan_2012/Discount_purchase_cycle.py b/erpnext/patches/before_jan_2012/Discount_purchase_cycle.py index 8fee8c5cf6..9f0a5c0cee 100644 --- a/erpnext/patches/before_jan_2012/Discount_purchase_cycle.py +++ b/erpnext/patches/before_jan_2012/Discount_purchase_cycle.py @@ -16,7 +16,7 @@ def execute(): import webnotes - from webnotes.modules.module_manager import reload_doc + from webnotes.modules import reload_doc reload_doc('accounts', 'doctype', 'pv_detail') reload_doc('buying', 'doctype', 'po_detail') diff --git a/erpnext/patches/before_jan_2012/accounts_default_form.py b/erpnext/patches/before_jan_2012/accounts_default_form.py index 282ebf573b..eb8f58699e 100644 --- a/erpnext/patches/before_jan_2012/accounts_default_form.py +++ b/erpnext/patches/before_jan_2012/accounts_default_form.py @@ -16,7 +16,7 @@ def execute(): import webnotes - from webnotes.modules.module_manager import reload_doc + from webnotes.modules import reload_doc reload_doc('setup', 'doctype', 'company') reload_doc('setup', 'doctype', 'manage_account') diff --git a/erpnext/patches/before_jan_2012/auto_indent.py b/erpnext/patches/before_jan_2012/auto_indent.py index 7373c39bc6..a472d80562 100644 --- a/erpnext/patches/before_jan_2012/auto_indent.py +++ b/erpnext/patches/before_jan_2012/auto_indent.py @@ -16,7 +16,7 @@ def execute(): import webnotes - from webnotes.modules.module_manager import reload_doc + from webnotes.modules import reload_doc reload_doc('setup', 'doctype', 'manage_account') reload_doc('stock', 'doctype', 'item') webnotes.conn.sql("delete from `tabDocField` where fieldname='minimum_inventory_level' and parent='item'") diff --git a/erpnext/patches/before_jan_2012/c_form_patch.py b/erpnext/patches/before_jan_2012/c_form_patch.py index 8c00891964..307dabc4d2 100644 --- a/erpnext/patches/before_jan_2012/c_form_patch.py +++ b/erpnext/patches/before_jan_2012/c_form_patch.py @@ -16,7 +16,7 @@ def execute(): import webnotes - from webnotes.modules.module_manager import reload_doc + from webnotes.modules import reload_doc reload_doc('accounts', 'doctype', 'receivable_voucher') reload_doc('accounts', 'doctype', 'c_form') diff --git a/erpnext/patches/before_jan_2012/deploy_email_digest.py b/erpnext/patches/before_jan_2012/deploy_email_digest.py index 5adeb97142..8474b640dc 100644 --- a/erpnext/patches/before_jan_2012/deploy_email_digest.py +++ b/erpnext/patches/before_jan_2012/deploy_email_digest.py @@ -21,7 +21,7 @@ def execute(): * Reload email_digest doctype * Create default email digest """ - from webnotes.modules.module_manager import reload_doc + from webnotes.modules import reload_doc # Minor fix in print_format doctype #reload_doc('core', 'doctype', 'print_format') diff --git a/erpnext/patches/before_jan_2012/employeewise_balance_leave_report.py b/erpnext/patches/before_jan_2012/employeewise_balance_leave_report.py index bab119e16f..83f2143a9c 100644 --- a/erpnext/patches/before_jan_2012/employeewise_balance_leave_report.py +++ b/erpnext/patches/before_jan_2012/employeewise_balance_leave_report.py @@ -22,7 +22,7 @@ """ def execute(): from webnotes.model.doc import Document - from webnotes.modules.module_manager import reload_doc + from webnotes.modules import reload_doc reload_doc('hr', 'search_criteria', 'employeewise_balance_leave_report') d = Document('Search Criteria', 'employeewise_balance_leave_report') d.criteria_name = 'Employee Leave Balance Report' diff --git a/erpnext/patches/before_jan_2012/erpnext_structure_cleanup.py b/erpnext/patches/before_jan_2012/erpnext_structure_cleanup.py index aab64a0655..a9dcd751c2 100644 --- a/erpnext/patches/before_jan_2012/erpnext_structure_cleanup.py +++ b/erpnext/patches/before_jan_2012/erpnext_structure_cleanup.py @@ -19,7 +19,7 @@ import webnotes from webnotes.model import delete_doc -from webnotes.modules.module_manager import reload_doc +from webnotes.modules import reload_doc from webnotes.modules.export_module import export_to_files sql = webnotes.conn.sql diff --git a/erpnext/patches/before_jan_2012/install_print_formats.py b/erpnext/patches/before_jan_2012/install_print_formats.py index 3a18aae43d..ab0067c99d 100644 --- a/erpnext/patches/before_jan_2012/install_print_formats.py +++ b/erpnext/patches/before_jan_2012/install_print_formats.py @@ -68,7 +68,7 @@ def execute(): """ Install print formats """ - from webnotes.modules.module_manager import reload_doc + from webnotes.modules import reload_doc reload_doc('core', 'doctype', 'print_format') #copy_doctype_to_pfs() diff --git a/erpnext/patches/before_jan_2012/lcw_patch.py b/erpnext/patches/before_jan_2012/lcw_patch.py index b274069149..27e9a56f97 100644 --- a/erpnext/patches/before_jan_2012/lcw_patch.py +++ b/erpnext/patches/before_jan_2012/lcw_patch.py @@ -16,7 +16,7 @@ def execute(): import webnotes - from webnotes.modules.module_manager import reload_doc + from webnotes.modules import reload_doc reload_doc('stock', 'doctype', 'landed_cost_wizard') diff --git a/erpnext/patches/before_jan_2012/packing_slip.py b/erpnext/patches/before_jan_2012/packing_slip.py index 23c34d9d31..7fe2d5d44f 100644 --- a/erpnext/patches/before_jan_2012/packing_slip.py +++ b/erpnext/patches/before_jan_2012/packing_slip.py @@ -16,7 +16,7 @@ def execute(): import webnotes - from webnotes.modules.module_manager import reload_doc + from webnotes.modules import reload_doc reload_doc('stock', 'doctype', 'delivery_note_detail') reload_doc('stock', 'Print Format', 'Delivery Note Packing List Wise') diff --git a/erpnext/patches/before_jan_2012/price_list_patch.py b/erpnext/patches/before_jan_2012/price_list_patch.py index ce2ff4a3e1..6cd3f9bfb3 100644 --- a/erpnext/patches/before_jan_2012/price_list_patch.py +++ b/erpnext/patches/before_jan_2012/price_list_patch.py @@ -16,7 +16,7 @@ def execute(): import webnotes - from webnotes.modules.module_manager import reload_doc + from webnotes.modules import reload_doc reload_doc('accounts', 'doctype', 'receivable_voucher') reload_doc('stock', 'doctype', 'delivery_note') diff --git a/erpnext/patches/before_jan_2012/project_patch.py b/erpnext/patches/before_jan_2012/project_patch.py index f4b0ea6d7c..df0e1e93be 100644 --- a/erpnext/patches/before_jan_2012/project_patch.py +++ b/erpnext/patches/before_jan_2012/project_patch.py @@ -16,7 +16,7 @@ def execute(): import webnotes - from webnotes.modules.module_manager import reload_doc + from webnotes.modules import reload_doc sql = webnotes.conn.sql # Reload item table diff --git a/erpnext/patches/before_jan_2012/reload_address.py b/erpnext/patches/before_jan_2012/reload_address.py index 3ef80d8de6..ae68f6f493 100644 --- a/erpnext/patches/before_jan_2012/reload_address.py +++ b/erpnext/patches/before_jan_2012/reload_address.py @@ -16,6 +16,6 @@ def execute(): import webnotes - from webnotes.modules.module_manager import reload_doc + from webnotes.modules import reload_doc reload_doc('utilities', 'doctype', 'address') diff --git a/erpnext/patches/before_jan_2012/reload_bom.py b/erpnext/patches/before_jan_2012/reload_bom.py index f925bc6212..cbacce1c4b 100644 --- a/erpnext/patches/before_jan_2012/reload_bom.py +++ b/erpnext/patches/before_jan_2012/reload_bom.py @@ -16,6 +16,6 @@ def execute(): import webnotes - from webnotes.modules.module_manager import reload_doc + from webnotes.modules import reload_doc reload_doc('production', 'doctype', 'bill_of_materials') diff --git a/erpnext/patches/before_jan_2012/reload_doclayer.py b/erpnext/patches/before_jan_2012/reload_doclayer.py index 4ab077ede5..2c6e23e0a1 100644 --- a/erpnext/patches/before_jan_2012/reload_doclayer.py +++ b/erpnext/patches/before_jan_2012/reload_doclayer.py @@ -18,7 +18,7 @@ Reload DocLayer, DocLayerField and Print Format doctypes """ def execute(): - from webnotes.modules.module_manager import reload_doc + from webnotes.modules import reload_doc reload_doc('core', 'doctype', 'print_format') reload_doc('core', 'doctype', 'doclayer') reload_doc('core', 'doctype', 'doclayerfield') diff --git a/erpnext/patches/before_jan_2012/reload_email_digest.py b/erpnext/patches/before_jan_2012/reload_email_digest.py index 13a2614dc1..15cbfc3226 100644 --- a/erpnext/patches/before_jan_2012/reload_email_digest.py +++ b/erpnext/patches/before_jan_2012/reload_email_digest.py @@ -15,5 +15,5 @@ # along with this program. If not, see . def execute(): - from webnotes.modules.module_manager import reload_doc + from webnotes.modules import reload_doc reload_doc('Setup', 'DocType', 'Email Digest') diff --git a/erpnext/patches/before_jan_2012/reload_employeewise_balance_leave_report.py b/erpnext/patches/before_jan_2012/reload_employeewise_balance_leave_report.py index b60d3d4a0a..53183cb134 100644 --- a/erpnext/patches/before_jan_2012/reload_employeewise_balance_leave_report.py +++ b/erpnext/patches/before_jan_2012/reload_employeewise_balance_leave_report.py @@ -16,5 +16,5 @@ def execute(): import webnotes - from webnotes.modules.module_manager import reload_doc + from webnotes.modules import reload_doc reload_doc('hr', 'search_criteria', 'employeewise_balance_leave_report') diff --git a/erpnext/patches/before_jan_2012/reload_flat_bom.py b/erpnext/patches/before_jan_2012/reload_flat_bom.py index a46ad5e8dc..020bd7e5c6 100644 --- a/erpnext/patches/before_jan_2012/reload_flat_bom.py +++ b/erpnext/patches/before_jan_2012/reload_flat_bom.py @@ -16,7 +16,7 @@ def execute(): from webnotes.modules import webnotes - from webnotes.modules.module_manager import reload_doc + from webnotes.modules import reload_doc reload_doc('production', 'doctype', 'flat_bom_detail') reload_doc('production', 'doctype', 'bom_material') diff --git a/erpnext/patches/before_jan_2012/reload_gl_mapper.py b/erpnext/patches/before_jan_2012/reload_gl_mapper.py index 27f2c58560..c43ab67081 100644 --- a/erpnext/patches/before_jan_2012/reload_gl_mapper.py +++ b/erpnext/patches/before_jan_2012/reload_gl_mapper.py @@ -16,7 +16,7 @@ def execute(): import webnotes - from webnotes.modules.module_manager import reload_doc + from webnotes.modules import reload_doc # reload jv gl mapper reload_doc('accounts', 'GL Mapper', 'Journal Voucher') diff --git a/erpnext/patches/before_jan_2012/reload_lc_wizard.py b/erpnext/patches/before_jan_2012/reload_lc_wizard.py index 7645419252..e3df031c65 100644 --- a/erpnext/patches/before_jan_2012/reload_lc_wizard.py +++ b/erpnext/patches/before_jan_2012/reload_lc_wizard.py @@ -16,7 +16,7 @@ def execute(): import webnotes - from webnotes.modules.module_manager import reload_doc + from webnotes.modules import reload_doc from webnotes.model import delete_doc delete_doc('DocType', 'Landed Cost Wizard') diff --git a/erpnext/patches/before_jan_2012/reload_print_format.py b/erpnext/patches/before_jan_2012/reload_print_format.py index 37b83a6d21..9948beb24f 100644 --- a/erpnext/patches/before_jan_2012/reload_print_format.py +++ b/erpnext/patches/before_jan_2012/reload_print_format.py @@ -16,7 +16,7 @@ def execute(): import webnotes - from webnotes.modules.module_manager import reload_doc + from webnotes.modules import reload_doc from webnotes.model.doc import addchild from webnotes.model.code import get_obj reload_doc('stock', 'Print Format', 'Delivery Note Packing List Wise') diff --git a/erpnext/patches/before_jan_2012/reload_project_task.py b/erpnext/patches/before_jan_2012/reload_project_task.py index 14d39fd6ba..f17460371b 100644 --- a/erpnext/patches/before_jan_2012/reload_project_task.py +++ b/erpnext/patches/before_jan_2012/reload_project_task.py @@ -18,6 +18,6 @@ Reload Task Doctype of Project Module """ def execute(): - from webnotes.modules.module_manager import reload_doc + from webnotes.modules import reload_doc reload_doc('Projects', 'DocType', 'Ticket') diff --git a/erpnext/patches/before_jan_2012/reload_reco.py b/erpnext/patches/before_jan_2012/reload_reco.py index 93359920b3..782fc7fb82 100644 --- a/erpnext/patches/before_jan_2012/reload_reco.py +++ b/erpnext/patches/before_jan_2012/reload_reco.py @@ -16,7 +16,7 @@ def execute(): import webnotes - from webnotes.modules.module_manager import reload_doc + from webnotes.modules import reload_doc reload_doc('stock', 'doctype', 'stock_reconciliation') webnotes.conn.sql("delete from `tabDocField` where (label in ('Validate Data', 'Attachment HTML', 'Attachment') or fieldname in ('next_step', 'company', 'fiscal_year', 'amendment_date')) and parent = 'Stock Reconciliation'") diff --git a/erpnext/patches/before_jan_2012/reload_rv.py b/erpnext/patches/before_jan_2012/reload_rv.py index f41db4971b..43655636f4 100644 --- a/erpnext/patches/before_jan_2012/reload_rv.py +++ b/erpnext/patches/before_jan_2012/reload_rv.py @@ -16,7 +16,7 @@ def execute(): import webnotes - from webnotes.modules.module_manager import reload_doc + from webnotes.modules import reload_doc from webnotes.model.code import get_obj reload_doc('accounts', 'doctype', 'receivable_voucher') diff --git a/erpnext/patches/before_jan_2012/reload_support_ticket.py b/erpnext/patches/before_jan_2012/reload_support_ticket.py index 803754fba6..f889687ab4 100644 --- a/erpnext/patches/before_jan_2012/reload_support_ticket.py +++ b/erpnext/patches/before_jan_2012/reload_support_ticket.py @@ -16,7 +16,7 @@ def execute(): import webnotes - from webnotes.modules.module_manager import reload_doc + from webnotes.modules import reload_doc reload_doc('Support', 'DocType', 'Support Ticket') from webnotes.model.code import get_obj get_obj('DocType', 'Support Ticket').validate() diff --git a/erpnext/patches/before_jan_2012/sal_man_patch.py b/erpnext/patches/before_jan_2012/sal_man_patch.py index b8f53017d9..626d2e3803 100644 --- a/erpnext/patches/before_jan_2012/sal_man_patch.py +++ b/erpnext/patches/before_jan_2012/sal_man_patch.py @@ -17,7 +17,7 @@ def execute(): import webnotes - from webnotes.modules.module_manager import reload_doc + from webnotes.modules import reload_doc sql = webnotes.conn.sql reload_doc('hr', 'doctype', 'salary_manager') diff --git a/erpnext/patches/before_jan_2012/task_email_notification.py b/erpnext/patches/before_jan_2012/task_email_notification.py index 8d1a078d5f..9f7669ad02 100644 --- a/erpnext/patches/before_jan_2012/task_email_notification.py +++ b/erpnext/patches/before_jan_2012/task_email_notification.py @@ -16,5 +16,5 @@ def execute(): import webnotes - from webnotes.modules.module_manager import reload_doc + from webnotes.modules import reload_doc reload_doc('projects', 'doctype', 'ticket') diff --git a/erpnext/patches/jan_mar_2012/allocated_to_profile.py b/erpnext/patches/jan_mar_2012/allocated_to_profile.py index 32c7a2c2e2..ef0ee978fb 100644 --- a/erpnext/patches/jan_mar_2012/allocated_to_profile.py +++ b/erpnext/patches/jan_mar_2012/allocated_to_profile.py @@ -32,5 +32,5 @@ def execute(): AND label='Make Maintenance Visit' """) - from webnotes.modules.module_manager import reload_doc + from webnotes.modules import reload_doc reload_doc('support', 'doctype', 'customer_issue') diff --git a/erpnext/patches/jan_mar_2012/apps/todo_item.py b/erpnext/patches/jan_mar_2012/apps/todo_item.py index 6eec6fd624..bbef232444 100644 --- a/erpnext/patches/jan_mar_2012/apps/todo_item.py +++ b/erpnext/patches/jan_mar_2012/apps/todo_item.py @@ -18,5 +18,5 @@ def execute(): """ * Reload ToDo Item """ - from webnotes.modules.module_manager import reload_doc + from webnotes.modules import reload_doc reload_doc('utilities', 'doctype', 'todo_item') diff --git a/erpnext/patches/jan_mar_2012/customer_address_contact_patch.py b/erpnext/patches/jan_mar_2012/customer_address_contact_patch.py index 4671143a3a..32a2125143 100644 --- a/erpnext/patches/jan_mar_2012/customer_address_contact_patch.py +++ b/erpnext/patches/jan_mar_2012/customer_address_contact_patch.py @@ -26,7 +26,7 @@ def execute(): patch_primary_address() def reload_sc(): - from webnotes.modules.module_manager import reload_doc + from webnotes.modules import reload_doc reload_doc('selling', 'search_criteria', 'customer_address_contact') reload_doc('selling', 'Module Def', 'Selling') diff --git a/erpnext/patches/jan_mar_2012/deploy_packing_slip.py b/erpnext/patches/jan_mar_2012/deploy_packing_slip.py index 7a28ef8111..653ff58434 100644 --- a/erpnext/patches/jan_mar_2012/deploy_packing_slip.py +++ b/erpnext/patches/jan_mar_2012/deploy_packing_slip.py @@ -15,7 +15,7 @@ # along with this program. If not, see . import webnotes -from webnotes.modules.module_manager import reload_doc +from webnotes.modules import reload_doc def execute(): delete_fields_dn_detail() diff --git a/erpnext/patches/jan_mar_2012/doclabel_in_doclayer.py b/erpnext/patches/jan_mar_2012/doclabel_in_doclayer.py index a6f7a7c322..0b6f405ab4 100644 --- a/erpnext/patches/jan_mar_2012/doclabel_in_doclayer.py +++ b/erpnext/patches/jan_mar_2012/doclabel_in_doclayer.py @@ -24,5 +24,5 @@ def execute(): UPDATE `tabDocField` SET options=NULL WHERE parent='DocLayer' AND fieldname='doc_type' """) - from webnotes.modules.module_manager import reload_doc + from webnotes.modules import reload_doc reload_doc('core', 'doctype', 'doclayer') diff --git a/erpnext/patches/jan_mar_2012/dt_map_fix.py b/erpnext/patches/jan_mar_2012/dt_map_fix.py index f669009786..37732dfa5b 100644 --- a/erpnext/patches/jan_mar_2012/dt_map_fix.py +++ b/erpnext/patches/jan_mar_2012/dt_map_fix.py @@ -1,6 +1,6 @@ def execute(): import webnotes - from webnotes.modules.module_manager import reload_doc + from webnotes.modules import reload_doc webnotes.conn.sql("delete from `tabField Mapper Detail` where from_field = 'transaction_date' and parent in ('Sales Order-Delivery Note', 'Purchase Order-Purchase Receipt')") reload_doc('stock', 'DocType Mapper', 'Sales Order-Delivery Note') diff --git a/erpnext/patches/jan_mar_2012/email_settings_reload.py b/erpnext/patches/jan_mar_2012/email_settings_reload.py index ec6f05d304..85c683e1f8 100644 --- a/erpnext/patches/jan_mar_2012/email_settings_reload.py +++ b/erpnext/patches/jan_mar_2012/email_settings_reload.py @@ -25,5 +25,5 @@ def execute(): WHERE parent = 'Email Settings' AND fieldname = 'mail_port' """) - from webnotes.modules.module_manager import reload_doc + from webnotes.modules import reload_doc reload_doc('setup', 'doctype', 'email_settings') diff --git a/erpnext/patches/jan_mar_2012/jan_production_patches.py b/erpnext/patches/jan_mar_2012/jan_production_patches.py index d57fb9edce..479cecb845 100644 --- a/erpnext/patches/jan_mar_2012/jan_production_patches.py +++ b/erpnext/patches/jan_mar_2012/jan_production_patches.py @@ -20,7 +20,7 @@ def execute(): Patch includes: * Reload of Stock Entry Detail """ - from webnotes.modules.module_manager import reload_doc + from webnotes.modules import reload_doc reload_doc('stock', 'doctype', 'stock_entry_detail') reload_doc('stock', 'doctype', 'item_supplier') diff --git a/erpnext/patches/jan_mar_2012/label_cleanup.py b/erpnext/patches/jan_mar_2012/label_cleanup.py index b40f36f855..f158495a42 100644 --- a/erpnext/patches/jan_mar_2012/label_cleanup.py +++ b/erpnext/patches/jan_mar_2012/label_cleanup.py @@ -1,7 +1,7 @@ def execute(): import webnotes from webnotes.model import delete_doc - from webnotes.modules.module_manager import reload_doc + from webnotes.modules import reload_doc dt = { 'selling': ['quotation', 'sales_order', 'quotation_detail', 'sales_order_detail'], diff --git a/erpnext/patches/jan_mar_2012/pending_patches.py b/erpnext/patches/jan_mar_2012/pending_patches.py index 351200f88c..821a411cdf 100644 --- a/erpnext/patches/jan_mar_2012/pending_patches.py +++ b/erpnext/patches/jan_mar_2012/pending_patches.py @@ -17,7 +17,7 @@ def execute(): import webnotes from webnotes.model.code import get_obj - from webnotes.modules.module_manager import reload_doc + from webnotes.modules import reload_doc sql = webnotes.conn.sql reload_doc('hr', 'doctype', 'appraisal') diff --git a/erpnext/patches/jan_mar_2012/production_cleanup.py b/erpnext/patches/jan_mar_2012/production_cleanup.py index d0a5879b09..e715f27311 100644 --- a/erpnext/patches/jan_mar_2012/production_cleanup.py +++ b/erpnext/patches/jan_mar_2012/production_cleanup.py @@ -16,7 +16,7 @@ def execute(): import webnotes - from webnotes.modules.module_manager import reload_doc + from webnotes.modules import reload_doc from webnotes.model import delete_doc sql = webnotes.conn.sql diff --git a/erpnext/patches/jan_mar_2012/reload_doctype.py b/erpnext/patches/jan_mar_2012/reload_doctype.py index 51241b83c9..957864b0d4 100644 --- a/erpnext/patches/jan_mar_2012/reload_doctype.py +++ b/erpnext/patches/jan_mar_2012/reload_doctype.py @@ -16,5 +16,5 @@ def execute(): import webnotes - from webnotes.modules.module_manager import reload_doc + from webnotes.modules import reload_doc reload_doc('core', 'doctype', 'doctype') diff --git a/erpnext/patches/jan_mar_2012/reload_item.py b/erpnext/patches/jan_mar_2012/reload_item.py index c45b8187c9..e42b50b376 100644 --- a/erpnext/patches/jan_mar_2012/reload_item.py +++ b/erpnext/patches/jan_mar_2012/reload_item.py @@ -16,7 +16,7 @@ def execute(): import webnotes - from webnotes.modules.module_manager import reload_doc + from webnotes.modules import reload_doc reload_doc('stock', 'doctype', 'item') webnotes.conn.sql("update `tabItem` set re_order_qty = min_order_qty") diff --git a/erpnext/patches/jan_mar_2012/reload_po_pr_mapper.py b/erpnext/patches/jan_mar_2012/reload_po_pr_mapper.py index 4ed252b84d..58664294dd 100644 --- a/erpnext/patches/jan_mar_2012/reload_po_pr_mapper.py +++ b/erpnext/patches/jan_mar_2012/reload_po_pr_mapper.py @@ -16,5 +16,5 @@ def execute(): import webnotes - from webnotes.modules.module_manager import reload_doc + from webnotes.modules import reload_doc reload_doc('stock', 'DocType Mapper', 'Purchase Order-Purchase Receipt') diff --git a/erpnext/patches/jan_mar_2012/reload_quote.py b/erpnext/patches/jan_mar_2012/reload_quote.py new file mode 100644 index 0000000000..5715bb4efb --- /dev/null +++ b/erpnext/patches/jan_mar_2012/reload_quote.py @@ -0,0 +1,4 @@ +def execute(): + import webnotes + from webnotes.modules.module_manager import reload_doc + reload_doc('selling', 'doctype', 'quotation') diff --git a/erpnext/patches/jan_mar_2012/reload_table.py b/erpnext/patches/jan_mar_2012/reload_table.py index 481b46f7a5..28a597bc61 100644 --- a/erpnext/patches/jan_mar_2012/reload_table.py +++ b/erpnext/patches/jan_mar_2012/reload_table.py @@ -1,6 +1,6 @@ def execute(): import webnotes - from webnotes.modules.module_manager import reload_doc + from webnotes.modules import reload_doc reload_doc('selling', 'doctype', 'quotation_detail') reload_doc('selling', 'doctype', 'sales_order_detail') reload_doc('stock', 'doctype', 'delivery_note_detail') diff --git a/erpnext/patches/jan_mar_2012/remove_get_tds_button.py b/erpnext/patches/jan_mar_2012/remove_get_tds_button.py index fe804c0a17..8549e0d335 100644 --- a/erpnext/patches/jan_mar_2012/remove_get_tds_button.py +++ b/erpnext/patches/jan_mar_2012/remove_get_tds_button.py @@ -26,5 +26,5 @@ def execute(): AND fieldtype='Button' """) - from webnotes.modules.module_manager import reload_doc + from webnotes.modules import reload_doc reload_doc('accounts', 'doctype', 'journal_voucher') diff --git a/erpnext/patches/jan_mar_2012/rename_doctype_indent.py b/erpnext/patches/jan_mar_2012/rename_doctype_indent.py index 01aeebfb2f..4e026f720e 100644 --- a/erpnext/patches/jan_mar_2012/rename_doctype_indent.py +++ b/erpnext/patches/jan_mar_2012/rename_doctype_indent.py @@ -47,7 +47,7 @@ def reload_related_doctype(): * purchase_order * po_detail """ - from webnotes.modules.module_manager import reload_doc + from webnotes.modules import reload_doc reload_doc('buying', 'doctype', 'indent') reload_doc('buying', 'doctype', 'purchase_order') reload_doc('buying', 'doctype', 'po_detail') diff --git a/erpnext/patches/jan_mar_2012/serial_no_add_opt.py b/erpnext/patches/jan_mar_2012/serial_no_add_opt.py index 947c28d2d6..ec45c278b9 100644 --- a/erpnext/patches/jan_mar_2012/serial_no_add_opt.py +++ b/erpnext/patches/jan_mar_2012/serial_no_add_opt.py @@ -30,5 +30,5 @@ def execute(): webnotes.conn.commit() webnotes.conn.begin() - from webnotes.modules.module_manager import reload_doc + from webnotes.modules import reload_doc reload_doc('stock', 'doctype', 'serial_no') diff --git a/erpnext/patches/jan_mar_2012/stable_branch_shift_09_01_12.py b/erpnext/patches/jan_mar_2012/stable_branch_shift_09_01_12.py index e4078aa455..d155107aa6 100644 --- a/erpnext/patches/jan_mar_2012/stable_branch_shift_09_01_12.py +++ b/erpnext/patches/jan_mar_2012/stable_branch_shift_09_01_12.py @@ -15,7 +15,7 @@ # along with this program. If not, see . import webnotes -from webnotes.modules.module_manager import reload_doc +from webnotes.modules import reload_doc def execute(): """ diff --git a/erpnext/patches/jan_mar_2012/stock_entry_others_patch.py b/erpnext/patches/jan_mar_2012/stock_entry_others_patch.py new file mode 100644 index 0000000000..3a9441964c --- /dev/null +++ b/erpnext/patches/jan_mar_2012/stock_entry_others_patch.py @@ -0,0 +1,6 @@ +def execute(): + import webnotes + from webnotes.modules.module_manager import reload_doc + reload_doc('stock', 'doctype', 'stock_entry') + + webnotes.conn.sql("update `tabDocField` set options = concat(options, '\nOthers') where fieldname = 'purpose' and parent = 'Stock Entry'") diff --git a/erpnext/patches/jan_mar_2012/update_purpose_se.py b/erpnext/patches/jan_mar_2012/update_purpose_se.py new file mode 100644 index 0000000000..e2b7d9fc50 --- /dev/null +++ b/erpnext/patches/jan_mar_2012/update_purpose_se.py @@ -0,0 +1,3 @@ +def execute(): + import webnotes + webnotes.conn.sql("update `tabDocField` set options = replace(options, 'Others', 'Other') where fieldname = 'purpose' and parent = 'Stock Entry'") diff --git a/erpnext/patches/jan_mar_2012/update_se_fld_options.py b/erpnext/patches/jan_mar_2012/update_se_fld_options.py new file mode 100644 index 0000000000..fab0b19827 --- /dev/null +++ b/erpnext/patches/jan_mar_2012/update_se_fld_options.py @@ -0,0 +1,6 @@ +def execute(): + import webnotes + webnotes.conn.sql("update `tabDocField` set options = 'Bill Of Materials' where fieldname = 'bom_no' and parent = 'Stock Entry'") + + from webnotes.modules.module_manager import reload_doc + reload_doc('stock', 'doctype', 'stock_entry') diff --git a/erpnext/patches/jan_mar_2012/website/domain_list.py b/erpnext/patches/jan_mar_2012/website/domain_list.py index 25f50e2fb7..26824a4aec 100644 --- a/erpnext/patches/jan_mar_2012/website/domain_list.py +++ b/erpnext/patches/jan_mar_2012/website/domain_list.py @@ -16,7 +16,7 @@ def execute(): import webnotes - from webnotes.modules.module_manager import reload_doc + from webnotes.modules import reload_doc reload_doc('website', 'doctype', 'website_settings') res = webnotes.conn.sql("""\ diff --git a/erpnext/patches/mar_2012/pos_invoice_fix.py b/erpnext/patches/mar_2012/pos_invoice_fix.py new file mode 100644 index 0000000000..77ebcb4e4c --- /dev/null +++ b/erpnext/patches/mar_2012/pos_invoice_fix.py @@ -0,0 +1,5 @@ +def execute(): + import webnotes + webnotes.conn.sql("DELETE FROM `tabDocFormat` WHERE format='POS Invoice'") + from webnotes.modules.module_manager import reload_doc + reload_doc('accounts', 'Print Format', 'POS Invoice') diff --git a/erpnext/patches/old_patches/customer_address.py b/erpnext/patches/old_patches/customer_address.py index 44568ce3d9..4757c023fd 100644 --- a/erpnext/patches/old_patches/customer_address.py +++ b/erpnext/patches/old_patches/customer_address.py @@ -21,7 +21,7 @@ from webnotes.utils import load_json, cint, cstr from webnotes import msgprint, errprint def make_address(): - from webnotes.modules.module_manager import reload_doc + from webnotes.modules import reload_doc reload_doc('utilities','doctype','address') from webnotes.model.db_schema import updatedb @@ -128,7 +128,7 @@ def delete_unwanted_fields(): # export_to_files(record_list=[['DocType',dt]]) def reload_doc_files(): - from webnotes.modules.module_manager import reload_doc + from webnotes.modules import reload_doc reload_doc('utilities', 'doctype', 'contact') reload_doc('selling', 'doctype', 'customer') reload_doc('support', 'doctype', 'customer_issue') @@ -149,7 +149,7 @@ def reload_doc_files(): reload_doc('buying', 'doctype', 'supplier') def reload_mapper_files(): - from webnotes.modules.module_manager import reload_doc + from webnotes.modules import reload_doc reload_doc('Mapper', 'DocType Mapper', 'Customer Issue-Maintenance Visit') reload_doc('Mapper', 'DocType Mapper', 'Delivery Note-Installation Note') reload_doc('Mapper', 'DocType Mapper', 'Delivery Note-Receivable Voucher') diff --git a/erpnext/patches/old_patches/doctype_permission_patch.py b/erpnext/patches/old_patches/doctype_permission_patch.py index 0953864a00..b23277acc5 100644 --- a/erpnext/patches/old_patches/doctype_permission_patch.py +++ b/erpnext/patches/old_patches/doctype_permission_patch.py @@ -21,7 +21,7 @@ def set_doctype_permissions(): # remove descriptions webnotes.conn.sql("update tabDocType set description=null") - from webnotes.modules.module_manager import reload_doc + from webnotes.modules import reload_doc reload_doc('core','doctype','custom_script') reload_doc('core','doctype','custom_field') reload_doc('core','doctype','property_setter') diff --git a/erpnext/patches/old_patches/feed_patch.py b/erpnext/patches/old_patches/feed_patch.py index 1edac8840d..d1fa147dbf 100644 --- a/erpnext/patches/old_patches/feed_patch.py +++ b/erpnext/patches/old_patches/feed_patch.py @@ -110,7 +110,7 @@ def set_subjects_and_tagfields(): def support_patch(): # relaod support and other doctypes - from webnotes.modules.module_manager import reload_doc + from webnotes.modules import reload_doc webnotes.model.delete_doc('DocType','Support Ticket') reload_doc('setup','doctype','support_email_settings') diff --git a/erpnext/patches/old_patches/patch_1.py b/erpnext/patches/old_patches/patch_1.py index 4176bf5e66..9e9cb6f1a2 100644 --- a/erpnext/patches/old_patches/patch_1.py +++ b/erpnext/patches/old_patches/patch_1.py @@ -781,12 +781,12 @@ elif patch_no == 184: except: pass # import - from webnotes.modules.module_manager import reload_doc + from webnotes.modules import reload_doc reload_doc('event_updates','doctype','feed') elif patch_no==185: sql("delete from tabDocTrigger where method = 'webnotes.widgets.follow.on_docsave'") elif patch_no==186: - from webnotes.modules.module_manager import reload_doc + from webnotes.modules import reload_doc reload_doc('event_updates','doctype','feed') elif patch_no == 187: sql("update tabDocType set autoname = '' where name = 'QA Inspection Report'") @@ -807,7 +807,7 @@ elif patch_no == 194: sql("delete from `tabModule Def Item` where parent = 'SRM' and doc_name = 'Landed Cost Wizard' and display_name = 'Landed Cost Wizard'") import_from_files(record_list = [['stock', 'Module Def', 'Material Management']]) elif patch_no == 195: - from webnotes.modules.module_manager import reload_doc + from webnotes.modules import reload_doc reload_doc('setup','doctype','manage_account') elif patch_no == 196: sql("update `tabModule Def` set module_page = null where name = 'Material Management'") diff --git a/erpnext/patches/patch.py b/erpnext/patches/patch.py index 744b102b35..5b9f7a0c47 100644 --- a/erpnext/patches/patch.py +++ b/erpnext/patches/patch.py @@ -24,7 +24,7 @@ last_patch = 388 def execute(patch_no): return import webnotes - from webnotes.modules.module_manager import reload_doc + from webnotes.modules import reload_doc from webnotes.model.code import get_obj sql = webnotes.conn.sql @@ -377,7 +377,7 @@ def execute(patch_no): elif patch_no == 370: sql("update `tabDocField` set `hidden` = 0 where fieldname = 'group_or_ledger' and parent = 'Cost Center'") elif patch_no == 371: - from webnotes.modules.module_manager import reload_doc + from webnotes.modules import reload_doc reload_doc('setup', 'doctype','features_setup') flds = ['page_break', 'projects', 'packing_details', 'discounts', 'brands', 'item_batch_nos', 'after_sales_installations', 'item_searial_nos', 'item_group_in_details', 'exports', 'imports', 'item_advanced', 'sales_extras', 'more_info', 'quality', 'manufacturing', 'pos', 'item_serial_nos'] @@ -393,7 +393,7 @@ def execute(patch_no): get_obj('Features Setup', 'Features Setup').doc.save() elif patch_no == 372: - from webnotes.modules.module_manager import reload_doc + from webnotes.modules import reload_doc reload_doc('setup', 'doctype','features_setup') flds = ['page_break', 'projects', 'packing_details', 'discounts', 'brands', 'item_batch_nos', 'after_sales_installations', 'item_searial_nos', 'item_group_in_details', 'exports', 'imports', 'item_advanced', 'sales_extras', 'more_info', 'quality', 'manufacturing', 'pos', 'item_serial_nos'] diff --git a/erpnext/patches/patch_list.py b/erpnext/patches/patch_list.py index 2bfaf08e15..3bf4b6a3ae 100644 --- a/erpnext/patches/patch_list.py +++ b/erpnext/patches/patch_list.py @@ -187,5 +187,25 @@ patch_list = [ 'patch_file': 'update_stockreco_perm', 'description': 'Update stock reco permission' }, + { + 'patch_module': 'patches.jan_mar_2012', + 'patch_file': 'stock_entry_others_patch', + 'description': 'new purpose others in stock entry' + }, + { + 'patch_module': 'patches.jan_mar_2012', + 'patch_file': 'reload_quote', + 'description': 'reload quote: organization fld added' + }, + { + 'patch_module': 'patches.jan_mar_2012', + 'patch_file': 'update_purpose_se', + 'description': 'Purpose SE: Others to Other' + }, + { + 'patch_module': 'patches.jan_mar_2012', + 'patch_file': 'update_se_fld_options', + 'description': 'Purpose SE: Others to Other' + }, ] diff --git a/erpnext/projects/Module Def/Projects/Projects.txt b/erpnext/projects/Module Def/Projects/Projects.txt deleted file mode 100644 index f8cf6f7f72..0000000000 --- a/erpnext/projects/Module Def/Projects/Projects.txt +++ /dev/null @@ -1,141 +0,0 @@ -[ - { - '_last_update': '1300959287', - 'creation': '2010-11-30 17:31:44', - 'disabled': 'No', - 'docstatus': 0, - 'doctype': u'Module Def', - 'doctype_list': None, - 'file_list': 'undefined,undefined', - 'idx': None, - 'is_hidden': 'No', - 'last_updated_date': '2011-03-10 15:57:47', - 'modified': '2011-03-24 15:07:53', - 'modified_by': 'Administrator', - 'module_desc': '
', - 'module_icon': 'puzzle.png', - 'module_label': 'Projects', - 'module_name': 'Projects', - 'module_page': None, - 'module_seq': 2, - 'name': 'Projects', - 'owner': 'Administrator', - 'parent': None, - 'parentfield': None, - 'parenttype': None, - 'trash_reason': None, - 'widget_code': None - }, - { - 'click_function': None, - 'creation': '2010-11-30 17:31:44', - 'description': None, - 'display_name': 'Project', - 'doc_name': 'Project', - 'doc_type': 'Forms', - 'docstatus': 0, - 'doctype': 'Module Def Item', - 'fields': None, - 'hide': None, - 'icon': None, - 'idx': 1, - 'modified': '2011-03-24 15:07:53', - 'modified_by': 'Administrator', - 'name': 'MDI00099', - 'owner': 'Administrator', - 'parent': 'Projects', - 'parentfield': 'items', - 'parenttype': 'Module Def' - }, - { - 'click_function': None, - 'creation': None, - 'description': None, - 'display_name': 'Task', - 'doc_name': 'Ticket', - 'doc_type': 'Forms', - 'docstatus': 0, - 'doctype': 'Module Def Item', - 'fields': None, - 'hide': None, - 'icon': None, - 'idx': 2, - 'modified': '2011-03-24 15:07:53', - 'modified_by': 'Administrator', - 'name': 'MDI00285', - 'owner': None, - 'parent': 'Projects', - 'parentfield': 'items', - 'parenttype': 'Module Def' - }, - { - 'click_function': None, - 'creation': None, - 'description': None, - 'display_name': 'Gantt Chart', - 'doc_name': 'Projects', - 'doc_type': 'Pages', - 'docstatus': 0, - 'doctype': 'Module Def Item', - 'fields': None, - 'hide': None, - 'icon': None, - 'idx': 3, - 'modified': '2011-03-24 15:07:53', - 'modified_by': 'Administrator', - 'name': 'MDI00286', - 'owner': None, - 'parent': 'Projects', - 'parentfield': 'items', - 'parenttype': 'Module Def' - }, - { - 'click_function': None, - 'creation': None, - 'description': None, - 'display_name': 'Timesheet', - 'doc_name': 'Timesheet', - 'doc_type': 'Forms', - 'docstatus': 0, - 'doctype': 'Module Def Item', - 'fields': None, - 'hide': None, - 'icon': None, - 'idx': 4, - 'modified': '2011-03-24 15:07:53', - 'modified_by': 'Administrator', - 'name': 'MDI00287', - 'owner': None, - 'parent': 'Projects', - 'parentfield': 'items', - 'parenttype': 'Module Def' - }, - { - 'creation': '2010-11-30 17:31:44', - 'docstatus': 0, - 'doctype': 'Module Def Role', - 'idx': 1, - 'modified': '2011-03-24 15:07:53', - 'modified_by': 'Administrator', - 'name': 'MDR00012', - 'owner': 'Administrator', - 'parent': 'Projects', - 'parentfield': 'roles', - 'parenttype': 'Module Def', - 'role': 'Projects User' - }, - { - 'creation': '2010-11-30 17:31:44', - 'docstatus': 0, - 'doctype': 'Module Def Role', - 'idx': 2, - 'modified': '2011-03-24 15:07:53', - 'modified_by': 'Administrator', - 'name': 'MDR00013', - 'owner': 'Administrator', - 'parent': 'Projects', - 'parentfield': 'roles', - 'parenttype': 'Module Def', - 'role': 'System Manager' - } -] \ No newline at end of file diff --git a/erpnext/projects/doctype/project/help.md b/erpnext/projects/doctype/project/help.md new file mode 100644 index 0000000000..0043f04625 --- /dev/null +++ b/erpnext/projects/doctype/project/help.md @@ -0,0 +1,5 @@ +You can use projects to: + +1. Track budgets (Purchase Orders, Invoices). +2. Track material consumption. +3. Create and assign tasks (and view them on a Gantt Chart). \ No newline at end of file diff --git a/erpnext/projects/doctype/project/project.txt b/erpnext/projects/doctype/project/project.txt index 3d57e12b91..936fd7dec9 100644 --- a/erpnext/projects/doctype/project/project.txt +++ b/erpnext/projects/doctype/project/project.txt @@ -5,47 +5,51 @@ { 'creation': '2010-08-08 17:09:14', 'docstatus': 0, - 'modified': '2011-01-05 15:24:43', - 'modified_by': 'Administrator', - 'owner': 'Administrator' + 'modified': '2012-03-12 16:07:48', + 'modified_by': u'Administrator', + 'owner': u'Administrator' }, # These values are common for all DocType { - '_last_update': '1305714062', + '_last_update': u'1331542508', + 'allow_attach': 1, 'allow_trash': 1, - 'autoname': 'field:project_name', - 'colour': 'White:FFF', + 'autoname': u'field:project_name', + 'colour': u'White:FFF', + 'default_print_format': u'Standard', 'doctype': 'DocType', - 'document_type': 'Master', - 'module': 'Projects', + 'document_type': u'Master', + 'max_attachments': 4, + 'module': u'Projects', 'name': '__common__', - 'search_fields': 'customer, status, priority, is_active', - 'section_style': 'Tabbed', - 'server_code_error': ' ', - 'subject': ' ', - 'tag_fields': 'status', - 'version': 32 + 'search_fields': u'customer, status, priority, is_active', + 'section_style': u'Tabbed', + 'server_code_error': u' ', + 'show_in_menu': 0, + 'subject': u' ', + 'tag_fields': u'status', + 'version': 38 }, # These values are common for all DocField { - 'doctype': 'DocField', + 'doctype': u'DocField', 'name': '__common__', - 'parent': 'Project', - 'parentfield': 'fields', - 'parenttype': 'DocType' + 'parent': u'Project', + 'parentfield': u'fields', + 'parenttype': u'DocType' }, # These values are common for all DocPerm { 'cancel': 1, 'create': 1, - 'doctype': 'DocPerm', + 'doctype': u'DocPerm', 'name': '__common__', - 'parent': 'Project', - 'parentfield': 'permissions', - 'parenttype': 'DocType', + 'parent': u'Project', + 'parentfield': u'permissions', + 'parenttype': u'DocType', 'permlevel': 0, 'read': 1, 'write': 1 @@ -54,45 +58,58 @@ # DocType, Project { 'doctype': 'DocType', - 'name': 'Project' + 'name': u'Project' }, # DocPerm { - 'doctype': 'DocPerm', - 'idx': 1, - 'role': 'All' + 'doctype': u'DocPerm', + 'role': u'All' }, # DocPerm { - 'doctype': 'DocPerm', - 'idx': 2, - 'role': 'Projects User' + 'doctype': u'DocPerm', + 'role': u'Projects User' }, # DocField { - 'colour': 'White:FFF', - 'description': 'Helps you keep track of your projects and links to Tasks. You can tag a task to a project to track its progress', - 'doctype': 'DocField', - 'fieldtype': 'Section Break', - 'idx': 1, - 'label': 'Basic Info', - 'oldfieldtype': 'Section Break', + 'colour': u'White:FFF', + 'description': u'Helps you keep track of your projects and links to Tasks. You can tag a task to a project to track its progress', + 'doctype': u'DocField', + 'fieldtype': u'Section Break', + 'label': u'Basic Info', + 'oldfieldtype': u'Section Break', 'permlevel': 0 }, # DocField { - 'description': 'Project will get saved and will be searchable with project name given', - 'doctype': 'DocField', - 'fieldname': 'project_name', - 'fieldtype': 'Data', - 'idx': 2, - 'label': 'Project Name', - 'oldfieldname': 'project_name', - 'oldfieldtype': 'Data', + 'description': u'Project will get saved and will be searchable with project name given', + 'doctype': u'DocField', + 'fieldname': u'project_name', + 'fieldtype': u'Data', + 'label': u'Project Name', + 'oldfieldname': u'project_name', + 'oldfieldtype': u'Data', + 'permlevel': 0, + 'reqd': 1 + }, + + # DocField + { + 'colour': u'White:FFF', + 'default': u'Open', + 'doctype': u'DocField', + 'fieldname': u'status', + 'fieldtype': u'Select', + 'in_filter': 1, + 'label': u'Status', + 'no_copy': 1, + 'oldfieldname': u'status', + 'oldfieldtype': u'Select', + 'options': u'Open\nCompleted\nCancelled', 'permlevel': 0, 'reqd': 1, 'search_index': 1 @@ -100,385 +117,357 @@ # DocField { - 'colour': 'White:FFF', - 'default': 'Open', - 'doctype': 'DocField', - 'fieldname': 'status', - 'fieldtype': 'Select', - 'idx': 3, + 'doctype': u'DocField', + 'fieldname': u'is_active', + 'fieldtype': u'Select', + 'label': u'Is Active', + 'oldfieldname': u'is_active', + 'oldfieldtype': u'Select', + 'options': u'Yes\nNo', + 'permlevel': 0 + }, + + # DocField + { + 'doctype': u'DocField', + 'fieldname': u'priority', + 'fieldtype': u'Select', + 'label': u'Priority', + 'oldfieldname': u'priority', + 'oldfieldtype': u'Select', + 'options': u'Medium\nLow\nHigh', + 'permlevel': 0 + }, + + # DocField + { + 'doctype': u'DocField', + 'fieldtype': u'Column Break', + 'permlevel': 0 + }, + + # DocField + { + 'doctype': u'DocField', + 'fieldname': u'project_type', + 'fieldtype': u'Data', + 'label': u'Project Type', + 'oldfieldname': u'project_type', + 'oldfieldtype': u'Data', + 'permlevel': 0 + }, + + # DocField + { + 'doctype': u'DocField', + 'fieldname': u'project_start_date', + 'fieldtype': u'Date', 'in_filter': 1, - 'label': 'Status', - 'oldfieldname': 'status', - 'oldfieldtype': 'Select', - 'options': 'Open\nCompleted\nCancelled', - 'permlevel': 0, - 'reqd': 1, - 'search_index': 0 - }, - - # DocField - { - 'doctype': 'DocField', - 'fieldname': 'is_active', - 'fieldtype': 'Select', - 'idx': 4, - 'label': 'Is Active', - 'oldfieldname': 'is_active', - 'oldfieldtype': 'Select', - 'options': 'Yes\nNo', + 'label': u'Project Start Date', + 'oldfieldname': u'project_start_date', + 'oldfieldtype': u'Date', 'permlevel': 0 }, # DocField { - 'doctype': 'DocField', - 'fieldname': 'priority', - 'fieldtype': 'Select', - 'idx': 5, - 'label': 'Priority', - 'oldfieldname': 'priority', - 'oldfieldtype': 'Select', - 'options': 'Medium\nLow\nHigh', + 'doctype': u'DocField', + 'fieldname': u'completion_date', + 'fieldtype': u'Date', + 'label': u'Completion Date', + 'oldfieldname': u'completion_date', + 'oldfieldtype': u'Date', 'permlevel': 0 }, # DocField { - 'doctype': 'DocField', - 'fieldname': 'project_value', - 'fieldtype': 'Currency', - 'idx': 6, - 'label': 'Project Value', - 'oldfieldname': 'project_value', - 'oldfieldtype': 'Currency', - 'permlevel': 0, - 'reqd': 1, - 'trigger': 'Client' - }, - - # DocField - { - 'doctype': 'DocField', - 'fieldname': 'gross_margin_value', - 'fieldtype': 'Currency', - 'idx': 7, - 'label': 'Gross Margin Value', - 'oldfieldname': 'gross_margin_value', - 'oldfieldtype': 'Currency', - 'permlevel': 0, - 'reqd': 1 - }, - - # DocField - { - 'doctype': 'DocField', - 'fieldname': 'per_gross_margin', - 'fieldtype': 'Currency', - 'idx': 8, - 'label': 'Gross Margin %', - 'oldfieldname': 'per_gross_margin', - 'oldfieldtype': 'Currency', - 'permlevel': 0, - 'reqd': 1 - }, - - # DocField - { - 'doctype': 'DocField', - 'fieldname': 'est_material_cost', - 'fieldtype': 'Currency', - 'idx': 9, - 'label': 'Estimated Material Cost', - 'oldfieldname': 'est_material_cost', - 'oldfieldtype': 'Currency', - 'permlevel': 0, - 'trigger': 'Client' - }, - - # DocField - { - 'doctype': 'DocField', - 'fieldname': 'project_type', - 'fieldtype': 'Data', - 'idx': 10, - 'label': 'Project Type', - 'oldfieldname': 'project_type', - 'oldfieldtype': 'Data', + 'doctype': u'DocField', + 'fieldname': u'act_completion_date', + 'fieldtype': u'Date', + 'label': u'Actual Completion Date', + 'oldfieldname': u'act_completion_date', + 'oldfieldtype': u'Date', 'permlevel': 0 }, # DocField { - 'doctype': 'DocField', - 'fieldname': 'project_start_date', - 'fieldtype': 'Date', - 'idx': 11, - 'in_filter': 1, - 'label': 'Project Start Date', - 'oldfieldname': 'project_start_date', - 'oldfieldtype': 'Date', - 'permlevel': 0 - }, - - # DocField - { - 'doctype': 'DocField', - 'fieldname': 'completion_date', - 'fieldtype': 'Date', - 'idx': 12, - 'label': 'Completion Date', - 'oldfieldname': 'completion_date', - 'oldfieldtype': 'Date', - 'permlevel': 0 - }, - - # DocField - { - 'doctype': 'DocField', - 'fieldname': 'act_completion_date', - 'fieldtype': 'Date', - 'idx': 13, - 'label': 'Actual Completion Date', - 'oldfieldname': 'act_completion_date', - 'oldfieldtype': 'Date', - 'permlevel': 0 - }, - - # DocField - { - 'doctype': 'DocField', - 'fieldname': 'amended_from', - 'fieldtype': 'Data', + 'doctype': u'DocField', + 'fieldname': u'amemdment_date', + 'fieldtype': u'Date', 'hidden': 1, - 'idx': 14, - 'label': 'Amended From', + 'label': u'Amemdment Date', 'no_copy': 1, - 'oldfieldname': 'amended_from', - 'oldfieldtype': 'Data', + 'oldfieldname': u'amemdment_date', + 'oldfieldtype': u'Date', + 'permlevel': 1 + }, + + # DocField + { + 'doctype': u'DocField', + 'fieldname': u'amended_from', + 'fieldtype': u'Data', + 'hidden': 1, + 'label': u'Amended From', + 'no_copy': 1, + 'oldfieldname': u'amended_from', + 'oldfieldtype': u'Data', 'permlevel': 1, 'print_hide': 0 }, # DocField { - 'doctype': 'DocField', - 'fieldname': 'amemdment_date', - 'fieldtype': 'Date', - 'hidden': 1, - 'idx': 15, - 'label': 'Amemdment Date', - 'no_copy': 1, - 'oldfieldname': 'amemdment_date', - 'oldfieldtype': 'Date', - 'permlevel': 1 - }, - - # DocField - { - 'doctype': 'DocField', - 'fieldtype': 'Section Break', - 'idx': 16, - 'label': 'Project Details', - 'oldfieldtype': 'Section Break', - 'options': 'Simple', + 'doctype': u'DocField', + 'fieldtype': u'Section Break', + 'label': u'Details', + 'oldfieldtype': u'Section Break', 'permlevel': 0 }, # DocField { - 'doctype': 'DocField', - 'fieldtype': 'Column Break', - 'idx': 17, - 'oldfieldtype': 'Column Break', + 'doctype': u'DocField', + 'fieldname': u'notes', + 'fieldtype': u'Text Editor', + 'label': u'Notes', + 'oldfieldname': u'notes', + 'oldfieldtype': u'Text Editor', + 'permlevel': 0 + }, + + # DocField + { + 'doctype': u'DocField', + 'fieldtype': u'Section Break', + 'label': u'Financials', + 'oldfieldtype': u'Section Break', + 'permlevel': 0 + }, + + # DocField + { + 'colour': u'White:FFF', + 'doctype': u'DocField', + 'fieldname': u'project_value', + 'fieldtype': u'Currency', + 'label': u'Project Value', + 'oldfieldname': u'project_value', + 'oldfieldtype': u'Currency', 'permlevel': 0, - 'width': '50%' + 'reqd': 0, + 'trigger': u'Client' }, # DocField { - 'doctype': 'DocField', - 'fieldtype': 'Section Break', - 'idx': 18, - 'oldfieldtype': 'Section Break', - 'options': 'Simple', + 'doctype': u'DocField', + 'fieldname': u'est_material_cost', + 'fieldtype': u'Currency', + 'label': u'Estimated Material Cost', + 'oldfieldname': u'est_material_cost', + 'oldfieldtype': u'Currency', + 'permlevel': 0, + 'trigger': u'Client' + }, + + # DocField + { + 'doctype': u'DocField', + 'fieldtype': u'Column Break', 'permlevel': 0 }, # DocField { - 'doctype': 'DocField', - 'fieldname': 'notes', - 'fieldtype': 'Text Editor', - 'idx': 19, - 'label': 'Notes', - 'oldfieldname': 'notes', - 'oldfieldtype': 'Text Editor', + 'colour': u'White:FFF', + 'doctype': u'DocField', + 'fieldname': u'per_gross_margin', + 'fieldtype': u'Currency', + 'label': u'Gross Margin %', + 'oldfieldname': u'per_gross_margin', + 'oldfieldtype': u'Currency', + 'permlevel': 0, + 'reqd': 0 + }, + + # DocField + { + 'colour': u'White:FFF', + 'doctype': u'DocField', + 'fieldname': u'gross_margin_value', + 'fieldtype': u'Currency', + 'label': u'Gross Margin Value', + 'oldfieldname': u'gross_margin_value', + 'oldfieldtype': u'Currency', + 'permlevel': 0, + 'reqd': 0 + }, + + # DocField + { + 'doctype': u'DocField', + 'fieldtype': u'Section Break', + 'label': u'Customer Details', + 'oldfieldtype': u'Section Break', 'permlevel': 0 }, # DocField { - 'doctype': 'DocField', - 'fieldtype': 'Section Break', - 'idx': 20, - 'label': 'Customer Details', - 'oldfieldtype': 'Section Break', - 'permlevel': 0 - }, - - # DocField - { - 'colour': 'White:FFF', - 'description': 'Select name of Customer to whom project belongs', - 'doctype': 'DocField', - 'fieldname': 'customer', - 'fieldtype': 'Link', - 'idx': 21, + 'colour': u'White:FFF', + 'description': u'Select name of Customer to whom project belongs', + 'doctype': u'DocField', + 'fieldname': u'customer', + 'fieldtype': u'Link', 'in_filter': 1, - 'label': 'Customer', - 'oldfieldname': 'customer', - 'oldfieldtype': 'Link', - 'options': 'Customer', + 'label': u'Customer', + 'oldfieldname': u'customer', + 'oldfieldtype': u'Link', + 'options': u'Customer', 'permlevel': 0, 'print_hide': 1, 'reqd': 0, 'search_index': 1, - 'trigger': 'Client' + 'trigger': u'Client' }, # DocField { - 'doctype': 'DocField', - 'fieldname': 'customer_name', - 'fieldtype': 'Data', - 'idx': 22, + 'doctype': u'DocField', + 'fieldname': u'customer_name', + 'fieldtype': u'Data', 'in_filter': 1, - 'label': 'Customer Name', - 'oldfieldname': 'customer_name', - 'oldfieldtype': 'Data', + 'label': u'Customer Name', + 'oldfieldname': u'customer_name', + 'oldfieldtype': u'Data', 'permlevel': 1, - 'search_index': 0 + 'search_index': 1 }, # DocField { - 'doctype': 'DocField', - 'fieldname': 'customer_address', - 'fieldtype': 'Small Text', - 'idx': 23, - 'label': 'Customer Address', - 'oldfieldname': 'customer_address', - 'oldfieldtype': 'Small Text', + 'doctype': u'DocField', + 'fieldname': u'customer_address', + 'fieldtype': u'Small Text', + 'label': u'Customer Address', + 'oldfieldname': u'customer_address', + 'oldfieldtype': u'Small Text', 'permlevel': 1 }, # DocField { - 'colour': 'White:FFF', - 'doctype': 'DocField', - 'fieldname': 'contact_person', - 'fieldtype': 'Link', - 'idx': 24, + 'colour': u'White:FFF', + 'doctype': u'DocField', + 'fieldname': u'contact_person', + 'fieldtype': u'Link', 'in_filter': 1, - 'label': 'Contact Person', - 'oldfieldname': 'contact_person', - 'oldfieldtype': 'Link', + 'label': u'Contact Person', + 'oldfieldname': u'contact_person', + 'oldfieldtype': u'Link', 'permlevel': 0, 'reqd': 0, - 'trigger': 'Client' + 'trigger': u'Client' }, # DocField { - 'colour': 'White:FFF', - 'doctype': 'DocField', - 'fieldname': 'territory', - 'fieldtype': 'Link', - 'idx': 25, + 'colour': u'White:FFF', + 'doctype': u'DocField', + 'fieldname': u'territory', + 'fieldtype': u'Link', 'in_filter': 1, - 'label': 'Territory', - 'oldfieldname': 'territory', - 'oldfieldtype': 'Link', - 'options': 'Territory', + 'label': u'Territory', + 'oldfieldname': u'territory', + 'oldfieldtype': u'Link', + 'options': u'Territory', 'permlevel': 0, 'reqd': 0, - 'search_index': 0, - 'trigger': 'Client' + 'trigger': u'Client' }, # DocField { - 'doctype': 'DocField', - 'fieldname': 'contact_no', - 'fieldtype': 'Data', - 'idx': 26, - 'label': 'Contact No', - 'oldfieldname': 'contact_no', - 'oldfieldtype': 'Data', + 'doctype': u'DocField', + 'fieldname': u'contact_no', + 'fieldtype': u'Data', + 'label': u'Contact No', + 'oldfieldname': u'contact_no', + 'oldfieldtype': u'Data', 'permlevel': 1 }, # DocField { - 'doctype': 'DocField', - 'fieldname': 'email_id', - 'fieldtype': 'Data', - 'idx': 27, - 'label': 'Email Id', - 'oldfieldname': 'email_id', - 'oldfieldtype': 'Data', + 'doctype': u'DocField', + 'fieldname': u'email_id', + 'fieldtype': u'Data', + 'label': u'Email Id', + 'oldfieldname': u'email_id', + 'oldfieldtype': u'Data', 'permlevel': 1 }, # DocField { - 'doctype': 'DocField', - 'fieldname': 'customer_group', - 'fieldtype': 'Link', - 'idx': 28, - 'label': 'Customer Group', - 'oldfieldname': 'customer_group', - 'oldfieldtype': 'Link', - 'options': 'Customer Group', - 'permlevel': 1, - 'search_index': 0 + 'doctype': u'DocField', + 'fieldname': u'customer_group', + 'fieldtype': u'Link', + 'label': u'Customer Group', + 'oldfieldname': u'customer_group', + 'oldfieldtype': u'Link', + 'options': u'Customer Group', + 'permlevel': 1 }, # DocField { - 'colour': 'White:FFF', - 'description': 'Important dates and commitments in your project life cycle', - 'doctype': 'DocField', - 'fieldtype': 'Section Break', - 'idx': 29, - 'label': 'Milestones', - 'oldfieldtype': 'Section Break', + 'colour': u'White:FFF', + 'description': u'Important dates and commitments in your project life cycle', + 'doctype': u'DocField', + 'fieldtype': u'Section Break', + 'label': u'Milestones', + 'oldfieldtype': u'Section Break', 'permlevel': 0 }, # DocField { - 'doctype': 'DocField', - 'fieldname': 'project_milestones', - 'fieldtype': 'Table', - 'idx': 30, - 'label': 'Project Milestones', - 'oldfieldname': 'project_milestones', - 'oldfieldtype': 'Table', - 'options': 'Project Milestone', + 'doctype': u'DocField', + 'fieldname': u'project_milestones', + 'fieldtype': u'Table', + 'label': u'Project Milestones', + 'oldfieldname': u'project_milestones', + 'oldfieldtype': u'Table', + 'options': u'Project Milestone', 'permlevel': 0 }, # DocField { - 'doctype': 'DocField', - 'fieldname': 'trash_reason', - 'fieldtype': 'Small Text', + 'doctype': u'DocField', + 'fieldname': u'trash_reason', + 'fieldtype': u'Small Text', 'hidden': 1, - 'idx': 31, - 'label': 'Trash Reason', - 'oldfieldname': 'trash_reason', - 'oldfieldtype': 'Small Text', + 'label': u'Trash Reason', + 'oldfieldname': u'trash_reason', + 'oldfieldtype': u'Small Text', + 'permlevel': 0, + 'print_hide': 1 + }, + + # DocField + { + 'colour': u'White:FFF', + 'doctype': u'DocField', + 'fieldname': u'file_list', + 'fieldtype': u'Small Text', + 'hidden': 1, + 'label': u'File List', + 'no_copy': 1, 'permlevel': 0, 'print_hide': 1 } diff --git a/erpnext/projects/doctype/project_activity/project_activity.js b/erpnext/projects/doctype/project_activity/project_activity.js index ed2b1df665..02a6dbf869 100644 --- a/erpnext/projects/doctype/project_activity/project_activity.js +++ b/erpnext/projects/doctype/project_activity/project_activity.js @@ -55,7 +55,7 @@ cur_frm.cscript.onload = function(doc, dt, dn) { if (ci==0){ var d1 = $a(cell,'div'); var img = $a(cell,'img','',{width:'40px'}); - set_user_img(img,d[ri][0]) + img.src = wn.user_info(d[ri][0]).image; var d2 = $a(cell,'div'); d2.innerHTML = d[ri][0] + ' on: ' + date.str_to_user(d[ri][1]); } diff --git a/erpnext/selling/Module Def/Selling/Selling.txt b/erpnext/selling/Module Def/Selling/Selling.txt deleted file mode 100644 index 42c8449fd1..0000000000 --- a/erpnext/selling/Module Def/Selling/Selling.txt +++ /dev/null @@ -1,335 +0,0 @@ -# Module Def, Selling -[ - - # These values are common in all dictionaries - { - 'creation': '2011-07-01 17:39:08', - 'docstatus': 0, - 'modified': '2012-01-23 18:25:58', - 'modified_by': 'Administrator', - 'owner': 'Administrator' - }, - - # These values are common for all Module Def Role - { - 'doctype': 'Module Def Role', - 'name': '__common__', - 'parent': 'Selling', - 'parentfield': 'roles', - 'parenttype': 'Module Def' - }, - - # These values are common for all Module Def Item - { - 'doctype': 'Module Def Item', - 'name': '__common__', - 'parent': 'Selling', - 'parentfield': 'items', - 'parenttype': 'Module Def' - }, - - # These values are common for all Module Def - { - 'disabled': 'No', - 'doctype': u'Module Def', - 'doctype_list': 'Print Format, Sales Order\nPrint Format, Quotation Format\nPrint Format, Delivery Note Format', - 'file_list': 'crm.gif,FileData/00208', - 'is_hidden': 'No', - 'module_desc': 'Manage you sales team, with your leads, customers, quotes, orders etc.', - 'module_icon': 'Selling.gif', - 'module_label': 'Selling', - 'module_name': 'Selling', - 'module_seq': 3, - 'name': '__common__' - }, - - # Module Def, Selling - { - 'doctype': u'Module Def', - 'name': 'Selling' - }, - - # Module Def Item - { - 'description': 'Database of potential customers you need to keep in touch with', - 'display_name': 'Lead', - 'doc_name': 'Lead', - 'doc_type': 'Forms', - 'doctype': 'Module Def Item', - 'fields': 'status\nlead_owner\nlead_name\ncontact_no\ncontact_by\ncontact_date\nexpected_month' - }, - - # Module Def Item - { - 'description': 'Your Customer Database', - 'display_name': 'Customer', - 'doc_name': 'Customer', - 'doc_type': 'Forms', - 'doctype': 'Module Def Item', - 'fields': 'customer_group\ncountry' - }, - - # Module Def Item - { - 'description': 'Specific requirements from a Lead / Customer', - 'display_name': 'Enquiry', - 'doc_name': 'Enquiry', - 'doc_type': 'Forms', - 'doctype': 'Module Def Item', - 'fields': 'status\ntransaction_date\ncustomer\ncontact_person\ncost_center\ncompany' - }, - - # Module Def Item - { - 'description': 'Offers you have made to your customers', - 'display_name': 'Quotation', - 'doc_name': 'Quotation', - 'doc_type': 'Forms', - 'doctype': 'Module Def Item', - 'fields': 'status\ntransaction_date\ncustomer\ncontact_person\ncost_center\ngrand_total\ncompany' - }, - - # Module Def Item - { - 'description': 'Database of confirmed Sale Orders from your Customers', - 'display_name': 'Sales Order', - 'doc_name': 'Sales Order', - 'doc_type': 'Forms', - 'doctype': 'Module Def Item', - 'fields': 'status\ntransaction_date\ncustomer\ncost_center\ngrand_total\nper_delivered\nper_billed\ncompany' - }, - - # Module Def Item - { - 'display_name': 'Sales Dashboard', - 'doc_name': 'Sales Dashboard', - 'doc_type': 'Pages', - 'doctype': 'Module Def Item' - }, - - # Module Def Item - { - 'doc_name': 'Reports', - 'doc_type': 'Separator', - 'doctype': 'Module Def Item' - }, - - # Module Def Item - { - 'doc_name': 'Reports', - 'doc_type': 'Separator', - 'doctype': 'Module Def Item' - }, - - # Module Def Item - { - 'display_name': 'Gross Profit', - 'doc_name': 'Delivery Note Detail', - 'doc_type': 'Reports', - 'doctype': 'Module Def Item' - }, - - # Module Def Item - { - 'display_name': 'Territory, Item Group wise GP', - 'doc_name': 'Delivery Note', - 'doc_type': 'Reports', - 'doctype': 'Module Def Item' - }, - - # Module Def Item - { - 'display_name': 'Itemwise Sales Details', - 'doc_name': 'Sales Order Detail', - 'doc_type': 'Reports', - 'doctype': 'Module Def Item' - }, - - # Module Def Item - { - 'display_name': 'Itemwise Delivery Details', - 'doc_name': 'Delivery Note Detail', - 'doc_type': 'Reports', - 'doctype': 'Module Def Item' - }, - - # Module Def Item - { - 'display_name': 'Sales Personwise Transaction Summary', - 'doc_name': 'Sales Person', - 'doc_type': 'Reports', - 'doctype': 'Module Def Item' - }, - - # Module Def Item - { - 'display_name': 'Total Target Variance Report', - 'doc_name': 'Target Detail', - 'doc_type': 'Reports', - 'doctype': 'Module Def Item' - }, - - # Module Def Item - { - 'display_name': 'Sales Persons Target Variance (Item Group wise)', - 'doc_name': 'Target Detail', - 'doc_type': 'Reports', - 'doctype': 'Module Def Item' - }, - - # Module Def Item - { - 'display_name': 'Territories Target Variance (Item Group wise)', - 'doc_name': 'Target Detail', - 'doc_type': 'Reports', - 'doctype': 'Module Def Item' - }, - - # Module Def Item - { - 'display_name': 'Sales Order Pending Items', - 'doc_name': 'Sales Order Detail', - 'doc_type': 'Reports', - 'doctype': 'Module Def Item' - }, - - # Module Def Item - { - 'display_name': 'Sales Orderwise Booking & Delivery Summary', - 'doc_name': 'Sales Order Detail', - 'doc_type': 'Reports', - 'doctype': 'Module Def Item' - }, - - # Module Def Item - { - 'display_name': 'Sales Orderwise Pending Qty To Deliver', - 'doc_name': 'Sales Order Detail', - 'doc_type': 'Reports', - 'doctype': 'Module Def Item' - }, - - # Module Def Item - { - 'display_name': 'Sales Orderwise Pending Amount To Bill', - 'doc_name': 'Sales Order Detail', - 'doc_type': 'Reports', - 'doctype': 'Module Def Item' - }, - - # Module Def Item - { - 'display_name': 'Delivered Items to be Install', - 'doc_name': 'Delivery Note Detail', - 'doc_type': 'Reports', - 'doctype': 'Module Def Item' - }, - - # Module Def Item - { - 'display_name': 'Itemwise Price List', - 'doc_name': 'Ref Rate Detail', - 'doc_type': 'Reports', - 'doctype': 'Module Def Item' - }, - - # Module Def Item - { - 'display_name': 'Follow-up Report', - 'doc_name': 'Follow up', - 'doc_type': 'Reports', - 'doctype': 'Module Def Item' - }, - - # Module Def Item - { - 'description': 'Ledger details of your debtors', - 'display_name': "Debtor's Ledger", - 'doc_name': 'GL Entry', - 'doc_type': 'Reports', - 'doctype': 'Module Def Item' - }, - - # Module Def Item - { - 'description': 'Report displaying Customer, Primary Address Details & Primary Contact Details', - 'display_name': 'Customer Address Contact', - 'doc_name': 'Customer', - 'doc_type': 'Reports', - 'doctype': 'Module Def Item' - }, - - # Module Def Item - { - 'description': 'Customer Category', - 'display_name': 'Customer Group', - 'doc_name': 'Customer Group', - 'doc_type': 'Setup Forms', - 'doctype': 'Module Def Item', - 'fields': 'id\ndescription' - }, - - # Module Def Item - { - 'description': 'Sales person details', - 'display_name': 'Sales Person', - 'doc_name': 'Sales Person', - 'doc_type': 'Setup Forms', - 'doctype': 'Module Def Item', - 'fields': 'id\nterritory\ndepartment\nmobile_no\nemail_id' - }, - - # Module Def Item - { - 'description': 'Item master', - 'display_name': 'Item', - 'doc_name': 'Item', - 'doc_type': 'Setup Forms', - 'doctype': 'Module Def Item', - 'fields': 'name\nitem_group\ndescription' - }, - - # Module Def Item - { - 'description': 'Sales partner details', - 'display_name': 'Sales Partner', - 'doc_name': 'Sales Partner', - 'doc_type': 'Setup Forms', - 'doctype': 'Module Def Item', - 'fields': 'id\npartner_type\nmobile\nemail\nterritory' - }, - - # Module Def Item - { - 'description': 'Business campaigns', - 'display_name': 'Campaign', - 'doc_name': 'Campaign', - 'doc_type': 'Setup Forms', - 'doctype': 'Module Def Item', - 'fields': 'id\ncampaign_name\ndescription' - }, - - # Module Def Role - { - 'doctype': 'Module Def Role', - 'role': 'Administrator' - }, - - # Module Def Role - { - 'doctype': 'Module Def Role', - 'role': 'Sales Manager' - }, - - # Module Def Role - { - 'doctype': 'Module Def Role', - 'role': 'Sales User' - }, - - # Module Def Role - { - 'doctype': 'Module Def Role', - 'role': 'Sales Master Manager' - } -] \ No newline at end of file diff --git a/erpnext/selling/doctype/customer/customer.js b/erpnext/selling/doctype/customer/customer.js index 89b95fa89e..9f5f717e1f 100644 --- a/erpnext/selling/doctype/customer/customer.js +++ b/erpnext/selling/doctype/customer/customer.js @@ -14,7 +14,7 @@ // You should have received a copy of the GNU General Public License // along with this program. If not, see . -$import(Contact Control) +wn.require('erpnext/setup/doctype/contact_control/contact_control.js'); /* ********************************* onload ********************************************* */ @@ -68,19 +68,10 @@ cur_frm.cscript.refresh = function(doc,dt,dn) { cur_frm.cscript.make_address = function() { if(!cur_frm.address_list) { - cur_frm.address_list = new wn.widgets.Listing({ + cur_frm.address_list = new wn.ui.Listing({ parent: cur_frm.fields_dict['Address HTML'].wrapper, page_length: 2, new_doctype: "Address", - new_doc_onload: function(dn) { - ndoc = locals["Address"][dn]; - ndoc.customer = cur_frm.doc.name; - ndoc.customer_name = cur_frm.doc.customer_name; - ndoc.address_type = 'Office'; - }, - new_doc_onsave: function(dn) { - cur_frm.address_list.run() - }, get_query: function() { return "select name, address_type, address_line1, address_line2, city, state, country, pincode, fax, email_id, phone, is_primary_address, is_shipping_address from tabAddress where customer='"+cur_frm.docname+"' and docstatus != 2 order by is_primary_address desc" }, @@ -110,21 +101,10 @@ cur_frm.cscript.make_address = function() { cur_frm.cscript.make_contact = function() { if(!cur_frm.contact_list) { - cur_frm.contact_list = new wn.widgets.Listing({ + cur_frm.contact_list = new wn.ui.Listing({ parent: cur_frm.fields_dict['Contact HTML'].wrapper, page_length: 2, new_doctype: "Contact", - new_doc_onload: function(dn) { - ndoc = locals["Contact"][dn]; - ndoc.customer = cur_frm.doc.name; - ndoc.customer_name = cur_frm.doc.customer_name; - if(cur_frm.doc.customer_type == 'Individual') { - ndoc.first_name = cur_frm.doc.customer_name; - } - }, - new_doc_onsave: function(dn) { - cur_frm.contact_list.run() - }, get_query: function() { return "select name, first_name, last_name, email_id, phone, mobile_no, department, designation, is_primary_contact from tabContact where customer='"+cur_frm.docname+"' and docstatus != 2 order by is_primary_contact desc" }, @@ -174,6 +154,7 @@ cur_frm.fields_dict['lead_name'].get_query = function(doc,dt,dn){ // make quotation list // -------------------- cur_frm.cscript.make_qtn_list = function(parent,doc){ + wn.require('lib/js/legacy/widgets/listing.js'); var lst = new Listing(); lst.colwidths = ['5%','20%','20%','20%','20%','15%']; @@ -191,6 +172,8 @@ cur_frm.cscript.make_qtn_list = function(parent,doc){ // make so list // ------------- cur_frm.cscript.make_so_list = function(parent,doc){ + wn.require('lib/js/legacy/widgets/listing.js'); + var lst = new Listing(); lst.colwidths = ['5%','20%','20%','30%','25%']; lst.colnames = ['Sr.','Id','Status','Sales Order Date','Grand Total']; @@ -207,6 +190,8 @@ cur_frm.cscript.make_so_list = function(parent,doc){ // make dn list // ------------- cur_frm.cscript.make_dn_list = function(parent,doc){ + wn.require('lib/js/legacy/widgets/listing.js'); + var lst = new Listing(); lst.colwidths = ['5%','20%','20%','20%','20%','15%']; lst.colnames = ['Sr.','Id','Status','Delivery Note Date','Territory','Grand Total']; @@ -223,6 +208,8 @@ cur_frm.cscript.make_dn_list = function(parent,doc){ // make si list // ------------- cur_frm.cscript.make_si_list = function(parent,doc){ + wn.require('lib/js/legacy/widgets/listing.js'); + var lst = new Listing(); lst.colwidths = ['5%','20%','20%','20%','20%','15%']; lst.colnames = ['Sr.','Id','Posting Date','Due Date','Debit To','Grand Total']; diff --git a/erpnext/selling/doctype/customer/customer.txt b/erpnext/selling/doctype/customer/customer.txt index 346b4d1029..993dc29f5e 100644 --- a/erpnext/selling/doctype/customer/customer.txt +++ b/erpnext/selling/doctype/customer/customer.txt @@ -203,7 +203,7 @@ # DocField { 'colour': u'White:FFF', - 'description': u'To manage Customer Groups, click here', + 'description': u'To manage Customer Groups, click here', 'doctype': u'DocField', 'fieldname': u'customer_group', 'fieldtype': u'Link', @@ -223,7 +223,7 @@ # DocField { 'colour': u'White:FFF', - 'description': u'To manage Territory, click here', + 'description': u'To manage Territory, click here', 'doctype': u'DocField', 'fieldname': u'territory', 'fieldtype': u'Link', diff --git a/erpnext/selling/doctype/enquiry/enquiry.js b/erpnext/selling/doctype/enquiry/enquiry.js index c3f0a0bc6b..bf2628feaf 100644 --- a/erpnext/selling/doctype/enquiry/enquiry.js +++ b/erpnext/selling/doctype/enquiry/enquiry.js @@ -14,7 +14,7 @@ // You should have received a copy of the GNU General Public License // along with this program. If not, see . -$import(SMS Control) +wn.require('erpnext/utilities/doctype/sms_control/sms_control.js'); cur_frm.cscript.refresh = function(doc, cdt, cdn){ diff --git a/erpnext/selling/doctype/lead/lead.js b/erpnext/selling/doctype/lead/lead.js index 7255636a41..a32acf7df5 100644 --- a/erpnext/selling/doctype/lead/lead.js +++ b/erpnext/selling/doctype/lead/lead.js @@ -16,7 +16,7 @@ // Module CRM -$import(SMS Control) +wn.require('erpnext/utilities/doctype/sms_control/sms_control.js'); cur_frm.cscript.onload = function(doc, cdt, cdn) { if(user =='Guest'){ diff --git a/erpnext/selling/doctype/lead/listview.js b/erpnext/selling/doctype/lead/listview.js new file mode 100644 index 0000000000..b5ed6b8c80 --- /dev/null +++ b/erpnext/selling/doctype/lead/listview.js @@ -0,0 +1,32 @@ +wn.doclistviews['Lead'] = wn.views.ListView.extend({ + init: function(d) { + this._super(d) + this.fields = this.fields.concat([ + 'tabLead.lead_name', + 'tabLead.status', + 'tabLead.source', + 'tabLead.rating' + ]); + this.stats = this.stats.concat(['status', 'source', 'rating']); + }, + + prepare_data: function(data) { + this._super(data); + if(data.status=='Interested') { + data.label_type = 'success' + } + else if(['Open', 'Attempted to Contact', 'Contacted', 'Contact in Future'].indexOf(data.status)!=-1) { + data.label_type = 'info' + } + data.status_html = repl('%(status)s', data); + + data.lead_name = (data.rating ? ('['+data.rating+'] ') : '') + '['+data.source+'] ' + data.lead_name; + }, + + columns: [ + {width: '20%', content:'name'}, + {width: '12%', content:'status_html'}, + {width: '55%', content:'tags+lead_name', css: {color:'#aaa'}}, + {width: '13%', content:'modified', css: {'text-align': 'right', 'color':'#777'}} + ] +}) diff --git a/erpnext/selling/doctype/quotation/quotation.js b/erpnext/selling/doctype/quotation/quotation.js index 7f40782d0c..12d6d1e175 100644 --- a/erpnext/selling/doctype/quotation/quotation.js +++ b/erpnext/selling/doctype/quotation/quotation.js @@ -21,9 +21,10 @@ cur_frm.cscript.other_fname = "other_charges"; cur_frm.cscript.sales_team_fname = "sales_team"; // ===================================================================================== -$import(Sales Common) -$import(Other Charges) -$import(SMS Control) +wn.require('erpnext/selling/doctype/sales_common/sales_common.js'); +wn.require('erpnext/setup/doctype/other_charges/other_charges.js'); +wn.require('erpnext/utilities/doctype/sms_control/sms_control.js'); +wn.require('erpnext/setup/doctype/notification_control/notification_control.js'); // ONLOAD // =================================================================================== @@ -41,7 +42,7 @@ cur_frm.cscript.onload = function(doc, cdt, cdn) { if(doc.quotation_to) { if(doc.quotation_to == 'Customer') { - hide_field(['lead', 'lead_name']); + hide_field(['lead', 'lead_name', 'organization']); } else if (doc.quotation_to == 'Lead') { hide_field(['customer','customer_address','contact_person', 'customer_name','contact_display', 'customer_group']); @@ -60,16 +61,11 @@ cur_frm.cscript.onload_post_render = function(doc, dt, dn) { // hide - unhide fields based on lead or customer.. // ======================================================================================================================= cur_frm.cscript.lead_cust_show = function(doc,cdt,cdn){ - if(doc.quotation_to == 'Lead'){ - unhide_field(['lead']); - hide_field(['lead_name','customer','customer_address','contact_person','customer_name','address_display','contact_display','contact_mobile','contact_email','territory','customer_group']); - doc.lead = doc.lead_name = doc.customer = doc.customer_address = doc.contact_person = doc.address_display = doc.contact_display = doc.contact_mobile = doc.contact_email = doc.territory = doc.customer_group = ""; - } - else if(doc.quotation_to == 'Customer'){ - unhide_field(['customer']); - hide_field(['lead','lead_name','address_display','contact_display','contact_mobile','contact_email','territory']); - doc.lead = doc.lead_name = doc.customer = doc.customer_address = doc.contact_person = doc.address_display = doc.contact_display = doc.contact_mobile = doc.contact_email = doc.territory = doc.customer_group = ""; - } + hide_field(['lead', 'lead_name','customer','customer_address','contact_person','customer_name','address_display','contact_display','contact_mobile','contact_email','territory','customer_group', 'organization']); + if(doc.quotation_to == 'Lead') unhide_field(['lead']); + else if(doc.quotation_to == 'Customer') unhide_field(['customer']); + + doc.lead = doc.lead_name = doc.customer = doc.customer_address = doc.contact_person = doc.address_display = doc.contact_display = doc.contact_mobile = doc.contact_email = doc.territory = doc.customer_group = doc.organization = ""; } @@ -107,12 +103,19 @@ cur_frm.cscript.customer = function(doc,dt,dn) { cur_frm.refresh(); } - if(doc.customer) $c_obj(make_doclist(doc.doctype, doc.name), 'get_default_customer_address', '', callback); - if(doc.customer) unhide_field(['customer_address','contact_person','customer_name','address_display','contact_display','contact_mobile','contact_email','territory','customer_group']); + if(doc.customer) $c_obj(make_doclist(doc.doctype, doc.name), + 'get_default_customer_address', '', callback); + if(doc.customer) unhide_field(['customer_address','contact_person','customer_name', + 'address_display','contact_display','contact_mobile','contact_email','territory', + 'customer_group']); } cur_frm.cscript.customer_address = cur_frm.cscript.contact_person = function(doc,dt,dn) { - if(doc.customer) get_server_fields('get_customer_address', JSON.stringify({customer: doc.customer, address: doc.customer_address, contact: doc.contact_person}),'', doc, dt, dn, 1); + if(doc.customer) get_server_fields('get_customer_address', JSON.stringify({ + customer: doc.customer, + address: doc.customer_address, + contact: doc.contact_person + }),'', doc, dt, dn, 1); } cur_frm.fields_dict.customer_address.on_new = function(dn) { @@ -140,7 +143,7 @@ cur_frm.fields_dict['lead'].get_query = function(doc,cdt,cdn){ cur_frm.cscript.lead = function(doc, cdt, cdn) { if(doc.lead) get_server_fields('get_lead_details', doc.lead,'', doc, cdt, cdn, 1); - if(doc.lead) unhide_field(['lead_name','address_display','contact_mobile','contact_email','territory']); + if(doc.lead) unhide_field(['lead_name','address_display','contact_mobile','contact_email','territory', 'organization']); } @@ -326,7 +329,6 @@ cur_frm.fields_dict['quotation_details'].grid.get_field('item_code').get_query= return repl("SELECT name, item_name, description FROM tabItem WHERE `tabItem`.%(key)s LIKE '%s' %(cond)s ORDER BY tabItem.item_code DESC LIMIT 50", {cond:cond}); } -$import(Notification Control) cur_frm.cscript.on_submit = function(doc, cdt, cdn) { var args = { type: 'Quotation', diff --git a/erpnext/selling/doctype/quotation/quotation.py b/erpnext/selling/doctype/quotation/quotation.py index de4056d2d6..27206b2d49 100644 --- a/erpnext/selling/doctype/quotation/quotation.py +++ b/erpnext/selling/doctype/quotation/quotation.py @@ -116,26 +116,8 @@ class DocType(TransactionBase): # Pull details from other charges master (Get Other Charges) # ---------------------------------------------------------- def get_other_charges(self): - return get_obj('Sales Common').get_other_charges(self) + return get_obj('Sales Common').get_other_charges(self) - # Get Lead Details along with its details - # ============================================================== - def get_lead_details1(self, name): - details = sql("select name, lead_name, address_line1, address_line2, city, country, state, pincode, territory, contact_no, mobile_no, email_id from `tabLead` where name = '%s'" %(name), as_dict = 1) - ret = { - 'lead_name' : details and details[0]['lead_name'] or '', - 'address_display' : (details and details[0]['address_line1'] - + (details[0]['address_line2'] and '\n' + details[0]['address_line2'] or '') + '\n' - + details[0]['city'] - + (details[0]['pincode'] and ', ' + details[0]['pincode'] or '') + '\n' - + (details[0]['state'] and details[0]['state']+', ' or '') - + details[0]['country'] + '\nTel: ' + details[0]['contact_no'] + '\n' or '-'), - 'territory' : details and details[0]['territory'] or '', - 'contact_mobile' : details and details[0]['mobile_no'] or '-', - 'contact_email' : details and details[0]['email_id'] or '-' - } - return ret - # GET TERMS AND CONDITIONS # ==================================================================================== diff --git a/erpnext/selling/doctype/quotation/quotation.txt b/erpnext/selling/doctype/quotation/quotation.txt index 32784a8dcb..c8e3ecb37f 100644 --- a/erpnext/selling/doctype/quotation/quotation.txt +++ b/erpnext/selling/doctype/quotation/quotation.txt @@ -5,7 +5,7 @@ { 'creation': '2010-08-08 17:09:17', 'docstatus': 0, - 'modified': '2012-03-02 12:20:40', + 'modified': '2012-03-20 14:56:28', 'modified_by': u'Administrator', 'owner': u'Administrator' }, @@ -21,7 +21,7 @@ # These values are common for all DocType { - '_last_update': u'1330069750', + '_last_update': u'1332235370', 'allow_attach': 1, 'allow_email': 0, 'allow_trash': 1, @@ -41,7 +41,7 @@ 'show_in_menu': 0, 'subject': u'To %(customer_name)s on %(transaction_date)s worth %(currency)s %(grand_total_export)s', 'tag_fields': u'status', - 'version': 618 + 'version': 621 }, # These values are common for all DocFormat @@ -292,6 +292,15 @@ 'permlevel': 1 }, + # DocField + { + 'doctype': u'DocField', + 'fieldname': u'organization', + 'fieldtype': u'Data', + 'label': u'Organization', + 'permlevel': 1 + }, + # DocField { 'colour': u'White:FFF', @@ -385,7 +394,7 @@ 'oldfieldtype': u'Select', 'options': u'\nSales\nMaintenance', 'permlevel': 0, - 'print_hide': 0, + 'print_hide': 1, 'reqd': 1, 'search_index': 0 }, diff --git a/erpnext/selling/doctype/sales_common/sales_common.js b/erpnext/selling/doctype/sales_common/sales_common.js index cad8ec16f7..192875c2a8 100644 --- a/erpnext/selling/doctype/sales_common/sales_common.js +++ b/erpnext/selling/doctype/sales_common/sales_common.js @@ -18,7 +18,7 @@ // ------ // cur_frm.cscript.tname - Details table name // cur_frm.cscript.fname - Details fieldname -// cur_frm.cscript.other_fname - Other Charges fieldname +// cur_frm.cscript.other_fname - wn.require('erpnext/setup/doctype/other_charges/other_charges.js'); fieldname // cur_frm.cscript.sales_team_fname - Sales Team fieldname // ============== Load Default Taxes =================== @@ -100,14 +100,14 @@ var set_dynamic_label_par = function(doc, cdt, cdn, base_curr) { 'grand_total': 'Grand Total', 'rounded_total': 'Rounded Total', 'in_words': 'In Words'} par_cols_export = {'grand_total_export': 'Grand Total', 'rounded_total_export': 'Rounded Total', 'in_words_export': 'In Words'}; - for (d in par_cols_base) cur_frm.fields_dict[d].label_area.innerHTML = par_cols_base[d]+' (' + base_curr + ')'; - for (d in par_cols_export) cur_frm.fields_dict[d].label_area.innerHTML = par_cols_export[d]+' (' + doc.currency + ')'; - cur_frm.fields_dict['conversion_rate'].label_area.innerHTML = "Conversion Rate (" + doc.currency +' -> '+ base_curr + ')'; - cur_frm.fields_dict['plc_conversion_rate'].label_area.innerHTML = 'Price List Currency Conversion Rate (' + doc.price_list_currency +' -> '+ base_curr + ')'; + for (d in par_cols_base) cur_frm.fields_dict[d].label_span.innerHTML = par_cols_base[d]+' (' + base_curr + ')'; + for (d in par_cols_export) cur_frm.fields_dict[d].label_span.innerHTML = par_cols_export[d]+' (' + doc.currency + ')'; + cur_frm.fields_dict['conversion_rate'].label_span.innerHTML = "Conversion Rate (" + doc.currency +' -> '+ base_curr + ')'; + cur_frm.fields_dict['plc_conversion_rate'].label_span.innerHTML = 'Price List Currency Conversion Rate (' + doc.price_list_currency +' -> '+ base_curr + ')'; if (doc.doctype == 'Receivable Voucher') { - cur_frm.fields_dict['total_advance'].label_area.innerHTML = 'Total Advance (' + base_curr + ')'; - cur_frm.fields_dict['outstanding_amount'].label_area.innerHTML = 'Outstanding Amount (' + base_curr + ')'; + cur_frm.fields_dict['total_advance'].label_span.innerHTML = 'Total Advance (' + base_curr + ')'; + cur_frm.fields_dict['outstanding_amount'].label_span.innerHTML = 'Outstanding Amount (' + base_curr + ')'; } } @@ -212,13 +212,16 @@ cur_frm.cscript.price_list_currency = cur_frm.cscript.currency; cur_frm.cscript.conversion_rate = cur_frm.cscript.currency; cur_frm.cscript.plc_conversion_rate = cur_frm.cscript.currency; -cur_frm.cscript.company = function(doc, dt, dn) { +cur_frm.cscript.company = function(doc, cdt, cdn) { wn.call({ method: 'selling.doctype.sales_common.sales_common.get_comp_base_currency', args: {company:doc.company}, callback: function(r, rt) { - var doc = locals[dt][dn]; - set_multiple(doc.doctype, doc.name, {currency:r.message, price_list_currency:r.message}); + var doc = locals[cdt][cdn]; + set_multiple(doc.doctype, doc.name, { + currency:r.message, + price_list_currency:r.message + }); cur_frm.cscript.currency(doc, cdt, cdn); } }); @@ -249,9 +252,20 @@ cur_frm.cscript.price_list_name = function(doc, cdt, cdn) { // ******************** ITEM CODE ******************************** cur_frm.fields_dict[cur_frm.cscript.fname].grid.get_field("item_code").get_query = function(doc, cdt, cdn) { if (doc.order_type == 'Maintenance') - return 'SELECT tabItem.name,tabItem.item_name,tabItem.description FROM tabItem WHERE tabItem.is_service_item="Yes" AND tabItem.docstatus != 2 AND (ifnull(`tabItem`.`end_of_life`,"") = "" OR `tabItem`.`end_of_life` > NOW() OR `tabItem`.`end_of_life`="0000-00-00") AND tabItem.%(key)s LIKE "%s" LIMIT 50'; + return 'SELECT tabItem.name,tabItem.item_name,tabItem.description \ + FROM tabItem WHERE tabItem.is_service_item="Yes" \ + AND tabItem.docstatus != 2 \ + AND (ifnull(`tabItem`.`end_of_life`,"") = "" \ + OR `tabItem`.`end_of_life` > NOW() \ + OR `tabItem`.`end_of_life`="0000-00-00") \ + AND tabItem.%(key)s LIKE "%s" LIMIT 50'; else - return 'SELECT tabItem.name,tabItem.item_name,tabItem.description FROM tabItem WHERE tabItem.is_sales_item="Yes" AND tabItem.docstatus != 2 AND (ifnull(`tabItem`.`end_of_life`,"") = "" OR `tabItem`.`end_of_life` > NOW() OR `tabItem`.`end_of_life`="0000-00-00") AND tabItem.%(key)s LIKE "%s" LIMIT 50'; + return 'SELECT tabItem.name,tabItem.item_name,tabItem.description FROM tabItem \ + WHERE tabItem.is_sales_item="Yes" AND tabItem.docstatus != 2 \ + AND (ifnull(`tabItem`.`end_of_life`,"") = "" \ + OR `tabItem`.`end_of_life` > NOW() \ + OR `tabItem`.`end_of_life`="0000-00-00") \ + AND tabItem.%(key)s LIKE "%s" LIMIT 50'; } @@ -267,8 +281,14 @@ cur_frm.cscript.item_code = function(doc, cdt, cdn) { var callback = function(r, rt){ cur_frm.cscript.recalc(doc, 1); } - var args = {'item_code':d.item_code, 'income_account':d.income_account, 'cost_center': d.cost_center, 'warehouse': d.warehouse}; - get_server_fields('get_item_details',JSON.stringify(args), fname,doc,cdt,cdn,1,callback); + var args = { + 'item_code':d.item_code, + 'income_account':d.income_account, + 'cost_center': d.cost_center, + 'warehouse': d.warehouse + }; + get_server_fields('get_item_details',JSON.stringify(args), + fname,doc,cdt,cdn,1,callback); } } if(cur_frm.cscript.custom_item_code){ @@ -358,8 +378,14 @@ cur_frm.cscript.recalc = function(doc, n) { var sales_team = cur_frm.cscript.sales_team_fname; var other_fname = cur_frm.cscript.other_fname; - if(!flt(doc.conversion_rate)) { doc.conversion_rate = 1; refresh_field('conversion_rate'); } - if(!flt(doc.plc_conversion_rate)) { doc.plc_conversion_rate = 1; refresh_field('plc_conversion_rate'); } + if(!flt(doc.conversion_rate)) { + doc.conversion_rate = 1; + refresh_field('conversion_rate'); + } + if(!flt(doc.plc_conversion_rate)) { + doc.plc_conversion_rate = 1; + refresh_field('plc_conversion_rate'); + } if(n > 0) cur_frm.cscript.update_fname_table(doc , tname , fname , n, other_fname); // updates all values in table (i.e. amount, export amount, net total etc.) @@ -378,7 +404,7 @@ cur_frm.cscript.recalc = function(doc, n) { } cur_frm.cscript.calc_other_charges(doc , tname , fname , other_fname); // calculate other charges } - cur_frm.cscript.calc_doc_values(doc, cdt, cdn, tname, fname, other_fname); // calculates total amounts + cur_frm.cscript.calc_doc_values(doc, null, null, tname, fname, other_fname); // calculates total amounts // ******************* calculate allocated amount of sales person ************************ cl = getchildren('Sales Team', doc.name, sales_team); diff --git a/erpnext/selling/doctype/sales_common/sales_common.py b/erpnext/selling/doctype/sales_common/sales_common.py index 9186bb831b..63f53eab7b 100644 --- a/erpnext/selling/doctype/sales_common/sales_common.py +++ b/erpnext/selling/doctype/sales_common/sales_common.py @@ -209,13 +209,14 @@ class DocType(TransactionBase): if default: add_cond = 'ifnull(t2.is_default,0) = 1' else: add_cond = 't1.parent = "'+cstr(obj.doc.charge)+'"' idx = 0 - other_charge = webnotes.conn.sql("select t1.charge_type,t1.row_id,t1.description,t1.account_head,t1.rate,t1.tax_amount,t1.included_in_print_rate from `tabRV Tax Detail` t1, `tabOther Charges` t2 where t1.parent = t2.name and t2.company = '%s' and %s order by t1.idx" % (obj.doc.company, add_cond), as_dict = 1) + other_charge = webnotes.conn.sql("select t1.charge_type,t1.row_id,t1.description,t1.account_head,t1.rate,t1.tax_amount,t1.included_in_print_rate, t1.cost_center_other_charges from `tabRV Tax Detail` t1, `tabOther Charges` t2 where t1.parent = t2.name and t2.company = '%s' and %s order by t1.idx" % (obj.doc.company, add_cond), as_dict = 1) for other in other_charge: d = addchild(obj.doc, 'other_charges', 'RV Tax Detail', 1, obj.doclist) d.charge_type = other['charge_type'] d.row_id = other['row_id'] d.description = other['description'] d.account_head = other['account_head'] + d.cost_center_other_charges = other['cost_center_other_charges'] d.rate = flt(other['rate']) d.tax_amount = flt(other['tax_amount']) d.included_in_print_rate = cint(other['included_in_print_rate']) diff --git a/erpnext/selling/doctype/sales_order/listview.js b/erpnext/selling/doctype/sales_order/listview.js new file mode 100644 index 0000000000..c0b3895d8a --- /dev/null +++ b/erpnext/selling/doctype/sales_order/listview.js @@ -0,0 +1,32 @@ +// render +wn.doclistviews['Sales Order'] = wn.views.ListView.extend({ + init: function(d) { + this._super(d) + this.fields = this.fields.concat([ + "`tabSales Order`.customer_name", + "ifnull(`tabSales Order`.per_delivered,0) as per_delivered", + "ifnull(`tabSales Order`.per_billed,0) as per_billed", + "`tabSales Order`.currency", + "ifnull(`tabSales Order`.grand_total_export,0) as grand_total_export" + ]); + this.stats = this.stats.concat(['status']); + }, + + columns: [ + {width: '5%', content:'avatar'}, + {width: '3%', content:'docstatus'}, + {width: '15%', content:'name'}, + {width: '37%', content:'tags+customer_name', css: {color:'#aaa'}}, + { + width: '18%', + content: function(parent, data) { + $(parent).html(data.currency + ' ' + fmt_money(data.grand_total_export)) + }, + css: {'text-align':'right'} + }, + {width: '8%', content: 'per_delivered', type:'bar-graph', label:'Delivered'}, + {width: '8%', content: 'per_billed', type:'bar-graph', label:'Billed'}, + {width: '10%', content:'modified', css: {'text-align': 'right', 'color':'#777'}} + ] + +}); diff --git a/erpnext/selling/doctype/sales_order/sales_order.js b/erpnext/selling/doctype/sales_order/sales_order.js index a04423dd25..9a877c60b8 100644 --- a/erpnext/selling/doctype/sales_order/sales_order.js +++ b/erpnext/selling/doctype/sales_order/sales_order.js @@ -22,9 +22,10 @@ cur_frm.cscript.other_fname = "other_charges"; cur_frm.cscript.sales_team_fname = "sales_team"; -$import(Sales Common) -$import(Other Charges) -$import(SMS Control) +wn.require('erpnext/selling/doctype/sales_common/sales_common.js'); +wn.require('erpnext/setup/doctype/other_charges/other_charges.js'); +wn.require('erpnext/utilities/doctype/sms_control/sms_control.js'); +wn.require('erpnext/setup/doctype/notification_control/notification_control.js'); // ONLOAD @@ -35,7 +36,7 @@ cur_frm.cscript.onload = function(doc, cdt, cdn) { if(!doc.price_list_currency) set_multiple(cdt, cdn, {price_list_currency: doc.currency, plc_conversion_rate: 1}); // load default charges - if(doc.__islocal){ + if(doc.__islocal && !doc.customer){ hide_field(['customer_address','contact_person','customer_name','address_display','contact_display','contact_mobile','contact_email','territory','customer_group','shipping_address']); } } @@ -100,13 +101,16 @@ cur_frm.cscript.refresh = function(doc, cdt, cdn) { //customer cur_frm.cscript.customer = function(doc,dt,dn) { var callback = function(r,rt) { - var doc = locals[cur_frm.doctype][cur_frm.docname]; - get_server_fields('get_shipping_address',doc.customer,'',doc, dt, dn, 0); + var callback2 = function(r, rt) { + if(doc.customer) unhide_field(['customer_address', 'contact_person', 'customer_name', 'address_display', 'contact_display', 'contact_mobile', 'contact_email', 'territory','customer_group','shipping_address']); cur_frm.refresh(); + } + var doc = locals[cur_frm.doctype][cur_frm.docname]; + get_server_fields('get_shipping_address',doc.customer,'',doc, dt, dn, 0, callback2); + } if(doc.customer) $c_obj(make_doclist(doc.doctype, doc.name), 'get_default_customer_address', '', callback); - if(doc.customer) unhide_field(['customer_address', 'contact_person', 'customer_name', 'address_display', 'contact_display', 'contact_mobile', 'contact_email', 'territory','customer_group','shipping_address']); } cur_frm.cscript.customer_address = cur_frm.cscript.contact_person = function(doc,dt,dn) { @@ -352,7 +356,6 @@ cur_frm.fields_dict['territory'].get_query = function(doc,cdt,cdn) { return 'SELECT `tabTerritory`.`name`,`tabTerritory`.`parent_territory` FROM `tabTerritory` WHERE `tabTerritory`.`is_group` = "No" AND `tabTerritory`.`docstatus`!= 2 AND `tabTerritory`.%(key)s LIKE "%s" ORDER BY `tabTerritory`.`name` ASC LIMIT 50'; } -$import(Notification Control) cur_frm.cscript.on_submit = function(doc, cdt, cdn) { var args = { type: 'Sales Order', diff --git a/erpnext/selling/page/sales_browser/sales_browser.js b/erpnext/selling/page/sales_browser/sales_browser.js index b079515efd..8137d0411a 100644 --- a/erpnext/selling/page/sales_browser/sales_browser.js +++ b/erpnext/selling/page/sales_browser/sales_browser.js @@ -49,7 +49,7 @@ SalesBrowser = function(){ var tr_main_grid = make_table(div_body,1,2,'100%',['60%','40%'],{width: "100%", tableLayout: "fixed", borderCollapse: "collapse", border:"0px", padding:"4px 4px 4px 4px"}); $y($td(tr_main_grid,0,0),{border: "1px solid #dddddd", padding: "8px", width: "60%"}); - this.tree_area = $a($td(tr_main_grid,0,0),'div'); + this.tree_area = $a($td(tr_main_grid,0,0),'div','',{minHeight:'400px'}); $y($td(tr_main_grid,0,1),{border: "1px solid #DDD"}); this.detail_area = $a($td(tr_main_grid,0,1),'div'); diff --git a/erpnext/selling/page/sales_dashboard/sales_dashboard.js b/erpnext/selling/page/sales_dashboard/sales_dashboard.js index 1af5cb4233..e89c7fb31f 100644 --- a/erpnext/selling/page/sales_dashboard/sales_dashboard.js +++ b/erpnext/selling/page/sales_dashboard/sales_dashboard.js @@ -22,8 +22,8 @@ pscript['onload_Sales Dashboard'] = function() { $dh(pscript.mnt_div1); //pscript.dx_axis = []; - wn.require('lib/css/jqpot.css'); - wn.require('lib/js/legacy/jquery/jquery.jqplot.min.js'); + wn.require('lib/css/lib/jqplot.css'); + wn.require('lib/js/lib/jqplot/jquery.jqplot.min.js'); pscript.all_onchnge(); } //======================================================================= diff --git a/erpnext/setup/Module Def/Setup/Setup.txt b/erpnext/setup/Module Def/Setup/Setup.txt deleted file mode 100644 index 5a0dcf724a..0000000000 --- a/erpnext/setup/Module Def/Setup/Setup.txt +++ /dev/null @@ -1,652 +0,0 @@ -[ - { - '_last_update': None, - 'creation': '2010-11-30 22:43:08', - 'disabled': 'No', - 'docstatus': 0, - 'doctype': 'Module Def', - 'doctype_list': None, - 'file_list': None, - 'idx': None, - 'is_hidden': 'No', - 'last_updated_date': '2011-03-21 12:13:39', - 'modified': '2010-09-25 00:00:00', - 'modified_by': 'Administrator', - 'module_desc': None, - 'module_icon': 'wired.png', - 'module_label': 'Setup', - 'module_name': 'Setup', - 'module_page': 'Setup', - 'module_seq': 1, - 'name': 'Setup', - 'owner': 'Administrator', - 'parent': None, - 'parentfield': None, - 'parenttype': None, - 'trash_reason': None, - 'widget_code': None - }, - { - 'click_function': None, - 'creation': '2010-11-30 22:43:08', - 'description': 'All important setup items in one place', - 'display_name': 'Setup Wizard', - 'doc_name': 'Setup Wizard', - 'doc_type': 'Pages', - 'docstatus': 0, - 'doctype': 'Module Def Item', - 'fields': None, - 'hide': None, - 'icon': 'lightbulb.gif', - 'idx': 1, - 'modified': '2011-03-24 15:04:47', - 'modified_by': 'Administrator', - 'name': 'MDI00221', - 'owner': 'Administrator', - 'parent': 'Setup', - 'parentfield': 'items', - 'parenttype': 'Module Def' - }, - { - 'click_function': None, - 'creation': '2010-11-30 22:43:08', - 'description': 'Personalize settings like company banner, date format, print format header etc.', - 'display_name': 'Personalize', - 'doc_name': 'Personalize Page', - 'doc_type': 'Pages', - 'docstatus': 0, - 'doctype': 'Module Def Item', - 'fields': None, - 'hide': None, - 'icon': 'star.gif', - 'idx': 2, - 'modified': '2011-03-24 15:04:47', - 'modified_by': 'Administrator', - 'name': 'MDI00222', - 'owner': 'Administrator', - 'parent': 'Setup', - 'parentfield': 'items', - 'parenttype': 'Module Def' - }, - { - 'click_function': None, - 'creation': '2010-11-30 22:43:08', - 'description': 'Enable / Disable users. Set user roles.', - 'display_name': 'Manage Users', - 'doc_name': 'Manage Users', - 'doc_type': 'Pages', - 'docstatus': 0, - 'doctype': 'Module Def Item', - 'fields': None, - 'hide': None, - 'icon': 'group.gif', - 'idx': 3, - 'modified': '2011-03-24 15:04:47', - 'modified_by': 'Administrator', - 'name': 'MDI00223', - 'owner': 'Administrator', - 'parent': 'Setup', - 'parentfield': 'items', - 'parenttype': 'Module Def' - }, - { - 'click_function': None, - 'creation': '2010-11-30 22:43:08', - 'description': 'Set global default values and account settings', - 'display_name': 'Setup Defaults', - 'doc_name': 'Manage Account', - 'doc_type': 'Single DocType', - 'docstatus': 0, - 'doctype': 'Module Def Item', - 'fields': None, - 'hide': None, - 'icon': 'folder.gif', - 'idx': 4, - 'modified': '2011-03-24 15:04:47', - 'modified_by': 'Administrator', - 'name': 'MDI00224', - 'owner': 'Administrator', - 'parent': 'Setup', - 'parentfield': 'items', - 'parenttype': 'Module Def' - }, - { - 'click_function': None, - 'creation': '2010-11-30 22:43:08', - 'description': 'General Masters', - 'display_name': 'Setup Masters', - 'doc_name': 'Setup Masters', - 'doc_type': 'Pages', - 'docstatus': 0, - 'doctype': 'Module Def Item', - 'fields': None, - 'hide': None, - 'icon': 'wrench.gif', - 'idx': 5, - 'modified': '2011-03-24 15:04:47', - 'modified_by': 'Administrator', - 'name': 'MDI00225', - 'owner': 'Administrator', - 'parent': 'Setup', - 'parentfield': 'items', - 'parenttype': 'Module Def' - }, - { - 'click_function': None, - 'creation': '2010-11-30 22:43:08', - 'description': None, - 'display_name': 'Sales Browser', - 'doc_name': 'Sales Browser', - 'doc_type': 'Pages', - 'docstatus': 0, - 'doctype': 'Module Def Item', - 'fields': None, - 'hide': None, - 'icon': None, - 'idx': 6, - 'modified': '2011-03-24 15:04:47', - 'modified_by': 'Administrator', - 'name': 'MDI00226', - 'owner': 'Administrator', - 'parent': 'Setup', - 'parentfield': 'items', - 'parenttype': 'Module Def' - }, - { - 'click_function': None, - 'creation': '2011-03-24 15:04:47', - 'description': None, - 'display_name': None, - 'doc_name': None, - 'doc_type': 'Separator', - 'docstatus': 0, - 'doctype': 'Module Def Item', - 'fields': None, - 'hide': None, - 'icon': None, - 'idx': 7, - 'modified': '2011-03-24 15:04:47', - 'modified_by': 'Administrator', - 'name': '000003107', - 'owner': 'Administrator', - 'parent': 'Setup', - 'parentfield': 'items', - 'parenttype': 'Module Def' - }, - { - 'click_function': None, - 'creation': '2010-11-30 22:43:08', - 'description': "Import data like Customers, Items etc in 'CSV' format", - 'display_name': 'Import Data', - 'doc_name': 'Import Data', - 'doc_type': 'Pages', - 'docstatus': 0, - 'doctype': 'Module Def Item', - 'fields': None, - 'hide': None, - 'icon': 'disk.gif', - 'idx': 8, - 'modified': '2011-03-24 15:04:47', - 'modified_by': 'Administrator', - 'name': 'MDI00228', - 'owner': 'nabin@webnotestech.com', - 'parent': 'Setup', - 'parentfield': 'items', - 'parenttype': 'Module Def' - }, - { - 'click_function': None, - 'creation': '2010-11-30 22:43:08', - 'description': 'Set series prefix for transactions', - 'display_name': 'Setup Series', - 'doc_name': 'Naming Series', - 'doc_type': 'Single DocType', - 'docstatus': 0, - 'doctype': 'Module Def Item', - 'fields': None, - 'hide': None, - 'icon': 'paperclip.gif', - 'idx': 9, - 'modified': '2011-03-24 15:04:47', - 'modified_by': 'Administrator', - 'name': 'MDI00229', - 'owner': 'Administrator', - 'parent': 'Setup', - 'parentfield': 'items', - 'parenttype': 'Module Def' - }, - { - 'click_function': None, - 'creation': '2010-11-30 22:43:08', - 'description': 'Set approval rights for transactions based on grand total and discount.', - 'display_name': 'Authorization Rule', - 'doc_name': 'Authorization Rule', - 'doc_type': 'Forms', - 'docstatus': 0, - 'doctype': 'Module Def Item', - 'fields': 'transaction\nbased_on\nmaster_name\nsystem_user\nsystem_role\napproving_role\napproving_user\nvalue', - 'hide': None, - 'icon': 'accept.gif', - 'idx': 10, - 'modified': '2011-03-24 15:04:47', - 'modified_by': 'Administrator', - 'name': 'MDI00230', - 'owner': 'saumil@webnotestech.com', - 'parent': 'Setup', - 'parentfield': 'items', - 'parenttype': 'Module Def' - }, - { - 'click_function': None, - 'creation': '2010-11-30 22:43:08', - 'description': 'Add fields in transactions, masters...', - 'display_name': 'Custom Field', - 'doc_name': 'Custom Field', - 'doc_type': 'Forms', - 'docstatus': 0, - 'doctype': 'Module Def Item', - 'fields': 'dt\nlabel\nfieldtype\noptions', - 'hide': None, - 'icon': 'paperclip.gif', - 'idx': 11, - 'modified': '2011-03-24 15:04:47', - 'modified_by': 'Administrator', - 'name': 'MDI00231', - 'owner': 'saumil@webnotestech.com', - 'parent': 'Setup', - 'parentfield': 'items', - 'parenttype': 'Module Def' - }, - { - 'click_function': None, - 'creation': '2010-11-30 22:43:08', - 'description': 'Contains records that you have trashed.', - 'display_name': 'Trash', - 'doc_name': 'Trash', - 'doc_type': 'Pages', - 'docstatus': 0, - 'doctype': 'Module Def Item', - 'fields': None, - 'hide': None, - 'icon': None, - 'idx': 12, - 'modified': '2011-03-24 15:04:47', - 'modified_by': 'Administrator', - 'name': 'MDI00232', - 'owner': 'saumil@webnotestech.com', - 'parent': 'Setup', - 'parentfield': 'items', - 'parenttype': 'Module Def' - }, - { - 'click_function': None, - 'creation': '2011-03-24 15:04:47', - 'description': None, - 'display_name': 'Price List', - 'doc_name': 'Price List', - 'doc_type': 'Setup Forms', - 'docstatus': 0, - 'doctype': 'Module Def Item', - 'fields': None, - 'hide': None, - 'icon': None, - 'idx': 13, - 'modified': '2011-03-24 15:04:47', - 'modified_by': 'Administrator', - 'name': '000003108', - 'owner': 'Administrator', - 'parent': 'Setup', - 'parentfield': 'items', - 'parenttype': 'Module Def' - }, - { - 'click_function': None, - 'creation': '2011-03-24 15:04:47', - 'description': None, - 'display_name': 'Warehouse Type', - 'doc_name': 'Warehouse Type', - 'doc_type': 'Setup Forms', - 'docstatus': 0, - 'doctype': 'Module Def Item', - 'fields': None, - 'hide': None, - 'icon': None, - 'idx': 14, - 'modified': '2011-03-24 15:04:47', - 'modified_by': 'Administrator', - 'name': '000003109', - 'owner': 'Administrator', - 'parent': 'Setup', - 'parentfield': 'items', - 'parenttype': 'Module Def' - }, - { - 'click_function': None, - 'creation': '2011-03-24 15:04:47', - 'description': None, - 'display_name': 'Warehouse', - 'doc_name': 'Warehouse', - 'doc_type': 'Setup Forms', - 'docstatus': 0, - 'doctype': 'Module Def Item', - 'fields': None, - 'hide': None, - 'icon': None, - 'idx': 15, - 'modified': '2011-03-24 15:04:47', - 'modified_by': 'Administrator', - 'name': '000003110', - 'owner': 'Administrator', - 'parent': 'Setup', - 'parentfield': 'items', - 'parenttype': 'Module Def' - }, - { - 'click_function': None, - 'creation': '2011-03-24 15:04:47', - 'description': None, - 'display_name': 'UOM', - 'doc_name': 'UOM', - 'doc_type': 'Setup Forms', - 'docstatus': 0, - 'doctype': 'Module Def Item', - 'fields': None, - 'hide': None, - 'icon': None, - 'idx': 16, - 'modified': '2011-03-24 15:04:47', - 'modified_by': 'Administrator', - 'name': '000003111', - 'owner': 'Administrator', - 'parent': 'Setup', - 'parentfield': 'items', - 'parenttype': 'Module Def' - }, - { - 'click_function': None, - 'creation': '2011-03-24 15:04:47', - 'description': None, - 'display_name': 'Term', - 'doc_name': 'Term', - 'doc_type': 'Setup Forms', - 'docstatus': 0, - 'doctype': 'Module Def Item', - 'fields': None, - 'hide': None, - 'icon': None, - 'idx': 17, - 'modified': '2011-03-24 15:04:47', - 'modified_by': 'Administrator', - 'name': '000003112', - 'owner': 'Administrator', - 'parent': 'Setup', - 'parentfield': 'items', - 'parenttype': 'Module Def' - }, - { - 'click_function': None, - 'creation': '2011-03-24 15:04:47', - 'description': None, - 'display_name': 'Taxes and Charges', - 'doc_name': 'Other Charges', - 'doc_type': 'Setup Forms', - 'docstatus': 0, - 'doctype': 'Module Def Item', - 'fields': None, - 'hide': None, - 'icon': None, - 'idx': 18, - 'modified': '2011-03-24 15:04:47', - 'modified_by': 'Administrator', - 'name': '000003113', - 'owner': 'Administrator', - 'parent': 'Setup', - 'parentfield': 'items', - 'parenttype': 'Module Def' - }, - { - 'click_function': None, - 'creation': '2011-03-24 15:04:47', - 'description': None, - 'display_name': 'Business Letter Type', - 'doc_name': 'Business Letter Type', - 'doc_type': 'Setup Forms', - 'docstatus': 0, - 'doctype': 'Module Def Item', - 'fields': None, - 'hide': None, - 'icon': None, - 'idx': 19, - 'modified': '2011-03-24 15:04:47', - 'modified_by': 'Administrator', - 'name': '000003114', - 'owner': 'Administrator', - 'parent': 'Setup', - 'parentfield': 'items', - 'parenttype': 'Module Def' - }, - { - 'click_function': None, - 'creation': '2011-03-24 15:04:47', - 'description': None, - 'display_name': 'Business Letter Template', - 'doc_name': 'Business Letter Template', - 'doc_type': 'Setup Forms', - 'docstatus': 0, - 'doctype': 'Module Def Item', - 'fields': None, - 'hide': None, - 'icon': None, - 'idx': 20, - 'modified': '2011-03-24 15:04:47', - 'modified_by': 'Administrator', - 'name': '000003115', - 'owner': 'Administrator', - 'parent': 'Setup', - 'parentfield': 'items', - 'parenttype': 'Module Def' - }, - { - 'click_function': None, - 'creation': '2011-03-24 15:04:47', - 'description': None, - 'display_name': 'Mode of Payment', - 'doc_name': 'Mode of Payment', - 'doc_type': 'Setup Forms', - 'docstatus': 0, - 'doctype': 'Module Def Item', - 'fields': None, - 'hide': None, - 'icon': None, - 'idx': 21, - 'modified': '2011-03-24 15:04:47', - 'modified_by': 'Administrator', - 'name': '000003116', - 'owner': 'harshada@webnotestech.com', - 'parent': 'Setup', - 'parentfield': 'items', - 'parenttype': 'Module Def' - }, - { - 'creation': '2010-11-30 22:43:08', - 'docstatus': 0, - 'doctype': 'Module Def Role', - 'idx': 1, - 'modified': '2010-11-30 22:43:08', - 'modified_by': 'Administrator', - 'name': 'MDR00042', - 'owner': 'Administrator', - 'parent': 'Setup', - 'parentfield': 'roles', - 'parenttype': 'Module Def', - 'role': 'Administrator' - }, - { - 'creation': '2010-11-30 22:43:08', - 'docstatus': 0, - 'doctype': 'Module Def Role', - 'idx': 2, - 'modified': '2010-11-30 22:43:08', - 'modified_by': 'Administrator', - 'name': 'MDR00043', - 'owner': 'Administrator', - 'parent': 'Setup', - 'parentfield': 'roles', - 'parenttype': 'Module Def', - 'role': 'System Manager' - }, - { - 'creation': '2010-11-30 22:43:08', - 'docstatus': 0, - 'doctype': 'Module Def Role', - 'idx': 3, - 'modified': '2010-11-30 22:43:08', - 'modified_by': 'Administrator', - 'name': 'MDR00044', - 'owner': 'saumil@webnotestech.com', - 'parent': 'Setup', - 'parentfield': 'roles', - 'parenttype': 'Module Def', - 'role': 'Sales User' - }, - { - 'creation': '2010-11-30 22:43:08', - 'docstatus': 0, - 'doctype': 'Module Def Role', - 'idx': 4, - 'modified': '2010-11-30 22:43:08', - 'modified_by': 'Administrator', - 'name': 'MDR00045', - 'owner': 'saumil@webnotestech.com', - 'parent': 'Setup', - 'parentfield': 'roles', - 'parenttype': 'Module Def', - 'role': 'Sales Master Manager' - }, - { - 'creation': '2010-11-30 22:43:08', - 'docstatus': 0, - 'doctype': 'Module Def Role', - 'idx': 5, - 'modified': '2010-11-30 22:43:08', - 'modified_by': 'Administrator', - 'name': 'MDR00046', - 'owner': 'saumil@webnotestech.com', - 'parent': 'Setup', - 'parentfield': 'roles', - 'parenttype': 'Module Def', - 'role': 'Sales Master Manager' - }, - { - 'creation': '2010-11-30 22:43:08', - 'docstatus': 0, - 'doctype': 'Module Def Role', - 'idx': 6, - 'modified': '2010-11-30 22:43:08', - 'modified_by': 'Administrator', - 'name': 'MDR00047', - 'owner': 'saumil@webnotestech.com', - 'parent': 'Setup', - 'parentfield': 'roles', - 'parenttype': 'Module Def', - 'role': 'Purchase User' - }, - { - 'creation': '2010-11-30 22:43:08', - 'docstatus': 0, - 'doctype': 'Module Def Role', - 'idx': 7, - 'modified': '2010-11-30 22:43:08', - 'modified_by': 'Administrator', - 'name': 'MDR00048', - 'owner': 'saumil@webnotestech.com', - 'parent': 'Setup', - 'parentfield': 'roles', - 'parenttype': 'Module Def', - 'role': 'Purchase Master Manager' - }, - { - 'creation': '2010-11-30 22:43:08', - 'docstatus': 0, - 'doctype': 'Module Def Role', - 'idx': 8, - 'modified': '2010-11-30 22:43:08', - 'modified_by': 'Administrator', - 'name': 'MDR00049', - 'owner': 'saumil@webnotestech.com', - 'parent': 'Setup', - 'parentfield': 'roles', - 'parenttype': 'Module Def', - 'role': 'Purchase Manager' - }, - { - 'creation': '2010-11-30 22:43:08', - 'docstatus': 0, - 'doctype': 'Module Def Role', - 'idx': 9, - 'modified': '2010-11-30 22:43:08', - 'modified_by': 'Administrator', - 'name': 'MDR00050', - 'owner': 'saumil@webnotestech.com', - 'parent': 'Setup', - 'parentfield': 'roles', - 'parenttype': 'Module Def', - 'role': 'Material User' - }, - { - 'creation': '2010-11-30 22:43:08', - 'docstatus': 0, - 'doctype': 'Module Def Role', - 'idx': 10, - 'modified': '2010-11-30 22:43:08', - 'modified_by': 'Administrator', - 'name': 'MDR00051', - 'owner': 'saumil@webnotestech.com', - 'parent': 'Setup', - 'parentfield': 'roles', - 'parenttype': 'Module Def', - 'role': 'Material Master Manager' - }, - { - 'creation': '2010-11-30 22:43:08', - 'docstatus': 0, - 'doctype': 'Module Def Role', - 'idx': 11, - 'modified': '2010-11-30 22:43:08', - 'modified_by': 'Administrator', - 'name': 'MDR00052', - 'owner': 'saumil@webnotestech.com', - 'parent': 'Setup', - 'parentfield': 'roles', - 'parenttype': 'Module Def', - 'role': 'Material Manager' - }, - { - 'creation': '2010-11-30 22:43:08', - 'docstatus': 0, - 'doctype': 'Module Def Role', - 'idx': 12, - 'modified': '2010-11-30 22:43:08', - 'modified_by': 'Administrator', - 'name': 'MDR00053', - 'owner': 'saumil@webnotestech.com', - 'parent': 'Setup', - 'parentfield': 'roles', - 'parenttype': 'Module Def', - 'role': 'Accounts User' - }, - { - 'creation': '2010-11-30 22:43:08', - 'docstatus': 0, - 'doctype': 'Module Def Role', - 'idx': 13, - 'modified': '2010-11-30 22:43:08', - 'modified_by': 'Administrator', - 'name': 'MDR00054', - 'owner': 'saumil@webnotestech.com', - 'parent': 'Setup', - 'parentfield': 'roles', - 'parenttype': 'Module Def', - 'role': 'Accounts Manager' - } -] \ No newline at end of file diff --git a/erpnext/setup/Role/System Manager/System Manager.txt b/erpnext/setup/Role/System Manager/System Manager.txt deleted file mode 100644 index 0918bc4f8c..0000000000 --- a/erpnext/setup/Role/System Manager/System Manager.txt +++ /dev/null @@ -1,26 +0,0 @@ -# Role, System Manager -[ - - # These values are common in all dictionaries - { - 'creation': '2010-08-08 17:08:51', - 'docstatus': 0, - 'modified': '2009-07-07 17:00:24', - 'modified_by': 'Administrator', - 'owner': 'Administrator' - }, - - # These values are common for all Role - { - 'doctype': 'Role', - 'module': 'Setup', - 'name': '__common__', - 'role_name': 'System Manager' - }, - - # Role, System Manager - { - 'doctype': 'Role', - 'name': 'System Manager' - } -] \ No newline at end of file diff --git a/erpnext/setup/__init__.py b/erpnext/setup/__init__.py index e69de29bb2..dad187308d 100644 --- a/erpnext/setup/__init__.py +++ b/erpnext/setup/__init__.py @@ -0,0 +1,3 @@ +install_docs = [ + {'doctype':'Role', 'name': 'System Manager'} +] \ No newline at end of file diff --git a/erpnext/setup/doctype/contact_control/contact_control.js b/erpnext/setup/doctype/contact_control/contact_control.js index b6825ebdb6..f58e75d9d9 100755 --- a/erpnext/setup/doctype/contact_control/contact_control.js +++ b/erpnext/setup/doctype/contact_control/contact_control.js @@ -1,14 +1,6 @@ // common partner functions // ========================= -/* -// make shipping list body -// ------------------------ -cur_frm.cscript.make_sl_body = function(){ - cur_frm.fields_dict['Shipping HTML'].wrapper.innerHTML = ''; - cur_frm.shipping_html = $a(cur_frm.fields_dict['Shipping HTML'].wrapper,'div'); -} -*/ // make history list body // ----------------------- @@ -18,35 +10,6 @@ cur_frm.cscript.make_hl_body = function(){ } -/* -// set shipping list message -// -------------------------- -cur_frm.cscript.set_sl_msg = function(doc){ - cur_frm.shipping_html.innerHTML = 'Shipping Address Details will appear only when you save the ' + doc.doctype.toLowerCase(); -} -*/ -/* -// set history list message -// ------------------------- -cur_frm.cscript.set_hl_msg = function(doc){ - cur_frm.history_html.innerHTML= 'History Details will appear only when you save the ' + doc.doctype.toLowerCase(); -} -*/ - - -/* -// make shipping address -// ------------- -cur_frm.cscript.make_shipping_address = function(doc, dt, dn){ - cur_frm.shipping_html.innerHTML = ''; - - var dsn = cur_frm.doc.customer_name; - var dsa = cur_frm.doc.address; - cl = new AddressList(cur_frm.shipping_html,dt,dn,dsn,dsa); -} -*/ - - // make history // ------------- cur_frm.cscript.make_history = function(doc,dt,dn){ @@ -157,406 +120,4 @@ if(cur_frm.fields_dict['territory']){ cur_frm.fields_dict['territory'].get_query = function(doc,dt,dn) { return 'SELECT `tabTerritory`.`name`,`tabTerritory`.`parent_territory` FROM `tabTerritory` WHERE `tabTerritory`.`is_group` = "No" AND `tabTerritory`.`docstatus`!= 2 AND `tabTerritory`.%(key)s LIKE "%s" ORDER BY `tabTerritory`.`name` ASC LIMIT 50'; } -} - - -// ======================================================================================================= - -// contact list -// -------------- -ContactList = function(parent,dt,dn,dsn){ - - var me = this; - - this.dt = dt; - this.dn = dn; - this.dsn = dsn ? dsn : dn; - - this.wrapper = $a(parent,'div'); - me.get_list(); -} - -// add contact -// ------------ -ContactList.prototype.add_contact = function(){ - var me = this; - - // onload - set default values - var cont = LocalDB.create('Contact'); - - var c = locals['Contact'][cont]; - - if(me.dt == 'Customer') { - c.is_customer = 1; - c.customer = me.dn; - c.customer_name = me.dsn; - } - else if(me.dt == 'Supplier'){ - c.is_supplier = 1; - c.supplier = me.dn; - c.supplier_name = me.dsn; - } - else if(me.dt == 'Sales Partner'){ - c.is_sales_partner = 1; - c.sales_partner = me.dn; - //c.sales_partner_name = me.dsn; - } - - loaddoc('Contact',c.name); -} - -// get contact list -// ----------------- -ContactList.prototype.get_list = function(){ - var me = this; - - me.make_list(); - - var dt = me.dt.toLowerCase().split(' ').join('_'); - - // build query - me.lst.get_query = function(){ - this.query = repl("select name, first_name, last_name, concat_ws(' ', first_name, last_name), email_id, contact_no, department, designation, is_primary_contact, has_login, disable_login from tabContact where %(dt)s = '%(dn)s' and docstatus != 2",{'dt':dt, 'dn':me.dn}); - - this.query_max = repl("select count(name) from tabContact where %(dt)s = '%(dn)s' and docstatus != 2",{'dt':dt, 'dn':me.dn}); - } - - // render list ui - me.lst.show_cell = function(cell,ri,ci,d){ - me.render_list(cell,ri,ci,d); - } - - // run query - me.lst.run(); - - // onrun - me.lst.onrun = function(){ - if(!this.has_data()){ - this.rec_label.innerHTML = ''; - - $a(this.rec_label,'span').innerHTML = "You do not have any contact. "; - $($a(this.rec_label,'span')).html('Add a new contact').addClass('link_type').click(function(){ me.add_contact(); }); - - $dh(this.results); - } - else{ - $ds(this.results); - } - } -} - -// make list -// ----------- -ContactList.prototype.make_list = function(){ - var me = this; - - var l = new Listing(); - l.colwidths = ['5%','30%','30%','20%','20%']; - l.colnames = ['Sr.','Contact Name','Email Id','Contact No', 'Action']; - l.page_len = 10; - - me.lst = l; - - l.make(me.wrapper); - - // Add contact button - me.add_btn = $btn(l.btn_area,'+ Add Contact', function(){ me.add_contact();}, {fontWeight:'bold'}); -} - -// make contact cell -// ------------------ -ContactList.prototype.render_list = function(cell,ri,ci,d){ - var me = this; - - // name - if(ci == 0){ - var nm = $a($a(cell,'div'),'span','',{cursor:'pointer'}); - nm.innerHTML = d[ri][3]; - nm.id = d[ri][0]; - - nm.onclick = function(){ - loaddoc('Contact', this.id); - - // on save callback - refresh list - } - - // department and designation - var des = d[ri][7] ? d[ri][7] : ''; - var dep = d[ri][6] ? d[ri][6] : ''; - - var sp = $a(cell,'div','comment'); - sp.innerHTML = des + (dep ? (', ' + dep) : ''); - } - - // email id, contact no, department, designation - // ----------------------------------------------------- - if(ci == 1) cell.innerHTML = d[ri][4] ? d[ri][4] : '-'; - if(ci == 2) cell.innerHTML = d[ri][5] ? d[ri][5] : '-'; - - // actions - // -------------------------------------- - if(ci== 3) me.make_actions(cell,ri,ci,d); -} - -// make actions -// --------------- -ContactList.prototype.make_actions = function(cell,ri,ci,d){ - var me = this; - - var tab = make_table(cell,1,2,'100%',['40%','60%']); - - // Edit and Delete - var t = make_table($td(tab,0,0),1,2); - - var edit = $a($td(t,0,0),'div','wn-icon ic-doc_edit'); - $(edit).click(function(){ loaddoc('Contact',d[ri][0]); }); - - edit.setAttribute('title','Edit'); - -// Below code should be uncommented once customer/venodr invitation process is stable -// =========================================================================== -/* - var del = $a($td(t,0,1),'div','wn-icon ic-trash'); - $(del).click(function(){ me.delete_contact(d[ri][0],d[ri][4]) }); - - set_custom_tooltip(del, 'Delete'); - - // Invite, Enable and Disable - Integrate after gateway logic incorporated - - if(d[ri][9] == 'Yes') { - if(d[ri][10] == 'Yes'){ - var enb = $a($td(tab,0,1),'div','wn-icon ic-checkmark'); - $(enb).click(function(){ me.enable_login(d[ri][0], d[ri][4]); }); - } - else{ - var dsb = $a($td(tab,0,1),'div','wn-icon ic-delete'); - $(dsb).click(function(){ me.disable_login(d[ri][0], d[ri][4]) }); - } - } - else{ - var inv = $a($td(tab,0,1),'div','wn-icon ic-mail'); - $(inv).click(function(){ me.invite_contact(d[ri][0], d[ri][4], d[ri][1], d[ri][2]) }); - }*/ -} - -// enable login -// ---------------------------------------------------------- -ContactList.prototype.enable_login = function(id, email_id){ - var me = this; - - var callback = function(r,rt){ - me.get_list(); - - if(!r.exc) msgprint('Login for contact enabled',1); - else errprint(r.exc); - } - - var args = {}; - args.contact = id; - args.email = email_id; - - $c_obj('Contact Control','enable_login',JSON.stringify(args),callback); -} - -// disable login -// ------------------------------------------------------------- -ContactList.prototype.disable_login = function(id, email_id){ - var me = this; - - var callback = function(r,rt){ - me.get_list(); - - if(!r.exc) msgprint('Login for contact disabled',1); - else errprint(r.exc); - } - - var args = {}; - args.contact = id; - args.email = email_id; - - $c_obj('Contact Control','disable_login',JSON.stringify(args),callback); -} - -// delete contact -// ----------------- -ContactList.prototype.delete_contact = function(id,email_id,has_login){ - var me = this; - - var callback = function(r,rt){ - me.get_list(); - - if(!r.exc) msgprint('Contact deleted successfully'); - else errprint(r.exc); - } - - var args = {}; - args.contact = id; - args.email = email_id; - args.has_login = has_login; - - $c_obj('Contact Control','delete_contact',JSON.stringify(args),callback); -} - -// invite user -// -------------------------------------------------------- -ContactList.prototype.invite_contact = function(id,email_id,first_name,last_name){ - var me = this; - - if(!email_id){ - msgprint("Please add email id and save the contact first. You can then invite contact to view transactions.") - } - else{ - var callback = function(r,rt){ - if(!r.exc) msgprint('Invitation sent'); - else errprint(r.exc); - } - - var args = { - 'contact' : id, - 'email' : email_id, - 'first_name' : first_name ? first_name : '', - 'last_name' : last_name ? last_name : '', - 'usert_type' : 'Partner' - }; - - $c_obj('Contact Control','invite_contact',JSON.stringify(args),callback); - } -} - - -// address list -// -------------- -AddressList = function(parent,dt,dn,dsn,dsa){ - - var me = this; - - this.dt = dt; - this.dn = dn; - this.dsn = dsn ? dsn : dn; - this.dsa = dsa ? dsa : ''; - - this.wrapper = $a(parent,'div'); - me.get_addr_list(); -} - - -// add contact -// ------------ -AddressList.prototype.add_address = function(){ - var me = this; - - // onload - set default values - var addr = LocalDB.create('Shipping Address'); - - var a = locals['Shipping Address'][addr]; - - a.customer = me.dn; - a.customer_name = me.dsn; - a.customer_address = me.dsa; - loaddoc('Shipping Address',a.name); -} - - -// get address list -// ----------------- -AddressList.prototype.get_addr_list = function(){ - var me = this; - - me.make_addr_list(); - - var dt = me.dt.toLowerCase().split(' ').join('_'); - - // build query - me.lst.get_query = function(){ - this.query = repl("select name, ship_to, shipping_address, is_primary_address, shipping_details from `tabShipping Address` where %(dt)s = '%(dn)s' and docstatus != 2",{'dt':dt, 'dn':me.dn}); - - this.query_max = repl("select count(name) from `tabShipping Address` where %(dt)s = '%(dn)s'",{'dt':dt, 'dn':me.dn}); - } - - // render list ui - me.lst.show_cell = function(cell,ri,ci,d){ - me.render_list(cell,ri,ci,d); - } - - // run query - me.lst.run(); - - // onrun - me.lst.onrun = function(){ - if(!this.has_data()){ - this.rec_label.innerHTML = ''; - - $a(this.rec_label,'span').innerHTML = "You do not have any shipping address."; - $($a(this.rec_label,'span')).html('Add a new address').addClass('link_type').click(function(){ me.add_address(); }); - - $dh(this.results); - } - else{ - $ds(this.results); - } - } -} - - -// make list -// ----------- -AddressList.prototype.make_addr_list = function(){ - var me = this; - - var l = new Listing(); - l.colwidths = ['5%', '15%', '25%','10%','35%','10%']; - l.colnames = ['Sr.', 'Ship To', 'Shipping Address','Primary Address', 'Shipping Details', 'Action']; - l.page_len = 10; - - me.lst = l; - - l.make(me.wrapper); - - // Add address button - me.add_btn = $btn(l.btn_area,'+ Add Address', function(){ me.add_address();}, {fontWeight:'bold'}); -} - - - -// make address cell -// ------------------ -AddressList.prototype.render_list = function(cell,ri,ci,d){ - var me = this; - - // name - if(ci == 0){ - var nm = $a($a(cell,'div'),'span','',{cursor:'pointer'}); - nm.innerHTML = d[ri][1]; - nm.id = d[ri][0]; - - nm.onclick = function(){ - loaddoc('Shipping Address', this.id); - } - } - - // shipping address, primary address, shipping details - // ---------------------------------------------------- - if(ci == 1) cell.innerHTML = d[ri][2] ? d[ri][2] : '-'; - if(ci == 2) cell.innerHTML = d[ri][3] ? d[ri][3] : '-'; - if(ci == 3) cell.innerHTML = d[ri][4] ? d[ri][4] : '-'; - - // actions - // -------------------------------------- - if(ci== 4) me.make_actions(cell,ri,ci,d); -} - -// make actions -// --------------- -AddressList.prototype.make_actions = function(cell,ri,ci,d){ - var me = this; - - var tab = make_table(cell,1,2,'100%',['40%','60%']); - - // Edit and Delete - var t = make_table($td(tab,0,0),1,2); - - var edit = $a($td(t,0,0),'div','wn-icon ic-doc_edit'); - $(edit).click(function(){ loaddoc('Shipping Address',d[ri][0]); }); - - edit.setAttribute('title','Edit'); -} +} \ No newline at end of file diff --git a/erpnext/setup/doctype/manage_account/manage_account.txt b/erpnext/setup/doctype/manage_account/manage_account.txt index 18a9872d1c..4077afe76e 100644 --- a/erpnext/setup/doctype/manage_account/manage_account.txt +++ b/erpnext/setup/doctype/manage_account/manage_account.txt @@ -231,7 +231,7 @@ 'doctype': 'DocField', 'fieldtype': 'HTML', 'label': 'IGHelp', - 'options': 'To manage Item Groups, click here' + 'options': 'To manage Item Groups, click here' }, # DocField @@ -391,7 +391,7 @@ 'doctype': 'DocField', 'fieldtype': 'HTML', 'label': 'CGHelp', - 'options': 'To manage Customer Groups, click here' + 'options': 'To manage Customer Groups, click here' }, # DocField @@ -408,7 +408,7 @@ 'doctype': 'DocField', 'fieldtype': 'HTML', 'label': 'TerritoryHelp', - 'options': 'To manage Territory, click here' + 'options': 'To manage Territory, click here' }, # DocField diff --git a/erpnext/setup/doctype/sales_partner/sales_partner.js b/erpnext/setup/doctype/sales_partner/sales_partner.js index 1194756412..30ab18a324 100644 --- a/erpnext/setup/doctype/sales_partner/sales_partner.js +++ b/erpnext/setup/doctype/sales_partner/sales_partner.js @@ -14,7 +14,7 @@ // You should have received a copy of the GNU General Public License // along with this program. If not, see . -$import(Contact Control) +wn.require('erpnext/setup/doctype/contact_control/contact_control.js'); cur_frm.cscript.onload = function(doc,dt,dn){ // history doctypes and scripts @@ -48,18 +48,10 @@ cur_frm.cscript.refresh = function(doc,dt,dn){ cur_frm.cscript.make_address = function() { if(!cur_frm.address_list) { - cur_frm.address_list = new wn.widgets.Listing({ + cur_frm.address_list = new wn.ui.Listing({ parent: cur_frm.fields_dict['Address HTML'].wrapper, page_length: 2, - new_doctype: "Address", - new_doc_onload: function(dn) { - ndoc = locals["Address"][dn]; - ndoc.sales_partner = cur_frm.doc.name; - ndoc.address_type = 'Office'; - }, - new_doc_onsave: function(dn) { - cur_frm.address_list.run() - }, + new_doctype: "Address", get_query: function() { return "select name, address_type, address_line1, address_line2, city, state, country, pincode, fax, email_id, phone, is_primary_address, is_shipping_address from tabAddress where sales_partner='"+cur_frm.docname+"' and docstatus != 2 order by is_primary_address desc" }, @@ -80,17 +72,10 @@ cur_frm.cscript.make_address = function() { cur_frm.cscript.make_contact = function() { if(!cur_frm.contact_list) { - cur_frm.contact_list = new wn.widgets.Listing({ + cur_frm.contact_list = new wn.ui.Listing({ parent: cur_frm.fields_dict['Contact HTML'].wrapper, page_length: 2, new_doctype: "Contact", - new_doc_onload: function(dn) { - ndoc = locals["Contact"][dn]; - ndoc.sales_partner = cur_frm.doc.name; - }, - new_doc_onsave: function(dn) { - cur_frm.contact_list.run() - }, get_query: function() { return "select name, first_name, last_name, email_id, phone, mobile_no, department, designation, is_primary_contact from tabContact where sales_partner='"+cur_frm.docname+"' and docstatus != 2 order by is_primary_contact desc" }, diff --git a/erpnext/setup/doctype/sales_person/sales_person.txt b/erpnext/setup/doctype/sales_person/sales_person.txt index 0680c3886f..9ae96bfc33 100644 --- a/erpnext/setup/doctype/sales_person/sales_person.txt +++ b/erpnext/setup/doctype/sales_person/sales_person.txt @@ -183,7 +183,7 @@ 'idx': 5, 'label': 'SPHelp', 'oldfieldtype': 'HTML', - 'options': 'To manage Sales Person, click here', + 'options': 'To manage Sales Person, click here', 'permlevel': 0 }, diff --git a/erpnext/setup/page/import_data/import_data.js b/erpnext/setup/page/import_data/import_data.js index aeb7dadabd..734c16d6e7 100644 --- a/erpnext/setup/page/import_data/import_data.js +++ b/erpnext/setup/page/import_data/import_data.js @@ -47,7 +47,7 @@ pscript['onload_Import Data'] = function() { dt.onclick = function(){ var ovr = $('input[name="overwrite"]:checked').length; - window.location = outUrl + '?cmd=get_template&dt=' + this.nm + (ovr ? '&overwrite=1' : ''); + window.location = wn.request.url + '?cmd=get_template&dt=' + this.nm + (ovr ? '&overwrite=1' : ''); } } } diff --git a/erpnext/setup/page/modules_setup/modules_setup.js b/erpnext/setup/page/modules_setup/modules_setup.js index af7522f4ae..c7f80fcf9e 100644 --- a/erpnext/setup/page/modules_setup/modules_setup.js +++ b/erpnext/setup/page/modules_setup/modules_setup.js @@ -1,4 +1,4 @@ -wn.require('lib/js/lib/jquery-ui-sortable.min.js'); +wn.require('lib/js/lib/jquery/jquery.ui.sortable.js'); $.extend(wn.pages.modules_setup, { modules: ['Activity', 'Accounts', 'Selling', 'Buying', 'Stock', 'Production', 'Projects', diff --git a/erpnext/setup/page/setup/setup.html b/erpnext/setup/page/setup/setup.html index 50ef112bbb..056a28f2f6 100644 --- a/erpnext/setup/page/setup/setup.html +++ b/erpnext/setup/page/setup/setup.html @@ -31,10 +31,6 @@ Amount based Authorization Rules
Restrict submission rights based on amount

-

- Modules Setup
- Show, hide modules -

Data

@@ -84,22 +80,30 @@

Customize ERPNext

-

- Custom Fields
- Add fields to forms -

Customize Forms
Change entry properties (hide fields, make mandatory etc)

- Numbering Series
- Set multiple numbering series for transactions + Custom Fields
+ Add fields to forms +

+

+ Custom Scripts
+ Add custom code to forms

Disable Features
Simplify entry forms by disabling features

+

+ Modules Setup
+ Show, hide modules +

+

+ Numbering Series
+ Set multiple numbering series for transactions +

Branding and Printing

@@ -115,14 +119,16 @@ Print Headings
Add headers for standard print formats

+

Style Settings
Change background fonts etc

- \ No newline at end of file + diff --git a/erpnext/startup/event_handlers.py b/erpnext/startup/event_handlers.py index 107a5d759e..e5846b5bea 100644 --- a/erpnext/startup/event_handlers.py +++ b/erpnext/startup/event_handlers.py @@ -89,6 +89,7 @@ def boot_session(bootinfo): import webnotes.model.doctype bootinfo['docs'] += webnotes.model.doctype.get('Event') + bootinfo['docs'] += webnotes.model.doctype.get('Search Criteria') bootinfo['modules_list'] = webnotes.conn.get_global('modules_list') diff --git a/erpnext/startup/js/complete_setup.js b/erpnext/startup/js/complete_setup.js index ac89affa5c..c643813a2d 100644 --- a/erpnext/startup/js/complete_setup.js +++ b/erpnext/startup/js/complete_setup.js @@ -85,7 +85,7 @@ erpnext.complete_setup = function() { wn.boot.user_info[user].fullname = user_fullname; d.hide(); $('header').toggle(true); - page_body.wntoolbar.set_user_name(); + wn.container.wntoolbar.set_user_name(); }); } diff --git a/erpnext/startup/js/modules.js b/erpnext/startup/js/modules.js index d43b0210b3..2e0e701197 100644 --- a/erpnext/startup/js/modules.js +++ b/erpnext/startup/js/modules.js @@ -61,7 +61,7 @@ erpnext.module_page.hide_links = function(wrapper) { erpnext.module_page.make_list = function(module, wrapper) { // make project listing - wrapper.list = new wn.widgets.Listing({ + wrapper.list = new wn.ui.Listing({ parent: $(wrapper).find('.reports-list').get(0), method: 'utilities.get_report_list', render_row: function(row, data) { diff --git a/erpnext/startup/js/toolbar.js b/erpnext/startup/js/toolbar.js index 7bf9c6a04e..eb3bff80a3 100644 --- a/erpnext/startup/js/toolbar.js +++ b/erpnext/startup/js/toolbar.js @@ -48,7 +48,7 @@ erpnext.toolbar.setup = function() { $('#toolbar-user').append('
  • Billing
  • ') } - $.extend(page_body.wntoolbar, { + $.extend(wn.container.wntoolbar, { set_new_comments: function(new_comments) { var navbar_nc = $('.navbar-new-comments'); if(new_comments && new_comments.length>0) { @@ -66,7 +66,7 @@ erpnext.toolbar.setup = function() { } }); - page_body.wntoolbar.set_new_comments(); + wn.container.wntoolbar.set_new_comments(); } erpnext.toolbar.add_modules = function() { diff --git a/erpnext/startup/startup.css b/erpnext/startup/startup.css index 225e444466..2735ffec07 100644 --- a/erpnext/startup/startup.css +++ b/erpnext/startup/startup.css @@ -1,11 +1,11 @@ h1, h2, h3, h4, h5 { - font-family: Tahoma, Arial, Verdana, sans-serif; + font-family: "Lato", Helvetica, "Helvetica Neue", sans-serif; font-weight: bold; } body { - font-family: 'Lucida Grande', 'Lucida Sans Unicode', Verdana, sans-serif; - font-size: 12px; + font-family: "Lato", Helvetica, "Helvetica Neue", sans-serif; + font-size: 13px; } span, div, td, input, textarea, button, select { @@ -13,7 +13,11 @@ span, div, td, input, textarea, button, select { } body { - background: url(../images/stripedbg.png) repeat; + background: url(../images/redbeech.jpg) repeat; +} + +.small { + font-size: 11.5px; } .erpnext-footer { diff --git a/erpnext/startup/startup.js b/erpnext/startup/startup.js index c00770c4d9..925c85e6d5 100644 --- a/erpnext/startup/startup.js +++ b/erpnext/startup/startup.js @@ -49,14 +49,14 @@ erpnext.startup.start = function() { erpnext.startup.set_globals(); - if(wn.boot.custom_css) { - set_style(wn.boot.custom_css); - } 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; } @@ -73,8 +73,8 @@ erpnext.startup.start = function() { // border to the body // ------------------ - $('footer').html(''); + //$('footer').html(''); // complete registration if(in_list(user_roles,'System Manager') && (wn.boot.setup_complete=='No')) { @@ -107,14 +107,14 @@ show_chart_browser = function(nm, chart_type){ var update_messages = function(reset) { // Updates Team Messages - if(inList(['Guest'], user)) { return; } + if(inList(['Guest'], user) || !wn.session_alive) { return; } if(!reset) { $c_page('home', 'event_updates', 'get_global_status_messages', null, function(r,rt) { if(!r.exc) { // This function is defined in toolbar.js - page_body.wntoolbar.set_new_comments(r.message.unread_messages); + wn.container.wntoolbar.set_new_comments(r.message.unread_messages); var show_in_circle = function(parent_id, msg) { var parent = $('#'+parent_id); @@ -139,7 +139,7 @@ var update_messages = function(reset) { } ); } else { - page_body.wntoolbar.set_new_comments(0); + wn.container.wntoolbar.set_new_comments(0); $('#unread_messages').toggle(false); } } diff --git a/erpnext/stock/DocType Mapper/Purchase Order-Purchase Receipt/Purchase Order-Purchase Receipt.txt b/erpnext/stock/DocType Mapper/Purchase Order-Purchase Receipt/Purchase Order-Purchase Receipt.txt index e3f0dc9adf..d62849590e 100644 --- a/erpnext/stock/DocType Mapper/Purchase Order-Purchase Receipt/Purchase Order-Purchase Receipt.txt +++ b/erpnext/stock/DocType Mapper/Purchase Order-Purchase Receipt/Purchase Order-Purchase Receipt.txt @@ -5,7 +5,7 @@ { 'creation': '2010-08-08 17:09:35', 'docstatus': 0, - 'modified': '2012-03-01 17:58:16', + 'modified': '2012-03-20 14:24:12', 'modified_by': u'Administrator', 'owner': u'Administrator' }, diff --git a/erpnext/stock/Module Def/Stock/Stock.txt b/erpnext/stock/Module Def/Stock/Stock.txt deleted file mode 100644 index 991d4100b3..0000000000 --- a/erpnext/stock/Module Def/Stock/Stock.txt +++ /dev/null @@ -1,242 +0,0 @@ -# Module Def, Stock -[ - - # These values are common in all dictionaries - { - 'creation': '2011-07-01 17:40:49', - 'docstatus': 0, - 'modified': '2012-02-01 15:43:00', - 'modified_by': 'Administrator', - 'owner': 'Administrator' - }, - - # These values are common for all Module Def Role - { - 'doctype': 'Module Def Role', - 'name': '__common__', - 'parent': 'Stock', - 'parentfield': 'roles', - 'parenttype': 'Module Def' - }, - - # These values are common for all Module Def Item - { - 'doctype': 'Module Def Item', - 'name': '__common__', - 'parent': 'Stock', - 'parentfield': 'items', - 'parenttype': 'Module Def' - }, - - # These values are common for all Module Def - { - 'disabled': 'No', - 'doctype': u'Module Def', - 'doctype_list': 'DocType Label, QA Inspection Report', - 'is_hidden': 'No', - 'module_desc': 'Material Management', - 'module_icon': 'Stock.gif', - 'module_label': 'Stock', - 'module_name': 'Stock', - 'module_seq': 7, - 'name': '__common__' - }, - - # Module Def, Stock - { - 'doctype': u'Module Def', - 'name': 'Stock' - }, - - # Module Def Item - { - 'description': 'Item master', - 'display_name': 'Item', - 'doc_name': 'Item', - 'doc_type': 'Forms', - 'doctype': 'Module Def Item', - 'fields': 'name\nitem_group\ndescription' - }, - - # Module Def Item - { - 'description': 'A unique number identifying each entity of an item', - 'display_name': 'Serial No', - 'doc_name': 'Serial No', - 'doc_type': 'Forms', - 'doctype': 'Module Def Item', - 'fields': 'item_code\nstatus\nwarehouse\npr_no\ndelivery_note_no\ncustomer' - }, - - # Module Def Item - { - 'description': 'Record of items added, removed or moved from one warehouse to another.', - 'display_name': 'Stock Entry', - 'doc_name': 'Stock Entry', - 'doc_type': 'Forms', - 'doctype': 'Module Def Item', - 'fields': 'transfer_date\npurpose\nfrom_warehouse\nto_warehouse\nremarks' - }, - - # Module Def Item - { - 'description': 'Record of items delivered to your customers along with the Printed Note', - 'display_name': 'Delivery Note', - 'doc_name': 'Delivery Note', - 'doc_type': 'Forms', - 'doctype': 'Module Def Item', - 'fields': 'status\ntransaction_date\ncustomer\nterritory\ngrand_total\nper_billed' - }, - - # Module Def Item - { - 'description': 'Generate Packing Slips based on a Delivery Note', - 'display_name': 'Packing Slip', - 'doc_name': 'Packing Slip', - 'doc_type': 'Forms', - 'doctype': 'Module Def Item', - 'fields': 'delivery_note\nfrom_case_no\nto_case_no\nnet_weight_pkg\ngross_weight_pkg' - }, - - # Module Def Item - { - 'description': 'Record of incoming material from your suppliers', - 'display_name': 'Purchase Receipt', - 'doc_name': 'Purchase Receipt', - 'doc_type': 'Forms', - 'doctype': 'Module Def Item', - 'fields': 'status\ntransaction_date\nsupplier\ngrand_total\nper_billed' - }, - - # Module Def Item - { - 'description': 'Details of Installation done after delivery', - 'display_name': 'Installation Note', - 'doc_name': 'Installation Note', - 'doc_type': 'Forms', - 'doctype': 'Module Def Item' - }, - - # Module Def Item - { - 'description': 'Create Quality Inspection Report for any item', - 'display_name': 'Inspection Report', - 'doc_name': 'QA Inspection Report', - 'doc_type': 'Forms', - 'doctype': 'Module Def Item', - 'fields': 'inspection_type\nitem_code\nreport_date\npurchase_receipt_no\ndelivery_note_no' - }, - - # Module Def Item - { - 'description': 'Reconcile your stock by uploading it form an excel file', - 'display_name': 'Stock Reconciliation', - 'doc_name': 'Stock Reconciliation', - 'doc_type': 'Forms', - 'doctype': 'Module Def Item', - 'fields': 'reconciliation_date\nreconciliation_time\nremark' - }, - - # Module Def Item - { - 'description': 'This utility tool will update Stock UOM in Item and will respectively update Actual Qty in Stock Ledger as per Conversion Factor.', - 'display_name': 'Stock UOM Replace Utility', - 'doc_name': 'Stock UOM Replace Utility', - 'doc_type': 'Single DocType', - 'doctype': 'Module Def Item' - }, - - # Module Def Item - { - 'description': 'This utility will help in tracking stock for Sales Return and Purchase Return.', - 'display_name': 'Sales and Purchase Return Wizard', - 'doc_name': 'Sales and Purchase Return Wizard', - 'doc_type': 'Single DocType', - 'doctype': 'Module Def Item' - }, - - # Module Def Item - { - 'description': 'You can create master template for landed cost wizard', - 'display_name': 'Landed Cost Master', - 'doc_name': 'Landed Cost Master', - 'doc_type': 'Forms', - 'doctype': 'Module Def Item', - 'icon': 'accept.gif' - }, - - # Module Def Item - { - 'description': 'Add extra expenses into Purchase Receipt which should be consider for item valuation. The cost will be added proportionately as per purchase receipt value.', - 'display_name': 'Landed Cost Wizard', - 'doc_name': 'Landed Cost Wizard', - 'doc_type': 'Forms', - 'doctype': 'Module Def Item', - 'icon': 'accept.gif' - }, - - # Module Def Item - { - 'display_name': 'Stock Ledger', - 'doc_name': 'Stock Ledger Entry', - 'doc_type': 'Reports', - 'doctype': 'Module Def Item' - }, - - # Module Def Item - { - 'display_name': 'Stock Level', - 'doc_name': 'Bin', - 'doc_type': 'Reports', - 'doctype': 'Module Def Item' - }, - - # Module Def Item - { - 'display_name': 'Shortage To Indent', - 'doc_name': 'Item', - 'doc_type': 'Reports', - 'doctype': 'Module Def Item' - }, - - # Module Def Item - { - 'description': 'Stock Value as per Item and Warehouse', - 'display_name': 'Stock Report', - 'doc_name': 'Stock Ledger Entry', - 'doc_type': 'Reports', - 'doctype': 'Module Def Item' - }, - - # Module Def Item - { - 'display_name': 'Stock Aging Report', - 'doc_name': 'Serial No', - 'doc_type': 'Reports', - 'doctype': 'Module Def Item' - }, - - # Module Def Role - { - 'doctype': 'Module Def Role', - 'role': 'Material User' - }, - - # Module Def Role - { - 'doctype': 'Module Def Role', - 'role': 'Material Master Manager' - }, - - # Module Def Role - { - 'doctype': 'Module Def Role', - 'role': 'Material Manager' - }, - - # Module Def Role - { - 'doctype': 'Module Def Role', - 'role': 'Quality Manager' - } -] \ No newline at end of file diff --git a/erpnext/stock/doctype/delivery_note/delivery_note.js b/erpnext/stock/doctype/delivery_note/delivery_note.js index 1f5170be96..95bd7bf504 100644 --- a/erpnext/stock/doctype/delivery_note/delivery_note.js +++ b/erpnext/stock/doctype/delivery_note/delivery_note.js @@ -20,9 +20,10 @@ cur_frm.cscript.fname = "delivery_note_details"; cur_frm.cscript.other_fname = "other_charges"; cur_frm.cscript.sales_team_fname = "sales_team"; -$import(Sales Common) -$import(Other Charges) -$import(SMS Control) +wn.require('erpnext/selling/doctype/sales_common/sales_common.js'); +wn.require('erpnext/setup/doctype/other_charges/other_charges.js'); +wn.require('erpnext/utilities/doctype/sms_control/sms_control.js'); +wn.require('erpnext/setup/doctype/notification_control/notification_control.js'); // ONLOAD // ================================================================================================ @@ -81,11 +82,11 @@ cur_frm.cscript.refresh = function(doc, cdt, cdn) { cur_frm.cscript.customer = function(doc,dt,dn,onload) { var callback = function(r,rt) { var doc = locals[cur_frm.doctype][cur_frm.docname]; + if(doc.customer) unhide_field(['customer_address','contact_person','customer_name','address_display','contact_display','contact_mobile','contact_email','territory','customer_group','shipping_address']); cur_frm.refresh(); } var args = onload ? 'onload':'' if(doc.customer) $c_obj(make_doclist(doc.doctype, doc.name), 'get_default_customer_shipping_address', args, callback); - if(doc.customer) unhide_field(['customer_address','contact_person','customer_name','address_display','contact_display','contact_mobile','contact_email','territory','customer_group','shipping_address']); } cur_frm.cscript.customer_address = cur_frm.cscript.contact_person = function(doc,dt,dn) { @@ -322,7 +323,6 @@ cur_frm.pformat.sales_order_no= function(doc, cdt, cdn){ return out; } -$import(Notification Control) cur_frm.cscript.on_submit = function(doc, cdt, cdn) { var args = { type: 'Delivery Note', diff --git a/erpnext/stock/doctype/delivery_note/delivery_note.txt b/erpnext/stock/doctype/delivery_note/delivery_note.txt index 314d0d9481..4878c36bad 100644 --- a/erpnext/stock/doctype/delivery_note/delivery_note.txt +++ b/erpnext/stock/doctype/delivery_note/delivery_note.txt @@ -31,11 +31,11 @@ 'module': u'Stock', 'name': '__common__', 'read_only_onload': 1, - 'search_fields': u'status,transaction_date,customer,customer_name, territory,grand_total', + 'search_fields': u'status,customer,customer_name, territory,grand_total', 'section_style': u'Tabbed', 'server_code_error': u' ', 'show_in_menu': 0, - 'subject': u'To %(customer_name)s on %(transaction_date)s | %(per_billed)s% billed', + 'subject': u'To %(customer_name)s on %(posting_date)s | %(per_billed)s% billed', 'tag_fields': u'billing_status', 'version': 475 }, diff --git a/erpnext/stock/doctype/purchase_receipt/purchase_receipt.js b/erpnext/stock/doctype/purchase_receipt/purchase_receipt.js index 7ad9d91928..921eede2e9 100644 --- a/erpnext/stock/doctype/purchase_receipt/purchase_receipt.js +++ b/erpnext/stock/doctype/purchase_receipt/purchase_receipt.js @@ -18,9 +18,10 @@ cur_frm.cscript.tname = "Purchase Receipt Detail"; cur_frm.cscript.fname = "purchase_receipt_details"; cur_frm.cscript.other_fname = "purchase_tax_details"; -$import(Purchase Common) -$import(Purchase Other Charges) -$import(SMS Control) +wn.require('erpnext/buying/doctype/purchase_other_charges/purchase_other_charges.js'); +wn.require('erpnext/buying/doctype/purchase_common/purchase_common.js'); +wn.require('erpnext/utilities/doctype/sms_control/sms_control.js'); +wn.require('erpnext/setup/doctype/notification_control/notification_control.js'); //========================== On Load ================================================================ cur_frm.cscript.onload = function(doc, cdt, cdn) { @@ -315,7 +316,6 @@ cur_frm.pformat.purchase_order_no = function(doc, cdt, cdn){ return out; } -$import(Notification Control) cur_frm.cscript.on_submit = function(doc, cdt, cdn) { var args = { type: 'Purchase Receipt', diff --git a/erpnext/stock/doctype/purchase_receipt/purchase_receipt.txt b/erpnext/stock/doctype/purchase_receipt/purchase_receipt.txt index 525bcfcef2..6724b694ef 100755 --- a/erpnext/stock/doctype/purchase_receipt/purchase_receipt.txt +++ b/erpnext/stock/doctype/purchase_receipt/purchase_receipt.txt @@ -21,11 +21,11 @@ 'module': u'Stock', 'name': '__common__', 'read_only_onload': 1, - 'search_fields': u'status, transaction_date, supplier', + 'search_fields': u'status, posting_date, supplier', 'section_style': u'Tabbed', 'server_code_error': u' ', 'show_in_menu': 0, - 'subject': u'From %(supplier_name)s against %(purchase_order)s on %(transaction_date)s', + 'subject': u'From %(supplier_name)s against %(purchase_order)s on %(posting_date)s', 'version': 325 }, diff --git a/erpnext/stock/doctype/stock_entry/stock_entry.js b/erpnext/stock/doctype/stock_entry/stock_entry.js index 1e558c9441..07e83edc14 100644 --- a/erpnext/stock/doctype/stock_entry/stock_entry.js +++ b/erpnext/stock/doctype/stock_entry/stock_entry.js @@ -22,13 +22,17 @@ cur_frm.cscript.onload = function(doc, cdt, cdn) { var cfn_set_fields = function(doc, cdt, cdn) { - lst = ['supplier','supplier_name','supplier_address','customer','customer_name','customer_address']; - if (doc.purpose == 'Production Order'){ - unhide_field(['production_order', 'process', 'Get Items']); - hide_field(['from_warehouse', 'to_warehouse','purchase_receipt_no','delivery_note_no', 'sales_invoice_no','Warehouse HTML']); - doc.from_warehouse = ''; + lst = ['supplier','supplier_name','supplier_address','customer','customer_name','customer_address']; + hide_field(lst); + + if (doc.purpose == 'Production Order' || doc.purpose == 'Other'){ + unhide_field('Get Items'); + hide_field(['from_warehouse', 'to_warehouse','purchase_receipt_no','delivery_note_no', 'sales_invoice_no','Warehouse HTML', 'transporter', 'is_excisable_goods', 'excisable_goods']); + if (doc.purpose=='Production Order') unhide_field(['production_order', 'process']); + + doc.from_warehouse = ''; doc.to_warehosue = ''; - if (doc.process == 'Backflush'){ + if (doc.process == 'Backflush' || doc.purpose == 'Other'){ unhide_field('fg_completed_qty'); } else{ @@ -39,7 +43,6 @@ var cfn_set_fields = function(doc, cdt, cdn) { else{ unhide_field(['from_warehouse', 'to_warehouse']); hide_field(['production_order', 'process', 'Get Items', 'fg_completed_qty','purchase_receipt_no','delivery_note_no', 'sales_invoice_no']); - hide_field(lst); doc.production_order = ''; doc.process = ''; doc.fg_completed_qty = 0; @@ -48,12 +51,10 @@ var cfn_set_fields = function(doc, cdt, cdn) { if(doc.purpose == 'Purchase Return'){ doc.customer=doc.customer_name = doc.customer_address=doc.delivery_note_no=doc.sales_invoice_no=''; - hide_field(lst); unhide_field(['supplier','supplier_name','supplier_address','purchase_receipt_no']); } else if(doc.purpose == 'Sales Return'){ doc.supplier=doc.supplier_name = doc.supplier_address=doc.purchase_receipt_no=''; - hide_field(lst); unhide_field(['customer','customer_name','customer_address','delivery_note_no', 'sales_invoice_no']); } else{ doc.customer=doc.customer_name=doc.customer_address=doc.delivery_note_no=doc.sales_invoice_no=doc.supplier=doc.supplier_name = doc.supplier_address=doc.purchase_receipt_no=''; @@ -110,6 +111,7 @@ fld.get_query = function(doc, cdt, cdn) { +'AND ifnull(`tabBin`.`actual_qty`,0) > 0 ' +'AND tabBin.warehouse="'+ d.s_warehouse +'" ' +'AND tabItem.docstatus < 2 ' + +'AND (ifnull(`tabItem`.`end_of_life`,"") = "" OR `tabItem`.`end_of_life` > NOW() OR `tabItem`.`end_of_life`="0000-00-00") ' +'AND tabItem.%(key)s LIKE "%s" ' +'ORDER BY tabItem.name ASC ' +'LIMIT 50' @@ -117,6 +119,7 @@ fld.get_query = function(doc, cdt, cdn) { return 'SELECT tabItem.name, tabItem.description ' +'FROM tabItem ' +'WHERE tabItem.docstatus < 2 ' + +'AND (ifnull(`tabItem`.`end_of_life`,"") = "" OR `tabItem`.`end_of_life` > NOW() OR `tabItem`.`end_of_life`="0000-00-00") ' +'AND tabItem.%(key)s LIKE "%s" ' +'ORDER BY tabItem.name ASC ' +'LIMIT 50' diff --git a/erpnext/stock/doctype/stock_entry/stock_entry.py b/erpnext/stock/doctype/stock_entry/stock_entry.py index 530c5e615e..96642d0dc2 100644 --- a/erpnext/stock/doctype/stock_entry/stock_entry.py +++ b/erpnext/stock/doctype/stock_entry/stock_entry.py @@ -157,13 +157,13 @@ class DocType: - def get_raw_materials(self,pro_obj): + def get_raw_materials(self, bom_no, fg_qty, consider_sa_items_as_rm): """ get all items from flat bom except child items of sub-contracted and sub assembly items and sub assembly items itself. """ - if pro_obj.doc.consider_sa_items == 'Yes': + if consider_sa_items_as_rm == 'Yes': # Get all raw materials considering SA items as raw materials, # so no childs of SA items fl_bom_sa_items = sql(""" @@ -171,8 +171,7 @@ class DocType: from `tabBOM Material` where parent = '%s' and docstatus < 2 group by item_code - """ % ((self.doc.process == 'Backflush') and flt(self.doc.fg_completed_qty) \ - or flt(pro_obj.doc.qty), cstr(pro_obj.doc.bom_no))) + """ % (fg_qty, bom_no)) self.make_items_dict(fl_bom_sa_items) @@ -189,8 +188,7 @@ class DocType: and ifnull(it.is_sub_contracted_item, 'No') = 'No' and fb.docstatus<2 and fb.parent=%s ) a group by item_code,stock_uom - """ , ((self.doc.process == 'Backflush') and flt(self.doc.fg_completed_qty) \ - or flt(pro_obj.doc.qty), cstr(pro_obj.doc.bom_no))) + """ , (fg_qty, bom_no)) self.make_items_dict(fl_bom_sa_child_item) # Update only qty remaining to be issued for production @@ -199,17 +197,11 @@ class DocType: - def add_to_stock_entry_detail(self, pro_obj, item_dict, fg_item = 0): - sw, tw = '', '' - if self.doc.process == 'Material Transfer': - tw = cstr(pro_obj.doc.wip_warehouse) - if self.doc.process == 'Backflush': - tw = fg_item and cstr(pro_obj.doc.fg_warehouse) or '' - if not fg_item: sw = cstr(pro_obj.doc.wip_warehouse) + def add_to_stock_entry_detail(self, source_wh, target_wh, item_dict, fg_item = 0, bom_no = ''): for d in item_dict: se_child = addchild(self.doc, 'mtn_details', 'Stock Entry Detail', 0, self.doclist) - se_child.s_warehouse = sw - se_child.t_warehouse = tw + se_child.s_warehouse = source_wh + se_child.t_warehouse = target_wh se_child.fg_item = fg_item se_child.item_code = cstr(d) se_child.description = item_dict[d][1] @@ -219,24 +211,52 @@ class DocType: se_child.qty = flt(item_dict[d][0]) se_child.transfer_qty = flt(item_dict[d][0]) se_child.conversion_factor = 1.00 - if fg_item: se_child.bom_no = pro_obj.doc.bom_no + if fg_item: se_child.bom_no = bom_no + + def validate_bom_no(self): + if self.doc.bom_no: + if not self.doc.fg_completed_qty: + msgprint("Please enter FG Completed Qty", raise_exception=1) + if not self.doc.consider_sa_items_as_raw_materials: + msgprint("Please confirm whether you want to consider sub assembly item as raw materials", raise_exception=1) # get items #------------------ def get_items(self): - pro_obj = self.doc.production_order and get_obj('Production Order', self.doc.production_order) or '' - - self.validate_for_production_order(pro_obj) - self.get_raw_materials(pro_obj) - + if self.doc.purpose == 'Production Order': + pro_obj = self.doc.production_order and get_obj('Production Order', self.doc.production_order) or '' + self.validate_for_production_order(pro_obj) + + bom_no = pro_obj.doc.bom_no + fg_qty = (self.doc.process == 'Backflush') and flt(self.doc.fg_completed_qty) or flt(pro_obj.doc.qty) + consider_sa_items_as_rm = pro_obj.doc.consider_sa_items + elif self.doc.purpose == 'Other': + self.validate_bom_no() + bom_no = self.doc.bom_no + fg_qty = self.doc.fg_completed_qty + consider_sa_items_as_rm = self.doc.consider_sa_items_as_raw_materials + + self.get_raw_materials(bom_no, fg_qty, consider_sa_items_as_rm) self.doc.clear_table(self.doclist, 'mtn_details', 1) - self.add_to_stock_entry_detail(pro_obj, self.item_dict) - + sw = (self.doc.process == 'Backflush') and cstr(pro_obj.doc.wip_warehouse) or '' + tw = (self.doc.process == 'Material Transfer') and cstr(pro_obj.doc.wip_warehouse) or '' + self.add_to_stock_entry_detail(sw, tw, self.item_dict) + + fg_item_dict = {} if self.doc.process == 'Backflush': - item_dict = {cstr(pro_obj.doc.production_item) : [self.doc.fg_completed_qty, pro_obj.doc.description, pro_obj.doc.stock_uom]} - self.add_to_stock_entry_detail(pro_obj, item_dict, fg_item = 1) + sw = '' + tw = cstr(pro_obj.doc.fg_warehouse) + fg_item_dict = {cstr(pro_obj.doc.production_item) : [self.doc.fg_completed_qty, pro_obj.doc.description, pro_obj.doc.stock_uom]} + elif self.doc.purpose == 'Other' and self.doc.bom_no: + sw, tw = '', '' + item = sql("select item, description, uom from `tabBill Of Materials` where name = %s", self.doc.bom_no, as_dict=1) + fg_item_dict = {item[0]['item'] : [self.doc.fg_completed_qty, item[0]['description'], item[0]['uom']]} + + if fg_item_dict: + self.add_to_stock_entry_detail(sw, tw, fg_item_dict, fg_item = 1, bom_no = bom_no) + def validate_transfer_qty(self): @@ -289,7 +309,7 @@ class DocType: def validate_for_production_order(self, pro_obj): - if self.doc.purpose == 'Production Order' or self.doc.process or self.doc.production_order or flt(self.doc.fg_completed_qty): + if self.doc.purpose == 'Production Order' or self.doc.process or self.doc.production_order: if self.doc.purpose != 'Production Order': msgprint("Purpose should be 'Production Order'.") raise Exception @@ -394,7 +414,6 @@ class DocType: if cstr(pro_obj.doc.production_item) != cstr(d.item_code): msgprint("Item %s in Stock Entry Detail as Row No %s do not match with Item %s in Production Order %s" % (cstr(d.item_code), cstr(d.idx), cstr(pro_obj.doc.production_item), cstr(pro_obj.doc.name))) raise Exception - fg_qty = flt(fg_qty) + flt(d.transfer_qty) if cstr(d.t_warehouse) != cstr(pro_obj.doc.fg_warehouse): msgprint("As Item %s is FG Item. Target Warehouse should be same as FG Warehouse %s in Production Order %s, at Row No %s. " % ( cstr(d.item_code), cstr(pro_obj.doc.fg_warehouse), cstr(pro_obj.doc.name), cstr(d.idx))) raise Exception @@ -408,6 +427,9 @@ class DocType: if cstr(d.s_warehouse) != cstr(pro_obj.doc.wip_warehouse): msgprint("As Item %s is Raw Material. Source Warehouse should be same as WIP Warehouse %s in Production Order %s, at Row No %s. " % ( cstr(d.item_code), cstr(pro_obj.doc.wip_warehouse), cstr(pro_obj.doc.name), cstr(d.idx))) raise Exception + if d.fg_item and (self.doc.purpose == 'Other' or self.doc.process == 'Backflush'): + fg_qty = flt(fg_qty) + flt(d.transfer_qty) + d.save() if self.doc.fg_completed_qty and flt(self.doc.fg_completed_qty) != flt(fg_qty): msgprint("The Total of FG Qty %s in Stock Entry Detail do not match with FG Completed Qty %s" % (flt(fg_qty), flt(self.doc.fg_completed_qty))) diff --git a/erpnext/stock/doctype/stock_entry/stock_entry.txt b/erpnext/stock/doctype/stock_entry/stock_entry.txt index 395082f5d3..9792fc91c5 100644 --- a/erpnext/stock/doctype/stock_entry/stock_entry.txt +++ b/erpnext/stock/doctype/stock_entry/stock_entry.txt @@ -5,22 +5,22 @@ { 'creation': '2010-08-08 17:09:25', 'docstatus': 0, - 'modified': '2012-01-24 19:47:47', - 'modified_by': 'Administrator', - 'owner': 'Administrator' + 'modified': '2012-03-21 11:00:48', + 'modified_by': u'Administrator', + 'owner': u'Administrator' }, # These values are common for all DocType { - '_last_update': '1325570647', + '_last_update': u'1332233897', 'allow_attach': 0, 'allow_copy': 0, 'allow_email': 0, 'allow_print': 0, 'allow_rename': 0, 'allow_trash': 0, - 'colour': 'White:FFF', - 'default_print_format': 'Standard', + 'colour': u'White:FFF', + 'default_print_format': u'Standard', 'doctype': 'DocType', 'hide_heading': 0, 'hide_toolbar': 0, @@ -29,44 +29,44 @@ 'is_transaction_doc': 0, 'issingle': 0, 'max_attachments': 0, - 'module': 'Stock', + 'module': u'Stock', 'name': '__common__', - 'print_outline': 'No', + 'print_outline': u'No', 'read_only': 0, 'read_only_onload': 0, - 'search_fields': 'transfer_date, from_warehouse, to_warehouse, purpose, remarks', - 'section_style': 'Tabbed', - 'server_code_error': ' ', + 'search_fields': u'transfer_date, from_warehouse, to_warehouse, purpose, remarks', + 'section_style': u'Tabbed', + 'server_code_error': u' ', 'show_in_menu': 0, - 'subject': '%(remarks)s', - 'tag_fields': 'purpose', + 'subject': u'%(remarks)s', + 'tag_fields': u'purpose', 'use_template': 0, - 'version': 248 + 'version': 259 }, # These values are common for all DocField { - 'doctype': 'DocField', + 'doctype': u'DocField', 'name': '__common__', - 'parent': 'Stock Entry', - 'parentfield': 'fields', - 'parenttype': 'DocType' + 'parent': u'Stock Entry', + 'parentfield': u'fields', + 'parenttype': u'DocType' }, # These values are common for all DocPerm { - 'doctype': 'DocPerm', + 'doctype': u'DocPerm', 'name': '__common__', - 'parent': 'Stock Entry', - 'parentfield': 'permissions', - 'parenttype': 'DocType', + 'parent': u'Stock Entry', + 'parentfield': u'permissions', + 'parenttype': u'DocType', 'read': 1 }, # DocType, Stock Entry { 'doctype': 'DocType', - 'name': 'Stock Entry' + 'name': u'Stock Entry' }, # DocPerm @@ -74,9 +74,9 @@ 'amend': 0, 'cancel': 0, 'create': 0, - 'doctype': 'DocPerm', + 'doctype': u'DocPerm', 'permlevel': 1, - 'role': 'Material Manager', + 'role': u'Material Manager', 'submit': 0, 'write': 0 }, @@ -86,9 +86,9 @@ 'amend': 0, 'cancel': 0, 'create': 0, - 'doctype': 'DocPerm', + 'doctype': u'DocPerm', 'permlevel': 1, - 'role': 'Material User', + 'role': u'Material User', 'submit': 0, 'write': 0 }, @@ -98,9 +98,9 @@ 'amend': 1, 'cancel': 1, 'create': 1, - 'doctype': 'DocPerm', + 'doctype': u'DocPerm', 'permlevel': 0, - 'role': 'Production User', + 'role': u'Production User', 'submit': 1, 'write': 1 }, @@ -110,9 +110,9 @@ 'amend': 0, 'cancel': 0, 'create': 0, - 'doctype': 'DocPerm', + 'doctype': u'DocPerm', 'permlevel': 1, - 'role': 'Production User', + 'role': u'Production User', 'submit': 0, 'write': 0 }, @@ -122,9 +122,9 @@ 'amend': 0, 'cancel': 0, 'create': 0, - 'doctype': 'DocPerm', + 'doctype': u'DocPerm', 'permlevel': 2, - 'role': 'Production User', + 'role': u'Production User', 'submit': 0, 'write': 1 }, @@ -134,9 +134,9 @@ 'amend': 1, 'cancel': 1, 'create': 1, - 'doctype': 'DocPerm', + 'doctype': u'DocPerm', 'permlevel': 0, - 'role': 'Production Manager', + 'role': u'Production Manager', 'submit': 1, 'write': 1 }, @@ -146,9 +146,9 @@ 'amend': 0, 'cancel': 0, 'create': 0, - 'doctype': 'DocPerm', + 'doctype': u'DocPerm', 'permlevel': 1, - 'role': 'Production Manager', + 'role': u'Production Manager', 'submit': 0, 'write': 0 }, @@ -158,45 +158,45 @@ 'amend': 0, 'cancel': 0, 'create': 0, - 'doctype': 'DocPerm', + 'doctype': u'DocPerm', 'permlevel': 2, - 'role': 'Production Manager', + 'role': u'Production Manager', 'submit': 0, 'write': 1 }, # DocField { - 'doctype': 'DocField', - 'fieldtype': 'Section Break', - 'label': 'Warehouse', - 'oldfieldtype': 'Section Break', + 'doctype': u'DocField', + 'fieldtype': u'Section Break', + 'label': u'Warehouse', + 'oldfieldtype': u'Section Break', 'permlevel': 0 }, # DocField { - 'doctype': 'DocField', - 'fieldtype': 'Column Break', - 'oldfieldtype': 'Column Break', + 'doctype': u'DocField', + 'fieldtype': u'Column Break', + 'oldfieldtype': u'Column Break', 'permlevel': 0, - 'width': '50%' + 'width': u'50%' }, # DocField { 'allow_on_submit': 0, - 'colour': 'White:FFF', - 'description': 'To manage multiple series please go to Setup > Manage Series', - 'doctype': 'DocField', - 'fieldname': 'naming_series', - 'fieldtype': 'Select', + 'colour': u'White:FFF', + 'description': u'To manage multiple series please go to Setup > Manage Series', + 'doctype': u'DocField', + 'fieldname': u'naming_series', + 'fieldtype': u'Select', 'in_filter': 0, - 'label': 'Series', + 'label': u'Series', 'no_copy': 1, - 'oldfieldname': 'naming_series', - 'oldfieldtype': 'Select', - 'options': 'STE', + 'oldfieldname': u'naming_series', + 'oldfieldtype': u'Select', + 'options': u'STE', 'permlevel': 0, 'print_hide': 1, 'report_hide': 0, @@ -207,15 +207,15 @@ # DocField { 'allow_on_submit': 0, - 'description': 'The date at which current entry is corrected in the system.', - 'doctype': 'DocField', - 'fieldname': 'amendment_date', - 'fieldtype': 'Date', + 'description': u'The date at which current entry is corrected in the system.', + 'doctype': u'DocField', + 'fieldname': u'amendment_date', + 'fieldtype': u'Date', 'in_filter': 0, - 'label': 'Amendment Date', + 'label': u'Amendment Date', 'no_copy': 1, - 'oldfieldname': 'amendment_date', - 'oldfieldtype': 'Date', + 'oldfieldname': u'amendment_date', + 'oldfieldtype': u'Date', 'permlevel': 0, 'print_hide': 1, 'report_hide': 0, @@ -225,73 +225,73 @@ # DocField { 'allow_on_submit': 0, - 'colour': 'White:FFF', - 'doctype': 'DocField', - 'fieldname': 'purpose', - 'fieldtype': 'Select', + 'colour': u'White:FFF', + 'doctype': u'DocField', + 'fieldname': u'purpose', + 'fieldtype': u'Select', 'in_filter': 1, - 'label': 'Purpose', + 'label': u'Purpose', 'no_copy': 0, - 'oldfieldname': 'purpose', - 'oldfieldtype': 'Select', - 'options': 'Material Issue\nMaterial Receipt\nMaterial Transfer\nSales Return\nPurchase Return\nSubcontracting\nProduction Order', + 'oldfieldname': u'purpose', + 'oldfieldtype': u'Select', + 'options': u'Material Issue\nMaterial Receipt\nMaterial Transfer\nSales Return\nPurchase Return\nSubcontracting\nProduction Order\nOther', 'permlevel': 0, 'report_hide': 0, 'reqd': 1, 'search_index': 0, - 'trigger': 'Client' + 'trigger': u'Client' }, # DocField { 'allow_on_submit': 0, - 'colour': 'White:FFF', - 'doctype': 'DocField', - 'fieldname': 'delivery_note_no', - 'fieldtype': 'Link', + 'colour': u'White:FFF', + 'doctype': u'DocField', + 'fieldname': u'delivery_note_no', + 'fieldtype': u'Link', 'hidden': 1, 'in_filter': 0, - 'label': 'Delivery Note No', + 'label': u'Delivery Note No', 'no_copy': 0, - 'oldfieldname': 'delivery_note_no', - 'oldfieldtype': 'Link', - 'options': 'Delivery Note', + 'oldfieldname': u'delivery_note_no', + 'oldfieldtype': u'Link', + 'options': u'Delivery Note', 'permlevel': 0, 'print_hide': 1, 'report_hide': 0, 'search_index': 1, - 'trigger': 'Client' + 'trigger': u'Client' }, # DocField { 'allow_on_submit': 0, - 'colour': 'White:FFF', - 'doctype': 'DocField', - 'fieldname': 'purchase_receipt_no', - 'fieldtype': 'Link', + 'colour': u'White:FFF', + 'doctype': u'DocField', + 'fieldname': u'purchase_receipt_no', + 'fieldtype': u'Link', 'hidden': 1, 'in_filter': 0, - 'label': 'Purchase Receipt No', + 'label': u'Purchase Receipt No', 'no_copy': 0, - 'oldfieldname': 'purchase_receipt_no', - 'oldfieldtype': 'Link', - 'options': 'Purchase Receipt', + 'oldfieldname': u'purchase_receipt_no', + 'oldfieldtype': u'Link', + 'options': u'Purchase Receipt', 'permlevel': 0, 'print_hide': 1, 'report_hide': 0, 'search_index': 1, - 'trigger': 'Client' + 'trigger': u'Client' }, # DocField { - 'doctype': 'DocField', - 'fieldname': 'sales_invoice_no', - 'fieldtype': 'Link', + 'doctype': u'DocField', + 'fieldname': u'sales_invoice_no', + 'fieldtype': u'Link', 'hidden': 1, - 'label': 'Sales Invoice No', - 'options': 'Receivable Voucher', + 'label': u'Sales Invoice No', + 'options': u'Receivable Voucher', 'permlevel': 0, 'print_hide': 1 }, @@ -299,35 +299,35 @@ # DocField { 'allow_on_submit': 0, - 'colour': 'White:FFF', - 'doctype': 'DocField', - 'fieldname': 'supplier', - 'fieldtype': 'Link', + 'colour': u'White:FFF', + 'doctype': u'DocField', + 'fieldname': u'supplier', + 'fieldtype': u'Link', 'hidden': 1, 'in_filter': 0, - 'label': 'Supplier', + 'label': u'Supplier', 'no_copy': 0, - 'oldfieldname': 'supplier', - 'oldfieldtype': 'Link', - 'options': 'Supplier', + 'oldfieldname': u'supplier', + 'oldfieldtype': u'Link', + 'options': u'Supplier', 'permlevel': 0, 'print_hide': 1, 'report_hide': 0, 'search_index': 0, - 'trigger': 'Client' + 'trigger': u'Client' }, # DocField { 'allow_on_submit': 0, - 'doctype': 'DocField', - 'fieldname': 'supplier_name', - 'fieldtype': 'Data', + 'doctype': u'DocField', + 'fieldname': u'supplier_name', + 'fieldtype': u'Data', 'in_filter': 0, - 'label': 'Supplier Name', + 'label': u'Supplier Name', 'no_copy': 0, - 'oldfieldname': 'supplier_name', - 'oldfieldtype': 'Data', + 'oldfieldname': u'supplier_name', + 'oldfieldtype': u'Data', 'permlevel': 1, 'report_hide': 0, 'search_index': 0 @@ -336,55 +336,55 @@ # DocField { 'allow_on_submit': 0, - 'colour': 'White:FFF', - 'doctype': 'DocField', - 'fieldname': 'supplier_address', - 'fieldtype': 'Small Text', + 'colour': u'White:FFF', + 'doctype': u'DocField', + 'fieldname': u'supplier_address', + 'fieldtype': u'Small Text', 'hidden': 1, 'in_filter': 0, - 'label': 'Supplier Address', + 'label': u'Supplier Address', 'no_copy': 0, - 'oldfieldname': 'supplier_address', - 'oldfieldtype': 'Small Text', + 'oldfieldname': u'supplier_address', + 'oldfieldtype': u'Small Text', 'permlevel': 0, 'report_hide': 0, 'search_index': 0, - 'trigger': 'Client' + 'trigger': u'Client' }, # DocField { 'allow_on_submit': 0, - 'colour': 'White:FFF', - 'doctype': 'DocField', - 'fieldname': 'customer', - 'fieldtype': 'Link', + 'colour': u'White:FFF', + 'doctype': u'DocField', + 'fieldname': u'customer', + 'fieldtype': u'Link', 'hidden': 1, 'in_filter': 0, - 'label': 'Customer', + 'label': u'Customer', 'no_copy': 0, - 'oldfieldname': 'customer', - 'oldfieldtype': 'Link', - 'options': 'Customer', + 'oldfieldname': u'customer', + 'oldfieldtype': u'Link', + 'options': u'Customer', 'permlevel': 0, 'print_hide': 1, 'report_hide': 0, 'search_index': 0, - 'trigger': 'Client' + 'trigger': u'Client' }, # DocField { 'allow_on_submit': 0, - 'doctype': 'DocField', - 'fieldname': 'customer_name', - 'fieldtype': 'Data', + 'doctype': u'DocField', + 'fieldname': u'customer_name', + 'fieldtype': u'Data', 'hidden': 1, 'in_filter': 0, - 'label': 'Customer Name', + 'label': u'Customer Name', 'no_copy': 0, - 'oldfieldname': 'customer_name', - 'oldfieldtype': 'Data', + 'oldfieldname': u'customer_name', + 'oldfieldtype': u'Data', 'permlevel': 1, 'report_hide': 0, 'search_index': 0 @@ -393,15 +393,15 @@ # DocField { 'allow_on_submit': 0, - 'doctype': 'DocField', - 'fieldname': 'customer_address', - 'fieldtype': 'Small Text', + 'doctype': u'DocField', + 'fieldname': u'customer_address', + 'fieldtype': u'Small Text', 'hidden': 1, 'in_filter': 0, - 'label': 'Customer Address', + 'label': u'Customer Address', 'no_copy': 0, - 'oldfieldname': 'customer_address', - 'oldfieldtype': 'Small Text', + 'oldfieldname': u'customer_address', + 'oldfieldtype': u'Small Text', 'permlevel': 0, 'report_hide': 0, 'search_index': 0 @@ -410,153 +410,177 @@ # DocField { 'allow_on_submit': 0, - 'colour': 'White:FFF', - 'doctype': 'DocField', - 'fieldname': 'process', - 'fieldtype': 'Select', + 'colour': u'White:FFF', + 'doctype': u'DocField', + 'fieldname': u'process', + 'fieldtype': u'Select', 'hidden': 1, 'in_filter': 1, - 'label': 'Process', + 'label': u'Process', 'no_copy': 0, - 'oldfieldname': 'process', - 'oldfieldtype': 'Select', - 'options': '\nMaterial Transfer\nBackflush', + 'oldfieldname': u'process', + 'oldfieldtype': u'Select', + 'options': u'\nMaterial Transfer\nBackflush', 'permlevel': 0, 'print_hide': 1, 'report_hide': 0, 'search_index': 0, - 'trigger': 'Client' + 'trigger': u'Client' }, # DocField { 'allow_on_submit': 0, - 'colour': 'White:FFF', - 'doctype': 'DocField', - 'fieldname': 'production_order', - 'fieldtype': 'Link', + 'colour': u'White:FFF', + 'doctype': u'DocField', + 'fieldname': u'production_order', + 'fieldtype': u'Link', 'hidden': 1, 'in_filter': 1, - 'label': 'Production Order', + 'label': u'Production Order', 'no_copy': 0, - 'oldfieldname': 'production_order', - 'oldfieldtype': 'Link', - 'options': 'Production Order', + 'oldfieldname': u'production_order', + 'oldfieldtype': u'Link', + 'options': u'Production Order', 'permlevel': 0, 'print_hide': 1, 'report_hide': 0, 'search_index': 1, - 'trigger': 'Client' + 'trigger': u'Client' }, # DocField { - 'allow_on_submit': 0, - 'doctype': 'DocField', - 'fieldname': 'fg_completed_qty', - 'fieldtype': 'Currency', - 'in_filter': 0, - 'label': 'FG Completed Qty', - 'no_copy': 0, - 'oldfieldname': 'fg_completed_qty', - 'oldfieldtype': 'Currency', - 'permlevel': 0, - 'print_hide': 1, - 'report_hide': 0, - 'search_index': 0, - 'trigger': 'Client' - }, - - # DocField - { - 'colour': 'White:FFF', - 'doctype': 'DocField', - 'fieldtype': 'HTML', - 'label': 'Warehouse HTML', - 'no_copy': 0, - 'oldfieldtype': 'HTML', - 'options': "
    Warehouse
    ", - 'permlevel': 0, - 'print_hide': 1 - }, - - # DocField - { - 'allow_on_submit': 0, - 'colour': 'White:FFF', - 'doctype': 'DocField', - 'fieldname': 'from_warehouse', - 'fieldtype': 'Link', - 'in_filter': 0, - 'label': 'Source Warehouse', - 'no_copy': 0, - 'oldfieldname': 'from_warehouse', - 'oldfieldtype': 'Link', - 'options': 'Warehouse', - 'permlevel': 0, - 'print_hide': 1, - 'report_hide': 0, - 'reqd': 0, - 'search_index': 0, - 'trigger': 'Client' - }, - - # DocField - { - 'allow_on_submit': 0, - 'colour': 'White:FFF', - 'description': 'Notes: Either Source or Target is Mandatory', - 'doctype': 'DocField', - 'fieldname': 'to_warehouse', - 'fieldtype': 'Link', - 'in_filter': 0, - 'label': 'Target Warehouse', - 'no_copy': 0, - 'oldfieldname': 'to_warehouse', - 'oldfieldtype': 'Link', - 'options': 'Warehouse', - 'permlevel': 0, - 'print_hide': 1, - 'report_hide': 0, - 'reqd': 0, - 'search_index': 0, - 'trigger': 'Client' - }, - - # DocField - { - 'doctype': 'DocField', - 'fieldname': 'project_name', - 'fieldtype': 'Link', - 'in_filter': 1, - 'label': 'Project Name', - 'oldfieldname': 'project_name', - 'oldfieldtype': 'Link', - 'options': 'Project', + 'depends_on': u"eval:doc.purpose == 'Other'", + 'doctype': u'DocField', + 'fieldname': u'bom_no', + 'fieldtype': u'Link', + 'label': u'BOM No', + 'options': u'Bill Of Materials', 'permlevel': 0 }, # DocField { - 'doctype': 'DocField', - 'fieldtype': 'Column Break', - 'oldfieldtype': 'Column Break', - 'permlevel': 0, - 'width': '50%' + 'colour': u'White:FFF', + 'depends_on': u"eval:doc.purpose == 'Other'", + 'description': u'Select "Yes" if stock is maintained and tracked for sub-assembly items. Select "No" if you want child items of sub-assembly for material transfer.', + 'doctype': u'DocField', + 'fieldname': u'consider_sa_items_as_raw_materials', + 'fieldtype': u'Select', + 'label': u'Consider SA Items as Raw Materials', + 'options': u'\nNo\nYes', + 'permlevel': 0 }, # DocField { 'allow_on_submit': 0, - 'default': 'Today', - 'doctype': 'DocField', - 'fieldname': 'transfer_date', - 'fieldtype': 'Date', + 'doctype': u'DocField', + 'fieldname': u'fg_completed_qty', + 'fieldtype': u'Currency', + 'in_filter': 0, + 'label': u'FG Completed Qty', + 'no_copy': 0, + 'oldfieldname': u'fg_completed_qty', + 'oldfieldtype': u'Currency', + 'permlevel': 0, + 'print_hide': 1, + 'report_hide': 0, + 'search_index': 0, + 'trigger': u'Client' + }, + + # DocField + { + 'colour': u'White:FFF', + 'doctype': u'DocField', + 'fieldtype': u'HTML', + 'label': u'Warehouse HTML', + 'no_copy': 0, + 'oldfieldtype': u'HTML', + 'options': u"
    Warehouse
    ", + 'permlevel': 0, + 'print_hide': 1 + }, + + # DocField + { + 'allow_on_submit': 0, + 'colour': u'White:FFF', + 'doctype': u'DocField', + 'fieldname': u'from_warehouse', + 'fieldtype': u'Link', + 'in_filter': 0, + 'label': u'Source Warehouse', + 'no_copy': 0, + 'oldfieldname': u'from_warehouse', + 'oldfieldtype': u'Link', + 'options': u'Warehouse', + 'permlevel': 0, + 'print_hide': 1, + 'report_hide': 0, + 'reqd': 0, + 'search_index': 0, + 'trigger': u'Client' + }, + + # DocField + { + 'allow_on_submit': 0, + 'colour': u'White:FFF', + 'description': u'Notes: Either Source or Target is Mandatory', + 'doctype': u'DocField', + 'fieldname': u'to_warehouse', + 'fieldtype': u'Link', + 'in_filter': 0, + 'label': u'Target Warehouse', + 'no_copy': 0, + 'oldfieldname': u'to_warehouse', + 'oldfieldtype': u'Link', + 'options': u'Warehouse', + 'permlevel': 0, + 'print_hide': 1, + 'report_hide': 0, + 'reqd': 0, + 'search_index': 0, + 'trigger': u'Client' + }, + + # DocField + { + 'doctype': u'DocField', + 'fieldname': u'project_name', + 'fieldtype': u'Link', 'in_filter': 1, - 'label': 'Transfer Date', + 'label': u'Project Name', + 'oldfieldname': u'project_name', + 'oldfieldtype': u'Link', + 'options': u'Project', + 'permlevel': 0 + }, + + # DocField + { + 'doctype': u'DocField', + 'fieldtype': u'Column Break', + 'oldfieldtype': u'Column Break', + 'permlevel': 0, + 'width': u'50%' + }, + + # DocField + { + 'allow_on_submit': 0, + 'default': u'Today', + 'doctype': u'DocField', + 'fieldname': u'transfer_date', + 'fieldtype': u'Date', + 'in_filter': 1, + 'label': u'Transfer Date', 'no_copy': 1, - 'oldfieldname': 'transfer_date', - 'oldfieldtype': 'Date', + 'oldfieldname': u'transfer_date', + 'oldfieldtype': u'Date', 'permlevel': 0, 'print_hide': 0, 'report_hide': 0, @@ -567,15 +591,15 @@ # DocField { 'allow_on_submit': 0, - 'description': 'The date at which current entry will get or has actually executed.', - 'doctype': 'DocField', - 'fieldname': 'posting_date', - 'fieldtype': 'Date', + 'description': u'The date at which current entry will get or has actually executed.', + 'doctype': u'DocField', + 'fieldname': u'posting_date', + 'fieldtype': u'Date', 'in_filter': 1, - 'label': 'Posting Date', + 'label': u'Posting Date', 'no_copy': 1, - 'oldfieldname': 'posting_date', - 'oldfieldtype': 'Date', + 'oldfieldname': u'posting_date', + 'oldfieldtype': u'Date', 'permlevel': 0, 'print_hide': 1, 'report_hide': 0, @@ -586,14 +610,14 @@ # DocField { 'allow_on_submit': 0, - 'doctype': 'DocField', - 'fieldname': 'posting_time', - 'fieldtype': 'Time', + 'doctype': u'DocField', + 'fieldname': u'posting_time', + 'fieldtype': u'Time', 'in_filter': 0, - 'label': 'Posting Time', + 'label': u'Posting Time', 'no_copy': 1, - 'oldfieldname': 'posting_time', - 'oldfieldtype': 'Time', + 'oldfieldname': u'posting_time', + 'oldfieldtype': u'Time', 'permlevel': 0, 'print_hide': 1, 'report_hide': 0, @@ -604,15 +628,15 @@ # DocField { 'allow_on_submit': 0, - 'doctype': 'DocField', - 'fieldname': 'amended_from', - 'fieldtype': 'Link', + 'doctype': u'DocField', + 'fieldname': u'amended_from', + 'fieldtype': u'Link', 'in_filter': 0, - 'label': 'Amended From', + 'label': u'Amended From', 'no_copy': 1, - 'oldfieldname': 'amended_from', - 'oldfieldtype': 'Link', - 'options': 'Stock Entry', + 'oldfieldname': u'amended_from', + 'oldfieldtype': u'Link', + 'options': u'Stock Entry', 'permlevel': 1, 'print_hide': 1, 'report_hide': 0, @@ -622,14 +646,14 @@ # DocField { 'allow_on_submit': 0, - 'doctype': 'DocField', - 'fieldname': 'transporter', - 'fieldtype': 'Data', + 'doctype': u'DocField', + 'fieldname': u'transporter', + 'fieldtype': u'Data', 'in_filter': 0, - 'label': 'Transporter', + 'label': u'Transporter', 'no_copy': 0, - 'oldfieldname': 'transporter', - 'oldfieldtype': 'Data', + 'oldfieldname': u'transporter', + 'oldfieldtype': u'Data', 'permlevel': 0, 'print_hide': 1, 'report_hide': 0, @@ -639,15 +663,15 @@ # DocField { 'allow_on_submit': 0, - 'doctype': 'DocField', - 'fieldname': 'is_excisable_goods', - 'fieldtype': 'Select', + 'doctype': u'DocField', + 'fieldname': u'is_excisable_goods', + 'fieldtype': u'Select', 'in_filter': 0, - 'label': 'Is Excisable Goods', + 'label': u'Is Excisable Goods', 'no_copy': 0, - 'oldfieldname': 'is_excisable_goods', - 'oldfieldtype': 'Select', - 'options': '\nYes\nNo', + 'oldfieldname': u'is_excisable_goods', + 'oldfieldtype': u'Select', + 'options': u'\nYes\nNo', 'permlevel': 0, 'print_hide': 1, 'report_hide': 0, @@ -657,15 +681,15 @@ # DocField { 'allow_on_submit': 0, - 'doctype': 'DocField', - 'fieldname': 'excisable_goods', - 'fieldtype': 'Select', + 'doctype': u'DocField', + 'fieldname': u'excisable_goods', + 'fieldtype': u'Select', 'in_filter': 0, - 'label': 'Excisable Goods', + 'label': u'Excisable Goods', 'no_copy': 0, - 'oldfieldname': 'excisable_goods', - 'oldfieldtype': 'Select', - 'options': '\nReturnable\nNon-Returnable', + 'oldfieldname': u'excisable_goods', + 'oldfieldtype': u'Select', + 'options': u'\nReturnable\nNon-Returnable', 'permlevel': 0, 'print_hide': 1, 'report_hide': 0, @@ -675,16 +699,16 @@ # DocField { 'allow_on_submit': 0, - 'doctype': 'DocField', - 'fieldname': 'under_rule', - 'fieldtype': 'Select', + 'doctype': u'DocField', + 'fieldname': u'under_rule', + 'fieldtype': u'Select', 'hidden': 1, 'in_filter': 0, - 'label': 'Under Rule', + 'label': u'Under Rule', 'no_copy': 0, - 'oldfieldname': 'under_rule', - 'oldfieldtype': 'Select', - 'options': '\nOrdinary\n57 AC (5) a\n57 F (2) Non-Exc.', + 'oldfieldname': u'under_rule', + 'oldfieldtype': u'Select', + 'options': u'\nOrdinary\n57 AC (5) a\n57 F (2) Non-Exc.', 'permlevel': 0, 'print_hide': 1, 'report_hide': 0, @@ -694,14 +718,14 @@ # DocField { 'allow_on_submit': 0, - 'doctype': 'DocField', - 'fieldname': 'remarks', - 'fieldtype': 'Text', + 'doctype': u'DocField', + 'fieldname': u'remarks', + 'fieldtype': u'Text', 'in_filter': 0, - 'label': 'Remarks', + 'label': u'Remarks', 'no_copy': 1, - 'oldfieldname': 'remarks', - 'oldfieldtype': 'Text', + 'oldfieldname': u'remarks', + 'oldfieldtype': u'Text', 'permlevel': 0, 'print_hide': 1, 'report_hide': 0, @@ -712,15 +736,15 @@ # DocField { 'allow_on_submit': 0, - 'doctype': 'DocField', - 'fieldname': 'cancel_reason', - 'fieldtype': 'Data', + 'doctype': u'DocField', + 'fieldname': u'cancel_reason', + 'fieldtype': u'Data', 'hidden': 1, 'in_filter': 0, - 'label': 'Cancel Reason', + 'label': u'Cancel Reason', 'no_copy': 1, - 'oldfieldname': 'cancel_reason', - 'oldfieldtype': 'Data', + 'oldfieldname': u'cancel_reason', + 'oldfieldtype': u'Data', 'permlevel': 1, 'print_hide': 1, 'report_hide': 0, @@ -730,44 +754,44 @@ # DocField { - 'doctype': 'DocField', - 'fieldtype': 'Section Break', - 'label': 'Items', - 'oldfieldtype': 'Section Break', + 'doctype': u'DocField', + 'fieldtype': u'Section Break', + 'label': u'Items', + 'oldfieldtype': u'Section Break', 'permlevel': 0 }, # DocField { - 'doctype': 'DocField', - 'fieldtype': 'Button', - 'label': 'Get Stock and Rate', - 'oldfieldtype': 'Button', - 'options': 'get_stock_and_rate', + 'doctype': u'DocField', + 'fieldtype': u'Button', + 'label': u'Get Stock and Rate', + 'oldfieldtype': u'Button', + 'options': u'get_stock_and_rate', 'permlevel': 0, 'print_hide': 1 }, # DocField { - 'doctype': 'DocField', - 'fieldtype': 'Column Break', - 'oldfieldtype': 'Column Break', + 'doctype': u'DocField', + 'fieldtype': u'Column Break', + 'oldfieldtype': u'Column Break', 'permlevel': 0 }, # DocField { 'allow_on_submit': 0, - 'colour': 'White:FFF', - 'doctype': 'DocField', - 'fieldtype': 'Button', + 'colour': u'White:FFF', + 'doctype': u'DocField', + 'fieldtype': u'Button', 'hidden': 0, 'in_filter': 0, - 'label': 'Get Items', + 'label': u'Get Items', 'no_copy': 0, - 'oldfieldtype': 'Button', - 'options': 'get_items', + 'oldfieldtype': u'Button', + 'options': u'get_items', 'permlevel': 0, 'print_hide': 1, 'report_hide': 0, @@ -776,26 +800,26 @@ # DocField { - 'doctype': 'DocField', - 'fieldtype': 'Section Break', - 'oldfieldtype': 'Section Break', - 'options': 'Simple', + 'doctype': u'DocField', + 'fieldtype': u'Section Break', + 'oldfieldtype': u'Section Break', + 'options': u'Simple', 'permlevel': 0 }, # DocField { 'allow_on_submit': 0, - 'colour': 'White:FFF', - 'doctype': 'DocField', - 'fieldname': 'mtn_details', - 'fieldtype': 'Table', + 'colour': u'White:FFF', + 'doctype': u'DocField', + 'fieldname': u'mtn_details', + 'fieldtype': u'Table', 'in_filter': 0, - 'label': 'MTN Details', + 'label': u'MTN Details', 'no_copy': 0, - 'oldfieldname': 'mtn_details', - 'oldfieldtype': 'Table', - 'options': 'Stock Entry Detail', + 'oldfieldname': u'mtn_details', + 'oldfieldtype': u'Table', + 'options': u'Stock Entry Detail', 'permlevel': 0, 'print_hide': 0, 'report_hide': 0, @@ -805,14 +829,14 @@ # DocField { 'allow_on_submit': 0, - 'doctype': 'DocField', - 'fieldname': 'total_amount', - 'fieldtype': 'Currency', + 'doctype': u'DocField', + 'fieldname': u'total_amount', + 'fieldtype': u'Currency', 'in_filter': 0, - 'label': 'Total Amount', + 'label': u'Total Amount', 'no_copy': 0, - 'oldfieldname': 'total_amount', - 'oldfieldtype': 'Currency', + 'oldfieldname': u'total_amount', + 'oldfieldtype': u'Currency', 'permlevel': 1, 'print_hide': 1, 'report_hide': 0, @@ -821,25 +845,25 @@ # DocField { - 'doctype': 'DocField', - 'fieldtype': 'Section Break', - 'label': 'Other Details', - 'oldfieldtype': 'Section Break', + 'doctype': u'DocField', + 'fieldtype': u'Section Break', + 'label': u'Other Details', + 'oldfieldtype': u'Section Break', 'permlevel': 0 }, # DocField { 'allow_on_submit': 0, - 'doctype': 'DocField', - 'fieldname': 'company', - 'fieldtype': 'Link', + 'doctype': u'DocField', + 'fieldname': u'company', + 'fieldtype': u'Link', 'in_filter': 1, - 'label': 'Company', + 'label': u'Company', 'no_copy': 0, - 'oldfieldname': 'company', - 'oldfieldtype': 'Link', - 'options': 'Company', + 'oldfieldname': u'company', + 'oldfieldtype': u'Link', + 'options': u'Company', 'permlevel': 0, 'print_hide': 1, 'report_hide': 0, @@ -850,15 +874,15 @@ # DocField { 'allow_on_submit': 0, - 'doctype': 'DocField', - 'fieldname': 'fiscal_year', - 'fieldtype': 'Select', + 'doctype': u'DocField', + 'fieldname': u'fiscal_year', + 'fieldtype': u'Select', 'in_filter': 0, - 'label': 'Fiscal Year', + 'label': u'Fiscal Year', 'no_copy': 0, - 'oldfieldname': 'fiscal_year', - 'oldfieldtype': 'Select', - 'options': 'link:Fiscal Year', + 'oldfieldname': u'fiscal_year', + 'oldfieldtype': u'Select', + 'options': u'link:Fiscal Year', 'permlevel': 0, 'print_hide': 1, 'report_hide': 0, @@ -869,15 +893,15 @@ # DocField { 'allow_on_submit': 0, - 'doctype': 'DocField', - 'fieldname': 'select_print_heading', - 'fieldtype': 'Link', + 'doctype': u'DocField', + 'fieldname': u'select_print_heading', + 'fieldtype': u'Link', 'in_filter': 0, - 'label': 'Select Print Heading', + 'label': u'Select Print Heading', 'no_copy': 0, - 'oldfieldname': 'select_print_heading', - 'oldfieldtype': 'Link', - 'options': 'Print Heading', + 'oldfieldname': u'select_print_heading', + 'oldfieldtype': u'Link', + 'options': u'Print Heading', 'permlevel': 0, 'report_hide': 0, 'search_index': 0 diff --git a/erpnext/support/DocType Label/Ticket/Ticket.txt b/erpnext/support/DocType Label/Ticket/Ticket.txt deleted file mode 100644 index 8707e8fff4..0000000000 --- a/erpnext/support/DocType Label/Ticket/Ticket.txt +++ /dev/null @@ -1 +0,0 @@ -[{'modified_by': 'Administrator', 'name': 'Ticket', 'parent': None, 'dt_label': 'Task', 'creation': '2010-06-28 12:55:47', 'modified': '2010-06-28 12:55:47', 'module': 'Accounts', 'doctype': 'DocType Label', 'idx': None, 'parenttype': None, 'owner': 'Administrator', 'docstatus': 0, 'dt': 'Ticket', 'parentfield': None}] \ No newline at end of file diff --git a/erpnext/support/Module Def/Support/Support.txt b/erpnext/support/Module Def/Support/Support.txt deleted file mode 100644 index 9c66c3d1c3..0000000000 --- a/erpnext/support/Module Def/Support/Support.txt +++ /dev/null @@ -1,149 +0,0 @@ -# Module Def, Support -[ - - # These values are common in all dictionaries - { - 'creation': '2011-07-01 17:42:15', - 'docstatus': 0, - 'modified': '2011-10-10 16:59:49', - 'modified_by': 'Administrator', - 'owner': 'Administrator' - }, - - # These values are common for all Module Def Role - { - 'doctype': 'Module Def Role', - 'name': '__common__', - 'parent': 'Support', - 'parentfield': 'roles', - 'parenttype': 'Module Def' - }, - - # These values are common for all Module Def Item - { - 'doctype': 'Module Def Item', - 'name': '__common__', - 'parent': 'Support', - 'parentfield': 'items', - 'parenttype': 'Module Def' - }, - - # These values are common for all Module Def - { - 'disabled': 'No', - 'doctype': u'Module Def', - 'doctype_list': 'DocType Label, Ticket', - 'is_hidden': 'No', - 'module_desc': 'Manage maintenance quotes, orders, schedule etc.', - 'module_icon': 'Maintenance.gif', - 'module_label': 'Support', - 'module_name': 'Support', - 'module_seq': 8, - 'name': '__common__' - }, - - # Module Def, Support - { - 'doctype': u'Module Def', - 'name': 'Support' - }, - - # Module Def Item - { - 'description': "Database of Support Ticket's raised by Customers", - 'display_name': 'Support Ticket', - 'doc_name': 'Support Ticket', - 'doc_type': 'Forms', - 'doctype': 'Module Def Item', - 'fields': 'status\nopening_date\ncustomer\nallocated_to' - }, - - # Module Def Item - { - 'description': 'Create schedule based on maintenance order', - 'display_name': 'Maintenance Schedule', - 'doc_name': 'Maintenance Schedule', - 'doc_type': 'Forms', - 'doctype': 'Module Def Item', - 'fields': 'status\ntransaction_date\ncustomer\nsales_order_no' - }, - - # Module Def Item - { - 'description': 'Database of issues raised your Customers', - 'display_name': 'Customer Issue', - 'doc_name': 'Customer Issue', - 'doc_type': 'Forms', - 'doctype': 'Module Def Item', - 'fields': 'status\ncomplaint_date\ncustomer\nallocated_to\nallocated_on' - }, - - # Module Def Item - { - 'display_name': 'Maintenance Visit', - 'doc_name': 'Maintenance Visit', - 'doc_type': 'Forms', - 'doctype': 'Module Def Item', - 'fields': 'status\nmntc_date\ncustomer\nmaintenance_type\ncompletion_status' - }, - - # Module Def Item - { - 'description': 'List of all scheduled mainteance. You can filter by sales person, date, serial no etc. ', - 'display_name': 'Maintenance Schedule Details', - 'doc_name': 'Maintenance Schedule Detail', - 'doc_type': 'Reports', - 'doctype': 'Module Def Item' - }, - - # Module Def Item - { - 'description': 'List of all issues raised by customer', - 'display_name': 'Customer Issues', - 'doc_name': 'Customer Issue', - 'doc_type': 'Reports', - 'doctype': 'Module Def Item' - }, - - # Module Def Item - { - 'display_name': 'Warranty/AMC Expiry Details', - 'doc_name': 'Serial No', - 'doc_type': 'Reports', - 'doctype': 'Module Def Item' - }, - - # Module Def Item - { - 'display_name': 'Warranty/AMC Summary', - 'doc_name': 'Serial No', - 'doc_type': 'Reports', - 'doctype': 'Module Def Item' - }, - - # Module Def Item - { - 'display_name': 'Maintenance Orderwise Pending Amount To Bill', - 'doc_name': 'Sales Order Detail', - 'doc_type': 'Reports', - 'doctype': 'Module Def Item' - }, - - # Module Def Role - { - 'doctype': 'Module Def Role', - 'role': 'Administrator' - }, - - # Module Def Role - { - 'doctype': 'Module Def Role', - 'role': 'Maintenance User' - }, - - # Module Def Role - { - 'doctype': 'Module Def Role', - 'role': 'Maintenance Manager' - } -] \ No newline at end of file diff --git a/erpnext/support/Role/Maintenance Manager/Maintenance Manager.txt b/erpnext/support/Role/Maintenance Manager/Maintenance Manager.txt deleted file mode 100644 index 291a52c844..0000000000 --- a/erpnext/support/Role/Maintenance Manager/Maintenance Manager.txt +++ /dev/null @@ -1,26 +0,0 @@ -# Role, Maintenance Manager -[ - - # These values are common in all dictionaries - { - 'creation': '2010-08-08 17:08:51', - 'docstatus': 0, - 'modified': '2010-07-22 15:19:33', - 'modified_by': 'Administrator', - 'owner': 'ashwini@webnotestech.com' - }, - - # These values are common for all Role - { - 'doctype': 'Role', - 'module': 'Support', - 'name': '__common__', - 'role_name': 'Maintenance Manager' - }, - - # Role, Maintenance Manager - { - 'doctype': 'Role', - 'name': 'Maintenance Manager' - } -] \ No newline at end of file diff --git a/erpnext/support/Role/Maintenance User/Maintenance User.txt b/erpnext/support/Role/Maintenance User/Maintenance User.txt deleted file mode 100644 index c0a9e4e30b..0000000000 --- a/erpnext/support/Role/Maintenance User/Maintenance User.txt +++ /dev/null @@ -1,26 +0,0 @@ -# Role, Maintenance User -[ - - # These values are common in all dictionaries - { - 'creation': '2010-08-08 17:08:51', - 'docstatus': 0, - 'modified': '2010-07-22 15:19:19', - 'modified_by': 'Administrator', - 'owner': 'ashwini@webnotestech.com' - }, - - # These values are common for all Role - { - 'doctype': 'Role', - 'module': 'Support', - 'name': '__common__', - 'role_name': 'Maintenance User' - }, - - # Role, Maintenance User - { - 'doctype': 'Role', - 'name': 'Maintenance User' - } -] \ No newline at end of file diff --git a/erpnext/support/Role/Support Manager/Support Manager.txt b/erpnext/support/Role/Support Manager/Support Manager.txt deleted file mode 100644 index 409280fd99..0000000000 --- a/erpnext/support/Role/Support Manager/Support Manager.txt +++ /dev/null @@ -1,26 +0,0 @@ -# Role, Support Manager -[ - - # These values are common in all dictionaries - { - 'creation': '2010-12-28 17:02:39', - 'docstatus': 0, - 'modified': '2010-12-28 15:17:40', - 'modified_by': 'Administrator', - 'owner': 'Administrator' - }, - - # These values are common for all Role - { - 'doctype': 'Role', - 'module': 'Support', - 'name': '__common__', - 'role_name': 'Support Manager' - }, - - # Role, Support Manager - { - 'doctype': 'Role', - 'name': 'Support Manager' - } -] \ No newline at end of file diff --git a/erpnext/support/Role/Support Team/Support Team.txt b/erpnext/support/Role/Support Team/Support Team.txt deleted file mode 100644 index f5bcca664a..0000000000 --- a/erpnext/support/Role/Support Team/Support Team.txt +++ /dev/null @@ -1,26 +0,0 @@ -# Role, Support Team -[ - - # These values are common in all dictionaries - { - 'creation': '2010-12-28 17:02:39', - 'docstatus': 0, - 'modified': '2010-12-28 15:19:11', - 'modified_by': 'Administrator', - 'owner': 'Administrator' - }, - - # These values are common for all Role - { - 'doctype': 'Role', - 'module': 'Support', - 'name': '__common__', - 'role_name': 'Support Team' - }, - - # Role, Support Team - { - 'doctype': 'Role', - 'name': 'Support Team' - } -] \ No newline at end of file diff --git a/erpnext/support/__init__.py b/erpnext/support/__init__.py index e69de29bb2..b94538b23f 100644 --- a/erpnext/support/__init__.py +++ b/erpnext/support/__init__.py @@ -0,0 +1,6 @@ +install_docs = [ + {'doctype':'Role', 'name':'Support Team'}, + {'doctype':'Role', 'name':'Support Manager'}, + {'doctype':'Role', 'name':'Maintenance User'}, + {'doctype':'Role', 'name':'Maintenance Manager'} +] \ No newline at end of file diff --git a/erpnext/support/doctype/support_ticket/listview.js b/erpnext/support/doctype/support_ticket/listview.js new file mode 100644 index 0000000000..87c122491d --- /dev/null +++ b/erpnext/support/doctype/support_ticket/listview.js @@ -0,0 +1,45 @@ +// render +wn.doclistviews['Support Ticket'] = wn.views.ListView.extend({ + init: function(d) { + this._super(d) + this.fields = this.fields.concat([ + "`tabSupport Ticket`.status", + "`tabSupport Ticket`.subject", + "`tabSupport Ticket`.description" + ]); + this.stats = this.stats.concat(['status']); + }, + + prepare_data: function(data) { + this._super(data); + if(data.status=='Open' || data.status=='To Reply') { + data.label_type = 'important' + } + else if(data.status=='Closed') { + data.label_type = 'success' + } + else if(data.status=='Hold') { + data.label_type = 'info' + } + else if(data.status=='Waiting for Customer') { + data.label_type = 'info' + data.status = 'Waiting' + } + data.status_html = repl('%(status)s', data); + + data.description = data.description + ' | ' + data.subject; + + // description + if(data.description && data.description.length > 50) { + data.description = '' + data.description.substr(0,50) + '...'; + } + }, + + columns: [ + {width: '20%', content:'name'}, + {width: '10%', content:'status_html'}, + {width: '56%', content:'tags+description', css: {color:'#aaa'}}, + {width: '14%', content:'modified', css: {'text-align': 'right', 'color':'#777'}} + ] + +}); diff --git a/erpnext/support/doctype/support_ticket/support_ticket.js b/erpnext/support/doctype/support_ticket/support_ticket.js index 86264a6433..a51b83aef1 100644 --- a/erpnext/support/doctype/support_ticket/support_ticket.js +++ b/erpnext/support/doctype/support_ticket/support_ticket.js @@ -73,7 +73,7 @@ $.extend(cur_frm.cscript, { cur_frm.fields_dict['Thread HTML'].wrapper.innerHTML = ''; // render first message - new EmailMessage(cur_frm.fields_dict['Thread HTML'].wrapper, { + new EmailMessage($a(cur_frm.fields_dict['Thread HTML'].wrapper, 'div'), { from_email: doc.raised_by, creation: doc.creation, mail: doc.description, @@ -81,8 +81,8 @@ $.extend(cur_frm.cscript, { }, null, -1) // render thread - cs.thread_list = new wn.widgets.Listing({ - parent: cur_frm.fields_dict['Thread HTML'].wrapper, + cs.thread_list = new wn.ui.Listing({ + parent: $a(cur_frm.fields_dict['Thread HTML'].wrapper, 'div'), no_result_message: 'No responses yet', get_query: function() { return 'select mail, from_email, creation, content_type '+ @@ -188,7 +188,7 @@ EmailMessage = function(parent, args, list, idx) { ); // show only first and last message - if(idx==-1 || list && list.values.length-1==idx) { + if(idx==-1 || list && list.data.length-1==idx) { $ds(this.message) } diff --git a/erpnext/utilities/Module Def/Utilities/Utilities.txt b/erpnext/utilities/Module Def/Utilities/Utilities.txt deleted file mode 100644 index 98b4d0f526..0000000000 --- a/erpnext/utilities/Module Def/Utilities/Utilities.txt +++ /dev/null @@ -1,28 +0,0 @@ -# Module Def, Utilities -[ - - # These values are common in all dictionaries - { - 'creation': '2011-07-01 17:46:25', - 'docstatus': 0, - 'modified': '2011-07-01 17:47:34', - 'modified_by': 'Administrator', - 'owner': 'Administrator' - }, - - # These values are common for all Module Def - { - 'disabled': 'No', - 'doctype': 'Module Def', - 'is_hidden': 'No', - 'module_label': 'Utilities', - 'module_name': 'Utilities', - 'name': '__common__' - }, - - # Module Def, Utilities - { - 'doctype': 'Module Def', - 'name': 'Utilities' - } -] \ No newline at end of file diff --git a/erpnext/utilities/doctype/address/address.js b/erpnext/utilities/doctype/address/address.js index fc274ef8da..1c2bab7f9e 100644 --- a/erpnext/utilities/doctype/address/address.js +++ b/erpnext/utilities/doctype/address/address.js @@ -17,5 +17,28 @@ cur_frm.cscript.onload = function(doc, cdt, cdn) { if(doc.customer) cur_frm.add_fetch('customer', 'customer_name', 'customer_name'); if(doc.supplier) cur_frm.add_fetch('supplier', 'supplier_name', 'supplier_name'); + + var route = wn.get_route(); + if(route[1]=='Supplier') { + var supplier = locals.Supplier[route[2]] + doc.supplier = supplier.name; + doc.supplier_name = supplier.supplier_name; + doc.address_type = 'Office'; + } else if(route[1]=='Customer') { + var customer = locals.Customer[route[2]] + doc.supplier = customer.name; + doc.customer_name = customer.customer_name; + doc.address_type = 'Office'; + } else if(route[1]=='Sales Partner') { + var sp = locals['Sales Partner'][route[2]]; + doc.sales_partner = sp.name; + ndoc.address_type = 'Office'; + } } +cur_frm.cscript.hide_dialog = function() { + if(cur_frm.address_list) + cur_frm.address_list.run(); +} + + diff --git a/erpnext/utilities/doctype/contact/contact.js b/erpnext/utilities/doctype/contact/contact.js index 2aa89c1bec..9244b79fc3 100644 --- a/erpnext/utilities/doctype/contact/contact.js +++ b/erpnext/utilities/doctype/contact/contact.js @@ -18,54 +18,28 @@ cur_frm.cscript.onload = function(doc, cdt, cdn) { if(doc.customer) cur_frm.add_fetch('customer', 'customer_name', 'customer_name'); if(doc.supplier) cur_frm.add_fetch('supplier', 'supplier_name', 'supplier_name'); -} -/* -//---------- on refresh ---------------------- -cur_frm.cscript.refresh = function(doc,cdt,cdn){ - -} - - -//------------- Trigger on customer --------------------- -cur_frm.cscript.is_customer = function(doc,cdt,cdn){ - if(!doc.is_customer){ - doc.customer = doc.customer_name = doc.customer_address = doc.customer_group = ''; - refresh_many(['customer','customer_name','customer_address','customer_group']); + var route = wn.get_route(); + if(route[1]=='Supplier') { + var supplier = locals.Supplier[route[2]] + doc.supplier = supplier.name; + doc.supplier_name = supplier.supplier_name; + } else if(route[1]=='Customer') { + var customer = locals.Customer[route[2]]; + doc.customer = customer.name; + doc.customer_name = customer.customer_name; + if(customer.customer_type == 'Individual') { + doc.first_name = customer.customer_name; + } + } else if(route[1]=='Sales Partner') { + var sp = locals['Sales Partner'][route[2]]; + doc.sales_partner = sp.name; } } -//------------- Trigger on supplier ----------------------- -cur_frm.cscript.is_supplier = function(doc,cdt,cdn){ - if(!doc.is_supplier){ - doc.supplier = doc.supplier_name = doc.supplier_address = doc.supplier_type = ''; - refresh_many(['supplier','supplier_address','supplier_name','supplier_type']); - } -} - -//--------------- Trigger on sales partner --------------------- -cur_frm.cscript.is_sales_partner = function(doc,cdt,cdn){ - if(!doc.is_sales_partner){ - doc.sales_partner = doc.sales_partner_address = doc.partner_type = ''; - refresh_many(['sales_partner','sales_partner_address','partner_type']); - } +cur_frm.cscript.hide_dialog = function() { + if(cur_frm.contact_list) + cur_frm.contact_list.run(); } -//----------- Trigger on supplier name ------------------------ -cur_frm.cscript.supplier = function(doc,cdt,cdn){ - arg = {'dt':'Supplier','dn':doc.supplier,'nm':'supplier_name','fld':'supplier_address','type':'supplier_type'}; - get_server_fields('get_address',docstring(arg),'',doc,cdt,cdn,1); -} -//------------ Trigger on customer name ------------------------ -cur_frm.cscript.customer = function(doc,cdt,cdn){ - arg = {'dt':'Customer','dn':doc.customer,'nm':'customer_name','fld':'customer_address','type':'customer_group'}; - get_server_fields('get_address',docstring(arg),'',doc,cdt,cdn,1); -} - -//------------ Trigger on sales partner ------------------------ -cur_frm.cscript.sales_partner = function(doc,cdt,cdn){ - arg = {'dt':'Sales Partner','dn':doc.sales_partner,'nm':'partner_name','fld':'sales_partner_address','type':'partner_type'}; - get_server_fields('get_address',docstring(arg),'',doc,cdt,cdn,1); -} -*/ diff --git a/erpnext/utilities/page/calendar/calendar.js b/erpnext/utilities/page/calendar/calendar.js index ac1ac8837b..9aa5df87dc 100644 --- a/erpnext/utilities/page/calendar/calendar.js +++ b/erpnext/utilities/page/calendar/calendar.js @@ -24,7 +24,11 @@ pscript.onload_calendar = function(wrapper) { if(!erpnext.calendar) { erpnext.calendar = new Calendar(); erpnext.calendar.init(wrapper); - rename_observers.push(erpnext.calendar); + + var me = this; + $(document).bind('rename', function(event, dt, old_name, new_name) { + erpnext.calendar.rename_notify(dt, old_name, new_name) + }); } } @@ -63,7 +67,7 @@ Calendar.prototype.init=function (parent) { Calendar.prototype.rename_notify = function(dt, old_name, new_name) { // calendar - if(dt = 'Event'){ + if(dt = 'Event'){ if(this.events_by_name[old_name]) { delete this.events_by_name[old_name]; } diff --git a/erpnext/utilities/page/messages/messages.css b/erpnext/utilities/page/messages/messages.css index 81260ab2d9..49b377170d 100644 --- a/erpnext/utilities/page/messages/messages.css +++ b/erpnext/utilities/page/messages/messages.css @@ -1,9 +1,9 @@ #message-post-text { - height: 3em; + width: 50%; } #message-list { - margin: 0px 40px; + } .message { diff --git a/erpnext/utilities/page/messages/messages.html b/erpnext/utilities/page/messages/messages.html index b645d3f241..7538785faf 100644 --- a/erpnext/utilities/page/messages/messages.html +++ b/erpnext/utilities/page/messages/messages.html @@ -3,7 +3,7 @@ ×

    Messages

    - +
    diff --git a/erpnext/utilities/page/messages/messages.js b/erpnext/utilities/page/messages/messages.js index 6937796168..ef56020291 100644 --- a/erpnext/utilities/page/messages/messages.js +++ b/erpnext/utilities/page/messages/messages.js @@ -43,20 +43,24 @@ wn.pages.messages.onload = function(wrapper) { }); // enable, disable button - $('#message-post-text').keyup(function() { + $('#message-post-text').keyup(function(e) { if($(this).val()) { $('#message-post').attr('disabled', false); } else { $('#message-post').attr('disabled', true); } + + if(e.which==13) { + $('#message-post').click(); + } }) } -wn.pages.messages.onshow = function(wrapper) { +$(wn.pages.messages).bind('show', function() { erpnext.messages.show(); - setTimeout(erpnext.messages.refresh, 5000); + setTimeout(erpnext.messages.refresh, 7000); $('#message-post-text').focus(); -} +}) erpnext.messages = { show: function() { @@ -75,8 +79,8 @@ erpnext.messages = { }, // check for updates every 5 seconds if page is active refresh: function() { - setTimeout(erpnext.messages.refresh, 10000); - if(page_body.cur_page_label != 'messages') return; + setTimeout(erpnext.messages.refresh, 7000); + if(wn.container.page.label != 'Messages') return; erpnext.messages.show(); }, get_contact: function() { @@ -91,13 +95,15 @@ erpnext.messages = { return user; }, make_list: function() { - erpnext.messages.list = new wn.widgets.Listing({ + erpnext.messages.list = new wn.ui.Listing({ parent: $('#message-list').get(0), method: 'utilities.page.messages.messages.get_list', args: { contact: null }, render_row: function(wrapper, data) { + $(wrapper).removeClass('list-row'); + data.creation = dateutil.comment_when(data.creation); data.comment_by_fullname = wn.user_info(data.owner).fullname; diff --git a/erpnext/utilities/page/messages/messages.py b/erpnext/utilities/page/messages/messages.py index b28299164c..3a407ddb55 100644 --- a/erpnext/utilities/page/messages/messages.py +++ b/erpnext/utilities/page/messages/messages.py @@ -56,8 +56,12 @@ def get_active_users(arg=None): @webnotes.whitelist() def post(arg=None): """post message""" - import json - arg = json.loads(arg) + if arg: + import json + arg = json.loads(arg) + else: + arg = {} + arg.update(webnotes.form_dict) from webnotes.model.doc import Document d = Document('Comment Widget Record') d.comment = arg['txt'] @@ -69,4 +73,4 @@ def post(arg=None): def delete(arg=None): webnotes.conn.sql("""delete from `tabComment Widget Record` where name=%s""", webnotes.form_dict['name']); - \ No newline at end of file + diff --git a/erpnext/utilities/page/todo/todo.css b/erpnext/utilities/page/todo/todo.css index 4ac49d621c..704e6007e1 100644 --- a/erpnext/utilities/page/todo/todo.css +++ b/erpnext/utilities/page/todo/todo.css @@ -3,6 +3,7 @@ border-bottom: 1px solid #DEB85F; margin-bottom: 5px; height: 14px; + clear: both; } .todoitem .label { @@ -20,7 +21,7 @@ .todoitem .ref_link { float: left; - margin-left: 14px; + margin-left: 10px; display: inline-block; line-height: 18px; } @@ -28,4 +29,4 @@ .todoitem .description { cursor: pointer; float: left; -} \ No newline at end of file +} diff --git a/erpnext/utilities/page/todo/todo.html b/erpnext/utilities/page/todo/todo.html index 34004552f1..32a0a785a8 100644 --- a/erpnext/utilities/page/todo/todo.html +++ b/erpnext/utilities/page/todo/todo.html @@ -4,7 +4,7 @@
    -
    +
    \ No newline at end of file diff --git a/erpnext/utilities/page/todo/todo.js b/erpnext/utilities/page/todo/todo.js index dfaa7cdecf..dcdf50aa9d 100644 --- a/erpnext/utilities/page/todo/todo.js +++ b/erpnext/utilities/page/todo/todo.js @@ -45,10 +45,15 @@ erpnext.todo.ToDoItem = Class.extend({ 'Low':'' } todo.labelclass = label_map[todo.priority]; - todo.userdate = dateutil.str_to_user(todo.date); + todo.userdate = dateutil.str_to_user(todo.date) || ''; + if(todo.assigned_by) { + todo.fullname = repl("[By %(fullname)s] ", { + fullname: wn.boot.user_info[todo.assigned_by].fullname + }) + } else { todo.fullname = ''; } if(todo.reference_name && todo.reference_type) { todo.link = repl('\ - %(reference_name)s', todo); + %(reference_type)s: %(reference_name)s', todo); } else if(todo.reference_type) { todo.link = repl('\ %(reference_type)s', todo); @@ -59,8 +64,8 @@ erpnext.todo.ToDoItem = Class.extend({ \ %(priority)s\ %(userdate)s\ - %(description)s\ - →\ + %(fullname)s%(description)s\ + →  \ %(link)s\ ×\
    ', todo)); diff --git a/erpnext/utilities/page/users/users.js b/erpnext/utilities/page/users/users.js index f87dbe18ff..ad238ae0b1 100644 --- a/erpnext/utilities/page/users/users.js +++ b/erpnext/utilities/page/users/users.js @@ -269,8 +269,8 @@ erpnext.RoleEditor = Class.extend({ ', {role: this.roles[i]})); } $(this.dialog.body).append('
    \ -
    '); - $(this.dialog.body).find('button.btn-primary').click(function() { + '); + $(this.dialog.body).find('button.btn-info').click(function() { me.save(); }); $(this.dialog.body).find('.user-role a').click(function() { @@ -314,7 +314,7 @@ erpnext.RoleEditor = Class.extend({ unset_roles: JSON.stringify(unset_roles), uid: this.uid }, - btn: $(this.dialog.body).find('.btn-primary').get(0), + btn: $(this.dialog.body).find('.btn-info').get(0), callback: function() { } diff --git a/erpnext/utilities/transaction_base.py b/erpnext/utilities/transaction_base.py index b78bed1c0c..032b52faa6 100644 --- a/erpnext/utilities/transaction_base.py +++ b/erpnext/utilities/transaction_base.py @@ -81,12 +81,12 @@ class TransactionBase: cond = 'name="%s"' % address_name if is_shipping_address: - details = webnotes.conn.sql("select name, address_line1, address_line2, city, country, pincode, state, phone from `tabAddress` where %s and docstatus != 2 order by is_shipping_address desc limit 1" % cond, as_dict = 1) + details = webnotes.conn.sql("select name, address_line1, address_line2, city, country, pincode, state, phone, fax from `tabAddress` where %s and docstatus != 2 order by is_shipping_address desc limit 1" % cond, as_dict = 1) else: - details = webnotes.conn.sql("select name, address_line1, address_line2, city, country, pincode, state, phone from `tabAddress` where %s and docstatus != 2 order by is_primary_address desc limit 1" % cond, as_dict = 1) + details = webnotes.conn.sql("select name, address_line1, address_line2, city, country, pincode, state, phone, fax from `tabAddress` where %s and docstatus != 2 order by is_primary_address desc limit 1" % cond, as_dict = 1) extract = lambda x: details and details[0] and details[0].get(x,'') or '' - address_fields = [('','address_line1'),('\n','address_line2'),('\n','city'),(' ','pincode'),('\n','state'),('\n','country'),('\nPhone: ','phone')] + address_fields = [('','address_line1'),('\n','address_line2'),('\n','city'),(' ','pincode'),('\n','state'),('\n','country'),('\nPhone: ','phone'),('\nFax: ', 'fax')] address_display = ''.join([a[0]+extract(a[1]) for a in address_fields if extract(a[1])]) if address_display.startswith('\n'): address_display = address_display[1:] @@ -145,7 +145,7 @@ class TransactionBase: # Get Lead Details # ----------------------- def get_lead_details(self, name): - details = webnotes.conn.sql("select name, lead_name, address_line1, address_line2, city, country, state, pincode, territory, contact_no, mobile_no, email_id from `tabLead` where name = '%s'" %(name), as_dict = 1) + details = webnotes.conn.sql("select name, lead_name, address_line1, address_line2, city, country, state, pincode, territory, contact_no, mobile_no, email_id, company_name from `tabLead` where name = '%s'" %(name), as_dict = 1) extract = lambda x: details and details[0] and details[0].get(x,'') or '' address_fields = [('','address_line1'),('\n','address_line2'),('\n','city'),(' ','pincode'),('\n','state'),('\n','country'),('\nPhone: ','contact_no')] @@ -157,7 +157,8 @@ class TransactionBase: 'address_display' : address_display, 'territory' : extract('territory'), 'contact_mobile' : extract('mobile_no'), - 'contact_email' : extract('email_id') + 'contact_email' : extract('email_id'), + 'organization' : extract('company_name') } return ret diff --git a/erpnext/website/Module Def/Website/Website.txt b/erpnext/website/Module Def/Website/Website.txt deleted file mode 100644 index e4238699e0..0000000000 --- a/erpnext/website/Module Def/Website/Website.txt +++ /dev/null @@ -1,142 +0,0 @@ -# Module Def, Website -[ - - # These values are common in all dictionaries - { - 'creation': '2012-01-23 17:05:32', - 'docstatus': 0, - 'modified': '2012-02-02 13:23:41', - 'modified_by': 'Administrator', - 'owner': 'Administrator' - }, - - # These values are common for all Module Def Role - { - 'doctype': 'Module Def Role', - 'name': '__common__', - 'parent': 'Website', - 'parentfield': 'roles', - 'parenttype': 'Module Def' - }, - - # These values are common for all Module Def Item - { - 'doctype': 'Module Def Item', - 'name': '__common__', - 'parent': 'Website', - 'parentfield': 'items', - 'parenttype': 'Module Def' - }, - - # These values are common for all Module Def - { - 'disabled': 'No', - 'doctype': u'Module Def', - 'is_hidden': 'No', - 'module_label': 'Website', - 'module_name': 'Website', - 'name': '__common__' - }, - - # Module Def, Website - { - 'doctype': u'Module Def', - 'name': 'Website' - }, - - # Module Def Item - { - 'display_name': 'Web Page', - 'doc_name': 'Web Page', - 'doc_type': 'Forms', - 'doctype': 'Module Def Item' - }, - - # Module Def Item - { - 'display_name': 'Product', - 'doc_name': 'Product', - 'doc_type': 'Forms', - 'doctype': 'Module Def Item' - }, - - # Module Def Item - { - 'display_name': 'Blog', - 'doc_name': 'Blog', - 'doc_type': 'Forms', - 'doctype': 'Module Def Item' - }, - - # Module Def Item - { - 'display_name': 'Style Settings', - 'doc_name': 'Style Settings', - 'doc_type': 'Single DocType', - 'doctype': 'Module Def Item' - }, - - # Module Def Item - { - 'display_name': 'Website Settings', - 'doc_name': 'Website Settings', - 'doc_type': 'Single DocType', - 'doctype': 'Module Def Item' - }, - - # Module Def Item - { - 'display_name': 'Home Settings', - 'doc_name': 'Home Settings', - 'doc_type': 'Single DocType', - 'doctype': 'Module Def Item' - }, - - # Module Def Item - { - 'display_name': 'About Us Settings', - 'doc_name': 'About Us Settings', - 'doc_type': 'Single DocType', - 'doctype': 'Module Def Item' - }, - - # Module Def Item - { - 'display_name': 'Contact Us Settings', - 'doc_name': 'Contact Us Settings', - 'doc_type': 'Single DocType', - 'doctype': 'Module Def Item' - }, - - # Module Def Item - { - 'display_name': 'Products Settings', - 'doc_name': 'Products Settings', - 'doc_type': 'Single DocType', - 'doctype': 'Module Def Item' - }, - - # Module Def Role - { - 'doctype': 'Module Def Role', - 'role': 'System Manager' - }, - - # Module Def Role - { - 'doctype': 'Module Def Role', - 'role': 'System Manager' - }, - - # Module Def Role - { - 'doctype': 'Module Def Role', - 'role': 'Website Manager' - }, - - # Module Def Role - { - 'doctype': 'Module Def Role', - 'role': 'Website Manager' - } -] \ No newline at end of file diff --git a/erpnext/website/Role/Blogger/Blogger.txt b/erpnext/website/Role/Blogger/Blogger.txt deleted file mode 100644 index a380d4c7b7..0000000000 --- a/erpnext/website/Role/Blogger/Blogger.txt +++ /dev/null @@ -1,26 +0,0 @@ -# Role, Blogger -[ - - # These values are common in all dictionaries - { - 'creation': '2012-01-27 12:22:24', - 'docstatus': 0, - 'modified': '2012-01-27 12:22:24', - 'modified_by': u'Administrator', - 'owner': u'Administrator' - }, - - # These values are common for all Role - { - 'doctype': 'Role', - 'module': u'Website', - 'name': '__common__', - 'role_name': u'Blogger' - }, - - # Role, Blogger - { - 'doctype': 'Role', - 'name': u'Blogger' - } -] \ No newline at end of file diff --git a/erpnext/website/Role/Website Manager/Website Manager.txt b/erpnext/website/Role/Website Manager/Website Manager.txt deleted file mode 100644 index ad1ad9aef3..0000000000 --- a/erpnext/website/Role/Website Manager/Website Manager.txt +++ /dev/null @@ -1,26 +0,0 @@ -# Role, Website Manager -[ - - # These values are common in all dictionaries - { - 'creation': '2012-01-24 10:18:47', - 'docstatus': 0, - 'modified': '2012-02-06 15:22:27', - 'modified_by': u'Administrator', - 'owner': u'Administrator' - }, - - # These values are common for all Role - { - 'doctype': 'Role', - 'module': u'Website', - 'name': '__common__', - 'role_name': u'Website Manager' - }, - - # Role, Website Manager - { - 'doctype': 'Role', - 'name': u'Website Manager' - } -] \ No newline at end of file diff --git a/erpnext/website/__init__.py b/erpnext/website/__init__.py index e69de29bb2..1ed1cf1818 100644 --- a/erpnext/website/__init__.py +++ b/erpnext/website/__init__.py @@ -0,0 +1,4 @@ +install_docs = [ + {"doctype":"Role", "name":"Blogger"}, + {"doctype":"Role", "name":"Website Manager"}, +] \ No newline at end of file diff --git a/erpnext/website/doctype/blog/blog_page.js b/erpnext/website/doctype/blog/blog_page.js index 76cbf81c72..d419a0b5e1 100644 --- a/erpnext/website/doctype/blog/blog_page.js +++ b/erpnext/website/doctype/blog/blog_page.js @@ -21,7 +21,7 @@ pscript['onload_{{ doc.name }}'] = function(wrapper) { var side = $(wrapper).find('.web-side-section') .append('

    Recent Posts

    ').get(0); - wrapper.recent_list = new wn.widgets.Listing({ + wrapper.recent_list = new wn.ui.Listing({ parent: side, query: 'select name, title, left(content, 100) as content from tabBlog\ where ifnull(published,1)=1', @@ -39,7 +39,7 @@ pscript['onload_{{ doc.name }}'] = function(wrapper) { // comments $(wrapper).find('.web-main-section').append('

    Comments

    '); - wrapper.comment_list = new wn.widgets.Listing({ + wrapper.comment_list = new wn.ui.Listing({ parent: $(wrapper).find('.web-main-section').get(0), query: 'select comment, comment_by_fullname, modified\ from `tabComment Widget Record` where comment_doctype="Page"\ diff --git a/erpnext/website/doctype/product/product_page.js b/erpnext/website/doctype/product/product_page.js index 0f0c56b0ed..926ef69f87 100644 --- a/erpnext/website/doctype/product/product_page.js +++ b/erpnext/website/doctype/product/product_page.js @@ -30,7 +30,7 @@ pscript["onload_{{ doc.page_name }}"] = function(wrapper) { }); // similar products - wrapper.similar = new wn.widgets.Listing({ + wrapper.similar = new wn.ui.Listing({ parent: $(wrapper).find('.similar-products').get(0), hide_refresh: true, page_length: 5, diff --git a/erpnext/website/doctype/style_settings/custom_template.css b/erpnext/website/doctype/style_settings/custom_template.css index 8eb3d6396f..72c15a1929 100644 --- a/erpnext/website/doctype/style_settings/custom_template.css +++ b/erpnext/website/doctype/style_settings/custom_template.css @@ -5,13 +5,19 @@ body { background-color: #{{ doc.background_color }}; {% endif %} {% if doc.font %} - font-family: {{ doc.font }} !important; + font-family: '{{ doc.font }}', Verdana, Sans !important; {% endif %} {% if doc.font_size %} font-size: {{ doc.font_size }} !important; {% endif %} } +{% if doc.font_size %} +.small { + font-size: {{ doc.small_font_size }} !important; +} +{% endif %} + {% if doc.footer_font_color %} footer { color: {{ doc.footer_font_color }}; @@ -26,6 +32,6 @@ footer a, footer a:visited, footer a:hover { {% if doc.heading_font %} h1, h2, h3, h4, h5 { - font-family: {{ doc.heading_font}} !important; + font-family: '{{ doc.heading_font}}', Arial, 'Helvetica Neue' !important; } {% endif %} diff --git a/erpnext/website/doctype/style_settings/style_settings.py b/erpnext/website/doctype/style_settings/style_settings.py index 83961e055c..282cd93fd4 100644 --- a/erpnext/website/doctype/style_settings/style_settings.py +++ b/erpnext/website/doctype/style_settings/style_settings.py @@ -25,9 +25,13 @@ class DocType: with open('erpnext/website/doctype/style_settings/custom_template.css', 'r') as f: temp = Template(f.read()) + self.doc.small_font_size = str(int(self.doc.font_size[:-2])-2) + 'px' + self.doc.custom_css = temp.render(doc = self.doc) from webnotes.session_cache import clear_cache clear_cache('Guest') + del self.doc.fields['small_font_size'] + \ No newline at end of file diff --git a/erpnext/website/doctype/style_settings/style_settings.txt b/erpnext/website/doctype/style_settings/style_settings.txt index f07a9479ca..18bd24c4a5 100644 --- a/erpnext/website/doctype/style_settings/style_settings.txt +++ b/erpnext/website/doctype/style_settings/style_settings.txt @@ -5,150 +5,150 @@ { 'creation': '2012-02-02 09:57:25', 'docstatus': 0, - 'modified': '2012-02-02 10:47:38', - 'modified_by': 'Administrator', - 'owner': 'Administrator' + 'modified': '2012-03-21 10:53:38', + 'modified_by': u'Administrator', + 'owner': u'Administrator' }, # These values are common for all DocType { - '_last_update': '1328159294', + '_last_update': u'1330594969', 'allow_attach': 1, - 'colour': 'White:FFF', - 'description': 'Set your background color, font and image (tiled)', + 'colour': u'White:FFF', + 'description': u'Set your background color, font and image (tiled)', 'doctype': 'DocType', 'issingle': 1, 'max_attachments': 1, - 'module': 'Website', + 'module': u'Website', 'name': '__common__', - 'section_style': 'Simple', + 'section_style': u'Simple', 'show_in_menu': 0, - 'version': 9 + 'version': 15 }, # These values are common for all DocField { - 'doctype': 'DocField', + 'doctype': u'DocField', 'name': '__common__', - 'parent': 'Style Settings', - 'parentfield': 'fields', - 'parenttype': 'DocType' + 'parent': u'Style Settings', + 'parentfield': u'fields', + 'parenttype': u'DocType' }, # These values are common for all DocPerm { - 'doctype': 'DocPerm', + 'doctype': u'DocPerm', 'name': '__common__', - 'parent': 'Style Settings', - 'parentfield': 'permissions', - 'parenttype': 'DocType', + 'parent': u'Style Settings', + 'parentfield': u'permissions', + 'parenttype': u'DocType', 'read': 1, - 'role': 'Website Manager' + 'role': u'Website Manager' }, # DocType, Style Settings { 'doctype': 'DocType', - 'name': 'Style Settings' + 'name': u'Style Settings' }, # DocPerm { 'create': 1, - 'doctype': 'DocPerm', + 'doctype': u'DocPerm', 'permlevel': 0, 'write': 1 }, # DocPerm { - 'doctype': 'DocPerm', + 'doctype': u'DocPerm', 'permlevel': 1 }, # DocField { - 'colour': 'White:FFF', - 'description': 'Solid background color (default light gray)', - 'doctype': 'DocField', - 'fieldname': 'background_color', - 'fieldtype': 'Data', - 'label': 'Background Color', + 'colour': u'White:FFF', + 'description': u'Solid background color (default light gray)', + 'doctype': u'DocField', + 'fieldname': u'background_color', + 'fieldtype': u'Data', + 'label': u'Background Color', 'permlevel': 0 }, # DocField { - 'colour': 'White:FFF', - 'description': 'If image is selected, color will be ignored (attach first)', - 'doctype': 'DocField', - 'fieldname': 'background_image', - 'fieldtype': 'Select', - 'label': 'Background Image', - 'options': 'attach_files:', + 'colour': u'White:FFF', + 'description': u'If image is selected, color will be ignored (attach first)', + 'doctype': u'DocField', + 'fieldname': u'background_image', + 'fieldtype': u'Select', + 'label': u'Background Image', + 'options': u'attach_files:', 'permlevel': 0 }, # DocField { - 'doctype': 'DocField', - 'fieldname': 'font', - 'fieldtype': 'Select', - 'label': 'Font', - 'options': '\nLucida Grande\nVerdana\nArial\nGeorgia\nTahoma', + 'doctype': u'DocField', + 'fieldname': u'font', + 'fieldtype': u'Select', + 'label': u'Font', + 'options': u'\nLucida Grande\nVerdana\nArial\nGeorgia\nTahoma\nPontano Sans\nDroid Sans\nGill Sans', 'permlevel': 0 }, # DocField { - 'doctype': 'DocField', - 'fieldname': 'font_size', - 'fieldtype': 'Select', - 'label': 'Font Size', - 'options': '\n12px\n13px\n14px', + 'doctype': u'DocField', + 'fieldname': u'font_size', + 'fieldtype': u'Select', + 'label': u'Font Size', + 'options': u'\n12px\n13px\n14px\n15px\n16px', 'permlevel': 0 }, # DocField { - 'doctype': 'DocField', - 'fieldname': 'heading_font', - 'fieldtype': 'Select', - 'label': 'Heaing Font', - 'options': '\nLucida Grande\nVerdana\nArial\nGeorgia\nTahoma', + 'doctype': u'DocField', + 'fieldname': u'heading_font', + 'fieldtype': u'Select', + 'label': u'Heading Font', + 'options': u'\nLucida Grande\nVerdana\nArial\nGeorgia\nTahoma\nPontano Sans\nDroid Sans\nGill Sans', 'permlevel': 0 }, # DocField { - 'colour': 'White:FFF', - 'description': 'Select a white footer foreground color if you have a dark background', - 'doctype': 'DocField', - 'fieldname': 'footer_font_color', - 'fieldtype': 'Select', - 'label': 'Footer Font Color', - 'options': '\nwhite', + 'colour': u'White:FFF', + 'description': u'Select a white footer foreground color if you have a dark background', + 'doctype': u'DocField', + 'fieldname': u'footer_font_color', + 'fieldtype': u'Select', + 'label': u'Footer Font Color', + 'options': u'\nwhite', 'permlevel': 0 }, # DocField { - 'colour': 'White:FFF', - 'description': 'Auto generated', - 'doctype': 'DocField', - 'fieldname': 'custom_css', - 'fieldtype': 'Code', - 'label': 'Custom CSS', + 'colour': u'White:FFF', + 'description': u'Auto generated', + 'doctype': u'DocField', + 'fieldname': u'custom_css', + 'fieldtype': u'Code', + 'label': u'Custom CSS', 'permlevel': 1 }, # DocField { - 'doctype': 'DocField', - 'fieldname': 'file_list', - 'fieldtype': 'Text', + 'doctype': u'DocField', + 'fieldname': u'file_list', + 'fieldtype': u'Text', 'hidden': 1, - 'label': 'File List', + 'label': u'File List', 'no_copy': 1, 'permlevel': 0, 'print_hide': 1 diff --git a/erpnext/website/js/product_category.js b/erpnext/website/js/product_category.js index 9e0c7f0a51..956d7a65d3 100644 --- a/erpnext/website/js/product_category.js +++ b/erpnext/website/js/product_category.js @@ -18,7 +18,7 @@ erpnext.product_item_group = {} erpnext.make_product_categories = function(wrapper) { - wrapper.category_list = new wn.widgets.Listing({ + wrapper.category_list = new wn.ui.Listing({ parent: $(wrapper).find('.more-categories').get(0), query: 'select label, count(t2.name) as items, t1.item_group \ from `tabProduct Group` t1, `tabProduct` t2, tabItem t3\ diff --git a/erpnext/website/js/topbar.js b/erpnext/website/js/topbar.js index 90ad3e825b..4f9ed7fe99 100644 --- a/erpnext/website/js/topbar.js +++ b/erpnext/website/js/topbar.js @@ -24,7 +24,7 @@ wn.provide('erpnext.navbar'); \ */ -erpnext.navbar.navbar = Class.extend({ +erpnext.navbar.Navbar = Class.extend({ init: function() { this.make(); $('.brand').html(wn.boot.website_settings.brand_html); @@ -112,6 +112,6 @@ erpnext.Footer = Class.extend({ }); $(document).bind('startup', function() { - erpnext.footer = new erpnext.Footer(); - erpnext.navbar.navbar = new erpnext.navbar.navbar(); +// erpnext.footer = new erpnext.Footer(); + erpnext.navbar.navbar = new erpnext.navbar.Navbar(); }) diff --git a/erpnext/website/page/blog/blog.js b/erpnext/website/page/blog/blog.js index 9ca7392db4..bc7aec44b9 100644 --- a/erpnext/website/page/blog/blog.js +++ b/erpnext/website/page/blog/blog.js @@ -16,7 +16,7 @@ pscript.onload_blog = function(wrapper) { - wrapper.blog_list = new wn.widgets.Listing({ + wrapper.blog_list = new wn.ui.Listing({ parent: $(wrapper).find('.web-main-section').get(0), query: 'select tabBlog.name, title, left(content, 300) as content, tabBlog.modified, \ ifnull(first_name, "") as first_name, ifnull(last_name, "") as last_name \ diff --git a/erpnext/website/page/products/products.js b/erpnext/website/page/products/products.js index 7af551e92c..09ccba0ed2 100644 --- a/erpnext/website/page/products/products.js +++ b/erpnext/website/page/products/products.js @@ -57,7 +57,7 @@ erpnext.products.get_group = function() { } erpnext.products.make_product_list = function(wrapper) { - wrapper.mainlist = new wn.widgets.Listing({ + wrapper.mainlist = new wn.ui.Listing({ parent: $(wrapper).find('.web-main-section').get(0), run_btn: $(wrapper).find('.products-search .btn').get(0), hide_refresh: true, diff --git a/images/redbeech.jpg b/images/redbeech.jpg new file mode 100644 index 0000000000..2480dc9dfc Binary files /dev/null and b/images/redbeech.jpg differ diff --git a/js/all-app.js b/js/all-app.js index 0dc4b58a1d..925611a94e 100644 --- a/js/all-app.js +++ b/js/all-app.js @@ -1,7 +1,8 @@ /* * lib/js/lib/history/history.min.js - *//* + */ +/* * jQuery hashchange event - v1.3 - 7/21/2010 * http://benalman.com/projects/jquery-hashchange-plugin/ * @@ -11,100 +12,99 @@ */ (function($,e,b){var c="hashchange",h=document,f,g=$.event.special,i=h.documentMode,d="on"+c in e&&(i===b||i>7);function a(j){j=j||location.href;return"#"+j.replace(/^[^#]*#?(.*)$/,"$1")}$.fn[c]=function(j){return j?this.bind(c,j):this.trigger(c)};$.fn[c].delay=50;g[c]=$.extend(g[c],{setup:function(){if(d){return false}$(f.start)},teardown:function(){if(d){return false}$(f.stop)}});f=(function(){var j={},p,m=a(),k=function(q){return q},l=k,o=k;j.start=function(){p||n()};j.stop=function(){p&&clearTimeout(p);p=b};function n(){var r=a(),q=o(m);if(r!==m){l(m=r,q);$(e).trigger(c)}else{if(q!==m){location.href=location.href.replace(/#.*/,"")+q}}p=setTimeout(n,$.fn[c].delay)}$.browser.msie&&!d&&(function(){var q,r;j.start=function(){if(!q){r=$.fn[c].src;r=r&&r+a();q=$('':"");inst._keyEvent=false;return html},_generateMonthYearHeader:function(inst,drawMonth,drawYear,minDate,maxDate,selectedDate,secondary,monthNames,monthNamesShort){minDate=(inst.rangeStart&&minDate&&selectedDate "}else{var inMinYear=(minDate&&minDate.getFullYear()==drawYear);var inMaxYear=(maxDate&&maxDate.getFullYear()==drawYear);monthHtml+='"}if(!showMonthAfterYear){html+=monthHtml+((secondary||changeMonth||changeYear)&&(!(changeMonth&&changeYear))?" ":"")}if(secondary||!changeYear){html+=''+drawYear+""}else{var years=this._get(inst,"yearRange").split(":");var year=0;var endYear=0;if(years.length!=2){year=drawYear-10;endYear=drawYear+10}else{if(years[0].charAt(0)=="+"||years[0].charAt(0)=="-"){year=drawYear+parseInt(years[0],10);endYear=drawYear+parseInt(years[1],10)}else{year=parseInt(years[0],10);endYear=parseInt(years[1],10)}}year=(minDate?Math.max(year,minDate.getFullYear()):year);endYear=(maxDate?Math.min(endYear,maxDate.getFullYear()):endYear);html+='"}if(showMonthAfterYear){html+=(secondary||changeMonth||changeYear?" ":"")+monthHtml}html+="";return html},_adjustInstDate:function(inst,offset,period){var year=inst.drawYear+(period=="Y"?offset:0);var month=inst.drawMonth+(period=="M"?offset:0);var day=Math.min(inst.selectedDay,this._getDaysInMonth(year,month))+(period=="D"?offset:0);var date=this._daylightSavingAdjust(new Date(year,month,day));var minDate=this._getMinMaxDate(inst,"min",true);var maxDate=this._getMinMaxDate(inst,"max");date=(minDate&&datemaxDate?maxDate:date);inst.selectedDay=date.getDate();inst.drawMonth=inst.selectedMonth=date.getMonth();inst.drawYear=inst.selectedYear=date.getFullYear();if(period=="M"||period=="Y"){this._notifyChange(inst)}},_notifyChange:function(inst){var onChange=this._get(inst,"onChangeMonthYear");if(onChange){onChange.apply((inst.input?inst.input[0]:null),[inst.selectedYear,inst.selectedMonth+1,inst])}},_getNumberOfMonths:function(inst){var numMonths=this._get(inst,"numberOfMonths");return(numMonths==null?[1,1]:(typeof numMonths=="number"?[1,numMonths]:numMonths))},_getMinMaxDate:function(inst,minMax,checkRange){var date=this._determineDate(this._get(inst,minMax+"Date"),null);return(!checkRange||!inst.rangeStart?date:(!date||inst.rangeStart>date?inst.rangeStart:date))},_getDaysInMonth:function(year,month){return 32-new Date(year,month,32).getDate()},_getFirstDayOfMonth:function(year,month){return new Date(year,month,1).getDay()},_canAdjustMonth:function(inst,offset,curYear,curMonth){var numMonths=this._getNumberOfMonths(inst);var date=this._daylightSavingAdjust(new Date(curYear,curMonth+(offset<0?offset:numMonths[1]),1));if(offset<0){date.setDate(this._getDaysInMonth(date.getFullYear(),date.getMonth()))}return this._isInRange(inst,date)},_isInRange:function(inst,date){var newMinDate=(!inst.rangeStart?null:this._daylightSavingAdjust(new Date(inst.selectedYear,inst.selectedMonth,inst.selectedDay)));newMinDate=(newMinDate&&inst.rangeStart=minDate)&&(!maxDate||date<=maxDate))},_getFormatConfig:function(inst){var shortYearCutoff=this._get(inst,"shortYearCutoff");shortYearCutoff=(typeof shortYearCutoff!="string"?shortYearCutoff:new Date().getFullYear()%100+parseInt(shortYearCutoff,10));return{shortYearCutoff:shortYearCutoff,dayNamesShort:this._get(inst,"dayNamesShort"),dayNames:this._get(inst,"dayNames"),monthNamesShort:this._get(inst,"monthNamesShort"),monthNames:this._get(inst,"monthNames")}},_formatDate:function(inst,day,month,year){if(!day){inst.currentDay=inst.selectedDay;inst.currentMonth=inst.selectedMonth;inst.currentYear=inst.selectedYear}var date=(day?(typeof day=="object"?day:this._daylightSavingAdjust(new Date(year,month,day))):this._daylightSavingAdjust(new Date(inst.currentYear,inst.currentMonth,inst.currentDay)));return this.formatDate(this._get(inst,"dateFormat"),date,this._getFormatConfig(inst))}});function extendRemove(target,props){$.extend(target,props);for(var name in props){if(props[name]==null||props[name]==undefined){target[name]=props[name]}}return target}function isArray(a){return(a&&(($.browser.safari&&typeof a=="object"&&a.length)||(a.constructor&&a.constructor.toString().match(/\Array\(\)/))))}$.fn.datepicker=function(options){if(!$.datepicker.initialized){$(document).mousedown($.datepicker._checkExternalClick).find("body").append($.datepicker.dpDiv);$.datepicker.initialized=true}var otherArgs=Array.prototype.slice.call(arguments,1);if(typeof options=="string"&&(options=="isDisabled"||options=="getDate")){return $.datepicker["_"+options+"Datepicker"].apply($.datepicker,[this[0]].concat(otherArgs))}if(options=="option"&&arguments.length==2&&typeof arguments[1]=="string"){return $.datepicker["_"+options+"Datepicker"].apply($.datepicker,[this[0]].concat(otherArgs))}return this.each(function(){typeof options=="string"?$.datepicker["_"+options+"Datepicker"].apply($.datepicker,[this].concat(otherArgs)):$.datepicker._attachDatepicker(this,options)})};$.datepicker=new Datepicker();$.datepicker.initialized=false;$.datepicker.uuid=new Date().getTime();$.datepicker.version="1.7.3";window.DP_jQuery=$})(jQuery);; -/* - * jquery.qtip. The jQuery tooltip plugin - * - * Copyright (c) 2009 Craig Thompson - * http://craigsworks.com - * - * Licensed under MIT - * http://www.opensource.org/licenses/mit-license.php - * - * Launch : February 2009 - * Version : 1.0.0-rc3 - * Released: Tuesday 12th May, 2009 - 00:00 - * Debug: jquery.qtip.debug.js + * lib/js/lib/jquery/jquery.ui.core.js */ -(function(f){f.fn.qtip=function(B,u){var y,t,A,s,x,w,v,z;if(typeof B=="string"){if(typeof f(this).data("qtip")!=="object"){f.fn.qtip.log.error.call(self,1,f.fn.qtip.constants.NO_TOOLTIP_PRESENT,false)}if(B=="api"){return f(this).data("qtip").interfaces[f(this).data("qtip").current]}else{if(B=="interfaces"){return f(this).data("qtip").interfaces}}}else{if(!B){B={}}if(typeof B.content!=="object"||(B.content.jquery&&B.content.length>0)){B.content={text:B.content}}if(typeof B.content.title!=="object"){B.content.title={text:B.content.title}}if(typeof B.position!=="object"){B.position={corner:B.position}}if(typeof B.position.corner!=="object"){B.position.corner={target:B.position.corner,tooltip:B.position.corner}}if(typeof B.show!=="object"){B.show={when:B.show}}if(typeof B.show.when!=="object"){B.show.when={event:B.show.when}}if(typeof B.show.effect!=="object"){B.show.effect={type:B.show.effect}}if(typeof B.hide!=="object"){B.hide={when:B.hide}}if(typeof B.hide.when!=="object"){B.hide.when={event:B.hide.when}}if(typeof B.hide.effect!=="object"){B.hide.effect={type:B.hide.effect}}if(typeof B.style!=="object"){B.style={name:B.style}}B.style=c(B.style);s=f.extend(true,{},f.fn.qtip.defaults,B);s.style=a.call({options:s},s.style);s.user=f.extend(true,{},B)}return f(this).each(function(){if(typeof B=="string"){w=B.toLowerCase();A=f(this).qtip("interfaces");if(typeof A=="object"){if(u===true&&w=="destroy"){while(A.length>0){A[A.length-1].destroy()}}else{if(u!==true){A=[f(this).qtip("api")]}for(y=0;y0))}if(typeof s.options.show.solo=="object"){z=f(s.options.show.solo)}else{if(s.options.show.solo===true){z=f("div.qtip").not(s.elements.tooltip)}}if(z){z.each(function(){if(f(this).qtip("api").status.rendered===true){f(this).qtip("api").hide()}})}if(typeof s.options.show.effect.type=="function"){s.options.show.effect.type.call(s.elements.tooltip,s.options.show.effect.length);s.elements.tooltip.queue(function(){w();f(this).dequeue()})}else{switch(s.options.show.effect.type.toLowerCase()){case"fade":s.elements.tooltip.fadeIn(s.options.show.effect.length,w);break;case"slide":s.elements.tooltip.slideDown(s.options.show.effect.length,function(){w();if(s.options.position.type!=="static"){s.updatePosition(y,true)}});break;case"grow":s.elements.tooltip.show(s.options.show.effect.length,w);break;default:s.elements.tooltip.show(null,w);break}s.elements.tooltip.addClass(s.options.style.classes.active)}return f.fn.qtip.log.error.call(s,1,f.fn.qtip.constants.EVENT_SHOWN,"show")},hide:function(y){var x;if(!s.status.rendered){return f.fn.qtip.log.error.call(s,2,f.fn.qtip.constants.TOOLTIP_NOT_RENDERED,"hide")}else{if(s.elements.tooltip.css("display")==="none"){return s}}clearTimeout(s.timers.show);s.elements.tooltip.stop(true,false);x=s.beforeHide.call(s,y);if(x===false){return s}function w(){s.onHide.call(s,y)}s.cache.toggle=0;if(typeof s.options.hide.effect.type=="function"){s.options.hide.effect.type.call(s.elements.tooltip,s.options.hide.effect.length);s.elements.tooltip.queue(function(){w();f(this).dequeue()})}else{switch(s.options.hide.effect.type.toLowerCase()){case"fade":s.elements.tooltip.fadeOut(s.options.hide.effect.length,w);break;case"slide":s.elements.tooltip.slideUp(s.options.hide.effect.length,w);break;case"grow":s.elements.tooltip.hide(s.options.hide.effect.length,w);break;default:s.elements.tooltip.hide(null,w);break}s.elements.tooltip.removeClass(s.options.style.classes.active)}return f.fn.qtip.log.error.call(s,1,f.fn.qtip.constants.EVENT_HIDDEN,"hide")},updatePosition:function(w,x){var C,G,L,J,H,E,y,I,B,D,K,A,F,z;if(!s.status.rendered){return f.fn.qtip.log.error.call(s,2,f.fn.qtip.constants.TOOLTIP_NOT_RENDERED,"updatePosition")}else{if(s.options.position.type=="static"){return f.fn.qtip.log.error.call(s,1,f.fn.qtip.constants.CANNOT_POSITION_STATIC,"updatePosition")}}G={position:{left:0,top:0},dimensions:{height:0,width:0},corner:s.options.position.corner.target};L={position:s.getPosition(),dimensions:s.getDimensions(),corner:s.options.position.corner.tooltip};if(s.options.position.target!=="mouse"){if(s.options.position.target.get(0).nodeName.toLowerCase()=="area"){J=s.options.position.target.attr("coords").split(",");for(C=0;CG.dimensions.width){G.dimensions.width=J[C]}if(J[C]G.dimensions.height){G.dimensions.height=J[C]}if(J[C]0){if(L.corner.search(/Left/)!==-1){y.left-=s.options.style.border.radius}else{if(L.corner.search(/Right/)!==-1){y.left+=s.options.style.border.radius}}if(L.corner.search(/Top/)!==-1){y.top-=s.options.style.border.radius}else{if(L.corner.search(/Bottom/)!==-1){y.top+=s.options.style.border.radius}}}if(I){if(L.corner.search(/top/)!==-1){y.top-=I}else{if(L.corner.search(/bottom/)!==-1){y.top+=I}}if(L.corner.search(/left/)!==-1){y.left-=I}else{if(L.corner.search(/right/)!==-1){y.left+=I}}if(L.corner.search(/leftMiddle|rightMiddle/)!==-1){y.top-=1}}if(s.options.position.adjust.screen===true){y=o.call(s,y,G,L)}if(s.options.position.target==="mouse"&&s.options.position.adjust.mouse===true){if(s.options.position.adjust.screen===true&&s.elements.tip){K=s.elements.tip.attr("rel")}else{K=s.options.position.corner.tooltip}y.left+=(K.search(/right/i)!==-1)?-6:6;y.top+=(K.search(/bottom/i)!==-1)?-6:6}if(!s.elements.bgiframe&&f.browser.msie&&parseInt(f.browser.version.charAt(0))==6){f("select, object").each(function(){A=f(this).offset();A.bottom=A.top+f(this).height();A.right=A.left+f(this).width();if(y.top+L.dimensions.height>=A.top&&y.left+L.dimensions.width>=A.left){k.call(s)}})}y.left+=s.options.position.adjust.x;y.top+=s.options.position.adjust.y;F=s.getPosition();if(y.left!=F.left||y.top!=F.top){z=s.beforePositionUpdate.call(s,w);if(z===false){return s}s.cache.position=y;if(x===true){s.status.animated=true;s.elements.tooltip.animate(y,200,"swing",function(){s.status.animated=false})}else{s.elements.tooltip.css(y)}s.onPositionUpdate.call(s,w);if(typeof w!=="undefined"&&w.type&&w.type!=="mousemove"){f.fn.qtip.log.error.call(s,1,f.fn.qtip.constants.EVENT_POSITION_UPDATED,"updatePosition")}}return s},updateWidth:function(w){var x;if(!s.status.rendered){return f.fn.qtip.log.error.call(s,2,f.fn.qtip.constants.TOOLTIP_NOT_RENDERED,"updateWidth")}else{if(w&&typeof w!=="number"){return f.fn.qtip.log.error.call(s,2,"newWidth must be of type number","updateWidth")}}x=s.elements.contentWrapper.siblings().add(s.elements.tip).add(s.elements.button);if(!w){if(typeof s.options.style.width.value=="number"){w=s.options.style.width.value}else{s.elements.tooltip.css({width:"auto"});x.hide();if(f.browser.msie){s.elements.wrapper.add(s.elements.contentWrapper.children()).css({zoom:"normal"})}w=s.getDimensions().width+1;if(!s.options.style.width.value){if(w>s.options.style.width.max){w=s.options.style.width.max}if(w").get(0).getContext){z=s.elements.tooltip.find(".qtip-tip canvas:first");x=z.get(0).getContext("2d");x.clearRect(0,0,300,300);y=z.parent("div[rel]:first").attr("rel");B=b(y,s.options.style.tip.size.width,s.options.style.tip.size.height);h.call(s,z,B,s.options.style.tip.color||s.options.style.border.color)}else{if(f.browser.msie){z=s.elements.tooltip.find('.qtip-tip [nodeName="shape"]');z.attr("fillcolor",s.options.style.tip.color||s.options.style.border.color)}}}if(s.options.style.border.radius>0){s.elements.tooltip.find(".qtip-betweenCorners").css({backgroundColor:s.options.style.border.color});if(f("").get(0).getContext){A=g(s.options.style.border.radius);s.elements.tooltip.find(".qtip-wrapper canvas").each(function(){x=f(this).get(0).getContext("2d");x.clearRect(0,0,300,300);y=f(this).parent("div[rel]:first").attr("rel");r.call(s,f(this),A[y],s.options.style.border.radius,s.options.style.border.color)})}else{if(f.browser.msie){s.elements.tooltip.find('.qtip-wrapper [nodeName="arc"]').each(function(){f(this).attr("fillcolor",s.options.style.border.color)})}}}return f.fn.qtip.log.error.call(s,1,f.fn.qtip.constants.EVENT_STYLE_UPDATED,"updateStyle")},updateContent:function(A,y){var z,x,w;if(!s.status.rendered){return f.fn.qtip.log.error.call(s,2,f.fn.qtip.constants.TOOLTIP_NOT_RENDERED,"updateContent")}else{if(!A){return f.fn.qtip.log.error.call(s,2,f.fn.qtip.constants.NO_CONTENT_PROVIDED,"updateContent")}}z=s.beforeContentUpdate.call(s,A);if(typeof z=="string"){A=z}else{if(z===false){return}}if(f.browser.msie){s.elements.contentWrapper.children().css({zoom:"normal"})}if(A.jquery&&A.length>0){A.clone(true).appendTo(s.elements.content).show()}else{s.elements.content.html(A)}x=s.elements.content.find("img[complete=false]");if(x.length>0){w=0;x.each(function(C){f('').load(function(){if(++w==x.length){B()}})})}else{B()}function B(){s.updateWidth();if(y!==false){if(s.options.position.type!=="static"){s.updatePosition(s.elements.tooltip.is(":visible"),true)}if(s.options.style.tip.corner!==false){n.call(s)}}}s.onContentUpdate.call(s);return f.fn.qtip.log.error.call(s,1,f.fn.qtip.constants.EVENT_CONTENT_UPDATED,"loadContent")},loadContent:function(w,z,A){var y;if(!s.status.rendered){return f.fn.qtip.log.error.call(s,2,f.fn.qtip.constants.TOOLTIP_NOT_RENDERED,"loadContent")}y=s.beforeContentLoad.call(s);if(y===false){return s}if(A=="post"){f.post(w,z,x)}else{f.get(w,z,x)}function x(B){s.onContentLoad.call(s);f.fn.qtip.log.error.call(s,1,f.fn.qtip.constants.EVENT_CONTENT_LOADED,"loadContent");s.updateContent(B)}return s},updateTitle:function(w){if(!s.status.rendered){return f.fn.qtip.log.error.call(s,2,f.fn.qtip.constants.TOOLTIP_NOT_RENDERED,"updateTitle")}else{if(!w){return f.fn.qtip.log.error.call(s,2,f.fn.qtip.constants.NO_CONTENT_PROVIDED,"updateTitle")}}returned=s.beforeTitleUpdate.call(s);if(returned===false){return s}if(s.elements.button){s.elements.button=s.elements.button.clone(true)}s.elements.title.html(w);if(s.elements.button){s.elements.title.prepend(s.elements.button)}s.onTitleUpdate.call(s);return f.fn.qtip.log.error.call(s,1,f.fn.qtip.constants.EVENT_TITLE_UPDATED,"updateTitle")},focus:function(A){var y,x,w,z;if(!s.status.rendered){return f.fn.qtip.log.error.call(s,2,f.fn.qtip.constants.TOOLTIP_NOT_RENDERED,"focus")}else{if(s.options.position.type=="static"){return f.fn.qtip.log.error.call(s,1,f.fn.qtip.constants.CANNOT_FOCUS_STATIC,"focus")}}y=parseInt(s.elements.tooltip.css("z-index"));x=6000+f("div.qtip[qtip]").length-1;if(!s.status.focused&&y!==x){z=s.beforeFocus.call(s,A);if(z===false){return s}f("div.qtip[qtip]").not(s.elements.tooltip).each(function(){if(f(this).qtip("api").status.rendered===true){w=parseInt(f(this).css("z-index"));if(typeof w=="number"&&w>-1){f(this).css({zIndex:parseInt(f(this).css("z-index"))-1})}f(this).qtip("api").status.focused=false}});s.elements.tooltip.css({zIndex:x});s.status.focused=true;s.onFocus.call(s,A);f.fn.qtip.log.error.call(s,1,f.fn.qtip.constants.EVENT_FOCUSED,"focus")}return s},disable:function(w){if(!s.status.rendered){return f.fn.qtip.log.error.call(s,2,f.fn.qtip.constants.TOOLTIP_NOT_RENDERED,"disable")}if(w){if(!s.status.disabled){s.status.disabled=true;f.fn.qtip.log.error.call(s,1,f.fn.qtip.constants.EVENT_DISABLED,"disable")}else{f.fn.qtip.log.error.call(s,1,f.fn.qtip.constants.TOOLTIP_ALREADY_DISABLED,"disable")}}else{if(s.status.disabled){s.status.disabled=false;f.fn.qtip.log.error.call(s,1,f.fn.qtip.constants.EVENT_ENABLED,"disable")}else{f.fn.qtip.log.error.call(s,1,f.fn.qtip.constants.TOOLTIP_ALREADY_ENABLED,"disable")}}return s},destroy:function(){var w,x,y;x=s.beforeDestroy.call(s);if(x===false){return s}if(s.status.rendered){s.options.show.when.target.unbind("mousemove.qtip",s.updatePosition);s.options.show.when.target.unbind("mouseout.qtip",s.hide);s.options.show.when.target.unbind(s.options.show.when.event+".qtip");s.options.hide.when.target.unbind(s.options.hide.when.event+".qtip");s.elements.tooltip.unbind(s.options.hide.when.event+".qtip");s.elements.tooltip.unbind("mouseover.qtip",s.focus);s.elements.tooltip.remove()}else{s.options.show.when.target.unbind(s.options.show.when.event+".qtip-create")}if(typeof s.elements.target.data("qtip")=="object"){y=s.elements.target.data("qtip").interfaces;if(typeof y=="object"&&y.length>0){for(w=0;w0){s.elements.target.data("qtip").current=y.length-1}else{s.elements.target.removeData("qtip")}s.onDestroy.call(s);f.fn.qtip.log.error.call(s,1,f.fn.qtip.constants.EVENT_DESTROYED,"destroy");return s.elements.target},getPosition:function(){var w,x;if(!s.status.rendered){return f.fn.qtip.log.error.call(s,2,f.fn.qtip.constants.TOOLTIP_NOT_RENDERED,"getPosition")}w=(s.elements.tooltip.css("display")!=="none")?false:true;if(w){s.elements.tooltip.css({visiblity:"hidden"}).show()}x=s.elements.tooltip.offset();if(w){s.elements.tooltip.css({visiblity:"visible"}).hide()}return x},getDimensions:function(){var w,x;if(!s.status.rendered){return f.fn.qtip.log.error.call(s,2,f.fn.qtip.constants.TOOLTIP_NOT_RENDERED,"getDimensions")}w=(!s.elements.tooltip.is(":visible"))?true:false;if(w){s.elements.tooltip.css({visiblity:"hidden"}).show()}x={height:s.elements.tooltip.outerHeight(),width:s.elements.tooltip.outerWidth()};if(w){s.elements.tooltip.css({visiblity:"visible"}).hide()}return x}})}function p(){var s,w,u,t,v,y,x;s=this;s.beforeRender.call(s);s.status.rendered=true;s.elements.tooltip='';s.elements.tooltip=f(s.elements.tooltip);s.elements.tooltip.appendTo(s.options.position.container);s.elements.tooltip.data("qtip",{current:0,interfaces:[s]});s.elements.wrapper=s.elements.tooltip.children("div:first");s.elements.contentWrapper=s.elements.wrapper.children("div:first").css({background:s.options.style.background});s.elements.content=s.elements.contentWrapper.children("div:first").css(q(s.options.style));if(f.browser.msie){s.elements.wrapper.add(s.elements.content).css({zoom:1})}if(s.options.hide.when.event=="unfocus"){s.elements.tooltip.attr("unfocus",true)}if(typeof s.options.style.width.value=="number"){s.updateWidth()}if(f("").get(0).getContext||f.browser.msie){if(s.options.style.border.radius>0){m.call(s)}else{s.elements.contentWrapper.css({border:s.options.style.border.width+"px solid "+s.options.style.border.color})}if(s.options.style.tip.corner!==false){e.call(s)}}else{s.elements.contentWrapper.css({border:s.options.style.border.width+"px solid "+s.options.style.border.color});s.options.style.border.radius=0;s.options.style.tip.corner=false;f.fn.qtip.log.error.call(s,2,f.fn.qtip.constants.CANVAS_VML_NOT_SUPPORTED,"render")}if((typeof s.options.content.text=="string"&&s.options.content.text.length>0)||(s.options.content.text.jquery&&s.options.content.text.length>0)){u=s.options.content.text}else{if(typeof s.elements.target.attr("title")=="string"&&s.elements.target.attr("title").length>0){u=s.elements.target.attr("title").replace("\\n","
    ");s.elements.target.attr("title","")}else{if(typeof s.elements.target.attr("alt")=="string"&&s.elements.target.attr("alt").length>0){u=s.elements.target.attr("alt").replace("\\n","
    ");s.elements.target.attr("alt","")}else{u=" ";f.fn.qtip.log.error.call(s,1,f.fn.qtip.constants.NO_VALID_CONTENT,"render")}}}if(s.options.content.title.text!==false){j.call(s)}s.updateContent(u);l.call(s);if(s.options.show.ready===true){s.show()}if(s.options.content.url!==false){t=s.options.content.url;v=s.options.content.data;y=s.options.content.method||"get";s.loadContent(t,v,y)}s.onRender.call(s);f.fn.qtip.log.error.call(s,1,f.fn.qtip.constants.EVENT_RENDERED,"render")}function m(){var F,z,t,B,x,E,u,G,D,y,w,C,A,s,v;F=this;F.elements.wrapper.find(".qtip-borderBottom, .qtip-borderTop").remove();t=F.options.style.border.width;B=F.options.style.border.radius;x=F.options.style.border.color||F.options.style.tip.color;E=g(B);u={};for(z in E){u[z]='
    ';if(f("").get(0).getContext){u[z]+=''}else{if(f.browser.msie){G=B*2+3;u[z]+=''}}u[z]+="
    "}D=F.getDimensions().width-(Math.max(t,B)*2);y='
    ';w='
    '+u.topLeft+u.topRight+y;F.elements.wrapper.prepend(w);C='
    '+u.bottomLeft+u.bottomRight+y;F.elements.wrapper.append(C);if(f("").get(0).getContext){F.elements.wrapper.find("canvas").each(function(){A=E[f(this).parent("[rel]:first").attr("rel")];r.call(F,f(this),A,B,x)})}else{if(f.browser.msie){F.elements.tooltip.append('')}}s=Math.max(B,(B+(t-B)));v=Math.max(t-B,0);F.elements.contentWrapper.css({border:"0px solid "+x,borderWidth:v+"px "+s+"px"})}function r(u,w,s,t){var v=u.get(0).getContext("2d");v.fillStyle=t;v.beginPath();v.arc(w[0],w[1],s,0,Math.PI*2,false);v.fill()}function e(v){var t,s,x,u,w;t=this;if(t.elements.tip!==null){t.elements.tip.remove()}s=t.options.style.tip.color||t.options.style.border.color;if(t.options.style.tip.corner===false){return}else{if(!v){v=t.options.style.tip.corner}}x=b(v,t.options.style.tip.size.width,t.options.style.tip.size.height);t.elements.tip='
    ';if(f("").get(0).getContext){t.elements.tip+=''}else{if(f.browser.msie){u=t.options.style.tip.size.width+","+t.options.style.tip.size.height;w="m"+x[0][0]+","+x[0][1];w+=" l"+x[1][0]+","+x[1][1];w+=" "+x[2][0]+","+x[2][1];w+=" xe";t.elements.tip+='';t.elements.tip+='';t.elements.contentWrapper.css("position","relative")}}t.elements.tooltip.prepend(t.elements.tip+"
    ");t.elements.tip=t.elements.tooltip.find("."+t.options.style.classes.tip).eq(0);if(f("").get(0).getContext){h.call(t,t.elements.tip.find("canvas:first"),x,s)}if(v.search(/top/)!==-1&&f.browser.msie&&parseInt(f.browser.version.charAt(0))===6){t.elements.tip.css({marginTop:-4})}n.call(t,v)}function h(t,v,s){var u=t.get(0).getContext("2d");u.fillStyle=s;u.beginPath();u.moveTo(v[0][0],v[0][1]);u.lineTo(v[1][0],v[1][1]);u.lineTo(v[2][0],v[2][1]);u.fill()}function n(u){var t,w,s,x,v;t=this;if(t.options.style.tip.corner===false||!t.elements.tip){return}if(!u){u=t.elements.tip.attr("rel")}w=positionAdjust=(f.browser.msie)?1:0;t.elements.tip.css(u.match(/left|right|top|bottom/)[0],0);if(u.search(/top|bottom/)!==-1){if(f.browser.msie){if(parseInt(f.browser.version.charAt(0))===6){positionAdjust=(u.search(/top/)!==-1)?-3:1}else{positionAdjust=(u.search(/top/)!==-1)?1:2}}if(u.search(/Middle/)!==-1){t.elements.tip.css({left:"50%",marginLeft:-(t.options.style.tip.size.width/2)})}else{if(u.search(/Left/)!==-1){t.elements.tip.css({left:t.options.style.border.radius-w})}else{if(u.search(/Right/)!==-1){t.elements.tip.css({right:t.options.style.border.radius+w})}}}if(u.search(/top/)!==-1){t.elements.tip.css({top:-positionAdjust})}else{t.elements.tip.css({bottom:positionAdjust})}}else{if(u.search(/left|right/)!==-1){if(f.browser.msie){positionAdjust=(parseInt(f.browser.version.charAt(0))===6)?1:((u.search(/left/)!==-1)?1:2)}if(u.search(/Middle/)!==-1){t.elements.tip.css({top:"50%",marginTop:-(t.options.style.tip.size.height/2)})}else{if(u.search(/Top/)!==-1){t.elements.tip.css({top:t.options.style.border.radius-w})}else{if(u.search(/Bottom/)!==-1){t.elements.tip.css({bottom:t.options.style.border.radius+w})}}}if(u.search(/left/)!==-1){t.elements.tip.css({left:-positionAdjust})}else{t.elements.tip.css({right:positionAdjust})}}}s="padding-"+u.match(/left|right|top|bottom/)[0];x=t.options.style.tip.size[(s.search(/left|right/)!==-1)?"width":"height"];t.elements.tooltip.css("padding",0);t.elements.tooltip.css(s,x);if(f.browser.msie&&parseInt(f.browser.version.charAt(0))==6){v=parseInt(t.elements.tip.css("margin-top"))||0;v+=parseInt(t.elements.content.css("margin-top"))||0;t.elements.tip.css({marginTop:v})}}function j(){var s=this;if(s.elements.title!==null){s.elements.title.remove()}s.elements.title=f('
    ').css(q(s.options.style.title,true)).css({zoom:(f.browser.msie)?1:0}).prependTo(s.elements.contentWrapper);if(s.options.content.title.text){s.updateTitle.call(s,s.options.content.title.text)}if(s.options.content.title.button!==false&&typeof s.options.content.title.button=="string"){s.elements.button=f('').css(q(s.options.style.button,true)).html(s.options.content.title.button).prependTo(s.elements.title).click(function(t){if(!s.status.disabled){s.hide(t)}})}}function l(){var t,v,u,s;t=this;v=t.options.show.when.target;u=t.options.hide.when.target;if(t.options.hide.fixed){u=u.add(t.elements.tooltip)}if(t.options.hide.when.event=="inactive"){s=["click","dblclick","mousedown","mouseup","mousemove","mouseout","mouseenter","mouseleave","mouseover"];function y(z){if(t.status.disabled===true){return}clearTimeout(t.timers.inactive);t.timers.inactive=setTimeout(function(){f(s).each(function(){u.unbind(this+".qtip-inactive");t.elements.content.unbind(this+".qtip-inactive")});t.hide(z)},t.options.hide.delay)}}else{if(t.options.hide.fixed===true){t.elements.tooltip.bind("mouseover.qtip",function(){if(t.status.disabled===true){return}clearTimeout(t.timers.hide)})}}function x(z){if(t.status.disabled===true){return}if(t.options.hide.when.event=="inactive"){f(s).each(function(){u.bind(this+".qtip-inactive",y);t.elements.content.bind(this+".qtip-inactive",y)});y()}clearTimeout(t.timers.show);clearTimeout(t.timers.hide);t.timers.show=setTimeout(function(){t.show(z)},t.options.show.delay)}function w(z){if(t.status.disabled===true){return}if(t.options.hide.fixed===true&&t.options.hide.when.event.search(/mouse(out|leave)/i)!==-1&&f(z.relatedTarget).parents("div.qtip[qtip]").length>0){z.stopPropagation();z.preventDefault();clearTimeout(t.timers.hide);return false}clearTimeout(t.timers.show);clearTimeout(t.timers.hide);t.elements.tooltip.stop(true,true);t.timers.hide=setTimeout(function(){t.hide(z)},t.options.hide.delay)}if((t.options.show.when.target.add(t.options.hide.when.target).length===1&&t.options.show.when.event==t.options.hide.when.event&&t.options.hide.when.event!=="inactive")||t.options.hide.when.event=="unfocus"){t.cache.toggle=0;v.bind(t.options.show.when.event+".qtip",function(z){if(t.cache.toggle==0){x(z)}else{w(z)}})}else{v.bind(t.options.show.when.event+".qtip",x);if(t.options.hide.when.event!=="inactive"){u.bind(t.options.hide.when.event+".qtip",w)}}if(t.options.position.type.search(/(fixed|absolute)/)!==-1){t.elements.tooltip.bind("mouseover.qtip",t.focus)}if(t.options.position.target==="mouse"&&t.options.position.type!=="static"){v.bind("mousemove.qtip",function(z){t.cache.mouse={x:z.pageX,y:z.pageY};if(t.status.disabled===false&&t.options.position.adjust.mouse===true&&t.options.position.type!=="static"&&t.elements.tooltip.css("display")!=="none"){t.updatePosition(z)}})}}function o(u,v,A){var z,s,x,y,t,w;z=this;if(A.corner=="center"){return v.position}s=f.extend({},u);y={x:false,y:false};t={left:(s.left=f.fn.qtip.cache.screen.width+f.fn.qtip.cache.screen.scroll.left),top:(s.top=f.fn.qtip.cache.screen.height+f.fn.qtip.cache.screen.scroll.top)};x={left:(t.left&&(A.corner.search(/right/i)!=-1||(A.corner.search(/right/i)==-1&&!t.right))),right:(t.right&&(A.corner.search(/left/i)!=-1||(A.corner.search(/left/i)==-1&&!t.left))),top:(t.top&&A.corner.search(/top/i)==-1),bottom:(t.bottom&&A.corner.search(/bottom/i)==-1)};if(x.left){if(z.options.position.target!=="mouse"){s.left=v.position.left+v.dimensions.width}else{s.left=z.cache.mouse.x}y.x="Left"}else{if(x.right){if(z.options.position.target!=="mouse"){s.left=v.position.left-A.dimensions.width}else{s.left=z.cache.mouse.x-A.dimensions.width}y.x="Right"}}if(x.top){if(z.options.position.target!=="mouse"){s.top=v.position.top+v.dimensions.height}else{s.top=z.cache.mouse.y}y.y="top"}else{if(x.bottom){if(z.options.position.target!=="mouse"){s.top=v.position.top-A.dimensions.height}else{s.top=z.cache.mouse.y-A.dimensions.height}y.y="bottom"}}if(s.left<0){s.left=u.left;y.x=false}if(s.top<0){s.top=u.top;y.y=false}if(z.options.style.tip.corner!==false){s.corner=new String(A.corner);if(y.x!==false){s.corner=s.corner.replace(/Left|Right|Middle/,y.x)}if(y.y!==false){s.corner=s.corner.replace(/top|bottom/,y.y)}if(s.corner!==z.elements.tip.attr("rel")){e.call(z,s.corner)}}return s}function q(u,t){var v,s;v=f.extend(true,{},u);for(s in v){if(t===true&&s.search(/(tip|classes)/i)!==-1){delete v[s]}else{if(!t&&s.search(/(width|border|tip|title|classes|user)/i)!==-1){delete v[s]}}}return v}function c(s){if(typeof s.tip!=="object"){s.tip={corner:s.tip}}if(typeof s.tip.size!=="object"){s.tip.size={width:s.tip.size,height:s.tip.size}}if(typeof s.border!=="object"){s.border={width:s.border}}if(typeof s.width!=="object"){s.width={value:s.width}}if(typeof s.width.max=="string"){s.width.max=parseInt(s.width.max.replace(/([0-9]+)/i,"$1"))}if(typeof s.width.min=="string"){s.width.min=parseInt(s.width.min.replace(/([0-9]+)/i,"$1"))}if(typeof s.tip.size.x=="number"){s.tip.size.width=s.tip.size.x;delete s.tip.size.x}if(typeof s.tip.size.y=="number"){s.tip.size.height=s.tip.size.y;delete s.tip.size.y}return s}function a(){var s,t,u,x,v,w;s=this;u=[true,{}];for(t=0;t0){v.tip.size.width+=1}if(v.tip.size.height%2>0){v.tip.size.height+=1}if(v.tip.corner===true){v.tip.corner=(s.options.position.corner.tooltip==="center")?false:s.options.position.corner.tooltip}return v}function b(v,u,t){var s={bottomRight:[[0,0],[u,t],[u,0]],bottomLeft:[[0,0],[u,0],[0,t]],topRight:[[0,t],[u,0],[u,t]],topLeft:[[0,0],[0,t],[u,t]],topMiddle:[[0,t],[u/2,0],[u,t]],bottomMiddle:[[0,0],[u,0],[u/2,t]],rightMiddle:[[0,0],[u,t/2],[0,t]],leftMiddle:[[u,0],[u,t],[0,t/2]]};s.leftTop=s.bottomRight;s.rightTop=s.bottomLeft;s.leftBottom=s.topRight;s.rightBottom=s.topLeft;return s[v]}function g(s){var t;if(f("").get(0).getContext){t={topLeft:[s,s],topRight:[0,s],bottomLeft:[s,0],bottomRight:[0,0]}}else{if(f.browser.msie){t={topLeft:[-90,90,0],topRight:[-90,90,-s],bottomLeft:[90,270,0],bottomRight:[90,270,-s]}}}return t}function k(){var s,t,u;s=this;u=s.getDimensions();t='':""), +a._keyEvent=!1;return K},_generateMonthYearHeader:function(a,b,c,d,e,f,g,h){var i=this._get(a,"changeMonth"),j=this._get(a,"changeYear"),k=this._get(a,"showMonthAfterYear"),l='
    ',m="";if(f||!i)m+=''+g[b]+"";else{var n=d&&d.getFullYear()==c,o=e&&e.getFullYear()==c;m+='"}k||(l+=m+(f||!i||!j?" ":""));if(!a.yearshtml){a.yearshtml="";if(f||!j)l+=''+c+"";else{var q=this._get(a,"yearRange").split(":"),r=(new Date).getFullYear(),s=function(a){var b=a.match(/c[+-].*/)?c+parseInt(a.substring(1),10):a.match(/[+-].*/)?r+parseInt(a,10):parseInt(a,10);return isNaN(b)?r:b},t=s(q[0]),u=Math.max(t,s(q[1]||""));t=d?Math.max(t,d.getFullYear()):t,u=e?Math.min(u,e.getFullYear()):u,a.yearshtml+='",l+=a.yearshtml,a.yearshtml=null}}l+=this._get(a,"yearSuffix"),k&&(l+=(f||!i||!j?" ":"")+m),l+="
    ";return l},_adjustInstDate:function(a,b,c){var d=a.drawYear+(c=="Y"?b:0),e=a.drawMonth+(c=="M"?b:0),f=Math.min(a.selectedDay,this._getDaysInMonth(d,e))+(c=="D"?b:0),g=this._restrictMinMax(a,this._daylightSavingAdjust(new Date(d,e,f)));a.selectedDay=g.getDate(),a.drawMonth=a.selectedMonth=g.getMonth(),a.drawYear=a.selectedYear=g.getFullYear(),(c=="M"||c=="Y")&&this._notifyChange(a)},_restrictMinMax:function(a,b){var c=this._getMinMaxDate(a,"min"),d=this._getMinMaxDate(a,"max"),e=c&&bd?d:e;return e},_notifyChange:function(a){var b=this._get(a,"onChangeMonthYear");b&&b.apply(a.input?a.input[0]:null,[a.selectedYear,a.selectedMonth+1,a])},_getNumberOfMonths:function(a){var b=this._get(a,"numberOfMonths");return b==null?[1,1]:typeof b=="number"?[1,b]:b},_getMinMaxDate:function(a,b){return this._determineDate(a,this._get(a,b+"Date"),null)},_getDaysInMonth:function(a,b){return 32-this._daylightSavingAdjust(new Date(a,b,32)).getDate()},_getFirstDayOfMonth:function(a,b){return(new Date(a,b,1)).getDay()},_canAdjustMonth:function(a,b,c,d){var e=this._getNumberOfMonths(a),f=this._daylightSavingAdjust(new Date(c,d+(b<0?b:e[0]*e[1]),1));b<0&&f.setDate(this._getDaysInMonth(f.getFullYear(),f.getMonth()));return this._isInRange(a,f)},_isInRange:function(a,b){var c=this._getMinMaxDate(a,"min"),d=this._getMinMaxDate(a,"max");return(!c||b.getTime()>=c.getTime())&&(!d||b.getTime()<=d.getTime())},_getFormatConfig:function(a){var b=this._get(a,"shortYearCutoff");b=typeof b!="string"?b:(new Date).getFullYear()%100+parseInt(b,10);return{shortYearCutoff:b,dayNamesShort:this._get(a,"dayNamesShort"),dayNames:this._get(a,"dayNames"),monthNamesShort:this._get(a,"monthNamesShort"),monthNames:this._get(a,"monthNames")}},_formatDate:function(a,b,c,d){b||(a.currentDay=a.selectedDay,a.currentMonth=a.selectedMonth,a.currentYear=a.selectedYear);var e=b?typeof b=="object"?b:this._daylightSavingAdjust(new Date(d,c,b)):this._daylightSavingAdjust(new Date(a.currentYear,a.currentMonth,a.currentDay));return this.formatDate(this._get(a,"dateFormat"),e,this._getFormatConfig(a))}}),$.fn.datepicker=function(a){if(!this.length)return this;$.datepicker.initialized||($(document).mousedown($.datepicker._checkExternalClick).find("body").append($.datepicker.dpDiv),$.datepicker.initialized=!0);var b=Array.prototype.slice.call(arguments,1);if(typeof a=="string"&&(a=="isDisabled"||a=="getDate"||a=="widget"))return $.datepicker["_"+a+"Datepicker"].apply($.datepicker,[this[0]].concat(b));if(a=="option"&&arguments.length==2&&typeof arguments[1]=="string")return $.datepicker["_"+a+"Datepicker"].apply($.datepicker,[this[0]].concat(b));return this.each(function(){typeof a=="string"?$.datepicker["_"+a+"Datepicker"].apply($.datepicker,[this].concat(b)):$.datepicker._attachDatepicker(this,a)})},$.datepicker=new Datepicker,$.datepicker.initialized=!1,$.datepicker.uuid=(new Date).getTime(),$.datepicker.version="1.8.18",window["DP_jQuery_"+dpuuid]=$})(jQuery); + +/* + * lib/js/lib/jquery/jquery.ui.autocomplete.js + */ +/* jQuery UI Autocomplete 1.8.18 +* +* Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) +* Dual licensed under the MIT or GPL Version 2 licenses. +* http://jquery.org/license +* +* http://docs.jquery.com/UI/Autocomplete +* +* Depends: +* jquery.ui.core.js +* jquery.ui.widget.js +* jquery.ui.position.js +*/(function(a,b){var c=0;a.widget("ui.autocomplete",{options:{appendTo:"body",autoFocus:!1,delay:300,minLength:1,position:{my:"left top",at:"left bottom",collision:"none"},source:null},pending:0,_create:function(){var b=this,c=this.element[0].ownerDocument,d;this.element.addClass("ui-autocomplete-input").attr("autocomplete","off").attr({role:"textbox","aria-autocomplete":"list","aria-haspopup":"true"}).bind("keydown.autocomplete",function(c){if(!b.options.disabled&&!b.element.propAttr("readOnly")){d=!1;var e=a.ui.keyCode;switch(c.keyCode){case e.PAGE_UP:b._move("previousPage",c);break;case e.PAGE_DOWN:b._move("nextPage",c);break;case e.UP:b._move("previous",c),c.preventDefault();break;case e.DOWN:b._move("next",c),c.preventDefault();break;case e.ENTER:case e.NUMPAD_ENTER:b.menu.active&&(d=!0,c.preventDefault());case e.TAB:if(!b.menu.active)return;b.menu.select(c);break;case e.ESCAPE:b.element.val(b.term),b.close(c);break;default:clearTimeout(b.searching),b.searching=setTimeout(function(){b.term!=b.element.val()&&(b.selectedItem=null,b.search(null,c))},b.options.delay)}}}).bind("keypress.autocomplete",function(a){d&&(d=!1,a.preventDefault())}).bind("focus.autocomplete",function(){b.options.disabled||(b.selectedItem=null,b.previous=b.element.val())}).bind("blur.autocomplete",function(a){b.options.disabled||(clearTimeout(b.searching),b.closing=setTimeout(function(){b.close(a),b._change(a)},150))}),this._initSource(),this.response=function(){return b._response.apply(b,arguments)},this.menu=a("
      ").addClass("ui-autocomplete").appendTo(a(this.options.appendTo||"body",c)[0]).mousedown(function(c){var d=b.menu.element[0];a(c.target).closest(".ui-menu-item").length||setTimeout(function(){a(document).one("mousedown",function(c){c.target!==b.element[0]&&c.target!==d&&!a.ui.contains(d,c.target)&&b.close()})},1),setTimeout(function(){clearTimeout(b.closing)},13)}).menu({focus:function(a,c){var d=c.item.data("item.autocomplete");!1!==b._trigger("focus",a,{item:d})&&/^key/.test(a.originalEvent.type)&&b.element.val(d.value)},selected:function(a,d){var e=d.item.data("item.autocomplete"),f=b.previous;b.element[0]!==c.activeElement&&(b.element.focus(),b.previous=f,setTimeout(function(){b.previous=f,b.selectedItem=e},1)),!1!==b._trigger("select",a,{item:e})&&b.element.val(e.value),b.term=b.element.val(),b.close(a),b.selectedItem=e},blur:function(a,c){b.menu.element.is(":visible")&&b.element.val()!==b.term&&b.element.val(b.term)}}).zIndex(this.element.zIndex()+1).css({top:0,left:0}).hide().data("menu"),a.fn.bgiframe&&this.menu.element.bgiframe(),b.beforeunloadHandler=function(){b.element.removeAttr("autocomplete")},a(window).bind("beforeunload",b.beforeunloadHandler)},destroy:function(){this.element.removeClass("ui-autocomplete-input").removeAttr("autocomplete").removeAttr("role").removeAttr("aria-autocomplete").removeAttr("aria-haspopup"),this.menu.element.remove(),a(window).unbind("beforeunload",this.beforeunloadHandler),a.Widget.prototype.destroy.call(this)},_setOption:function(b,c){a.Widget.prototype._setOption.apply(this,arguments),b==="source"&&this._initSource(),b==="appendTo"&&this.menu.element.appendTo(a(c||"body",this.element[0].ownerDocument)[0]),b==="disabled"&&c&&this.xhr&&this.xhr.abort()},_initSource:function(){var b=this,d,e;a.isArray(this.options.source)?(d=this.options.source,this.source=function(b,c){c(a.ui.autocomplete.filter(d,b.term))}):typeof this.options.source=="string"?(e=this.options.source,this.source=function(d,f){b.xhr&&b.xhr.abort(),b.xhr=a.ajax({url:e,data:d,dataType:"json",context:{autocompleteRequest:++c},success:function(a,b){this.autocompleteRequest===c&&f(a)},error:function(){this.autocompleteRequest===c&&f([])}})}):this.source=this.options.source},search:function(a,b){a=a!=null?a:this.element.val(),this.term=this.element.val();if(a.length").data("item.autocomplete",c).append(a("").text(c.label)).appendTo(b)},_move:function(a,b){if(!this.menu.element.is(":visible"))this.search(null,b);else{if(this.menu.first()&&/^previous/.test(a)||this.menu.last()&&/^next/.test(a)){this.element.val(this.term),this.menu.deactivate();return}this.menu[a](b)}},widget:function(){return this.menu.element}}),a.extend(a.ui.autocomplete,{escapeRegex:function(a){return a.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&")},filter:function(b,c){var d=new RegExp(a.ui.autocomplete.escapeRegex(c),"i");return a.grep(b,function(a){return d.test(a.label||a.value||a)})}})})(jQuery),function(a){a.widget("ui.menu",{_create:function(){var b=this;this.element.addClass("ui-menu ui-widget ui-widget-content ui-corner-all").attr({role:"listbox","aria-activedescendant":"ui-active-menuitem"}).click(function(c){!a(c.target).closest(".ui-menu-item a").length||(c.preventDefault(),b.select(c))}),this.refresh()},refresh:function(){var b=this,c=this.element.children("li:not(.ui-menu-item):has(a)").addClass("ui-menu-item").attr("role","menuitem");c.children("a").addClass("ui-corner-all").attr("tabindex",-1).mouseenter(function(c){b.activate(c,a(this).parent())}).mouseleave(function(){b.deactivate()})},activate:function(a,b){this.deactivate();if(this.hasScroll()){var c=b.offset().top-this.element.offset().top,d=this.element.scrollTop(),e=this.element.height();c<0?this.element.scrollTop(d+c):c>=e&&this.element.scrollTop(d+c-e+b.height())}this.active=b.eq(0).children("a").addClass("ui-state-hover").attr("id","ui-active-menuitem").end(),this._trigger("focus",a,{item:b})},deactivate:function(){!this.active||(this.active.children("a").removeClass("ui-state-hover").removeAttr("id"),this._trigger("blur"),this.active=null)},next:function(a){this.move("next",".ui-menu-item:first",a)},previous:function(a){this.move("prev",".ui-menu-item:last",a)},first:function(){return this.active&&!this.active.prevAll(".ui-menu-item").length},last:function(){return this.active&&!this.active.nextAll(".ui-menu-item").length},move:function(a,b,c){if(!this.active)this.activate(c,this.element.children(b));else{var d=this.active[a+"All"](".ui-menu-item").eq(0);d.length?this.activate(c,d):this.activate(c,this.element.children(b))}},nextPage:function(b){if(this.hasScroll()){if(!this.active||this.last()){this.activate(b,this.element.children(".ui-menu-item:first"));return}var c=this.active.offset().top,d=this.element.height(),e=this.element.children(".ui-menu-item").filter(function(){var b=a(this).offset().top-c-d+a(this).height();return b<10&&b>-10});e.length||(e=this.element.children(".ui-menu-item:last")),this.activate(b,e)}else this.activate(b,this.element.children(".ui-menu-item").filter(!this.active||this.last()?":first":":last"))},previousPage:function(b){if(this.hasScroll()){if(!this.active||this.first()){this.activate(b,this.element.children(".ui-menu-item:last"));return}var c=this.active.offset().top,d=this.element.height();result=this.element.children(".ui-menu-item").filter(function(){var b=a(this).offset().top-c+d-a(this).height();return b<10&&b>-10}),result.length||(result=this.element.children(".ui-menu-item:first")),this.activate(b,result)}else this.activate(b,this.element.children(".ui-menu-item").filter(!this.active||this.first()?":last":":first"))},hasScroll:function(){return this.element.height()0){if(l=tinyMCE.get(m[0].id)){return l.getContent()}}}}function h(m){var l=null;(m)&&(m.id)&&(c.tinymce)&&(l=tinyMCE.get(m.id));return l}function g(l){return !!((l)&&(l.length)&&(c.tinymce)&&(l.is(":tinymce")))}var j={};b.each(["text","html","val"],function(n,l){var o=j[l]=b.fn[l],m=(l==="text");b.fn[l]=function(s){var p=this;if(!g(p)){return o.apply(p,arguments)}if(s!==e){k.call(p.filter(":tinymce"),s);o.apply(p.not(":tinymce"),arguments);return p}else{var r="";var q=arguments;(m?p:p.eq(0)).each(function(u,v){var t=h(v);r+=t?(m?t.getContent().replace(/<(?:"[^"]*"|'[^']*'|[^'">])*>/g,""):t.getContent()):o.apply(b(v),q)});return r}}});b.each(["append","prepend"],function(n,m){var o=j[m]=b.fn[m],l=(m==="prepend");b.fn[m]=function(q){var p=this;if(!g(p)){return o.apply(p,arguments)}if(q!==e){p.filter(":tinymce").each(function(s,t){var r=h(t);r&&r.setContent(l?q+r.getContent():r.getContent()+q)});o.apply(p.not(":tinymce"),arguments);return p}}});b.each(["remove","replaceWith","replaceAll","empty"],function(m,l){var n=j[l]=b.fn[l];b.fn[l]=function(){i.call(this,l);return n.apply(this,arguments)}});j.attr=b.fn.attr;b.fn.attr=function(n,q,o){var m=this;if((!n)||(n!=="value")||(!g(m))){return j.attr.call(m,n,q,o)}if(q!==e){k.call(m.filter(":tinymce"),q);j.attr.call(m.not(":tinymce"),n,q,o);return m}else{var p=m[0],l=h(p);return l?l.getContent():j.attr.call(b(p),n,q,o)}}}})(jQuery); + /* * lib/js/lib/bootstrap.min.js - */!function(a){a(function(){"use strict",a.support.transition=function(){var b=document.body||document.documentElement,c=b.style,d=c.transition!==undefined||c.WebkitTransition!==undefined||c.MozTransition!==undefined||c.MsTransition!==undefined||c.OTransition!==undefined;return d&&{end:function(){var b="TransitionEnd";return a.browser.webkit?b="webkitTransitionEnd":a.browser.mozilla?b="transitionend":a.browser.opera&&(b="oTransitionEnd"),b}()}}()})}(window.jQuery),!function(a){"use strict";var b='[data-dismiss="alert"]',c=function(c){a(c).on("click",b,this.close)};c.prototype={constructor:c,close:function(b){function f(){e.remove(),e.trigger("closed")}var c=a(this),d=c.attr("data-target"),e;d||(d=c.attr("href"),d=d&&d.replace(/.*(?=#[^\s]*$)/,"")),e=a(d),e.trigger("close"),b&&b.preventDefault(),e.length||(e=c.hasClass("alert")?c:c.parent()),e.removeClass("in"),a.support.transition&&e.hasClass("fade")?e.on(a.support.transition.end,f):f()}},a.fn.alert=function(b){return this.each(function(){var d=a(this),e=d.data("alert");e||d.data("alert",e=new c(this)),typeof b=="string"&&e[b].call(d)})},a.fn.alert.Constructor=c,a(function(){a("body").on("click.alert.data-api",b,c.prototype.close)})}(window.jQuery),!function(a){"use strict";var b=function(b,c){this.$element=a(b),this.options=a.extend({},a.fn.button.defaults,c)};b.prototype={constructor:b,setState:function(a){var b="disabled",c=this.$element,d=c.data(),e=c.is("input")?"val":"html";a+="Text",d.resetText||c.data("resetText",c[e]()),c[e](d[a]||this.options[a]),setTimeout(function(){a=="loadingText"?c.addClass(b).attr(b,b):c.removeClass(b).removeAttr(b)},0)},toggle:function(){var a=this.$element.parent('[data-toggle="buttons-radio"]');a&&a.find(".active").removeClass("active"),this.$element.toggleClass("active")}},a.fn.button=function(c){return this.each(function(){var d=a(this),e=d.data("button"),f=typeof c=="object"&&c;e||d.data("button",e=new b(this,f)),c=="toggle"?e.toggle():c&&e.setState(c)})},a.fn.button.defaults={loadingText:"loading..."},a.fn.button.Constructor=b,a(function(){a("body").on("click.button.data-api","[data-toggle^=button]",function(b){a(b.target).button("toggle")})})}(window.jQuery),!function(a){"use strict";var b=function(b,c){this.$element=a(b),this.options=a.extend({},a.fn.carousel.defaults,c),this.options.slide&&this.slide(this.options.slide)};b.prototype={cycle:function(){return this.interval=setInterval(a.proxy(this.next,this),this.options.interval),this},to:function(b){var c=this.$element.find(".active"),d=c.parent().children(),e=d.index(c),f=this;if(b>d.length-1||b<0)return;return this.sliding?this.$element.one("slid",function(){f.to(b)}):e==b?this.pause().cycle():this.slide(b>e?"next":"prev",a(d[b]))},pause:function(){return clearInterval(this.interval),this},next:function(){if(this.sliding)return;return this.slide("next")},prev:function(){if(this.sliding)return;return this.slide("prev")},slide:function(b,c){var d=this.$element.find(".active"),e=c||d[b](),f=this.interval,g=b=="next"?"left":"right",h=b=="next"?"first":"last",i=this;return this.sliding=!0,f&&this.pause(),e=e.length?e:this.$element.find(".item")[h](),!a.support.transition&&this.$element.hasClass("slide")?(this.$element.trigger("slide"),d.removeClass("active"),e.addClass("active"),this.sliding=!1,this.$element.trigger("slid")):(e.addClass(b),e[0].offsetWidth,d.addClass(g),e.addClass(g),this.$element.trigger("slide"),this.$element.one(a.support.transition.end,function(){e.removeClass([b,g].join(" ")).addClass("active"),d.removeClass(["active",g].join(" ")),i.sliding=!1,setTimeout(function(){i.$element.trigger("slid")},0)})),f&&this.cycle(),this}},a.fn.carousel=function(c){return this.each(function(){var d=a(this),e=d.data("carousel"),f=typeof c=="object"&&c;e||d.data("carousel",e=new b(this,f)),typeof c=="number"?e.to(c):typeof c=="string"||(c=f.slide)?e[c]():e.cycle()})},a.fn.carousel.defaults={interval:5e3},a.fn.carousel.Constructor=b,a(function(){a("body").on("click.carousel.data-api","[data-slide]",function(b){var c=a(this),d,e=a(c.attr("data-target")||(d=c.attr("href"))&&d.replace(/.*(?=#[^\s]+$)/,"")),f=!e.data("modal")&&a.extend({},e.data(),c.data());e.carousel(f),b.preventDefault()})})}(window.jQuery),!function(a){"use strict";var b=function(b,c){this.$element=a(b),this.options=a.extend({},a.fn.collapse.defaults,c),this.options.parent&&(this.$parent=a(this.options.parent)),this.options.toggle&&this.toggle()};b.prototype={constructor:b,dimension:function(){var a=this.$element.hasClass("width");return a?"width":"height"},show:function(){var b=this.dimension(),c=a.camelCase(["scroll",b].join("-")),d=this.$parent&&this.$parent.find(".in"),e;d&&d.length&&(e=d.data("collapse"),d.collapse("hide"),e||d.data("collapse",null)),this.$element[b](0),this.transition("addClass","show","shown"),this.$element[b](this.$element[0][c])},hide:function(){var a=this.dimension();this.reset(this.$element[a]()),this.transition("removeClass","hide","hidden"),this.$element[a](0)},reset:function(a){var b=this.dimension();this.$element.removeClass("collapse")[b](a||"auto")[0].offsetWidth,this.$element.addClass("collapse")},transition:function(b,c,d){var e=this,f=function(){c=="show"&&e.reset(),e.$element.trigger(d)};this.$element.trigger(c)[b]("in"),a.support.transition&&this.$element.hasClass("collapse")?this.$element.one(a.support.transition.end,f):f()},toggle:function(){this[this.$element.hasClass("in")?"hide":"show"]()}},a.fn.collapse=function(c){return this.each(function(){var d=a(this),e=d.data("collapse"),f=typeof c=="object"&&c;e||d.data("collapse",e=new b(this,f)),typeof c=="string"&&e[c]()})},a.fn.collapse.defaults={toggle:!0},a.fn.collapse.Constructor=b,a(function(){a("body").on("click.collapse.data-api","[data-toggle=collapse]",function(b){var c=a(this),d,e=c.attr("data-target")||b.preventDefault()||(d=c.attr("href"))&&d.replace(/.*(?=#[^\s]+$)/,""),f=a(e).data("collapse")?"toggle":c.data();a(e).collapse(f)})})}(window.jQuery),!function(a){function d(){a(b).parent().removeClass("open")}"use strict";var b='[data-toggle="dropdown"]',c=function(b){var c=a(b).on("click.dropdown.data-api",this.toggle);a("html").on("click.dropdown.data-api",function(){c.parent().removeClass("open")})};c.prototype={constructor:c,toggle:function(b){var c=a(this),e=c.attr("data-target"),f,g;return e||(e=c.attr("href"),e=e&&e.replace(/.*(?=#[^\s]*$)/,"")),f=a(e),f.length||(f=c.parent()),g=f.hasClass("open"),d(),!g&&f.toggleClass("open"),!1}},a.fn.dropdown=function(b){return this.each(function(){var d=a(this),e=d.data("dropdown");e||d.data("dropdown",e=new c(this)),typeof b=="string"&&e[b].call(d)})},a.fn.dropdown.Constructor=c,a(function(){a("html").on("click.dropdown.data-api",d),a("body").on("click.dropdown.data-api",b,c.prototype.toggle)})}(window.jQuery),!function(a){function c(){var b=this,c=setTimeout(function(){b.$element.off(a.support.transition.end),d.call(b)},500);this.$element.one(a.support.transition.end,function(){clearTimeout(c),d.call(b)})}function d(a){this.$element.hide().trigger("hidden"),e.call(this)}function e(b){var c=this,d=this.$element.hasClass("fade")?"fade":"";if(this.isShown&&this.options.backdrop){var e=a.support.transition&&d;this.$backdrop=a('',d[i]))} -$(this.body).find('a.close').click(function(){$c('webnotes.widgets.form.assign_to.remove',{doctype:me.doctype,name:me.name,assign_to:$(this).attr('data-owner')},function(r,rt){me.render(r.message);});return false;});},add:function(){var me=this;if(!me.dialog){me.dialog=new wn.widgets.Dialog({title:'Add to To Do',width:350,fields:[{fieldtype:'Link',fieldname:'assign_to',options:'Profile',label:'Assign To',description:'Add to To Do List of',reqd:true},{fieldtype:'Data',fieldname:'description',label:'Comment','default':'Assigned by '+user},{fieldtype:'Date',fieldname:'date',label:'Complete By'},{fieldtype:'Select',fieldname:'priority',label:'Priority',options:'Low\nMedium\nHigh','default':'Medium'},{fieldtype:'Check',fieldname:'notify',label:'Notify By Email'},{fieldtype:'Button',label:'Add',fieldname:'add_btn'}]});me.dialog.fields_dict.add_btn.input.onclick=function(){var assign_to=me.dialog.fields_dict.assign_to.get_value();if(assign_to){$c('webnotes.widgets.form.assign_to.add',{doctype:me.doctype,name:me.name,assign_to:assign_to,description:me.dialog.fields_dict.description.get_value(),priority:me.dialog.fields_dict.priority.get_value(),date:me.dialog.fields_dict.date.get_value(),notify:me.dialog.fields_dict.notify.get_value()},function(r,rt){me.render(r.message);});}}} +$(this.body).find('a.close').click(function(){$c('webnotes.widgets.form.assign_to.remove',{doctype:me.doctype,name:me.name,assign_to:$(this).attr('data-owner')},function(r,rt){me.render(r.message);});return false;});},add:function(){var me=this;if(!me.dialog){me.dialog=new wn.widgets.Dialog({title:'Add to To Do',width:350,fields:[{fieldtype:'Link',fieldname:'assign_to',options:'Profile',label:'Assign To',description:'Add to To Do List of',reqd:true},{fieldtype:'Data',fieldname:'description',label:'Comment'},{fieldtype:'Date',fieldname:'date',label:'Complete By'},{fieldtype:'Select',fieldname:'priority',label:'Priority',options:'Low\nMedium\nHigh','default':'Medium'},{fieldtype:'Check',fieldname:'notify',label:'Notify By Email'},{fieldtype:'Button',label:'Add',fieldname:'add_btn'}]});me.dialog.fields_dict.add_btn.input.onclick=function(){var assign_to=me.dialog.fields_dict.assign_to.get_value();if(assign_to){$c('webnotes.widgets.form.assign_to.add',{doctype:me.doctype,name:me.name,assign_to:assign_to,description:me.dialog.fields_dict.description.get_value(),priority:me.dialog.fields_dict.priority.get_value(),date:me.dialog.fields_dict.date.get_value(),notify:me.dialog.fields_dict.notify.get_value()},function(r,rt){me.render(r.message);});}}} me.dialog.clear();me.dialog.show();}}); /* * lib/js/legacy/app.js */ -var popup_cont;var session={};var start_sid=null;if(!wn)var wn={};function startup(){start_sid=get_cookie('sid');popup_cont=$a(document.getElementsByTagName('body')[0],'div');var setup_globals=function(r){wn.boot=r;profile=r.profile;user=r.profile.name;user_fullname=wn.user_info(user).fullname;user_defaults=profile.defaults;user_roles=profile.roles;user_email=profile.email;home_page=r.home_page;_p.letter_heads=r.letter_heads;sys_defaults=r.sysdefaults;session.rt=profile.can_read;if(r.ipinfo)session.ipinfo=r.ipinfo;session.dt_labels=r.dt_labels;session.rev_dt_labels={} +var popup_cont;var session={};if(!wn)var wn={};function startup(){popup_cont=$a(document.getElementsByTagName('body')[0],'div');var setup_globals=function(r){wn.boot=r;profile=r.profile;user=r.profile.name;user_fullname=wn.user_info(user).fullname;user_defaults=profile.defaults;user_roles=profile.roles;user_email=profile.email;home_page=r.home_page;_p.letter_heads=r.letter_heads;sys_defaults=r.sysdefaults;session.rt=profile.can_read;if(r.ipinfo)session.ipinfo=r.ipinfo;session.dt_labels=r.dt_labels;session.rev_dt_labels={} if(r.dt_labels){for(key in r.dt_labels)session.rev_dt_labels[r.dt_labels[key]]=key;} wn.control_panel=r.control_panel;} -var setup_history=function(r){rename_observers.push(nav_obj);} -var callback=function(r,rt){if(r.exc)console.log(r.exc);setup_globals(r);setup_history();var a=new Body();page_body.run_startup_code();for(var i=0;i\ - ERPNext | Attributions and License
      ');if(in_list(user_roles,'System Manager')&&(wn.boot.setup_complete=='No')){wn.require("erpnext/startup/js/complete_setup.js");erpnext.complete_setup();}} +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']) +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)){return;} -if(!reset){$c_page('home','event_updates','get_global_status_messages',null,function(r,rt){if(!r.exc){page_body.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);}});}else{page_body.wntoolbar.set_new_comments(0);$('#unread_messages').toggle(false);}} +var update_messages=function(reset){if(inList(['Guest'],user)||!wn.session_alive){return;} +if(!reset){$c_page('home','event_updates','get_global_status_messages',null,function(r,rt){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);}});}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}))} @@ -2240,7 +2221,7 @@ $(document).bind('startup',function(){erpnext.startup.start();}); */ 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.widgets.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('\ %(criteria_name)s',data))},args:{module:module},no_refresh:true,callback:function(r){erpnext.module_page.hide_links(wrapper)}});wrapper.list.run();} /* @@ -2259,8 +2240,8 @@ $('#toolbar-help').append('
    • \ Live Chat (Office Hours)
    • ') if(pscript.is_erpnext_saas&&is_system_manager){$('#toolbar-user').append('
    • Billing
    • ')} -$.extend(page_body.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);}}});page_body.wntoolbar.set_new_comments();} +$.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(){$('
      ');if(in_list(user_roles,'System Manager')&&(wn.boot.setup_complete=='No')){wn.require("erpnext/startup/js/complete_setup.js");erpnext.complete_setup();}} +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']) +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)){return;} -if(!reset){$c_page('home','event_updates','get_global_status_messages',null,function(r,rt){if(!r.exc){page_body.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);}});}else{page_body.wntoolbar.set_new_comments(0);$('#unread_messages').toggle(false);}} +var update_messages=function(reset){if(inList(['Guest'],user)||!wn.session_alive){return;} +if(!reset){$c_page('home','event_updates','get_global_status_messages',null,function(r,rt){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);}});}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}))} @@ -1086,7 +1256,7 @@ $(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('