public function addNew($routes)
{
$manager = Configs::authManager();
foreach ($routes as $route) {
try {
$r = explode('&', $route);
$item = $manager->createPermission('/' . trim($route, '/'));
if (count($r) > 1) {
$action = '/' . trim($r[0], '/');
if (($itemAction = $manager->getPermission($action)) === null) {
$itemAction = $manager->createPermission($action);
$manager->add($itemAction);
}
unset($r[0]);
foreach ($r as $part) {
$part = explode('=', $part);
$item->data['params'][$part[0]] = isset($part[1]) ? $part[1] : '';
}
$this->setDefaultRule();
$item->ruleName = RouteRule::RULE_NAME;
$manager->add($item);
$manager->addChild($item, $itemAction);
} else {
$manager->add($item);
}
} catch (Exception $exc) {
Yii::error($exc->getMessage(), __METHOD__);
}
}
Helper::invalidate();
}