/**
  * Shows post by it's ID
  *
  * @param $id
  *
  * @return string
  * @throws \yii\web\NotFoundHttpException
  */
 public function actionShow($id)
 {
     $post = Post::loadModel($id, false, false);
     if ($post === null) {
         throw new NotFoundHttpException();
     }
     return $this->render('show', ['model' => $post]);
 }
 public function actionSendPost($postId)
 {
     /** @var \app\models\Post $post */
     $post = Post::loadModel($postId);
     if ($post === null) {
         $this->stderr("Post {$postId} not found.");
         return 1;
     }
     $emails = NewsletterSubscribers::find()->select('email, language_id')->groupBy('email')->asArray()->all();
     $emails = ArrayHelper::map($emails, 'email', 'email', 'language_id');
     $mailer = Yii::$app->mailer;
     foreach ($emails as $language_id => $emailsList) {
         /** @var Language $language */
         $language = Language::findOne($language_id);
         if ($language !== null && $post->hasTranslation($language_id)) {
             Yii::$app->language = $language->yii_language;
             foreach ($emailsList as $email) {
                 $message = $mailer->compose('new-post', ['language_id' => $language_id, 'post' => $post]);
                 $message->setFrom('*****@*****.**')->setTo($email)->setSubject(Yii::t('app', 'New post on Ama-Dablam.org'))->send();
             }
         }
     }
     return 0;
 }