From 0d5a5686658774484c47454c5dcbc0fe7c230597 Mon Sep 17 00:00:00 2001 From: gloas <gloas@git-test.afi-sa.fr> Date: Mon, 30 Sep 2013 15:08:10 +0000 Subject: [PATCH] reponseFormulaire : amelioration fonctionnement envoi et sauvegarde du mail --- .../admin/controllers/ModoController.php | 16 +++++++++++--- .../ZendAfi/Form/ReponseFormulaireMail.php | 9 +++----- .../ZendAfi/View/Helper/ReponseFormulaire.php | 22 +++++++++---------- public/admin/css/global.css | 15 +++++++++---- 4 files changed, 38 insertions(+), 24 deletions(-) diff --git a/application/modules/admin/controllers/ModoController.php b/application/modules/admin/controllers/ModoController.php index 862c89e835d..4729cb756a2 100644 --- a/application/modules/admin/controllers/ModoController.php +++ b/application/modules/admin/controllers/ModoController.php @@ -657,7 +657,8 @@ class Admin_ModoController extends ZendAfi_Controller_Action { public function reponseFormulaireSendMailAction() { - $this->getHelper('ViewRenderer')->setNoRender(); + $this->getHelper('ViewRenderer')->setNoRender(); + $formulaire=''; xdebug_break(); if($this->_request->isPost() && $formulaire = Class_Formulaire::find((int)$this->_getParam('id')) ) { @@ -673,13 +674,22 @@ class Admin_ModoController extends ZendAfi_Controller_Action { try { $mail->send(); $formulaire->setMailAnswer(serialize($mail))->save(); + $this->_helper->notify($this->view->_('Courriel envoyé à : ').$this->_request->getPost('mail_destinataire')); } catch (Zend_Mail_Exception $e) { $this->_helper->notify($this->view->_('Aucun courriel envoyé, erreur: ').$this->view->_($e->getMessage())); } + } else { + $this->_helper->notify($this->view->_("Aucun courriel envoyé, erreur: le formulaire n'existe plus")); + $this->_redirect("admin/modo/formulaires"); } - - return $this->_helper->notify($this->view->_("Aucun courriel envoyé, erreur: le formulaire n'existe plus")); + + $this->renderPopup($this->view->url(['module' => 'admin', + 'controller' => 'modo', + 'action' => 'visualiser-reponse-ajax', + 'id_article' => $formulaire->getArticle()->getId(), + 'id' => $this->_getParam('id')])); + } diff --git a/library/ZendAfi/Form/ReponseFormulaireMail.php b/library/ZendAfi/Form/ReponseFormulaireMail.php index c140b58e664..bc953d5ab1d 100644 --- a/library/ZendAfi/Form/ReponseFormulaireMail.php +++ b/library/ZendAfi/Form/ReponseFormulaireMail.php @@ -30,20 +30,17 @@ class ZendAfi_Form_ReponseFormulaireMail extends ZendAfi_Form { 'mail_expediteur', ['label' => $this->_("De"), 'allowEmpty' => false, - 'required' => true, - 'value' => $this->_attribs['expediteur']]) + 'required' => true]) ->addElement('text', 'mail_destinataire', ['label' => $this->_("A"), 'allowEmpty' => false, - 'required' => true, - 'value' => $this->_attribs['destinataire']]) + 'required' => true]) ->addElement('text', 'sujet', ['label' => $this->_("Sujet"), 'allowEmpty' => false, - 'required' => true, - 'value' => $this->_attribs['sujet']]) + 'required' => true]) ->addElement('textarea', 'reponse', ['label'=> $this->_('Réponse: '), diff --git a/library/ZendAfi/View/Helper/ReponseFormulaire.php b/library/ZendAfi/View/Helper/ReponseFormulaire.php index 04533bcdfe6..4a492cdcabf 100644 --- a/library/ZendAfi/View/Helper/ReponseFormulaire.php +++ b/library/ZendAfi/View/Helper/ReponseFormulaire.php @@ -44,7 +44,7 @@ class ZendAfi_View_Helper_ReponseFormulaire extends Zend_View_Helper_HtmlElement public function addActionButton() { - $html='<div>'; + $html='<div class="action-button">'; $html.= $this->view->tagAnchor(['action' => 'delete-formulaire', 'id' => $this->_formulaire->getId()], $this->view->boutonIco('type=del')); if (!$this->_formulaire->isValidated()) @@ -71,7 +71,6 @@ class ZendAfi_View_Helper_ReponseFormulaire extends Zend_View_Helper_HtmlElement $html.= ($this->_formulaire->hasMailAnswer()) ? $this->filledMailFormulaire() : $this->emptyMailFormulaire($warning); - $html.= $this->emptyMailFormulaire($warning); return $html.='</div>'; } @@ -86,15 +85,16 @@ class ZendAfi_View_Helper_ReponseFormulaire extends Zend_View_Helper_HtmlElement $html = $this->getFormLegend($this->view->_('Rédiger une réponse.')); $html.='<div>'; $html.= $this->displayWarning($warning); - return $html.=ZendAfi_Form_ReponseFormulaireMail::newWithOptions( - ['expediteur' => Class_Users::getIdentity()->getMail(), - 'destinataire' => ($user = $this->_formulaire->getUser()) ? $user->getMail() : "" , - 'sujet' => $this->_formulaire->getArticle()->getTitre(), - 'action' => $this->view->url(['module' => 'admin', - 'controller' => 'modo', - 'action'=> 'reponse-formulaire-send-mail', - 'id_article' => '12', - 'id' => '5'])]).'</div>'; + $form = new ZendAfi_Form_ReponseFormulaireMail(['action' => $this->view->url(['module' => 'admin', + 'controller' => 'modo', + 'action'=> 'reponse-formulaire-send-mail', + 'id' => $this->_formulaire->getId()])]); + $form->populate(['mail_expediteur' => Class_Users::getIdentity()->getMail(), + 'mail_destinataire' => ($user = $this->_formulaire->getUser()) ? $user->getMail() : "" , + 'sujet' => $this->_formulaire->getArticle()->getTitre()]); + + $html .= $form->render(); + return $html.'</div>'; } diff --git a/public/admin/css/global.css b/public/admin/css/global.css index 47fb3684ec1..4d3c630dddc 100644 --- a/public/admin/css/global.css +++ b/public/admin/css/global.css @@ -1091,17 +1091,16 @@ div.modules div.pager span { -#opac-dialog dl + a, -#opac-dialog dl + a + a { +#opac-dialog .action-button a { display:inline-block; padding:10px; } -#opac-dialog dl + a { +#opac-dialog .action-button a { margin-left:140px; } -#opac-dialog dl + a + a { +#opac-dialog .action-button a + a { margin-left:40px; } @@ -1127,4 +1126,12 @@ span.ui-dialog-title { #opac-dialog dl dd { padding-left:45px; +} + +#form_accordion .ui-accordion-content { + padding:0px; +} + +#form_accordion h3 { + padding:5px 10px; } \ No newline at end of file -- GitLab