# along with wfpl; if not, write to the Free Software Foundation, Inc., 51
# Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-require_once('code/wfpl/misc.php');
+require_once('code/wfpl/file.php');
function dwt_reset() {
$GLOBALS['_dwt_keys'] = array('<!-- TemplateEndEditable -->');
dwt_reset();
}
-function dwt_load($filename) {
- $GLOBALS['_dwt_template'] = read_whole_file($filename);
+function dwt_load_str($str) {
+ $GLOBALS['_dwt_template'] = $str;
dwt_init();
}
+function dwt_load($filename) {
+ dwt_load_str(read_whole_file($filename));
+}
+
function dwt_set_raw($name, $value) {
- $GLOBALS['_dwt_keys'][] = $name;
- $GLOBALS['_dwt_values'][] = $value;
+ $index = dwt_find_raw($name);
+ if($index) {
+ $GLOBALS['_dwt_keys'][$index] = $name;
+ $GLOBALS['_dwt_values'][$index] = $value;
+ } else {
+ $GLOBALS['_dwt_keys'][] = $name;
+ $GLOBALS['_dwt_values'][] = $value;
+ }
}
function dwt_set($name, $value) {
dwt_append_raw("<!-- TemplateBeginEditable name=\"$name\" -->", $value);
}
+function dwt_prepend_raw($name, $value) {
+ $index = dwt_find_raw($name);
+ if($index !== null) {
+ $GLOBALS['_dwt_values'][$index] = $value . $GLOBALS['_dwt_values'][$index];
+ } else {
+ dwt_set_raw($name, $value);
+ }
+}
+
+function dwt_prepend($name, $value) {
+ dwt_prepend_raw("<!-- TemplateBeginEditable name=\"$name\" -->", $value);
+}
+
+function dwt_get_raw($name) {
+ $index = dwt_find_raw($name);
+ if($index !== null) {
+ return $GLOBALS['_dwt_values'][$index];
+ } else {
+ return false;
+ }
+}
+
+function dwt_get($name) {
+ return dwt_get_raw("<!-- TemplateBeginEditable name=\"$name\" -->");
+}
+
function dwt_output($filename = null) {
if($filename !== null) {
dwt_load($filename);