if cherrypy.request.method != "POST":
raise cherrypy.HTTPError(405,
"You must submit this request with POST")
+ if not cherrypy.request.headers.get('Referer', '').startswith('https://' + config.web.hostname):
+ raise cherrypy.HTTPError(403, "This form is only usable when submitted from another page on this site. If you receive this message in error, check your browser's Referer settings.")
cherrypy.tools.require_POST = cherrypy.Tool('on_start_resource',
require_POST, priority=150)