original_string: public function init()
      {
          parent::init();
          try {
              if (!empty($this->module->accessChecker)) {
                  $this->accessType = call_user_func($this->module->accessChecker, $this->module->user);
              }
              if ($this->accessType === -1) {
                  if (!empty($this->module->denyCallback)) {
                      call_user_func($this->module->denyCallback, $this->module->user);
                      return false;
                  }
                  return $this->goHome();
              }
  
              if (!$this->module->user->isGuest) {
                  $user = User::findMe();
                  if ($this->module->userComponent !== true && $this->accessType === 1) {
                      if (empty($user)) {
                          if (!User::createInheritedAccount()) {
                              throw new InvalidConfigException('There was an error while creating inherited user account. Podium can not run with the current configuration. Please contact administrator about this problem.');
                          }
                          $this->success(Yii::t('podium/flash', 'Hey! Your new forum account has just been automatically created! Go to {link} to complement it.', [
                              'link' => Html::a(Yii::t('podium/view', 'Profile'), ['profile/details'])
                          ]));
                      } elseif (!User::updateInheritedAccount()) {
                          throw new InvalidConfigException('There was an error while updating inherited user account. Podium can not run with the current configuration. Please contact administrator about this problem.');
                      }
                  }
                  if ($user && $user->status == User::STATUS_BANNED) {
                      return $this->redirect(['forum/ban']);
                  }
                  if ($user && !empty($user->meta->timezone)) {
                      $this->module->formatter->timeZone = $user->meta->timezone;
                  }
              }
          } catch (Exception $exc) {
              Yii::$app->response->redirect([$this->module->prepareRoute('install/run')]);
          }
      }
code: public function init()
      {
          parent::init();
          try {
              if (!empty($this->module->accessChecker)) {
                  $this->accessType = call_user_func($this->module->accessChecker, $this->module->user);
              }
              if ($this->accessType === -1) {
                  if (!empty($this->module->denyCallback)) {
                      call_user_func($this->module->denyCallback, $this->module->user);
                      return false;
                  }
                  return $this->goHome();
              }
  
              if (!$this->module->user->isGuest) {
                  $user = User::findMe();
                  if ($this->module->userComponent !== true && $this->accessType === 1) {
                      if (empty($user)) {
                          if (!User::createInheritedAccount()) {
                              throw new InvalidConfigException('There was an error while creating inherited user account. Podium can not run with the current configuration. Please contact administrator about this problem.');
                          }
                          $this->success(Yii::t('podium/flash', 'Hey! Your new forum account has just been automatically created! Go to {link} to complement it.', [
                              'link' => Html::a(Yii::t('podium/view', 'Profile'), ['profile/details'])
                          ]));
                      } elseif (!User::updateInheritedAccount()) {
                          throw new InvalidConfigException('There was an error while updating inherited user account. Podium can not run with the current configuration. Please contact administrator about this problem.');
                      }
                  }
                  if ($user && $user->status == User::STATUS_BANNED) {
                      return $this->redirect(['forum/ban']);
                  }
                  if ($user && !empty($user->meta->timezone)) {
                      $this->module->formatter->timeZone = $user->meta->timezone;
                  }
              }
          } catch (Exception $exc) {
              Yii::$app->response->redirect([$this->module->prepareRoute('install/run')]);
          }
      }
code_tokens: public function init ( ) { parent :: init ( ) ; try { if ( ! empty ( $ this -> module -> accessChecker ) ) { $ this -> accessType = call_user_func ( $ this -> module -> accessChecker , $ this -> module -> user ) ; } if ( $ this -> accessType === - 1 ) { if ( ! empty ( $ this -> module -> denyCallback ) ) { call_user_func ( $ this -> module -> denyCallback , $ this -> module -> user ) ; return false ; } return $ this -> goHome ( ) ; } if ( ! $ this -> module -> user -> isGuest ) { $ user = User :: findMe ( ) ; if ( $ this -> module -> userComponent !== true && $ this -> accessType === 1 ) { if ( empty ( $ user ) ) { if ( ! User :: createInheritedAccount ( ) ) { throw new InvalidConfigException ( 'There was an error while creating inherited user account. Podium can not run with the current configuration. Please contact administrator about this problem.' ) ; } $ this -> success ( Yii :: t ( 'podium/flash' , 'Hey! Your new forum account has just been automatically created! Go to {link} to complement it.' , [ 'link' => Html :: a ( Yii :: t ( 'podium/view' , 'Profile' ) , [ 'profile/details' ] ) ] ) ) ; } elseif ( ! User :: updateInheritedAccount ( ) ) { throw new InvalidConfigException ( 'There was an error while updating inherited user account. Podium can not run with the current configuration. Please contact administrator about this problem.' ) ; } } if ( $ user && $ user -> status == User :: STATUS_BANNED ) { return $ this -> redirect ( [ 'forum/ban' ] ) ; } if ( $ user && ! empty ( $ user -> meta -> timezone ) ) { $ this -> module -> formatter -> timeZone = $ user -> meta -> timezone ; } } } catch ( Exception $ exc ) { Yii :: $ app -> response -> redirect ( [ $ this -> module -> prepareRoute ( 'install/run' ) ] ) ; } }
docstring: Creates inherited user account.
  Redirects banned user to proper view.
  Sets user's time zone.
docstring_tokens: Creates inherited user account . Redirects banned user to proper view . Sets user s time zone .