/** * Load the user object into the user property * * @return TBGUser */ public static function loadUser($user = null) { try { self::$_user = $user === null ? TBGUser::loginCheck(self::getRequest(), self::getCurrentAction()) : $user; if (self::$_user->isAuthenticated()) { if (self::$_user->isOffline() || self::$_user->isAway()) { self::$_user->setOnline(); } if (!self::getRequest()->hasCookie('tbg3_original_username')) { self::$_user->updateLastSeen(); } if (!TBGContext::getScope()->isDefault() && !self::getRequest()->isAjaxCall() && !in_array(self::getRouting()->getCurrentRouteName(), array('add_scope', 'serve', 'debug', 'logout')) && !self::$_user->isGuest() && !self::$_user->isConfirmedMemberOfScope(TBGContext::getScope())) { self::getResponse()->headerRedirect(self::getRouting()->generate('add_scope')); } self::$_user->save(); if (!self::$_user->getGroup() instanceof TBGGroup) { throw new Exception('This user account belongs to a group that does not exist anymore. <br>Please contact the system administrator.'); } } } catch (TBGElevatedLoginException $e) { throw $e; } catch (Exception $e) { self::$_user = new TBGUser(); throw $e; } return self::$_user; }
/** * Load the user object into the user property * * @return TBGUser */ public static function loadUser($user = null) { try { self::$_user = $user === null ? TBGUser::loginCheck(self::getRequest()->getParameter('tbg3_username'), self::getRequest()->getParameter('tbg3_password')) : $user; if (self::$_user->isAuthenticated()) { if (self::$_user->isOffline() || self::$_user->isAway()) { self::$_user->setOnline(); } self::$_user->updateLastSeen(); self::$_user->setTimezone(TBGSettings::getUserTimezone()); self::$_user->setLanguage(TBGSettings::getUserLanguage()); self::$_user->save(); if (!self::$_user->getGroup() instanceof TBGGroup) { throw new Exception('This user account belongs to a group that does not exist anymore. <br>Please contact the system administrator.'); } } } catch (Exception $e) { throw $e; } return self::$_user; }
function tbg_get_userstate_image(TBGUser $user) { switch (true) { case $user->isOffline(): return image_tag('user-offline.png', array('class' => 'userstate', 'title' => __($user->getState()->getName()))); break; case $user->getState()->isBusy(): case $user->getState()->isUnavailable(): return image_tag('user-busy.png', array('class' => 'userstate', 'title' => __($user->getState()->getName()))); break; case $user->getState()->isAbsent(): return image_tag('user-invisible.png', array('class' => 'userstate', 'title' => __($user->getState()->getName()))); break; case $user->getState()->isInMeeting(): return image_tag('user-away-extended.png', array('class' => 'userstate', 'title' => __($user->getState()->getName()))); break; case $user->getState()->isUnavailable(): return image_tag('user-away.png', array('class' => 'userstate', 'title' => __($user->getState()->getName()))); break; default: return image_tag('user-online.png', array('class' => 'userstate', 'title' => __($user->getState()->getName()))); break; } }