Author: johannes
Date: 2009-12-12 08:29:05 -0600 (Sat, 12 Dec 2009)
New Revision: 10126
Modified:
trunk/gnue-forms/src/GFObjects/GFField.py
Log:
Split fk_description only on commas which are not within braces. This way we
can use SQL functions within fk_description
Modified: trunk/gnue-forms/src/GFObjects/GFField.py
===================================================================
--- trunk/gnue-forms/src/GFObjects/GFField.py 2009-12-11 17:58:25 UTC (rev
10125)
+++ trunk/gnue-forms/src/GFObjects/GFField.py 2009-12-12 14:29:05 UTC (rev
10126)
@@ -201,7 +201,7 @@
if not hasattr (self, 'fk_description'):
self.fk_description = self.fk_key
- self._fk_descr = self.fk_description.split (',')
+ self._fk_descr = self.__split_fields(self.fk_description)
source = self.fk_source.lower()
if not source in self._block._form._datasourceDictionary:
@@ -244,6 +244,38 @@
# -------------------------------------------------------------------------
+
+ def __split_fields(self, value):
+ parts = []
+ brace_level = 0
+ current = ''
+
+ for c in value:
+ if c == '(':
+ brace_level += 1
+ current += c
+
+ elif c == ')':
+ brace_level -= 1
+ current += c
+
+ elif c == ',':
+ if brace_level:
+ current += c
+ else:
+ parts.append(current)
+ current = ''
+
+ else:
+ current += c
+
+ if current:
+ parts.append(current)
+
+ return parts
+
+
+ # -------------------------------------------------------------------------
# Determine wether a field is editable or not
# -------------------------------------------------------------------------
_______________________________________________
commit-gnue mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/commit-gnue