コード例 #1
0
 /**
  * Called on the postLoad event.
  *
  * @param LifecycleEventArgs $eventArgs
  */
 public function postLoad(LifecycleEventArgs $eventArgs)
 {
     $object = $eventArgs->getObject();
     // only handle our model
     if (!$object instanceof Group) {
         return;
     }
     // read group option data
     $topLevelCategory = $this->groupService->getOptionsFor($object->getRoleName());
     $categories = $topLevelCategory->getCategories();
     foreach ($categories as $category) {
         $name = $category->getName();
         switch ($name) {
             case 'frontend':
                 $object->setFrontendUserCategory($category);
                 break;
             case 'mod':
                 $object->setFrontendModCategory($category);
                 break;
             case 'acp':
                 $object->setACPCategory($category);
                 break;
         }
     }
 }
コード例 #2
0
 /**
  * Tests that options can be removed.
  */
 public function testRemoval()
 {
     $this->groupService->setOptionsFor('ADMIN', $this->optionData['admin']);
     $options = $this->groupService->getOptionsFor('ADMIN');
     $this->assertEquals($this->optionData['admin'], $options);
     $this->groupService->removeOptionsFor('ADMIN');
     try {
         $this->groupService->getOptionsFor('ADMIN');
         $this->fail();
     } catch (\Exception $e) {
         $this->assertTrue(true);
     }
 }