} if (!isset($word_separator)) { $word_separator = 'dash'; } if (!isset($override_tv)) { $override_tv = ''; } if (!class_exists('TransAlias')) { require_once $plugin_path . '/transalias.class.php'; } $trans = new TransAlias($modx); //see if TV overrides the table name if (!empty($override_tv)) { $tvval = $trans->getTVValue($override_tv); if (!empty($tvval)) { $table_name = $tvval; } } //Handle events $e =& $modx->event; switch ($e->name) { case 'OnStripAlias': if ($trans->loadTable($table_name, $remove_periods)) { $output = $trans->stripAlias($alias, $char_restrict, $word_separator); $e->output($output); $e->stopPropagation(); } break; default: return; }
protected function normalizeDirname($dirname) { if ($transaliasSettings = $this->getTransaliasSettings()) { if (!class_exists('TransAlias')) { include MODX_BASE_PATH . 'assets/plugins/transalias/transalias.class.php'; } $trans = new TransAlias(); $trans->loadTable($transaliasSettings['table_name']); $dirname = $trans->stripAlias($dirname, $transaliasSettings['char_restrict'], $transaliasSettings['word_separator']); } else { if (isset($this->config['dirnameChangeChars']) && is_array($this->config['dirnameChangeChars'])) { $dirname = strtr($dirname, $this->config['dirnameChangeChars']); } } return $dirname; }
function CleanAlias($string) { if ($transaliasSettings = $this->GetTransaliasSettings()) { if (!class_exists('TransAlias')) { include MODX_BASE_PATH . 'assets/plugins/transalias/transalias.class.php'; } $trans = new TransAlias(); $trans->loadTable($transaliasSettings['table_name']); $string = $trans->stripAlias($string, $transaliasSettings['char_restrict'], $transaliasSettings['word_separator']); } else { $string = preg_replace('/[^0-9a-z\\/\\._-]+/', '', strtolower($string)); } return $string; }