findOne('SELECT * FROM '.$this->sTable.' WHERE id=?',$uId ); } public function findAll(){ return $this->findMany('SELECT * FROM '.$this->sTable); } public function findByGroup($group){ return $this->findMany('SELECT * FROM '.$this->sTable.' WHERE group=?',(int)$group); } } class row_permission extends abstract_row{ protected $sClassModel='model_permission'; public function findGroup(){ return model_group::getInstance()->findById($this->group); } /*exemple jointure public function findAuteur(){ return model_auteur::getInstance()->findById($this->auteur_id); } */ /*exemple test validation*/ private function getCheck(){ $oPluginValid=new plugin_valid($this->getTab()); /* renseigner vos check ici $oPluginValid->isEqual('champ','valeurB','Le champ n\est pas égal à '.$valeurB); $oPluginValid->isNotEqual('champ','valeurB','Le champ est égal à '.$valeurB); $oPluginValid->isUpperThan('champ','valeurB','Le champ n\est pas supé à '.$valeurB); $oPluginValid->isUpperOrEqualThan('champ','valeurB','Le champ n\est pas supé ou égal à '.$valeurB); $oPluginValid->isLowerThan('champ','valeurB','Le champ n\est pas inférieur à '.$valeurB); $oPluginValid->isLowerOrEqualThan('champ','valeurB','Le champ n\est pas inférieur ou égal à '.$valeurB); $oPluginValid->isEmpty('champ','Le champ n\'est pas vide'); $oPluginValid->isNotEmpty('champ','Le champ ne doit pas être vide'); $oPluginValid->isEmailValid('champ','L\email est invalide'); $oPluginValid->matchExpression('champ','/[0-9]/','Le champ n\'est pas au bon format'); $oPluginValid->notMatchExpression('champ','/[a-zA-Z]/','Le champ ne doit pas être a ce format'); */ return $oPluginValid; } public function isValid(){ return $this->getCheck()->isValid(); } public function getListError(){ return $this->getCheck()->getListError(); } public function save(){ if(!$this->isValid()){ return false; } parent::save(); return true; } }