public function actionKlavaro() { if (Yii::$app->getRequest()->getQueryParam('user')) { $user = MarkUser::findOne(Yii::$app->getRequest()->getQueryParam('user')); if (Yii::$app->getRequest()->getQueryParam('presize') && Yii::$app->getRequest()->getQueryParam('speed') !== null && Yii::$app->getRequest()->getQueryParam('eng_ru') && Yii::$app->getRequest()->getQueryParam('cat')) { $act = new DiaryActs(); $act->model_id = 13; $act->user_id = $user->id; if ((double) Yii::$app->getRequest()->getQueryParam('presize') > 95 && (double) Yii::$app->getRequest()->getQueryParam('speed') > 30) { $act->mark = 2; } elseif ((double) Yii::$app->getRequest()->getQueryParam('presize') > 95) { $act->mark = 1; } else { $act->mark = 0; } //var_dump($act); if ($act->save(false)) { $klav_done = new Klavaro(); $klav_done->presize = (double) Yii::$app->getRequest()->getQueryParam('presize'); $klav_done->speed = (double) Yii::$app->getRequest()->getQueryParam('speed'); if (Categories::find()->where("name like '" . trim(Yii::$app->getRequest()->getQueryParam('eng_ru') . "'"))->one()) { // return var_dump(Categories::find()->where(['name' => Yii::$app->getRequest()->getQueryParam('cat')])->one()->id); $klav_done->eng_ru = Categories::find()->where("name like '" . trim(Yii::$app->getRequest()->getQueryParam('eng_ru') . "'"))->one()->id; } else { return "Раскладка!"; } if (Categories::find()->where("name like '" . trim(Yii::$app->getRequest()->getQueryParam('cat') . "'"))->one()) { // return var_dump(Categories::find()->where(['name' => Yii::$app->getRequest()->getQueryParam('cat')])->one()->id); $klav_done->cat_id = Categories::find()->where("name like '" . trim(Yii::$app->getRequest()->getQueryParam('cat') . "'"))->one()->id; } else { return "Категория!"; } $klav_done->act_id = $act->id; //return var_dump($klav_done); if ($klav_done->save(false)) { return 'Получи ' . $act->mark . ' баллов!'; } else { return 'Ошибка klav'; } } else { return 'Ошибка act'; } } return $this->renderPartial('klavaro', ['user' => $user]); } return 'Доступ запрещён'; }
/** * @return \yii\db\ActiveQuery */ public function getAct() { return $this->hasOne(DiaryActs::className(), ['id' => 'act_id']); }
/** * @return \yii\db\ActiveQuery */ public function getControllActs() { return $this->hasMany(DiaryActs::className(), ['model_id' => 'id']); }
public function actionKlavir() { /* $query = new Query(); // $search_result = $query_search->from('siteSearch')->match($q)->all(); // поиск осуществляется по средством метода match с переданной поисковой фразой. $r = $query->from('items') ->match('шкалика') ->all(); var_dump(Items::findOne($r)); exit; */ $article_id = Articles::find()->select('MAX(id)')->scalar(); if ($article_id) { $article = Articles::findOne($article_id); } else { return $this->redirect(Url::toRoute('articles/index')); } $artContent = new ArticlesContent(); if ($artContent->load(Yii::$app->request->post())) { $artContent->body = Yii::$app->request->post('ArticlesContent')['body']; $artContent->minititle = Yii::$app->request->post('ArticlesContent')['minititle']; $artContent->source_id = 434; $artContent->articles_id = $article_id; if ($this->loadModel($article_id)->site_id == 13) { $act = new DiaryActs(); $act->model_id = 6; $act->mark = 1; $act->user_id = 8; $act->save(false); } $artContent->save(); $content = ArticlesContent::find()->where(['articles_id' => $article_id]); $dataCont = new ActiveDataProvider(['query' => $content]); return $this->render('pages', ['content' => $dataCont, 'model' => $artContent]); } else { return $this->render('klavir', ['model' => $artContent]); } }
/** * Добавление новых матчей в foo_matches */ public function actionAddNewMatches() { $url = Url::to("@app/commands/tmpl.html"); $content = file_get_contents($url); //var_dump(mb_detect_encoding($content, array('UTF-8', 'Windows-1251'), true)); exit; //$content = iconv(mb_detect_encoding($content, array('UTF-8', 'Windows-1251'), true), 'Windows-1251', $content); $content = str_replace(chr(9), '', $content); $content = str_replace(chr(11), '', $content); // заменяем табуляцию на пробел $content = str_replace(chr(13), '', $content); $content = str_replace(chr(10), '', $content); $chars = preg_split('/div id=\\"detcon\\"/', $content, -1, PREG_SPLIT_NO_EMPTY); //разделяем контент на матчи $j = count($chars); for ($m = 0; $m < $j; $m++) { //инициализация переменных $tournament = ''; // турнир $host = ''; //номинальный хозяин $guest = ''; //номинальный гость $score = ''; //счёт $gett = 0; //голы, забитые хозяевами $lett = 0; //голы, забитые гостями $stay_h = ''; //расстановка хозяев $stay_g = ''; //расстановка гостей $date = ''; // дата $time = ''; // время начала матча $stra_h = ''; $yel_kart_h = ''; //жёлтые карточки хозяев $yel_kart_g = ''; //жёлтые карточки гостей $red_kart_h = ''; //красные карточки хозяев $red_kart_g = ''; //красные карточки гостей $stra_h = ''; //расстановка $stra_g = ''; $ud_h = 0; //удары $ud_g = 0; $ud_mim_h = 0; //удары мимо $ud_mim_g = 0; $offside_h = 0; //оффсайды $offside_g = 0; $falls_h = 0; //фолы $falls_g = 0; $ud_v_stv_h = 0; //Удары в створ $ud_v_stv_g = 0; $corner_h = 0; //Угловые $corner_g = 0; $saves_h = 0; //Сейвы $saves_g = 0; $yelkar_h = 0; //жёлтые карточки $yelkar_g = 0; $ballpos_h = 0; //владение мячом $ballpos_g = 0; $shtraf_h = 0; //штрафные $shtraf_g = 0; $outs_h = 0; //штрафные $outs_g = 0; $bet_g = 0.0; //ставки $bet_h = 0.0; $bet_n = 0.0; $substit_h = ''; //строка замен хозяев $substit_g = ''; //строка замен гостен $goul_h = ''; //голы хозяев $goul_g = ''; //голы гостей $pen_miss_h = ''; //нереализованные пенальти хозяев $pen_miss_g = ''; //нереализованные пенальти гостей $prim = ''; //примечание $onehalf_h = 0; // голы хозяев в первой половине матча $onehalf_g = 0; // голы гостей в первой половине матча $info = ''; $dom = new \DomDocument(); libxml_use_internal_errors(true); $head = file_get_contents(Url::to("@app/commands/header.html")); $match = $head . $chars[$m]; //добавляем хэдер $dom->loadHTML($match); $div = $dom->getElementsByTagName("div"); foreach ($div as $node) { if ($node->getAttribute('class') === 'fleft') { $tournament = $node->nodeValue; } if ($node->getAttribute('id') === 'tab-statistics-0-statistic') { $dt = $node->nodeValue; $dom_in = new \DomDocument(); $html = $node->ownerDocument->saveHTML($node); libxml_use_internal_errors(true); $newhtml = $head . $html; $dom_in->loadHTML($newhtml); $tr = $dom_in->getElementsByTagName("tr"); foreach ($tr as $node) { if ($node->getAttribute('class') === 'odd') { $odd = $node->nodeValue; if (preg_match('/\\vУдары\\v/', $odd)) { $statistic = preg_split('/Удары/', $odd); $ud_h = (int) $statistic[0]; $ud_g = (int) $statistic[1]; } if (preg_match('/Удары мимо/', $odd)) { $statistic = preg_split('/Удары мимо/', $odd); $ud_mim_h = (int) $statistic[0]; $ud_mim_g = (int) $statistic[1]; } if (preg_match('/Офсайды/', $odd)) { $statistic = preg_split('/Офсайды/', $odd); $offside_h = (int) $statistic[0]; $offside_g = (int) $statistic[1]; } if (preg_match('/Фолы/', $odd)) { $statistic = preg_split('/Фолы/', $odd); $falls_h = (int) $statistic[0]; $falls_g = (int) $statistic[1]; } if (preg_match('/Удары в створ/', $odd)) { $statistic = preg_split('/Удары в створ/', $odd); $ud_v_stv_h = (int) $statistic[0]; $ud_v_stv_g = (int) $statistic[1]; } if (preg_match('/Угловые/', $odd)) { $statistic = preg_split('/Угловые/', $odd); $corner_h = (int) $statistic[0]; $corner_g = (int) $statistic[1]; } if (preg_match('/Сэйвы/', $odd)) { $statistic = preg_split('/Сэйвы/', $odd); $saves_h = (int) $statistic[0]; $saves_g = (int) $statistic[1]; } if (preg_match('/Желтые карточки/', $odd)) { $statistic = preg_split('/Желтые карточки/', $odd); $yelkar_h = (int) $statistic[0]; $yelkar_g = (int) $statistic[1]; } if (preg_match('/Владение мячом/', $odd)) { $statistic = preg_split('/Владение мячом/', $odd); $ballpos_h = (int) $statistic[0]; $ballpos_g = (int) $statistic[1]; } if (preg_match('/Штрафные/', $odd)) { $statistic = preg_split('/Штрафные/', $odd); $shtraf_h = (int) $statistic[0]; $shtraf_g = (int) $statistic[1]; } if (preg_match('/Вбрасывания/', $odd)) { $statistic = preg_split('/Вбрасывания/', $odd); $outs_h = (int) $statistic[0]; $outs_g = (int) $statistic[1]; } } } foreach ($tr as $node) { if ($node->getAttribute('class') === 'even') { $even = $node->nodeValue; if (preg_match('/\\vУдары\\v/', $even)) { $statistic = preg_split('/Удары/', $even); $ud_h = (int) $statistic[0]; $ud_g = (int) $statistic[1]; } if (preg_match('/Удары мимо/', $even)) { $statistic = preg_split('/Удары мимо/', $even); $ud_mim_h = (int) $statistic[0]; $ud_mim_g = (int) $statistic[1]; } if (preg_match('/Офсайды/', $even)) { $statistic = preg_split('/Офсайды/', $even); $offside_h = (int) $statistic[0]; $offside_g = (int) $statistic[1]; } if (preg_match('/Фолы/', $even)) { $statistic = preg_split('/Фолы/', $even); $falls_h = (int) $statistic[0]; $falls_g = (int) $statistic[1]; } if (preg_match('/Удары в створ/', $even)) { $statistic = preg_split('/Удары в створ/', $even); $ud_v_stv_h = (int) $statistic[0]; $ud_v_stv_g = (int) $statistic[1]; } if (preg_match('/Угловые/', $even)) { $statistic = preg_split('/Угловые/', $even); $corner_h = (int) $statistic[0]; $corner_g = (int) $statistic[1]; } if (preg_match('/Сэйвы/', $even)) { $statistic = preg_split('/Сэйвы/', $even); $saves_h = (int) $statistic[0]; $saves_g = (int) $statistic[1]; } if (preg_match('/Желтые карточки/', $even)) { $statistic = preg_split('/Желтые карточки/', $even); $yelkar_h = (int) $statistic[0]; $yelkar_g = (int) $statistic[1]; } if (preg_match('/Владение мячом/', $even)) { $statistic = preg_split('/Владение мячом/', $even); $ballpos_h = (int) $statistic[0]; $ballpos_g = (int) $statistic[1]; } if (preg_match('/Штрафные/', $even)) { $statistic = preg_split('/Штрафные/', $even); $shtraf_h = (int) $statistic[0]; $shtraf_g = (int) $statistic[1]; } if (preg_match('/Вбрасывания/', $even)) { $statistic = preg_split('/Вбрасывания/', $even); $outs_h = (int) $statistic[0]; $outs_g = (int) $statistic[1]; } } } } } $table = $dom->getElementsByTagName("table"); foreach ($table as $node) { if ($node->getAttribute('id') === 'parts') { if (preg_match("/[0-9]{1} \\- [0-9]{1} \\- [0-9]{1} \\- /", $node->nodeValue)) { $stay = $node->nodeValue; $sty = explode("Расстановка", $stay); if (is_array($stay)) { $stay_h = $sty[0]; $stay_g = $sty[1]; } } } if ($node->getAttribute('class') === 'parts match-information') { $info = substr($node->nodeValue, 34); } } $td = $dom->getElementsByTagName("td"); foreach ($td as $node) { if ($node->getAttribute('class') === 'summary-vertical fl') { $dt = $node->nodeValue; $dom_in = new \DomDocument(); $html = $node->ownerDocument->saveHTML($node); $newhtml = $head . $html; $dom_in->loadHTML($newhtml); $dv = $dom_in->getElementsByTagName("div"); foreach ($dv as $node) { if ($node->getAttribute('class') === 'icon-box y-card') { $yel_kart_h = $yel_kart_h . $dt . ", "; } if ($node->getAttribute('class') === 'icon-box r-card') { $red_kart_h = $red_kart_h . $dt . ", "; } if ($node->getAttribute('class') === 'icon-box yr-card') { $red_kart_h = $red_kart_h . $dt . "(вторая жёлтая), "; } if ($node->getAttribute('class') === 'icon-box substitution-in') { $substit_h = $substit_h . $dt . ", "; } if ($node->getAttribute('class') === 'icon-box soccer-ball') { $goul_h = $goul_h . $dt . ", "; } if ($node->getAttribute('class') === 'icon-box soccer-ball-own') { $goul_h = $goul_h . $dt . ", "; } if ($node->getAttribute('class') === 'icon-box penalty-missed') { $pen_miss_h = $pen_miss_h . $dt . ", "; } } $sp = $dom_in->getElementsByTagName("span"); foreach ($sp as $node) { for ($n = 0; $n < 250; $n++) { if ($node->getAttribute('class') === "flag fl_{$n}") { $stra_h = $stra_h . $n . "-" . $dt . ", "; } } } } if ($node->getAttribute('class') === 'summary-vertical fr') { $dt = $node->nodeValue; $dom_in = new \DomDocument(); $html = $node->ownerDocument->saveHTML($node); $dom_in->loadHTML($html); $dv = $dom_in->getElementsByTagName("div"); foreach ($dv as $node) { if ($node->getAttribute('class') === 'icon-box y-card') { $yel_kart_g = $yel_kart_g . $dt . ", "; } if ($node->getAttribute('class') === 'icon-box r-card') { $red_kart_g = $red_kart_g . $dt . ", "; } if ($node->getAttribute('class') === 'icon-box yr-card') { $red_kart_g = $red_kart_g . $dt . "(вторая жёлтая), "; } if ($node->getAttribute('class') === 'icon-box substitution-in') { $substit_g = $substit_g . $dt . ", "; } if ($node->getAttribute('class') === 'icon-box soccer-ball') { $goul_g = $goul_g . $dt . ", "; } if ($node->getAttribute('class') === 'icon-box soccer-ball-own') { $goul_g = $goul_g . $dt . ", "; } if ($node->getAttribute('class') === 'icon-box penalty-missed') { $pen_miss_g = $pen_miss_g . $dt . ", "; } } $sp = $dom_in->getElementsByTagName("span"); foreach ($sp as $node) { for ($n = 0; $n < 250; $n++) { if ($node->getAttribute('class') === "flag fl_{$n}") { $stra_g = $stra_g . $n . "-" . $dt . ", "; } } } } if ($node->getAttribute('class') === 'tname-home logo-enable') { $host = $node->nodeValue; } if ($node->getAttribute('class') === 'tname-away logo-enable') { $guest = $node->nodeValue; } if ($node->getAttribute('class') === 'current-result') { $score = $node->nodeValue; $sc = explode("-", $score); $gett = (int) $sc[0]; $lett = (int) $sc[1]; } if ($node->getAttribute('class') === 'mstat-date') { $date_time = $node->nodeValue; $dati = explode(" ", $date_time); $date = $dati[0]; $time = $dati[1]; } if ($node->getAttribute('class') === 'mstat') { if ($node->nodeValue !== 'Завершен') { $prim = $prim . " " . $node->nodeValue; } } if ($node->getAttribute('class') === 'kx o_1') { $bet_h = (double) $node->nodeValue; } if ($node->getAttribute('class') === 'kx o_0') { $bet_n = (double) $node->nodeValue; } if ($node->getAttribute('class') === 'kx o_2') { $bet_g = (double) $node->nodeValue; } if ($node->getAttribute('class') === 'kx o_1 winner') { $bet_h = (double) $node->nodeValue; } if ($node->getAttribute('class') === 'kx o_0 winner') { $bet_n = (double) $node->nodeValue; } if ($node->getAttribute('class') === 'kx o_2 winner') { $bet_g = (double) $node->nodeValue; } } $span = $dom->getElementsByTagName("span"); foreach ($span as $node) { if ($node->getAttribute('class') === 'info-bubble') { $prim = $prim = $prim . " " . $node->nodeValue; } if ($node->getAttribute('class') === 'p1_home') { $onehalf_h = (int) $node->nodeValue; } if ($node->getAttribute('class') === 'p1_away') { $onehalf_g = (int) $node->nodeValue; } } /* if($host) $host = addslashes($host); if($yel_kart_h) $yel_kart_h = addslashes($yel_kart_h); if($red_kart_h) $red_kart_h = addslashes($red_kart_h); if($substit_h) $substit_h = addslashes($substit_h); if($goul_h) $goul_h = addslashes($goul_h); if($pen_miss_h) $pen_miss_h = addslashes($pen_miss_h); if($stra_h) $stra_h = addslashes($stra_h); if($guest) $guest = addslashes($guest); if($yel_kart_g) $yel_kart_g = addslashes($yel_kart_g); if($red_kart_g) $red_kart_g = addslashes($red_kart_g); if($substit_g) $substit_g = addslashes($substit_g); if($goul_g) $goul_g = addslashes($goul_g); if($pen_miss_g) $pen_miss_g = addslashes($pen_miss_g); if($stra_g) $stra_g = addslashes($stra_g); */ if (isset($date) && $tournament != '' && isset($host) && $host != '') { $match = new Matches(); $match->date = $date; $match->time = $time; $match->tournament = $tournament; $match->host = $host; $match->guest = $guest; $match->gett = $gett; $match->lett = $lett; $match->stay_h = $stay_h; $match->stay_g = $stay_g; $match->yel_kart_h = $yel_kart_h; $match->yel_kart_g = $yel_kart_g; $match->red_kart_h = $red_kart_h; $match->red_kart_g = $red_kart_g; $match->substit_h = $substit_h; $match->substit_g = $substit_g; $match->goul_h = $goul_h; $match->goul_g = $goul_g; $match->pen_miss_h = $pen_miss_h; $match->pen_miss_g = $pen_miss_g; $match->onehalf_h = $onehalf_h; $match->onehalf_g = $onehalf_g; $match->prim = $prim; $match->info = $info; $match->stra_h = $stra_h; $match->stra_g = $stra_g; $match->ud_h = $ud_h; $match->ud_g = $ud_g; $match->ud_mim_h = $ud_mim_h; $match->ud_mim_g = $ud_mim_g; $match->offside_h = $offside_h; $match->offside_g = $offside_g; $match->falls_h = $falls_h; $match->falls_g = $falls_g; $match->ud_v_stv_h = $ud_v_stv_h; $match->ud_v_stv_g = $ud_v_stv_g; $match->corner_h = $corner_h; $match->corner_g = $corner_g; $match->saves_h = $saves_h; $match->saves_g = $saves_g; $match->yelkar_h = $yelkar_h; $match->yelkar_g = $yelkar_g; $match->ballpos_h = $ballpos_h; $match->ballpos_g = $ballpos_g; $match->shtraf_h = $shtraf_h; $match->shtraf_g = $shtraf_g; $match->outs_h = $outs_h; $match->outs_g = $outs_g; $match->bet_h = $bet_h; $match->bet_n = $bet_n; $match->bet_g = $bet_g; $match->save(false); } /* $result = Yii::app()->db->createCommand("INSERT INTO 'foo_matches' (date, time, tournament, host, guest, gett, lett, stay_h, stay_g, yel_kart_h, red_kart_h, yel_kart_g, red_kart_g, substit_h, substit_g, goul_h, goul_g, pen_miss_h, pen_miss_g, onehalf_h, onehalf_g, prim, stra_h, stra_g, ud_h, ud_g, ud_mim_h, ud_mim_g, offside_h, offside_g, falls_h, falls_g, ud_v_stv_h, ud_v_stv_g, corner_h, corner_g, saves_h, saves_g, yelkar_h, yelkar_g, ballpos_h, ballpos_g, shtraf_h, shtraf_g, outs_h, outs_g, bet_h, bet_n, bet_g) VALUES ('$date', '$time','$tournament', '$host', '$guest', '$gett', '$lett', '$stay_h', '$stay_g', '$yel_kart_h', '$red_kart_h', '$yel_kart_g', '$red_kart_g', '$substit_h', '$substit_g', '$goul_h', '$goul_g', '$pen_miss_h', '$pen_miss_g', '$onehalf_h', '$onehalf_g', '$prim', '$stra_h', '$stra_g', '$ud_h', '$ud_g', '$ud_mim_h', '$ud_mim_g', '$offside_h', '$offside_g', '$falls_h', '$falls_g', '$ud_v_stv_h', '$ud_v_stv_g', '$corner_h', '$corner_g', '$saves_h', '$saves_g', '$yelkar_h', '$yelkar_g', '$ballpos_h', '$ballpos_g', '$shtraf_h', '$shtraf_g', '$outs_h', '$outs_g', '$bet_h', '$bet_n', '$bet_g')"); */ } $act = new DiaryActs(); $act->model_id = 8; $act->user_id = 8; $act->mark = 1; $act->save(false); }
/** * Добавление события * @return string */ public function actionEvents() { if (Yii::$app->getRequest()->getQueryParam('user')) { $start_day = strtotime('now 00:00:00', time() + 7 * 60 * 60); $user = MarkUser::findOne(Yii::$app->getRequest()->getQueryParam('user')); if (!$user) { return 'Доступ запрещен!'; } if (Yii::$app->getRequest()->getQueryParam('text') && Yii::$app->getRequest()->getQueryParam('cat')) { if (Categories::find()->where("name like '" . trim(Yii::$app->getRequest()->getQueryParam('cat') . "'"))->one()) { $cat_id = Categories::find()->where(['name' => Yii::$app->getRequest()->getQueryParam('cat')])->one()->id; //$item->cat_id = Categories::find()->where("name like '".trim(Yii::$app->getRequest()->getQueryParam('cat')."'"))->one()->id; } else { return "Категория!"; } $act = new DiaryActs(); $act->model_id = 10; $act->user_id = $user->id; //return var_dump($act); if ($act->save(false)) { $event = new Event(); $event->act_id = $act->id; $event->cat_id = $cat_id; if (Yii::$app->getRequest()->getQueryParam('old_data_ev')) { $event->old_data = Yii::$app->getRequest()->getQueryParam('old_data_ev'); } $event->user_id = $act->user_id; $event->text = Yii::$app->getRequest()->getQueryParam('text'); if (!$event->validate()) { return 'Данные введены некорректно'; } else { if ($event->save()) { return "<p>Событие сохранено!</p>"; } else { return 'Ошибка сохранения'; } } } } $today_event_acts = implode(',', ArrayHelper::map(DiaryActs::find()->where("time > {$start_day} and user_id = " . $user->id . " and model_id = 10")->all(), 'id', 'id')); $today_event = []; //return var_dump($today_event_acts); if ($today_event_acts) { $today_event = Event::find()->where("act_id IN (" . $today_event_acts . ")")->orderBy('id DESC')->andWhere(["old_data" => 0])->all(); } //return var_dump($today_event); return $this->renderPartial('add_event', ['user' => $user, 'today_event' => $today_event]); } }
/** * @inheritdoc */ public function rules() { return [[['task_id', 'act_id'], 'required'], [['task_id', 'act_id', 'user_id', 'mark', 'mark_status'], 'integer'], [['user_id'], 'exist', 'skipOnError' => true, 'targetClass' => MarkUser::className(), 'targetAttribute' => ['user_id' => 'id']], [['task_id'], 'exist', 'skipOnError' => true, 'targetClass' => Task::className(), 'targetAttribute' => ['task_id' => 'id']], [['act_id'], 'exist', 'skipOnError' => true, 'targetClass' => DiaryActs::className(), 'targetAttribute' => ['act_id' => 'id']]]; }
/** * Снимок дня * @throws \Exception */ public function actionSnapshot() { //$data = $this->cut_content($this->get_page("http://redday.ru/moon/"),'maintext', '/sun/sunrise.asp'); //var_dump($data); exit; $start_time = strtotime('now 00:00:00', time() + 7 * 60 * 60); $snapshot = new Snapshot(); $today_mark = DiaryActs::find()->select('SUM(mark)')->where("user_id = 8 and time > " . $start_time)->scalar(); if ($today_mark) { $snapshot->oz = $today_mark; } else { $snapshot->weight = 0; } $snapshot->doll = Helper::currencyAdapter(1, 11); $snapshot->euro = Helper::currencyAdapter(1, 12); if (DiaryRecDayParams::find()->where(['day_param_id' => 1])->orderBy('id DESC')->one()) { $snapshot->weight = (double) DiaryRecDayParams::find()->where(['day_param_id' => 1])->orderBy('id DESC')->one()->value; } else { $snapshot->weight = 0; } $mish_mark = DiaryActs::find()->select('SUM(mark)')->where("time > {$start_time} and user_id = 11")->scalar(); if ($mish_mark) { $snapshot->mish_oz = $mish_mark; } else { $snapshot->mish_oz = 0; } $today_acts = implode(',', ArrayHelper::map(DiaryActs::find()->where("time > {$start_time} and user_id = 8 and model_id = 1")->all(), 'id', 'id')); $snapshot->kkal = DiaryAte::find()->select('SUM(kkal)')->where("act_id IN (" . $today_acts . ")")->scalar(); $not_curr_sum = Incomes::find()->select('SUM(money)')->where("income_id IN (1,2,7,10)")->scalar(); $dollar = Incomes::find()->select('SUM(money)')->where("income_id = 8")->scalar(); $euro = Incomes::find()->select('SUM(money)')->where("income_id = 9")->scalar(); $snapshot->useful_bal = (int) ($not_curr_sum + Helper::currencyAdapter($dollar, 11) + Helper::currencyAdapter($euro, 12)); $snapshot->sun_rise = date_sunrise(time(), SUNFUNCS_RET_STRING, 55, 82, 90, 7); $snapshot->sun_set = date_sunset(time(), SUNFUNCS_RET_STRING, 55, 82, 90, 7); $today_acts_bought = implode(',', ArrayHelper::map(DiaryActs::find()->where("time > {$start_time} and user_id = 8 and model_id = 3")->all(), 'id', 'id')); $bought_today = []; $sum_spent = 0; if ($today_acts_bought) { try { //return var_dump($bought_today); $snapshot->spent = Bought::find()->select('SUM(spent)')->where("act_id IN (" . $today_acts_bought . ")")->scalar(); } catch (\ErrorException $e) { return $e->getMessage(); } // return var_dump($sum_spent ); } if ($snapshot->save()) { $act = new DiaryActs(); $act->model_id = 12; $act->user_id = 8; $klavaro_balls = 0; $today_acts_of_day_params = implode(',', ArrayHelper::map(DiaryActs::find()->where("time > {$start_time} and user_id = 8 and model_id = 4")->all(), 'id', 'id')); if ($today_acts_of_day_params) { $klavaro_eng_today = DiaryRecDayParams::find()->where("act_id IN (" . $today_acts_of_day_params . ") and day_param_id = 22")->one(); $klavaro_ru_today = DiaryRecDayParams::find()->where("act_id IN (" . $today_acts_of_day_params . ") and day_param_id = 23")->one(); } if (isset($klavaro_eng_today) && $klavaro_eng_today->value > 95) { $klavaro_balls = 1; } if (isset($klavaro_ru_today) && $klavaro_ru_today->value > 95) { $klavaro_balls += 1; } //$klavaro_balls = ( isset($klavaro_eng_today) ? $klavaro_eng_today->value : 0 ) + ( isset($klavaro_ru_today) ? $klavaro_eng_today->value : 0 ); //echo $klavaro_balls; if (DiaryRecDayParams::find()->where(['day_param_id' => 18])->orderBy('id DESC')->one()) { $act->mark = (int) round(DiaryRecDayParams::find()->where(['day_param_id' => 18])->orderBy('id DESC')->one()->value / 2000) + $klavaro_balls; } else { $act->mark = 0; } $snapshot->oz += $act->mark; $snapshot->update(); // var_dump($act); if ($act->save(false)) { echo 'ok'; } } //var_dump($snapshot); }