support ticket response deprecated, moved to communication

This commit is contained in:
Rushabh Mehta 2012-11-24 15:26:48 +05:30
parent 36774bdcbb
commit bf09c672cd
11 changed files with 1270 additions and 1464 deletions

View File

@ -1,4 +1,7 @@
erpnext.updates = [ erpnext.updates = [
["24ht November 2012", [
"Support Ticket: Support Ticket Response is now Communication",
]],
["23rd November 2012", [ ["23rd November 2012", [
"General Ledger: Auto-suggest Accounts for filtering", "General Ledger: Auto-suggest Accounts for filtering",
"Calendar: User Interface Fixes, small text for events", "Calendar: User Interface Fixes, small text for events",

View File

@ -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")

View File

@ -679,4 +679,8 @@ patch_list = [
'patch_module': 'patches.november_2012', 'patch_module': 'patches.november_2012',
'patch_file': 'remove_old_unbilled_items_report', 'patch_file': 'remove_old_unbilled_items_report',
}, },
{
'patch_module': 'patches.november_2012',
'patch_file': 'support_ticket_response_to_communication',
},
] ]

File diff suppressed because it is too large Load Diff

View File

@ -1,406 +1,340 @@
# DocType, Communication
[ [
{
# These values are common in all dictionaries "owner": "Administrator",
{ "docstatus": 0,
u'creation': '2012-08-31 17:14:18', "creation": "2012-11-14 12:25:16",
u'docstatus': 0, "modified_by": "Administrator",
u'modified': '2012-11-14 12:15:56', "modified": "2012-11-24 15:22:32"
u'modified_by': u'Administrator', },
u'owner': u'Administrator' {
}, "allow_attach": 1,
"doctype": "DocType",
# These values are common for all DocType "module": "Support",
{ "name": "__common__",
'allow_attach': 1, "in_dialog": 1,
'description': u'Keep a track of all communications', "document_type": "Master",
u'doctype': u'DocType', "description": "Keep a track of all communications"
'document_type': u'Master', },
'in_dialog': 1, {
'module': u'Support', "name": "__common__",
u'name': u'__common__', "parent": "Communication",
'version': 1 "doctype": "DocField",
}, "parenttype": "DocType",
"parentfield": "fields"
# These values are common for all DocField },
{ {
u'doctype': u'DocField', "name": "__common__",
u'name': u'__common__', "parent": "Communication",
'parent': u'Communication', "read": 1,
'parentfield': u'fields', "doctype": "DocPerm",
'parenttype': u'DocType' "write": 1,
}, "parenttype": "DocType",
"parentfield": "permissions"
# These values are common for all DocPerm },
{ {
u'doctype': u'DocPerm', "name": "Communication",
u'name': u'__common__', "doctype": "DocType"
'parent': u'Communication', },
'parentfield': u'permissions', {
'parenttype': u'DocType', "doctype": "DocField",
'read': 1, "label": "Basic Info",
'write': 1 "fieldname": "basic_info",
}, "fieldtype": "Section Break",
"permlevel": 0
# DocType, Communication },
{ {
u'doctype': u'DocType', "default": "COMM-",
u'name': u'Communication' "colour": "White:FFF",
}, "doctype": "DocField",
"label": "Naming Series",
# DocField "options": "COMM-",
{ "fieldname": "naming_series",
u'doctype': u'DocField', "fieldtype": "Select",
'fieldname': u'basic_info', "hidden": 1,
'fieldtype': u'Section Break', "permlevel": 0
'label': u'Basic Info', },
'permlevel': 0 {
}, "colour": "White:FFF",
"doctype": "DocField",
# DocField "label": "Subject",
{ "fieldname": "subject",
'colour': u'White:FFF', "fieldtype": "Data",
'default': u'COMM-', "reqd": 1,
u'doctype': u'DocField', "permlevel": 0
'fieldname': u'naming_series', },
'fieldtype': u'Select', {
'hidden': 1, "colour": "White:FFF",
'label': u'Naming Series', "doctype": "DocField",
'options': u'COMM-', "label": "Content",
'permlevel': 0 "width": "400",
}, "fieldname": "content",
"fieldtype": "Text",
# DocField "reqd": 0,
{ "permlevel": 0
u'doctype': u'DocField', },
'fieldname': u'category', {
'fieldtype': u'Select', "doctype": "DocField",
'label': u'Category', "options": "simple",
'options': u'\nSales\nComplaint\nHelp\nSuggestion\nMiscellaneous\nSent Mail', "fieldname": "section_break1",
'permlevel': 0, "fieldtype": "Section Break",
'reqd': 1 "permlevel": 0
}, },
{
# DocField "doctype": "DocField",
{ "label": "Category",
u'doctype': u'DocField', "options": "\nSales\nComplaint\nHelp\nSuggestion\nMiscellaneous\nSent Mail",
'fieldname': u'action', "fieldname": "category",
'fieldtype': u'Select', "fieldtype": "Select",
'label': u'Action', "reqd": 0,
'options': u'\nCreated Opportunity\nSent Quotation\nCreated Support Ticket\nCreated Customer Issue\nNo Action\nSent Mail', "permlevel": 0
'permlevel': 0, },
'reqd': 1 {
}, "doctype": "DocField",
"fieldname": "column_break2",
# DocField "fieldtype": "Column Break",
{ "permlevel": 0
u'doctype': u'DocField', },
'fieldname': u'next_communication_date', {
'fieldtype': u'Date', "doctype": "DocField",
'label': u'Next Communcation On', "label": "Next Communcation On",
'permlevel': 0 "fieldname": "next_communication_date",
}, "fieldtype": "Date",
"permlevel": 0
# DocField },
{ {
u'doctype': u'DocField', "doctype": "DocField",
'fieldname': u'column_break2', "label": "Action",
'fieldtype': u'Column Break', "options": "\nCreated Opportunity\nSent Quotation\nCreated Support Ticket\nCreated Customer Issue\nNo Action\nSent Mail",
'permlevel': 0 "fieldname": "action",
}, "fieldtype": "Select",
"reqd": 0,
# DocField "permlevel": 0
{ },
u'doctype': u'DocField', {
'fieldname': u'subject', "doctype": "DocField",
'fieldtype': u'Small Text', "label": "Additional Info",
'label': u'Subject', "fieldname": "additional_info",
'permlevel': 0, "fieldtype": "Section Break",
'reqd': 1 "permlevel": 0
}, },
{
# DocField "colour": "White:FFF",
{ "doctype": "DocField",
u'doctype': u'DocField', "label": "Related To",
'fieldname': u'section_break1', "fieldname": "column_break3",
'fieldtype': u'Section Break', "fieldtype": "Column Break",
'options': u'simple', "permlevel": 0
'permlevel': 0 },
}, {
"doctype": "DocField",
# DocField "label": "Lead",
{ "options": "Lead",
u'doctype': u'DocField', "fieldname": "lead",
'fieldname': u'content', "fieldtype": "Link",
'fieldtype': u'Text', "hidden": 0,
'label': u'Content', "permlevel": 0
'permlevel': 0, },
'reqd': 0 {
}, "doctype": "DocField",
"label": "Contact",
# DocField "options": "Contact",
{ "fieldname": "contact",
u'doctype': u'DocField', "fieldtype": "Link",
'fieldname': u'additional_info', "permlevel": 0
'fieldtype': u'Section Break', },
'label': u'Additional Info', {
'permlevel': 0 "doctype": "DocField",
}, "label": "Customer",
"options": "Customer",
# DocField "fieldname": "customer",
{ "fieldtype": "Link",
'colour': u'White:FFF', "permlevel": 0
u'doctype': u'DocField', },
'fieldname': u'column_break3', {
'fieldtype': u'Column Break', "doctype": "DocField",
'label': u'Related To', "label": "Supplier",
'permlevel': 0 "options": "Supplier",
}, "fieldname": "supplier",
"fieldtype": "Link",
# DocField "permlevel": 0
{ },
u'doctype': u'DocField', {
'fieldname': u'lead', "doctype": "DocField",
'fieldtype': u'Link', "label": "Opportunity",
'hidden': 0, "options": "Opportunity",
'label': u'Lead', "fieldname": "opportunity",
'options': u'Lead', "fieldtype": "Link",
'permlevel': 0 "permlevel": 0
}, },
{
# DocField "doctype": "DocField",
{ "label": "Quotation",
u'doctype': u'DocField', "options": "Quotation",
'fieldname': u'contact', "fieldname": "quotation",
'fieldtype': u'Link', "fieldtype": "Link",
'label': u'Contact', "permlevel": 0
'options': u'Contact', },
'permlevel': 0 {
}, "doctype": "DocField",
"label": "Support Ticket",
# DocField "options": "Support Ticket",
{ "fieldname": "support_ticket",
u'doctype': u'DocField', "fieldtype": "Link",
'fieldname': u'customer', "permlevel": 0
'fieldtype': u'Link', },
'label': u'Customer', {
'options': u'Customer', "doctype": "DocField",
'permlevel': 0 "fieldname": "column_break1",
}, "fieldtype": "Column Break",
"permlevel": 0
# DocField },
{ {
u'doctype': u'DocField', "doctype": "DocField",
'fieldname': u'supplier', "label": "Communication Medium",
'fieldtype': u'Link', "options": "\nChat\nPhone\nEmail\nSMS\nVisit\nOther",
'label': u'Supplier', "fieldname": "communication_medium",
'options': u'Supplier', "fieldtype": "Select",
'permlevel': 0 "permlevel": 0
}, },
{
# DocField "doctype": "DocField",
{ "label": "Phone No.",
u'doctype': u'DocField', "fieldname": "phone_no",
'fieldname': u'opportunity', "fieldtype": "Data",
'fieldtype': u'Link', "permlevel": 0
'label': u'Opportunity', },
'options': u'Opportunity', {
'permlevel': 0 "doctype": "DocField",
}, "label": "Email Address",
"fieldname": "email_address",
# DocField "fieldtype": "Data",
{ "permlevel": 0
u'doctype': u'DocField', },
'fieldname': u'quotation', {
'fieldtype': u'Link', "doctype": "DocField",
'label': u'Quotation', "options": "simple",
'options': u'Quotation', "fieldname": "section_break2",
'permlevel': 0 "fieldtype": "Section Break",
}, "permlevel": 0
},
# DocField {
{ "doctype": "DocField",
u'doctype': u'DocField', "label": "By",
'fieldname': u'support_ticket', "fieldname": "column_break4",
'fieldtype': u'Link', "fieldtype": "Column Break",
'label': u'Support Ticket', "permlevel": 0
'options': u'Support Ticket', },
'permlevel': 0 {
}, "default": "__user",
"colour": "White:FFF",
# DocField "doctype": "DocField",
{ "label": "User",
u'doctype': u'DocField', "options": "Profile",
'fieldname': u'column_break1', "fieldname": "user",
'fieldtype': u'Column Break', "fieldtype": "Link",
'permlevel': 0 "permlevel": 1
}, },
{
# DocField "doctype": "DocField",
{ "label": "Sales Person",
u'doctype': u'DocField', "options": "Sales Person",
'fieldname': u'communication_medium', "fieldname": "sales_person",
'fieldtype': u'Select', "fieldtype": "Link",
'label': u'Communication Medium', "permlevel": 1
'options': u'\nChat\nPhone\nEmail\nSMS\nVisit\nOther', },
'permlevel': 0 {
}, "doctype": "DocField",
"label": "On",
# DocField "fieldname": "column_break5",
{ "fieldtype": "Column Break",
u'doctype': u'DocField', "permlevel": 0
'fieldname': u'phone_no', },
'fieldtype': u'Data', {
'label': u'Phone No.', "default": "Today",
'permlevel': 0 "colour": "White:FFF",
}, "doctype": "DocField",
"label": "Date",
# DocField "fieldname": "communication_date",
{ "fieldtype": "Date",
u'doctype': u'DocField', "permlevel": 0
'fieldname': u'email_address', },
'fieldtype': u'Data', {
'label': u'Email Address', "print_hide": 1,
'permlevel': 0 "no_copy": 1,
}, "doctype": "DocField",
"label": "File List",
# DocField "fieldname": "file_list",
{ "fieldtype": "Text",
u'doctype': u'DocField', "hidden": 1,
'fieldname': u'section_break2', "permlevel": 0
'fieldtype': u'Section Break', },
'options': u'simple', {
'permlevel': 0 "print_hide": 1,
}, "no_copy": 1,
"doctype": "DocField",
# DocField "label": "User Tags",
{ "fieldname": "_user_tags",
u'doctype': u'DocField', "fieldtype": "Data",
'fieldname': u'column_break4', "hidden": 1,
'fieldtype': u'Column Break', "permlevel": 0
'label': u'By', },
'permlevel': 0 {
}, "amend": 0,
"create": 1,
# DocField "doctype": "DocPerm",
{ "submit": 0,
'colour': u'White:FFF', "role": "Support Team",
'default': u'__user', "cancel": 1,
u'doctype': u'DocField', "permlevel": 0
'fieldname': u'user', },
'fieldtype': u'Link', {
'label': u'User', "amend": 0,
'options': u'Profile', "create": 1,
'permlevel': 1 "doctype": "DocPerm",
}, "submit": 0,
"role": "Sales Manager",
# DocField "cancel": 1,
{ "permlevel": 0
u'doctype': u'DocField', },
'fieldname': u'sales_person', {
'fieldtype': u'Link', "amend": 0,
'label': u'Sales Person', "create": 1,
'options': u'Sales Person', "doctype": "DocPerm",
'permlevel': 1 "submit": 0,
}, "role": "Sales User",
"cancel": 1,
# DocField "permlevel": 0
{ },
u'doctype': u'DocField', {
'fieldname': u'column_break5', "amend": 0,
'fieldtype': u'Column Break', "create": 0,
'label': u'On', "doctype": "DocPerm",
'permlevel': 0 "submit": 0,
}, "role": "Sales Manager",
"cancel": 0,
# DocField "permlevel": 1
{ },
'colour': u'White:FFF', {
'default': u'Today', "amend": 0,
u'doctype': u'DocField', "create": 0,
'fieldname': u'communication_date', "doctype": "DocPerm",
'fieldtype': u'Date', "submit": 0,
'label': u'Date', "role": "Support Manager",
'permlevel': 0 "cancel": 0,
}, "permlevel": 1
},
# DocField {
{ "create": 1,
u'doctype': u'DocField', "doctype": "DocPerm",
'fieldname': u'file_list', "role": "Support Manager",
'fieldtype': u'Text', "cancel": 1,
'hidden': 1, "permlevel": 0
'label': u'File List', },
'no_copy': 1, {
'permlevel': 0, "create": 1,
'print_hide': 1 "doctype": "DocPerm",
}, "role": "System Manager",
"cancel": 1,
# DocField "permlevel": 0
{ }
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'
}
] ]

View File

@ -75,10 +75,9 @@ $.extend(cur_frm.cscript, {
// render first message // render first message
new EmailMessage($a(cur_frm.fields_dict['thread_html'].wrapper, 'div'), { new EmailMessage($a(cur_frm.fields_dict['thread_html'].wrapper, 'div'), {
from_email: doc.raised_by, email_address: doc.raised_by,
creation: doc.creation, creation: doc.creation,
mail: doc.description, content: doc.description,
content_type: doc.content_type
}, null, -1) }, null, -1)
// render thread // render thread
@ -148,8 +147,8 @@ EmailMessage = function(parent, args, list, idx) {
$.extend(this, args); $.extend(this, args);
this.make = function() { this.make = function() {
this.creation = wn.datetime.str_to_user(this.creation); this.creation = wn.datetime.str_to_user(this.creation);
if(this.from_email) if(this.email_address)
this.from_email = this.from_email.replace('<', '&lt;').replace('>', '&gt;'); this.email_address = this.email_address.replace('<', '&lt;').replace('>', '&gt;');
// main wrapper // main wrapper
w = $a(parent, 'div', 'support-ticket-wrapper well'); w = $a(parent, 'div', 'support-ticket-wrapper well');
@ -157,7 +156,7 @@ EmailMessage = function(parent, args, list, idx) {
// sender and timestamp // sender and timestamp
$a($a(w, 'div', 'support-ticket-title'), $a($a(w, 'div', 'support-ticket-title'),
'span', 'link_type', {}, repl('By %(from_email)s on %(creation)s:', this), 'span', 'link_type', {}, repl('By %(email_address)s on %(creation)s:', this),
function() { function() {
// toggle message display on timestamp // toggle message display on timestamp
if(me.message.style.display.toLowerCase()=='none') { if(me.message.style.display.toLowerCase()=='none') {
@ -175,11 +174,10 @@ EmailMessage = function(parent, args, list, idx) {
wordWrap: 'break-word', textWrap: 'normal', overflowX: 'auto'}, wordWrap: 'break-word', textWrap: 'normal', overflowX: 'auto'},
// newlines for text email // newlines for text email
(this.content_type=='text/plain' (this.content.indexOf("<br>")== -1 && this.content.indexOf("<p>")== -1)
? this.mail ? this.content.replace(/\n[ ]*\n[\n\t ]*/g, '\n') // excess whitespace
.replace(/\n[ ]*\n[\n\t ]*/g, '\n') // excess whitespace
.replace(/\n/g, '<br>') .replace(/\n/g, '<br>')
: this.mail) : this.content
); );
// show only first and last message // show only first and last message

View File

@ -87,11 +87,15 @@ class DocType(TransactionBase):
Creates a new Communication record Creates a new Communication record
""" """
# add to Communication # add to Communication
from webnotes.model.doc import Document import email.utils
d = Document('Communication')
d = webnotes.doc('Communication')
d.naming_series = "COMM-" d.naming_series = "COMM-"
d.subject = self.doc.subject d.subject = self.doc.subject
d.email_address = from_email or webnotes.user.name 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.support_ticket = self.doc.name
d.content = response d.content = response
d.communication_medium = "Email" d.communication_medium = "Email"

View File

@ -1 +0,0 @@
from __future__ import unicode_literals

View File

@ -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 <http://www.gnu.org/licenses/>.
from __future__ import unicode_literals
import webnotes
class DocType:
def __init__(self, d, dl):
self.doc, self.doclist = d, dl

View File

@ -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'
}
]

View File

@ -1,257 +1,301 @@
# DocType, Contact
[ [
{
# These values are common in all dictionaries "owner": "Administrator",
{ "docstatus": 0,
'creation': '2012-07-03 14:22:38', "creation": "2012-08-06 11:15:46",
'docstatus': 0, "modified_by": "Administrator",
'modified': '2012-08-02 13:16:48', "modified": "2012-11-24 15:10:53"
'modified_by': u'Administrator', },
'owner': u'Administrator' {
}, "in_create": 0,
"default_print_format": "Standard",
# These values are common for all DocType "doctype": "DocType",
{ "module": "Utilities",
'_last_update': u'1327314958', "in_dialog": 1,
'allow_trash': 1, "document_type": "Master",
'colour': u'White:FFF', "name": "__common__"
'default_print_format': u'Standard', },
'doctype': 'DocType', {
'document_type': u'Master', "name": "__common__",
'in_create': 0, "parent": "Contact",
'in_dialog': 1, "doctype": "DocField",
'module': u'Utilities', "parenttype": "DocType",
'name': '__common__', "parentfield": "fields"
'section_style': u'Simple', },
'server_code_error': u' ', {
'show_in_menu': 0, "name": "__common__",
'subject': u'%(first_name)s %(last_name)s - Email: %(email_id)s | Contact: %(phone)s | Mobile: %(mobile_no)s', "parent": "Contact",
'version': 1 "read": 1,
}, "doctype": "DocPerm",
"parenttype": "DocType",
# These values are common for all DocField "parentfield": "permissions"
{ },
'doctype': u'DocField', {
'name': '__common__', "name": "Contact",
'parent': u'Contact', "doctype": "DocType"
'parentfield': u'fields', },
'parenttype': u'DocType' {
}, "oldfieldtype": "Section Break",
"colour": "White:FFF",
# DocType, Contact "doctype": "DocField",
{ "label": "Contact Details",
'doctype': 'DocType', "fieldname": "contact_details",
'name': u'Contact' "fieldtype": "Section Break",
}, "permlevel": 0
},
# DocField {
{ "oldfieldtype": "Column Break",
'colour': u'White:FFF', "doctype": "DocField",
'doctype': u'DocField', "width": "50%",
'fieldname': u'contact_details', "fieldname": "column_break0",
'fieldtype': u'Section Break', "fieldtype": "Column Break",
'label': u'Contact Details', "permlevel": 0
'oldfieldtype': u'Section Break', },
'permlevel': 0 {
}, "oldfieldtype": "Data",
"doctype": "DocField",
# DocField "label": "First Name",
{ "oldfieldname": "first_name",
'doctype': u'DocField', "fieldname": "first_name",
'fieldname': u'column_break0', "fieldtype": "Data",
'fieldtype': u'Column Break', "reqd": 1,
'oldfieldtype': u'Column Break', "permlevel": 0
'permlevel': 0, },
'width': u'50%' {
}, "oldfieldtype": "Data",
"doctype": "DocField",
# DocField "label": "Last Name",
{ "oldfieldname": "last_name",
'doctype': u'DocField', "fieldname": "last_name",
'fieldname': u'first_name', "fieldtype": "Data",
'fieldtype': u'Data', "permlevel": 0
'label': u'First Name', },
'oldfieldname': u'first_name', {
'oldfieldtype': u'Data', "print_hide": 0,
'permlevel': 0, "oldfieldtype": "Link",
'reqd': 1 "colour": "White:FFF",
}, "doctype": "DocField",
"label": "Customer",
# DocField "oldfieldname": "customer",
{ "permlevel": 0,
'doctype': u'DocField', "trigger": "Client",
'fieldname': u'last_name', "fieldname": "customer",
'fieldtype': u'Data', "fieldtype": "Link",
'label': u'Last Name', "depends_on": "eval:!doc.supplier && !doc.sales_partner",
'oldfieldname': u'last_name', "options": "Customer"
'oldfieldtype': u'Data', },
'permlevel': 0 {
}, "depends_on": "eval:!doc.supplier && !doc.sales_partner",
"colour": "White:FFF",
# DocField "doctype": "DocField",
{ "label": "Customer Name",
'colour': u'White:FFF', "fieldname": "customer_name",
'depends_on': u'eval:!doc.supplier && !doc.sales_partner', "fieldtype": "Data",
'doctype': u'DocField', "permlevel": 1
'fieldname': u'customer', },
'fieldtype': u'Link', {
'label': u'Customer', "depends_on": "eval:!doc.customer && !doc.sales_partner",
'oldfieldname': u'customer', "colour": "White:FFF",
'oldfieldtype': u'Link', "doctype": "DocField",
'options': u'Customer', "label": "Supplier",
'permlevel': 0, "trigger": "Client",
'print_hide': 0, "fieldname": "supplier",
'trigger': u'Client' "fieldtype": "Link",
}, "options": "Supplier",
"permlevel": 0
# DocField },
{ {
'colour': u'White:FFF', "depends_on": "eval:!doc.customer && !doc.sales_partner",
'depends_on': u'eval:!doc.supplier && !doc.sales_partner', "colour": "White:FFF",
'doctype': u'DocField', "allow_on_submit": 0,
'fieldname': u'customer_name', "doctype": "DocField",
'fieldtype': u'Data', "label": "Supplier Name",
'label': u'Customer Name', "fieldname": "supplier_name",
'permlevel': 1 "fieldtype": "Data",
}, "permlevel": 1
},
# DocField {
{ "depends_on": "eval:!doc.customer && !doc.supplier",
'colour': u'White:FFF', "colour": "White:FFF",
'depends_on': u'eval:!doc.customer && !doc.sales_partner', "doctype": "DocField",
'doctype': u'DocField', "label": "Sales Partner",
'fieldname': u'supplier', "options": "Sales Partner",
'fieldtype': u'Link', "fieldname": "sales_partner",
'label': u'Supplier', "fieldtype": "Link",
'options': u'Supplier', "permlevel": 0
'permlevel': 0, },
'trigger': u'Client' {
}, "default": "0",
"oldfieldtype": "Select",
# DocField "colour": "White:FFF",
{ "doctype": "DocField",
'allow_on_submit': 0, "label": "Is Primary Contact",
'colour': u'White:FFF', "oldfieldname": "is_primary_contact",
'depends_on': u'eval:!doc.customer && !doc.sales_partner', "fieldname": "is_primary_contact",
'doctype': u'DocField', "fieldtype": "Check",
'fieldname': u'supplier_name', "depends_on": "eval:(doc.customer || doc.supplier || doc.sales_partner)",
'fieldtype': u'Data', "permlevel": 0
'label': u'Supplier Name', },
'permlevel': 1 {
}, "oldfieldtype": "Column Break",
"doctype": "DocField",
# DocField "width": "50%",
{ "fieldname": "column_break1",
'colour': u'White:FFF', "fieldtype": "Column Break",
'depends_on': u'eval:!doc.customer && !doc.supplier', "permlevel": 0
'doctype': u'DocField', },
'fieldname': u'sales_partner', {
'fieldtype': u'Link', "oldfieldtype": "Data",
'label': u'Sales Partner', "colour": "White:FFF",
'options': u'Sales Partner', "doctype": "DocField",
'permlevel': 0 "label": "Email Id",
}, "oldfieldname": "email_id",
"fieldname": "email_id",
# DocField "fieldtype": "Data",
{ "search_index": 1,
'colour': u'White:FFF', "reqd": 1,
'default': u'0', "permlevel": 0
'depends_on': u'eval:(doc.customer || doc.supplier || doc.sales_partner)', },
'doctype': u'DocField', {
'fieldname': u'is_primary_contact', "oldfieldtype": "Data",
'fieldtype': u'Check', "doctype": "DocField",
'label': u'Is Primary Contact', "label": "Phone",
'oldfieldname': u'is_primary_contact', "oldfieldname": "contact_no",
'oldfieldtype': u'Select', "fieldname": "phone",
'permlevel': 0 "fieldtype": "Data",
}, "reqd": 1,
"permlevel": 0
# DocField },
{ {
'doctype': u'DocField', "oldfieldtype": "Data",
'fieldname': u'column_break1', "doctype": "DocField",
'fieldtype': u'Column Break', "label": "Mobile No",
'oldfieldtype': u'Column Break', "oldfieldname": "mobile_no",
'permlevel': 0, "fieldname": "mobile_no",
'width': u'50%' "fieldtype": "Data",
}, "permlevel": 0
},
# DocField {
{ "description": "Enter department to which this Contact belongs",
'doctype': u'DocField', "colour": "White:FFF",
'fieldname': u'email_id', "doctype": "DocField",
'fieldtype': u'Data', "label": "Department",
'label': u'Email Id', "options": "Suggest",
'oldfieldname': u'email_id', "fieldname": "department",
'oldfieldtype': u'Data', "fieldtype": "Data",
'permlevel': 0, "permlevel": 0
'reqd': 1 },
}, {
"description": "Enter designation of this Contact",
# DocField "colour": "White:FFF",
{ "doctype": "DocField",
'doctype': u'DocField', "label": "Designation",
'fieldname': u'phone', "options": "Suggest",
'fieldtype': u'Data', "fieldname": "designation",
'label': u'Phone', "fieldtype": "Data",
'oldfieldname': u'contact_no', "permlevel": 0
'oldfieldtype': u'Data', },
'permlevel': 0, {
'reqd': 1 "doctype": "DocField",
}, "label": "Unsubscribed",
"fieldname": "unsubscribed",
# DocField "fieldtype": "Check",
{ "permlevel": 0
'doctype': u'DocField', },
'fieldname': u'mobile_no', {
'fieldtype': u'Data', "oldfieldtype": "Small Text",
'label': u'Mobile No', "doctype": "DocField",
'oldfieldname': u'mobile_no', "label": "Trash Reason",
'oldfieldtype': u'Data', "oldfieldname": "trash_reason",
'permlevel': 0 "fieldname": "trash_reason",
}, "fieldtype": "Small Text",
"permlevel": 1
# DocField },
{ {
'colour': u'White:FFF', "create": 1,
'description': u'Enter department to which this Contact belongs', "doctype": "DocPerm",
'doctype': u'DocField', "write": 1,
'fieldname': u'department', "role": "System Manager",
'fieldtype': u'Data', "cancel": 1,
'label': u'Department', "permlevel": 0
'options': u'Suggest', },
'permlevel': 0 {
}, "amend": 0,
"create": 1,
# DocField "doctype": "DocPerm",
{ "submit": 0,
'colour': u'White:FFF', "write": 1,
'description': u'Enter designation of this Contact', "role": "Sales Master Manager",
'doctype': u'DocField', "cancel": 1,
'fieldname': u'designation', "permlevel": 0
'fieldtype': u'Data', },
'label': u'Designation', {
'options': u'Suggest', "create": 1,
'permlevel': 0 "doctype": "DocPerm",
}, "write": 1,
"role": "Purchase Master Manager",
# DocField "cancel": 1,
{ "permlevel": 0
'doctype': u'DocField', },
'fieldname': u'unsubscribed', {
'fieldtype': u'Check', "create": 1,
'label': u'Unsubscribed', "doctype": "DocPerm",
'permlevel': 0 "write": 1,
}, "role": "Sales Manager",
"permlevel": 0
# DocField },
{ {
'doctype': u'DocField', "create": 1,
'fieldname': u'trash_reason', "doctype": "DocPerm",
'fieldtype': u'Small Text', "write": 1,
'label': u'Trash Reason', "role": "Purchase Manager",
'oldfieldname': u'trash_reason', "permlevel": 0
'oldfieldtype': u'Small Text', },
'permlevel': 1 {
} "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
}
] ]