_helper->layout->disableLayout(); //Mode edition if($idMandataire != ''){ $idMandataire = (int)substr($idMandataire,1); try{ $O = $client->getMandataire($idMandataire); $tabMandataires = $O['result']; $firephp->log($tabMandataires,'Edition - tabMandataires'); }catch(SoapFault $fault){ $message = 'Une erreur est survenue durant la recherche de mandataire.'; } //Mode ajout }else{ $tabMandataires = $_REQUEST['tabMandataires']; } if($tribunal!=''){ //La cour d'appel suivant le tribunal sélectionné $tmp = $client->getIdCoursAppel($tribunal); $codeCourAppel = $tmp; //Les cours d'appel //require_once realpath(dirname(__FILE__).'/coursappel.php'); //Les tribunaux $tmp = $client->getTribunaux(array('C','I','G')); // $tribunaux = $tmp['result']; }else{ $message = 'Pas de tribunal sélectionné.'; } } /** * Edition d'un mandataire */ public function editAction() { $this->_forward('add'); } /** * Recherche d'un mandataire à partir d'une chaine de caractères * "nom, departement" */ public function searchAction() { $this->_helper->layout->disableLayout(); $this->_helper->viewRenderer->setNoRender(); $request = $this->getRequest(); $search = $request->getParam('search', ''); if (empty($search)) { echo ''; } else { $search = strtolower($search); } list($searchStr, $filtre) = explode(',', $search); $searchStr = trim($searchStr); $filtre = str_replace(' ', '', $filtre); if( strlen($filtre) != 5 && strlen($filtre) != 2 ){ $filtre = ''; } $ws = new WsScores(); $reponse = $ws->searchMandataires($searchStr, array('V', 'N', 'H', 'A', 'M'), //types de mandataires $filtre); if ($reponse == false){ echo 'Erreur durant la recherche'; exit; } $mandataires = $reponse->result->item; $output = array(); $output[] = array( 'label' => "A l'adresse du bien vendu", 'id' => 'adresse' ); /* REGEX Code Postal : ^(F-)?((2[A|B])|[0-9]{2})[0-9]{3}$ (?0 ) { $tableResults = array(); $i=0; foreach ($mandataires as $mandataire) { $tabResults[$i]['code'] = $mandataire->id; $tabResults[$i]['lib'] = htmlspecialchars_decode( html_entity_decode($mandataire->mand), ENT_QUOTES); preg_match('/(?mand, $matches); $tabResults[$i]['cp'] = $matches[0]; $i++; } foreach ($tabResults as $key => $row){ $code[$key] = $row['code']; $lib[$key] = $row['lib']; $cp[$key] = $row['cp']; } //Classement du tableau array_multisort($cp, SORT_NUMERIC, $tabResults); //Affichage des valeurs foreach ($tabResults as $item){ $output[] = array( 'label' => $item['lib'], 'id' => $item['code'] ); } } echo json_encode($output); } public function getAction() { $this->_helper->layout->disableLayout(); $this->_helper->viewRenderer->setNoRender(); $request = $this->getRequest(); $siren = $request->getParam('siren', ''); $siren = trim($siren); $siren = str_replace(' ','',$siren); //Remplacer les espaces if ( $siren=='' || strlen($siren)!=14 ) { $output = array( 'Siret' => 'Siret incorrect', ); echo json_encode($output); exit; } $tabEntrep = array(); $ws = new WsScores(); $tabEntrep = $ws->getIdentite($siren); /** * Utiliser la raison sociale la plus longue * Nom, Nom2, NomLong */ if (!empty($tabEntrep->NomLong) && strlen($tabEntrep->NomLong)>strlen($tabEntrep->Nom)){ $tabEntrep->Nom = $tabEntrep->NomLong; } //Retourner le tableau sous forme json $tabEntrepD = $this->htmlentitydecode_deep($tabEntrep); echo json_encode($tabEntrepD); } public function saveAction() { $this->_helper->layout->disableLayout(); $this->_helper->viewRenderer->setNoRender(); $request = $this->getRequest(); $error = false; $tabMandataires = array(); $tabMandataires = $_REQUEST['tabMandataires']; //Vérification des données $fields = array(); if($tabMandataires['sirenGrp']=='' && $tabMandataires['sirenMand']==''){ $fields[] ='Siret'; $error = true; } if($tabMandataires['sirenGrp'] == $tabMandataires['sirenMand']){ $fields[] ='Siret de la société civile identique au Siret du mandataire'; $error = true; } if( (strlen($tabMandataires['sirenGrp'])!=14 && empty($tabMandataires['sirenMand'])) || (empty($tabMandataires['sirenGrp']) && strlen($tabMandataires['sirenMand'])!=14) ){ $fields = 'Siret avec la bonne taille'; $error = true; } if($tabMandataires['Nom']=='' ){$fields[] ='Nom'; $error = true;} if($tabMandataires['type']==''){$fields[] ='Type'; $error = true;} if($tabMandataires['coursAppel']==''){$fields[] ='Cours d\'appel'; $error = true;} if($tabMandataires['Statut']==''){$fields[] ='Statut'; $error = true;} if($tabMandataires['adresse']==''){$fields[] ='Adresse'; $error = true;} if($tabMandataires['cp']==''){$fields[] ='Code Postal'; $error = true;} if($tabMandataires['ville']==''){$fields[] ='Ville'; $error = true;} if($tabMandataires['tel']==''){$fields[] ='Téléphone'; $error = true;} //Envoi de la requête au webservices if ($error==true){ $message = ''; $message.= 'Veuillez remplir les champs suivants : '; $message.= join(', ', $fields); $message.= ''; }else{ $message=''; $ws = new WsScores(); $reponse = $ws->setMandataire($tabMandataires); if ($reponse===false || $reponse->result==false){ $message = 'Une erreur s\'est produite durant l\'enregistrement'; } } echo $message; } protected function htmlentitydecode_deep($value) { $value = is_array($value) ? array_map(array('MandataireController' ,'htmlentitydecode_deep'), $value) : html_entity_decode($value, ENT_QUOTES); return $value; } }