From 2716f4a613c7fabbd7bcbf9f13ed0c7dc87c8fcd Mon Sep 17 00:00:00 2001 From: Rushabh Mehta Date: Mon, 1 Jun 2015 17:43:08 +0530 Subject: [PATCH] [fixes] [tests] web forms --- frappe/desk/doctype/event/event.py | 4 ++++ frappe/templates/generators/web_form.html | 2 +- frappe/templates/pages/list.py | 4 +++- frappe/website/doctype/web_form/web_form.py | 16 +++++++++------- 4 files changed, 17 insertions(+), 9 deletions(-) diff --git a/frappe/desk/doctype/event/event.py b/frappe/desk/doctype/event/event.py index 29f964315c..ba18cb506e 100644 --- a/frappe/desk/doctype/event/event.py +++ b/frappe/desk/doctype/event/event.py @@ -11,6 +11,10 @@ from frappe.utils.user import get_enabled_system_users weekdays = ["monday", "tuesday", "wednesday", "thursday", "friday", "saturday", "sunday"] class Event(Document): + def get_route(self): + """for test-case""" + return "/Event/" + self.name + def validate(self): if self.starts_on and self.ends_on and self.starts_on > self.ends_on: frappe.msgprint(frappe._("Event end must be after start"), raise_exception=True) diff --git a/frappe/templates/generators/web_form.html b/frappe/templates/generators/web_form.html index 75ee451d84..118e13f395 100644 --- a/frappe/templates/generators/web_form.html +++ b/frappe/templates/generators/web_form.html @@ -163,7 +163,7 @@ {% endfor %} -{% if allow_comments -%} +{% if allow_comments and not params.new -%}


{{ _("Comments") }}

diff --git a/frappe/templates/pages/list.py b/frappe/templates/pages/list.py index 6129f10585..38d0781abb 100644 --- a/frappe/templates/pages/list.py +++ b/frappe/templates/pages/list.py @@ -60,7 +60,9 @@ def get(doctype, txt=None, limit_start=0, **kwargs): row_template = list_context.row_template or "templates/includes/list/row_template.html" for doc in raw_result: doc.doctype = doctype - new_context = { "doc": doc, "meta": meta, "pathname": frappe.local.request.path.strip("/ ") } + new_context = { "doc": doc, "meta": meta } + if not frappe.flags.in_test: + new_context.pathname = frappe.local.request.path.strip("/ ") new_context.update(list_context) rendered_row = frappe.render_template(row_template, new_context, is_path=True) result.append(rendered_row) diff --git a/frappe/website/doctype/web_form/web_form.py b/frappe/website/doctype/web_form/web_form.py index ae1fb66423..4e098ed5c8 100644 --- a/frappe/website/doctype/web_form/web_form.py +++ b/frappe/website/doctype/web_form/web_form.py @@ -22,7 +22,7 @@ class WebForm(WebsiteGenerator): if self.login_required and frappe.session.user != "Guest": if self.allow_edit: if self.allow_multiple: - if not context.params.name: + if not context.params.name and not context.params.new: frappe.form_dict.doctype = self.doc_type get_list_context(context) context.is_list = True @@ -32,16 +32,18 @@ class WebForm(WebsiteGenerator): if name: frappe.form_dict.name = name - if frappe.form_dict.name: + if frappe.form_dict.name or frappe.form_dict.new: context.layout = self.get_layout() - context.doc = frappe.get_doc(self.doc_type, frappe.form_dict.name) - context.title = context.doc.get(context.doc.meta.get_title_field()) context.parents = [{"name": self.get_route(), "title": self.title }] - context.comment_doctype = context.doc.doctype - context.comment_docname = context.doc.name + if frappe.form_dict.name: + context.doc = frappe.get_doc(self.doc_type, frappe.form_dict.name) + context.title = context.doc.get(context.doc.meta.get_title_field()) - if self.allow_comments: + context.comment_doctype = context.doc.doctype + context.comment_docname = context.doc.name + + if self.allow_comments and frappe.form_dict.name: context.comment_list = get_comment_list(context.doc.doctype, context.doc.name) context.types = [f.fieldtype for f in self.web_form_fields]