models/User.php
public function register()
    {
        if ($this->getIsNewRecord() == false) {
            throw new \RuntimeException('Calling "' . __CLASS__ . '::' . __METHOD__ . '" on existing user');
        }

        if ($this->module->enableConfirmation == false) {
            $this->confirmed_at = time();
        }

        if ($this->module->enableGeneratingPassword) {
            $this->password = Password::generate(8);
        }

        $this->trigger(self::USER_REGISTER_INIT);

        if ($this->save()) {
            $this->trigger(self::USER_REGISTER_DONE);
            if ($this->module->enableConfirmation) {
                $token = \Yii::createObject([
                    'class' => Token::className(),
                    'type'  => Token::TYPE_CONFIRMATION,
                ]);
                $token->link('user', $this);
                $this->mailer->sendConfirmationMessage($this, $token);
            } else {
                \Yii::$app->user->login($this);
            }
            if ($this->module->enableGeneratingPassword) {
                $this->mailer->sendWelcomeMessage($this);
            }
            \Yii::$app->session->setFlash('info', $this->getFlashMessage());
            \Yii::getLogger()->log('User has been registered', Logger::LEVEL_INFO);
            return true;
        }

        \Yii::getLogger()->log('An error occurred while registering user account', Logger::LEVEL_ERROR);

        return false;
    }
public function register()
    {
        if ($this->getIsNewRecord() == false) {
            throw new \RuntimeException('Calling "' . __CLASS__ . '::' . __METHOD__ . '" on existing user');
        }

        if ($this->module->enableConfirmation == false) {
            $this->confirmed_at = time();
        }

        if ($this->module->enableGeneratingPassword) {
            $this->password = Password::generate(8);
        }

        $this->trigger(self::USER_REGISTER_INIT);

        if ($this->save()) {
            $this->trigger(self::USER_REGISTER_DONE);
            if ($this->module->enableConfirmation) {
                $token = \Yii::createObject([
                    'class' => Token::className(),
                    'type'  => Token::TYPE_CONFIRMATION,
                ]);
                $token->link('user', $this);
                $this->mailer->sendConfirmationMessage($this, $token);
            } else {
                \Yii::$app->user->login($this);
            }
            if ($this->module->enableGeneratingPassword) {
                $this->mailer->sendWelcomeMessage($this);
            }
            \Yii::$app->session->setFlash('info', $this->getFlashMessage());
            \Yii::getLogger()->log('User has been registered', Logger::LEVEL_INFO);
            return true;
        }

        \Yii::getLogger()->log('An error occurred while registering user account', Logger::LEVEL_ERROR);

        return false;
    }
public function register ( ) { if ( $ this -> getIsNewRecord ( ) == false ) { throw new \ RuntimeException ( 'Calling "' . __CLASS__ . '::' . __METHOD__ . '" on existing user' ) ; } if ( $ this -> module -> enableConfirmation == false ) { $ this -> confirmed_at = time ( ) ; } if ( $ this -> module -> enableGeneratingPassword ) { $ this -> password = Password :: generate ( 8 ) ; } $ this -> trigger ( self :: USER_REGISTER_INIT ) ; if ( $ this -> save ( ) ) { $ this -> trigger ( self :: USER_REGISTER_DONE ) ; if ( $ this -> module -> enableConfirmation ) { $ token = \ Yii :: createObject ( [ 'class' => Token :: className ( ) , 'type' => Token :: TYPE_CONFIRMATION , ] ) ; $ token -> link ( 'user' , $ this ) ; $ this -> mailer -> sendConfirmationMessage ( $ this , $ token ) ; } else { \ Yii :: $ app -> user -> login ( $ this ) ; } if ( $ this -> module -> enableGeneratingPassword ) { $ this -> mailer -> sendWelcomeMessage ( $ this ) ; } \ Yii :: $ app -> session -> setFlash ( 'info' , $ this -> getFlashMessage ( ) ) ; \ Yii :: getLogger ( ) -> log ( 'User has been registered' , Logger :: LEVEL_INFO ) ; return true ; } \ Yii :: getLogger ( ) -> log ( 'An error occurred while registering user account' , Logger :: LEVEL_ERROR ) ; return false ; }
This method is used to register new user account. If Module::enableConfirmation is set true, this method
will generate new confirmation token and use mailer to send it to the user. Otherwise it will log the user in.
If Module::enableGeneratingPassword is set true, this method will generate new 8-char password. After saving user
to database, this method uses mailer component to send credentials (username and password) to user via email.

@return bool
This method is used to register new user account . If Module :: enableConfirmation is set true this method will generate new confirmation token and use mailer to send it to the user . Otherwise it will log the user in . If Module :: enableGeneratingPassword is set true this method will generate new 8 - char password . After saving user to database this method uses mailer component to send credentials ( username and password ) to user via email .