diff options
Diffstat (limited to 'fai_gestion/plugins/CustomTheme/src/Template/Bake/Model/table.twig')
-rw-r--r-- | fai_gestion/plugins/CustomTheme/src/Template/Bake/Model/table.twig | 138 |
1 files changed, 138 insertions, 0 deletions
diff --git a/fai_gestion/plugins/CustomTheme/src/Template/Bake/Model/table.twig b/fai_gestion/plugins/CustomTheme/src/Template/Bake/Model/table.twig new file mode 100644 index 0000000..94ad17c --- /dev/null +++ b/fai_gestion/plugins/CustomTheme/src/Template/Bake/Model/table.twig @@ -0,0 +1,138 @@ +{# +/** + * CakePHP(tm) : Rapid Development Framework (http://cakephp.org) + * Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org) + * + * Licensed under The MIT License + * For full copyright and license information, please see the LICENSE.txt + * Redistributions of files must retain the above copyright notice. + * + * @copyright Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org) + * @link http://cakephp.org CakePHP(tm) Project + * @since 2.0.0 + * @license http://www.opensource.org/licenses/mit-license.php MIT License + */ +#} +{% set annotations = DocBlock.buildTableAnnotations(associations, associationInfo, behaviors, entity, namespace) %} +<?php +namespace {{ namespace }}\Model\Table; + +{% set uses = ['use Cake\\ORM\\Query;', 'use Cake\\ORM\\RulesChecker;', 'use Cake\\ORM\\Table;', 'use Cake\\Validation\\Validator;'] %} +{{ uses|join('\n')|raw }} + +{{ DocBlock.classDescription(name, 'Model', annotations)|raw }} +class {{ name }}Table extends Table +{ + + /** + * Initialize method + * + * @param array $config The configuration for the Table. + * @return void + */ + public function initialize(array $config) + { + parent::initialize($config); + +{% if table %} + $this->setTable('{{ table }}'); +{% endif %} + +{%- if displayField %} + $this->setDisplayField('{{ displayField }}'); +{% endif %} + +{%- if primaryKey %} + {%- if primaryKey is iterable and primaryKey|length > 1 %} + $this->setPrimaryKey([{{ Bake.stringifyList(primaryKey, {'indent': false})|raw }}]); + {{- "\n" }} + {%- else %} + $this->setPrimaryKey('{{ primaryKey|as_array|first }}'); + {{- "\n" }} + {%- endif %} +{% endif %} + +{%- if behaviors %} + +{% endif %} + +{%- for behavior, behaviorData in behaviors %} + $this->addBehavior('{{ behavior }}'{{ (behaviorData ? (", [" ~ Bake.stringifyList(behaviorData, {'indent': 3, 'quotes': false})|raw ~ ']') : '')|raw }}); +{% endfor %} + +{%- if associations.belongsTo or associations.hasMany or associations.belongsToMany %} + +{% endif %} + +{%- for type, assocs in associations %} + {%- for assoc in assocs %} + {%- set assocData = [] %} + {%- for key, val in assoc if key is not same as('alias') %} + {%- set assocData = assocData|merge({(key): val}) %} + {%- endfor %} + $this->{{ type }}('{{ assoc.alias }}', [{{ Bake.stringifyList(assocData, {'indent': 3})|raw }}]); + {{- "\n" }} + {%- endfor %} +{% endfor %} + } +{{- "\n" }} + +{%- if validation %} + + /** + * Default validation rules. + * + * @param \Cake\Validation\Validator $validator Validator instance. + * @return \Cake\Validation\Validator + */ + public function validationDefault(Validator $validator) + { +{% for field, rules in validation %} +{% set validationMethods = Bake.getValidationMethods(field, rules) %} +{% if validationMethods %} + $validator +{% for validationMethod in validationMethods %} +{% if loop.last %} +{% set validationMethod = validationMethod ~ ';' %} +{% endif %} + {{ validationMethod|raw }} +{% endfor %} + +{% endif %} +{% endfor %} + return $validator; + } +{% endif %} + +{%- if rulesChecker %} + + /** + * Returns a rules checker object that will be used for validating + * application integrity. + * + * @param \Cake\ORM\RulesChecker $rules The rules object to be modified. + * @return \Cake\ORM\RulesChecker + */ + public function buildRules(RulesChecker $rules) + { +{% for field, rule in rulesChecker %} + $rules->add($rules->{{ rule.name }}(['{{ field }}']{{ (rule.extra is defined and rule.extra ? (", '#{rule.extra}'") : '')|raw }})); +{% endfor %} + + return $rules; + } +{% endif %} + +{%- if connection is not same as('default') %} + + /** + * Returns the database connection name to use by default. + * + * @return string + */ + public static function defaultConnectionName() + { + return '{{ connection }}'; + } +{% endif %} +} |