)?\] /* Spisak jednostavnih oznaka, ostale su složene, tj. potrebna je posebna funkcija za njihovu obradu */ $sve_oznake = array ( "b" => array('',''), "i" => array('',''), "crveno" => array('',''), "naslov" => array('

','

'), "podnaslov" => array('

','

'), "podpodnaslov" => array('

','

'), "linija" => "
", "lista" => array(""), "stavka" => array("
  • ","
  • "), "email" => array("",""), /*"link" => array("",""),*/ ); /* Obrađuje pojedinačnu oznaku, tj. sve što se nalazi između "[" i "]". Znak na $txt[$poz-1] treba da bude '[', a vraća se pozicija ']'. */ function obradi_oznaku(&$txt,$poz=0) { $oznaka=''; $origstr=''; while (dozvoljeno_u_oznaci($txt[$poz])) { $origstr .= $txt[$poz]; $oznaka .= $txt[$poz++]; } $atributi=array(); while ($poz $vrednost) { if ($atr != 'orig_str') $txt = str_replace("[$atr]",$vrednost,$txt); } return $txt; } elseif (is_string($sve_oznake[$oznaka])) { return $sve_oznake[$oznaka].$sadrzaj; } else { // ovde ne bi trebalo nikad da stigne, ali za svaki slučaj return "[$oznaka]$sadrzaj"."[/$oznaka]"; } } /* Jedna oznaka u nizu $stanje je zapravo par koji sadrži ime oznake i njene osobine (atribute). Osobine su jedan rečnik u kom su ključevi imena osobina, a vrednosti njihove vrednosti. Naročita osobina sa imenom "orig_str" sadrži pun tekst same oznake (sve između "[","]"). */ function obradi_tekst($txt,$stanje=array(),$poz=0,$adresa='',$jezik='en') { global $sve_oznake; $sadrzaj=''; while ($poz