Exemplo n.º 1
0
 public function addResources(Kwf_Acl $acl)
 {
     if (!$acl->has('kwc_shop')) {
         $acl->add(new Kwf_Acl_Resource_MenuDropdown('kwc_shop', array('text' => trlKwfStatic('Shop'), 'icon' => 'cart.png')), 'kwf_component_root');
     }
     $acl->add(new Kwf_Acl_Resource_ComponentClass_MenuUrl($this->_class, array('text' => trlKwfStatic('Vouchers'), 'icon' => 'application_view_list.png'), Kwc_Admin::getInstance($this->_class)->getControllerUrl('Vouchers')), 'kwc_shop');
 }
 public function testBelowZendResourceGoesToParent()
 {
     $acl = new Kwf_Acl();
     $acl->add(new Zend_Acl_Resource('foo'));
     $acl->add(new Kwf_Acl_Resource_MenuUrl('misc_languages', array('text' => 'Sprachen', 'icon' => 'comment.png'), '/admin/misc/languages'), 'foo');
     $acl->allow(null, 'foo');
     $config = $acl->getMenuConfig(null);
     $this->assertEquals(1, count($config));
     $this->assertEquals('url', $config[0]['type']);
 }
 public function testComplexMenu()
 {
     $acl = new Kwf_Acl();
     $acl->add(new Kwf_Acl_Resource_MenuDropdown('fooBar1', array('text' => 'FooBar1', 'icon' => 'heart.png')));
     $acl->add(new Kwf_Acl_Resource_MenuUrl('foo1', array('text' => 'Foo1', 'icon' => 'heart.png', 'order' => -1), '/admin/foo'), 'fooBar1');
     $acl->add(new Kwf_Acl_Resource_MenuUrl('bar1', array('text' => 'Bar1', 'icon' => 'heart.png', 'order' => -2), '/admin/bar'), 'fooBar1');
     $acl->allow(null, 'fooBar1');
     $acl->add(new Kwf_Acl_Resource_MenuDropdown('fooBar2', array('text' => 'FooBar2', 'icon' => 'heart.png', 'order' => 1)));
     $acl->add(new Kwf_Acl_Resource_MenuUrl('foo2', array('text' => 'Foo2', 'icon' => 'heart.png', 'order' => 1), '/admin/foo'), 'fooBar2');
     $acl->add(new Kwf_Acl_Resource_MenuUrl('bar2', array('text' => 'Bar2', 'icon' => 'heart.png'), '/admin/bar'), 'fooBar2');
     $acl->allow(null, 'fooBar2');
     $acl->add(new Kwf_Acl_Resource_MenuDropdown('fooBar3', array('text' => 'FooBar3', 'icon' => 'heart.png', 'order' => -1)));
     $acl->add(new Kwf_Acl_Resource_MenuUrl('foo3', array('text' => 'Foo3', 'icon' => 'heart.png'), '/admin/foo'), 'fooBar3');
     $acl->add(new Kwf_Acl_Resource_MenuUrl('bar3', array('text' => 'Bar3', 'icon' => 'heart.png', 'order' => -1), '/admin/bar'), 'fooBar3');
     $acl->allow(null, 'fooBar3');
     $config = $acl->getMenuConfig(null);
     //order of the dropdowns
     $this->assertEquals('FooBar3', $config[0]['menuConfig']['text']);
     $this->assertEquals('FooBar1', $config[1]['menuConfig']['text']);
     //order of fooBar1 children
     $this->assertEquals('Bar1', $config[1]['children'][0]['menuConfig']['text']);
     //order of fooBar2 children
     $this->assertEquals('Bar2', $config[2]['children'][0]['menuConfig']['text']);
     //order of fooBar3 children
     $this->assertEquals('Bar3', $config[0]['children'][0]['menuConfig']['text']);
 }
Exemplo n.º 4
0
 public function addResources(Kwf_Acl $acl)
 {
     if (!$acl->has('kwc_shop')) {
         $acl->add(new Kwf_Acl_Resource_MenuDropdown('kwc_shop', array('text' => trlKwf('Shop'), 'icon' => 'cart.png')), 'kwf_component_root');
     }
     $components = Kwf_Component_Data_Root::getInstance()->getComponentsBySameClass($this->_class, array('ignoreVisible' => true));
     $icon = Kwc_Abstract::getSetting($this->_class, 'componentIcon');
     foreach ($components as $c) {
         $text = Kwc_Abstract::getSetting($this->_class, 'componentName');
         if (count($components) > 1) {
             if ($domain = $c->getParentByClass('Kwc_Root_DomainRoot_Domain_Component')) {
                 $text .= " ({$domain->name})";
             }
         }
         $acl->add(new Kwf_Acl_Resource_Component_MenuUrl($c, array('text' => $text, 'icon' => $icon), Kwc_Admin::getInstance($c->componentClass)->getControllerUrl('Orders') . '?componentId=' . $c->dbId), 'kwc_shop');
     }
 }
Exemplo n.º 5
0
 public function testKwcAcl()
 {
     $acl = new Kwf_Acl();
     $acl->add(new Zend_Acl_Resource('misc'));
     $acl->allow(null, 'misc');
     $config = $acl->getMenuConfig(null);
     $this->assertEquals(1, count($config));
     $this->assertEquals('url', $config[0]['type']);
 }
Exemplo n.º 6
0
 public function addResources(Kwf_Acl $acl)
 {
     $menuConfig = array('icon' => new Kwf_Asset('group.png'));
     $components = Kwf_Component_Data_Root::getInstance()->getComponentsByClass(Kwc_Abstract::getSetting($this->_class, 'subscribeToNewsletterClass'), array('ignoreVisible' => true));
     foreach ($components as $c) {
         $menuConfig['text'] = $this->_getMenuConfigText($c);
         if (count($components) > 1) {
             $subRoot = $c;
             while ($subRoot = $subRoot->parent) {
                 if (Kwc_Abstract::getFlag($subRoot->componentClass, 'subroot')) {
                     break;
                 }
             }
             if ($subRoot) {
                 $menuConfig['text'] .= ' (' . $subRoot->name . ')';
             }
         }
         $acl->add(new Kwc_Newsletter_Subscribe_Resource($this->_class . $c->dbId, $menuConfig, Kwc_Admin::getInstance($this->_class)->getControllerUrl('Recipients') . '?newsletterComponentId=' . $c->dbId, $this->_class, $c), $this->_getParentResource($acl, 'subscribe'));
     }
 }
Exemplo n.º 7
0
 public function addResources(Kwf_Acl $acl)
 {
     $icon = Kwc_Abstract::getSetting($this->_class, 'componentIcon');
     $menuConfig = array('icon' => $icon);
     $components = Kwf_Component_Data_Root::getInstance()->getComponentsBySameClass($this->_class, array('ignoreVisible' => true));
     foreach ($components as $c) {
         $menuConfig['text'] = $this->_getMenuConfigText($c, 'newsletter');
         if (count($components) > 1) {
             $subRoot = $c;
             while ($subRoot = $subRoot->parent) {
                 if (Kwc_Abstract::getFlag($subRoot->componentClass, 'subroot')) {
                     break;
                 }
             }
             if ($subRoot) {
                 $menuConfig['text'] .= ' (' . $subRoot->name . ')';
             }
         }
         $acl->add(new Kwf_Acl_Resource_Component_MenuUrl($c, $menuConfig), $this->_getParentResource($acl, 'newsletter'));
     }
 }
Exemplo n.º 8
0
 public function addResources(Kwf_Acl $acl)
 {
     $menuConfig = array('icon' => new Kwf_Asset('package'));
     $components = Kwf_Component_Data_Root::getInstance()->getComponentsBySameClass($this->_class, array('ignoreVisible' => true));
     foreach ($components as $c) {
         $menuConfig['text'] = $this->_getMenuConfigText($c, 'categories');
         if (count($components) > 1) {
             $subRoot = $c;
             while ($subRoot = $subRoot->parent) {
                 if (Kwc_Abstract::getFlag($subRoot->componentClass, 'subroot')) {
                     break;
                 }
             }
             if ($subRoot) {
                 $menuConfig['text'] .= ' (' . $subRoot->name . ')';
             }
         }
         $acl->add(new Kwf_Acl_Resource_Component_MenuUrl('kwc_' . $c->dbId . '-categories', $menuConfig, Kwc_Admin::getInstance($this->_class)->getControllerUrl('Categories') . '?componentId=' . $c->dbId, $c), $this->_getParentResource($acl, 'categories'));
     }
     parent::addResources($acl);
 }
Exemplo n.º 9
0
 public function addResources(Kwf_Acl $acl)
 {
     $components = Kwf_Component_Data_Root::getInstance()->getComponentsBySameClass($this->_class, array('ignoreVisible' => true));
     if (Kwc_Abstract::hasSetting($this->_class, 'componentNameShort')) {
         $name = Kwc_Abstract::getSetting($this->_class, 'componentNameShort');
     } else {
         $name = Kwc_Abstract::getSetting($this->_class, 'componentName');
     }
     $icon = Kwc_Abstract::getSetting($this->_class, 'componentIcon');
     if (count($components)) {
         $dropdownName = 'kwc_' . $this->_class;
         if (!$acl->has($dropdownName)) {
             $dropDown = new Kwf_Acl_Resource_MenuDropdown($dropdownName, array('text' => $name, 'icon' => $icon));
             $dropDown->setCollapseIfSingleChild(true);
             $acl->add($dropDown, $this->_getParentResource($acl));
         }
         foreach ($components as $c) {
             $t = $this->_getResourceText($c);
             $acl->add(new Kwf_Acl_Resource_Component_MenuUrl($c, array('text' => $t, 'icon' => $icon)), $dropdownName);
         }
     }
 }
Exemplo n.º 10
0
 public function addResources(Kwf_Acl $acl)
 {
     $acl->add(new Kwf_Acl_Resource_ComponentClass_MenuUrl('kwc_tags', array('text' => $this->_getSetting('componentName'), 'icon' => 'tag_blue_edit'), Kwc_Admin::getInstance($this->_class)->getControllerUrl('Grid'), $this->_class), 'settings');
 }
Exemplo n.º 11
0
 public function addResources(Kwf_Acl $acl)
 {
     if (!$acl->has('kwc_Kwc_Editable')) {
         $acl->add(new Kwc_Editable_AdminResource($this->_class, array('text' => trlKwf('Texts'), 'icon' => 'page_white_text.png'), Kwc_Admin::getInstance($this->_class)->getControllerUrl('Components')), 'kwf_component_root');
     }
 }
Exemplo n.º 12
0
 public function addResources(Kwf_Acl $acl)
 {
     $acl->add(new Kwf_Acl_Resource_ComponentClass_MenuUrl('kwc_article_category', array('text' => trlKwfStatic('Categories'), 'icon' => 'application_side_tree'), Kwc_Admin::getInstance($this->_class)->getControllerUrl('Categories'), $this->_class), 'settings');
 }
Exemplo n.º 13
0
 public function addResources(Kwf_Acl $acl)
 {
     $acl->add(new Kwf_Acl_Resource_MenuUrl('misc_languages', array('text' => 'Sprachen', 'icon' => 'comment.png'), '/admin/misc/languages'), 'misc');
 }