Пример #1
0
 /**
  * Bootstrap method to be called during application bootstrap stage.
  * @param Application $app the application currently running
  */
 public function bootstrap($app)
 {
     if (!$app instanceof \yii\web\Application) {
         return;
     }
     if (!$app->has('backend')) {
         $app->set('backend', static::className());
     }
     if ($app->get('backend') instanceof Component) {
         $app->on(\yii\web\Application::EVENT_BEFORE_ACTION, [self::className(), 'detectBackend']);
     }
 }
Пример #2
0
 /**
  * 
  * @param Application $app
  */
 public function registerComponents($app)
 {
     $count = 0;
     foreach ($this->coreComponents() as $id => $component) {
         try {
             $app->set($id, $component);
         } catch (\Exception $ex) {
             Yii::error("`{$id}` failed to register: " . $ex->getMessage(), __METHOD__);
             continue;
         }
         Yii::info("`{$id}` registered.", __METHOD__);
         $count++;
     }
     return $count;
 }
Пример #3
0
 /**
  * - route translations
  * @param \yii\base\Application $app
  */
 public function bootstrap($app)
 {
     //        \Yii::info(__CLASS__);
     //        $app->attachBehavior('AppConfigBehavior', 'cza\base\behaviors\AppConfigBehavior');
     //
     //        $app->i18n->translations['cza*'] = [
     //            'class' => 'yii\i18n\PhpMessageSource',
     //            'sourceLanguage' => 'en-US',
     //            'basePath' => '@cza/base/messages',
     //            'fileMap' => [
     //                'cza' => 'default.php',
     //                'cza/languages' => 'languages.php',
     //            ],
     //        ];
     //
     // declare CZA Helper
     $app->set('czaHelper', ['class' => '\\cza\\base\\helpers\\Helper']);
 }
Пример #4
0
 /**
  * Bootstrap method to be called during application bootstrap stage.
  * @param Application $app the application currently running
  */
 public function bootstrap($app)
 {
     $app->on(Application::EVENT_BEFORE_REQUEST, function () use($app) {
         try {
             /*******************************
                /* Mailer
                /*******************************/
             // Set default transport class
             $transport = ['class' => 'Swift_MailTransport'];
             // Change transport class to SMTP if was selected
             if (isset($app->params['App.Mailer.transport']) && $app->params['App.Mailer.transport'] === 'smtp') {
                 $transport = ['class' => 'Swift_SmtpTransport', 'host' => $app->settings->get("smtp.host"), 'username' => $app->settings->get("smtp.username"), 'password' => base64_decode($app->settings->get("smtp.password")), 'port' => $app->settings->get("smtp.port"), 'encryption' => $app->settings->get("smtp.encryption") == 'none' ? null : $app->settings->get("smtp.encryption")];
             }
             // Set mail queue component as mailer
             $app->set('mailer', ['class' => 'app\\components\\queue\\MailQueue', 'mailsPerRound' => 10, 'maxAttempts' => 3, 'transport' => $transport, 'messageConfig' => ['charset' => 'UTF-8']]);
             /*******************************
                /* User session
                /*******************************/
             if (isset($app->user) && !$app->user->isGuest) {
                 /** @var \app\models\Profile $profile */
                 $profile = $app->user->identity->profile;
                 // Setting the timezone to the current users timezone
                 if (isset($profile->timezone)) {
                     $app->setTimeZone($profile->timezone);
                 }
                 // Setting the language to the current users language
                 if (isset($profile->language)) {
                     $app->language = $profile->language;
                 }
             }
         } catch (\Exception $e) {
             // Do nothing
         }
     });
     /*******************************
        /* Event Handlers
        /*******************************/
     $app->on('app.form.submission.received', ['app\\events\\handlers\\SubmissionEventHandler', 'onSubmissionReceived']);
     $app->on('app.form.submission.accepted', ['app\\events\\handlers\\SubmissionEventHandler', 'onSubmissionAccepted']);
     $app->on('app.form.submission.rejected', ['app\\events\\handlers\\SubmissionEventHandler', 'onSubmissionRejected']);
 }
Пример #5
0
 /**
  * Bootstrap method to be called during application bootstrap stage.
  *
  * @param Application $app the application currently running
  */
 public function bootstrap($app)
 {
     $app->set('metaData', ['class' => 'steeple\\meta\\MetaData']);
 }