diff --git a/accounts/report/delivered_items_to_be_billed/delivered_items_to_be_billed.txt b/accounts/report/delivered_items_to_be_billed/delivered_items_to_be_billed.txt index e0fd542a24..4a01347bce 100644 --- a/accounts/report/delivered_items_to_be_billed/delivered_items_to_be_billed.txt +++ b/accounts/report/delivered_items_to_be_billed/delivered_items_to_be_billed.txt @@ -2,16 +2,16 @@ { "owner": "Administrator", "docstatus": 0, - "creation": "2012-11-23 18:26:54", + "creation": "2012-11-23 16:46:22", "modified_by": "Administrator", - "modified": "2012-11-23 18:27:38" + "modified": "2012-11-26 10:11:53" }, { "name": "__common__", "ref_doctype": "Sales Invoice", "doctype": "Report", "is_standard": "Yes", - "query": "select \n `tabDelivery Note`.`name` as \"Delivery Note:Link/Delivery Note:120\",\n `tabDelivery Note`.`status` as \"Status\",\n `tabDelivery Note`.`posting_date` as \"Date:Date\",\n `tabDelivery Note Item`.item_code as \"Item:Link/Item:120\",\n `tabDelivery Note Item`.description as \"Description\",\n `tabDelivery Note Item`.qty as \"Qty:Float\",\n `tabDelivery Note Item`.billed_qty as \"Billed Qty:Float\"\nfrom\n `tabDelivery Note`, `tabDelivery Note Item`\nwhere\n `tabDelivery Note Item`.`parent` = `tabDelivery Note`.`name`\n and `tabDelivery Note`.docstatus = 1\n and ifnull(`tabDelivery Note Item`.billed_qty, 0) < ifnull(`tabDelivery Note Item`.qty, 0)\norder by `tabDelivery Note`.posting_date asc" + "query": "select \n `tabDelivery Note`.`name` as \"Delivery Note:Link/Delivery Note:120\",\n`tabDelivery Note`.`customer` as \"Customer:Link/Customer:120\",\n`tabDelivery Note`.`status` as \"Status\",\n `tabDelivery Note`.`posting_date` as \"Date:Date\",\n `tabDelivery Note Item`.item_code as \"Item:Link/Item:120\",\n `tabDelivery Note Item`.description as \"Description\",\n `tabDelivery Note Item`.qty as \"Qty:Float\",\n `tabDelivery Note Item`.billed_qty as \"Billed Qty:Float\"\nfrom\n `tabDelivery Note`, `tabDelivery Note Item`\nwhere\n `tabDelivery Note Item`.`parent` = `tabDelivery Note`.`name`\n and `tabDelivery Note`.docstatus = 1\n and ifnull(`tabDelivery Note Item`.billed_qty,0) < ifnull(`tabDelivery Note Item`.qty,0)\norder by `tabDelivery Note`.posting_date asc" }, { "name": "Delivered Items To Be Billed", diff --git a/home/page/latest_updates/latest_updates.js b/home/page/latest_updates/latest_updates.js index 190cdd2008..41e8ecd499 100644 --- a/home/page/latest_updates/latest_updates.js +++ b/home/page/latest_updates/latest_updates.js @@ -1,4 +1,7 @@ erpnext.updates = [ + ["24ht November 2012", [ + "Support Ticket: Support Ticket Response is now Communication", + ]], ["23rd November 2012", [ "General Ledger: Auto-suggest Accounts for filtering", "Calendar: User Interface Fixes, small text for events", diff --git a/patches/november_2012/support_ticket_response_to_communication.py b/patches/november_2012/support_ticket_response_to_communication.py new file mode 100644 index 0000000000..6534bb1549 --- /dev/null +++ b/patches/november_2012/support_ticket_response_to_communication.py @@ -0,0 +1,26 @@ +import webnotes +import email.utils + +def execute(): + webnotes.conn.commit() + for d in webnotes.conn.sql("""select owner, creation, modified, modified_by, parent, + from_email, mail from `tabSupport Ticket Response`""", as_dict=1): + c = webnotes.doc("Communication") + c.creation = d.creation + c.owner = d.owner + c.modified = d.modified + c.modified_by = d.modified_by + c.naming_series = "COMM-" + c.subject = "response to Support Ticket: " + d.parent + c.content = d.mail + c.email_address = d.from_email + c.support_ticket = d.parent + email_addr = email.utils.parseaddr(c.email_address)[1] + c.contact = webnotes.conn.get_value("Contact", {"email_id": email_addr}, "name") or None + c.lead = webnotes.conn.get_value("Lead", {"email_id": email_addr}, "name") or None + c.communication_medium = "Email" + webnotes.conn.begin() + c.save(1, keep_timestamps=True) + webnotes.conn.commit() + + webnotes.delete_doc("DocType", "Support Ticket Response") diff --git a/patches/patch_list.py b/patches/patch_list.py index 885cf561d0..f54de50885 100644 --- a/patches/patch_list.py +++ b/patches/patch_list.py @@ -679,4 +679,8 @@ patch_list = [ 'patch_module': 'patches.november_2012', 'patch_file': 'remove_old_unbilled_items_report', }, + { + 'patch_module': 'patches.november_2012', + 'patch_file': 'support_ticket_response_to_communication', + }, ] \ No newline at end of file diff --git a/selling/doctype/lead/lead.txt b/selling/doctype/lead/lead.txt index 666d702eff..ff8b0a88ce 100644 --- a/selling/doctype/lead/lead.txt +++ b/selling/doctype/lead/lead.txt @@ -1,708 +1,588 @@ -# DocType, Lead [ - - # These values are common in all dictionaries - { - u'creation': '2012-11-19 12:06:56', - u'docstatus': 0, - u'modified': '2012-11-21 17:12:54', - u'modified_by': u'Administrator', - u'owner': u'Administrator' - }, - - # These values are common for all DocType - { - '_last_update': u'1332222225', - 'allow_trash': 1, - 'colour': u'White:FFF', - 'default_print_format': u'Standard', - u'doctype': u'DocType', - 'document_type': u'Master', - 'module': u'Selling', - u'name': u'__common__', - 'search_fields': u'lead_name,lead_owner,status', - 'section_style': u'Tabbed', - 'server_code_error': u' ', - 'show_in_menu': 0, - 'subject': u'%(lead_name)s from %(company_name)s | To Discuss: %(to_discuss)s', - 'tag_fields': u'status,source', - 'version': 1 - }, - - # These values are common for all DocField - { - u'doctype': u'DocField', - u'name': u'__common__', - 'parent': u'Lead', - 'parentfield': u'fields', - 'parenttype': u'DocType' - }, - - # These values are common for all DocPerm - { - 'amend': 0, - u'doctype': u'DocPerm', - u'name': u'__common__', - 'parent': u'Lead', - 'parentfield': u'permissions', - 'parenttype': u'DocType', - 'read': 1, - 'submit': 0 - }, - - # DocType, Lead - { - u'doctype': u'DocType', - u'name': u'Lead' - }, - - # DocField - { - 'colour': u'White:FFF', - u'doctype': u'DocField', - 'fieldname': u'basic_info', - 'fieldtype': u'Section Break', - 'label': u'Basic Info', - 'oldfieldtype': u'Section Break', - 'permlevel': 0 - }, - - # DocField - { - u'doctype': u'DocField', - 'fieldname': u'column_break0', - 'fieldtype': u'Column Break', - 'oldfieldtype': u'Column Break', - 'permlevel': 0, - 'width': u'50%' - }, - - # DocField - { - 'colour': u'White:FFF', - 'description': u'To manage multiple series please go to Setup > Manage Series', - u'doctype': u'DocField', - 'fieldname': u'naming_series', - 'fieldtype': u'Select', - 'label': u'Naming Series', - 'no_copy': 1, - 'oldfieldname': u'naming_series', - 'oldfieldtype': u'Select', - 'options': u'LEAD\nLEAD/10-11/\nLEAD/MUMBAI/', - 'permlevel': 0, - 'reqd': 0 - }, - - # DocField - { - 'colour': u'White:FFF', - u'doctype': u'DocField', - 'fieldname': u'lead_name', - 'fieldtype': u'Data', - 'in_filter': 1, - 'label': u'Contact Name', - 'oldfieldname': u'lead_name', - 'oldfieldtype': u'Data', - 'permlevel': 0, - 'reqd': 1, - 'search_index': 1 - }, - - # DocField - { - 'colour': u'White:FFF', - 'description': u'Name of organization from where lead has come', - u'doctype': u'DocField', - 'fieldname': u'company_name', - 'fieldtype': u'Data', - 'in_filter': 1, - 'label': u'Organization Name (for Lead)', - 'oldfieldname': u'company_name', - 'oldfieldtype': u'Data', - 'permlevel': 0, - 'reqd': 0, - 'search_index': 0, - 'trigger': u'Client' - }, - - # DocField - { - 'colour': u'White:FFF', - 'description': u'Source of the lead. If via a campaign, select "Campaign"', - u'doctype': u'DocField', - 'fieldname': u'source', - 'fieldtype': u'Select', - 'in_filter': 1, - 'label': u'Source', - 'no_copy': 1, - 'oldfieldname': u'source', - 'oldfieldtype': u'Select', - 'options': u'\nAdvertisement\nBlog\nCampaign\nCall\nCustomer\nExhibition\nSupplier\nWebsite', - 'permlevel': 0, - 'reqd': 1, - 'search_index': 0, - 'trigger': u'Client' - }, - - # DocField - { - 'colour': u'White:FFF', - 'depends_on': u"eval:doc.source == 'Existing Customer'", - 'description': u'Source of the Lead', - u'doctype': u'DocField', - 'fieldname': u'customer', - 'fieldtype': u'Link', - 'hidden': 0, - 'label': u'From Customer', - 'oldfieldname': u'customer', - 'oldfieldtype': u'Link', - 'options': u'Customer', - 'permlevel': 0 - }, - - # DocField - { - 'colour': u'White:FFF', - 'depends_on': u"eval:doc.source == 'Campaign'", - 'description': u'Enter campaign name if the source of lead is campaign.', - u'doctype': u'DocField', - 'fieldname': u'campaign_name', - 'fieldtype': u'Link', - 'hidden': 0, - 'label': u'Campaign Name', - 'oldfieldname': u'campaign_name', - 'oldfieldtype': u'Link', - 'options': u'Campaign', - 'permlevel': 0 - }, - - # DocField - { - u'doctype': u'DocField', - 'fieldname': u'column_break1', - 'fieldtype': u'Column Break', - 'permlevel': 0, - 'width': u'50%' - }, - - # DocField - { - 'colour': u'White:FFF', - 'default': u'Open', - u'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'\nOpen\nAttempted to Contact\nContact in Future\nContacted\nInterested\nNot interested\nLead Lost\nConverted', - 'permlevel': 0, - 'reqd': 1, - 'search_index': 1, - 'trigger': u'Client' - }, - - # DocField - { - 'colour': u'White:FFF', - u'doctype': u'DocField', - 'fieldname': u'type', - 'fieldtype': u'Select', - 'in_filter': 1, - 'label': u'Lead Type', - 'oldfieldname': u'type', - 'oldfieldtype': u'Select', - 'options': u'\nClient\nChannel Partner\nConsultant', - 'permlevel': 0 - }, - - # DocField - { - 'colour': u'White:FFF', - u'doctype': u'DocField', - 'fieldname': u'remark', - 'fieldtype': u'Small Text', - 'label': u'Remark', - 'oldfieldname': u'remark', - 'oldfieldtype': u'Text', - 'permlevel': 0 - }, - - # DocField - { - u'doctype': u'DocField', - 'fieldname': u'communication_history', - 'fieldtype': u'Section Break', - 'label': u'Communication History', - 'permlevel': 0 - }, - - # DocField - { - 'allow_on_submit': 0, - 'colour': u'White:FFF', - u'doctype': u'DocField', - 'fieldname': u'communication_html', - 'fieldtype': u'HTML', - 'label': u'Communication HTML', - 'oldfieldname': u'follow_up', - 'oldfieldtype': u'Table', - 'permlevel': 0 - }, - - # DocField - { - u'doctype': u'DocField', - 'fieldname': u'contact_info', - 'fieldtype': u'Section Break', - 'label': u'Contact Info', - 'oldfieldtype': u'Column Break', - 'permlevel': 0 - }, - - # DocField - { - 'colour': u'White:FFF', - u'doctype': u'DocField', - 'fieldname': u'phone', - 'fieldtype': u'Data', - 'label': u'Phone', - 'oldfieldname': u'contact_no', - 'oldfieldtype': u'Data', - 'permlevel': 0, - 'reqd': 0 - }, - - # DocField - { - u'doctype': u'DocField', - 'fieldname': u'mobile_no', - 'fieldtype': u'Data', - 'label': u'Mobile No.', - 'oldfieldname': u'mobile_no', - 'oldfieldtype': u'Data', - 'permlevel': 0 - }, - - # DocField - { - u'doctype': u'DocField', - 'fieldname': u'email_id', - 'fieldtype': u'Data', - 'label': u'Email Id', - 'oldfieldname': u'email_id', - 'oldfieldtype': u'Data', - 'permlevel': 0, - 'reqd': 0 - }, - - # DocField - { - u'doctype': u'DocField', - 'fieldname': u'fax', - 'fieldtype': u'Data', - 'label': u'Fax', - 'oldfieldname': u'fax', - 'oldfieldtype': u'Data', - 'permlevel': 0 - }, - - # DocField - { - u'doctype': u'DocField', - 'fieldname': u'website', - 'fieldtype': u'Data', - 'label': u'Website', - 'oldfieldname': u'website', - 'oldfieldtype': u'Data', - 'permlevel': 0 - }, - - # DocField - { - 'colour': u'White:FFF', - 'description': u'To manage Territory, click here', - u'doctype': u'DocField', - 'fieldname': u'territory', - 'fieldtype': u'Link', - 'label': u'Territory', - 'oldfieldname': u'territory', - 'oldfieldtype': u'Link', - 'options': u'Territory', - 'permlevel': 0, - 'print_hide': 1 - }, - - # DocField - { - u'doctype': u'DocField', - 'fieldname': u'column_break2', - 'fieldtype': u'Column Break', - 'permlevel': 0 - }, - - # DocField - { - u'doctype': u'DocField', - 'fieldname': u'address_line1', - 'fieldtype': u'Data', - 'label': u'Address Line 1', - 'oldfieldname': u'address_line1', - 'oldfieldtype': u'Data', - 'permlevel': 0, - 'print_hide': 1, - 'reqd': 0 - }, - - # DocField - { - u'doctype': u'DocField', - 'fieldname': u'address_line2', - 'fieldtype': u'Data', - 'label': u'Address Line 2', - 'oldfieldname': u'address_line2', - 'oldfieldtype': u'Data', - 'permlevel': 0, - 'print_hide': 1 - }, - - # DocField - { - u'doctype': u'DocField', - 'fieldname': u'city', - 'fieldtype': u'Data', - 'label': u'City', - 'oldfieldname': u'city', - 'oldfieldtype': u'Select', - 'permlevel': 0, - 'print_hide': 1, - 'reqd': 0 - }, - - # DocField - { - u'doctype': u'DocField', - 'fieldname': u'country', - 'fieldtype': u'Select', - 'label': u'Country', - 'oldfieldname': u'country', - 'oldfieldtype': u'Select', - 'options': u'link:Country', - 'permlevel': 0, - 'print_hide': 1, - 'reqd': 0, - 'trigger': u'Client' - }, - - # DocField - { - 'colour': u'White:FFF', - u'doctype': u'DocField', - 'fieldname': u'state', - 'fieldtype': u'Data', - 'label': u'State', - 'oldfieldname': u'state', - 'oldfieldtype': u'Select', - 'options': u'Suggest', - 'permlevel': 0, - 'print_hide': 1 - }, - - # DocField - { - u'doctype': u'DocField', - 'fieldname': u'pincode', - 'fieldtype': u'Data', - 'label': u'Pin Code', - 'oldfieldname': u'pincode', - 'oldfieldtype': u'Data', - 'permlevel': 0, - 'print_hide': 1 - }, - - # DocField - { - 'colour': u'White:FFF', - u'doctype': u'DocField', - 'fieldname': u'more_info', - 'fieldtype': u'Section Break', - 'label': u'More Info', - 'oldfieldtype': u'Section Break', - 'permlevel': 0 - }, - - # DocField - { - 'default': u'__user', - u'doctype': u'DocField', - 'fieldname': u'lead_owner', - 'fieldtype': u'Link', - 'in_filter': 1, - 'label': u'Lead Owner', - 'oldfieldname': u'lead_owner', - 'oldfieldtype': u'Link', - 'options': u'Profile', - 'permlevel': 0, - 'search_index': 1 - }, - - # DocField - { - u'doctype': u'DocField', - 'fieldname': u'market_segment', - 'fieldtype': u'Select', - 'hidden': 0, - 'in_filter': 1, - 'label': u'Market Segment', - 'oldfieldname': u'market_segment', - 'oldfieldtype': u'Select', - 'options': u'\nLower Income\nMiddle Income\nUpper Income', - 'permlevel': 0, - 'reqd': 0, - 'search_index': 0 - }, - - # DocField - { - u'doctype': u'DocField', - 'fieldname': u'industry', - 'fieldtype': u'Link', - 'label': u'Industry', - 'oldfieldname': u'industry', - 'oldfieldtype': u'Link', - 'options': u'Industry Type', - 'permlevel': 0 - }, - - # DocField - { - u'doctype': u'DocField', - 'fieldname': u'request_type', - 'fieldtype': u'Select', - 'label': u'Request Type', - 'oldfieldname': u'request_type', - 'oldfieldtype': u'Select', - 'options': u'\nProduct Enquiry\nRequest for Information\nSuggestions\nOther', - 'permlevel': 0 - }, - - # DocField - { - u'doctype': u'DocField', - 'fieldname': u'fiscal_year', - 'fieldtype': u'Select', - 'hidden': 1, - 'in_filter': 1, - 'label': u'Fiscal Year', - 'oldfieldname': u'fiscal_year', - 'oldfieldtype': u'Select', - 'options': u'link:Fiscal Year', - 'permlevel': 0 - }, - - # DocField - { - u'doctype': u'DocField', - 'fieldname': u'column_break3', - 'fieldtype': u'Column Break', - 'oldfieldtype': u'Column Break', - 'permlevel': 0, - 'width': u'50%' - }, - - # DocField - { - 'allow_on_submit': 0, - 'depends_on': u"eval:doc.status == 'Lead Lost'", - u'doctype': u'DocField', - 'fieldname': u'order_lost_reason', - 'fieldtype': u'Link', - 'hidden': 0, - 'label': u'Lost Reason', - 'oldfieldname': u'order_lost_reason', - 'oldfieldtype': u'Link', - 'options': u'Quotation Lost Reason', - 'permlevel': 0 - }, - - # DocField - { - 'allow_on_submit': 0, - 'colour': u'White:FFF', - 'description': u'Your sales person who will contact the lead in future', - u'doctype': u'DocField', - 'fieldname': u'contact_by', - 'fieldtype': u'Link', - 'hidden': 0, - 'in_filter': 1, - 'label': u'Next Contact By', - 'oldfieldname': u'contact_by', - 'oldfieldtype': u'Link', - 'options': u'Profile', - 'permlevel': 0, - 'print_hide': 0, - 'reqd': 0, - 'width': u'100px' - }, - - # DocField - { - 'allow_on_submit': 0, - 'colour': u'White:FFF', - 'description': u'Your sales person will get a reminder on this date to contact the lead', - u'doctype': u'DocField', - 'fieldname': u'contact_date', - 'fieldtype': u'Date', - 'in_filter': 1, - 'label': u'Next Contact Date', - 'no_copy': 1, - 'oldfieldname': u'contact_date', - 'oldfieldtype': u'Date', - 'permlevel': 0, - 'reqd': 0, - 'width': u'100px' - }, - - # DocField - { - 'colour': u'White:FFF', - 'depends_on': u'eval:!doc.__islocal', - 'description': u'Date on which the lead was last contacted', - u'doctype': u'DocField', - 'fieldname': u'last_contact_date', - 'fieldtype': u'Date', - 'label': u'Last Contact Date', - 'no_copy': 1, - 'oldfieldname': u'last_contact_date', - 'oldfieldtype': u'Date', - 'permlevel': 1, - 'print_hide': 1 - }, - - # DocField - { - 'colour': u'White:FFF', - u'doctype': u'DocField', - 'fieldname': u'company', - 'fieldtype': u'Link', - 'label': u'Company', - 'oldfieldname': u'company', - 'oldfieldtype': u'Link', - 'options': u'Company', - 'permlevel': 0, - 'reqd': 0 - }, - - # DocField - { - u'doctype': u'DocField', - 'fieldname': u'trash_reason', - 'fieldtype': u'Small Text', - 'label': u'Trash Reason', - 'no_copy': 1, - 'oldfieldname': u'trash_reason', - 'oldfieldtype': u'Small Text', - 'permlevel': 1, - 'print_hide': 1 - }, - - # DocField - { - u'doctype': u'DocField', - 'fieldname': u'unsubscribed', - 'fieldtype': u'Check', - 'label': u'Unsubscribed', - 'permlevel': 0 - }, - - # DocField - { - u'doctype': u'DocField', - 'fieldname': u'blog_subscriber', - 'fieldtype': u'Check', - 'label': u'Blog Subscriber', - 'permlevel': 0 - }, - - # DocPerm - { - 'cancel': 0, - 'create': 0, - u'doctype': u'DocPerm', - 'permlevel': 1, - 'role': u'All', - 'write': 0 - }, - - # DocPerm - { - 'cancel': 0, - 'create': 1, - u'doctype': u'DocPerm', - 'permlevel': 0, - 'role': u'Sales User', - 'write': 1 - }, - - # DocPerm - { - 'cancel': 1, - 'create': 1, - u'doctype': u'DocPerm', - 'permlevel': 0, - 'role': u'Sales Manager', - 'write': 1 - }, - - # DocPerm - { - 'cancel': 0, - 'create': 1, - u'doctype': u'DocPerm', - 'permlevel': 0, - 'role': u'System Manager', - 'write': 1 - }, - - # DocPerm - { - 'cancel': 0, - 'create': 0, - u'doctype': u'DocPerm', - 'permlevel': 1, - 'role': u'Sales Manager', - 'write': 0 - }, - - # DocPerm - { - 'cancel': 0, - 'create': 0, - u'doctype': u'DocPerm', - 'permlevel': 1, - 'role': u'Sales User', - 'write': 0 - }, - - # DocPerm - { - 'cancel': 0, - 'create': 1, - u'doctype': u'DocPerm', - 'permlevel': 0, - 'role': u'System Manager', - 'write': 1 - }, - - # DocPerm - { - 'cancel': 0, - 'create': 1, - u'doctype': u'DocPerm', - 'permlevel': 0, - 'role': u'Guest', - 'write': 1 - } + { + "owner": "Administrator", + "docstatus": 0, + "creation": "2012-11-02 17:16:46", + "modified_by": "Administrator", + "modified": "2012-11-24 15:09:56" + }, + { + "name": "__common__", + "default_print_format": "Standard", + "search_fields": "lead_name,lead_owner,status", + "module": "Selling", + "doctype": "DocType", + "document_type": "Master" + }, + { + "name": "__common__", + "parent": "Lead", + "doctype": "DocField", + "parenttype": "DocType", + "parentfield": "fields" + }, + { + "name": "__common__", + "parent": "Lead", + "amend": 0, + "submit": 0, + "doctype": "DocPerm", + "read": 1, + "parenttype": "DocType", + "parentfield": "permissions" + }, + { + "name": "Lead", + "doctype": "DocType" + }, + { + "oldfieldtype": "Section Break", + "colour": "White:FFF", + "doctype": "DocField", + "label": "Basic Info", + "fieldname": "basic_info", + "fieldtype": "Section Break", + "permlevel": 0 + }, + { + "oldfieldtype": "Column Break", + "doctype": "DocField", + "width": "50%", + "fieldname": "column_break0", + "fieldtype": "Column Break", + "permlevel": 0 + }, + { + "description": "To manage multiple series please go to Setup > Manage Series", + "no_copy": 1, + "oldfieldtype": "Select", + "colour": "White:FFF", + "doctype": "DocField", + "label": "Naming Series", + "oldfieldname": "naming_series", + "permlevel": 0, + "fieldname": "naming_series", + "fieldtype": "Select", + "reqd": 0, + "options": "LEAD\nLEAD/10-11/\nLEAD/MUMBAI/" + }, + { + "oldfieldtype": "Data", + "colour": "White:FFF", + "doctype": "DocField", + "label": "Contact Name", + "oldfieldname": "lead_name", + "fieldname": "lead_name", + "fieldtype": "Data", + "search_index": 1, + "reqd": 1, + "permlevel": 0, + "in_filter": 1 + }, + { + "oldfieldtype": "Data", + "colour": "White:FFF", + "doctype": "DocField", + "label": "Email Id", + "oldfieldname": "email_id", + "fieldname": "email_id", + "fieldtype": "Data", + "search_index": 1, + "reqd": 0, + "permlevel": 0 + }, + { + "description": "Name of organization from where lead has come", + "oldfieldtype": "Data", + "colour": "White:FFF", + "doctype": "DocField", + "label": "Company Name", + "oldfieldname": "company_name", + "trigger": "Client", + "fieldname": "company_name", + "fieldtype": "Data", + "search_index": 0, + "reqd": 0, + "in_filter": 1, + "permlevel": 0 + }, + { + "description": "Source of the lead. If via a campaign, select \"Campaign\"", + "no_copy": 1, + "oldfieldtype": "Select", + "colour": "White:FFF", + "doctype": "DocField", + "label": "Source", + "oldfieldname": "source", + "permlevel": 0, + "trigger": "Client", + "fieldname": "source", + "fieldtype": "Select", + "search_index": 0, + "reqd": 0, + "in_filter": 1, + "options": "\nAdvertisement\nBlog\nCampaign\nCall\nCustomer\nExhibition\nSupplier\nWebsite" + }, + { + "description": "Source of th", + "oldfieldtype": "Link", + "colour": "White:FFF", + "doctype": "DocField", + "label": "From Customer", + "oldfieldname": "customer", + "permlevel": 0, + "fieldname": "customer", + "fieldtype": "Link", + "depends_on": "eval:doc.source == 'Existing Customer'", + "hidden": 0, + "options": "Customer" + }, + { + "description": "Enter campaign name if the source of lead is campaign.", + "oldfieldtype": "Link", + "colour": "White:FFF", + "doctype": "DocField", + "label": "Campaign Name", + "oldfieldname": "campaign_name", + "permlevel": 0, + "fieldname": "campaign_name", + "fieldtype": "Link", + "depends_on": "eval:doc.source == 'Campaign'", + "hidden": 0, + "options": "Campaign" + }, + { + "doctype": "DocField", + "width": "50%", + "fieldname": "column_break1", + "fieldtype": "Column Break", + "permlevel": 0 + }, + { + "permlevel": 0, + "no_copy": 1, + "oldfieldtype": "Select", + "colour": "White:FFF", + "doctype": "DocField", + "label": "Status", + "oldfieldname": "status", + "default": "Open", + "trigger": "Client", + "fieldname": "status", + "fieldtype": "Select", + "search_index": 1, + "reqd": 1, + "options": "\nOpen\nAttempted to Contact\nContact in Future\nContacted\nInterested\nNot interested\nLead Lost\nConverted", + "in_filter": 1 + }, + { + "oldfieldtype": "Select", + "colour": "White:FFF", + "doctype": "DocField", + "label": "Lead Type", + "oldfieldname": "type", + "options": "\nClient\nChannel Partner\nConsultant", + "fieldname": "type", + "fieldtype": "Select", + "permlevel": 0, + "in_filter": 1 + }, + { + "oldfieldtype": "Text", + "colour": "White:FFF", + "doctype": "DocField", + "label": "Remark", + "oldfieldname": "remark", + "fieldname": "remark", + "fieldtype": "Small Text", + "permlevel": 0 + }, + { + "doctype": "DocField", + "label": "Communication History", + "fieldname": "communication_history", + "fieldtype": "Section Break", + "permlevel": 0 + }, + { + "oldfieldtype": "Table", + "colour": "White:FFF", + "allow_on_submit": 0, + "doctype": "DocField", + "label": "Communication HTML", + "oldfieldname": "follow_up", + "fieldname": "communication_html", + "fieldtype": "HTML", + "permlevel": 0 + }, + { + "oldfieldtype": "Column Break", + "doctype": "DocField", + "label": "Contact Info", + "fieldname": "contact_info", + "fieldtype": "Section Break", + "permlevel": 0 + }, + { + "oldfieldtype": "Data", + "colour": "White:FFF", + "doctype": "DocField", + "label": "Phone", + "oldfieldname": "contact_no", + "fieldname": "phone", + "fieldtype": "Data", + "reqd": 0, + "permlevel": 0 + }, + { + "oldfieldtype": "Data", + "doctype": "DocField", + "label": "Mobile No.", + "oldfieldname": "mobile_no", + "fieldname": "mobile_no", + "fieldtype": "Data", + "permlevel": 0 + }, + { + "oldfieldtype": "Data", + "doctype": "DocField", + "label": "Fax", + "oldfieldname": "fax", + "fieldname": "fax", + "fieldtype": "Data", + "permlevel": 0 + }, + { + "oldfieldtype": "Data", + "doctype": "DocField", + "label": "Website", + "oldfieldname": "website", + "fieldname": "website", + "fieldtype": "Data", + "permlevel": 0 + }, + { + "print_hide": 1, + "description": "To manage Territory, click here", + "oldfieldtype": "Link", + "colour": "White:FFF", + "doctype": "DocField", + "label": "Territory", + "oldfieldname": "territory", + "options": "Territory", + "fieldname": "territory", + "fieldtype": "Link", + "permlevel": 0 + }, + { + "doctype": "DocField", + "fieldname": "column_break2", + "fieldtype": "Column Break", + "permlevel": 0 + }, + { + "print_hide": 1, + "oldfieldtype": "Data", + "doctype": "DocField", + "label": "Address Line 1", + "oldfieldname": "address_line1", + "fieldname": "address_line1", + "fieldtype": "Data", + "reqd": 0, + "permlevel": 0 + }, + { + "print_hide": 1, + "oldfieldtype": "Data", + "doctype": "DocField", + "label": "Address Line 2", + "oldfieldname": "address_line2", + "fieldname": "address_line2", + "fieldtype": "Data", + "permlevel": 0 + }, + { + "print_hide": 1, + "oldfieldtype": "Select", + "doctype": "DocField", + "label": "City", + "oldfieldname": "city", + "fieldname": "city", + "fieldtype": "Data", + "reqd": 0, + "permlevel": 0 + }, + { + "print_hide": 1, + "oldfieldtype": "Select", + "doctype": "DocField", + "label": "Country", + "oldfieldname": "country", + "trigger": "Client", + "fieldname": "country", + "fieldtype": "Select", + "reqd": 0, + "options": "link:Country", + "permlevel": 0 + }, + { + "print_hide": 1, + "oldfieldtype": "Select", + "colour": "White:FFF", + "doctype": "DocField", + "label": "State", + "oldfieldname": "state", + "options": "Suggest", + "fieldname": "state", + "fieldtype": "Data", + "permlevel": 0 + }, + { + "print_hide": 1, + "oldfieldtype": "Data", + "doctype": "DocField", + "label": "Pin Code", + "oldfieldname": "pincode", + "fieldname": "pincode", + "fieldtype": "Data", + "permlevel": 0 + }, + { + "oldfieldtype": "Section Break", + "colour": "White:FFF", + "doctype": "DocField", + "label": "More Info", + "fieldname": "more_info", + "fieldtype": "Section Break", + "permlevel": 0 + }, + { + "default": "__user", + "oldfieldtype": "Link", + "doctype": "DocField", + "label": "Lead Owner", + "oldfieldname": "lead_owner", + "options": "Profile", + "fieldname": "lead_owner", + "fieldtype": "Link", + "search_index": 1, + "permlevel": 0, + "in_filter": 1 + }, + { + "oldfieldtype": "Select", + "doctype": "DocField", + "label": "Market Segment", + "oldfieldname": "market_segment", + "permlevel": 0, + "fieldname": "market_segment", + "fieldtype": "Select", + "search_index": 0, + "reqd": 0, + "hidden": 0, + "options": "\nLower Income\nMiddle Income\nUpper Income", + "in_filter": 1 + }, + { + "oldfieldtype": "Link", + "doctype": "DocField", + "label": "Industry", + "oldfieldname": "industry", + "options": "Industry Type", + "fieldname": "industry", + "fieldtype": "Link", + "permlevel": 0 + }, + { + "oldfieldtype": "Select", + "doctype": "DocField", + "label": "Request Type", + "oldfieldname": "request_type", + "options": "\nProduct Enquiry\nRequest for Information\nSuggestions\nOther", + "fieldname": "request_type", + "fieldtype": "Select", + "permlevel": 0 + }, + { + "oldfieldtype": "Select", + "doctype": "DocField", + "label": "Fiscal Year", + "oldfieldname": "fiscal_year", + "options": "link:Fiscal Year", + "fieldname": "fiscal_year", + "fieldtype": "Select", + "hidden": 1, + "permlevel": 0, + "in_filter": 1 + }, + { + "oldfieldtype": "Column Break", + "doctype": "DocField", + "width": "50%", + "fieldname": "column_break3", + "fieldtype": "Column Break", + "permlevel": 0 + }, + { + "oldfieldtype": "Link", + "allow_on_submit": 0, + "doctype": "DocField", + "label": "Lost Reason", + "oldfieldname": "order_lost_reason", + "options": "Quotation Lost Reason", + "fieldname": "order_lost_reason", + "fieldtype": "Link", + "depends_on": "eval:doc.status == 'Lead Lost'", + "hidden": 0, + "permlevel": 0 + }, + { + "print_hide": 0, + "description": "Your sales person who will contact the lead in future", + "permlevel": 0, + "oldfieldtype": "Link", + "colour": "White:FFF", + "allow_on_submit": 0, + "doctype": "DocField", + "label": "Next Contact By", + "oldfieldname": "contact_by", + "width": "100px", + "fieldname": "contact_by", + "fieldtype": "Link", + "reqd": 0, + "hidden": 0, + "in_filter": 1, + "options": "Profile" + }, + { + "description": "Your sales person will get a reminder on this date to contact the lead", + "no_copy": 1, + "oldfieldtype": "Date", + "colour": "White:FFF", + "allow_on_submit": 0, + "doctype": "DocField", + "label": "Next Contact Date", + "oldfieldname": "contact_date", + "width": "100px", + "fieldname": "contact_date", + "fieldtype": "Date", + "reqd": 0, + "in_filter": 1, + "permlevel": 0 + }, + { + "print_hide": 1, + "description": "Date on which the lead was last contacted", + "no_copy": 1, + "oldfieldtype": "Date", + "colour": "White:FFF", + "doctype": "DocField", + "label": "Last Contact Date", + "oldfieldname": "last_contact_date", + "fieldname": "last_contact_date", + "fieldtype": "Date", + "depends_on": "eval:!doc.__islocal", + "permlevel": 1 + }, + { + "oldfieldtype": "Link", + "colour": "White:FFF", + "doctype": "DocField", + "label": "Company", + "oldfieldname": "company", + "options": "Company", + "fieldname": "company", + "fieldtype": "Link", + "reqd": 0, + "permlevel": 0 + }, + { + "print_hide": 1, + "no_copy": 1, + "oldfieldtype": "Small Text", + "doctype": "DocField", + "label": "Trash Reason", + "oldfieldname": "trash_reason", + "fieldname": "trash_reason", + "fieldtype": "Small Text", + "permlevel": 1 + }, + { + "doctype": "DocField", + "label": "Unsubscribed", + "fieldname": "unsubscribed", + "fieldtype": "Check", + "permlevel": 0 + }, + { + "doctype": "DocField", + "label": "Blog Subscriber", + "fieldname": "blog_subscriber", + "fieldtype": "Check", + "permlevel": 0 + }, + { + "create": 0, + "doctype": "DocPerm", + "write": 0, + "role": "All", + "cancel": 0, + "permlevel": 1 + }, + { + "create": 1, + "doctype": "DocPerm", + "write": 1, + "role": "Sales User", + "cancel": 0, + "permlevel": 0 + }, + { + "create": 1, + "doctype": "DocPerm", + "write": 1, + "role": "Sales Manager", + "cancel": 1, + "permlevel": 0 + }, + { + "create": 1, + "doctype": "DocPerm", + "write": 1, + "role": "System Manager", + "cancel": 0, + "permlevel": 0 + }, + { + "create": 0, + "doctype": "DocPerm", + "write": 0, + "role": "Sales Manager", + "cancel": 0, + "permlevel": 1 + }, + { + "create": 0, + "doctype": "DocPerm", + "write": 0, + "role": "Sales User", + "cancel": 0, + "permlevel": 1 + }, + { + "create": 1, + "doctype": "DocPerm", + "write": 1, + "role": "System Manager", + "cancel": 0, + "permlevel": 0 + }, + { + "create": 1, + "doctype": "DocPerm", + "write": 1, + "role": "Guest", + "cancel": 0, + "permlevel": 0 + } ] \ No newline at end of file diff --git a/support/doctype/communication/communication.txt b/support/doctype/communication/communication.txt index 07fc0d5ff2..e53f1f7e69 100644 --- a/support/doctype/communication/communication.txt +++ b/support/doctype/communication/communication.txt @@ -1,406 +1,340 @@ -# DocType, Communication [ - - # These values are common in all dictionaries - { - u'creation': '2012-08-31 17:14:18', - u'docstatus': 0, - u'modified': '2012-11-14 12:15:56', - u'modified_by': u'Administrator', - u'owner': u'Administrator' - }, - - # These values are common for all DocType - { - 'allow_attach': 1, - 'description': u'Keep a track of all communications', - u'doctype': u'DocType', - 'document_type': u'Master', - 'in_dialog': 1, - 'module': u'Support', - u'name': u'__common__', - 'version': 1 - }, - - # These values are common for all DocField - { - u'doctype': u'DocField', - u'name': u'__common__', - 'parent': u'Communication', - 'parentfield': u'fields', - 'parenttype': u'DocType' - }, - - # These values are common for all DocPerm - { - u'doctype': u'DocPerm', - u'name': u'__common__', - 'parent': u'Communication', - 'parentfield': u'permissions', - 'parenttype': u'DocType', - 'read': 1, - 'write': 1 - }, - - # DocType, Communication - { - u'doctype': u'DocType', - u'name': u'Communication' - }, - - # DocField - { - u'doctype': u'DocField', - 'fieldname': u'basic_info', - 'fieldtype': u'Section Break', - 'label': u'Basic Info', - 'permlevel': 0 - }, - - # DocField - { - 'colour': u'White:FFF', - 'default': u'COMM-', - u'doctype': u'DocField', - 'fieldname': u'naming_series', - 'fieldtype': u'Select', - 'hidden': 1, - 'label': u'Naming Series', - 'options': u'COMM-', - 'permlevel': 0 - }, - - # DocField - { - u'doctype': u'DocField', - 'fieldname': u'category', - 'fieldtype': u'Select', - 'label': u'Category', - 'options': u'\nSales\nComplaint\nHelp\nSuggestion\nMiscellaneous\nSent Mail', - 'permlevel': 0, - 'reqd': 1 - }, - - # DocField - { - u'doctype': u'DocField', - 'fieldname': u'action', - 'fieldtype': u'Select', - 'label': u'Action', - 'options': u'\nCreated Opportunity\nSent Quotation\nCreated Support Ticket\nCreated Customer Issue\nNo Action\nSent Mail', - 'permlevel': 0, - 'reqd': 1 - }, - - # DocField - { - u'doctype': u'DocField', - 'fieldname': u'next_communication_date', - 'fieldtype': u'Date', - 'label': u'Next Communcation On', - 'permlevel': 0 - }, - - # DocField - { - u'doctype': u'DocField', - 'fieldname': u'column_break2', - 'fieldtype': u'Column Break', - 'permlevel': 0 - }, - - # DocField - { - u'doctype': u'DocField', - 'fieldname': u'subject', - 'fieldtype': u'Small Text', - 'label': u'Subject', - 'permlevel': 0, - 'reqd': 1 - }, - - # DocField - { - u'doctype': u'DocField', - 'fieldname': u'section_break1', - 'fieldtype': u'Section Break', - 'options': u'simple', - 'permlevel': 0 - }, - - # DocField - { - u'doctype': u'DocField', - 'fieldname': u'content', - 'fieldtype': u'Text', - 'label': u'Content', - 'permlevel': 0, - 'reqd': 0 - }, - - # DocField - { - u'doctype': u'DocField', - 'fieldname': u'additional_info', - 'fieldtype': u'Section Break', - 'label': u'Additional Info', - 'permlevel': 0 - }, - - # DocField - { - 'colour': u'White:FFF', - u'doctype': u'DocField', - 'fieldname': u'column_break3', - 'fieldtype': u'Column Break', - 'label': u'Related To', - 'permlevel': 0 - }, - - # DocField - { - u'doctype': u'DocField', - 'fieldname': u'lead', - 'fieldtype': u'Link', - 'hidden': 0, - 'label': u'Lead', - 'options': u'Lead', - 'permlevel': 0 - }, - - # DocField - { - u'doctype': u'DocField', - 'fieldname': u'contact', - 'fieldtype': u'Link', - 'label': u'Contact', - 'options': u'Contact', - 'permlevel': 0 - }, - - # DocField - { - u'doctype': u'DocField', - 'fieldname': u'customer', - 'fieldtype': u'Link', - 'label': u'Customer', - 'options': u'Customer', - 'permlevel': 0 - }, - - # DocField - { - u'doctype': u'DocField', - 'fieldname': u'supplier', - 'fieldtype': u'Link', - 'label': u'Supplier', - 'options': u'Supplier', - 'permlevel': 0 - }, - - # DocField - { - u'doctype': u'DocField', - 'fieldname': u'opportunity', - 'fieldtype': u'Link', - 'label': u'Opportunity', - 'options': u'Opportunity', - 'permlevel': 0 - }, - - # DocField - { - u'doctype': u'DocField', - 'fieldname': u'quotation', - 'fieldtype': u'Link', - 'label': u'Quotation', - 'options': u'Quotation', - 'permlevel': 0 - }, - - # DocField - { - u'doctype': u'DocField', - 'fieldname': u'support_ticket', - 'fieldtype': u'Link', - 'label': u'Support Ticket', - 'options': u'Support Ticket', - 'permlevel': 0 - }, - - # DocField - { - u'doctype': u'DocField', - 'fieldname': u'column_break1', - 'fieldtype': u'Column Break', - 'permlevel': 0 - }, - - # DocField - { - u'doctype': u'DocField', - 'fieldname': u'communication_medium', - 'fieldtype': u'Select', - 'label': u'Communication Medium', - 'options': u'\nChat\nPhone\nEmail\nSMS\nVisit\nOther', - 'permlevel': 0 - }, - - # DocField - { - u'doctype': u'DocField', - 'fieldname': u'phone_no', - 'fieldtype': u'Data', - 'label': u'Phone No.', - 'permlevel': 0 - }, - - # DocField - { - u'doctype': u'DocField', - 'fieldname': u'email_address', - 'fieldtype': u'Data', - 'label': u'Email Address', - 'permlevel': 0 - }, - - # DocField - { - u'doctype': u'DocField', - 'fieldname': u'section_break2', - 'fieldtype': u'Section Break', - 'options': u'simple', - 'permlevel': 0 - }, - - # DocField - { - u'doctype': u'DocField', - 'fieldname': u'column_break4', - 'fieldtype': u'Column Break', - 'label': u'By', - 'permlevel': 0 - }, - - # DocField - { - 'colour': u'White:FFF', - 'default': u'__user', - u'doctype': u'DocField', - 'fieldname': u'user', - 'fieldtype': u'Link', - 'label': u'User', - 'options': u'Profile', - 'permlevel': 1 - }, - - # DocField - { - u'doctype': u'DocField', - 'fieldname': u'sales_person', - 'fieldtype': u'Link', - 'label': u'Sales Person', - 'options': u'Sales Person', - 'permlevel': 1 - }, - - # DocField - { - u'doctype': u'DocField', - 'fieldname': u'column_break5', - 'fieldtype': u'Column Break', - 'label': u'On', - 'permlevel': 0 - }, - - # DocField - { - 'colour': u'White:FFF', - 'default': u'Today', - u'doctype': u'DocField', - 'fieldname': u'communication_date', - 'fieldtype': u'Date', - 'label': u'Date', - 'permlevel': 0 - }, - - # DocField - { - u'doctype': u'DocField', - 'fieldname': u'file_list', - 'fieldtype': u'Text', - 'hidden': 1, - 'label': u'File List', - 'no_copy': 1, - 'permlevel': 0, - 'print_hide': 1 - }, - - # DocField - { - u'doctype': u'DocField', - 'fieldname': u'_user_tags', - 'fieldtype': u'Data', - 'hidden': 1, - 'label': u'User Tags', - 'no_copy': 1, - 'permlevel': 0, - 'print_hide': 1 - }, - - # DocPerm - { - 'create': 1, - u'doctype': u'DocPerm', - 'permlevel': 0, - 'role': u'Support Team' - }, - - # DocPerm - { - 'create': 1, - u'doctype': u'DocPerm', - 'permlevel': 0, - 'role': u'Sales Manager' - }, - - # DocPerm - { - 'create': 1, - u'doctype': u'DocPerm', - 'permlevel': 0, - 'role': u'Sales User' - }, - - # DocPerm - { - u'doctype': u'DocPerm', - 'permlevel': 1, - 'role': u'Sales Manager' - }, - - # DocPerm - { - u'doctype': u'DocPerm', - 'permlevel': 1, - 'role': u'Support Manager' - }, - - # DocPerm - { - 'cancel': 1, - 'create': 1, - u'doctype': u'DocPerm', - 'permlevel': 0, - 'role': u'Support Manager' - }, - - # DocPerm - { - 'cancel': 1, - 'create': 1, - u'doctype': u'DocPerm', - 'permlevel': 0, - 'role': u'System Manager' - } + { + "owner": "Administrator", + "docstatus": 0, + "creation": "2012-11-14 12:25:16", + "modified_by": "Administrator", + "modified": "2012-11-24 15:22:32" + }, + { + "allow_attach": 1, + "doctype": "DocType", + "module": "Support", + "name": "__common__", + "in_dialog": 1, + "document_type": "Master", + "description": "Keep a track of all communications" + }, + { + "name": "__common__", + "parent": "Communication", + "doctype": "DocField", + "parenttype": "DocType", + "parentfield": "fields" + }, + { + "name": "__common__", + "parent": "Communication", + "read": 1, + "doctype": "DocPerm", + "write": 1, + "parenttype": "DocType", + "parentfield": "permissions" + }, + { + "name": "Communication", + "doctype": "DocType" + }, + { + "doctype": "DocField", + "label": "Basic Info", + "fieldname": "basic_info", + "fieldtype": "Section Break", + "permlevel": 0 + }, + { + "default": "COMM-", + "colour": "White:FFF", + "doctype": "DocField", + "label": "Naming Series", + "options": "COMM-", + "fieldname": "naming_series", + "fieldtype": "Select", + "hidden": 1, + "permlevel": 0 + }, + { + "colour": "White:FFF", + "doctype": "DocField", + "label": "Subject", + "fieldname": "subject", + "fieldtype": "Data", + "reqd": 1, + "permlevel": 0 + }, + { + "colour": "White:FFF", + "doctype": "DocField", + "label": "Content", + "width": "400", + "fieldname": "content", + "fieldtype": "Text", + "reqd": 0, + "permlevel": 0 + }, + { + "doctype": "DocField", + "options": "simple", + "fieldname": "section_break1", + "fieldtype": "Section Break", + "permlevel": 0 + }, + { + "doctype": "DocField", + "label": "Category", + "options": "\nSales\nComplaint\nHelp\nSuggestion\nMiscellaneous\nSent Mail", + "fieldname": "category", + "fieldtype": "Select", + "reqd": 0, + "permlevel": 0 + }, + { + "doctype": "DocField", + "fieldname": "column_break2", + "fieldtype": "Column Break", + "permlevel": 0 + }, + { + "doctype": "DocField", + "label": "Next Communcation On", + "fieldname": "next_communication_date", + "fieldtype": "Date", + "permlevel": 0 + }, + { + "doctype": "DocField", + "label": "Action", + "options": "\nCreated Opportunity\nSent Quotation\nCreated Support Ticket\nCreated Customer Issue\nNo Action\nSent Mail", + "fieldname": "action", + "fieldtype": "Select", + "reqd": 0, + "permlevel": 0 + }, + { + "doctype": "DocField", + "label": "Additional Info", + "fieldname": "additional_info", + "fieldtype": "Section Break", + "permlevel": 0 + }, + { + "colour": "White:FFF", + "doctype": "DocField", + "label": "Related To", + "fieldname": "column_break3", + "fieldtype": "Column Break", + "permlevel": 0 + }, + { + "doctype": "DocField", + "label": "Lead", + "options": "Lead", + "fieldname": "lead", + "fieldtype": "Link", + "hidden": 0, + "permlevel": 0 + }, + { + "doctype": "DocField", + "label": "Contact", + "options": "Contact", + "fieldname": "contact", + "fieldtype": "Link", + "permlevel": 0 + }, + { + "doctype": "DocField", + "label": "Customer", + "options": "Customer", + "fieldname": "customer", + "fieldtype": "Link", + "permlevel": 0 + }, + { + "doctype": "DocField", + "label": "Supplier", + "options": "Supplier", + "fieldname": "supplier", + "fieldtype": "Link", + "permlevel": 0 + }, + { + "doctype": "DocField", + "label": "Opportunity", + "options": "Opportunity", + "fieldname": "opportunity", + "fieldtype": "Link", + "permlevel": 0 + }, + { + "doctype": "DocField", + "label": "Quotation", + "options": "Quotation", + "fieldname": "quotation", + "fieldtype": "Link", + "permlevel": 0 + }, + { + "doctype": "DocField", + "label": "Support Ticket", + "options": "Support Ticket", + "fieldname": "support_ticket", + "fieldtype": "Link", + "permlevel": 0 + }, + { + "doctype": "DocField", + "fieldname": "column_break1", + "fieldtype": "Column Break", + "permlevel": 0 + }, + { + "doctype": "DocField", + "label": "Communication Medium", + "options": "\nChat\nPhone\nEmail\nSMS\nVisit\nOther", + "fieldname": "communication_medium", + "fieldtype": "Select", + "permlevel": 0 + }, + { + "doctype": "DocField", + "label": "Phone No.", + "fieldname": "phone_no", + "fieldtype": "Data", + "permlevel": 0 + }, + { + "doctype": "DocField", + "label": "Email Address", + "fieldname": "email_address", + "fieldtype": "Data", + "permlevel": 0 + }, + { + "doctype": "DocField", + "options": "simple", + "fieldname": "section_break2", + "fieldtype": "Section Break", + "permlevel": 0 + }, + { + "doctype": "DocField", + "label": "By", + "fieldname": "column_break4", + "fieldtype": "Column Break", + "permlevel": 0 + }, + { + "default": "__user", + "colour": "White:FFF", + "doctype": "DocField", + "label": "User", + "options": "Profile", + "fieldname": "user", + "fieldtype": "Link", + "permlevel": 1 + }, + { + "doctype": "DocField", + "label": "Sales Person", + "options": "Sales Person", + "fieldname": "sales_person", + "fieldtype": "Link", + "permlevel": 1 + }, + { + "doctype": "DocField", + "label": "On", + "fieldname": "column_break5", + "fieldtype": "Column Break", + "permlevel": 0 + }, + { + "default": "Today", + "colour": "White:FFF", + "doctype": "DocField", + "label": "Date", + "fieldname": "communication_date", + "fieldtype": "Date", + "permlevel": 0 + }, + { + "print_hide": 1, + "no_copy": 1, + "doctype": "DocField", + "label": "File List", + "fieldname": "file_list", + "fieldtype": "Text", + "hidden": 1, + "permlevel": 0 + }, + { + "print_hide": 1, + "no_copy": 1, + "doctype": "DocField", + "label": "User Tags", + "fieldname": "_user_tags", + "fieldtype": "Data", + "hidden": 1, + "permlevel": 0 + }, + { + "amend": 0, + "create": 1, + "doctype": "DocPerm", + "submit": 0, + "role": "Support Team", + "cancel": 1, + "permlevel": 0 + }, + { + "amend": 0, + "create": 1, + "doctype": "DocPerm", + "submit": 0, + "role": "Sales Manager", + "cancel": 1, + "permlevel": 0 + }, + { + "amend": 0, + "create": 1, + "doctype": "DocPerm", + "submit": 0, + "role": "Sales User", + "cancel": 1, + "permlevel": 0 + }, + { + "amend": 0, + "create": 0, + "doctype": "DocPerm", + "submit": 0, + "role": "Sales Manager", + "cancel": 0, + "permlevel": 1 + }, + { + "amend": 0, + "create": 0, + "doctype": "DocPerm", + "submit": 0, + "role": "Support Manager", + "cancel": 0, + "permlevel": 1 + }, + { + "create": 1, + "doctype": "DocPerm", + "role": "Support Manager", + "cancel": 1, + "permlevel": 0 + }, + { + "create": 1, + "doctype": "DocPerm", + "role": "System Manager", + "cancel": 1, + "permlevel": 0 + } ] \ No newline at end of file diff --git a/support/doctype/support_ticket/support_ticket.css b/support/doctype/support_ticket/support_ticket.css index 8d563a726b..370d99c851 100644 --- a/support/doctype/support_ticket/support_ticket.css +++ b/support/doctype/support_ticket/support_ticket.css @@ -1,3 +1,18 @@ +.communication { + border: 1px solid #aaa; + border-top: 0px; + padding: 7px; + background-color: #f2f2f2 +} + +.communication:hover { + background-color: #fffff0; +} + +.communication:first-child { + border-top: 1px solid #aaa; +} + .support-ticket-wrapper { margin-top: 10px; } diff --git a/support/doctype/support_ticket/support_ticket.js b/support/doctype/support_ticket/support_ticket.js index 7f3fc1dd66..689ddbf041 100644 --- a/support/doctype/support_ticket/support_ticket.js +++ b/support/doctype/support_ticket/support_ticket.js @@ -22,26 +22,15 @@ // xoxoxoxo // -------- new reply -------- -var cs = cur_frm.cscript; $.extend(cur_frm.cscript, { onload: function(doc, dt, dn) { // // help area // if(in_list(user_roles,'System Manager')) { - cur_frm.page_layout.footer.help_area.innerHTML = ''; - new wn.widgets.Footer({ - parent:cur_frm.page_layout.footer.help_area, - columns:2, - items: [ - { - column: 0, - label:'Email Settings', - description:'Integrate your incoming support emails to support ticket', - onclick: function() { loaddoc('Email Settings','Email Settings'); } - }, - ] - }) + cur_frm.page_layout.footer.help_area.innerHTML = '
\ +

Email Settings
\ + Integrate incoming support emails to Support Ticket

'; } if(!doc.customer) hide_field(['customer_name','address_display','contact_display','contact_mobile','contact_email']); @@ -71,31 +60,30 @@ $.extend(cur_frm.cscript, { // make thread listing // make_listing: function(doc) { - cur_frm.fields_dict['thread_html'].wrapper.innerHTML = ''; + var wrapper = cur_frm.fields_dict['thread_html'].wrapper; + $(wrapper) + .html("") + .css({"margin":"10px 0px"}); - // render first message - new EmailMessage($a(cur_frm.fields_dict['thread_html'].wrapper, 'div'), { - from_email: doc.raised_by, - creation: doc.creation, - mail: doc.description, - content_type: doc.content_type - }, null, -1) - - // render thread - cur_frm.cscript.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 '+ - 'from `tabSupport Ticket Response` where parent="'+doc.name+'" order by creation asc' - }, - as_dict: 1, - render_row: function(parent, data, list, idx) { - new EmailMessage(parent, data, list, idx); + var comm_list = wn.model.get("Communication", {"support_ticket": doc.name}) + comm_list.push({ + "email_address": doc.raised_by, + "modified": doc.creation, + "content": doc.description}); + + comm_list.sort(function(a, b) { return new Date(a.modified) > new Date(b.modified) + ? -1 : 1 }) + + $.each(comm_list, function(i, c) { + var comm = new erpnext.CommunicationView({ + doc: c, + support_ticket: doc, + parent: wrapper + }); + if(i==0) { + comm.toggle(); } }); - cur_frm.cscript.thread_list.run(); - }, send: function(doc, dt, dn) { @@ -141,56 +129,41 @@ $.extend(cur_frm.cscript, { }) - - -EmailMessage = function(parent, args, list, idx) { - var me = this; - $.extend(this, args); - this.make = function() { - this.creation = wn.datetime.str_to_user(this.creation); - if(this.from_email) - this.from_email = this.from_email.replace('<', '<').replace('>', '>'); - - // main wrapper - w = $a(parent, 'div', 'support-ticket-wrapper well'); - //$(w).addClass('support-ticket-wrapper'); - - // sender and timestamp - $a($a(w, 'div', 'support-ticket-title'), - 'span', 'link_type', {}, repl('By %(from_email)s on %(creation)s:', this), - function() { - // toggle message display on timestamp - if(me.message.style.display.toLowerCase()=='none') { - $ds(me.message); - } else { - $dh(me.message); - } - } - ); - - // email text - this.message = $a(w, 'div', '', - // style - {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 - .replace(/\n[ ]*\n[\n\t ]*/g, '\n') // excess whitespace - .replace(/\n/g, '
') - : this.mail) - ); - - // show only first and last message - if(idx==-1 || list && list.data.length-1==idx) { - $ds(this.message) +erpnext.CommunicationView = Class.extend({ + init: function(opts) { + $.extend(this, opts); + this.prepare(); + this.make(); + this.toggle(); + }, + prepare: function() { + //this.doc.when = comment_when(this.doc.modified); + this.doc.when = this.doc.modified; + if(this.doc.content.indexOf("
")== -1 && this.doc.content.indexOf("

")== -1) { + this.doc.content = this.doc.content.replace(/\n/g, "
"); } - + this.doc.content = this.doc.content.split("=== In response to ===")[0]; + this.doc.content = this.doc.content.split("-----Original Message-----")[0]; + }, + make: function() { + var me = this; + this.body = $(repl('

\ +

%(email_address)s on %(when)s

\ +
\ +
', this.doc)) + .appendTo(this.parent) + .css({"cursor":"pointer"}) + .click(function() { + $(this).find(".comm-content").toggle(); + }); + + this.body.find(".comm-content").html(this.doc.content); + }, + toggle: function() { + this.body.find(".comm-content").toggle(); } - this.make(); -} +}) + cur_frm.fields_dict.allocated_to.get_query = erpnext.utils.profile_query; - cur_frm.fields_dict.customer.get_query = erpnext.utils.customer_query; \ No newline at end of file diff --git a/support/doctype/support_ticket/support_ticket.py b/support/doctype/support_ticket/support_ticket.py index 39686187b6..a9ab729b74 100644 --- a/support/doctype/support_ticket/support_ticket.py +++ b/support/doctype/support_ticket/support_ticket.py @@ -29,6 +29,21 @@ class DocType(TransactionBase): def autoname(self): self.doc.name = make_autoname(self.doc.naming_series+'.#####') + def onload(self): + self.add_communication_list() + + def add_communication_list(self): + # remove communications if present + self.doclist = webnotes.doclist(self.doclist).get({"doctype": ["!=", "Communcation"]}) + + comm_list = webnotes.conn.sql("""select * from tabCommunication + where support_ticket=%s order by modified desc limit 20""", self.doc.name, as_dict=1) + + [d.update({"doctype":"Communication"}) for d in comm_list] + + self.doclist.extend(webnotes.doclist([webnotes.doc(fielddata=d) \ + for d in comm_list])) + def send_response(self): """ Adds a new response to the ticket and sends an email to the sender @@ -61,11 +76,12 @@ class DocType(TransactionBase): self.doc.new_response = None webnotes.conn.set(self.doc, 'status', 'Waiting for Customer') self.make_response_record(response) + self.add_communication_list() def last_response(self): """return last response""" - tmp = webnotes.conn.sql("""select mail from `tabSupport Ticket Response` - where parent = %s order by creation desc limit 1 + tmp = webnotes.conn.sql("""select content from `tabCommunication` + where support_ticket = %s order by creation desc limit 1 """, self.doc.name) if not tmp: @@ -84,17 +100,21 @@ class DocType(TransactionBase): def make_response_record(self, response, from_email = None, content_type='text/plain'): """ - Creates a new Support Ticket Response record + Creates a new Communication record """ - # add to Support Ticket Response - from webnotes.model.doc import Document - d = Document('Support Ticket Response') - d.from_email = from_email or webnotes.user.name - d.parent = self.doc.name - d.parenttype = "Support Ticket" - d.parentfield = "responses" - d.mail = response - d.content_type = content_type + # add to Communication + import email.utils + + d = webnotes.doc('Communication') + d.naming_series = "COMM-" + d.subject = self.doc.subject + d.email_address = from_email or webnotes.user.name + email_addr = email.utils.parseaddr(d.email_address)[1] + d.contact = webnotes.conn.get_value("Contact", {"email_id": email_addr}, "name") or None + d.lead = webnotes.conn.get_value("Lead", {"email_id": email_addr}, "name") or None + d.support_ticket = self.doc.name + d.content = response + d.communication_medium = "Email" d.save(1) def close_ticket(self): diff --git a/support/doctype/support_ticket/support_ticket.txt b/support/doctype/support_ticket/support_ticket.txt index c1622abb40..d261c164e0 100644 --- a/support/doctype/support_ticket/support_ticket.txt +++ b/support/doctype/support_ticket/support_ticket.txt @@ -1,411 +1,335 @@ -# DocType, Support Ticket [ - - # These values are common in all dictionaries - { - 'creation': '2012-04-02 16:02:42', - 'docstatus': 0, - 'modified': '2012-05-02 11:33:24', - 'modified_by': u'Administrator', - 'owner': u'Administrator' - }, - - # These values are common for all DocType - { - '_last_update': u'1311584009', - 'allow_attach': 1, - 'allow_trash': 1, - 'colour': u'White:FFF', - 'default_print_format': u'Standard', - 'doctype': 'DocType', - 'module': u'Support', - 'name': '__common__', - 'search_fields': u'status,customer,allocated_to,subject,raised_by', - 'section_style': u'Tray', - 'server_code_error': u' ', - 'show_in_menu': 0, - 'subject': u'%(subject)s', - 'tag_fields': u'status,allocated_to', - 'version': 1 - }, - - # These values are common for all DocField - { - 'doctype': u'DocField', - 'name': '__common__', - 'parent': u'Support Ticket', - 'parentfield': u'fields', - 'parenttype': u'DocType' - }, - - # These values are common for all DocPerm - { - 'amend': 0, - 'cancel': 0, - 'doctype': u'DocPerm', - 'name': '__common__', - 'parent': u'Support Ticket', - 'parentfield': u'permissions', - 'parenttype': u'DocType', - 'read': 1, - 'submit': 0 - }, - - # DocType, Support Ticket - { - 'doctype': 'DocType', - 'name': u'Support Ticket' - }, - - # DocPerm - { - 'create': 1, - 'doctype': u'DocPerm', - 'permlevel': 0, - 'role': u'Guest', - 'write': 1 - }, - - # DocPerm - { - 'create': 1, - 'doctype': u'DocPerm', - 'permlevel': 0, - 'role': u'Customer', - 'write': 1 - }, - - # DocPerm - { - 'create': 1, - 'doctype': u'DocPerm', - 'permlevel': 0, - 'role': u'Support Team', - 'write': 1 - }, - - # DocPerm - { - 'create': 0, - 'doctype': u'DocPerm', - 'permlevel': 1, - 'role': u'Support Team', - 'write': 1 - }, - - # DocPerm - { - 'create': 0, - 'doctype': u'DocPerm', - 'permlevel': 2, - 'role': u'Support Team', - 'write': 0 - }, - - # DocField - { - 'doctype': u'DocField', - 'fieldname': u'naming_series', - 'fieldtype': u'Select', - 'hidden': 0, - 'label': u'Naming Series', - 'no_copy': 1, - 'options': u'SUP', - 'permlevel': 0, - 'print_hide': 1, - 'reqd': 0, - 'search_index': 0 - }, - - # DocField - { - 'colour': u'White:FFF', - 'default': u'Open', - 'doctype': u'DocField', - 'fieldname': u'status', - 'fieldtype': u'Select', - 'in_filter': 0, - 'label': u'Status', - 'no_copy': 1, - 'oldfieldname': u'status', - 'oldfieldtype': u'Select', - 'options': u'\nOpen\nTo Reply\nWaiting for Customer\nHold\nClosed', - 'permlevel': 1, - 'reqd': 0, - 'search_index': 1 - }, - - # DocField - { - 'doctype': u'DocField', - 'fieldname': u'subject', - 'fieldtype': u'Text', - 'in_filter': 1, - 'label': u'Subject', - 'permlevel': 0, - 'reqd': 1 - }, - - # DocField - { - 'depends_on': u'eval:doc.__islocal', - 'doctype': u'DocField', - 'fieldname': u'raised_by', - 'fieldtype': u'Data', - 'in_filter': 1, - 'label': u'Raised By (Email)', - 'oldfieldname': u'raised_by', - 'oldfieldtype': u'Data', - 'permlevel': 0, - 'reqd': 1 - }, - - # DocField - { - 'depends_on': u'eval:doc.__islocal', - 'doctype': u'DocField', - 'fieldname': u'description', - 'fieldtype': u'Text', - 'label': u'Description', - 'oldfieldname': u'problem_description', - 'oldfieldtype': u'Text', - 'permlevel': 0, - 'reqd': 0 - }, - - # DocField - { - 'depends_on': u'eval:!doc.__islocal', - 'doctype': u'DocField', - 'fieldname': u'thread_html', - 'fieldtype': u'HTML', - 'label': u'Thread HTML', - 'permlevel': 1 - }, - - # DocField - { - 'depends_on': u'eval:!doc.__islocal', - 'doctype': u'DocField', - 'fieldname': u'new_response', - 'fieldtype': u'Text', - 'label': u'New Response', - 'permlevel': 0 - }, - - # DocField - { - 'depends_on': u'eval:!doc.__islocal', - 'doctype': u'DocField', - 'fieldname': u'send', - 'fieldtype': u'Button', - 'label': u'Send', - 'permlevel': 0 - }, - - # DocField - { - 'colour': u'White:FFF', - 'doctype': u'DocField', - 'fieldname': u'additional_info', - 'fieldtype': u'Section Break', - 'label': u'Additional Info', - 'permlevel': 1 - }, - - # DocField - { - 'depends_on': u'eval:!doc.__islocal', - 'doctype': u'DocField', - 'fieldname': u'column_break0', - 'fieldtype': u'Column Break', - 'oldfieldtype': u'Column Break', - 'permlevel': 1, - 'width': u'50%' - }, - - # DocField - { - 'colour': u'White:FFF', - 'doctype': u'DocField', - 'fieldname': u'customer', - 'fieldtype': u'Link', - 'in_filter': 1, - 'label': u'Customer', - 'oldfieldname': u'customer', - 'oldfieldtype': u'Link', - 'options': u'Customer', - 'permlevel': 1, - 'print_hide': 1, - 'reqd': 0, - 'search_index': 1, - 'trigger': u'Client' - }, - - # DocField - { - 'doctype': u'DocField', - 'fieldname': u'customer_name', - 'fieldtype': u'Data', - 'in_filter': 1, - 'label': u'Customer Name', - 'oldfieldname': u'customer_name', - 'oldfieldtype': u'Data', - 'permlevel': 2, - 'reqd': 0, - 'search_index': 0 - }, - - # DocField - { - 'doctype': u'DocField', - 'fieldname': u'address_display', - 'fieldtype': u'Small Text', - 'label': u'Address', - 'permlevel': 2 - }, - - # DocField - { - 'doctype': u'DocField', - 'fieldname': u'contact_display', - 'fieldtype': u'Data', - 'label': u'Contact Name', - 'permlevel': 2 - }, - - # DocField - { - 'doctype': u'DocField', - 'fieldname': u'contact_mobile', - 'fieldtype': u'Data', - 'label': u'Mobile No', - 'permlevel': 2 - }, - - # DocField - { - 'doctype': u'DocField', - 'fieldname': u'contact_email', - 'fieldtype': u'Data', - 'label': u'Contact Email', - 'oldfieldname': u'contact_no', - 'oldfieldtype': u'Data', - 'permlevel': 2 - }, - - # DocField - { - 'default': u'Today', - 'doctype': u'DocField', - 'fieldname': u'opening_date', - 'fieldtype': u'Date', - 'label': u'Opening Date', - 'no_copy': 1, - 'oldfieldname': u'opening_date', - 'oldfieldtype': u'Date', - 'permlevel': 1 - }, - - # DocField - { - 'doctype': u'DocField', - 'fieldname': u'opening_time', - 'fieldtype': u'Time', - 'label': u'Opening Time', - 'no_copy': 1, - 'oldfieldname': u'opening_time', - 'oldfieldtype': u'Time', - 'permlevel': 1 - }, - - # DocField - { - 'depends_on': u'eval:!doc.__islocal', - 'doctype': u'DocField', - 'fieldname': u'column_break1', - 'fieldtype': u'Column Break', - 'oldfieldtype': u'Column Break', - 'permlevel': 1 - }, - - # DocField - { - 'colour': u'White:FFF', - 'depends_on': u'eval:!doc.__islocal', - 'doctype': u'DocField', - 'fieldname': u'allocated_to', - 'fieldtype': u'Link', - 'in_filter': 1, - 'label': u'Allocated To', - 'oldfieldname': u'allocated_to', - 'oldfieldtype': u'Link', - 'options': u'Profile', - 'permlevel': 1, - 'search_index': 1 - }, - - # DocField - { - 'depends_on': u'eval:!doc.__islocal', - 'doctype': u'DocField', - 'fieldname': u'resolution_details', - 'fieldtype': u'Text', - 'label': u'Resolution Details', - 'no_copy': 1, - 'oldfieldname': u'resolution_details', - 'oldfieldtype': u'Text', - 'permlevel': 1 - }, - - # DocField - { - 'colour': u'White:FFF', - 'depends_on': u'eval:!doc.__islocal', - 'doctype': u'DocField', - 'fieldname': u'resolution_date', - 'fieldtype': u'Date', - 'in_filter': 0, - 'label': u'Resolution Date', - 'no_copy': 1, - 'oldfieldname': u'resolution_date', - 'oldfieldtype': u'Date', - 'permlevel': 1, - 'search_index': 0 - }, - - # DocField - { - 'depends_on': u'eval:!doc.__islocal', - 'doctype': u'DocField', - 'fieldname': u'resolution_time', - 'fieldtype': u'Time', - 'label': u'Resolution Time', - 'oldfieldname': u'resolution_time', - 'oldfieldtype': u'Time', - 'permlevel': 1 - }, - - # DocField - { - 'colour': u'White:FFF', - 'doctype': u'DocField', - 'fieldname': u'content_type', - 'fieldtype': u'Data', - 'hidden': 1, - 'label': u'Content Type', - 'permlevel': 0 - }, - - # DocField - { - 'doctype': u'DocField', - 'fieldname': u'file_list', - 'fieldtype': u'Text', - 'hidden': 1, - 'label': u'File List', - 'no_copy': 1, - 'permlevel': 0, - 'print_hide': 1 - } + { + "owner": "Administrator", + "docstatus": 0, + "creation": "2012-11-02 17:17:05", + "modified_by": "Administrator", + "modified": "2012-11-24 16:41:45" + }, + { + "allow_attach": 1, + "default_print_format": "Standard", + "search_fields": "status,customer,allocated_to,subject,raised_by", + "module": "Support", + "doctype": "DocType", + "name": "__common__" + }, + { + "name": "__common__", + "parent": "Support Ticket", + "doctype": "DocField", + "parenttype": "DocType", + "parentfield": "fields" + }, + { + "name": "__common__", + "parent": "Support Ticket", + "amend": 0, + "submit": 0, + "doctype": "DocPerm", + "read": 1, + "parenttype": "DocType", + "parentfield": "permissions" + }, + { + "name": "Support Ticket", + "doctype": "DocType" + }, + { + "print_hide": 1, + "no_copy": 1, + "search_index": 0, + "doctype": "DocField", + "label": "Naming Series", + "options": "SUP", + "fieldname": "naming_series", + "fieldtype": "Select", + "reqd": 0, + "hidden": 0, + "permlevel": 0 + }, + { + "permlevel": 1, + "no_copy": 1, + "oldfieldtype": "Select", + "colour": "White:FFF", + "doctype": "DocField", + "label": "Status", + "oldfieldname": "status", + "default": "Open", + "fieldname": "status", + "fieldtype": "Select", + "search_index": 1, + "reqd": 0, + "options": "\nOpen\nTo Reply\nWaiting for Customer\nHold\nClosed", + "in_filter": 0 + }, + { + "doctype": "DocField", + "label": "Subject", + "fieldname": "subject", + "fieldtype": "Text", + "reqd": 1, + "permlevel": 0, + "in_filter": 1 + }, + { + "oldfieldtype": "Data", + "doctype": "DocField", + "label": "Raised By (Email)", + "oldfieldname": "raised_by", + "fieldname": "raised_by", + "fieldtype": "Data", + "depends_on": "eval:doc.__islocal", + "reqd": 1, + "permlevel": 0, + "in_filter": 1 + }, + { + "oldfieldtype": "Text", + "doctype": "DocField", + "label": "Description", + "oldfieldname": "problem_description", + "fieldname": "description", + "fieldtype": "Text", + "depends_on": "eval:doc.__islocal", + "reqd": 0, + "permlevel": 0 + }, + { + "depends_on": "eval:!doc.__islocal", + "doctype": "DocField", + "label": "New Response", + "fieldname": "new_response", + "fieldtype": "Text", + "permlevel": 0 + }, + { + "depends_on": "eval:!doc.__islocal", + "doctype": "DocField", + "label": "Send", + "fieldname": "send", + "fieldtype": "Button", + "permlevel": 0 + }, + { + "depends_on": "eval:!doc.__islocal", + "doctype": "DocField", + "label": "Thread HTML", + "fieldname": "thread_html", + "fieldtype": "HTML", + "permlevel": 1 + }, + { + "colour": "White:FFF", + "doctype": "DocField", + "label": "Additional Info", + "fieldname": "additional_info", + "fieldtype": "Section Break", + "permlevel": 1 + }, + { + "oldfieldtype": "Column Break", + "doctype": "DocField", + "width": "50%", + "fieldname": "column_break0", + "fieldtype": "Column Break", + "depends_on": "eval:!doc.__islocal", + "permlevel": 1 + }, + { + "print_hide": 1, + "oldfieldtype": "Link", + "colour": "White:FFF", + "doctype": "DocField", + "label": "Customer", + "oldfieldname": "customer", + "permlevel": 1, + "trigger": "Client", + "fieldname": "customer", + "fieldtype": "Link", + "search_index": 1, + "reqd": 0, + "options": "Customer", + "in_filter": 1 + }, + { + "oldfieldtype": "Data", + "doctype": "DocField", + "label": "Customer Name", + "oldfieldname": "customer_name", + "fieldname": "customer_name", + "fieldtype": "Data", + "search_index": 0, + "reqd": 0, + "permlevel": 2, + "in_filter": 1 + }, + { + "doctype": "DocField", + "label": "Address", + "fieldname": "address_display", + "fieldtype": "Small Text", + "permlevel": 2 + }, + { + "doctype": "DocField", + "label": "Contact Name", + "fieldname": "contact_display", + "fieldtype": "Data", + "permlevel": 2 + }, + { + "doctype": "DocField", + "label": "Mobile No", + "fieldname": "contact_mobile", + "fieldtype": "Data", + "permlevel": 2 + }, + { + "oldfieldtype": "Data", + "doctype": "DocField", + "label": "Contact Email", + "oldfieldname": "contact_no", + "fieldname": "contact_email", + "fieldtype": "Data", + "permlevel": 2 + }, + { + "default": "Today", + "oldfieldtype": "Date", + "doctype": "DocField", + "label": "Opening Date", + "oldfieldname": "opening_date", + "no_copy": 1, + "fieldname": "opening_date", + "fieldtype": "Date", + "permlevel": 1 + }, + { + "no_copy": 1, + "oldfieldtype": "Time", + "doctype": "DocField", + "label": "Opening Time", + "oldfieldname": "opening_time", + "fieldname": "opening_time", + "fieldtype": "Time", + "permlevel": 1 + }, + { + "oldfieldtype": "Column Break", + "doctype": "DocField", + "fieldname": "column_break1", + "fieldtype": "Column Break", + "depends_on": "eval:!doc.__islocal", + "permlevel": 1 + }, + { + "depends_on": "eval:!doc.__islocal", + "search_index": 1, + "colour": "White:FFF", + "doctype": "DocField", + "label": "Allocated To", + "oldfieldname": "allocated_to", + "permlevel": 1, + "fieldname": "allocated_to", + "fieldtype": "Link", + "oldfieldtype": "Link", + "options": "Profile", + "in_filter": 1 + }, + { + "no_copy": 1, + "oldfieldtype": "Text", + "doctype": "DocField", + "label": "Resolution Details", + "oldfieldname": "resolution_details", + "fieldname": "resolution_details", + "fieldtype": "Text", + "depends_on": "eval:!doc.__islocal", + "permlevel": 1 + }, + { + "depends_on": "eval:!doc.__islocal", + "no_copy": 1, + "search_index": 0, + "colour": "White:FFF", + "doctype": "DocField", + "label": "Resolution Date", + "oldfieldname": "resolution_date", + "fieldname": "resolution_date", + "fieldtype": "Date", + "oldfieldtype": "Date", + "permlevel": 1, + "in_filter": 0 + }, + { + "oldfieldtype": "Time", + "doctype": "DocField", + "label": "Resolution Time", + "oldfieldname": "resolution_time", + "fieldname": "resolution_time", + "fieldtype": "Time", + "depends_on": "eval:!doc.__islocal", + "permlevel": 1 + }, + { + "colour": "White:FFF", + "doctype": "DocField", + "label": "Content Type", + "fieldname": "content_type", + "fieldtype": "Data", + "hidden": 1, + "permlevel": 0 + }, + { + "print_hide": 1, + "no_copy": 1, + "doctype": "DocField", + "label": "File List", + "fieldname": "file_list", + "fieldtype": "Text", + "hidden": 1, + "permlevel": 0 + }, + { + "create": 1, + "doctype": "DocPerm", + "write": 1, + "role": "Guest", + "cancel": 0, + "permlevel": 0 + }, + { + "create": 1, + "doctype": "DocPerm", + "write": 1, + "role": "Customer", + "cancel": 0, + "permlevel": 0 + }, + { + "create": 1, + "doctype": "DocPerm", + "write": 1, + "role": "Support Team", + "cancel": 1, + "permlevel": 0 + }, + { + "create": 0, + "doctype": "DocPerm", + "write": 1, + "role": "Support Team", + "cancel": 0, + "permlevel": 1 + }, + { + "create": 0, + "doctype": "DocPerm", + "write": 0, + "role": "Support Team", + "cancel": 0, + "permlevel": 2 + } ] \ No newline at end of file diff --git a/support/doctype/support_ticket_response/__init__.py b/support/doctype/support_ticket_response/__init__.py deleted file mode 100644 index baffc48825..0000000000 --- a/support/doctype/support_ticket_response/__init__.py +++ /dev/null @@ -1 +0,0 @@ -from __future__ import unicode_literals diff --git a/support/doctype/support_ticket_response/support_ticket_response.py b/support/doctype/support_ticket_response/support_ticket_response.py deleted file mode 100644 index 7f48feb2eb..0000000000 --- a/support/doctype/support_ticket_response/support_ticket_response.py +++ /dev/null @@ -1,22 +0,0 @@ -# ERPNext - web based ERP (http://erpnext.com) -# Copyright (C) 2012 Web Notes Technologies Pvt Ltd -# -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see . - -from __future__ import unicode_literals -import webnotes - -class DocType: - def __init__(self, d, dl): - self.doc, self.doclist = d, dl \ No newline at end of file diff --git a/support/doctype/support_ticket_response/support_ticket_response.txt b/support/doctype/support_ticket_response/support_ticket_response.txt deleted file mode 100644 index 7209264fc3..0000000000 --- a/support/doctype/support_ticket_response/support_ticket_response.txt +++ /dev/null @@ -1,64 +0,0 @@ -# DocType, Support Ticket Response -[ - - # These values are common in all dictionaries - { - 'creation': '2012-03-27 14:36:44', - 'docstatus': 0, - 'modified': '2012-03-27 14:36:44', - 'modified_by': u'Administrator', - 'owner': u'Administrator' - }, - - # These values are common for all DocType - { - 'colour': u'White:FFF', - 'doctype': 'DocType', - 'istable': 1, - 'module': u'Support', - 'name': '__common__', - 'section_style': u'Simple', - 'show_in_menu': 0, - 'version': 4 - }, - - # These values are common for all DocField - { - 'doctype': u'DocField', - 'name': '__common__', - 'parent': u'Support Ticket Response', - 'parentfield': u'fields', - 'parenttype': u'DocType', - 'permlevel': 0 - }, - - # DocType, Support Ticket Response - { - 'doctype': 'DocType', - 'name': u'Support Ticket Response' - }, - - # DocField - { - 'doctype': u'DocField', - 'fieldname': u'mail', - 'fieldtype': u'Text', - 'label': u'Mail' - }, - - # DocField - { - 'doctype': u'DocField', - 'fieldname': u'from_email', - 'fieldtype': u'Data', - 'label': u'From Email' - }, - - # DocField - { - 'doctype': u'DocField', - 'fieldname': u'content_type', - 'fieldtype': u'Data', - 'label': u'Content Type' - } -] \ No newline at end of file diff --git a/utilities/doctype/contact/contact.txt b/utilities/doctype/contact/contact.txt index baa2a775ee..20aa07608f 100644 --- a/utilities/doctype/contact/contact.txt +++ b/utilities/doctype/contact/contact.txt @@ -1,257 +1,301 @@ -# DocType, Contact [ - - # These values are common in all dictionaries - { - 'creation': '2012-07-03 14:22:38', - 'docstatus': 0, - 'modified': '2012-08-02 13:16:48', - 'modified_by': u'Administrator', - 'owner': u'Administrator' - }, - - # These values are common for all DocType - { - '_last_update': u'1327314958', - 'allow_trash': 1, - 'colour': u'White:FFF', - 'default_print_format': u'Standard', - 'doctype': 'DocType', - 'document_type': u'Master', - 'in_create': 0, - 'in_dialog': 1, - 'module': u'Utilities', - 'name': '__common__', - 'section_style': u'Simple', - 'server_code_error': u' ', - 'show_in_menu': 0, - 'subject': u'%(first_name)s %(last_name)s - Email: %(email_id)s | Contact: %(phone)s | Mobile: %(mobile_no)s', - 'version': 1 - }, - - # These values are common for all DocField - { - 'doctype': u'DocField', - 'name': '__common__', - 'parent': u'Contact', - 'parentfield': u'fields', - 'parenttype': u'DocType' - }, - - # DocType, Contact - { - 'doctype': 'DocType', - 'name': u'Contact' - }, - - # DocField - { - 'colour': u'White:FFF', - 'doctype': u'DocField', - 'fieldname': u'contact_details', - 'fieldtype': u'Section Break', - 'label': u'Contact Details', - 'oldfieldtype': u'Section Break', - 'permlevel': 0 - }, - - # DocField - { - 'doctype': u'DocField', - 'fieldname': u'column_break0', - 'fieldtype': u'Column Break', - 'oldfieldtype': u'Column Break', - 'permlevel': 0, - 'width': u'50%' - }, - - # DocField - { - 'doctype': u'DocField', - 'fieldname': u'first_name', - 'fieldtype': u'Data', - 'label': u'First Name', - 'oldfieldname': u'first_name', - 'oldfieldtype': u'Data', - 'permlevel': 0, - 'reqd': 1 - }, - - # DocField - { - 'doctype': u'DocField', - 'fieldname': u'last_name', - 'fieldtype': u'Data', - 'label': u'Last Name', - 'oldfieldname': u'last_name', - 'oldfieldtype': u'Data', - 'permlevel': 0 - }, - - # DocField - { - 'colour': u'White:FFF', - 'depends_on': u'eval:!doc.supplier && !doc.sales_partner', - 'doctype': u'DocField', - 'fieldname': u'customer', - 'fieldtype': u'Link', - 'label': u'Customer', - 'oldfieldname': u'customer', - 'oldfieldtype': u'Link', - 'options': u'Customer', - 'permlevel': 0, - 'print_hide': 0, - 'trigger': u'Client' - }, - - # DocField - { - 'colour': u'White:FFF', - 'depends_on': u'eval:!doc.supplier && !doc.sales_partner', - 'doctype': u'DocField', - 'fieldname': u'customer_name', - 'fieldtype': u'Data', - 'label': u'Customer Name', - 'permlevel': 1 - }, - - # DocField - { - 'colour': u'White:FFF', - 'depends_on': u'eval:!doc.customer && !doc.sales_partner', - 'doctype': u'DocField', - 'fieldname': u'supplier', - 'fieldtype': u'Link', - 'label': u'Supplier', - 'options': u'Supplier', - 'permlevel': 0, - 'trigger': u'Client' - }, - - # DocField - { - 'allow_on_submit': 0, - 'colour': u'White:FFF', - 'depends_on': u'eval:!doc.customer && !doc.sales_partner', - 'doctype': u'DocField', - 'fieldname': u'supplier_name', - 'fieldtype': u'Data', - 'label': u'Supplier Name', - 'permlevel': 1 - }, - - # DocField - { - 'colour': u'White:FFF', - 'depends_on': u'eval:!doc.customer && !doc.supplier', - 'doctype': u'DocField', - 'fieldname': u'sales_partner', - 'fieldtype': u'Link', - 'label': u'Sales Partner', - 'options': u'Sales Partner', - 'permlevel': 0 - }, - - # DocField - { - 'colour': u'White:FFF', - 'default': u'0', - 'depends_on': u'eval:(doc.customer || doc.supplier || doc.sales_partner)', - 'doctype': u'DocField', - 'fieldname': u'is_primary_contact', - 'fieldtype': u'Check', - 'label': u'Is Primary Contact', - 'oldfieldname': u'is_primary_contact', - 'oldfieldtype': u'Select', - 'permlevel': 0 - }, - - # DocField - { - 'doctype': u'DocField', - 'fieldname': u'column_break1', - 'fieldtype': u'Column Break', - 'oldfieldtype': u'Column Break', - 'permlevel': 0, - 'width': u'50%' - }, - - # DocField - { - 'doctype': u'DocField', - 'fieldname': u'email_id', - 'fieldtype': u'Data', - 'label': u'Email Id', - 'oldfieldname': u'email_id', - 'oldfieldtype': u'Data', - 'permlevel': 0, - 'reqd': 1 - }, - - # DocField - { - 'doctype': u'DocField', - 'fieldname': u'phone', - 'fieldtype': u'Data', - 'label': u'Phone', - 'oldfieldname': u'contact_no', - 'oldfieldtype': u'Data', - 'permlevel': 0, - 'reqd': 1 - }, - - # DocField - { - 'doctype': u'DocField', - 'fieldname': u'mobile_no', - 'fieldtype': u'Data', - 'label': u'Mobile No', - 'oldfieldname': u'mobile_no', - 'oldfieldtype': u'Data', - 'permlevel': 0 - }, - - # DocField - { - 'colour': u'White:FFF', - 'description': u'Enter department to which this Contact belongs', - 'doctype': u'DocField', - 'fieldname': u'department', - 'fieldtype': u'Data', - 'label': u'Department', - 'options': u'Suggest', - 'permlevel': 0 - }, - - # DocField - { - 'colour': u'White:FFF', - 'description': u'Enter designation of this Contact', - 'doctype': u'DocField', - 'fieldname': u'designation', - 'fieldtype': u'Data', - 'label': u'Designation', - 'options': u'Suggest', - 'permlevel': 0 - }, - - # DocField - { - 'doctype': u'DocField', - 'fieldname': u'unsubscribed', - 'fieldtype': u'Check', - 'label': u'Unsubscribed', - 'permlevel': 0 - }, - - # DocField - { - 'doctype': u'DocField', - 'fieldname': u'trash_reason', - 'fieldtype': u'Small Text', - 'label': u'Trash Reason', - 'oldfieldname': u'trash_reason', - 'oldfieldtype': u'Small Text', - 'permlevel': 1 - } + { + "owner": "Administrator", + "docstatus": 0, + "creation": "2012-08-06 11:15:46", + "modified_by": "Administrator", + "modified": "2012-11-24 15:10:53" + }, + { + "in_create": 0, + "default_print_format": "Standard", + "doctype": "DocType", + "module": "Utilities", + "in_dialog": 1, + "document_type": "Master", + "name": "__common__" + }, + { + "name": "__common__", + "parent": "Contact", + "doctype": "DocField", + "parenttype": "DocType", + "parentfield": "fields" + }, + { + "name": "__common__", + "parent": "Contact", + "read": 1, + "doctype": "DocPerm", + "parenttype": "DocType", + "parentfield": "permissions" + }, + { + "name": "Contact", + "doctype": "DocType" + }, + { + "oldfieldtype": "Section Break", + "colour": "White:FFF", + "doctype": "DocField", + "label": "Contact Details", + "fieldname": "contact_details", + "fieldtype": "Section Break", + "permlevel": 0 + }, + { + "oldfieldtype": "Column Break", + "doctype": "DocField", + "width": "50%", + "fieldname": "column_break0", + "fieldtype": "Column Break", + "permlevel": 0 + }, + { + "oldfieldtype": "Data", + "doctype": "DocField", + "label": "First Name", + "oldfieldname": "first_name", + "fieldname": "first_name", + "fieldtype": "Data", + "reqd": 1, + "permlevel": 0 + }, + { + "oldfieldtype": "Data", + "doctype": "DocField", + "label": "Last Name", + "oldfieldname": "last_name", + "fieldname": "last_name", + "fieldtype": "Data", + "permlevel": 0 + }, + { + "print_hide": 0, + "oldfieldtype": "Link", + "colour": "White:FFF", + "doctype": "DocField", + "label": "Customer", + "oldfieldname": "customer", + "permlevel": 0, + "trigger": "Client", + "fieldname": "customer", + "fieldtype": "Link", + "depends_on": "eval:!doc.supplier && !doc.sales_partner", + "options": "Customer" + }, + { + "depends_on": "eval:!doc.supplier && !doc.sales_partner", + "colour": "White:FFF", + "doctype": "DocField", + "label": "Customer Name", + "fieldname": "customer_name", + "fieldtype": "Data", + "permlevel": 1 + }, + { + "depends_on": "eval:!doc.customer && !doc.sales_partner", + "colour": "White:FFF", + "doctype": "DocField", + "label": "Supplier", + "trigger": "Client", + "fieldname": "supplier", + "fieldtype": "Link", + "options": "Supplier", + "permlevel": 0 + }, + { + "depends_on": "eval:!doc.customer && !doc.sales_partner", + "colour": "White:FFF", + "allow_on_submit": 0, + "doctype": "DocField", + "label": "Supplier Name", + "fieldname": "supplier_name", + "fieldtype": "Data", + "permlevel": 1 + }, + { + "depends_on": "eval:!doc.customer && !doc.supplier", + "colour": "White:FFF", + "doctype": "DocField", + "label": "Sales Partner", + "options": "Sales Partner", + "fieldname": "sales_partner", + "fieldtype": "Link", + "permlevel": 0 + }, + { + "default": "0", + "oldfieldtype": "Select", + "colour": "White:FFF", + "doctype": "DocField", + "label": "Is Primary Contact", + "oldfieldname": "is_primary_contact", + "fieldname": "is_primary_contact", + "fieldtype": "Check", + "depends_on": "eval:(doc.customer || doc.supplier || doc.sales_partner)", + "permlevel": 0 + }, + { + "oldfieldtype": "Column Break", + "doctype": "DocField", + "width": "50%", + "fieldname": "column_break1", + "fieldtype": "Column Break", + "permlevel": 0 + }, + { + "oldfieldtype": "Data", + "colour": "White:FFF", + "doctype": "DocField", + "label": "Email Id", + "oldfieldname": "email_id", + "fieldname": "email_id", + "fieldtype": "Data", + "search_index": 1, + "reqd": 1, + "permlevel": 0 + }, + { + "oldfieldtype": "Data", + "doctype": "DocField", + "label": "Phone", + "oldfieldname": "contact_no", + "fieldname": "phone", + "fieldtype": "Data", + "reqd": 1, + "permlevel": 0 + }, + { + "oldfieldtype": "Data", + "doctype": "DocField", + "label": "Mobile No", + "oldfieldname": "mobile_no", + "fieldname": "mobile_no", + "fieldtype": "Data", + "permlevel": 0 + }, + { + "description": "Enter department to which this Contact belongs", + "colour": "White:FFF", + "doctype": "DocField", + "label": "Department", + "options": "Suggest", + "fieldname": "department", + "fieldtype": "Data", + "permlevel": 0 + }, + { + "description": "Enter designation of this Contact", + "colour": "White:FFF", + "doctype": "DocField", + "label": "Designation", + "options": "Suggest", + "fieldname": "designation", + "fieldtype": "Data", + "permlevel": 0 + }, + { + "doctype": "DocField", + "label": "Unsubscribed", + "fieldname": "unsubscribed", + "fieldtype": "Check", + "permlevel": 0 + }, + { + "oldfieldtype": "Small Text", + "doctype": "DocField", + "label": "Trash Reason", + "oldfieldname": "trash_reason", + "fieldname": "trash_reason", + "fieldtype": "Small Text", + "permlevel": 1 + }, + { + "create": 1, + "doctype": "DocPerm", + "write": 1, + "role": "System Manager", + "cancel": 1, + "permlevel": 0 + }, + { + "amend": 0, + "create": 1, + "doctype": "DocPerm", + "submit": 0, + "write": 1, + "role": "Sales Master Manager", + "cancel": 1, + "permlevel": 0 + }, + { + "create": 1, + "doctype": "DocPerm", + "write": 1, + "role": "Purchase Master Manager", + "cancel": 1, + "permlevel": 0 + }, + { + "create": 1, + "doctype": "DocPerm", + "write": 1, + "role": "Sales Manager", + "permlevel": 0 + }, + { + "create": 1, + "doctype": "DocPerm", + "write": 1, + "role": "Purchase Manager", + "permlevel": 0 + }, + { + "create": 1, + "doctype": "DocPerm", + "write": 1, + "role": "Maintenance Manager", + "permlevel": 0 + }, + { + "create": 1, + "doctype": "DocPerm", + "write": 1, + "role": "Accounts Manager", + "permlevel": 0 + }, + { + "create": 1, + "doctype": "DocPerm", + "write": 1, + "role": "Sales User", + "permlevel": 0 + }, + { + "create": 1, + "doctype": "DocPerm", + "write": 1, + "role": "Purchase User", + "permlevel": 0 + }, + { + "create": 1, + "doctype": "DocPerm", + "write": 1, + "role": "Maintenance User", + "permlevel": 0 + }, + { + "create": 1, + "doctype": "DocPerm", + "write": 1, + "role": "Accounts User", + "permlevel": 0 + }, + { + "doctype": "DocPerm", + "role": "All", + "permlevel": 1 + } ] \ No newline at end of file diff --git a/utilities/page/calendar/calendar.html b/utilities/page/calendar/calendar.html index 11dd3bf98a..0f8cc0ea47 100644 --- a/utilities/page/calendar/calendar.html +++ b/utilities/page/calendar/calendar.html @@ -13,7 +13,7 @@ - diff --git a/utilities/page/calendar/calendar.js b/utilities/page/calendar/calendar.js index 0f4ff3b639..e7abbabb63 100644 --- a/utilities/page/calendar/calendar.js +++ b/utilities/page/calendar/calendar.js @@ -241,9 +241,19 @@ Calendar.prototype.set_event = function(ev) { //------------------------------------------------------ -Calendar.prototype.refresh = function(viewtype){//Sets the viewtype of the Calendar and Calls the View class based on the viewtype +Calendar.prototype.clear = function() { + this.events = {}; + this.events_by_name = {}; + locals.Event = {}; +} + +Calendar.prototype.refresh = function(viewtype, clear_events){//Sets the viewtype of the Calendar and Calls the View class based on the viewtype if(viewtype) this.viewtype = viewtype; + + if(clear_events) + this.clear(); + // switch view if reqd if(this.cur_view.viewtype!=this.viewtype) { this.cur_view.hide(); @@ -252,6 +262,7 @@ Calendar.prototype.refresh = function(viewtype){//Sets the viewtype of the Calen this.cur_view.show(); } else{ + this.cur_view.get_events(); this.cur_view.refresh(this); } }