[Commits] r490 - website

commits at geoext.org commits at geoext.org
Tue Apr 28 11:30:28 CEST 2009


Author: tschaub
Date: 2009-04-28 11:30:28 +0200 (Tue, 28 Apr 2009)
New Revision: 490

Modified:
   website/jst.py
Log:
code cleanup

Modified: website/jst.py
===================================================================
--- website/jst.py	2009-04-28 09:00:48 UTC (rev 489)
+++ website/jst.py	2009-04-28 09:30:28 UTC (rev 490)
@@ -71,8 +71,8 @@
                 jsfile = files[filepath]
                 if jsfile.extends:
                     for parentpath in sorted(jsfile.extends, reverse=True):
-                        if files.has_key(parentpath):
-                            jsfile.apply_defaults(files[parentpath].data)
+                        if parentpath in files:
+                            jsfile.inherit(files[parentpath].data)
                     
                 # parse template for each file
                 template_filename = os.path.join(sourcedir, filepath.split(SUFFIX_JS)[0] + SUFFIX_JST)
@@ -152,44 +152,42 @@
                         key = m.group(2)
                         if len(key) > 0:
                             # dictionary
-                            if not data.has_key(name):
+                            if not name in data:
                                 data[name] = {}
                             data[name][key] = block
                         else:
                             # list
-                            if not data.has_key(name):
+                            if not name in data:
                                 data[name] = []
                             data[name] += [block]
                     else:
                         data[label] = block
-            if len(self.comments) > 0:
+            if len(data) > 0:
                 self._data = data
             else:
                 self._data = None
         return self._data
     
-    def apply_defaults(self, data):
-        if self._data.has_key("_parents"):
+    def inherit(self, data):
+        if "_parents" in self._data:
             self.data["_parents"].insert(0, data)
         else:
             self.data["_parents"] = [data]
         for key, value in data.items():
             if isinstance(value, list):
                 # concatenate with any existing list
-                if self._data.has_key(key):
+                if key in self._data:
                     self._data[key] += value
                 else:
                     self._data[key] = value[:]
             elif isinstance(value, dict):
                 # acquire values for keys we don't have already
-                if self._data.has_key(key):
-                    for k, v in value.items():
-                        if not self._data[key].has_key(k):
-                            self._data[key][k] = v
-                else:
-                    self._data[key] = value.copy()
+                value = value.copy()
+                if key in self._data:
+                    value.update(self._data[key])
+                self._data[key] = value
             else:
-                if not self._data.has_key(key):
+                if not key in self._data:
                     self._data[key] = value
     
 



More information about the Commits mailing list