adding example apps, fixing powerup issues
[feisty_meow.git] / production / example_apps / zippy_maps / src / Model / Table / CategoriesLocationsTable.php
1 <?php
2 namespace App\Model\Table;
3
4 use Cake\ORM\Query;
5 use Cake\ORM\RulesChecker;
6 use Cake\ORM\Table;
7 use Cake\Validation\Validator;
8
9 /**
10  * CategoriesLocations Model
11  *
12  * @property \Cake\ORM\Association\BelongsTo $Locations
13  * @property \Cake\ORM\Association\BelongsTo $Categories
14  *
15  * @method \App\Model\Entity\CategoriesLocation get($primaryKey, $options = [])
16  * @method \App\Model\Entity\CategoriesLocation newEntity($data = null, array $options = [])
17  * @method \App\Model\Entity\CategoriesLocation[] newEntities(array $data, array $options = [])
18  * @method \App\Model\Entity\CategoriesLocation|bool save(\Cake\Datasource\EntityInterface $entity, $options = [])
19  * @method \App\Model\Entity\CategoriesLocation patchEntity(\Cake\Datasource\EntityInterface $entity, array $data, array $options = [])
20  * @method \App\Model\Entity\CategoriesLocation[] patchEntities($entities, array $data, array $options = [])
21  * @method \App\Model\Entity\CategoriesLocation findOrCreate($search, callable $callback = null, $options = [])
22  *
23  * @mixin \Cake\ORM\Behavior\TimestampBehavior
24  */
25 class CategoriesLocationsTable extends Table
26 {
27
28     /**
29      * Initialize method
30      *
31      * @param array $config The configuration for the Table.
32      * @return void
33      */
34     public function initialize(array $config)
35     {
36         parent::initialize($config);
37
38         $this->setTable('categories_locations');
39         $this->setDisplayField('id');
40         $this->setPrimaryKey('id');
41
42         $this->addBehavior('Timestamp');
43
44         $this->belongsTo('Locations', [
45             'foreignKey' => 'location_id',
46             'joinType' => 'INNER'
47         ]);
48         $this->belongsTo('Categories', [
49             'foreignKey' => 'category_id',
50             'joinType' => 'INNER'
51         ]);
52     }
53
54     /**
55      * Default validation rules.
56      *
57      * @param \Cake\Validation\Validator $validator Validator instance.
58      * @return \Cake\Validation\Validator
59      */
60     public function validationDefault(Validator $validator)
61     {
62         $validator
63             ->integer('id')
64             ->allowEmpty('id', 'create');
65
66         return $validator;
67     }
68
69     /**
70      * Returns a rules checker object that will be used for validating
71      * application integrity.
72      *
73      * @param \Cake\ORM\RulesChecker $rules The rules object to be modified.
74      * @return \Cake\ORM\RulesChecker
75      */
76     public function buildRules(RulesChecker $rules)
77     {
78         $rules->add($rules->existsIn(['location_id'], 'Locations'));
79         $rules->add($rules->existsIn(['category_id'], 'Categories'));
80
81         return $rules;
82     }
83 }