From 17db115a59823133d3bbdff259dcafdf235ed6a2 Mon Sep 17 00:00:00 2001 From: Rushabh Mehta Date: Tue, 9 Jul 2013 12:10:34 +0530 Subject: [PATCH] [doctype] restrict in_list_view --- core/doctype/doctype/doctype.py | 6 ++++++ webnotes/model/__init__.py | 2 +- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/core/doctype/doctype/doctype.py b/core/doctype/doctype/doctype.py index 482072f0a1..77402b392b 100644 --- a/core/doctype/doctype/doctype.py +++ b/core/doctype/doctype/doctype.py @@ -27,6 +27,7 @@ from webnotes import msgprint import os from webnotes.utils import now, cint +from webnotes.model import no_value_fields class DocType: def __init__(self, doc=None, doclist=[]): @@ -222,6 +223,10 @@ def validate_fields(fields): if d.fieldtype == "Currency" and cint(d.width) < 100: webnotes.msgprint("Minimum width for FieldType 'Currency' is 100px", raise_exception=1) + def check_in_list_view(d): + if d.in_list_view and d.fieldtype in no_value_fields: + webnotes.msgprint("'In List View' not allowed for field of type '%s'" % d.fieldtype, raise_exception=1) + for d in fields: if not d.permlevel: d.permlevel = 0 if not d.fieldname: @@ -231,6 +236,7 @@ def validate_fields(fields): check_illegal_mandatory(d) check_link_table_options(d) check_hidden_and_mandatory(d) + check_in_list_view(d) def validate_permissions_for_doctype(doctype, for_remove=False): from webnotes.model.doctype import get diff --git a/webnotes/model/__init__.py b/webnotes/model/__init__.py index f15c33ccaf..db424f47c7 100644 --- a/webnotes/model/__init__.py +++ b/webnotes/model/__init__.py @@ -24,7 +24,7 @@ from __future__ import unicode_literals import webnotes -no_value_fields = ['Section Break', 'Column Break', 'HTML', 'Table', 'FlexTable', 'Button', 'Image', 'Graph'] +no_value_fields = ['Section Break', 'Column Break', 'HTML', 'Table', 'Button', 'Image'] default_fields = ['doctype','name','owner','creation','modified','modified_by','parent','parentfield','parenttype','idx','docstatus'] def insert(doclist):