Esempio n. 1
0
 /**
  * @inheritdoc
  * @param Review $model
  */
 public function create($model)
 {
     if (empty($model->model) or empty($model->item_id) or empty($model->source_model) or empty($model->source_item_id)) {
         return false;
     }
     $exists = Review::find()->byItem($model->item_id, $model->model)->bySourceItem($model->source_item_id, $model->source_model)->count();
     return !$exists;
 }
Esempio n. 2
0
 /**
  * Возвращает объект провайдера данных
  * @return object|ActiveDataProvider
  * @throws \yii\base\InvalidConfigException
  */
 public function getDataProvider()
 {
     if (is_null($this->_dataProvider)) {
         $query = Review::find()->published()->byItem($this->itemId, $this->modelClass);
         if (is_callable($this->queryModifier)) {
             $func = $this->queryModifier;
             $func($query);
         }
         $config = ArrayHelper::merge($this->dataProviderConfig, ['class' => ActiveDataProvider::className(), 'query' => $query]);
         $this->_dataProvider = Yii::createObject($config);
         $this->_dataProvider->pagination->pageSize = $this->pageSize;
         $this->_dataProvider->sort->defaultOrder = $this->orderBy;
     }
     return $this->_dataProvider;
 }