From 993c5c3bd712d5fdd665285ea743e2ab502bfc46 Mon Sep 17 00:00:00 2001 From: Rushabh Mehta Date: Wed, 28 Aug 2013 14:06:15 +0530 Subject: [PATCH 01/41] [fix] [minor] --- stock/report/items_to_be_requested/items_to_be_requested.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/stock/report/items_to_be_requested/items_to_be_requested.txt b/stock/report/items_to_be_requested/items_to_be_requested.txt index c149c969409..91e8ca3f269 100644 --- a/stock/report/items_to_be_requested/items_to_be_requested.txt +++ b/stock/report/items_to_be_requested/items_to_be_requested.txt @@ -2,7 +2,7 @@ { "creation": "2013-08-20 15:08:10", "docstatus": 0, - "modified": "2013-08-20 15:10:43", + "modified": "2013-08-20 15:10:45", "modified_by": "Administrator", "owner": "Administrator" }, @@ -10,7 +10,7 @@ "doctype": "Report", "is_standard": "Yes", "name": "__common__", - "query": "SELECT\n tabBin.item_code as \"Item:Link/Item:120\",\n tabBin.warehouse as \"Item:Link/Warehouse:120\",\n tabBin.actual_qty as \"Actual:Float:90\",\n tabBin.indented_qty as \"Requested:Float:90\",\n tabBin.reserved_qty as \"Reserved:Float:90\",\n tabBin.ordered_qty as \"Ordered:Float:90\",\n tabBin.projected_qty as \"Projected:Float:90\"\nFROM\n tabBin, tabItem\nWHERE\n tabBin.item_code = tabItem.name\n AND tabItem.is_purchase_item = \"Yes\"\n AND tabBin.projected_qty < 0\nORDER BY\n tabBin.projected_qty ASC", + "query": "SELECT\n tabBin.item_code as \"Item:Link/Item:120\",\n tabBin.warehouse as \"Warehouse:Link/Warehouse:120\",\n tabBin.actual_qty as \"Actual:Float:90\",\n tabBin.indented_qty as \"Requested:Float:90\",\n tabBin.reserved_qty as \"Reserved:Float:90\",\n tabBin.ordered_qty as \"Ordered:Float:90\",\n tabBin.projected_qty as \"Projected:Float:90\"\nFROM\n tabBin, tabItem\nWHERE\n tabBin.item_code = tabItem.name\n AND tabItem.is_purchase_item = \"Yes\"\n AND tabBin.projected_qty < 0\nORDER BY\n tabBin.projected_qty ASC", "ref_doctype": "Item", "report_name": "Items To Be Requested", "report_type": "Query Report" From fccbb3f33159f349218424de4c637e7defcf9390 Mon Sep 17 00:00:00 2001 From: Anand Doshi Date: Wed, 28 Aug 2013 18:30:14 +0530 Subject: [PATCH 02/41] [fix] [minor] made resolution details editable in support ticket --- .../doctype/support_ticket/support_ticket.txt | 24 +++++++++---------- 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/support/doctype/support_ticket/support_ticket.txt b/support/doctype/support_ticket/support_ticket.txt index 53d1c7ca41d..dcb45204fd2 100644 --- a/support/doctype/support_ticket/support_ticket.txt +++ b/support/doctype/support_ticket/support_ticket.txt @@ -2,7 +2,7 @@ { "creation": "2013-02-01 10:36:25", "docstatus": 0, - "modified": "2013-08-08 14:22:34", + "modified": "2013-08-28 18:29:06", "modified_by": "Administrator", "owner": "Administrator" }, @@ -224,17 +224,6 @@ "oldfieldtype": "Column Break", "read_only": 1 }, - { - "depends_on": "eval:!doc.__islocal", - "doctype": "DocField", - "fieldname": "resolution_details", - "fieldtype": "Small Text", - "label": "Resolution Details", - "no_copy": 1, - "oldfieldname": "resolution_details", - "oldfieldtype": "Text", - "read_only": 1 - }, { "doctype": "DocField", "fieldname": "first_responded_on", @@ -254,6 +243,17 @@ "read_only": 1, "search_index": 0 }, + { + "depends_on": "eval:!doc.__islocal", + "doctype": "DocField", + "fieldname": "resolution_details", + "fieldtype": "Small Text", + "label": "Resolution Details", + "no_copy": 1, + "oldfieldname": "resolution_details", + "oldfieldtype": "Text", + "read_only": 0 + }, { "doctype": "DocField", "fieldname": "content_type", From 46ec268e9b3f457f665d9f57425028874f515692 Mon Sep 17 00:00:00 2001 From: Rushabh Mehta Date: Thu, 29 Aug 2013 13:53:36 +0530 Subject: [PATCH 03/41] [communications] [minor] Code cleanup so it can be extended by custom script --- selling/doctype/lead/get_leads.py | 20 +++++--------------- utilities/doctype/contact/contact.py | 2 +- website/helpers/contact.py | 4 ++-- website/templates/js/contact.js | 7 ++++++- 4 files changed, 14 insertions(+), 19 deletions(-) diff --git a/selling/doctype/lead/get_leads.py b/selling/doctype/lead/get_leads.py index c376f450a4a..c63468e2f04 100644 --- a/selling/doctype/lead/get_leads.py +++ b/selling/doctype/lead/get_leads.py @@ -9,17 +9,8 @@ from core.doctype.communication.communication import make def add_sales_communication(subject, content, sender, real_name, mail=None, status="Open", date=None): - def set_status(doctype, name): - w = webnotes.bean(doctype, name) - w.ignore_permissions = True - w.doc.status = is_system_user and "Replied" or status - w.doc.save() - if mail: - mail.save_attachments_in_doc(w.doc) - lead_name = webnotes.conn.get_value("Lead", {"email_id": sender}) contact_name = webnotes.conn.get_value("Contact", {"email_id": sender}) - is_system_user = webnotes.conn.get_value("Profile", sender) if not (lead_name or contact_name): # none, create a new Lead @@ -34,14 +25,13 @@ def add_sales_communication(subject, content, sender, real_name, mail=None, lead.insert() lead_name = lead.doc.name - make(content=content, sender=sender, subject=subject, + message = make(content=content, sender=sender, subject=subject, lead=lead_name, contact=contact_name, date=date) - if contact_name: - set_status("Contact", contact_name) - elif lead_name: - set_status("Lead", lead_name) - + if mail: + # save attachments to parent if from mail + bean = webnotes.bean("Contact" if contact_name else "Lead", contact_name or lead_name) + mail.save_attachments_in_doc(bean.doc) class SalesMailbox(POP3Mailbox): def setup(self, args=None): diff --git a/utilities/doctype/contact/contact.py b/utilities/doctype/contact/contact.py index 89cfc8e0df8..961bb52153a 100644 --- a/utilities/doctype/contact/contact.py +++ b/utilities/doctype/contact/contact.py @@ -7,7 +7,7 @@ from webnotes.utils import cstr from utilities.transaction_base import TransactionBase -class DocType(TransactionBase): +class DocType(TransactionBase): def __init__(self, doc, doclist=[]): self.doc = doc self.doclist = doclist diff --git a/website/helpers/contact.py b/website/helpers/contact.py index 05ae4f797e1..35446a3d241 100644 --- a/website/helpers/contact.py +++ b/website/helpers/contact.py @@ -20,7 +20,7 @@ def send_message(subject="Website Query", message="", sender="", status="Open"): # make lead / communication from selling.doctype.lead.get_leads import add_sales_communication - add_sales_communication(subject or "Website Query", message, sender, sender, + message = add_sales_communication(subject or "Website Query", message, sender, sender, mail=None, status=status) # guest method, cap max writes per hour @@ -29,4 +29,4 @@ def send_message(subject="Website Query", message="", sender="", status="Open"): webnotes.response["message"] = "Sorry: we believe we have received an unreasonably high number of requests of this kind. Please try later" return - webnotes.response["message"] = 'Thank You' \ No newline at end of file + webnotes.response.status = "okay" diff --git a/website/templates/js/contact.js b/website/templates/js/contact.js index a28abba2466..caec94512a7 100644 --- a/website/templates/js/contact.js +++ b/website/templates/js/contact.js @@ -26,7 +26,12 @@ $(document).ready(function() { sender: email, message: message, callback: function(r) { - msgprint(r.message); + if(r.status==="okay") { + msgprint(r.message or "Sent") + } else { + msgprint("There were errors"); + console.log(r.exc); + } $(':input').val(''); } }); From 1c8ec406aec8d108d4025fc04a8a270188cf4f8b Mon Sep 17 00:00:00 2001 From: Anand Doshi Date: Thu, 29 Aug 2013 13:58:47 +0530 Subject: [PATCH 04/41] [fix] [minor] lead validate --- selling/doctype/lead/lead.py | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/selling/doctype/lead/lead.py b/selling/doctype/lead/lead.py index b2016aa7a90..2bf1aa38457 100644 --- a/selling/doctype/lead/lead.py +++ b/selling/doctype/lead/lead.py @@ -39,17 +39,14 @@ class DocType(SellingController): def validate(self): if self.doc.status == 'Lead Lost' and not self.doc.order_lost_reason: - msgprint("Please Enter Lost Reason under More Info section") - raise Exception + webnotes.throw("Please Enter Lost Reason under More Info section") if self.doc.source == 'Campaign' and not self.doc.campaign_name and session['user'] != 'Guest': - msgprint("Please specify campaign name") - raise Exception + webnotes.throw("Please specify campaign name") if self.doc.email_id: if not validate_email_add(self.doc.email_id): - msgprint('Please enter valid email id.') - raise Exception + webnotes.throw('Please enter valid email id.') def on_update(self): self.check_email_id_is_unique() From e752e771e5212ddd4a0217b723ef99c3264e636c Mon Sep 17 00:00:00 2001 From: Rushabh Mehta Date: Thu, 29 Aug 2013 15:14:37 +0530 Subject: [PATCH 05/41] [communications] [minor] Code cleanup so it can be extended by custom script --- website/css/website.css | 1 + 1 file changed, 1 insertion(+) diff --git a/website/css/website.css b/website/css/website.css index 88bf7fd3183..015e500d31f 100644 --- a/website/css/website.css +++ b/website/css/website.css @@ -56,6 +56,7 @@ img { div.web-footer { padding-top: 10px; + padding-bottom: 20px; } .web-footer-menu ul { From e89c533eaaa5feedefe1190b1d67e0be1f46b733 Mon Sep 17 00:00:00 2001 From: Rushabh Mehta Date: Thu, 29 Aug 2013 15:32:46 +0530 Subject: [PATCH 06/41] [sales/purchase] [minor] Set tax table on insert if tax master set, but table missing --- controllers/buying_controller.py | 3 ++- controllers/selling_controller.py | 4 ++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/controllers/buying_controller.py b/controllers/buying_controller.py index 63244c5fcec..043099a70df 100644 --- a/controllers/buying_controller.py +++ b/controllers/buying_controller.py @@ -17,7 +17,6 @@ class BuyingController(StockController): def onload_post_render(self): # contact, address, item details self.set_missing_values() - self.set_taxes("purchase_tax_details", "purchase_other_charges") def validate(self): super(BuyingController, self).validate() @@ -40,6 +39,8 @@ class BuyingController(StockController): self.doc.fields[fieldname] = val self.set_missing_item_details(get_item_details) + if self.doc.fields.get("__islocal"): + self.set_taxes("purchase_tax_details", "purchase_other_charges") def set_supplier_from_item_default(self): if self.meta.get_field("supplier") and not self.doc.supplier: diff --git a/controllers/selling_controller.py b/controllers/selling_controller.py index 086c42e3981..4b4b1c71a3c 100644 --- a/controllers/selling_controller.py +++ b/controllers/selling_controller.py @@ -14,15 +14,15 @@ class SellingController(StockController): def onload_post_render(self): # contact, address, item details and pos details (if applicable) self.set_missing_values() - self.set_taxes("other_charges", "charge") def set_missing_values(self, for_validate=False): super(SellingController, self).set_missing_values(for_validate) # set contact and address details for customer, if they are not mentioned self.set_missing_lead_customer_details() - self.set_price_list_and_item_details() + if self.doc.fields.get("__islocal"): + self.set_taxes("other_charges", "charge") def set_missing_lead_customer_details(self): if self.doc.customer: From cf90b6f3aee7f1f20132c1641b5824004ea54bac Mon Sep 17 00:00:00 2001 From: Rushabh Mehta Date: Thu, 29 Aug 2013 19:01:34 +0530 Subject: [PATCH 07/41] [communication] [minor] ignore status updates for support tickets --- website/css/website.css | 4 ---- 1 file changed, 4 deletions(-) diff --git a/website/css/website.css b/website/css/website.css index 015e500d31f..68fd7440069 100644 --- a/website/css/website.css +++ b/website/css/website.css @@ -18,10 +18,6 @@ img { padding-bottom: 30px; } -.outer { - padding: 0px 20px; -} - .navbar { margin: 0px -20px; } From f55631a51aed35b51cd6cfdfd3855cf07dbfdcbb Mon Sep 17 00:00:00 2001 From: Rushabh Mehta Date: Thu, 29 Aug 2013 22:12:17 +0530 Subject: [PATCH 08/41] [website] [style] [minor] Navbar goes out --- website/templates/html/outer.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/templates/html/outer.html b/website/templates/html/outer.html index 0f0f4002ea1..462f4dd7969 100644 --- a/website/templates/html/outer.html +++ b/website/templates/html/outer.html @@ -1,6 +1,7 @@ {% extends "lib/templates/base.html" %} {% block body %} + {% include "app/website/templates/html/navbar.html" %}
{% if shopping_cart_enabled -%} @@ -23,7 +24,6 @@
{{ banner_html }}
{% endif %}
- {% include "app/website/templates/html/navbar.html" %}
{%- block content -%} {%- endblock -%} From 010de37fcbb0e5a08c6b6327240a72c1ea88990b Mon Sep 17 00:00:00 2001 From: Rushabh Mehta Date: Thu, 29 Aug 2013 22:28:58 +0530 Subject: [PATCH 09/41] [website] [style] [minor] padding in blog categories --- utilities/demo/demo-login.html | 2 +- website/templates/html/blog_footer.html | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/utilities/demo/demo-login.html b/utilities/demo/demo-login.html index ef24678e27a..4595cb7d355 100644 --- a/utilities/demo/demo-login.html +++ b/utilities/demo/demo-login.html @@ -8,7 +8,7 @@

+ class="form-control" placeholder="Your Email Id (optional)">