# HG changeset patch # User Sylvain Thénault # Date 1258107399 -3600 # Node ID b2598c9eeffc0080537aa2e177f3eefcdcbd51ae # Parent 2eff4348b1e4748e529224ac9b191f709e6f522a# Parent 9cc134372bf81c6f45c1ce54b7f3efe04e807491 merge diff -r 2eff4348b1e4 -r b2598c9eeffc utils.py --- a/utils.py Fri Nov 13 11:16:24 2009 +0100 +++ b/utils.py Fri Nov 13 11:16:39 2009 +0100 @@ -214,8 +214,16 @@ def add_raw(self, rawheader): self.write(rawheader) - def define_var(self, var, value): - self.jsvars.append( (var, value) ) + def define_var(self, var, value, override=True): + """adds a javascript var declaration / assginment in the header + + :param var: the variable name + :param value: the variable value (as a raw python value, + it will be jsonized later) + :param override: if False, don't set the variable value if the variable + is already defined. Default is True. + """ + self.jsvars.append( (var, value, override) ) def add_post_inline_script(self, content): self.post_inlined_scripts.append(content) @@ -269,8 +277,12 @@ # 1/ variable declaration if any if self.jsvars: w(u'\n') # 2/ css files for cssfile, media in self.cssfiles: diff -r 2eff4348b1e4 -r b2598c9eeffc web/request.py --- a/web/request.py Fri Nov 13 11:16:24 2009 +0100 +++ b/web/request.py Fri Nov 13 11:16:39 2009 +0100 @@ -96,7 +96,7 @@ if pid is None: pid = make_uid(id(self)) self.pageid = pid - self.html_headers.define_var('pageid', pid) + self.html_headers.define_var('pageid', pid, override=False) def set_connection(self, cnx, user=None): """method called by the session handler when the user is authenticated