X-Git-Url: https://git.p6c8.net/template-class.git/blobdiff_plain/86d4aac26dbd34db74571787559940c56f6e3f26..77c95c315eebc36ef7443c51af87c128b6bf3ef1:/template.py diff --git a/template.py b/template.py index 05c2345..0455ed5 100644 --- a/template.py +++ b/template.py @@ -5,9 +5,9 @@ # Klasse zum Parsen von Templates # # Autor: Patrick Canterino -# Letzte Aenderung: 25.11.2011 +# Letzte Aenderung: 26.4.2013 # -# Copyright (C) 2002-2011 Patrick Canterino +# Copyright (C) 2002-2013 Patrick Canterino # # Diese Datei kann unter den Bedingungen der "Artistic License 2.0" # weitergegeben und / oder veraendert werden. @@ -104,6 +104,7 @@ class Template: # Rueckgabe: -nichts- (Template-Objekt wird modifiziert) def set_var(self,var,content): + if content is None: content = '' self.vars[var] = content # get_var() @@ -119,7 +120,7 @@ class Template: def get_var(self,var=None): if var is not None: - if self.vars.has_key(var): + if var in self.vars: return self.vars[var] else: return None @@ -173,7 +174,7 @@ class Template: # Rueckgabe: -nichts- (Template-Objekt wird modifiziert) def add_loop_data(self,loop,data): - if self.loop_vars.has_key(loop) and type(self.loop_vars[loop]) is list: + if loop in self.loop_vars and type(self.loop_vars[loop]) is list: self.loop_vars[loop].append(data) else: self.loop_vars[loop] = [data] @@ -206,7 +207,7 @@ class Template: vars = self.get_var() - if vars is not None and type(vars) is list: + if vars is not None and len(vars) > 0: self.parse_if_blocks() self.replace_vars() @@ -216,7 +217,7 @@ class Template: # parse_old() # - # In der Template definierte Variablen auslesen, Variablen + # In der Template definierte Variablen auslesen, Variablen # ersetzen, {IF}- und {TRIM}-Bloecke parsen # (alte Methode) # @@ -440,7 +441,7 @@ class Template: # get_defined_vars() # - # In der Template-Datei definierte Variablen auslesen + # In der Template-Datei definierte Variablen auslesen # # Parameter: -nichts- # @@ -580,8 +581,8 @@ class Template: # IF-Bloecke verarbeiten # # Parameter: 1. Name des IF-Blocks (das, was nach dem IF steht) - # 2. Status-Code (true => Inhalt anzeigen - # false => Inhalt nicht anzeigen + # 2. Status-Code (true => Inhalt anzeigen + # false => Inhalt nicht anzeigen # # Rueckgabe: -nichts- (Template-Objekt wird modifiziert) @@ -599,7 +600,7 @@ class Template: splitted = tpl_tmp.split('{ENDIF}') block = '' # Kompletter bedingter Block - ifs = 0 # IF-Zaehler (wird fuer jedes IF erhoeht und fuer jedes ENDIF erniedrigt) + ifs = 0 # IF-Zaehler (wird fuer jedes IF erhoeht und fuer jedes ENDIF erniedrigt) # {IF} @@ -611,7 +612,7 @@ class Template: ifs += splitted[x].count('{IF ') # Zum Zaehler jedes Vorkommen von IF hinzuzaehlen ifs -= 1 # Zaehler um 1 erniedrigen - block += splitted[x]+'{ENDIF}' # Daten zum Block hinzufuegen + block += splitted[x]+'{ENDIF}' # Daten zum Block hinzufuegen x += 1