public function testBasic()
 {
     $sender = new \stdClass();
     $event = new Event($sender, ['a' => 'b', 'c' => 'd']);
     $this->assertFalse($event->isDefaultPrevented());
     $event->preventDefault();
     $this->assertTrue($event->isDefaultPrevented());
     $this->assertTrue($event->hasParam('a'));
     $this->assertTrue($event->hasParam('c'));
     $this->assertEquals('b', $event->getParam('a'));
     $this->assertEquals('d', $event->getParam('c'));
 }
 /**
  * onPopulateUserProperty
  *
  * @param Event $e e
  *
  * @return bool|Result
  */
 public function onPopulateUserProperty($e)
 {
     $propertyNameSpace = $e->getParam('propertyNameSpace');
     $data = $e->getParam('data');
     $thisPropertyNameSpace = $this->getUserPropertyKey();
     if ($propertyNameSpace !== $thisPropertyNameSpace) {
         return false;
     }
     $property = new UserRoleProperty();
     try {
         $property->populate($data);
     } catch (\Exception $e) {
         return new \RcmUser\Result($property, Result::CODE_FAIL, 'Property failed to populate with error: ' . $e->getMessage());
     }
     return new Result($property);
 }
Example #3
0
 /**
  * Outputs the event data for users
  * Use $eventParams if you only want to output certain data, but not all available event parameters
  * 
  * @param Event $event
  * @param array $eventParams
  * @return string
  */
 public static function outputEventInfo($event, $eventParams = "")
 {
     if ($eventParams == "") {
         $eventParams = Event::$eventParamsNames;
     }
     $output = "<div id='content'><table id = 'event_info'>";
     foreach ($eventParams as $title => $param) {
         if ($param == 'topicID') {
             $value = $event->getTopic();
         } else {
             if ($param == 'mandantID') {
                 $value = $event->getMandant();
             } else {
                 if ($param == 'addressID') {
                     $value = $event->getAddress()->getAddressValue(true);
                 } else {
                     if ($param == 'eventType') {
                         $value = Event::$eventTypes[$event->getEventType()];
                     } else {
                         $value = $event->getParam($param);
                     }
                 }
             }
         }
         if ($param != 'event_visible') {
             $output .= "<tr><th>{$title}</th><td>" . $value . "</td></tr>";
         }
     }
     $output .= '</table>';
     return $output;
 }
 /**
  * onDeleteUserSuccess
  *
  * @param Event $e e
  *
  * @return Result
  */
 public function onDeleteUserSuccess($e)
 {
     $result = $e->getParam('result');
     if (!$result->isSuccess()) {
         return $result;
     }
     $responseUser = $result->getUser();
     /** @var $userRoleProperty \RcmUser\User\Entity\UserRoleProperty */
     $userRoleProperty = $responseUser->getProperty($this->getUserPropertyKey(), $this->buildUserRoleProperty([]));
     $deleteResult = $this->getUserRoleService()->deleteRoles($responseUser, $userRoleProperty->getRoles());
     if (!$deleteResult->isSuccess()) {
         return new Result($responseUser, Result::CODE_FAIL, $deleteResult->getMessages());
     }
     $userRoleProperty->setRoles([]);
     $responseUser->setProperty($this->getUserPropertyKey(), $userRoleProperty);
     return new Result($responseUser, Result::CODE_SUCCESS);
 }
 /**
  * onDeleteUser
  *
  * @param Event $e e
  *
  * @return \RcmUser\User\Result
  */
 public function onDeleteUser($e)
 {
     //$target = $e->getTarget();
     $requestUser = $e->getParam('requestUser');
     $responseUser = $e->getParam('responseUser');
     $result = $this->getUserDataMapper()->delete($requestUser, $responseUser);
     if ($result->isSuccess()) {
         // @todo may not be required if can assign (by reference)
         $responseUser->populate($result->getUser());
     }
     return $result;
 }
 /**
  * onSetIdentity
  *
  * @param Event $e e
  *
  * @return void|Result
  */
 public function onSetIdentity($e)
 {
     $identity = $e->getParam('identity');
     $authService = $this->getAuthService();
     $authService->setIdentity($identity);
 }