1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80
|
//l'action qui va gérer ce que j'ai expliqué
public function removeAction()
{
$this->view->title = "Delete Admin";
$this->view->headTitle($this->view->title, 'PREPEND');
//si quelque chose est envoyée
if ($this->getRequest()->isPost()) {
$submit = $this->getRequest()->getPost('submit');
$delete = $this->getRequest()->getPost('delete');
//si l'action reçoi des donnée du select (la liste des admins)
if ($submit == 'submit') {
//on stoque l'id et le login
$this->view->id = $this->getRequest()->getPost('it_id');
$this->view->login = $this->getRequest()->getPost('it_login');
//on appelle une méthode qui affiche du code et un formulaire de confirmation
$form = $this->adminremoveconfirm();
$this->view->form = $form;
//si on reçoit un 'yes' alors on vient de confirmer la suppression
} elseif ($delete == 'Yes') {
$id = $this->getRequest()->getPost('id');
$table = new Model_DbTable_ItStaff();
$table->removeStaff($id);
} else {
$this->_redirect('admin');
}
//si rien n'ai reçu alors on affiche le select avec les noms des admins
} else {
$form = $this->adminForm();
$this->view->form = $form;
$table = new Model_DbTable_ItStaff();
$form->populate($table->fetchAll()->toArray());
}
}
//le formulaire qui sera affiché en 1er avec la liste des admin
public function adminForm()
{
$form = new Zend_Form($options = null);
$form->setName('selectAdmin');
$listAdmin = new Zend_Form_Element_Select('it_login');
$listAdmin->setLabel("Admins'Name");
$listAdmin->addMultiOption(NULL, 'Choose');
$table_admin = new Model_DbTable_ItStaff();
foreach ($table_admin->fetchAll() as $row) {
$listAdmin->addMultiOption($row->it_id, $row->it_login);
}
$submit = new Zend_Form_Element_Submit('submit');
$submit->setAttrib('idsubmit', 'submitbutton');
$submit->setValue('submit');
return $form->addElements(array($listAdmin, $submit));
}
//cette fonction affiche un message d'avertissement et un formulaire de confirmation
public function adminremoveconfirm()
{
$html = <<<HTMLDOC
<p> Are you sure to delete this administrator :
<?php echo $this->login; ?>
</p>
<form action="<?php echo $this->url(array('action'=>'remove')); ?>" method="post">
<div>
<input type="hidden" name="id" value="<?php echo $this->id; ?>" />
<input type="submit" name="delete" value="Yes" />
<input type="submit" name="delete" value="No" />
</div>
</form>
<?php
HTMLDOC;
return $html;
} |
Partager