Example #1
0
 /**
  * Creates data provider instance with search query applied
  *
  * @param array $params
  *
  * @return ActiveDataProvider
  */
 public function search($params)
 {
     $query = SourceMessage::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]);
     $query->andFilterWhere(['like', 'category', $this->category])->andFilterWhere(['like', 'message', $this->message]);
     return $dataProvider;
 }
 /**
  * Insert missing translation to php file
  * @param $event MissingTranslationEvent
  */
 public function insertMissingTranslation($event)
 {
     Yii::$app->cache->flush();
     /* find source */
     $source = SourceMessage::find()->where('`category`=:category AND BINARY `message`=:message')->params([':category' => $event->category, ':message' => $event->message])->one();
     /* create source message if no exist */
     if (!$source) {
         $source = new SourceMessage();
         $source->category = $event->category;
         $source->message = $event->message;
         $source->save();
     }
     //file_put_contents('d:\log1.txt', $event->message);
     /* add translate message */
     Yii::$app->db->createCommand()->insert($this->messageTable, ['id' => $source->id, 'language' => $event->language, 'translation' => $event->message])->execute();
     //file_put_contents('D:\log.txt', 'mission');
 }
 /**
  * Creates data provider instance with search query applied
  *
  * @param array $params
  *
  * @return ActiveDataProvider
  */
 public function search($params)
 {
     $query = SourceMessage::find();
     // add conditions that should always apply here
     $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;
     }
     // grid filtering conditions
     $query->andFilterWhere(['id' => $this->id]);
     $query->andFilterWhere(['like', 'category', $this->category])->andFilterWhere(['like', 'message', $this->message]);
     //$query->andFilterWhere([
     //    'DATE(FROM_UNIXTIME(`created_at`))' => $this->created_at,
     //]);
     return $dataProvider;
 }
 /**
  * get category list
  * @return array
  */
 public static function getCategoryList()
 {
     $items = SourceMessage::find()->select(['category'])->distinct()->all();
     return ArrayHelper::map($items, 'category', 'category');
 }