diff --git a/frappe/core/doctype/doctype/doctype.py b/frappe/core/doctype/doctype/doctype.py
index 1669116e86..5ac5d75068 100644
--- a/frappe/core/doctype/doctype/doctype.py
+++ b/frappe/core/doctype/doctype/doctype.py
@@ -208,7 +208,6 @@ def validate_fields(meta):
3. Fields that do have database columns are not mandatory.
4. `Link` and `Table` options are valid.
5. **Hidden** and **Mandatory** are not set simultaneously.
- 6. Sets default `in_list_view`.
7. `Check` type field has default as 0 or 1.
8. `Dynamic Links` are correctly defined.
9. Precision is set in numeric fields and is between 1 & 6.
@@ -244,14 +243,6 @@ def validate_fields(meta):
if d.hidden and d.reqd and not d.default:
frappe.throw(_("Field {0} in row {1} cannot be hidden and mandatory without default").format(d.label, d.idx))
- def check_min_items_in_list(fields):
- if not meta.get("__islocal"):
- return
- if len(filter(lambda d: d.in_list_view, fields))==0:
- for d in fields[:5]:
- if d.fieldtype in type_map:
- d.in_list_view = 1
-
def check_width(d):
if d.fieldtype == "Currency" and cint(d.width) < 100:
frappe.throw(_("Max width for type Currency is 100px in row {0}").format(d.idx))
@@ -314,7 +305,6 @@ def validate_fields(meta):
check_in_list_view(d)
check_illegal_default(d)
- check_min_items_in_list(fields)
check_fold(fields)
check_search_fields(meta)
diff --git a/frappe/core/doctype/user/user.json b/frappe/core/doctype/user/user.json
index 5690fb2515..e0ec70127d 100644
--- a/frappe/core/doctype/user/user.json
+++ b/frappe/core/doctype/user/user.json
@@ -18,7 +18,7 @@
"default": "1",
"fieldname": "enabled",
"fieldtype": "Check",
- "in_list_view": 1,
+ "in_list_view": 0,
"label": "Enabled",
"no_copy": 0,
"oldfieldname": "enabled",
@@ -49,7 +49,7 @@
{
"fieldname": "first_name",
"fieldtype": "Data",
- "in_list_view": 1,
+ "in_list_view": 0,
"label": "First Name",
"no_copy": 0,
"oldfieldname": "first_name",
@@ -69,7 +69,7 @@
{
"fieldname": "last_name",
"fieldtype": "Data",
- "in_list_view": 1,
+ "in_list_view": 0,
"label": "Last Name",
"oldfieldname": "last_name",
"oldfieldtype": "Data",
@@ -325,6 +325,7 @@
"description": "User Type \"System User\" can access Desktop. \"Website User\" can only be logged into the website and portal pages. ",
"fieldname": "user_type",
"fieldtype": "Select",
+ "in_list_view": 1,
"label": "User Type",
"oldfieldname": "user_type",
"oldfieldtype": "Select",
@@ -462,7 +463,7 @@
"issingle": 0,
"istable": 0,
"max_attachments": 5,
- "modified": "2014-09-08 06:07:20.157915",
+ "modified": "2015-01-07 15:54:30.153456",
"modified_by": "Administrator",
"module": "Core",
"name": "User",
diff --git a/frappe/core/doctype/user/user_list.html b/frappe/core/doctype/user/user_list.html
deleted file mode 100644
index b4ecb01340..0000000000
--- a/frappe/core/doctype/user/user_list.html
+++ /dev/null
@@ -1,31 +0,0 @@
-
-
-
- {%= list.get_avatar_and_id(doc) %}
-
-
- {%= doc.first_name %}
-
- {%= doc.last_name %}
-
- {% if(doc.enabled) { %}
-
-
-
- {% } %}
-
- {% if(doc.user_type==="System User") { %}
-
-
-
- {% } %}
-
-
-
-
diff --git a/frappe/core/doctype/user/user_list.js b/frappe/core/doctype/user/user_list.js
index e75b32844a..bcd27746eb 100644
--- a/frappe/core/doctype/user/user_list.js
+++ b/frappe/core/doctype/user/user_list.js
@@ -2,9 +2,16 @@
// MIT License. See license.txt
frappe.listview_settings['User'] = {
- add_fields: ["enabled", "first_name", "last_name", "user_type"],
+ add_fields: ["enabled", "user_type"],
filters: [["enabled","=","Yes"], ["user_type","=","System User"]],
prepare_data: function(data) {
data["user_for_avatar"] = data["name"];
+ },
+ get_indicator: function(doc) {
+ if(doc.enabled) {
+ return [__("Active"), "green", "enabled,=,Yes"];
+ } else {
+ return [__("Disabled"), "grey", "enabled,=,No"];
+ }
}
};
diff --git a/frappe/desk/doctype/note/note.json b/frappe/desk/doctype/note/note.json
index eaf243772f..ebcd3eb20f 100644
--- a/frappe/desk/doctype/note/note.json
+++ b/frappe/desk/doctype/note/note.json
@@ -1,71 +1,71 @@
{
- "allow_rename": 1,
- "creation": "2013-05-24 13:41:00",
- "description": "Note is a free page where users can share documents / notes",
- "docstatus": 0,
- "doctype": "DocType",
- "document_type": "Transaction",
+ "allow_rename": 1,
+ "creation": "2013-05-24 13:41:00",
+ "description": "Note is a free page where users can share documents / notes",
+ "docstatus": 0,
+ "doctype": "DocType",
+ "document_type": "Transaction",
"fields": [
{
- "fieldname": "title",
- "fieldtype": "Data",
- "in_list_view": 0,
- "label": "Title",
- "permlevel": 0,
- "print_hide": 1,
+ "fieldname": "title",
+ "fieldtype": "Data",
+ "in_list_view": 0,
+ "label": "Title",
+ "permlevel": 0,
+ "print_hide": 1,
"reqd": 1
- },
+ },
{
- "description": "Help: To link to another record in the system, use \"#Form/Note/[Note Name]\" as the Link URL. (don't use \"http://\")",
- "fieldname": "content",
- "fieldtype": "Text Editor",
- "in_list_view": 0,
- "label": "Content",
+ "description": "Help: To link to another record in the system, use \"#Form/Note/[Note Name]\" as the Link URL. (don't use \"http://\")",
+ "fieldname": "content",
+ "fieldtype": "Text Editor",
+ "in_list_view": 0,
+ "label": "Content",
"permlevel": 0
- },
+ },
{
- "fieldname": "share",
- "fieldtype": "Section Break",
- "label": "Share",
+ "fieldname": "share",
+ "fieldtype": "Section Break",
+ "label": "Share",
"permlevel": 0
- },
+ },
{
- "description": "Everyone can read",
- "fieldname": "public",
- "fieldtype": "Check",
- "in_list_view": 1,
- "label": "Public",
- "permlevel": 0,
+ "description": "Everyone can read",
+ "fieldname": "public",
+ "fieldtype": "Check",
+ "in_list_view": 0,
+ "label": "Public",
+ "permlevel": 0,
"print_hide": 1
- },
+ },
{
- "fieldname": "share_with",
- "fieldtype": "Table",
- "label": "Share With",
- "options": "Note User",
- "permlevel": 0,
+ "fieldname": "share_with",
+ "fieldtype": "Table",
+ "label": "Share With",
+ "options": "Note User",
+ "permlevel": 0,
"print_hide": 1
}
- ],
- "icon": "icon-file-text",
- "idx": 1,
- "modified": "2014-07-30 03:24:38.302921",
- "modified_by": "Administrator",
- "module": "Desk",
- "name": "Note",
- "owner": "Administrator",
+ ],
+ "icon": "icon-file-text",
+ "idx": 1,
+ "modified": "2015-01-07 11:06:04.494940",
+ "modified_by": "Administrator",
+ "module": "Desk",
+ "name": "Note",
+ "owner": "Administrator",
"permissions": [
{
- "apply_user_permissions": 1,
- "create": 1,
- "delete": 1,
- "email": 1,
- "permlevel": 0,
- "print": 1,
- "read": 1,
- "role": "All",
+ "apply_user_permissions": 1,
+ "create": 1,
+ "delete": 1,
+ "email": 1,
+ "permlevel": 0,
+ "print": 1,
+ "read": 1,
+ "role": "All",
"write": 1
}
- ],
+ ],
"read_only_onload": 1
-}
+}
\ No newline at end of file
diff --git a/frappe/desk/doctype/note/note_list.html b/frappe/desk/doctype/note/note_list.html
deleted file mode 100644
index d3289d20e1..0000000000
--- a/frappe/desk/doctype/note/note_list.html
+++ /dev/null
@@ -1,16 +0,0 @@
-
-
-
- {%= list.get_avatar_and_id(doc) %}
-
- {% if(!doc.public) { %}
-
-
-
- {% } %}
-
-
-
-
diff --git a/frappe/desk/doctype/note/note_list.js b/frappe/desk/doctype/note/note_list.js
index d14bb225bd..9798329a71 100644
--- a/frappe/desk/doctype/note/note_list.js
+++ b/frappe/desk/doctype/note/note_list.js
@@ -3,4 +3,11 @@ frappe.listview_settings['Note'] = {
me.page.set_title(__("Notes"), frappe.get_module("Notes").icon);
},
add_fields: ["title", "public"],
+ get_indicator: function(doc) {
+ if(doc.public) {
+ return [__("Public"), "green", "public,=,Yes"];
+ } else {
+ return [__("Private"), "darkgrey", "public,=,No"];
+ }
+ }
}
diff --git a/frappe/desk/doctype/todo/todo.json b/frappe/desk/doctype/todo/todo.json
index 97983054e4..15c4c284b3 100644
--- a/frappe/desk/doctype/todo/todo.json
+++ b/frappe/desk/doctype/todo/todo.json
@@ -1,210 +1,210 @@
{
- "allow_copy": 0,
- "allow_rename": 0,
- "autoname": "TDI.########",
- "creation": "2012-07-03 13:30:35",
- "docstatus": 0,
- "doctype": "DocType",
+ "allow_copy": 0,
+ "allow_rename": 0,
+ "autoname": "TDI.########",
+ "creation": "2012-07-03 13:30:35",
+ "docstatus": 0,
+ "doctype": "DocType",
"fields": [
{
- "fieldname": "description_and_status",
- "fieldtype": "Section Break",
- "label": "Description and Status",
+ "fieldname": "description_and_status",
+ "fieldtype": "Section Break",
+ "label": "Description and Status",
"permlevel": 0
- },
+ },
{
- "allow_on_submit": 0,
- "fieldname": "description",
- "fieldtype": "Text",
- "hidden": 0,
- "in_filter": 0,
- "in_list_view": 1,
- "label": "Description",
- "no_copy": 0,
- "oldfieldname": "description",
- "oldfieldtype": "Text",
- "permlevel": 0,
- "print_hide": 0,
- "print_width": "300px",
- "report_hide": 0,
- "reqd": 1,
- "search_index": 0,
+ "allow_on_submit": 0,
+ "fieldname": "description",
+ "fieldtype": "Text",
+ "hidden": 0,
+ "in_filter": 0,
+ "in_list_view": 0,
+ "label": "Description",
+ "no_copy": 0,
+ "oldfieldname": "description",
+ "oldfieldtype": "Text",
+ "permlevel": 0,
+ "print_hide": 0,
+ "print_width": "300px",
+ "report_hide": 0,
+ "reqd": 1,
+ "search_index": 0,
"width": "300px"
- },
+ },
{
- "fieldname": "column_break_2",
- "fieldtype": "Column Break",
+ "fieldname": "column_break_2",
+ "fieldtype": "Column Break",
"permlevel": 0
- },
+ },
{
- "default": "Open",
- "fieldname": "status",
- "fieldtype": "Select",
- "in_list_view": 1,
- "label": "Status",
- "options": "Open\nClosed",
+ "default": "Open",
+ "fieldname": "status",
+ "fieldtype": "Select",
+ "in_list_view": 1,
+ "label": "Status",
+ "options": "Open\nClosed",
"permlevel": 0
- },
+ },
{
- "allow_on_submit": 0,
- "default": "Medium",
- "fieldname": "priority",
- "fieldtype": "Select",
- "hidden": 0,
- "in_filter": 0,
- "in_list_view": 1,
- "label": "Priority",
- "no_copy": 0,
- "oldfieldname": "priority",
- "oldfieldtype": "Data",
- "options": "High\nMedium\nLow",
- "permlevel": 0,
- "print_hide": 0,
- "report_hide": 0,
- "reqd": 0,
+ "allow_on_submit": 0,
+ "default": "Medium",
+ "fieldname": "priority",
+ "fieldtype": "Select",
+ "hidden": 0,
+ "in_filter": 0,
+ "in_list_view": 1,
+ "label": "Priority",
+ "no_copy": 0,
+ "oldfieldname": "priority",
+ "oldfieldtype": "Data",
+ "options": "High\nMedium\nLow",
+ "permlevel": 0,
+ "print_hide": 0,
+ "report_hide": 0,
+ "reqd": 0,
"search_index": 0
- },
+ },
{
- "allow_on_submit": 0,
- "fieldname": "date",
- "fieldtype": "Date",
- "hidden": 0,
- "in_filter": 0,
- "in_list_view": 1,
- "label": "Due Date",
- "no_copy": 0,
- "oldfieldname": "date",
- "oldfieldtype": "Date",
- "permlevel": 0,
- "print_hide": 0,
- "report_hide": 0,
- "reqd": 0,
+ "allow_on_submit": 0,
+ "fieldname": "date",
+ "fieldtype": "Date",
+ "hidden": 0,
+ "in_filter": 0,
+ "in_list_view": 1,
+ "label": "Due Date",
+ "no_copy": 0,
+ "oldfieldname": "date",
+ "oldfieldtype": "Date",
+ "permlevel": 0,
+ "print_hide": 0,
+ "report_hide": 0,
+ "reqd": 0,
"search_index": 0
- },
+ },
{
- "fieldname": "owner",
- "fieldtype": "Link",
- "ignore_user_permissions": 1,
- "in_list_view": 0,
- "label": "Assigned To",
- "options": "User",
- "permlevel": 0,
+ "fieldname": "owner",
+ "fieldtype": "Link",
+ "ignore_user_permissions": 1,
+ "in_list_view": 0,
+ "label": "Assigned To",
+ "options": "User",
+ "permlevel": 0,
"reqd": 1
- },
+ },
{
- "fieldname": "section_break_6",
- "fieldtype": "Section Break",
- "label": "Reference",
+ "fieldname": "section_break_6",
+ "fieldtype": "Section Break",
+ "label": "Reference",
"permlevel": 0
- },
+ },
{
- "allow_on_submit": 0,
- "fieldname": "reference_type",
- "fieldtype": "Link",
- "hidden": 0,
- "in_filter": 0,
- "label": "Reference Type",
- "no_copy": 0,
- "oldfieldname": "reference_type",
- "oldfieldtype": "Data",
- "options": "DocType",
- "permlevel": 0,
- "print_hide": 0,
- "report_hide": 0,
- "reqd": 0,
+ "allow_on_submit": 0,
+ "fieldname": "reference_type",
+ "fieldtype": "Link",
+ "hidden": 0,
+ "in_filter": 0,
+ "label": "Reference Type",
+ "no_copy": 0,
+ "oldfieldname": "reference_type",
+ "oldfieldtype": "Data",
+ "options": "DocType",
+ "permlevel": 0,
+ "print_hide": 0,
+ "report_hide": 0,
+ "reqd": 0,
"search_index": 0
- },
+ },
{
- "allow_on_submit": 0,
- "fieldname": "reference_name",
- "fieldtype": "Dynamic Link",
- "hidden": 0,
- "in_filter": 0,
- "label": "Reference Name",
- "no_copy": 0,
- "oldfieldname": "reference_name",
- "oldfieldtype": "Data",
- "options": "reference_type",
- "permlevel": 0,
- "print_hide": 0,
- "report_hide": 0,
- "reqd": 0,
+ "allow_on_submit": 0,
+ "fieldname": "reference_name",
+ "fieldtype": "Dynamic Link",
+ "hidden": 0,
+ "in_filter": 0,
+ "label": "Reference Name",
+ "no_copy": 0,
+ "oldfieldname": "reference_name",
+ "oldfieldtype": "Data",
+ "options": "reference_type",
+ "permlevel": 0,
+ "print_hide": 0,
+ "report_hide": 0,
+ "reqd": 0,
"search_index": 0
- },
+ },
{
- "fieldname": "column_break_10",
- "fieldtype": "Column Break",
+ "fieldname": "column_break_10",
+ "fieldtype": "Column Break",
"permlevel": 0
- },
+ },
{
- "allow_on_submit": 0,
- "fieldname": "role",
- "fieldtype": "Link",
- "hidden": 0,
- "in_filter": 0,
- "label": "Role",
- "no_copy": 0,
- "oldfieldname": "role",
- "oldfieldtype": "Link",
- "options": "Role",
- "permlevel": 0,
- "print_hide": 0,
- "report_hide": 0,
- "reqd": 0,
+ "allow_on_submit": 0,
+ "fieldname": "role",
+ "fieldtype": "Link",
+ "hidden": 0,
+ "in_filter": 0,
+ "label": "Role",
+ "no_copy": 0,
+ "oldfieldname": "role",
+ "oldfieldtype": "Link",
+ "options": "Role",
+ "permlevel": 0,
+ "print_hide": 0,
+ "report_hide": 0,
+ "reqd": 0,
"search_index": 0
- },
+ },
{
- "fieldname": "assigned_by",
- "fieldtype": "Link",
- "ignore_user_permissions": 1,
- "label": "Assigned By",
- "options": "User",
+ "fieldname": "assigned_by",
+ "fieldtype": "Link",
+ "ignore_user_permissions": 1,
+ "label": "Assigned By",
+ "options": "User",
"permlevel": 0
}
- ],
- "hide_heading": 0,
- "hide_toolbar": 0,
- "icon": "icon-check",
- "idx": 1,
- "in_create": 0,
- "in_dialog": 0,
- "issingle": 0,
- "max_attachments": 0,
- "modified": "2014-06-30 05:40:15.471437",
- "modified_by": "Administrator",
- "module": "Desk",
- "name": "ToDo",
- "owner": "Administrator",
+ ],
+ "hide_heading": 0,
+ "hide_toolbar": 0,
+ "icon": "icon-check",
+ "idx": 1,
+ "in_create": 0,
+ "in_dialog": 0,
+ "issingle": 0,
+ "max_attachments": 0,
+ "modified": "2015-01-07 10:56:03.251872",
+ "modified_by": "Administrator",
+ "module": "Desk",
+ "name": "ToDo",
+ "owner": "Administrator",
"permissions": [
{
- "apply_user_permissions": 1,
- "create": 1,
- "delete": 0,
- "email": 1,
- "export": 0,
- "permlevel": 0,
- "print": 1,
- "read": 1,
- "report": 1,
- "role": "All",
- "submit": 0,
+ "apply_user_permissions": 1,
+ "create": 1,
+ "delete": 0,
+ "email": 1,
+ "export": 0,
+ "permlevel": 0,
+ "print": 1,
+ "read": 1,
+ "report": 1,
+ "role": "All",
+ "submit": 0,
"write": 1
- },
+ },
{
- "create": 1,
- "delete": 0,
- "email": 1,
- "export": 1,
- "permlevel": 0,
- "print": 1,
- "read": 1,
- "report": 1,
- "role": "System Manager",
+ "create": 1,
+ "delete": 0,
+ "email": 1,
+ "export": 1,
+ "permlevel": 0,
+ "print": 1,
+ "read": 1,
+ "report": 1,
+ "role": "System Manager",
"write": 1
}
- ],
- "read_only": 0,
- "read_only_onload": 0,
- "search_fields": "description, reference_type, reference_name",
+ ],
+ "read_only": 0,
+ "read_only_onload": 0,
+ "search_fields": "description, reference_type, reference_name",
"title_field": "description"
-}
+}
\ No newline at end of file
diff --git a/frappe/desk/doctype/todo/todo_list.html b/frappe/desk/doctype/todo/todo_list.html
deleted file mode 100644
index 20692806ee..0000000000
--- a/frappe/desk/doctype/todo/todo_list.html
+++ /dev/null
@@ -1,29 +0,0 @@
-
-
-
- {%= list.get_avatar_and_id(doc) %}
-
{%= __(doc.status) %}
-
-
{%= __(doc.priority) %}
-
- {% if (doc.reference_name) { %}
- {% var reference_href = ("#Form/" + encodeURIComponent(doc.reference_type) + "/"
- + encodeURIComponent(doc.reference_name)) %}
-
-
-
- {%= doc.reference_name %}
-
-
- {% } %}
-
-
-
-
- {%= frappe.avatar(doc.owner) %}
-
-
-
diff --git a/frappe/desk/form/meta.py b/frappe/desk/form/meta.py
index 9b7782969c..e8ea2800db 100644
--- a/frappe/desk/form/meta.py
+++ b/frappe/desk/form/meta.py
@@ -140,13 +140,14 @@ class FormMeta(Meta):
if not dt in ret:
ret[dt] = {"get_parent": True}
- self.set("__linked_with", ret)
+ self.set("__linked_with", ret, as_value=True)
def load_print_formats(self):
print_formats = frappe.db.sql("""select * FROM `tabPrint Format`
WHERE doc_type=%s AND docstatus<2 and ifnull(disabled, 0)=0""", (self.name,), as_dict=1,
update={"doctype":"Print Format"})
- self.set("__print_formats", print_formats)
+
+ self.set("__print_formats", print_formats, as_value=True)
def load_workflows(self):
# get active workflow
@@ -160,7 +161,7 @@ class FormMeta(Meta):
for d in workflow.get("states"):
workflow_docs.append(frappe.get_doc("Workflow State", d.state))
- self.set("__workflow_docs", workflow_docs)
+ self.set("__workflow_docs", workflow_docs, as_value=True)
def load_templates(self):
@@ -182,6 +183,6 @@ class FormMeta(Meta):
for content in self.get("__form_grid_templates").values():
messages = extract_messages_from_code(content)
messages = make_dict_from_messages(messages)
- self.get("__messages").update(messages)
+ self.get("__messages").update(messages, as_value=True)
diff --git a/frappe/desk/star.py b/frappe/desk/star.py
index 7b01876196..2be45e130a 100644
--- a/frappe/desk/star.py
+++ b/frappe/desk/star.py
@@ -38,6 +38,6 @@ def toggle_star(doctype, name, add=False):
except Exception, e:
if e.args[0]==1054:
add_column(doctype, "_starred_by", "Text")
- toggle_star(doctype, name)
+ toggle_star(doctype, name, add)
else:
raise
diff --git a/frappe/email/doctype/email_account/email_account.json b/frappe/email/doctype/email_account/email_account.json
index 7e421f007c..d9596b2184 100644
--- a/frappe/email/doctype/email_account/email_account.json
+++ b/frappe/email/doctype/email_account/email_account.json
@@ -87,7 +87,7 @@
"hidden": 0,
"ignore_user_permissions": 0,
"in_filter": 0,
- "in_list_view": 1,
+ "in_list_view": 0,
"label": "Email Account Name",
"no_copy": 0,
"permlevel": 0,
@@ -362,7 +362,7 @@
"is_submittable": 0,
"issingle": 0,
"istable": 0,
- "modified": "2014-12-15 15:20:22.723848",
+ "modified": "2015-01-07 15:58:10.079334",
"modified_by": "Administrator",
"module": "Email",
"name": "Email Account",
diff --git a/frappe/model/base_document.py b/frappe/model/base_document.py
index 6f9e9d710d..d78b5c1d16 100644
--- a/frappe/model/base_document.py
+++ b/frappe/model/base_document.py
@@ -76,8 +76,8 @@ class BaseDocument(object):
def getone(self, key, filters=None):
return self.get(key, filters=filters, limit=1)[0]
- def set(self, key, value):
- if isinstance(value, list):
+ def set(self, key, value, as_value=False):
+ if isinstance(value, list) and not as_value:
self.__dict__[key] = []
self.extend(key, value)
else:
diff --git a/frappe/public/css/desk.css b/frappe/public/css/desk.css
index 885fb18cd6..4c3e36d508 100644
--- a/frappe/public/css/desk.css
+++ b/frappe/public/css/desk.css
@@ -133,7 +133,7 @@ em.link-option {
border-top: 0px;
}
.form-intro-area {
- padding: 15px 22px;
+ padding: 15px;
}
.page-form {
margin: 0px;
@@ -452,6 +452,13 @@ em.link-option {
font-size: 32px;
color: #d1d8dd;
}
+.missing-image.small {
+ width: 20px;
+ height: 20px;
+}
+.missing-image.small .octicon {
+ font-size: 16px;
+}
/* form */
.timeline {
border: 1px solid #d1d8dd;
@@ -583,6 +590,8 @@ ul.linked-with-list li {
.grid-heading-row {
color: #8c99a5;
font-size: 85%;
+}
+.control-label {
margin-bottom: 2px;
}
.like-disabled-input {
diff --git a/frappe/public/js/frappe/form/sidebar.js b/frappe/public/js/frappe/form/sidebar.js
index 015c07a784..d73e9ac649 100644
--- a/frappe/public/js/frappe/form/sidebar.js
+++ b/frappe/public/js/frappe/form/sidebar.js
@@ -13,7 +13,7 @@ frappe.ui.form.Sidebar = Class.extend({
});
},
add_user_action: function(label, click) {
- $('').html(label).appendTo($('')
+ return $('').html(label).appendTo($('')
.appendTo(this.$user_actions.removeClass("hide"))).on("click", click);
},
clear_user_actions: function() {
diff --git a/frappe/public/js/frappe/form/toolbar.js b/frappe/public/js/frappe/form/toolbar.js
index e05c3d8b69..103fb9ca53 100644
--- a/frappe/public/js/frappe/form/toolbar.js
+++ b/frappe/public/js/frappe/form/toolbar.js
@@ -225,14 +225,22 @@ frappe.ui.form.Toolbar = Class.extend({
var me = this;
$(this.frm.wrapper).on("dirty", function() {
me.show_title_as_dirty();
- })
+
+ // clear workflow actions
+ me.frm.page.clear_actions_menu();
+
+ // enable save action
+ if(!me.frm.save_disabled) {
+ me.set_primary_action(true);
+ }
+ });
},
show_title_as_dirty: function() {
if(this.frm.save_disabled)
return;
if(this.frm.doc.__unsaved) {
- this.page.set_indicator(__("Not Saved"), "orange")
+ this.page.set_indicator(__("Not Saved"), "orange");
}
$(this.frm.wrapper).attr("data-state", this.frm.doc.__unsaved ? "dirty" : "clean");
diff --git a/frappe/public/js/frappe/form/workflow.js b/frappe/public/js/frappe/form/workflow.js
index a7df8858b3..12fe18ddbe 100644
--- a/frappe/public/js/frappe/form/workflow.js
+++ b/frappe/public/js/frappe/form/workflow.js
@@ -15,31 +15,12 @@ frappe.ui.form.States = Class.extend({
var me = this;
$(this.frm.wrapper).bind("render_complete", function() {
me.refresh();
- })
- },
-
- make: function() {
- this.parent = this.frm.page.main
- .find(".workflow-button-area")
- .empty()
- .removeClass("hide");
-
- console.log(this.parent);
-
- this.workflow_button = $('')
- .appendTo(this.parent).dropdown();
- this.dropdown = $('