[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
r6709 - in trunk: gnue-appserver/src gnue-common/src/datasources/drivers
From: |
johannes |
Subject: |
r6709 - in trunk: gnue-appserver/src gnue-common/src/datasources/drivers/appserver/appserver gnue-common/src/schema/scripter |
Date: |
Wed, 24 Nov 2004 02:42:17 -0600 (CST) |
Author: johannes
Date: 2004-11-24 02:42:16 -0600 (Wed, 24 Nov 2004)
New Revision: 6709
Modified:
trunk/gnue-appserver/src/geasFilter.py
trunk/gnue-common/src/datasources/drivers/appserver/appserver/Connection.py
trunk/gnue-common/src/schema/scripter/
Log:
Use class-labels for login dialog (if available)
Modified: trunk/gnue-appserver/src/geasFilter.py
===================================================================
--- trunk/gnue-appserver/src/geasFilter.py 2004-11-22 12:36:28 UTC (rev
6708)
+++ trunk/gnue-appserver/src/geasFilter.py 2004-11-24 08:42:16 UTC (rev
6709)
@@ -51,6 +51,7 @@
self.__session = Session.InternalSession (sm)
self.__filters = self.__loadFilters ()
self.__labels = self.__fetchLabels ()
+ self.__cLabels = self.__fetchClassLabels ()
# ---------------------------------------------------------------------------
@@ -65,7 +66,7 @@
(filter-class, labels, master, data)
- filter-class: the name of the filter class
+ filter-class: tuple with the name of the filter class and it's label
labels: a sequence of tuples describing the labels (label, search, field)
master: name of the master-filter or None if no such master is defined
data: dictionary describing the allowed values of the filter's fields
@@ -95,8 +96,14 @@
labels = [(f [1], f [2]['search'], f [2]['name']) for f in fields]
names = [f [2]['name'] for f in fields]
+ if self.__cLabels.has_key (fId):
+ classLabel = self.__getLabel (self.__getLanguages (language),
+ self.__cLabels [fId])
+ else:
+ classLabel = labels [0][0]
+
data = self.__getData (fId, master, names)
- result.append ((classdef.fullName, labels, master, data))
+ result.append (((classdef.fullName, classLabel), labels, master, data))
return result
@@ -256,6 +263,37 @@
# ---------------------------------------------------------------------------
+ # Get a dictionary with all class labels of the filter classes
+ # ---------------------------------------------------------------------------
+
+ def __fetchClassLabels (self):
+ """
+ This function creates a dictionary of class-labels for all filters
+ currently in use. This dictionary has the filter-id's as keys and another
+ dictionary - with language = label - as values.
+
+ @return: dictionary {filter-id: {language: label}, {language: label} ..}
+ """
+
+ result = {}
+
+ for filterId in self.__filters:
+ filterClass = self.__sm.classes.find (filterId)
+ prop = filterClass.properties ['gnue_id']
+ cond = ['eq', ['field', 'gnue_property'], ['const', prop.gnue_id]]
+
+ labels = self.__session.find ('gnue_label', cond, [],
+ ['gnue_language', 'gnue_label'])
+ if labels:
+ result [filterId] = {}
+
+ for item in labels:
+ result [filterId] [item.gnue_language] = item.gnue_label
+
+ return result
+
+
+ # ---------------------------------------------------------------------------
# Create a sequence of languages in descending order
# ---------------------------------------------------------------------------
Modified:
trunk/gnue-common/src/datasources/drivers/appserver/appserver/Connection.py
===================================================================
--- trunk/gnue-common/src/datasources/drivers/appserver/appserver/Connection.py
2004-11-22 12:36:28 UTC (rev 6708)
+++ trunk/gnue-common/src/datasources/drivers/appserver/appserver/Connection.py
2004-11-24 08:42:16 UTC (rev 6709)
@@ -78,9 +78,9 @@
self._filters = self._sm.getFilters (self.parameters.get ('_language',
'C'))
for item in self._filters:
- filterId = item [0]
+ (filterId, filterLabel) = item [0]
for (label, search, field) in item [1]:
- result.append ([filterId, label, False])
+ result.append ([filterId, filterLabel, False])
break
return result
Property changes on: trunk/gnue-common/src/schema/scripter
___________________________________________________________________
Name: svn:ignore
- *.pyc
+ *.pyc
test
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- r6709 - in trunk: gnue-appserver/src gnue-common/src/datasources/drivers/appserver/appserver gnue-common/src/schema/scripter,
johannes <=