From 0e140962b8e2272957ea9a86fb1269514d20e159 Mon Sep 17 00:00:00 2001 From: Anand Doshi Date: Thu, 1 Mar 2012 12:16:02 +0530 Subject: [PATCH 1/2] Fixes in support ticket overflow, desktop gradients and shadows, setup control fiscal defaults --- css/all-app.css | 2 +- css/all-web.css | 2 +- erpnext/home/page/desktop/desktop.css | 13 +++++++++++++ erpnext/home/page/desktop/desktop.js | 12 ++++++------ .../setup/doctype/setup_control/setup_control.py | 13 ++++++++++--- .../doctype/support_ticket/support_ticket.js | 3 ++- version.num | 2 +- 7 files changed, 34 insertions(+), 13 deletions(-) diff --git a/css/all-app.css b/css/all-app.css index b2fd2e5732..b49caedee9 100644 --- a/css/all-app.css +++ b/css/all-app.css @@ -1043,7 +1043,7 @@ div.dialog_head { } div.dialog_body { - padding: 8px 4px 16px 4px; + padding: 8px 8px 16px; border-radius: 5px; -moz-border-radius: 5px; -webkit-border-radius: 5px; diff --git a/css/all-web.css b/css/all-web.css index 9359de898e..bebfe9a334 100644 --- a/css/all-web.css +++ b/css/all-web.css @@ -362,7 +362,7 @@ div.dialog_head { } div.dialog_body { - padding: 8px 4px 16px 4px; + padding: 8px 8px 16px; border-radius: 5px; -moz-border-radius: 5px; -webkit-border-radius: 5px; diff --git a/erpnext/home/page/desktop/desktop.css b/erpnext/home/page/desktop/desktop.css index 0aede60c67..836469c14e 100644 --- a/erpnext/home/page/desktop/desktop.css +++ b/erpnext/home/page/desktop/desktop.css @@ -41,10 +41,15 @@ .case-border { border-radius: 10px; + -moz-border-radius: 10px; + -webkit-border-radius: 10px; 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; margin: auto; } @@ -66,6 +71,9 @@ /* Hover and click effects */ .case-border:hover, .circle:hover { box-shadow: 0 0 2px 0px black, 0 0 10px 1px white; + -moz-box-shadow: 0 0 2px 0px black, 0 0 10px 1px white; + -webkit-box-shadow: 0 0 2px 0px black, 0 0 10px 1px white; + -o-box-shadow: 0 0 2px 0px black, 0 0 10px 1px white; } .case-border:active, .case-border:focus, .circle:active, .circle:focus { @@ -78,6 +86,8 @@ .circle { border-radius: 100%; + -moz-border-radius: 100%; + -webkit-border-radius: 100%; height: 15px; min-width: 15px; background: #B00D07; @@ -88,6 +98,9 @@ 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; } .circle-text { diff --git a/erpnext/home/page/desktop/desktop.js b/erpnext/home/page/desktop/desktop.js index 47b11e6f9e..dab1e761b0 100644 --- a/erpnext/home/page/desktop/desktop.js +++ b/erpnext/home/page/desktop/desktop.js @@ -3,12 +3,12 @@ wn.provide('erpnext.desktop'); erpnext.desktop.gradient = "" diff --git a/erpnext/setup/doctype/setup_control/setup_control.py b/erpnext/setup/doctype/setup_control/setup_control.py index 6b8b37c236..50b9bb03cb 100644 --- a/erpnext/setup/doctype/setup_control/setup_control.py +++ b/erpnext/setup/doctype/setup_control/setup_control.py @@ -69,7 +69,7 @@ class DocType: import webnotes, json args = json.loads(args) - curr_fiscal_year, fy_start_date = self.get_fy_details(args.get('fy_start')) + curr_fiscal_year, fy_start_date, fy_abbr = self.get_fy_details(args.get('fy_start')) args['name'] = webnotes.session.get('user') @@ -82,7 +82,12 @@ class DocType: # Fiscal Year - master_dict = {'Fiscal Year':{'year':curr_fiscal_year, 'year_start_date':fy_start_date}} + master_dict = {'Fiscal Year':{ + 'year': curr_fiscal_year, + 'year_start_date': fy_start_date, + 'abbreviation': fy_abbr, + 'company': args.get('company_name'), + 'is_fiscal_year_closed': 'No'}} self.create_records(master_dict) # Company @@ -163,9 +168,11 @@ class DocType: #eddt = sql("select DATE_FORMAT(DATE_SUB(DATE_ADD('%s', INTERVAL 1 YEAR), INTERVAL 1 DAY),'%%d-%%m-%%Y')" % (stdt.split('-')[2]+ '-' + stdt.split('-')[1] + '-' + stdt.split('-')[0])) if(fy_start == '1st Jan'): fy = cstr(getdate(nowdate()).year) + abbr = cstr(fy)[-2:] else: fy = cstr(curr_year) + '-' + cstr(curr_year+1) - return fy,stdt + abbr = cstr(curr_year)[-2:] + '-' + cstr(curr_year+1)[-2:] + return fy, stdt, abbr # Create Company and Fiscal Year diff --git a/erpnext/support/doctype/support_ticket/support_ticket.js b/erpnext/support/doctype/support_ticket/support_ticket.js index 02c9a5d082..86264a6433 100644 --- a/erpnext/support/doctype/support_ticket/support_ticket.js +++ b/erpnext/support/doctype/support_ticket/support_ticket.js @@ -178,7 +178,8 @@ EmailMessage = function(parent, args, list, idx) { // email text this.message = $a(w, 'div', '', // style - {lineHeight:'1.7em', display:'none', padding: '7px'}, + {lineHeight:'1.7em', display:'none', padding: '7px', width: '575px', + wordWrap: 'break-word', textWrap: 'normal', overflowX: 'auto'}, // newlines for text email (this.content_type=='text/plain' ? this.mail diff --git a/version.num b/version.num index 19e03cffa3..699ec1b9ee 100644 --- a/version.num +++ b/version.num @@ -1 +1 @@ -776 \ No newline at end of file +781 \ No newline at end of file From eaf144a545699b13affabdaef5e0fa9ad3d29fce Mon Sep 17 00:00:00 2001 From: Nabin Hait Date: Thu, 1 Mar 2012 13:05:04 +0530 Subject: [PATCH 2/2] form cleanup in pur cycle --- .../payable_voucher/payable_voucher.js | 13 +++-- .../payable_voucher/payable_voucher.py | 3 - .../purchase_common/purchase_common.js | 55 ++++++++++--------- .../purchase_common/purchase_common.py | 5 -- .../doctype/purchase_order/purchase_order.js | 11 ++-- .../doctype/purchase_order/purchase_order.py | 4 -- .../purchase_receipt/purchase_receipt.js | 14 +++-- .../purchase_receipt/purchase_receipt.py | 4 -- 8 files changed, 53 insertions(+), 56 deletions(-) diff --git a/erpnext/accounts/doctype/payable_voucher/payable_voucher.js b/erpnext/accounts/doctype/payable_voucher/payable_voucher.js index a465ec07db..99bd24c6b8 100644 --- a/erpnext/accounts/doctype/payable_voucher/payable_voucher.js +++ b/erpnext/accounts/doctype/payable_voucher/payable_voucher.js @@ -45,11 +45,14 @@ cur_frm.cscript.onload = function(doc,dt,dn) { //------------------------ cur_frm.cscript.onload_post_render = function(doc, dt, dn) { var callback = function(doc, dt, dn) { - if(doc.__islocal && doc.supplier) cur_frm.cscript.supplier(doc,dt,dn); + var callback1 = function(doc, dt, dn) { + if(doc.__islocal && doc.supplier) cur_frm.cscript.supplier(doc,dt,dn); + } + + // defined in purchase_common.js + cur_frm.cscript.update_item_details(doc, dt, dn, callback1); } - - // defined in purchase_common.js - cur_frm.cscript.update_item_details(doc, cdt, cdn, callback); + cur_frm.cscript.dynamic_label(doc, dt, dn, callback); } // Refresh @@ -58,7 +61,7 @@ cur_frm.cscript.refresh = function(doc, dt, dn) { cur_frm.clear_custom_buttons(); - cur_frm.cscript.dynamic_label(doc, cdt, cdn); + if (!cur_frm.cscript.is_onload) cur_frm.cscript.dynamic_label(doc, dt, dn); // Show / Hide button diff --git a/erpnext/accounts/doctype/payable_voucher/payable_voucher.py b/erpnext/accounts/doctype/payable_voucher/payable_voucher.py index fe733f7782..1a09a451c7 100644 --- a/erpnext/accounts/doctype/payable_voucher/payable_voucher.py +++ b/erpnext/accounts/doctype/payable_voucher/payable_voucher.py @@ -168,9 +168,6 @@ class DocType(TransactionBase): return ret - def get_comp_base_currency(self): - return get_obj('Purchase Common').get_comp_base_currency(self.doc.company) - # *************************** Server Utility Functions ***************************** # Get Company abbr diff --git a/erpnext/buying/doctype/purchase_common/purchase_common.js b/erpnext/buying/doctype/purchase_common/purchase_common.js index 52f8e539fc..317df513c2 100644 --- a/erpnext/buying/doctype/purchase_common/purchase_common.js +++ b/erpnext/buying/doctype/purchase_common/purchase_common.js @@ -92,39 +92,36 @@ var set_dynamic_label_par = function(doc, cdt, cdn, base_curr) { var set_dynamic_label_child = function(doc, cdt, cdn, base_curr) { - // item table flds - item_cols_base = {'purchase_ref_rate': 'Ref Rate', 'amount': 'Amount'}; - item_cols_import = {'import_rate': 'Rate', 'import_ref_rate': 'Ref Rate', 'import_amount': 'Amount'}; + // item table flds + item_cols_base = {'purchase_ref_rate': 'Ref Rate', 'amount': 'Amount'}; + item_cols_import = {'import_rate': 'Rate', 'import_ref_rate': 'Ref Rate', 'import_amount': 'Amount'}; - for (d in item_cols_base) $('[data-grid-fieldname="'+cur_frm.cscript.tname+'-'+d+'"]').html(item_cols_base[d]+' ('+base_curr+')'); - for (d in item_cols_import) $('[data-grid-fieldname="'+cur_frm.cscript.tname+'-'+d+'"]').html(item_cols_import[d]+' ('+doc.currency+')'); + for (d in item_cols_base) $('[data-grid-fieldname="'+cur_frm.cscript.tname+'-'+d+'"]').html(item_cols_base[d]+' ('+base_curr+')'); + for (d in item_cols_import) $('[data-grid-fieldname="'+cur_frm.cscript.tname+'-'+d+'"]').html(item_cols_import[d]+' ('+doc.currency+')'); - var hide = (doc.currency == sys_defaults['currency']) ? false : true; - for (f in item_cols_base) cur_frm.fields_dict[cur_frm.cscript.fname].grid.set_column_disp(f, hide); - - if (doc.doctype == 'Payable Voucher') { - $('[data-grid-fieldname="'+cur_frm.cscript.tname+'-rate"]').html('Rate ('+base_curr+')'); - cur_frm.fields_dict[cur_frm.cscript.fname].grid.set_column_disp('rate', hide); - // advance table flds - adv_cols = {'advance_amount': 'Advance Amount', 'allocated_amount': 'Allocated Amount', 'tds_amount': 'TDS Amount', 'tds_allocated': 'TDS Allocated'} - for (d in adv_cols) $('[data-grid-fieldname="Advance Allocation Detail-'+d+'"]').html(adv_cols[d]+' ('+base_curr+')'); - } - else { - $('[data-grid-fieldname="'+cur_frm.cscript.tname+'-purchase_rate"]').html('Rate ('+base_curr+')'); - cur_frm.fields_dict[cur_frm.cscript.fname].grid.set_column_disp('purchase_rate', hide); - } - - //tax table flds - tax_cols = {'tax_amount': 'Amount', 'total': 'Aggregate Total'}; - for (d in tax_cols) $('[data-grid-fieldname="Purchase Tax Detail-'+d+'"]').html(tax_cols[d]+' ('+base_curr+')'); - + var hide = (doc.currency == sys_defaults['currency']) ? false : true; + for (f in item_cols_base) cur_frm.fields_dict[cur_frm.cscript.fname].grid.set_column_disp(f, hide); + if (doc.doctype == 'Payable Voucher') { + $('[data-grid-fieldname="'+cur_frm.cscript.tname+'-rate"]').html('Rate ('+base_curr+')'); + cur_frm.fields_dict[cur_frm.cscript.fname].grid.set_column_disp('rate', hide); + // advance table flds + adv_cols = {'advance_amount': 'Advance Amount', 'allocated_amount': 'Allocated Amount', 'tds_amount': 'TDS Amount', 'tds_allocated': 'TDS Allocated'} + for (d in adv_cols) $('[data-grid-fieldname="Advance Allocation Detail-'+d+'"]').html(adv_cols[d]+' ('+base_curr+')'); + } + else { + $('[data-grid-fieldname="'+cur_frm.cscript.tname+'-purchase_rate"]').html('Rate ('+base_curr+')'); + cur_frm.fields_dict[cur_frm.cscript.fname].grid.set_column_disp('purchase_rate', hide); + } + //tax table flds + tax_cols = {'tax_amount': 'Amount', 'total': 'Aggregate Total'}; + for (d in tax_cols) $('[data-grid-fieldname="Purchase Tax Detail-'+d+'"]').html(tax_cols[d]+' ('+base_curr+')'); } // Change label dynamically based on currency //------------------------------------------------------------------ -cur_frm.cscript.dynamic_label = function(doc, cdt, cdn) { +cur_frm.cscript.dynamic_label = function(doc, cdt, cdn, callback1) { var callback = function(r, rt) { if (r.message) base_curr = r.message; else base_curr = sys_defaults['currency']; @@ -136,10 +133,16 @@ cur_frm.cscript.dynamic_label = function(doc, cdt, cdn) { set_dynamic_label_par(doc, cdt, cdn, base_curr); set_dynamic_label_child(doc, cdt, cdn, base_curr); + + if(callback1) callback1(doc, cdt, cdn); } if (doc.company == sys_defaults['company']) callback('', ''); - else $c_obj(make_doclist(doc.doctype, doc.name), 'get_comp_base_currency', '', callback); + else wn.call({ + method: 'selling.doctype.sales_common.sales_common.get_comp_base_currency', + args: {company: doc.company}, + callback: callback + }); } cur_frm.cscript.currency = function(doc, cdt, cdn) { diff --git a/erpnext/buying/doctype/purchase_common/purchase_common.py b/erpnext/buying/doctype/purchase_common/purchase_common.py index 16afb02ccf..ca9181f154 100644 --- a/erpnext/buying/doctype/purchase_common/purchase_common.py +++ b/erpnext/buying/doctype/purchase_common/purchase_common.py @@ -197,11 +197,6 @@ class DocType(TransactionBase): msgprint("%s has no Last Purchase Rate."% d.item_code) - def get_comp_base_currency(self, comp): - """ get default currency of company""" - return webnotes.conn.sql("select default_currency from `tabCompany` where name = %s", comp)[0][0] - - # validation # ------------------------------------------------------------------------------------------------------- diff --git a/erpnext/buying/doctype/purchase_order/purchase_order.js b/erpnext/buying/doctype/purchase_order/purchase_order.js index 0a6c547978..7af1204fa4 100644 --- a/erpnext/buying/doctype/purchase_order/purchase_order.js +++ b/erpnext/buying/doctype/purchase_order/purchase_order.js @@ -41,9 +41,12 @@ cur_frm.cscript.onload = function(doc, cdt, cdn) { } cur_frm.cscript.onload_post_render = function(doc, cdt, cdn) { - if(doc.__islocal){ - cur_frm.cscript.get_default_schedule_date(doc); - } + var callback = function(doc, cdt, cdn) { + if(doc.__islocal){ + cur_frm.cscript.get_default_schedule_date(doc); + } + } + cur_frm.cscript.dynamic_label(doc, cdt, cdn, callback); } // ================================== Refresh ========================================== @@ -52,7 +55,7 @@ cur_frm.cscript.refresh = function(doc, cdt, cdn) { // --------------------------------- cur_frm.clear_custom_buttons(); - cur_frm.cscript.dynamic_label(doc, cdt, cdn); + if (!cur_frm.cscript.is_onload) cur_frm.cscript.dynamic_label(doc, cdt, cdn); if(doc.docstatus == 1 && doc.status != 'Stopped'){ var ch = getchildren('PO Detail',doc.name,'po_details'); diff --git a/erpnext/buying/doctype/purchase_order/purchase_order.py b/erpnext/buying/doctype/purchase_order/purchase_order.py index efa05244c0..794580724b 100644 --- a/erpnext/buying/doctype/purchase_order/purchase_order.py +++ b/erpnext/buying/doctype/purchase_order/purchase_order.py @@ -100,10 +100,6 @@ class DocType(TransactionBase): return get_obj('Purchase Common').get_tc_details(self) - def get_comp_base_currency(self): - return get_obj('Purchase Common').get_comp_base_currency(self.doc.company) - - # validate if indent has been pulled twice def validate_prev_docname(self): diff --git a/erpnext/stock/doctype/purchase_receipt/purchase_receipt.js b/erpnext/stock/doctype/purchase_receipt/purchase_receipt.js index 0f6d1a8a80..7ad9d91928 100644 --- a/erpnext/stock/doctype/purchase_receipt/purchase_receipt.js +++ b/erpnext/stock/doctype/purchase_receipt/purchase_receipt.js @@ -40,12 +40,15 @@ cur_frm.cscript.onload = function(doc, cdt, cdn) { cur_frm.cscript.onload_post_render = function(doc, dt, dn) { var callback = function(doc, dt, dn) { - if(doc.__islocal){ - cur_frm.cscript.get_default_schedule_date(doc); + var callback1 = function(doc, dt, dn) { + if(doc.__islocal){ + cur_frm.cscript.get_default_schedule_date(doc); + } } + // defined in purchase_common.js + cur_frm.cscript.update_item_details(doc, dt, dn, callback1); } - // defined in purchase_common.js - cur_frm.cscript.update_item_details(doc, cdt, cdn, callback); + cur_frm.cscript.dynamic_label(doc, dt, dn, callback); } //========================== Refresh =============================================================== @@ -55,7 +58,8 @@ cur_frm.cscript.refresh = function(doc, cdt, cdn) { // --------------------------------- cur_frm.clear_custom_buttons(); - cur_frm.cscript.dynamic_label(doc, cdt, cdn); + if (!cur_frm.cscript.is_onload) cur_frm.cscript.dynamic_label(doc, cdt, cdn); + if(doc.docstatus == 1){ var ch = getchildren('Purchase Receipt Detail',doc.name,'purchase_receipt_details'); diff --git a/erpnext/stock/doctype/purchase_receipt/purchase_receipt.py b/erpnext/stock/doctype/purchase_receipt/purchase_receipt.py index 530afcf09d..f3e5d7737d 100644 --- a/erpnext/stock/doctype/purchase_receipt/purchase_receipt.py +++ b/erpnext/stock/doctype/purchase_receipt/purchase_receipt.py @@ -88,10 +88,6 @@ class DocType(TransactionBase): def get_tc_details(self): return get_obj('Purchase Common').get_tc_details(self) - def get_comp_base_currency(self): - return get_obj('Purchase Common').get_comp_base_currency(self.doc.company) - - # get available qty at warehouse def get_bin_details(self, arg = ''):