lib = $lib; $this->db = $this->lib->game->db; } function run($text, $ec, $es) { $src = array('/\\n/','/\\r/'); $dst = array("
",''); $text = utf8entities($text, ENT_NOQUOTES); $ec = ($ec == 't'); $es = ($es == 't'); if ($ec) { if (is_array($this->code)) { foreach ($this->code as $s => $d) { array_push($src, '/'.$s.'/i'); array_push($dst, $d); } } else { $this->codes = array(); $q = $this->db->query("SELECT * FROM f_code"); while ($r = dbFetchArray($q)) { $this->code[$r[0]] = $r[1]; array_push($src, '/'.$r[0].'/i'); array_push($dst, $r[1]); } } } if ($es) { if (is_array($this->smiley)) { foreach ($this->smiley as $s => $d) { array_push($src, '/'.$s.'/i'); array_push($dst, $d); } } else { $this->smiley = array(); $q = $this->db->query("SELECT * FROM f_smiley"); while ($r = dbFetchArray($q)) { $fn = getStatic("main/pics/smiles/icon_".$r[1].".gif"); if (is_null($fn)) { continue; } $code = "[S]"; $this->smiley[$r[0]] = $code; array_push($src, '/'.$r[0].'/i'); array_push($dst, $code); } } } return preg_replace($src, $dst, $text); } } ?>