[fix] dont cache pages with dynamic server side contentversion-14
@@ -132,6 +132,9 @@ class Page(Document): | |||||
template = frappe.render_template(template, context) | template = frappe.render_template(template, context) | ||||
self.script = html_to_js_template(fname, template) + self.script | self.script = html_to_js_template(fname, template) + self.script | ||||
# flag for not caching this page | |||||
self._dynamic_page = True | |||||
if frappe.lang != 'en': | if frappe.lang != 'en': | ||||
from frappe.translate import get_lang_js | from frappe.translate import get_lang_js | ||||
self.script += get_lang_js("page", self.name) | self.script += get_lang_js("page", self.name) | ||||
@@ -13,7 +13,11 @@ def get(name): | |||||
page = frappe.get_doc('Page', name) | page = frappe.get_doc('Page', name) | ||||
if page.is_permitted(): | if page.is_permitted(): | ||||
page.load_assets() | page.load_assets() | ||||
return page | |||||
docs = frappe._dict(page.as_dict()) | |||||
if getattr(page, '_dynamic_page'): | |||||
docs['_dynamic_page'] = 1 | |||||
return docs | |||||
else: | else: | ||||
frappe.response['403'] = 1 | frappe.response['403'] = 1 | ||||
raise frappe.PermissionError, 'No read permission for Page %s' % \ | raise frappe.PermissionError, 'No read permission for Page %s' % \ | ||||
@@ -114,6 +114,31 @@ | |||||
"set_only_once": 0, | "set_only_once": 0, | ||||
"unique": 0 | "unique": 0 | ||||
}, | }, | ||||
{ | |||||
"allow_on_submit": 0, | |||||
"bold": 0, | |||||
"collapsible": 0, | |||||
"columns": 0, | |||||
"fieldname": "col_break_1", | |||||
"fieldtype": "Column Break", | |||||
"hidden": 0, | |||||
"ignore_user_permissions": 0, | |||||
"ignore_xss_filter": 0, | |||||
"in_filter": 0, | |||||
"in_list_view": 0, | |||||
"length": 0, | |||||
"no_copy": 0, | |||||
"permlevel": 0, | |||||
"precision": "", | |||||
"print_hide": 0, | |||||
"print_hide_if_no_value": 0, | |||||
"read_only": 0, | |||||
"report_hide": 0, | |||||
"reqd": 0, | |||||
"search_index": 0, | |||||
"set_only_once": 0, | |||||
"unique": 0 | |||||
}, | |||||
{ | { | ||||
"allow_on_submit": 0, | "allow_on_submit": 0, | ||||
"bold": 0, | "bold": 0, | ||||
@@ -515,7 +540,7 @@ | |||||
"istable": 0, | "istable": 0, | ||||
"max_attachments": 0, | "max_attachments": 0, | ||||
"menu_index": 0, | "menu_index": 0, | ||||
"modified": "2016-09-16 06:29:18.577597", | |||||
"modified": "2016-09-16 06:44:25.239921", | |||||
"modified_by": "Administrator", | "modified_by": "Administrator", | ||||
"module": "Email", | "module": "Email", | ||||
"name": "Email Alert", | "name": "Email Alert", | ||||
@@ -27,7 +27,9 @@ frappe.views.pageview = { | |||||
method: 'frappe.desk.desk_page.getpage', | method: 'frappe.desk.desk_page.getpage', | ||||
args: {'name':name }, | args: {'name':name }, | ||||
callback: function(r) { | callback: function(r) { | ||||
localStorage["_page:" + name] = JSON.stringify(r.docs); | |||||
if(!r.docs._dynamic_page) { | |||||
localStorage["_page:" + name] = JSON.stringify(r.docs); | |||||
} | |||||
callback(); | callback(); | ||||
}, | }, | ||||
freeze: true, | freeze: true, | ||||