public function actionIndex() { $today = new DateTime(); // todo Надо переделать время $dateBegin = time(); $model = new Tour(); $model->date_begin = $today->format('Y-m-d'); $freeObj = Objreservation::find()->select('objreservation.*')->leftJoin('reservationinfo', 'objreservation.id = reservationinfo.objreservation_id')->where(['>=', 'reservationinfo.date_begin', time()])->groupBy('id')->limit(3)->all(); $data = ArrayHelper::getColumn(Tag::find()->asArray()->all(), 'name'); return $this->render('index', ['model' => $model, 'data' => $data, 'freeObj' => $freeObj, 'dateBegin' => $dateBegin]); }
/** * Creates data provider instance with search query applied * * @param array $params * * @return ActiveDataProvider */ public function search($params) { $query = Tag::find(); $dataProvider = new ActiveDataProvider(['query' => $query]); $this->load($params); if (!$this->validate()) { // uncomment the following line if you do not want to return any records when validation fails // $query->where('0=1'); return $dataProvider; } $query->andFilterWhere(['id' => $this->id, 'frequency' => $this->frequency]); $query->andFilterWhere(['like', 'name', $this->name]); return $dataProvider; }
public function removeTags($tags) { if (empty($tags)) { return; } $updateTag = Tag::findOne(['name' => $tags]); foreach ($tags as $name) { $updateTag = Tag::findOne(['name' => $name]); if (!empty($updateTag)) { $updateTag->updateCounters(['frequency' => -1]); } } Tag::deleteAll(['frequency' => '<=0']); }
public function getTags() { return $this->hasMany(Tag::className(), ['id' => 'tag_id'])->viaTable('tbl_tour_tag_assn', ['tour_id' => 'id']); }
public function getTag() { return Tag::find(); }
public function run() { $model = new Tour(); $data = ArrayHelper::getColumn(Tag::find()->asArray()->all(), 'name'); return $this->render('search-panel', ['data' => $data, 'model' => $model, 'dateBegin' => $this->dateBegin]); }