From 5beffa518023d0d01dffe1df7a2e8f4c8bf2bab1 Mon Sep 17 00:00:00 2001 From: Aram HARUTYUNYAN Date: Thu, 13 Jun 2013 13:42:40 +0000 Subject: [PATCH] =?UTF-8?q?Issue=20#0001636:=20reste=20encore=20des=20chos?= =?UTF-8?q?es=20=C3=A0=20faire?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- application/controllers/UserController.php | 79 ++++++++++++++++++- .../views/default/scripts/user/motpasse.phtml | 33 +++++++- public/themes/default/scripts/motpasse.js | 10 +++ 3 files changed, 119 insertions(+), 3 deletions(-) diff --git a/application/controllers/UserController.php b/application/controllers/UserController.php index aa9d56f1d..3b28ced1d 100644 --- a/application/controllers/UserController.php +++ b/application/controllers/UserController.php @@ -547,5 +547,82 @@ class UserController extends Zend_Controller_Action print_r($device->getAllFeatures()); echo ""; } - + + /** + * Sends email to the specific client, who requests for forgotten password + */ + public function motpasseAction() + { + $request = $this->getRequest(); + $name = 'Mot de passe, Identifiant oubliés'; + $params = array( + 'identifiant' => '', + 'telephone' => '', + 'email' => '', + 'nom' => '', + 'prenom' => '', + 'fonction' => '', + 'rsociale' => '', + ); + + if ( $request->isXmlHttpRequest() ) { + $this->_helper->layout()->disableLayout(); + if ( $request->isPost() ) { + $params = $request->getParams(); + $message = ''; + + $paramlist = array( + 'telephone' => 'Numéro de téléphone direct', + 'email' => 'Adresse email', + 'nom' => 'Nom', + 'prenom' => 'Prénom', + 'fonction' => 'Fonction', + 'rsociale' => 'Sociale', + ); + + foreach ($paramlist as $item => $val) { + if (!isset($params[$item])) { + $message .= "Valeur $val vide !
"; + } + } + + $validator = new Zend_Validate_EmailAddress(); + if (isset($params['email'])){ + if (!$validator->isValid($params['email'])) { + $message .="Adress email n'est pas correct!
"; + } + } + + if ($message == '') { + + require_once 'Scores/Mail.php'; + $mail = new Mail(); + $mail->setSubject($name); + $mail->setBodyHTML($params['mailbody']); + $mail->setFrom('support'); + $mail->addToKey('support'); + /*try { + $mail->send(); + $message = "Votre demande avec les informations suivantes a été envoyée. Nous vous contacterons prochainement."; + } + catch ( Zend_Mail_Transport_Exception $e ){ + $message = $e->getMessage(); + }*/ + + // this is temporary mail sending, changing to Zend_mail is needed + $header = 'MIME-Version: 1.0' . "\r\n"; + $header .= 'Content-type: text/html; charset=utf-8' . "\r\n"; + $header .= 'FROM: '; + mail('aharutyunyan@snd-a.com', $name, $params['mailbody'], $header); + $message = "Votre demande avec les informations suivantes a été envoyée. Nous vous contacterons prochainement."; + // end of temporary mail sending + } + $this->view->assign('message', $message); + } + } else { + $this->view->assign('name', $name); + $this->view->assign('href', $this->view->url(array('controller'=>'user','action'=>'motpasse'))); + } + $this->view->assign('params', $params); + } } \ No newline at end of file diff --git a/application/views/default/scripts/user/motpasse.phtml b/application/views/default/scripts/user/motpasse.phtml index b7c12f922..699602aad 100644 --- a/application/views/default/scripts/user/motpasse.phtml +++ b/application/views/default/scripts/user/motpasse.phtml @@ -17,7 +17,7 @@ $('a.dlg').on('click', function(e){ $(this).load(href); }, buttons: {'Fermer': function() { $(this).dialog('close'); }}, - close: function() { $('#dialog').remove(); }}; + close: function() { $('#dlg').remove(); }}; $('
').dialog(dlgOpts); return false; }); @@ -69,6 +69,10 @@ input#frm { height:25px; } +#alwayshidden { + display:none; +} + message!='') {?> @@ -78,7 +82,7 @@ input#frm { $params = $this->params; ?> -
+
Cher client,
 
 Pour recevoir votre mot de passe ou votre identifiant oubliés, nous vous invitons à saisir les informations ci-dessous et cliquer sur valider.
@@ -119,6 +123,31 @@ Tous les champs (*) sont obligatoires : en cas de données manquantes ou erroné
 
 
+
+ + + +Chers S&D collègues,
+J'ai oublié mon identifiant et(ou) mot de passe de site web scores-decisions.com.
+S'il vous plaît envoyez-moi encore une fois l'identifiant et(ou) le mot de passe qui me permettra d'avoir un accès au site. +

Ci-dessous, trouvez les informations enregistrées sur mon identité:

+ + + + + + + + +
Identifiant :
Adresse email:
Numéro de téléphone direct:
Nom:
Prénom:
Fonction:
Raison Sociale:
+

Veuillez agréer, chers collègues, l'assurance de mes sentiments respectueux.

+
+ + +
diff --git a/public/themes/default/scripts/motpasse.js b/public/themes/default/scripts/motpasse.js index 14508d527..b56de5996 100644 --- a/public/themes/default/scripts/motpasse.js +++ b/public/themes/default/scripts/motpasse.js @@ -1,3 +1,10 @@ +function fill() { + $("input#frm").each(function() { + var td_id = $(this).attr("name"); + $("td#"+td_id).text($(this).val()); + }); +} + function validate() { var allvals = true; $("[required]").each(function() { @@ -34,6 +41,8 @@ $('[required]').blur(function(){ $('#dlg').dialog({ buttons: [ { text: "Valider", click: function() { + fill(); + $("[name='mailbody']").val($("#alwayshidden").html()); var values = $(this).find('form').serialize(); if (validate() && isEmail($('[name=email]'))) { if ($('.loading').css('display')=='none') { @@ -45,6 +54,7 @@ $('#dlg').dialog({ buttons: [ $.post('/user/motpasse', values, function(data) { $('#dlg').html(data); $('pre').hide(); + $('#vspace').height(50); $('input#frm').attr("disabled", "disabled"); $(".ui-dialog-buttonpane button:contains('Valider')").hide(); });