Subversion Repositories eFlore/Applications.cel

Rev

Rev 3124 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed

<?php
// declare(encoding='UTF-8');
/**
 * Classe métier de gestion de l'ajout, modification et suppression des images.
 *
 * @internal   Mininum PHP version : 5.2
 * @category   CEL
 * @package    Services
 * @subpackage Bibliothèques
 * @version    0.1
 * @author     Delphine CAUQUIL <delphine@tela-botanica.org>
 * @license    GPL v3 <http://www.gnu.org/licenses/gpl.txt>
 * @license    CECILL v2 <http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt>
 * @copyright  1999-2017 Tela Botanica <accueil@tela-botanica.org>
 */
class GestionWidget extends Cel {
        
        /**
         * Ajoute un paramètrage de widget de saisie
         *
         * @param int $utilisateur id utilisateur du proprietaire de l'observation
         * @param array $parametres tableau indexé avec les mêmes noms de champs que la bdd
         *
         * @return true ou false suivant le succès de l'opération
         */
        public function obtenirWidget($parametres = array()) { 
                $requete_liste = "SELECT * FROM `cel_widgets_config` ";
                $order = (isset($parametres['ordre'])) ? $parametres['ordre'] : 'projet';
                if ($parametres != array()) {
                        $requete_liste .= " WHERE ";
                        foreach ($parametres as $champ => $valeur) {
                                $requete_liste .= $champ." = '".$valeur."' AND";
                        }
                        $requete_liste = rtrim($requete_liste, " AND");
                }
                $requete_liste .= " ORDER BY ".$order;
                $liste = Cel::db()->requeter($requete_liste);
                return $liste;
                
        }

        /**
         * Ajoute un paramètrage de widget de saisie
         *
         * @param int $utilisateur id utilisateur du proprietaire de l'observation
         * @param array $parametres tableau indexé avec les mêmes noms de champs que la bdd
         *
         * @return true ou false suivant le succès de l'opération
         */
        public function ajouterWidget($parametres) {
                $requete_insertion_observation = 'INSERT INTO cel_widgets_config '.
                                '('.implode(array_keys($parametres), ', ').') VALUES ("'.implode($parametres, '", "').'")';
                $resultat_ajout_observation = Cel::db()->executer($requete_insertion_observation);
                $retour = true;
                if ($resultat_ajout_observation === false) {
                        $retour = false;
                        $msg = "Erreur de creation d'une observation : $resultat_ajout_observation";
                        $this->logger('CEL_bugs', $msg);
                } else {
                        //$retour = $this->renvoyerIdPourOrdre($utilisateur ,$parametres['ordre']);
                }
                return $retour;
                
        }
        
        /**
         * Modifie une ou plusieurs observations grâce aux paramètres fournis
         *
         * @param int $utilisateur id utilisateur du proprietaire de l'observation
         * @param mixed $ordre ordre(s) observation(s) relatif(s) à l'utilisateur: un seul ordre ou bien "ordre1,ordre2,ordre3" etc...
         * @param array $parametres tableau indexé avec les mêmes noms de champs que la bdd
         *
         * @return true ou false suivant le succès de l'opération
         */
        public function modifierWidget($projet, $parametres) {
                
        }
        
}