public final function getCurrentUser()
    {
        if (! self::$currentUser) {
            if ($this->session->__isset('__user_definition')) {
                $defName = $this->session->__get('__user_definition');

                // Check for during upgrade. Remove for version 1.6
                if (substr($defName, -10, 10) != 'Definition') {
                    $defName .= 'Definition';
                }

                self::$currentUser = $this->_loadClass('User', true, array($this->session, $this->_getClass($defName)));

            } else {
                if (\MUtil_Console::isConsole()) {
                    if (! $this->project->isConsoleAllowed()) {
                        echo "Accessing " . GEMS_PROJECT_NAME . " from the command line is not allowed.\n";
                        exit;
                    }


                    $request = \Zend_Controller_Front::getInstance()->getRequest();

                    if (($request instanceof \MUtil_Controller_Request_Cli) && $request->hasUserLogin()) {
                        $user = $this->getUser($request->getUserName(), $request->getUserOrganization());

                        $authResult = $user->authenticate($request->getUserPassword());
                        if (! $authResult->isValid()) {
                            echo "Invalid user login data.\n";
                            echo implode("\n", $authResult->getMessages());
                            exit;
                        }
                        self::$currentUser = $user;

                    } elseif ($this->project->getConsoleRole()) {
                        // \MUtil_Echo::track($this->request->getUserName(), $this->request->getUserOrganization());
                        self::$currentUser = $this->loadUser(self::USER_CONSOLE, 0, '(system)');
                    }

                }
                if (! self::$currentUser) {
                    self::$currentUser = $this->getUser(null, self::SYSTEM_NO_ORG);
                }
                self::$currentUser->setAsCurrentUser();
           }
        }

        return self::$currentUser;
    }
public final function getCurrentUser()
    {
        if (! self::$currentUser) {
            if ($this->session->__isset('__user_definition')) {
                $defName = $this->session->__get('__user_definition');

                // Check for during upgrade. Remove for version 1.6
                if (substr($defName, -10, 10) != 'Definition') {
                    $defName .= 'Definition';
                }

                self::$currentUser = $this->_loadClass('User', true, array($this->session, $this->_getClass($defName)));

            } else {
                if (\MUtil_Console::isConsole()) {
                    if (! $this->project->isConsoleAllowed()) {
                        echo "Accessing " . GEMS_PROJECT_NAME . " from the command line is not allowed.\n";
                        exit;
                    }


                    $request = \Zend_Controller_Front::getInstance()->getRequest();

                    if (($request instanceof \MUtil_Controller_Request_Cli) && $request->hasUserLogin()) {
                        $user = $this->getUser($request->getUserName(), $request->getUserOrganization());

                        $authResult = $user->authenticate($request->getUserPassword());
                        if (! $authResult->isValid()) {
                            echo "Invalid user login data.\n";
                            echo implode("\n", $authResult->getMessages());
                            exit;
                        }
                        self::$currentUser = $user;

                    } elseif ($this->project->getConsoleRole()) {
                        // \MUtil_Echo::track($this->request->getUserName(), $this->request->getUserOrganization());
                        self::$currentUser = $this->loadUser(self::USER_CONSOLE, 0, '(system)');
                    }

                }
                if (! self::$currentUser) {
                    self::$currentUser = $this->getUser(null, self::SYSTEM_NO_ORG);
                }
                self::$currentUser->setAsCurrentUser();
           }
        }

        return self::$currentUser;
    }
public final function getCurrentUser ( ) { if ( ! self :: $ currentUser ) { if ( $ this -> session -> __isset ( '__user_definition' ) ) { $ defName = $ this -> session -> __get ( '__user_definition' ) ; // Check for during upgrade. Remove for version 1.6 if ( substr ( $ defName , - 10 , 10 ) != 'Definition' ) { $ defName .= 'Definition' ; } self :: $ currentUser = $ this -> _loadClass ( 'User' , true , array ( $ this -> session , $ this -> _getClass ( $ defName ) ) ) ; } else { if ( \ MUtil_Console :: isConsole ( ) ) { if ( ! $ this -> project -> isConsoleAllowed ( ) ) { echo "Accessing " . GEMS_PROJECT_NAME . " from the command line is not allowed.\n" ; exit ; } $ request = \ Zend_Controller_Front :: getInstance ( ) -> getRequest ( ) ; if ( ( $ request instanceof \ MUtil_Controller_Request_Cli ) && $ request -> hasUserLogin ( ) ) { $ user = $ this -> getUser ( $ request -> getUserName ( ) , $ request -> getUserOrganization ( ) ) ; $ authResult = $ user -> authenticate ( $ request -> getUserPassword ( ) ) ; if ( ! $ authResult -> isValid ( ) ) { echo "Invalid user login data.\n" ; echo implode ( "\n" , $ authResult -> getMessages ( ) ) ; exit ; } self :: $ currentUser = $ user ; } elseif ( $ this -> project -> getConsoleRole ( ) ) { // \MUtil_Echo::track($this->request->getUserName(), $this->request->getUserOrganization()); self :: $ currentUser = $ this -> loadUser ( self :: USER_CONSOLE , 0 , '(system)' ) ; } } if ( ! self :: $ currentUser ) { self :: $ currentUser = $ this -> getUser ( null , self :: SYSTEM_NO_ORG ) ; } self :: $ currentUser -> setAsCurrentUser ( ) ; } } return self :: $ currentUser ; }
Get the currently loggin in user

@return \Gems_User_User
Get the currently loggin in user