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 check_mail($check) { return (bool) filter_var($check, FILTER_VALIDATE_EMAIL); } // @Override parent Table /* * (EP202009) pour comportement commun à toutes les EntitiesTable à la fin du save() ou du delete() * * On crée une variable globale $this->current_entity qui contient l'entité (Entity) courante * (après save, donc mise à jour avec les données du formulaire, et avec un new id si ADD, * mais aussi avec les erreurs si le save s'est mal passé) * Cette entité courante est récupérable depuis TOUT controleur, comme ceci : * - $this->Materiels->current_entity * ou plus simplement avec le raccourci AppController : * - $this->getCurrentEntity() * */ public function save(EntityInterface $entity, $options = []) { $success = parent::save($entity,$options); $this->current_entity = $entity; return $success; } public function delete(EntityInterface $entity, $options = []) { $DEBUG = false; $this->current_entity = $entity; if (!$DEBUG) return parent::delete($entity,$options); return true; } /* public function getEntity($id) { debug($this->get($id)); debug($this->getEntityClass()); // 'App\Model\Entity\Materiel' debug($this->getTable()); // table name //_getClassName() //return TableRegistry::getTableLocator()->get('Materiels')->get($id); } */ }