public function actionAccept($id)
 {
     return self::doAction($id, function (\app\models\Union $item) {
         $item->accept();
         \cs\Application::mail($item->getUser()->getEmail(), 'Ваше объединение прошло модерацию', 'moderator_unions/accept', ['item' => $item]);
         Subscribe::add($item);
         SiteUpdate::add($item);
         $item->update(['is_added_site_update' => 1]);
     });
 }
 /**
  * AJAX
  * Добавляет site_update
  * Делает рассылку
  *
  * @param integer $id - идентификатор услуги
  *
  * @return string
  */
 public function actionSubscribe($id)
 {
     $item = Service::find($id);
     if (is_null($item)) {
         return self::jsonError(101, 'Не найдено послание');
     }
     Subscribe::add($item);
     SiteUpdate::add($item);
     $item->update(['is_added_site_update' => 1]);
     return self::jsonSuccess();
 }
 /**
  * Расчитывет значение счетчика
  * Если будет запущено второй раз за сессию то вычисление происходить не будут
  */
 public static function calc()
 {
     if (\Yii::$app->session->get(self::SESSION_KEY, false) === false) {
         $lastAction = \Yii::$app->user->identity->getField('last_action');
         $count = 0;
         if ($lastAction) {
             $count = SiteUpdate::query(['>', 'date_insert', $lastAction])->count();
         } else {
             $count = 0;
         }
         \Yii::$app->session->set(self::SESSION_KEY, $count);
     }
 }
 /**
  * AJAX
  * Добавляет site_update
  * Делает рассылку
  *
  * @param integer $id - идентификатор события
  *
  * @return string
  */
 public function actionSubscribe($id)
 {
     $item = \app\models\Event::find($id);
     if (is_null($item)) {
         return self::jsonError(101, 'Не найдено событие');
     }
     $start = microtime(true);
     Subscribe::add($item);
     SiteUpdate::add($item);
     $item->update(['is_added_site_update' => 1]);
     \Yii::info(microtime(true) - $start, 'gs\\actionSubscribe');
     return self::jsonSuccess();
 }
Beispiel #5
0
 public function actionSite_update_ajax()
 {
     $typeId = self::getParam('id');
     return self::jsonSuccess($this->renderFile('@app/views/site/site_update_ajax.php', ['list' => SiteUpdate::query(['type' => $typeId])->orderBy(['date_insert' => SORT_DESC])->limit(50)->all()]));
 }
 /**
  * делает рассылку о том что добавлено объединение
  *
  * @param int $id идентификатор объединения
  *
  * @return \yii\web\Response
  */
 public function actionObjects_subscribe($id)
 {
     return self::doAction($id, function (\app\models\Union $item) {
         Subscribe::add($item);
         SiteUpdate::add($item);
         $item->update(['is_added_site_update' => 1]);
     });
 }