$admin->valeur = $valeur; $admin->nom = $nom; $admin->prenom = $prenom; $admin->identifiant = $identifiant; $motdepasse1 = trim($motdepasse1); $admin->motdepasse = $motdepasse1; $admin->profil = $_POST['profil']; $admin->crypter(); $lastid = $admin->add(); $autorisation_profil = new Autorisation_profil(); $query = "select * from {$autorisation_profil->table} where profil=\"" . $_POST['profil'] . "\""; $resul = mysql_query($query, $autorisation_profil->link); while ($row = mysql_fetch_object($resul)) { $autorisation_administrateur = new Autorisation_administrateur(); $autorisation_administrateur->administrateur = $lastid; $autorisation_administrateur->autorisation = $row->autorisation; $autorisation_administrateur->lecture = $row->lecture; $autorisation_administrateur->ecriture = $row->ecriture; $autorisation_administrateur->add(); } redirige("gestadm.php"); } if ($action == "supprimer") { $autorisation_administrateur = new Autorisation_administrateur(); $query = "delete from {$autorisation_administrateur->table} where administrateur=\"{$id}\""; $resul = mysql_query($query, $autorisation_administrateur->link); $admin = new Administrateur(); $admin->charger_id($id); $admin->delete(); redirige("gestadm.php"); }
/** * * try to delete an admin * * @throws TheliaAdminException ADMIN_DELETE_HIMSELF if admin try to delete himself * @throws TheliaAdminException ADMIN_NOT_FOUND if admin is not loaded * @throws TheliaAdminException ADMIN_IMPOSSIBLE_DETELE_AUTH impossible to delete administrator's auth */ public function delete() { $this->verifyLoaded(); if ($this->id == $_SESSION['util']->id) { throw new TheliaAdminException("admin can not delete himself", TheliaAdminException::ADMIN_DELETE_HIMSELF); } //try to delete autorisation_administrateur record try { $this->query('DELETE FROM ' . Autorisation_administrateur::TABLE . ' WHERE administrateur=' . $this->id, true); } catch (Exception $e) { throw new TheliaAdminException("impossible to delete admin's auth", TheliaAdminException::ADMIN_IMPOSSIBLE_DETELE_AUTH); } ActionsModules::instance()->appel_module("beforeDeleteAdmin", new Administrateur($this->id)); parent::delete(); $this->redirect(); }