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 commit-gnue@gnu.org http://lists.gnu.org/mailman/listinfo/commit-gnue