brotherton-erpnext/website/__init__.py

48 lines
1.4 KiB
Python

from __future__ import unicode_literals
install_docs = [
{"doctype":"Role", "role_name":"Blogger", "name":"Blogger"},
{"doctype":"Role", "role_name":"Website Manager", "name":"Website Manager"},
]
import webnotes
max_tickets_per_hour = 200
@webnotes.whitelist(allow_guest=True)
def send_message():
from webnotes.model.doc import Document
args = webnotes.form_dict
d = Document('Support Ticket')
d.subject = webnotes.form_dict.get('subject', 'Website Query')
d.description = webnotes.form_dict.get('message')
d.raised_by = webnotes.form_dict.get('sender')
if not d.description:
webnotes.response["message"] = 'Please write something'
return
if not d.raised_by:
webnotes.response["message"] = 'Email Id Required'
return
# guest method, cap max writes per hour
if webnotes.conn.sql("""select count(*) from `tabSupport Ticket`
where TIMEDIFF(NOW(), modified) < '01:00:00'""")[0][0] > max_tickets_per_hour:
webnotes.response["message"] = "Sorry: we believe we have received an unreasonably high number of requests of this kind. Please try later"
return
d.save()
webnotes.response["message"] = 'Thank You'
def get_site_address():
from webnotes.utils import get_request_site_address
url = get_request_site_address()
if not url or url=='http://localhost':
new_url = webnotes.conn.get_value('Website Settings', 'Website Settings',
'subdomain')
if new_url:
url = "http://" + new_url
return url