diff options
author | matthewt <matthewt@03d0b0b2-0e1a-0410-a411-fdb2f4bd65d7> | 2007-09-12 18:11:34 +0000 |
---|---|---|
committer | matthewt <matthewt@03d0b0b2-0e1a-0410-a411-fdb2f4bd65d7> | 2007-09-12 18:11:34 +0000 |
commit | 7adfd53f17f66ffe93763e944ed1d3fc52a369dc (patch) | |
tree | 19e599e74419b41cbbe651fd226b81e8b73551d3 /root/base/component | |
parent | c728c97cb1061330e63c7cc048e768ef74988fe6 (diff) | |
download | reaction-7adfd53f17f66ffe93763e944ed1d3fc52a369dc.tar.gz reaction-7adfd53f17f66ffe93763e944ed1d3fc52a369dc.zip |
moved shit to trunk
Diffstat (limited to 'root/base/component')
-rw-r--r-- | root/base/component | 64 |
1 files changed, 64 insertions, 0 deletions
diff --git a/root/base/component b/root/base/component new file mode 100644 index 0000000..4f455ce --- /dev/null +++ b/root/base/component @@ -0,0 +1,64 @@ +[%- + +GLOBAL_DEBUG = ctx.debug; + +MACRO loc(text, args) BLOCK; + + ctx.localize(text, args); + +END; + +MACRO include(name, args) BLOCK; + + filename = ${name}; + + IF filename; + IF GLOBAL_DEBUG; + '<!-- Start block '; name | html; ' calling '; filename | html; " -->\n"; + END; + INCLUDE $filename args; + IF GLOBAL_DEBUG; + '<!-- End block '; name | html; " -->\n"; + END; + ELSE; + error = 'Chosen INCLUDE ' _ name _ ' is empty'; + THROW file error; + END; + +END; + +MACRO connect_form(vp, event) BLOCK; + + ''; + +END; + +MACRO connect_control(vp, event, value) BLOCK; + + 'name="'; vp.event_id_for(event); '"'; + +END; + +MACRO connect_href(vp, events) BLOCK; + + FOREACH event = events.keys; + evt_args.${vp.event_id_for(event)} = events.$event; + END; + 'href="'; ctx.req.uri_with(evt_args); '"'; + +END; + +UNLESS type; + errmsg = "type is empty rendering " _ self; + THROW file errmsg; +END; + +PROCESS $type; + +IF GLOBAL_DEBUG; '<!-- Rendering component '; type | html; " -->\n"; END; + +include( 'main_block' ); + +IF GLOBAL_DEBUG; '<!-- End component '; type | html; " -->\n"; END; + +-%] |