public function behaviors() { if (!self::$replaceArray) { $replaceArray = array('{block1}' => array('void()', array('controller')), '{neueSeite}' => array('setPageBreak()', array('controller')), '"bilder/' => array('addBaseUrl("\\"")', array('controller')), '\'bilder/' => array('addBaseUrl("\'")', array('controller')), '"pic/' => array('addBaseUrl("\\"")', array('controller')), '\'pic/' => array('addBaseUrl("\'")', array('controller')), '"print/' => array('addBaseUrl("\\"")', array('controller')), '\'print/' => array('addBaseUrl("\'")', array('controller'))); foreach (array('bilder', 'pic', 'print') as $path) { foreach (array('\'', '"') as $prefix) { $replaceArray[$prefix . $path . '/'] = array('addBaseUrl("\\' . $prefix . '","' . $path . '/")', array('controller')); } } if (Yii::app()->getModule('page')->team && ($models = Team::model()->findAll())) { foreach ($models as $model) { $replaceArray['{contact_' . $model->key . '}'] = array("getContact('" . $model->key . "');", array('this')); } foreach ($models as $model) { $alias = array($model->name); $alias[] = htmlentities($model->name); if ($model->name == 'Milam M. Horn') { $alias[] = 'Milam Horn'; } foreach ($alias as $name) { // don't add > because it might match the last php closing tag $safeHtml = '[a-zA-Z0-9_\\/<&="; ,]'; $regex = '/(' . $safeHtml . '{0,5})(' . $name . ')(' . $safeHtml . '{0,3})/'; // don't remove the ; it has a special meaning $replaceArray[$regex] = array("teamLink('\\2', '" . $model->key . "', '\\1', '\\3');", array('this')); } } } self::$replaceArray = $replaceArray; } $return = array('ETemplateBehavior' => array('class' => 'aiajaya.extensions.ETemplateBehavior', 'replaceArray' => self::$replaceArray, 'basePath' => array('application', 'runtime', 'pagetemplate'), 'contentVar' => 'text')); if (Yii::app()->params['enableTags']) { $return['tags'] = array('class' => 'aiajaya.extensions.taggable-behavior.ETaggableBehavior', 'tagTable' => '{{Tag}}', 'tagBindingTable' => '{{PageTag}}', 'modelTableFk' => 'page_id', 'tagTablePk' => 'id', 'tagTableName' => 'name', 'tagTableCount' => null, 'tagBindingTableTagId' => 'tagId', 'cacheID' => false, 'createTagsAutomatically' => true, 'scope' => array(), 'insertValues' => array()); } return $return; }