/** * Processes a string with decoda library. * * @since 1.0 * @access public * @param string * @return string */ public function parse($message, $options = array()) { $decoda = new Decoda(); $decoda->addFilter(new DefaultFilter()); if (isset($options['links']) && $options['links']) { $decoda->addFilter(new UrlFilter()); $decoda->addHook(new ClickableHook()); } // Determines if we should load up emoticons. if (isset($options['emoticons']) && $options['emoticons']) { $decoda->addFilter(new ImageFilter()); $decoda->addHook(new EmoticonHook()); } if (isset($options['escape']) && $options['escape']) { $decoda->setEscaping($options['escape']); } else { $decoda->setEscaping(false); } if (isset($options['code']) && $options['code']) { $decoda->addFilter(new CodeFilter()); } $decoda->reset($message); $message = $decoda->parse(); return $message; }
/** * Add any hook dependencies. * * @access public * @param Decoda $decoda * @return void */ public function setupHooks(Decoda $decoda) { $decoda->addHook(new CodeHook()); }