diff --git a/frappe/model/bean.py b/frappe/model/bean.py index 06a31aceb9..ee21b91959 100644 --- a/frappe/model/bean.py +++ b/frappe/model/bean.py @@ -292,10 +292,7 @@ class Bean: def has_permission(self, permtype): return frappe.has_permission(self.doc.doctype, permtype, self.doc) - - def update_value(self, field, value): - frappe.conn.set(self.doc, field, value) - + def save(self, check_links=1, ignore_permissions=None): if ignore_permissions: self.ignore_permissions = ignore_permissions diff --git a/frappe/patches/4_0/set_website_sitemap_idx.py b/frappe/patches/4_0/set_website_sitemap_idx.py new file mode 100644 index 0000000000..315dba76ec --- /dev/null +++ b/frappe/patches/4_0/set_website_sitemap_idx.py @@ -0,0 +1,14 @@ +import frappe + +def execute(): + frappe.conn.sql("""update `tabWebsite Sitemap` set idx=null""") + # frappe.conn.sql("""update `tabWeb Page` set idx=null""") + # frappe.conn.sql("""update `tabBlog Post` set idx=null""") + # frappe.conn.sql("""update `tabBlog Category` set idx=null""") + # frappe.conn.sql("""update `tabWebsite Group` set idx=null""") + # frappe.conn.sql("""delete from `tabTable of Contents`""") + + for doctype in ["Blog Category", "Blog Post", "Web Page", "Website Group"]: + for name in frappe.conn.get_values("Website Sitemap", {"ref_doctype":doctype}, "docname"): + frappe.bean(doctype, name[0]).save() + \ No newline at end of file diff --git a/frappe/public/js/frappe/ui/tree.js b/frappe/public/js/frappe/ui/tree.js index cbe51f85de..93874b9cb9 100644 --- a/frappe/public/js/frappe/ui/tree.js +++ b/frappe/public/js/frappe/ui/tree.js @@ -26,6 +26,7 @@ frappe.ui.Tree = Class.extend({ .tree li { list-style: none; }\ .tree ul { margin-top: 2px; }\ .tree-link { cursor: pointer; }\ + .tree-hover { background-color: #eee; min-height: 20px; border: 1px solid #ddd; }\ ") } }) @@ -52,7 +53,24 @@ frappe.ui.TreeNode = Class.extend({ .data('label', this.label) .data('node', this) .appendTo(this.parent); - + + this.$ul = $('