diff --git a/src/Controller/EmpruntsController.php b/src/Controller/EmpruntsController.php index fb2270b..e1c6549 100755 --- a/src/Controller/EmpruntsController.php +++ b/src/Controller/EmpruntsController.php @@ -24,8 +24,10 @@ class EmpruntsController extends AppController 'contain' => ['Materiels'] ]; $emprunts = $this->paginate($this->Emprunts); - - $this->set(compact('emprunts')); + + $sites = TableRegistry::get('Sites')->find('list', [ 'keyField' => 'id', 'valueField' => 'nom'])->toArray(); + + $this->set(compact('emprunts', 'sites')); $this->set('_serialize', ['emprunts']); } @@ -42,6 +44,9 @@ class EmpruntsController extends AppController 'contain' => ['Materiels'] ]); + $site = TableRegistry::get('Sites')->find()->where(['id =' => $emprunt->get('e_lieu_stockage')])->first()['nom']; + $this->set('site', $site); + $this->set('emprunt', $emprunt); $this->set('_serialize', ['emprunt']); } diff --git a/src/Model/Table/AppTable.php b/src/Model/Table/AppTable.php new file mode 100644 index 0000000..e34d65d --- /dev/null +++ b/src/Model/Table/AppTable.php @@ -0,0 +1,29 @@ +string.']*$/', $check); + } + + // autoriser les caracteres spéciaux (pour une PHRASE ou paragraphe) : + // check_string PLUS ces symboles ====> & * > < ? % ! : , " ' + public function check_string_with_some_special_cars($check) { + return (bool) preg_match('/^['.$this->string.'?%!:,&*><\-\+\="\''.']*$/', $check); + } + + + + +} diff --git a/src/Model/Table/CategoriesTable.php b/src/Model/Table/CategoriesTable.php index a3a1a5a..6feb6c0 100755 --- a/src/Model/Table/CategoriesTable.php +++ b/src/Model/Table/CategoriesTable.php @@ -12,7 +12,7 @@ use Cake\Validation\Validator; * * @property \Cake\ORM\Association\BelongsTo $SurCategories */ -class CategoriesTable extends Table +class CategoriesTable extends AppTable { /** @@ -49,6 +49,7 @@ class CategoriesTable extends Table $validator ->requirePresence('nom', 'create') + ->add('nom', 'valid', ['rule' => ['check_string'], 'message' => 'Le champ doit être valide.', 'provider' => 'table']) ->notEmpty('nom') ->add('nom', 'unique', ['rule' => 'validateUnique', 'provider' => 'table']); diff --git a/src/Model/Table/DocumentsTable.php b/src/Model/Table/DocumentsTable.php index 3f0bd19..9477040 100755 --- a/src/Model/Table/DocumentsTable.php +++ b/src/Model/Table/DocumentsTable.php @@ -13,7 +13,7 @@ use Cake\Validation\Validator; * @property \Cake\ORM\Association\BelongsTo $Materiels * @property \Cake\ORM\Association\BelongsTo $Suivis */ -class DocumentsTable extends Table +class DocumentsTable extends AppTable { /** diff --git a/src/Model/Table/EmpruntsTable.php b/src/Model/Table/EmpruntsTable.php index 7d27224..8bd61dc 100755 --- a/src/Model/Table/EmpruntsTable.php +++ b/src/Model/Table/EmpruntsTable.php @@ -6,13 +6,16 @@ use Cake\ORM\Query; use Cake\ORM\RulesChecker; use Cake\ORM\Table; use Cake\Validation\Validator; +use Cake\ORM\toArray; +use Cake\Validation\Validation; + /** * Emprunts Model * * @property \Cake\ORM\Association\BelongsTo $Materiels */ -class EmpruntsTable extends Table +class EmpruntsTable extends AppTable { /** @@ -50,47 +53,68 @@ class EmpruntsTable extends Table ->allowEmpty('id', 'create'); $validator - ->allowEmpty('date_emprunt'); + ->notEmpty('date_emprunt', 'Une date d\'emprunt doit être saisi'); $validator - ->allowEmpty('date_retour_emprunt') - ->add('nom_emprunteur_ext', 'valid', ['rule' => ['checkReturnDateIsAfterLoanDate'], 'message' => 'La date de retour doit être postérieure à la date de l\'emprunt.', 'provider' => 'table']); + ->notEmpty('date_retour_emprunt', 'Une date de retour doit être saisie'); $validator ->boolean('emprunt_interne') ->allowEmpty('emprunt_interne'); $validator - ->allowEmpty('laboratoire') - ->add('laboratoire', 'valid', ['rule' => ['check_string'], 'message' => 'Le champ doit être valide.', 'provider' => 'table']) - ->add('laboratoire', 'valid', ['rule' => ['checkLaboratoire'], 'message' => 'Le champ doit être rempli pour un emprunt externe.', 'provider' => 'table']); - - /* - $validator - ->notEmpty('e_lieu_stockage'); - */ + ->notEmpty('nom_emprunteur_int', 'Le champ doit être rempli.', function ($context) { + if (isset($context['data']['emprunt_interne'])) { + return $context['data']['emprunt_interne']; + } + }); $validator - ->allowEmpty('e_lieu_detail') - ->add('e_lieu_detail', 'valid', ['rule' => ['check_string'], 'message' => 'Le champ doit être valide.', 'provider' => 'table']) - ->add('e_lieu_detail', 'valid', ['rule' => ['checkLieu'], 'message' => 'Le champ doit être rempli pour un emprunt interne.', 'provider' => 'table']); - - /* + ->notEmpty('email_emprunteur_int', 'Cet Email n\'est pas valide.', function ($context) { + if (isset($context['data']['emprunt_interne'])) { + return $context['data']['emprunt_interne']; + } + }); + $validator - ->notEmpty('nom_emprunteur_int'); - */ + ->notEmpty('e_lieu_detail', 'Le champ doit être rempli pour un emprunt interne.', function ($context) { + if (isset($context['data']['emprunt_interne'])) { + return $context['data']['emprunt_interne']; + } + }) + ->add('e_lieu_detail', 'valid', ['rule' => ['check_string'], 'message' => 'Le champ doit être valide.', 'provider' => 'table']); + $validator - ->allowEmpty('email_emprunteur_int'); + ->notEmpty('laboratoire', 'Le champ doit être rempli pour un emprunt externe.', function ($context) { + if (isset($context['data']['emprunt_interne'])) { + return !$context['data']['emprunt_interne']; + } + }) + ->add('laboratoire', 'valid', ['rule' => ['check_string'], 'message' => 'Le champ doit être valide.', 'provider' => 'table']); + + $validator - ->allowEmpty('nom_emprunteur_ext') - ->add('nom_emprunteur_ext', 'valid', ['rule' => ['checkEmpruntExt'], 'message' => 'Le champ doit être rempli.', 'provider' => 'table']); + ->notEmpty('nom_emprunteur_ext', 'Le champ doit être rempli.', function ($context) { + if (isset($context['data']['emprunt_interne'])) { + return !$context['data']['emprunt_interne']; + } + }); $validator - ->allowEmpty('email_emprunteur_ext') - ->add('email_emprunteur_ext', 'valid', ['rule' => ['checkEmailExt'], 'message' => 'Cet Email n\'est pas valide.', 'provider' => 'table']); - + ->notEmpty('email_emprunteur_ext', 'Cet Email n\'est pas valide.', function ($context) { + if (isset($context['data']['emprunt_interne'])) { + return !$context['data']['emprunt_interne']; + /* + if (!$context['data']['emprunt_interne']) { + return (Validation::email($context['data']['email_emprunteur_ext'])); + } + */ + } + }); + + $validator ->allowEmpty('commentaire') ->add('commentaire', 'valid', ['rule' => ['check_string_with_some_special_cars'], 'message' => 'Le champ doit être valide.', 'provider' => 'table']); @@ -99,56 +123,6 @@ class EmpruntsTable extends Table } - // autoriser les caracteres habituels standards pour un ou plusieurs MOTs - // accents + - _ / () . , \s (=space) - private $string = "a-zA-Z0-9éèàùâêôîôûç%().,\/\s\+\-_"; - - public function check_string($check) { - return (bool) preg_match('/^['.$this->string.']*$/', $check); - } - - // autoriser les caracteres spéciaux (pour une PHRASE ou paragraphe) : - // check_string PLUS ces symboles ====> & * > < ? % ! : , " ' - public function check_string_with_some_special_cars($check) { - return (bool) preg_match('/^['.$this->string.'?%!:,&*><\-\+\="\''.']*$/', $check); - } - - function checkReturnDateIsAfterLoanDate() { - /* - $dateEmprunt = $this->data [$this->name] ['date_emprunt']; - $dateRetour = $this->data [$this->name] ['date_retour_emprunt']; - $dateEmprunt = explode("-", $dateEmprunt); - $dateRetour = explode("-", $dateRetour); - $dateEmprunt = $dateEmprunt[2].$dateEmprunt[1].$dateEmprunt[0]; - $dateRetour = $dateRetour[2].$dateRetour[1].$dateRetour[0]; - if ($dateEmprunt > $dateRetour) { - return false; - } - return true; - */ - return true; - } - - function checkEmprunt() { - //return ($this->data [$this->name] ['emprunt_interne'] == 1 || $this->data [$this->name] ['nom_emprunteur_ext'] != ''); - return true; - } - - function checkEmail() { - //return ($this->data [$this->name] ['emprunt_interne'] == 1 || Validation::email ( $this->data [$this->name] ['email_emprunteur_ext'] )); - return true; - } - - function checkLaboratoire() { - //return ((($this->data [$this->name] ['emprunt_interne'] == 0) && ($this->data [$this->name] ['laboratoire'] != '')) || ($this->data [$this->name] ['emprunt_interne'] == 1)); - return true; - } - - function checkLieu() { - //return ((($this->data [$this->name] ['emprunt_interne'] == 1) && ($this->data [$this->name] ['e_lieu_detail'] != '')) || ($this->data [$this->name] ['emprunt_interne'] == 0)); - return true; - } - /** * Returns a rules checker object that will be used for validating * application integrity. @@ -158,7 +132,58 @@ class EmpruntsTable extends Table */ public function buildRules(RulesChecker $rules) { - $rules->add($rules->existsIn(['materiel_id'], 'Materiels')); - return $rules; + + $checkReturnDateIsAfterLoanDate = function ($entity) { + $dateEmprunt = $entity->date_emprunt; + $dateRetour = $entity->date_retour_emprunt; + $dateEmprunt = explode("/", $dateEmprunt); + $dateRetour = explode("/", $dateRetour); + $dateEmprunt = $dateEmprunt[2].$dateEmprunt[1].$dateEmprunt[0]; + $dateRetour = $dateRetour[2].$dateRetour[1].$dateRetour[0]; + if ($dateEmprunt > $dateRetour) { + return false; + } + return true; + }; + + $rules->add($checkReturnDateIsAfterLoanDate, [ + 'errorField' => 'date_retour_emprunt', + 'message' => 'La date de retour doit être postérieure à la date de l\'emprunt.' + ]); + + $rules->add($rules->existsIn(['materiel_id'], 'Materiels')); + return $rules; } + + + public function beforeSave($event, $entity, $options) + { + if (! empty ( $entity->toArray() )) { + $name = ''; + $email = ''; + + // EMPRUNT INTERNE ? + if ($entity->get('emprunt_interne') == 1) { + $name = $entity->get('nom_emprunteur_int'); + $email = $entity->get('email_emprunteur_int'); + } + // EMPRUNT EXTERNE + else { + $name = $entity->get('nom_emprunteur_ext'); + $email = $entity->get('email_emprunteur_ext'); + } + + $entity->set('nom_emprunteur', $name); + $entity->set('email_emprunteur', $email); + + + } + return true; + } + + + + + + } diff --git a/src/Model/Table/GroupesMetiersTable.php b/src/Model/Table/GroupesMetiersTable.php index 6729528..fd1a37a 100755 --- a/src/Model/Table/GroupesMetiersTable.php +++ b/src/Model/Table/GroupesMetiersTable.php @@ -13,7 +13,7 @@ use Cake\Validation\Validator; * @property \Cake\ORM\Association\HasMany $Materiels * @property \Cake\ORM\Association\HasMany $Users */ -class GroupesMetiersTable extends Table +class GroupesMetiersTable extends AppTable { /** @@ -51,10 +51,12 @@ class GroupesMetiersTable extends Table ->allowEmpty('id', 'create'); $validator - ->allowEmpty('nom'); + ->allowEmpty('nom') + ->add('nom', 'valid', ['rule' => ['check_string'], 'message' => 'Le champ doit être valide.', 'provider' => 'table']); $validator - ->allowEmpty('description'); + ->allowEmpty('description') + ->add('description', 'valid', ['rule' => ['check_string_with_some_special_cars'], 'message' => 'Le champ doit être valide.', 'provider' => 'table']); return $validator; } diff --git a/src/Model/Table/GroupesThematiquesTable.php b/src/Model/Table/GroupesThematiquesTable.php index de7d24a..2615dc8 100755 --- a/src/Model/Table/GroupesThematiquesTable.php +++ b/src/Model/Table/GroupesThematiquesTable.php @@ -12,7 +12,7 @@ use Cake\Validation\Validator; * * @property \Cake\ORM\Association\HasMany $Materiels */ -class GroupesThematiquesTable extends Table +class GroupesThematiquesTable extends AppTable { /** @@ -47,10 +47,12 @@ class GroupesThematiquesTable extends Table ->allowEmpty('id', 'create'); $validator - ->allowEmpty('nom'); + ->allowEmpty('nom') + ->add('nom', 'valid', ['rule' => ['check_string'], 'message' => 'Le champ doit être valide.', 'provider' => 'table']); $validator - ->allowEmpty('description'); + ->allowEmpty('description') + ->add('description', 'valid', ['rule' => ['check_string_with_some_special_cars'], 'message' => 'Le champ doit être valide.', 'provider' => 'table']); return $validator; } diff --git a/src/Model/Table/MaterielsTable.php b/src/Model/Table/MaterielsTable.php index 3234992..19bc43f 100755 --- a/src/Model/Table/MaterielsTable.php +++ b/src/Model/Table/MaterielsTable.php @@ -21,7 +21,7 @@ use Cake\Validation\Validator; * @property \Cake\ORM\Association\HasMany $Emprunts * @property \Cake\ORM\Association\HasMany $Suivis */ -class MaterielsTable extends Table +class MaterielsTable extends AppTable { public $ALL_STATUS = array('CREATED', 'VALIDATED', 'TOBEARCHIVED', 'ARCHIVED'); @@ -107,11 +107,8 @@ class MaterielsTable extends Table $validator ->boolean('materiel_administratif') - ->allowEmpty('materiel_administratif') - ->add('materiel_administratif', 'valid', ['rule' => 'checkAtLeastOneChecked', 'message' => 'Le matériel est obligatoirement inventoriable ou technique', 'provider' => 'table']) - ->add('materiel_administratif', 'mustbeadministratif', ['rule' => 'checkIfIsAdministratifWhenShouldBe', 'message' => 'Le matériel vaut plus de 800€ HT, il est donc obligatoirement inventoriable', 'provider' => 'table']) - ->add('materiel_administratif', 'canbeadministratif', ['rule' => 'checkIfIsNotAdministratifWhenShouldNotBe', 'message' => 'Le matériel vaut moins de 800€ HT, il n\'est donc pas inventoriable', 'provider' => 'table']); - + ->allowEmpty('materiel_administratif'); + $validator ->boolean('materiel_technique') ->allowEmpty('materiel_technique'); @@ -189,44 +186,11 @@ class MaterielsTable extends Table } - // autoriser les caracteres habituels standards pour un ou plusieurs MOTs - // accents + - _ / () . , \s (=space) - private $string = "a-zA-Z0-9éèàùâêôîôûç%().,\/\s\+\-_"; - - public function check_string($check) { - return (bool) preg_match('/^['.$this->string.']*$/', $check); - } - - // autoriser les caracteres spéciaux (pour une PHRASE ou paragraphe) : - // check_string PLUS ces symboles ====> & * > < ? % ! : , " ' - public function check_string_with_some_special_cars($check) { - return (bool) preg_match('/^['.$this->string.'?%!:,&*><\-\+\="\''.']*$/', $check); - } public function checkStatus($check) { return ( isset($check) && in_array($check, $this->ALL_STATUS) ); } - public function checkAtLeastOneChecked() { - //return ( 'materiel_administratif' || 'materiel_technique'); - return true; - } - - // return if price >=800€ then must be checked as "administratif" - public function checkIfIsAdministratifWhenShouldBe() { - //error_log('test : '.$this->materiel->prix_ht); - - //return ! ( isset($this->prix_ht) && $this->prix_ht >= 800 && !$this->materiel_administratif ); - return true; - } - - // return if price <800€ then must NOT be checked as "administratif" - public function checkIfIsNotAdministratifWhenShouldNotBe() { - //return ! ( isset($this->prix_ht) && $this->prix_ht < 800 && $this->materiel_administratif ); - return true; - } - - /** * Returns a rules checker object that will be used for validating @@ -237,6 +201,38 @@ class MaterielsTable extends Table */ public function buildRules(RulesChecker $rules) { + + + $checkAtLeastOneChecked = function($entity) { + return ( $entity->materiel_administratif || $entity->materiel_technique); + }; + + // return if price >=800€ then must be checked as "administratif" + $checkIfIsAdministratifWhenShouldBe = function ($entity) { + return ! ( isset($entity->prix_ht) && $entity->prix_ht >= 800 && !$entity->materiel_administratif ); + }; + + // return if price <800€ then must NOT be checked as "administratif" + $checkIfIsNotAdministratifWhenShouldNotBe = function ($entity) { + return ! ( isset($entity->prix_ht) && $entity->prix_ht < 800 && $entity->materiel_administratif ); + }; + + + $rules->add($checkAtLeastOneChecked, [ + 'errorField' => 'materiel_administratif', + 'message' => 'Le matériel est obligatoirement inventoriable ou technique.' + ]); + $rules->add($checkIfIsAdministratifWhenShouldBe, [ + 'errorField' => 'materiel_administratif', + 'message' => 'Le matériel vaut plus de 800€ HT, il est donc obligatoirement inventoriable.' + ]); + $rules->add($checkIfIsNotAdministratifWhenShouldNotBe, [ + 'errorField' => 'materiel_administratif', + 'message' => 'Le matériel vaut moins de 800€ HT, il n\'est donc pas inventoriable.' + ]); + + + $rules->add($rules->isUnique(['numero_laboratoire'])); $rules->add($rules->existsIn(['sur_categorie_id'], 'SurCategories')); $rules->add($rules->existsIn(['categorie_id'], 'Categories')); diff --git a/src/Model/Table/OrganismesTable.php b/src/Model/Table/OrganismesTable.php index 6e33a52..7b9d4a5 100755 --- a/src/Model/Table/OrganismesTable.php +++ b/src/Model/Table/OrganismesTable.php @@ -12,7 +12,7 @@ use Cake\Validation\Validator; * * @property \Cake\ORM\Association\HasMany $Materiels */ -class OrganismesTable extends Table +class OrganismesTable extends AppTable { /** @@ -47,7 +47,8 @@ class OrganismesTable extends Table ->allowEmpty('id', 'create'); $validator - ->allowEmpty('nom'); + ->allowEmpty('nom') + ->add('nom', 'valid', ['rule' => ['check_string'], 'message' => 'Le champ doit être valide.', 'provider' => 'table']); return $validator; } diff --git a/src/Model/Table/SitesTable.php b/src/Model/Table/SitesTable.php index 0120726..2f1da68 100755 --- a/src/Model/Table/SitesTable.php +++ b/src/Model/Table/SitesTable.php @@ -12,7 +12,7 @@ use Cake\Validation\Validator; * * @property \Cake\ORM\Association\HasMany $Materiels */ -class SitesTable extends Table +class SitesTable extends AppTable { /** @@ -47,7 +47,8 @@ class SitesTable extends Table ->allowEmpty('id', 'create'); $validator - ->allowEmpty('nom'); + ->allowEmpty('nom') + ->add('nom', 'valid', ['rule' => ['check_string'], 'message' => 'Le champ doit être valide.', 'provider' => 'table']); return $validator; } diff --git a/src/Model/Table/SousCategoriesTable.php b/src/Model/Table/SousCategoriesTable.php index aeb9cbb..56ff68b 100755 --- a/src/Model/Table/SousCategoriesTable.php +++ b/src/Model/Table/SousCategoriesTable.php @@ -12,7 +12,7 @@ use Cake\Validation\Validator; * * @property \Cake\ORM\Association\BelongsTo $Categories */ -class SousCategoriesTable extends Table +class SousCategoriesTable extends AppTable { /** @@ -49,7 +49,8 @@ class SousCategoriesTable extends Table $validator ->requirePresence('nom', 'create') - ->notEmpty('nom'); + ->notEmpty('nom') + ->add('nom', 'valid', ['rule' => ['check_string'], 'message' => 'Le champ doit être valide.', 'provider' => 'table']); return $validator; } diff --git a/src/Model/Table/SuivisTable.php b/src/Model/Table/SuivisTable.php index faee0b4..c6199e3 100755 --- a/src/Model/Table/SuivisTable.php +++ b/src/Model/Table/SuivisTable.php @@ -13,7 +13,7 @@ use Cake\Validation\Validator; * @property \Cake\ORM\Association\BelongsTo $Materiels * @property \Cake\ORM\Association\HasMany $Documents */ -class SuivisTable extends Table +class SuivisTable extends AppTable { /** @@ -60,9 +60,8 @@ class SuivisTable extends Table ->allowEmpty('date_controle'); $validator - ->allowEmpty('date_prochain_controle') - ->add('date_prochain_controle', 'checkNextDateControlIsAfterDateControl', ['rule' => 'checkNextDateControlIsAfterDateControl', 'message' => 'La date de la prochaine intervention dois être postérieure à la date de l\'intervention précédente.', 'provider' => 'table']); - + ->allowEmpty('date_prochain_controle'); + $validator ->allowEmpty('type_intervention') ->add('type_intervention', 'valid', ['rule' => 'check_string', 'message' => 'Ce champ contient des caractères interdits', 'provider' => 'table']); @@ -84,37 +83,7 @@ class SuivisTable extends Table return $validator; } - - // autoriser les caracteres habituels standards pour un ou plusieurs MOTs - // accents + - _ / () . , \s (=space) - private $string = "a-zA-Z0-9éèàùâêôîôûç%().,\/\s\+\-_"; - - public function check_string($check) { - return (bool) preg_match('/^['.$this->string.']*$/', $check); - } - - // autoriser les caracteres spéciaux (pour une PHRASE ou paragraphe) : - // check_string PLUS ces symboles ====> & * > < ? % ! : , " ' - public function check_string_with_some_special_cars($check) { - return (bool) preg_match('/^['.$this->string.'?%!:,&*><\-\+\="\''.']*$/', $check); - } - - function checkNextDateControlIsAfterDateControl() { - /* - $controle = $this->data [$this->name] ['date_controle']; - if (empty($controle)) return true; - $prochainControle = $this->data [$this->name] ['date_prochain_controle']; - $controle = explode("-", $controle); - $prochainControle = explode("-", $prochainControle); - $controle = $controle[2].$controle[1].$controle[0]; - $prochainControle = $prochainControle[2].$prochainControle[1].$prochainControle[0]; - if ($controle > $prochainControle) { - return false; - } - return true; - */ - return true; - } + /** * Returns a rules checker object that will be used for validating @@ -125,6 +94,28 @@ class SuivisTable extends Table */ public function buildRules(RulesChecker $rules) { + + $checkNextDateControlIsAfterDateControl = function($entity) { + + $controle = $entity->date_controle; + if (empty($controle)) return true; + $prochainControle = $entity->date_prochain_controle; + $controle = explode("/", $controle); + $prochainControle = explode("/", $prochainControle); + $controle = $controle[2].$controle[1].$controle[0]; + $prochainControle = $prochainControle[2].$prochainControle[1].$prochainControle[0]; + if ($controle > $prochainControle) { + return false; + } + return true; + + }; + + $rules->add($checkNextDateControlIsAfterDateControl, [ + 'errorField' => 'date_prochain_controle', + 'message' => 'La date de la prochaine intervention dois être postérieure à la date de l\'intervention précédente.' + ]); + $rules->add($rules->existsIn(['materiel_id'], 'Materiels')); return $rules; } diff --git a/src/Model/Table/SurCategoriesTable.php b/src/Model/Table/SurCategoriesTable.php index 5e8d926..e060ddd 100755 --- a/src/Model/Table/SurCategoriesTable.php +++ b/src/Model/Table/SurCategoriesTable.php @@ -11,7 +11,7 @@ use Cake\Validation\Validator; * SurCategories Model * */ -class SurCategoriesTable extends Table +class SurCategoriesTable extends AppTable { /** @@ -40,7 +40,8 @@ class SurCategoriesTable extends Table $validator ->requirePresence('nom', 'create') ->notEmpty('nom') - ->add('nom', 'unique', ['rule' => 'validateUnique', 'provider' => 'table']); + ->add('nom', 'unique', ['rule' => 'validateUnique', 'provider' => 'table']) + ->add('nom', 'valid', ['rule' => ['check_string'], 'message' => 'Le champ doit être valide.', 'provider' => 'table']); return $validator; } diff --git a/src/Model/Table/TypeSuivisTable.php b/src/Model/Table/TypeSuivisTable.php index bb25299..cfc2030 100755 --- a/src/Model/Table/TypeSuivisTable.php +++ b/src/Model/Table/TypeSuivisTable.php @@ -11,7 +11,7 @@ use Cake\Validation\Validator; * TypeSuivis Model * */ -class TypeSuivisTable extends Table +class TypeSuivisTable extends AppTable { /** @@ -42,7 +42,8 @@ class TypeSuivisTable extends Table ->allowEmpty('id', 'create'); $validator - ->allowEmpty('nom'); + ->allowEmpty('nom') + ->add('nom', 'valid', ['rule' => ['check_string'], 'message' => 'Le champ doit être valide.', 'provider' => 'table']); return $validator; } diff --git a/src/Model/Table/UsersTable.php b/src/Model/Table/UsersTable.php index 843e6a8..0e87c7b 100755 --- a/src/Model/Table/UsersTable.php +++ b/src/Model/Table/UsersTable.php @@ -12,7 +12,7 @@ use Cake\Validation\Validator; * * @property \Cake\ORM\Association\BelongsTo $GroupesMetiers */ -class UsersTable extends Table +class UsersTable extends AppTable { /** @@ -47,10 +47,12 @@ class UsersTable extends Table ->allowEmpty('id', 'create'); $validator - ->notEmpty('nom', 'Un nom est nécessaire'); + ->notEmpty('nom', 'Un nom est nécessaire') + ->add('nom', 'valid', ['rule' => ['check_string'], 'message' => 'Le champ doit être valide.', 'provider' => 'table']); $validator ->notEmpty('username', 'Un login est nécessaire') + ->add('username', 'valid', ['rule' => ['check_string'], 'message' => 'Le champ doit être valide.', 'provider' => 'table']) ->add('username', 'unique', ['rule' => 'validateUnique', 'provider' => 'table']); $validator diff --git a/src/Template/Categories/add.ctp b/src/Template/Categories/add.ctp index 6971b52..001ff9c 100755 --- a/src/Template/Categories/add.ctp +++ b/src/Template/Categories/add.ctp @@ -8,7 +8,7 @@ echo $this->Form->input('sur_categorie_id', ['label' => 'Domaine', 'options' => $surCategories]); ?> - Form->button(__('Valider')) ?> + Form->submit(__('Valider')) ?> Form->end() ?> diff --git a/src/Template/Categories/edit.ctp b/src/Template/Categories/edit.ctp index 73728d4..b0be31a 100755 --- a/src/Template/Categories/edit.ctp +++ b/src/Template/Categories/edit.ctp @@ -8,7 +8,7 @@ echo $this->Form->input('sur_categorie_id', ['label' => 'Domaine', 'options' => $surCategories]); ?> - Form->button(__('Valider')) ?> + Form->submit(__('Valider')) ?> Form->end() ?> diff --git a/src/Template/Emprunts/add.ctp b/src/Template/Emprunts/add.ctp index 423d6df..ce7c0a9 100755 --- a/src/Template/Emprunts/add.ctp +++ b/src/Template/Emprunts/add.ctp @@ -92,7 +92,7 @@ echo $this->Form->hidden('nom_createur', ['value' => $username]) ?> - Form->button(__('Valider')) ?> + Form->submit(__('Valider')) ?> Form->end() ?> diff --git a/src/Template/Emprunts/edit.ctp b/src/Template/Emprunts/edit.ctp index 3f3d1ef..5b243bb 100755 --- a/src/Template/Emprunts/edit.ctp +++ b/src/Template/Emprunts/edit.ctp @@ -92,7 +92,7 @@ echo $this->Form->hidden('nom_modificateur', ['value' => $username]); ?> - Form->button(__('Valider')) ?> + Form->submit(__('Valider')) ?> Form->end() ?> diff --git a/src/Template/Emprunts/index.ctp b/src/Template/Emprunts/index.ctp index 2d47f96..b5c90c9 100755 --- a/src/Template/Emprunts/index.ctp +++ b/src/Template/Emprunts/index.ctp @@ -26,8 +26,7 @@ date_emprunt) ?> date_retour_emprunt) ?> nom_emprunteur) ?> - e_lieu_stockage).'-'.h($emprunt->e_lieu_detail) ?> - + emprunt_interne) == '1') { echo $sites[h($emprunt->e_lieu_stockage)].'-'.h($emprunt->e_lieu_detail); } else { echo h($emprunt->laboratoire); } ?> Html->link(__(''), ['action' => 'view', $emprunt->id], ['title' => 'Visualiser', 'style' => 'margin: 0 2px', 'escape' => false ]) ?> diff --git a/src/Template/Emprunts/view.ctp b/src/Template/Emprunts/view.ctp index e6499e6..30fefc4 100755 --- a/src/Template/Emprunts/view.ctp +++ b/src/Template/Emprunts/view.ctp @@ -27,7 +27,8 @@ function displayElement($nom, $valeur) { displayElement(__('Type d\'emprunt'), $emprunt->emprunt_interne ? __('Interne') : __('Externe')); displayElement(__('Date Emprunt'), strftime("%e %B %Y", strtotime(h($emprunt->date_emprunt)))); displayElement(__('Date Retour Emprunt'), strftime("%e %B %Y", strtotime(h($emprunt->date_retour_emprunt)))); - displayElement(__('Lieu de stockage'), h($emprunt->e_lieu_stockage).'-'.h($emprunt->e_lieu_detail)); + if (h($emprunt->emprunt_interne) == '1') { displayElement(__('Lieu de stockage'), $site.'-'.h($emprunt->e_lieu_detail)); } else { displayElement('Lieu de stockage', h($emprunt->laboratoire)); } + displayElement(__('Responsable'), h($emprunt->nom_emprunteur)); displayElement(__('Email'), h($emprunt->email_emprunteur)); if ($emprunt->emprunt_interne != 1) { diff --git a/src/Template/GroupesMetiers/add.ctp b/src/Template/GroupesMetiers/add.ctp index 217e57e..089708c 100755 --- a/src/Template/GroupesMetiers/add.ctp +++ b/src/Template/GroupesMetiers/add.ctp @@ -8,7 +8,7 @@ echo $this->Form->input('description'); ?> - Form->button(__('Valider')) ?> + Form->submit(__('Valider')) ?> Form->end() ?> diff --git a/src/Template/GroupesMetiers/edit.ctp b/src/Template/GroupesMetiers/edit.ctp index 0ddcfe0..7eede6b 100755 --- a/src/Template/GroupesMetiers/edit.ctp +++ b/src/Template/GroupesMetiers/edit.ctp @@ -8,7 +8,7 @@ echo $this->Form->input('description'); ?> - Form->button(__('Valider')) ?> + Form->submit(__('Valider')) ?> Form->end() ?> diff --git a/src/Template/GroupesThematiques/add.ctp b/src/Template/GroupesThematiques/add.ctp index 9822610..5e04888 100755 --- a/src/Template/GroupesThematiques/add.ctp +++ b/src/Template/GroupesThematiques/add.ctp @@ -8,7 +8,7 @@ echo $this->Form->input('description'); ?> - Form->button(__('Valider')) ?> + Form->submit(__('Valider')) ?> Form->end() ?> diff --git a/src/Template/GroupesThematiques/edit.ctp b/src/Template/GroupesThematiques/edit.ctp index 9b67f68..046f546 100755 --- a/src/Template/GroupesThematiques/edit.ctp +++ b/src/Template/GroupesThematiques/edit.ctp @@ -8,7 +8,7 @@ echo $this->Form->input('description'); ?> - Form->button(__('Valider')) ?> + Form->submit(__('Valider')) ?> Form->end() ?> diff --git a/src/Template/Layout/default.ctp b/src/Template/Layout/default.ctp index 3d91ab5..eebd453 100755 --- a/src/Template/Layout/default.ctp +++ b/src/Template/Layout/default.ctp @@ -60,9 +60,10 @@ $cakeDescription = 'Labinvent 2.0'; - Flash->render()?> - Flash->render('auth') ?> +
+ Flash->render()?> + Flash->render('auth') ?> fetch('content')?>
@@ -92,7 +93,7 @@ $cakeDescription = 'Labinvent 2.0'; - VERSION 2.0.2 (06/05/2016) + VERSION 2.0.2.2 (06/05/2016) diff --git a/src/Template/Materiels/add.ctp b/src/Template/Materiels/add.ctp index ccad05b..b1dbe15 100755 --- a/src/Template/Materiels/add.ctp +++ b/src/Template/Materiels/add.ctp @@ -3,7 +3,7 @@ Form->create($materiel) ?>

Ajouter un Matériel

- Form->button(__('Enregistrer')) ?> + Form->submit(__('Enregistrer')) ?> Form->input('designation', ['label' => 'Désignation']); @@ -54,7 +54,7 @@ ?>
- Form->button(__('Enregistrer')) ?> + Form->submit(__('Enregistrer')) ?> Form->end() ?> diff --git a/src/Template/Materiels/edit.ctp b/src/Template/Materiels/edit.ctp index 9e82acf..59e0ab0 100755 --- a/src/Template/Materiels/edit.ctp +++ b/src/Template/Materiels/edit.ctp @@ -52,7 +52,7 @@ if (IS_VALIDATED) Form->create($materiel) ?>

Editer un Matériel

- Form->button(__('Enregistrer')) ?> + Form->submit(__('Enregistrer')) ?> Form->input('designation', [ @@ -205,7 +205,7 @@ if (IS_VALIDATED) ?>
- Form->button(__('Enregistrer')) ?> + Form->submit(__('Enregistrer')) ?> Form->end() ?> diff --git a/src/Template/Organismes/add.ctp b/src/Template/Organismes/add.ctp index c43be5b..dbb61df 100755 --- a/src/Template/Organismes/add.ctp +++ b/src/Template/Organismes/add.ctp @@ -7,7 +7,7 @@ echo $this->Form->input('nom'); ?> - Form->button(__('Valider')) ?> + Form->submit(__('Valider')) ?> Form->end() ?> diff --git a/src/Template/Organismes/edit.ctp b/src/Template/Organismes/edit.ctp index 77c79b3..925fd49 100755 --- a/src/Template/Organismes/edit.ctp +++ b/src/Template/Organismes/edit.ctp @@ -7,7 +7,7 @@ echo $this->Form->input('nom'); ?> - Form->button(__('Valider')) ?> + Form->submit(__('Valider')) ?> Form->end() ?> diff --git a/src/Template/Pages/about.ctp b/src/Template/Pages/about.ctp index 87de3cb..3a08a5e 100755 --- a/src/Template/Pages/about.ctp +++ b/src/Template/Pages/about.ctp @@ -1,10 +1,8 @@
A PROPOS DU LOGICIEL '. $softwareName .''; echo <<<"EOD" diff --git a/src/Template/Sites/add.ctp b/src/Template/Sites/add.ctp index 7dbc482..814adb9 100755 --- a/src/Template/Sites/add.ctp +++ b/src/Template/Sites/add.ctp @@ -7,7 +7,7 @@ echo $this->Form->input('nom'); ?> - Form->button(__('Valider')) ?> + Form->submit(__('Valider')) ?> Form->end() ?>
diff --git a/src/Template/Sites/edit.ctp b/src/Template/Sites/edit.ctp index 8b2943c..cbcbbe4 100755 --- a/src/Template/Sites/edit.ctp +++ b/src/Template/Sites/edit.ctp @@ -7,7 +7,7 @@ echo $this->Form->input('nom'); ?> - Form->button(__('Valider')) ?> + Form->submit(__('Valider')) ?> Form->end() ?> diff --git a/src/Template/SousCategories/add.ctp b/src/Template/SousCategories/add.ctp index 4b2fdbe..1a4382c 100755 --- a/src/Template/SousCategories/add.ctp +++ b/src/Template/SousCategories/add.ctp @@ -8,7 +8,7 @@ echo $this->Form->input('categorie_id', ['label' => 'Catégorie', 'options' => $categories]); ?> - Form->button(__('Valider')) ?> + Form->submit(__('Valider')) ?> Form->end() ?> diff --git a/src/Template/SousCategories/edit.ctp b/src/Template/SousCategories/edit.ctp index 557c319..5e08849 100755 --- a/src/Template/SousCategories/edit.ctp +++ b/src/Template/SousCategories/edit.ctp @@ -8,7 +8,7 @@ echo $this->Form->input('categorie_id', ['label' => 'Catégorie', 'options' => $categories]); ?> - Form->button(__('Valider')) ?> + Form->submit(__('Valider')) ?> Form->end() ?> diff --git a/src/Template/Suivis/add.ctp b/src/Template/Suivis/add.ctp index 399ca3e..21f5910 100755 --- a/src/Template/Suivis/add.ctp +++ b/src/Template/Suivis/add.ctp @@ -53,7 +53,7 @@ echo $this->Form->hidden('nom_createur', ['value' => $username ]); ?> - Form->button(__('Valider')) ?> + Form->submit(__('Valider')) ?> Form->end() ?> diff --git a/src/Template/Suivis/edit.ctp b/src/Template/Suivis/edit.ctp index ea61c97..43a52d1 100755 --- a/src/Template/Suivis/edit.ctp +++ b/src/Template/Suivis/edit.ctp @@ -53,7 +53,7 @@ echo $this->Form->hidden('nom_modificateur', ['value' => $username ]); ?> - Form->button(__('Valider')) ?> + Form->submit(__('Valider')) ?> Form->end() ?> diff --git a/src/Template/SurCategories/add.ctp b/src/Template/SurCategories/add.ctp index 44dbcf5..b1bbb5d 100755 --- a/src/Template/SurCategories/add.ctp +++ b/src/Template/SurCategories/add.ctp @@ -7,7 +7,7 @@ echo $this->Form->input('nom'); ?> - Form->button(__('Valider')) ?> + Form->submit(__('Valider')) ?> Form->end() ?> diff --git a/src/Template/SurCategories/edit.ctp b/src/Template/SurCategories/edit.ctp index a9c5bad..991f4eb 100755 --- a/src/Template/SurCategories/edit.ctp +++ b/src/Template/SurCategories/edit.ctp @@ -7,7 +7,7 @@ echo $this->Form->input('nom'); ?> - Form->button(__('Valider')) ?> + Form->submit(__('Valider')) ?> Form->end() ?> diff --git a/src/Template/TypeSuivis/add.ctp b/src/Template/TypeSuivis/add.ctp index 3506c98..2d2f296 100755 --- a/src/Template/TypeSuivis/add.ctp +++ b/src/Template/TypeSuivis/add.ctp @@ -7,7 +7,7 @@ echo $this->Form->input('nom'); ?> - Form->button(__('Valider')) ?> + Form->submit(__('Valider')) ?> Form->end() ?> diff --git a/src/Template/TypeSuivis/edit.ctp b/src/Template/TypeSuivis/edit.ctp index cf46746..d9c55b4 100755 --- a/src/Template/TypeSuivis/edit.ctp +++ b/src/Template/TypeSuivis/edit.ctp @@ -7,7 +7,7 @@ echo $this->Form->input('nom'); ?> - Form->button(__('Valider')) ?> + Form->submit(__('Valider')) ?> Form->end() ?> diff --git a/src/Template/Users/add.ctp b/src/Template/Users/add.ctp index 8619afa..479bac5 100755 --- a/src/Template/Users/add.ctp +++ b/src/Template/Users/add.ctp @@ -14,7 +14,7 @@ echo $this->Form->input('groupes_metier_id', ['label' => 'Groupe métier', 'options' => $groupesMetiers, 'empty' => true]); ?> - Form->button(__('Valider')) ?> + Form->submit(__('Valider')) ?> Form->end() ?> diff --git a/src/Template/Users/edit.ctp b/src/Template/Users/edit.ctp index 4ee1b72..162b8b9 100755 --- a/src/Template/Users/edit.ctp +++ b/src/Template/Users/edit.ctp @@ -14,7 +14,7 @@ echo $this->Form->input('groupes_metier_id', ['label' => 'Groupe métier', 'options' => $groupesMetiers, 'empty' => true]); ?> - Form->button(__('Valider')) ?> + Form->submit(__('Valider')) ?> Form->end() ?> -- libgit2 0.21.2