X-Git-Url: https://jasonwoof.com/gitweb/?a=blobdiff_plain;f=template.php;h=5b03754f5febfdee62db00aad6c19d09a6b24e59;hb=73490300ca9dea6fc3c6d3a474ab49796fd58438;hp=9a3de85d384f3fb0d2a1e73dea2cb7d87119c41f;hpb=d316a446dc9d897a4965727ac76aa40d61818a2c;p=wfpl.git diff --git a/template.php b/template.php index 9a3de85..5b03754 100644 --- a/template.php +++ b/template.php @@ -96,6 +96,13 @@ class tem { } } + function show_separated($sub_template_name) { + if($this->get($sub_template_name)) { + $this->show($sub_template_name . '_sep'); + } + $this->show($sub_template_name); + } + # this is used by tem::load() and should be otherwise useless function _load(&$in, &$out, &$parents, &$parent) { while($in) { @@ -263,6 +270,12 @@ function tem_show($sub_template_name) { $GLOBALS['wfpl_template']->show($sub_template_name); } +function tem_show_separated($sub_template_name) { + tem_init(); + $GLOBALS['wfpl_template']->show_separated($sub_template_name); +} + + function tem_load($filename) { tem_init(); $GLOBALS['wfpl_template']->load($filename); @@ -277,7 +290,8 @@ function tem_output($filename = false) { # this is used in template_run() and should be of no other use function template_filler($matches) { - list($tag, $enc) = explode('.', $matches[1], 2); + $match = array_pop($matches); + list($tag, $enc) = explode('.', $match, 2); $value = $GLOBALS['wfpl_template_keyval'][$tag]; if($enc) { $encs = explode('.', $enc); @@ -299,7 +313,7 @@ function template_filler($matches) { # returns the result. function template_run($template, &$keyval) { $GLOBALS['wfpl_template_keyval'] =& $keyval; - return preg_replace_callback(array('||', '|~([^~]*)~|', '|([^<]*)|', '|

([^<]*)

|'), 'template_filler', $template); + return preg_replace_callback('`|~([^~]*)~|([^<]*)|

([^<]*)

`', 'template_filler', $template); } function tem_top_sub_names() {