Issue #0001903: Commandes KBIS - verifier l'adrèsse email et afficher les messages

This commit is contained in:
Aram HARUTYUNYAN 2014-04-10 09:50:35 +00:00
parent a852c5017e
commit 652559a1ab
3 changed files with 101 additions and 78 deletions

View File

@ -588,7 +588,6 @@ class PiecesController extends Zend_Controller_Action
}
/**
* Commande de pièces, kbis, privileges, nantissements
*/
@ -633,6 +632,11 @@ class PiecesController extends Zend_Controller_Action
$message = '';
$emails = explode(';',$user->getEmail());
$email = $emails[0];
$validator = new Zend_Validate_EmailAddress();
$this->view->assign('emailValide', $validator->isValid($email));
//Validation du formulaire
if ($request->isPost() && $request->getParam('op')=='kbis') {
@ -641,62 +645,47 @@ class PiecesController extends Zend_Controller_Action
switch($method) {
case 'M':
$emails = explode(';',$user->getEmail());
$email = $emails[0];
case 'M':
//Envoi du mail
$mail = new Scores_Mail();
$mail->setFrom('contact');
$mail->addToKey('support');
$mail->setSubject('[COMMANDE PIECES] - KBIS par email');
$mail->setBodyTexte(
'COMMANDE DE PIECES - Demande de kbis par email <br/>'.EOL.
'Demande pour recevoir le KBIS de SIREN :'.
'<a href="'.$this->view->url(array('controller'=>'identite', 'action'=>'fiche', 'siret'=> $this->siret)).'">'.
$this->siret.'</a><br/>'.EOL.
'pour login '.$user->getLogin().'('.$email.')<br/>'.EOL.
'Référence : '.$ref
);
$mail->send();
$validator = new Zend_Validate_EmailAddress();
//Enregistrement dans la bdd
$commandesKbis = new Application_Model_CommandesKbis();
$data = array(
'idUser' => $user->getId(),
'login' => $user->getLogin(),
'email' => $email,
'societe' => '',
'nom' => '',
'adresse' => '',
'cp' => '',
'ville' => '',
'siren' => $siren,
'raisonSociale' => $session->getRaisonSociale(),
'type' => 'M',
'dateCommande' => date('Y-m-d H:i:s'),
);
$commandesKbis->insert($data);
//Vérification des champs
if (!empty($email) && $validator->isValid($email)) {
//Envoi du mail
$mail = new Scores_Mail();
$mail->setFrom('contact');
$mail->addToKey('support');
$mail->setSubject('[COMMANDE PIECES] - KBIS par email');
$mail->setBodyTexte(
'COMMANDE DE PIECES - Demande de kbis par email <br/>'.EOL.
'Demande pour recevoir le KBIS de SIREN :'.
'<a href="'.$this->view->url(array('controller'=>'identite', 'action'=>'fiche', 'siret'=> $this->siret)).'">'.
$this->siret.'</a><br/>'.EOL.
'pour login '.$user->getLogin().'('.$email.')<br/>'.EOL.
'Référence : '.$ref
);
$mail->send();
//Enregistrement dans la bdd
$commandesKbis = new Application_Model_CommandesKbis();
$data = array(
'idUser' => $user->getId(),
'login' => $user->getLogin(),
'email' => $email,
'societe' => '',
'nom' => '',
'adresse' => '',
'cp' => '',
'ville' => '',
'siren' => $siren,
'raisonSociale' => $session->getRaisonSociale(),
'type' => 'M',
'dateCommande' => date('Y-m-d H:i:s'),
);
$commandesKbis->insert($data);
$message = 'Votre demande de reception de Kbis par email a été prise en compte';
$ws = new WsScores();
$ws->setLog('kbis', $this->siret, 0, 'mail');
$ws->getKbis($siren, $method, $ref);
} else {
$message = '<font color="red">Erreur : adresse email non renseignée ou n\'est pas correcte.</font>';
$this->view->assign('ref', $ref);
$this->view->assign('method', $method);
}
$message = $this->view->translate('Votre demande de reception de Kbis par email a été prise en compte');
$ws = new WsScores();
$ws->setLog('kbis', $this->siret, 0, 'mail');
$ws->getKbis($siren, $method, $ref);
break;
case 'C':
$emails = explode(';',$user->getEmail());
$email = $ref = $emails[0];
//Vérification des champs
$fields = array('societe', 'nom', 'prenom', 'adresse', 'cp', 'ville');
$params = $request->getParams();
@ -744,14 +733,14 @@ class PiecesController extends Zend_Controller_Action
);
$commandesKbis->insert($data);
$message = 'Votre commande à été prise en compte, vous recevrez ce document sous 3/5 jours';
$message = $this->view->translate('Votre commande à été prise en compte, vous recevrez ce document sous 3/5 jours');
$ws = new WsScores();
$ws->setLog('kbis', $this->siret, 0, 'courrier');
$ws->getKbis($siren, $method, $ref);
}
else
{
$message = '<font color="red">Erreur : Tous les champs doivent être renseigner.</font>';
$message = '<font color="red">'.$this->view->translate('Erreur : Tous les champs doivent être renseigner.').'</font>';
$this->view->assign('method', $method);
$this->view->assign('societe', $params['societe']);
$this->view->assign('nom', $params['nom']);
@ -763,7 +752,6 @@ class PiecesController extends Zend_Controller_Action
break;
}
$this->view->assign('message', $message);
}
if ($request->isPost() && $request->getParam('op')=='privileges') {
@ -822,7 +810,6 @@ class PiecesController extends Zend_Controller_Action
$this->view->assign('siren', $siren);
$this->view->assign('siret', $this->siret);
$this->view->assign('raisonSociale', $session->getRaisonSociale());
}
/**

View File

@ -5,14 +5,14 @@
<div class="fieldgrp">
<div class="field">
<?php if($this->partial()->view->KbisErreurCJ){ ?>
K-Bis inexistant pour cette forme juridique
<?=$this->translate("K-Bis inexistant pour cette forme juridique");?>
<?php } else {?>
<?php
$disable = '';
if($this->partial()->view->KbisErreurDEP){ $disable = ' disabled'; }
?>
<input class="noborder" type="radio" name="method" value="<?=$this->url(array('controller'=>'pieces', 'action'=>'kbis', 'siret'=>$this->partial()->view->siret))?>"<?=$disable?>/>
Visualiser/Télécharger le kbis
<?=$this->translate("Visualiser/Télécharger le kbis");?>
<?php if($this->partial()->view->KbisErreurDEP){ ?><br/>K-Bis en ligne indisponible pour ce département. -
Afin d'obtenir un extrait K-bis, vous pouvez contactez directement le greffe du tribunal à compétence commercial
dont vous trouverez les coordonnées <a href="<?=$this->url(array(
@ -24,63 +24,99 @@ dont vous trouverez les coordonnées <a href="<?=$this->url(array(
))?>">ici</a> ou choisir de commander par nos services en sélectionnant les propositions ci-dessous.
<?php }?>
<br/>
<input class="noborder" type="radio" name="method" value="M" <?=$this->partial()->view->method=='M' ? 'checked' : ''?>/>Recevoir le kbis par email<br/>
<input class="noborder" type="radio" name="method" value="C" <?=$this->partial()->view->method=='C' ? 'checked' : ''?>/>Recevoir le kbis original par courrier<br/>
<input class="noborder" type="radio" name="method" value="M" <?=$this->partial()->view->method=='M' ? 'checked' : ''?>/><?=$this->translate("Recevoir le kbis par email");?><br/>
<input class="noborder" type="radio" name="method" value="C" <?=$this->partial()->view->method=='C' ? 'checked' : ''?>/><?=$this->translate("Recevoir le kbis original par courrier");?><br/>
<?php if($this->partial()->view->KbisErreurDEP) { ?>
<p><i>Les pièces demandées seront commandées par courrier auprès du greffe. Prévoir un délai de 2 à 3 semaines.</i></p>
<p><i><?=$this->translate("Les pièces demandées seront commandées par courrier auprès du greffe. Prévoir un délai de 2 à 3 semaines.");?></i></p>
<?php } ?>
<?php } ?>
</div>
</div>
<div id="kbisM">
<?php
$user = $this->partial()->view->user;
?>
<?php if($this->emailValide) {?>
<?php $user = $this->partial()->view->user;?>
<div class="fieldgrp"><p>
<?=$this->translate("Commande du document: KBIS demandé sur");?> <strong><?=$this->raisonSociale?> (<?=$this->siren;?>)</strong><br/>
<?=$this->translate("Vous recevrez un email (sous 3/5 jours ouvrés) lorsque le document sera disponible.");?>
</p></div>
<div class="fieldgrp">
<label>Référence</label>
<label><?=$this->translate("Votre email");?></label>
<div class="field">
<?=$user->getEmail()?>
</div>
</div>
<div class="fieldgrp">
<label><?=$this->translate("Votre référence");?></label>
<div class="field">
<input type="text" class="longfield" name="ref" value="<?=$this->partial()->view->ref?>">
<span>Votre référence.</span>
<?=$this->translate("(facultatif)");?>
</div>
</div>
<div class="fieldgrp">
<label>&nbsp;</label>
<div class="field"><input type="submit" class="button" name="kbis" value="Valider"></div>
<div class="field"><input type="submit" class="button" name="kbis" value="<?=$this->translate("Valider");?>"></div>
</div>
<?php } else {?>
<div class="fieldgrp">
<div class="field" style="color:red;"><?=$this->translate("Commande impossible. Votre email est invalide.");?></div>
</div>
<?php }?>
</div>
<div id="kbisC">
<?php if($this->emailValide) {?>
<div class="fieldgrp"><p>
<?=$this->translate("Commande du document: KBIS demandé sur");?> <strong><?=$this->raisonSociale?> (<?=$this->siren;?>)</strong><br/>
<?=$this->translate("Vous recevrez un email (sous 2 à 3 semaines) lorsque le document sera disponible.");?>
</p></div>
<?php $user = $this->partial()->view->user; ?>
<div class="fieldgrp">
<label>Votre Societe</label>
<label><?=$this->translate("Votre email");?></label>
<div class="field">
<?=$user->getEmail()?>
</div>
</div>
<div class="fieldgrp">
<label><?=$this->translate("Votre référence");?></label>
<div class="field"><input class="longfield" type="text" name="ref" value="<?=$this->partial()->view->ref?>">
<?=$this->translate("(facultatif)");?></div>
</div>
<div class="fieldgrp">
<label><?=$this->translate("Votre Societe");?></label>
<div class="field"><input class="longfield" type="text" name="societe" value="<?=$this->partial()->view->societe?>"/></div>
</div>
<div class="fieldgrp">
<label>Votre Nom</label>
<label><?=$this->translate("Votre Nom");?></label>
<div class="field"><input class="longfield" type="text" name="nom" value="<?=$user->getNom()?>"/></div>
</div>
<div class="fieldgrp">
<label>Votre Prenom</label>
<label><?=$this->translate("Votre Prenom");?></label>
<div class="field"><input class="longfield" type="text" name="prenom" value="<?=$user->getPrenom()?>"/></div>
</div>
<div class="fieldgrp">
<label>Votre Adresse</label>
<label><?=$this->translate("Votre Adresse");?></label>
<div class="field"><input class="longfield" type="text" name="adresse" value="<?=$this->partial()->view->adresse?>"/></div>
</div>
<div class="fieldgrp">
<label>Votre Code Postal</label>
<label><?=$this->translate("Votre Code Postal");?></label>
<div class="field"><input class="longfield" type="text" name="cp" value="<?=$this->partial()->view->cp?>"/></div>
</div>
<div class="fieldgrp">
<label>Votre Ville</label>
<label><?=$this->translate("Votre Ville");?></label>
<div class="field"><input class="longfield" type="text" name="ville" value="<?=$this->partial()->view->ville?>"/></div>
</div>
<div class="fieldgrp">
<label>&nbsp;</label>
<div class="field"><input type="submit" class="button" name="kbis" value="Valider"></div>
<div class="field"><input type="submit" class="button" name="kbis" value="<?=$this->translate("Valider");?>"></div>
</div>
<?php } else {?>
<div class="fieldgrp">
<div class="field" style="color:red;"><?=$this->translate("Commande impossible. Votre email est invalide.");?></div>
</div>
<?php }?>
</div>
</form>

View File

@ -33,9 +33,9 @@
<h2>EXTRAIT KBIS</h2>
<div class="paragraph">
<?php if ($this->permKbis) {?>
<?=$this->partial('pieces/commande-kbis.phtml')?>
<?=$this->partial('pieces/commande-kbis.phtml', array('siren'=>$this->siren, 'raisonSociale'=>$this->raisonSociale, 'emailValide'=>$this->emailValide))?>
<?php } else {?>
<p class="marge">Vous n'avez pas les droits d'accès pour cette fonctionalité.</p>
<p class="marge"><?=$this->translate("Vous n'avez pas les droits d'accès pour cette fonctionalité."); ?></p>
<?php }?>
</div>
@ -44,7 +44,7 @@
<?php if ($this->permPriv) {?>
<?=$this->partial('pieces/commande-privileges.phtml')?>
<?php } else {?>
<p class="marge">Vous n'avez pas les droits d'accès pour cette fonctionalité.</p>
<p class="marge"><?=$this->translate("Vous n'avez pas les droits d'accès pour cette fonctionalité."); ?></p>
<?php }?>
</div>