add('name', PLUGIN_EVENT_XINHA_NAME); $propbag->add('description', PLUGIN_EVENT_XINHA_DESC); $propbag->add('stackable', false); $propbag->add('author', 'Ziyad Saeed, Garvin Hicking'); $propbag->add('version', '0.6'); $propbag->add('requirements', array( 'serendipity' => '0.9', 'smarty' => '2.6.7', 'php' => '4.1.0' )); $propbag->add('event_hooks', array( 'backend_wysiwyg' => true, 'backend_wysiwyg_finish' => true, 'backend_wysiwyg_nuggets' => true )); $propbag->add('configuration', array('path', 'xinha_plugins', 'imanager')); $propbag->add('groups', array('BACKEND_EDITOR')); } function introspect_config_item($name, &$propbag) { switch($name) { case 'path': $propbag->add('type', 'string'); $propbag->add('name', INSTALL_RELPATH); $propbag->add('description', ''); $propbag->add('default', str_replace($serendipity['serendipityPath'], '', dirname(__FILE__) . '/xinha-nightly/')); break; case 'imanager': $propbag->add('type', 'boolean'); $propbag->add('name', 'iManager'); $propbag->add('description', ''); $propbag->add('default', false); default: return false; } return true; } function generate_content(&$title) { $title = $this->title; } function jsaddslashes($s) { $o=""; $l=strlen($s); for($i=0;$i<$l;$i++) { $c=$s[$i]; switch($c) { case '<': $o.='\\x3C'; break; case '>': $o.='\\x3E'; break; case '\'': $o.='\\\''; break; case '\\': $o.='\\\\'; break; case '"': $o.='\\"'; break; case "\n": $o.='\\n'; break; case "\r": $o.='\\r'; break; default: $o.=$c; } } return $o; } function event_hook($event, &$bag, &$eventData) { global $serendipity; $hooks = &$bag->get('event_hooks'); if (isset($hooks[$event])) { switch($event) { case 'backend_wysiwyg': $eventData['skip'] = true; return true; break; case 'backend_wysiwyg_nuggets': case 'backend_wysiwyg_finish': $path = $this->get_config('path'); ?>