public function actionGameDashboard($id) { $user = User::getById(intval($id)); UserAccessUtil::resolveAccessingASystemUser($user); $title = Zurmo::t('ZurmoModule', 'Dashboard'); $badgeData = GameBadge::getAllByPersonIndexedByType($user); $generalLevelData = GameLevelUtil::getStatisticsDataForAGivenLevelType($user, GameLevel::TYPE_GENERAL); $rankingData = GamePointUtil::getUserRankingData($user); $statisticsData = GameLevelUtil::getUserStatisticsData($user); $collectionData = GameCollection::resolvePersonAndAvailableTypes($user, GameCollection::getAvailableTypes()); $dashboardView = new UserGameDashboardView($this, $user, $generalLevelData, $badgeData, $rankingData, $statisticsData, $collectionData); $view = new AjaxPageView($dashboardView); echo $view->render(); }
protected function shouldRenderToolBarElement($element, $elementInformation) { if (!parent::shouldRenderToolBarElement($element, $elementInformation)) { return false; } if (in_array($elementInformation['type'], array('UserEditLink', 'AuditEventsModalListLink', 'ChangePasswordLink', 'UserConfigurationLink')) && !UserAccessUtil::canCurrentUserViewALinkRequiringElevatedAccess($this->model)) { return false; } return true; }
/** * test for checking hideFromSelecting attribute */ public function testIsSystemUserAndActiveUserCountOnUserSave() { $user = new User(); $user->username = '******'; $user->title->value = 'Mr.'; $user->firstName = 'My'; $user->lastName = 'sysuser'; $user->setPassword('myuser'); $this->assertTrue($user->save()); unset($user); $user = User::getByUsername('sysuser'); $this->assertNull($user->isSystemUser); unset($user); //Check active user count $activeUserCount = User::getActiveUserCount(); $this->assertEquals(26, $activeUserCount); $user = User::getByUsername('sysuser'); $this->assertTrue(UserAccessUtil::resolveAccessingASystemUser($user)); $user->setIsSystemUser(); $this->assertTrue($user->save()); unset($user); $user = User::getByUsername('sysuser'); $this->assertFalse(UserAccessUtil::resolveAccessingASystemUser($user, false)); //As the user has been made a system user so count should reduce $activeUserCount = User::getActiveUserCount(); $this->assertEquals(25, $activeUserCount); $user = User::getByUsername('rootuser'); $user->setIsNotRootUser(); $this->assertTrue($user->save()); unset($user); //As the user removed from root user so count should increase $activeUserCount = User::getActiveUserCount(); $this->assertEquals(26, $activeUserCount); }
public function testActiveUsers() { $activeUserCount = User::getActiveUserCount(); $this->assertEquals(28, $activeUserCount); $this->assertCount(28, User::getActiveUsers()); $activeUserCount = User::getActiveUserCount(false); $this->assertEquals(28, $activeUserCount); $this->assertCount(28, User::getActiveUsers(false)); $activeUserCount = User::getActiveUserCount(true); $this->assertEquals(28, $activeUserCount); $this->assertCount(28, User::getActiveUsers(true)); $user = User::getByUsername('rootuser'); $this->assertTrue(UserAccessUtil::resolveCanCurrentUserAccessRootUser($user)); $user->setIsRootUser(); $this->assertTrue($user->save()); unset($user); $activeUserCount = User::getActiveUserCount(); $this->assertEquals(27, $activeUserCount); $this->assertCount(27, User::getActiveUsers()); $activeUserCount = User::getActiveUserCount(false); $this->assertEquals(27, $activeUserCount); $this->assertCount(27, User::getActiveUsers(false)); $activeUserCount = User::getActiveUserCount(true); $this->assertEquals(28, $activeUserCount); $this->assertCount(28, User::getActiveUsers(true)); }
public function actionNotificationConfiguration($id, $redirectUrl = null) { UserAccessUtil::resolveCanCurrentUserAccessAction(intval($id)); $user = User::getById(intval($id)); UserAccessUtil::resolveCanCurrentUserAccessRootUser($user); UserAccessUtil::resolveAccessingASystemUser($user); $title = Zurmo::t('Core', 'Notifications Configuration'); $breadCrumbLinks = array(strval($user) => array('default/details', 'id' => $id), $title); $userNotificationConfigurationForm = UserNotificationConfigurationFormAdapter::makeFormFromUserConfigurationByUser($user); $postVariableName = get_class($userNotificationConfigurationForm); if (isset($_POST[$postVariableName])) { $userNotificationConfigurationForm->setAttributes($_POST[$postVariableName], false); if ($userNotificationConfigurationForm->validate()) { if ($user->id != Yii::app()->user->userModel->id) { UserNotificationConfigurationFormAdapter::setConfigurationFromForm($userNotificationConfigurationForm, $user); } else { UserNotificationConfigurationFormAdapter::setConfigurationFromFormForCurrentUser($userNotificationConfigurationForm); } Yii::app()->user->setFlash('notification', Zurmo::t('UsersModule', 'User notifications configuration saved successfully.')); if ($redirectUrl != null) { $this->redirect($redirectUrl); } else { $this->redirect(array($this->getId() . '/details', 'id' => $user->id)); } } } $titleBarAndEditView = new UserActionBarAndNotificationConfigurationEditView($this->getId(), $this->getModule()->getId(), $user, $userNotificationConfigurationForm); $titleBarAndEditView->setCssClasses(array('AdministrativeArea')); $view = new UsersPageView($this->resolveZurmoDefaultOrAdminView($titleBarAndEditView, $breadCrumbLinks, 'UserBreadCrumbView')); echo $view->render(); }
public function actionEmailConfiguration($id, $redirectUrl = null) { UserAccessUtil::resolveCanCurrentUserAccessAction(intval($id)); $user = User::getById(intval($id)); UserAccessUtil::resolveCanCurrentUserAccessRootUser($user); UserAccessUtil::resolveAccessingASystemUser($user); $title = Zurmo::t('UsersModule', 'Email Configuration'); $breadcrumbLinks = array(strval($user) => array('default/details', 'id' => $id), $title); $emailAccount = EmailAccount::resolveAndGetByUserAndName($user); $userEmailConfigurationForm = new UserEmailConfigurationForm($emailAccount); $userEmailConfigurationForm->emailSignatureHtmlContent = $user->getEmailSignature()->htmlContent; $postVariableName = get_class($userEmailConfigurationForm); if (isset($_POST[$postVariableName])) { $userEmailConfigurationForm->setAttributes($_POST[$postVariableName]); if ($userEmailConfigurationForm->validate()) { $userEmailConfigurationForm->save(); Yii::app()->user->setFlash('notification', Zurmo::t('UsersModule', 'User email configuration saved successfully.')); if ($redirectUrl != null) { $this->redirect($redirectUrl); } else { $this->redirect(array($this->getId() . '/details', 'id' => $user->id)); } } } $titleBarAndEditView = new UserActionBarAndEmailConfigurationEditView($this->getId(), $this->getModule()->getId(), $user, $userEmailConfigurationForm); $titleBarAndEditView->setCssClasses(array('AdministrativeArea')); $view = new UsersPageView($this->resolveZurmoDefaultOrAdminView($titleBarAndEditView, $breadcrumbLinks, 'UserBreadCrumbView')); echo $view->render(); }