@@ -13,7 +13,6 @@ |
||
| 13 | 13 | use yii\db\Migration; |
| 14 | 14 | use yii\db\Query; |
| 15 | 15 | use yii\db\Schema; |
| 16 | -use yii\helpers\ArrayHelper; |
|
| 17 | 16 | |
| 18 | 17 | class PropertyTerm extends BaseTerm { |
| 19 | 18 | |
@@ -96,8 +96,9 @@ |
||
| 96 | 96 | ->innerJoin($this->getTable(), $this->getTable() . '.term_id = taxonomy_terms.id and ' . $this->getTable() . '.object_id=:object_id', |
| 97 | 97 | [':object_id' => $object_id]) |
| 98 | 98 | ->andFilterWhere([TaxonomyTerms::tableName() . '.term' => $name]); |
| 99 | - foreach($query->all() as $v) |
|
| 100 | - $result[$v['term']] = $v['value']; |
|
| 99 | + foreach($query->all() as $v) { |
|
| 100 | + $result[$v['term']] = $v['value']; |
|
| 101 | + } |
|
| 101 | 102 | return isset($result) ? $result : []; |
| 102 | 103 | } |
| 103 | 104 | } |
@@ -17,7 +17,7 @@ discard block |
||
| 17 | 17 | |
| 18 | 18 | class PropertyTerm extends BaseTerm { |
| 19 | 19 | |
| 20 | - public $templateFile = '@nkostadinov/taxonomy/migrations/template/properties.php' ; |
|
| 20 | + public $templateFile = '@nkostadinov/taxonomy/migrations/template/properties.php'; |
|
| 21 | 21 | |
| 22 | 22 | public $updateOnExist = true; |
| 23 | 23 | |
@@ -33,14 +33,14 @@ discard block |
||
| 33 | 33 | 'value' => Schema::TYPE_STRING, |
| 34 | 34 | ]); |
| 35 | 35 | if ($migration->db->driverName === 'mysql') { |
| 36 | - $migration->addForeignKey('fk_' . $this->getTable() . '_' . $this->getRefTableName(), $this->getTable(), 'object_id', $this->getRefTableName(), 'id', 'CASCADE'); |
|
| 37 | - $migration->addForeignKey('fk_' . $this->getTable() . '_' . TaxonomyTerms::tableName(), $this->getTable(), 'term_id', TaxonomyTerms::tableName(), 'id', 'CASCADE'); |
|
| 36 | + $migration->addForeignKey('fk_'.$this->getTable().'_'.$this->getRefTableName(), $this->getTable(), 'object_id', $this->getRefTableName(), 'id', 'CASCADE'); |
|
| 37 | + $migration->addForeignKey('fk_'.$this->getTable().'_'.TaxonomyTerms::tableName(), $this->getTable(), 'term_id', TaxonomyTerms::tableName(), 'id', 'CASCADE'); |
|
| 38 | 38 | } |
| 39 | 39 | } |
| 40 | 40 | |
| 41 | 41 | public function addTerm($object_id, $params) |
| 42 | 42 | { |
| 43 | - foreach($params as $item => $value) { |
|
| 43 | + foreach ($params as $item => $value) { |
|
| 44 | 44 | $term = TaxonomyTerms::findOne(['term' => $item, 'taxonomy_id' => $this->id]); |
| 45 | 45 | if (!isset($term)) { |
| 46 | 46 | $term = new TaxonomyTerms(); |
@@ -66,8 +66,8 @@ discard block |
||
| 66 | 66 | } catch (Exception $e) { |
| 67 | 67 | $transaction->rollBack(); |
| 68 | 68 | } |
| 69 | - } elseif($this->updateOnExist) { |
|
| 70 | - $this->getDb()->createCommand()->update($this->getTable(), [ 'value' => $value ], $data)->execute(); |
|
| 69 | + } elseif ($this->updateOnExist) { |
|
| 70 | + $this->getDb()->createCommand()->update($this->getTable(), ['value' => $value], $data)->execute(); |
|
| 71 | 71 | } |
| 72 | 72 | } |
| 73 | 73 | } |
@@ -75,7 +75,7 @@ discard block |
||
| 75 | 75 | public function removeTerm($object_id, $params = []) |
| 76 | 76 | { |
| 77 | 77 | $terms = $this->getTerms($object_id, isset($params['name']) ? $params['name'] : []); |
| 78 | - foreach($terms as $term => $value) { |
|
| 78 | + foreach ($terms as $term => $value) { |
|
| 79 | 79 | $term = $this->getTaxonomyTerm($term); |
| 80 | 80 | $data['term_id'] = $term->id; |
| 81 | 81 | $data['object_id'] = $object_id; |
@@ -85,7 +85,7 @@ discard block |
||
| 85 | 85 | $this->getDb()->createCommand()->delete($this->getTable(), $data)->execute(); |
| 86 | 86 | |
| 87 | 87 | $term->updateCounters(['total_count' => -1]); |
| 88 | - TaxonomyDef::updateAllCounters(['total_count' => -1], [ 'id' => $this->id ]); |
|
| 88 | + TaxonomyDef::updateAllCounters(['total_count' => -1], ['id' => $this->id]); |
|
| 89 | 89 | } |
| 90 | 90 | } |
| 91 | 91 | } |
@@ -93,12 +93,12 @@ discard block |
||
| 93 | 93 | public function getTerms($object_id, $name = []) |
| 94 | 94 | { |
| 95 | 95 | $query = (new Query()) |
| 96 | - ->select(TaxonomyTerms::tableName() . '.term, ' . $this->getTable() . '.value') |
|
| 96 | + ->select(TaxonomyTerms::tableName().'.term, '.$this->getTable().'.value') |
|
| 97 | 97 | ->from(TaxonomyTerms::tableName()) |
| 98 | - ->innerJoin($this->getTable(), $this->getTable() . '.term_id = taxonomy_terms.id and ' . $this->getTable() . '.object_id=:object_id', |
|
| 98 | + ->innerJoin($this->getTable(), $this->getTable().'.term_id = taxonomy_terms.id and '.$this->getTable().'.object_id=:object_id', |
|
| 99 | 99 | [':object_id' => $object_id]) |
| 100 | - ->andFilterWhere([TaxonomyTerms::tableName() . '.term' => $name]); |
|
| 101 | - foreach($query->all() as $v) |
|
| 100 | + ->andFilterWhere([TaxonomyTerms::tableName().'.term' => $name]); |
|
| 101 | + foreach ($query->all() as $v) |
|
| 102 | 102 | $result[$v['term']] = $v['value']; |
| 103 | 103 | return isset($result) ? $result : []; |
| 104 | 104 | } |
@@ -19,6 +19,9 @@ discard block |
||
| 19 | 19 | |
| 20 | 20 | class Migrator extends \yii\console\controllers\MigrateController |
| 21 | 21 | { |
| 22 | + /** |
|
| 23 | + * @param string $id |
|
| 24 | + */ |
|
| 22 | 25 | public function __construct($id, $module, $config = []) |
| 23 | 26 | { |
| 24 | 27 | parent::__construct($id, $module, $config); // TODO: Change the autogenerated stub |
@@ -64,7 +67,7 @@ discard block |
||
| 64 | 67 | |
| 65 | 68 | /** |
| 66 | 69 | * Lists all TaxonomyDef models. |
| 67 | - * @return mixed |
|
| 70 | + * @return string |
|
| 68 | 71 | * @throws InvalidConfigException |
| 69 | 72 | */ |
| 70 | 73 | public function actionIndex() |
@@ -84,7 +87,7 @@ discard block |
||
| 84 | 87 | /** |
| 85 | 88 | * Displays a single TaxonomyDef model. |
| 86 | 89 | * @param integer $id |
| 87 | - * @return mixed |
|
| 90 | + * @return string |
|
| 88 | 91 | */ |
| 89 | 92 | public function actionView($id) |
| 90 | 93 | { |
@@ -157,7 +160,7 @@ discard block |
||
| 157 | 160 | * Deletes an existing TaxonomyDef model. |
| 158 | 161 | * If deletion is successful, the browser will be redirected to the 'index' page. |
| 159 | 162 | * @param integer $id |
| 160 | - * @return mixed |
|
| 163 | + * @return \yii\web\Response |
|
| 161 | 164 | */ |
| 162 | 165 | public function actionDelete($id) |
| 163 | 166 | { |
@@ -8,7 +8,6 @@ |
||
| 8 | 8 | use nkostadinov\taxonomy\models\TaxonomyDefSearch; |
| 9 | 9 | use yii\base\InvalidConfigException; |
| 10 | 10 | use yii\data\ActiveDataProvider; |
| 11 | -use yii\helpers\Url; |
|
| 12 | 11 | use yii\web\Controller; |
| 13 | 12 | use yii\web\NotFoundHttpException; |
| 14 | 13 | use yii\filters\VerbFilter; |
@@ -28,7 +28,7 @@ discard block |
||
| 28 | 28 | { |
| 29 | 29 | ob_start(); |
| 30 | 30 | //$this->migrationPath = Yii::getAlias($migrationPath); |
| 31 | - if($this->beforeAction('up')) |
|
| 31 | + if ($this->beforeAction('up')) |
|
| 32 | 32 | $this->migrateUp($class); |
| 33 | 33 | $result = ob_get_contents(); |
| 34 | 34 | return $result; |
@@ -38,7 +38,7 @@ discard block |
||
| 38 | 38 | { |
| 39 | 39 | ob_start(); |
| 40 | 40 | //$this->migrationPath = Yii::getAlias($migrationPath); |
| 41 | - if($this->beforeAction('down')) |
|
| 41 | + if ($this->beforeAction('down')) |
|
| 42 | 42 | $this->migrateDown($class); |
| 43 | 43 | $result = ob_get_contents(); |
| 44 | 44 | return $result; |
@@ -69,7 +69,7 @@ discard block |
||
| 69 | 69 | */ |
| 70 | 70 | public function actionIndex() |
| 71 | 71 | { |
| 72 | - if(!$this->getComponent()->isInstalled()) |
|
| 72 | + if (!$this->getComponent()->isInstalled()) |
|
| 73 | 73 | throw new InvalidConfigException("Please run the migration first!"); |
| 74 | 74 | |
| 75 | 75 | $searchModel = new TaxonomyDefSearch(); |
@@ -192,7 +192,7 @@ discard block |
||
| 192 | 192 | |
| 193 | 193 | public function getComponent() |
| 194 | 194 | { |
| 195 | - if(\Yii::$app->has($this->module->component)) |
|
| 195 | + if (\Yii::$app->has($this->module->component)) |
|
| 196 | 196 | return \Yii::$app->{$this->module->component}; |
| 197 | 197 | else |
| 198 | 198 | throw new InvalidConfigException("Cannot find taxonomy component({$this->module->component})"); |
@@ -200,12 +200,12 @@ discard block |
||
| 200 | 200 | |
| 201 | 201 | public function actionInstall() |
| 202 | 202 | { |
| 203 | - if(!$this->getComponent()->isInstalled() and \Yii::$app->request->isPost) { |
|
| 203 | + if (!$this->getComponent()->isInstalled() and \Yii::$app->request->isPost) { |
|
| 204 | 204 | //start installation |
| 205 | - if($this->getComponent()) { |
|
| 205 | + if ($this->getComponent()) { |
|
| 206 | 206 | $this->getComponent()->install(); |
| 207 | 207 | |
| 208 | - $this->redirect(['/'.$this->module->id . '/' . $this->id . '/index']); |
|
| 208 | + $this->redirect(['/'.$this->module->id.'/'.$this->id.'/index']); |
|
| 209 | 209 | } else |
| 210 | 210 | throw new InvalidConfigException("Cannot find taxonomy component({$this->module->component})"); |
| 211 | 211 | } |
@@ -28,8 +28,9 @@ discard block |
||
| 28 | 28 | { |
| 29 | 29 | ob_start(); |
| 30 | 30 | //$this->migrationPath = Yii::getAlias($migrationPath); |
| 31 | - if($this->beforeAction('up')) |
|
| 32 | - $this->migrateUp($class); |
|
| 31 | + if($this->beforeAction('up')) { |
|
| 32 | + $this->migrateUp($class); |
|
| 33 | + } |
|
| 33 | 34 | $result = ob_get_contents(); |
| 34 | 35 | return $result; |
| 35 | 36 | } |
@@ -38,8 +39,9 @@ discard block |
||
| 38 | 39 | { |
| 39 | 40 | ob_start(); |
| 40 | 41 | //$this->migrationPath = Yii::getAlias($migrationPath); |
| 41 | - if($this->beforeAction('down')) |
|
| 42 | - $this->migrateDown($class); |
|
| 42 | + if($this->beforeAction('down')) { |
|
| 43 | + $this->migrateDown($class); |
|
| 44 | + } |
|
| 43 | 45 | $result = ob_get_contents(); |
| 44 | 46 | return $result; |
| 45 | 47 | } |
@@ -69,8 +71,9 @@ discard block |
||
| 69 | 71 | */ |
| 70 | 72 | public function actionIndex() |
| 71 | 73 | { |
| 72 | - if(!$this->getComponent()->isInstalled()) |
|
| 73 | - throw new InvalidConfigException("Please run the migration first!"); |
|
| 74 | + if(!$this->getComponent()->isInstalled()) { |
|
| 75 | + throw new InvalidConfigException("Please run the migration first!"); |
|
| 76 | + } |
|
| 74 | 77 | |
| 75 | 78 | $searchModel = new TaxonomyDefSearch(); |
| 76 | 79 | $dataProvider = $searchModel->search(Yii::$app->request->queryParams); |
@@ -192,10 +195,11 @@ discard block |
||
| 192 | 195 | |
| 193 | 196 | public function getComponent() |
| 194 | 197 | { |
| 195 | - if(\Yii::$app->has($this->module->component)) |
|
| 196 | - return \Yii::$app->{$this->module->component}; |
|
| 197 | - else |
|
| 198 | - throw new InvalidConfigException("Cannot find taxonomy component({$this->module->component})"); |
|
| 198 | + if(\Yii::$app->has($this->module->component)) { |
|
| 199 | + return \Yii::$app->{$this->module->component}; |
|
| 200 | + } else { |
|
| 201 | + throw new InvalidConfigException("Cannot find taxonomy component({$this->module->component})"); |
|
| 202 | + } |
|
| 199 | 203 | } |
| 200 | 204 | |
| 201 | 205 | public function actionInstall() |
@@ -206,8 +210,9 @@ discard block |
||
| 206 | 210 | $this->getComponent()->install(); |
| 207 | 211 | |
| 208 | 212 | $this->redirect(['/'.$this->module->id . '/' . $this->id . '/index']); |
| 209 | - } else |
|
| 210 | - throw new InvalidConfigException("Cannot find taxonomy component({$this->module->component})"); |
|
| 213 | + } else { |
|
| 214 | + throw new InvalidConfigException("Cannot find taxonomy component({$this->module->component})"); |
|
| 215 | + } |
|
| 211 | 216 | } |
| 212 | 217 | return $this->render('install'); |
| 213 | 218 | } |
@@ -2,7 +2,6 @@ |
||
| 2 | 2 | |
| 3 | 3 | namespace nkostadinov\taxonomy\models; |
| 4 | 4 | |
| 5 | -use Yii; |
|
| 6 | 5 | use yii\base\Model; |
| 7 | 6 | use yii\data\ActiveDataProvider; |
| 8 | 7 | use nkostadinov\taxonomy\models\TaxonomyDef; |
@@ -18,9 +18,9 @@ |
||
| 18 | 18 | { |
| 19 | 19 | $this->joinTables(); |
| 20 | 20 | |
| 21 | - if(!empty($tags)) |
|
| 21 | + if (!empty($tags)) |
|
| 22 | 22 | $this->getQuery() |
| 23 | - ->andFilterWhere([ TaxonomyTerms::tableName() . '.term' => $tags ]); |
|
| 23 | + ->andFilterWhere([TaxonomyTerms::tableName().'.term' => $tags]); |
|
| 24 | 24 | |
| 25 | 25 | return $this->getQuery(); |
| 26 | 26 | } |
@@ -18,9 +18,10 @@ |
||
| 18 | 18 | { |
| 19 | 19 | $this->joinTables(); |
| 20 | 20 | |
| 21 | - if(!empty($tags)) |
|
| 22 | - $this->getQuery() |
|
| 21 | + if(!empty($tags)) { |
|
| 22 | + $this->getQuery() |
|
| 23 | 23 | ->andFilterWhere([ TaxonomyTerms::tableName() . '.term' => $tags ]); |
| 24 | + } |
|
| 24 | 25 | |
| 25 | 26 | return $this->getQuery(); |
| 26 | 27 | } |
@@ -1,6 +1,6 @@ |
||
| 1 | 1 | <?php |
| 2 | 2 | /** |
| 3 | - * User: Phreak |
|
| 3 | + * User: Phreak |
|
| 4 | 4 | * Date: 13.02.2015 |
| 5 | 5 | * Time: 09:31 ч. |
| 6 | 6 | */ |
@@ -22,8 +22,8 @@ |
||
| 22 | 22 | |
| 23 | 23 | /** @var ActiveRecord $this->owner */ |
| 24 | 24 | $this->getQuery() |
| 25 | - ->leftJoin($this->taxonomy->table, $this->taxonomy->table . '.object_id = ' . $model::tableName() . '.id') |
|
| 26 | - ->leftJoin(TaxonomyTerms::tableName(), TaxonomyTerms::tableName() . '.id = ' . $this->taxonomy->table . '.term_id'); |
|
| 25 | + ->leftJoin($this->taxonomy->table, $this->taxonomy->table.'.object_id = '.$model::tableName().'.id') |
|
| 26 | + ->leftJoin(TaxonomyTerms::tableName(), TaxonomyTerms::tableName().'.id = '.$this->taxonomy->table.'.term_id'); |
|
| 27 | 27 | } |
| 28 | 28 | |
| 29 | 29 | /** |
@@ -13,7 +13,7 @@ |
||
| 13 | 13 | $message = Yii::$app->session->getFlash('info'); |
| 14 | 14 | ?> |
| 15 | 15 | <div class="taxonomy-def-index"> |
| 16 | - <?php if(isset($message)) |
|
| 16 | + <?php if (isset($message)) |
|
| 17 | 17 | echo Alert::widget([ |
| 18 | 18 | 'options' => [ |
| 19 | 19 | 'class' => 'alert-info', |
@@ -13,13 +13,14 @@ |
||
| 13 | 13 | $message = Yii::$app->session->getFlash('info'); |
| 14 | 14 | ?> |
| 15 | 15 | <div class="taxonomy-def-index"> |
| 16 | - <?php if(isset($message)) |
|
| 16 | + <?php if(isset($message)) { |
|
| 17 | 17 | echo Alert::widget([ |
| 18 | 18 | 'options' => [ |
| 19 | 19 | 'class' => 'alert-info', |
| 20 | 20 | ], |
| 21 | 21 | 'body' => nl2br($message), |
| 22 | 22 | ]); |
| 23 | +} |
|
| 23 | 24 | ?> |
| 24 | 25 | |
| 25 | 26 | <h1><?= Html::encode($this->title) ?></h1> |
@@ -5,7 +5,7 @@ |
||
| 5 | 5 | /* @var $this yii\web\View */ |
| 6 | 6 | /* @var $model nkostadinov\taxonomy\models\TaxonomyDef */ |
| 7 | 7 | |
| 8 | -$this->title = 'Update Taxonomy Def: ' . ' ' . $model->name; |
|
| 8 | +$this->title = 'Update Taxonomy Def: '.' '.$model->name; |
|
| 9 | 9 | $this->params['breadcrumbs'][] = ['label' => 'Taxonomy Defs', 'url' => ['index']]; |
| 10 | 10 | $this->params['breadcrumbs'][] = ['label' => $model->name, 'url' => ['view', 'id' => $model->id]]; |
| 11 | 11 | $this->params['breadcrumbs'][] = 'Update'; |
@@ -62,7 +62,7 @@ |
||
| 62 | 62 | */ |
| 63 | 63 | public function getTerm($termName, $reload = false) |
| 64 | 64 | { |
| 65 | - if(!isset($this->_taxonomy[$termName]) || $reload) { |
|
| 65 | + if (!isset($this->_taxonomy[$termName]) || $reload) { |
|
| 66 | 66 | $tax = TaxonomyDef::findOne(['name' => $termName]); |
| 67 | 67 | \Yii::getLogger()->log("Initialising term $termName", Logger::LEVEL_INFO, 'nkostadinov.taxonomy.terms'); |
| 68 | 68 | $this->_taxonomy[$termName] = \Yii::createObject($tax->attributes); |
@@ -17,13 +17,13 @@ |
||
| 17 | 17 | $this->joinTables(); |
| 18 | 18 | |
| 19 | 19 | |
| 20 | - if(!empty($name)) |
|
| 20 | + if (!empty($name)) |
|
| 21 | 21 | $this->getQuery() |
| 22 | - ->andFilterWhere([ TaxonomyTerms::tableName() . '.term' => $name ]); |
|
| 22 | + ->andFilterWhere([TaxonomyTerms::tableName().'.term' => $name]); |
|
| 23 | 23 | |
| 24 | - if(!empty($value)) |
|
| 24 | + if (!empty($value)) |
|
| 25 | 25 | $this->getQuery() |
| 26 | - ->andFilterWhere([ $this->taxonomy->table . '.value' => $value ]); |
|
| 26 | + ->andFilterWhere([$this->taxonomy->table.'.value' => $value]); |
|
| 27 | 27 | |
| 28 | 28 | return $this->getQuery(); |
| 29 | 29 | } |
@@ -17,13 +17,15 @@ |
||
| 17 | 17 | $this->joinTables(); |
| 18 | 18 | |
| 19 | 19 | |
| 20 | - if(!empty($name)) |
|
| 21 | - $this->getQuery() |
|
| 20 | + if(!empty($name)) { |
|
| 21 | + $this->getQuery() |
|
| 22 | 22 | ->andFilterWhere([ TaxonomyTerms::tableName() . '.term' => $name ]); |
| 23 | + } |
|
| 23 | 24 | |
| 24 | - if(!empty($value)) |
|
| 25 | - $this->getQuery() |
|
| 25 | + if(!empty($value)) { |
|
| 26 | + $this->getQuery() |
|
| 26 | 27 | ->andFilterWhere([ $this->taxonomy->table . '.value' => $value ]); |
| 28 | + } |
|
| 27 | 29 | |
| 28 | 30 | return $this->getQuery(); |
| 29 | 31 | } |