]> git.mxchange.org Git - friendica.git/blobdiff - include/template_processor.php
data structures to support hidden friends
[friendica.git] / include / template_processor.php
index 056d25488bdc139b7e836c4a252756ec0ece79cc..25f7703a2192cfe4b41a76c958c35514bb75fe45 100644 (file)
                        return $s;
                }
 
-               private function _get_lang(){
-                       if ($this->lang!=null) return $this->lang;
-                       
-                       $a = get_app();
-                       $this->lang=array();
-                       foreach ($a->strings as $k=>$v){
-                               $k =  preg_replace("/[^a-z0-9-]/", "", str_replace(" ","-", strtolower($k)));
-                               $this->lang[$k] = $v;
-                       }
-                       return $this->lang;
-               }
-
-               
+       
                public function replace($s, $r) {
-                       if (!x($r,'$lang')){
-                               $r['$lang'] = &$this->_get_lang();
-                       }
                        $this->r = $r;
                        $this->search = array();
                        $this->replace = array();
-       
+
                        $this->_build_replace($r, "");
                        
                        #$s = str_replace(array("\n","\r"),array("§n§","§r§"),$s);
                        $s = $this->_build_nodes($s);
+
                        $s = preg_replace_callback('/\|\|([0-9]+)\|\|/', array($this, "_replcb_node"), $s);
                        if ($s==Null) $this->_preg_error();
                        
                        // remove comments block
                        $s = preg_replace('/{#[^#]*#}/', "" , $s);
-                                               
                        // replace strings recursively (limit to 10 loops)
                        $os = ""; $count=0;
                        while($os!=$s && $count<10){
                                $os=$s; $count++;
                                $s = str_replace($this->search,$this->replace, $s);
                        }
-                       return $s;
+                       return template_unescape($s);
                }
        }
        
        $t = new Template;
+
+
+
+
+function template_escape($s) {
+
+       return str_replace(array('$','{{'),array('!_Doll^Ars1Az_!','!_DoubLe^BraceS4Rw_!'),$s);
+
+
+}
+
+function template_unescape($s) {
+
+       return str_replace(array('!_Doll^Ars1Az_!','!_DoubLe^BraceS4Rw_!'),array('$','{{'),$s);
+
+
+
+}