Roxen.git
/
server
/
etc
/
modules
/
Roxen.pmod
version
»
Context lines:
10
20
40
80
file
none
3
Roxen.git/server/etc/modules/Roxen.pmod:1:
/*
-
* $Id: Roxen.pmod,v 1.
49
2001/
02
/
20
00
:
44
:
59
nilsson Exp $
+
* $Id: Roxen.pmod,v 1.
50
2001/
03
/
13
01
:
23
:
36
nilsson Exp $
* * Various helper functions. * * Henrik Grubbström 1999-05-03 */ #include <config.h> #include <version.h> inherit "roxenlib"; // Low-level C-roxen optimization functions.
Roxen.git/server/etc/modules/Roxen.pmod:876:
} class ScopePage { inherit RXML.Scope; constant converter=(["fgcolor":"fgcolor", "bgcolor":"bgcolor", "theme-bgcolor":"theme_bgcolor", "theme-fgcolor":"theme_fgcolor", "theme-language":"theme_language"]); constant in_defines=aggregate_multiset(@indices(converter)); mixed `[] (string var, void|RXML.Context c, void|string scope) {
-
NOCACHE(c->id);
+
switch (var) { case "pathinfo": return c->id->misc->path_info; } if(in_defines[var]) return c->id->misc->defines[converter[var]]; if(objectp(c->id->misc->scope_page[var])) return c->id->misc->scope_page[var]->rxml_var_eval(c, var, "page"); return c->id->misc->scope_page[var]; } mixed `[]= (string var, mixed val, void|RXML.Context c, void|string scope_name) { switch (var) { case "pathinfo": return c->id->misc->path_info = val; } if(in_defines[var]) return c->id->misc->defines[converter[var]]=val; return c->id->misc->scope_page[var]=val; } array(string) _indices(void|RXML.Context c) { if(!c) return ({});
-
NOCACHE(c->id);
+
array ind=indices(c->id->misc->scope_page); foreach(indices(in_defines), string def) if(c->id->misc->defines[converter[def]]) ind+=({def}); return ind + ({"pathinfo"}); } void m_delete (string var, void|RXML.Context c, void|string scope_name) { if(!c) return; switch (var) { case "pathinfo":