commit-gnue
[Top][All Lists]
Advanced

[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






reply via email to

[Prev in Thread] Current Thread [Next in Thread]