Merge pull request #1623 from rmehta/email-autosuggest-fix
[fix] email autosuggest should fallback to user
This commit is contained in:
commit
79b2c4e9f3
2 changed files with 15 additions and 14 deletions
|
|
@ -28,17 +28,19 @@ def sendmail_to_system_managers(subject, content):
|
|||
send(get_email(get_system_managers(), None, content, subject))
|
||||
|
||||
@frappe.whitelist()
|
||||
def get_contact_list():
|
||||
def get_contact_list(doctype, fieldname, txt):
|
||||
"""Returns contacts (from autosuggest)"""
|
||||
cond = ['`%s` like "%s%%"' % (frappe.db.escape(f),
|
||||
frappe.db.escape(frappe.form_dict.get('txt'))) for f in frappe.form_dict.get('where').split(',')]
|
||||
cl = frappe.db.sql("select `%s` from `tab%s` where %s" % (
|
||||
frappe.db.escape(frappe.form_dict.get('select'))
|
||||
,frappe.db.escape(frappe.form_dict.get('from'))
|
||||
,' OR '.join(cond)
|
||||
)
|
||||
)
|
||||
frappe.response['cl'] = filter(None, [c[0] for c in cl])
|
||||
txt = txt.replace('%', '')
|
||||
|
||||
try:
|
||||
return filter(None, frappe.db.sql_list('select `{0}` from `tab{1}` where `{0}` like %s'.format(fieldname, doctype),
|
||||
'%' + txt + '%'))
|
||||
except Exception, e:
|
||||
if e.args[0]==1146:
|
||||
# no Contact, use User
|
||||
return filter(None, frappe.db.sql_list('select email from tabUser where email like %s', ('%' + txt + '%')))
|
||||
else:
|
||||
raise
|
||||
|
||||
def get_system_managers():
|
||||
return frappe.db.sql_list("""select parent FROM tabUserRole
|
||||
|
|
|
|||
|
|
@ -488,15 +488,14 @@ frappe.views.CommunicationComposer = Class.extend({
|
|||
return frappe.call({
|
||||
method:'frappe.email.get_contact_list',
|
||||
args: {
|
||||
'select': "email_id",
|
||||
'from': "Contact",
|
||||
'where': "email_id",
|
||||
'fieldname': "email_id",
|
||||
'doctype': "Contact",
|
||||
'txt': extractLast(request.term).value || '%'
|
||||
},
|
||||
quiet: true,
|
||||
callback: function(r) {
|
||||
response($.ui.autocomplete.filter(
|
||||
r.cl || [], extractLast(request.term)));
|
||||
r.message || [], extractLast(request.term)));
|
||||
}
|
||||
});
|
||||
},
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue