. */ /* */ /*************************************************************************************/ if (isset ($_REQUEST['test'])) { $xmlstr = "http://www.bdd-ae75.fr/website/naima-script/flux-affaires-web-ae75.xml"; $myxml = simplexml_load_file($xmlstr, null, true); $references = $myxml->references; foreach ($references->reference as $ref): $ref->description = utf8_decode ($ref->description); $ref->description = str_replace (chr(156), "œ",$ref->description); echo utf8_encode ($ref->description); endforeach; exit (0); } /** * Permet de rediriger vers une page donnée, ou la page par défait en fin d'action... * * @param string $urlindiquee l'URL fournie, ou false pour ne pas rediriger. * @param string $urldefaut l'URL par defaut. */ function cron() { //mail ("yannick@junkprod.com","cron1E75","cron1E75"); //mysql_query ("DELETE FROM dossier WHERE parent='4'"); /* $sql = "SELECT DISTINCT mission FROM dossierdesc"; $result = mysql_query($sql); while ($row = mysql_fetch_array($result)) { echo $row['mission']."
"; } echo "









"; $sql = "SELECT DISTINCT domaine_de_competence FROM dossierdesc"; $result = mysql_query($sql); while ($row = mysql_fetch_array($result)) { echo $row['domaine_de_competence']."
"; } */ function normalize_special_characters( $str ) { # Quotes cleanup $str = ereg_replace( chr(ord("`")), "'", $str ); # ` $str = ereg_replace( chr(ord("´")), "'", $str ); # ´ $str = ereg_replace( chr(ord("„")), ",", $str ); # „ $str = ereg_replace( chr(ord("`")), "'", $str ); # ` $str = ereg_replace( chr(ord("´")), "'", $str ); # ´ $str = ereg_replace( chr(ord("“")), "\"", $str ); # “ $str = ereg_replace( chr(ord("”")), "\"", $str ); # ” $str = ereg_replace( chr(ord("´")), "'", $str ); # ´ $unwanted_array = array( 'Š'=>'S', 'š'=>'s', 'Ž'=>'Z', 'ž'=>'z', 'À'=>'A', 'Á'=>'A', 'Â'=>'A', 'Ã'=>'A', 'Ä'=>'A', 'Å'=>'A', 'Æ'=>'A', 'Ç'=>'C', 'È'=>'E', 'É'=>'E', 'Ê'=>'E', 'Ë'=>'E', 'Ì'=>'I', 'Í'=>'I', 'Î'=>'I', 'Ï'=>'I', 'Ñ'=>'N', 'Ò'=>'O', 'Ó'=>'O', 'Ô'=>'O', 'Õ'=>'O', 'Ö'=>'O', 'Ø'=>'O', 'Ù'=>'U', 'Ú'=>'U', 'Û'=>'U', 'Ü'=>'U', 'Ý'=>'Y', 'Þ'=>'B', 'ß'=>'Ss', 'à'=>'a', 'á'=>'a', 'â'=>'a', 'ã'=>'a', 'ä'=>'a', 'å'=>'a', 'æ'=>'a', 'ç'=>'c', 'è'=>'e', 'é'=>'e', 'ê'=>'e', 'ë'=>'e', 'ì'=>'i', 'í'=>'i', 'î'=>'i', 'ï'=>'i', 'ð'=>'o', 'ñ'=>'n', 'ò'=>'o', 'ó'=>'o', 'ô'=>'o', 'õ'=>'o', 'ö'=>'o', 'ø'=>'o', 'ù'=>'u', 'ú'=>'u', 'û'=>'u', 'ý'=>'y', 'ý'=>'y', 'þ'=>'b', 'ÿ'=>'y' ); $str = strtr( $str, $unwanted_array ); # Bullets, dashes, and trademarks $str = ereg_replace( chr(149), "•", $str ); # bullet • $str = ereg_replace( chr(150), "–", $str ); # en dash $str = ereg_replace( chr(151), "—", $str ); # em dash $str = ereg_replace( chr(153), "™", $str ); # trademark $str = ereg_replace( chr(169), "©", $str ); # copyright mark $str = ereg_replace( chr(174), "®", $str ); # registration mark return $str; } header('Content-Type: text/html; charset=ISO-8859-1'); //header('Content-Type: text/html; charset=UTF-8'); mb_internal_encoding('UTF-8'); mb_http_output('UTF-8'); mb_http_input('UTF-8'); mb_regex_encoding('UTF-8'); function utf8_string_array_encode(&$array){ $func = function(&$value,&$key){ if(is_string($value)){ $value = utf8_encode($value); } if(is_string($key)){ $key = utf8_encode($key); } if(is_array($value)){ utf8_string_array_encode($value); } }; array_walk($array,$func); return $array; } function convert_quotes($string){ $search = array(chr(145),chr(146),chr(147),chr(148),chr(151),chr(156)); $replace = array("'","'",'"','"','-','œ'); return str_replace($search, $replace, $string); } //$xmlstr = "http://bdd-ae75.fr/website/naima-script/flux-affaires-web-daily-ae75.xml"; $xmlstr = "http://bdd-ae75.fr/website/naima-script/flux-affaires-ae75.xml"; $myxml = simplexml_load_file($xmlstr, null, true); $references = $myxml->references; foreach ($references->reference as $ref): $dossier = new Dossier(); $ref->description = utf8_decode ($ref->description); $ref->description = convert_quotes($ref->description) ; //$ref->description = str_replace (chr(156), "œ",$ref->description); $ref->titre = utf8_decode ($ref->titre); $ref->titre = convert_quotes($ref->titre) ; if ($dossier->charger_num_affaire($ref->num_affaire)){ //mysql_query ("DELETE FROM image WHERE dossier='".$dossier->id."'"); //echo $ref->description ; if ($ref->url_image1!="") { $url='http://www.ae75.fr/images-projets/'.$ref->url_image1; $contents=file_get_contents($url); $save_path='client/gfx/photos/dossier/'.$ref->url_image1; if (!file_exists($save_path) ) { if (file_put_contents($save_path,$contents)==0){ echo $ref->url_image1."
"; } $obj = new Image(); $obj->dossier = $dossier->id ; $obj->fichier = $ref->url_image1; $obj->add(); } } if ($ref->url_image2!="") { $url='http://www.ae75.fr/images-projets/'.$ref->url_image2; $contents=file_get_contents($url); $save_path='client/gfx/photos/dossier/'.$ref->url_image2; if (!file_exists($save_path) ) { if (file_put_contents($save_path,$contents)==0){ echo $ref->url_image2."
"; } $obj = new Image(); $obj->dossier = $dossier->id ; $obj->fichier = $ref->url_image2; $obj->add(); } } if ($ref->url_image3!="") { $url='http://www.ae75.fr/images-projets/'.$ref->url_image3; $contents=file_get_contents($url); $save_path='client/gfx/photos/dossier/'.$ref->url_image3; if (!file_exists($save_path) ) { if (file_put_contents($save_path,$contents)==0){ echo $ref->url_image3."
"; } $obj = new Image(); $obj->dossier = $dossier->id ; $obj->fichier = $ref->url_image3; $obj->add(); } } $dossierdesc = new Dossierdesc(); $dossierdesc->charger($dossier->id); $dossierdesc->titre= utf8_encode ($ref->titre); $dossierdesc->description= utf8_encode ($ref->description); $dossierdesc->num_affaire=$ref->num_affaire; $dossierdesc->etat=$ref->etat; $dossierdesc->date=$ref->date; $dossierdesc->url_image=$ref->url_image; $dossierdesc->avancement=$ref->avancement; $dossierdesc->domaine_de_competence=$ref->domaine_de_competence; $dossierdesc->domaine_de_competence0=$ref->domaine_de_competence0; $dossierdesc->domaine_de_competence1=$ref->domaine_de_competence1; $dossierdesc->domaine_de_competence2=$ref->domaine_de_competence2; $dossierdesc->domaine_de_competence3=$ref->domaine_de_competence3; $dossierdesc->domaine_de_competence4=$ref->domaine_de_competence4; $dossierdesc->domaine_de_competence5=$ref->domaine_de_competence5; $dossierdesc->details_mission=$ref->details_mission; $dossierdesc->date_fin_mission=$ref->date_fin_mission; $dossierdesc->mission=$ref->mission; $dossierdesc->bet=$ref->bet; $dossierdesc->architecte=$ref->architecte; $dossierdesc->mod=$ref->mod; $dossierdesc->mo=$ref->mo; $dossierdesc->ville=$ref->ville; $dossierdesc->surface=$ref->surface; $dossierdesc->date_de_livraison=$ref->date_de_livraison; $dossierdesc->chapo=date ("Y-m-d h:i"); $dossierdesc->maj(); //$dossierdesc->reecrire(); } else{ $dossier->parent=4; $dossier->ligne=1; $dossier->num_affaire=$ref->num_affaire; $dossier_id = $dossier->add(); $dossierdesc = new Dossierdesc(); $dossierdesc->titre=$ref->titre; $dossierdesc->description= utf8_encode ($ref->description); $dossierdesc->num_affaire=$ref->num_affaire; $dossierdesc->etat=$ref->etat; $dossierdesc->date=$ref->date; $dossierdesc->url_image=$ref->url_image; $dossierdesc->avancement=$ref->avancement; $dossierdesc->domaine_de_competence=$ref->domaine_de_competence; $dossierdesc->domaine_de_competence0=$ref->domaine_de_competence0; $dossierdesc->domaine_de_competence1=$ref->domaine_de_competence1; $dossierdesc->domaine_de_competence2=$ref->domaine_de_competence2; $dossierdesc->domaine_de_competence3=$ref->domaine_de_competence3; $dossierdesc->domaine_de_competence4=$ref->domaine_de_competence4; $dossierdesc->domaine_de_competence5=$ref->domaine_de_competence5; $dossierdesc->details_mission=$ref->details_mission; $dossierdesc->date_fin_mission=$ref->date_fin_mission; $dossierdesc->mission=$ref->mission; $dossierdesc->bet=$ref->bet; $dossierdesc->architecte=$ref->architecte; $dossierdesc->mod=$ref->mod; $dossierdesc->mo=$ref->mo; $dossierdesc->ville=$ref->ville; $dossierdesc->surface=$ref->surface; $dossierdesc->date_de_livraison=$ref->date_de_livraison; $dossierdesc->dossier=$dossier_id; $dossierdesc->lang=1; $dossierdesc->add(); $dossierdesc->reecrire(); if ($ref->url_image1!="") { $url='http://www.ae75.fr/images-projets/'.$ref->url_image1; $contents=file_get_contents($url); $save_path='client/gfx/photos/dossier/'.$ref->url_image1; if (file_put_contents($save_path,$contents)==0){ echo $ref->url_image1."
"; } $obj = new Image(); $obj->dossier = $dossier_id ; $obj->fichier = $ref->url_image1; $obj->add(); } if ($ref->url_image2!="") { $url='http://www.ae75.fr/images-projets/'.$ref->url_image2; $contents=file_get_contents($url); $save_path='client/gfx/photos/dossier/'.$ref->url_image2; if (file_put_contents($save_path,$contents)==0){ echo $ref->url_image2."
"; } $obj = new Image(); $obj->dossier = $dossier_id ; $obj->fichier = $ref->url_image2; $obj->add(); } if ($ref->url_image3!="") { $url='http://www.ae75.fr/images-projets/'.$ref->url_image3; $contents=file_get_contents($url); $save_path='client/gfx/photos/dossier/'.$ref->url_image3; if (file_put_contents($save_path,$contents)==0){ echo $ref->url_image3."
"; } $obj = new Image(); $obj->dossier = $dossier_id ; $obj->fichier = $ref->url_image3; $obj->add(); } /* $url='http://www.ae75.fr/images-projets/'.$ref->url_image; $contents=file_get_contents($url); $save_path='client/gfx/photos/dossier/'.$ref->url_image; file_put_contents($save_path,$contents); $obj = new Image(); $obj->dossier = $dossier_id ; $obj->fichier = $ref->url_image; $obj->add(); */ } endforeach; /* $dossier->charger($id); $dossierdesc->charger($id, $lang); $adr = new Venteadr(); $adr->raison = $client->raison; $adr->entreprise = $client->entreprise; $adr->nom = $client->nom; $adr->prenom = $client->prenom; $adr->adresse1 = $client->adresse1; $adr->adresse2 = $client->adresse2; $adr->adresse3 = $client->adresse3; $adr->cpostal = $client->cpostal; $adr->ville = $client->ville; $adr->tel = $client->telfixe . " " . $client->telport; $adr->pays = $client->pays; $adrcli = $adr->add();*/ } function redirige_action($urlindiquee, $urldefaut) { if ($urlindiquee !== '') { // Permettre aux plugins d'empêcher la redirection en indiquant 'false' pour urlok ou urlerr if ($urlindiquee !== false) redirige(str_replace("&", "&", $urlindiquee)); } else if ($urldefaut != "") redirige($urldefaut); } // ajout panier function ajouter($ref, $quantite=1, $append=0, $nouveau=0, $parent=-1) { $testprod = new Produit(); if(! $testprod->charger($ref)) return 0; if (intval($quantite<= 0)) $quantite = 1; $perso = array(); // vérification si un produit avec la même déclinaison est déjà  présent foreach ($_REQUEST as $key => $valeur) { if(strstr($key, "declinaison")){ $ps = new Perso(); $ps->declinaison = substr($key, 11); $ps->valeur = stripslashes($valeur); $perso[] = $ps; } } $indicePanier = $_SESSION['navig']->panier->ajouter($ref, $quantite, $perso, $append, $nouveau, $parent); } // changement de transport function transport($id){ $transzone = new Transzone(); $pays = new Pays(); if (intval($_SESSION['navig']->adresse) > 0){ $adr = new Adresse(); $adr->charger($_SESSION['navig']->adresse); $pays->charger($adr->pays); } else $pays->charger($_SESSION['navig']->client->pays); if( ! $transzone->charger($id, $pays->zone)) { $_SESSION['navig']->commande->transport = ""; return; } $_SESSION['navig']->commande->transport = $id; } // on fixe le code promo function codepromo($code){ ActionsModules::instance()->appel_module("avantpromo",$code); $promo = new Promo(); $promo->charger($code); $_SESSION['navig']->promo = $promo; ActionsModules::instance()->appel_module("aprespromo",$code); } function calc_remise($total){ $remise = 0; $promo = &$_SESSION['navig']->promo; if(intval($promo->id) > 0){ if ($promo->mini <= $total) { if ($promo->type == Promo::TYPE_SOMME) $remise = $promo->valeur; else if($promo->type == Promo::TYPE_POURCENTAGE) $remise += $total * $promo->valeur / 100; } if($remise > $total) $remise = $total; } // Remise est passé par référence ActionsModules::instance()->appel_module("calc_remise", $remise, $total); return $remise; } // suppression d'un article du panier function supprimer($article){ $_SESSION['navig']->panier->supprimer($article); } // modification de la quantité d'un article function modifier($article, $quantite, $parent=-1) { if(intval($quantite) >= 0) $_SESSION['navig']->panier->modifier($article, $quantite, $parent); } // connexion du client function connexion($email,$motdepasse, $urlok="", $urlerr=""){ $client = new Client(); if ($client->charger($email, $motdepasse)) { $_SESSION['navig']->client = $client; $_SESSION['navig']->connecte = 1; ActionsModules::instance()->appel_module("apresconnexion", $client); if($_SESSION['navig']->urlpageret) redirige_action($urlok, $_SESSION['navig']->urlpageret); else redirige_action($urlok, urlfond()); } else { redirige_action($urlerr, urlfond("connexion", "errconnex=1")); } } // déconnexion du client function deconnexion(){ ActionsModules::instance()->appel_module("avantdeconnexion", $_SESSION['navig']->client); $_SESSION['navig']->client= new Client(); $_SESSION['navig']->connecte = 0; $_SESSION['navig']->adresse = 0; $_SESSION['navig']->urlpageret = supprimer_deconnexion($_SESSION['navig']->urlpageret); ActionsModules::instance()->appel_module("apresdeconnexion"); } // modification de l'adresse en cours function modadresse($adresse){ if (intval($adresse) == 0) { $_SESSION['navig']->adresse=0; } else { $verif = new Adresse($adresse); if($verif->client == $_SESSION['navig']->client->id) $_SESSION['navig']->adresse=$adresse; } } // procédure de paiement function paiement($type_paiement){ if (! $_SESSION['navig']->client->id || $_SESSION['navig']->panier->nbart < 1) redirige(urlfond()); $total = 0; $nbart = 0; $poids = 0; $unitetr = 0; ActionsModules::instance()->appel_module("avantcommande"); $modules = new Modules(); $modules->charger_id($type_paiement); if(! $modules->actif) return 0; try { $modpaiement = ActionsModules::instance()->instancier($modules->nom); $commande = new Commande(); $commande->transport = $_SESSION['navig']->commande->transport; $commande->client = $_SESSION['navig']->client->id; $commande->remise = 0; $devise = ActionsDevises::instance()->get_devise_courante(); $commande->devise = $devise->id; $commande->taux = $devise->taux; $client = new Client(); $client->charger_id($_SESSION['navig']->client->id); $adr = new Venteadr(); $adr->raison = $client->raison; $adr->entreprise = $client->entreprise; $adr->nom = $client->nom; $adr->prenom = $client->prenom; $adr->adresse1 = $client->adresse1; $adr->adresse2 = $client->adresse2; $adr->adresse3 = $client->adresse3; $adr->cpostal = $client->cpostal; $adr->ville = $client->ville; $adr->tel = $client->telfixe . " " . $client->telport; $adr->pays = $client->pays; $adrcli = $adr->add(); $commande->adrfact = $adrcli; $adr = new Venteadr(); $livraison = new Adresse(); if($livraison->charger($_SESSION['navig']->adresse)){ $adr->raison = $livraison->raison; $adr->entreprise = $livraison->entreprise; $adr->nom = $livraison->nom; $adr->prenom = $livraison->prenom; $adr->adresse1 = $livraison->adresse1; $adr->adresse2 = $livraison->adresse2; $adr->adresse3 = $livraison->adresse3; $adr->cpostal = $livraison->cpostal; $adr->ville = $livraison->ville; $adr->tel = $livraison->tel; $adr->pays = $livraison->pays; } else { $adr->raison = $client->raison; $adr->entreprise = $client->entreprise; $adr->nom = $client->nom; $adr->prenom = $client->prenom; $adr->adresse1 = $client->adresse1; $adr->adresse2 = $client->adresse2; $adr->adresse3 = $client->adresse3; $adr->cpostal = $client->cpostal; $adr->ville = $client->ville; $adr->tel = $client->telfixe . " " . $client->telport; $adr->pays = $client->pays; } $adrlivr = $adr->add(); $commande->adrlivr = $adrlivr; $commande->facture = 0; $commande->statut=Commande::NONPAYE; $commande->paiement = $type_paiement; $commande->lang = ActionsLang::instance()->get_id_langue_courante(); $commande->id = $commande->add(); $pays = new Pays(); $pays->charger($adr->pays); $correspondanceParent = array(null); foreach($_SESSION['navig']->panier->tabarticle as $pos => &$article) { $venteprod = new Venteprod(); $dectexte = "\n"; $produit = new Produit(); $stock = new Stock(); foreach($article->perso as $perso) { $declinaison = new Declinaison(); $declinaisondesc = new Declinaisondesc(); if(is_numeric($perso->valeur) && $modpaiement->defalqcmd) { // diminution des stocks de déclinaison si on est sur un module de paiement qui défalque de suite $stock->charger($perso->valeur, $article->produit->id); $stock->valeur-=$article->quantite; $stock->maj(); } $declinaison->charger($perso->declinaison); $declinaisondesc->charger($declinaison->id); // recup valeur declidisp ou string if($declinaison->isDeclidisp($perso->declinaison)){ $declidisp = new Declidisp(); $declidispdesc = new Declidispdesc(); $declidisp->charger($perso->valeur); $declidispdesc->charger_declidisp($declidisp->id); $dectexte .= "- " . $declinaisondesc->titre . " : " . $declidispdesc->titre . "\n"; } else $dectexte .= "- " . $declinaisondesc->titre . " : " . $perso->valeur . "\n"; } // diminution des stocks classiques si on est sur un module de paiement qui défalque de suite $produit = new Produit($article->produit->ref); if($modpaiement->defalqcmd){ $produit->stock-=$article->quantite; $produit->maj(); } /* Gestion TVA */ $prix = $article->produit->prix; $prix2 = $article->produit->prix2; $tva = $article->produit->tva; if($pays->tva != "" && (! $pays->tva || ($pays->tva && $_SESSION['navig']->client->intracom != "" && !$pays->boutique))) { $prix = round($prix/(1+($tva/100)), 2); $prix2 = round($prix2/(1+($tva/100)), 2); $tva = 0; } $venteprod->quantite = $article->quantite; if( ! $article->produit->promo) $venteprod->prixu = $prix; else $venteprod->prixu = $prix2; $venteprod->ref = $article->produit->ref; $venteprod->titre = $article->produitdesc->titre . " " . $dectexte; $venteprod->chapo = $article->produitdesc->chapo; $venteprod->description = $article->produitdesc->description; $venteprod->tva = $tva; $venteprod->commande = $commande->id; $venteprod->id = $venteprod->add(); $correspondanceParent[]=$venteprod->id; // ajout dans ventedeclisp des declidisp associées au venteprod foreach($article->perso as $perso){ $declinaison = new Declinaison(); $declinaison->charger($perso->declinaison); // si declidisp (pas un champs libre) if($declinaison->isDeclidisp($perso->declinaison)){ $vdec = new Ventedeclidisp(); $vdec->venteprod = $venteprod->id; $vdec->declidisp = $perso->valeur; $vdec->add(); } } ActionsModules::instance()->appel_module("apresVenteprod", $venteprod, $pos); $total += $venteprod->prixu * $venteprod->quantite; $nbart++; $poids+= $article->produit->poids; } foreach($correspondanceParent as $id_panier => $id_venteprod) { if($_SESSION['navig']->panier->tabarticle[$id_panier]->parent>=0) { $venteprod->charger($id_venteprod); $venteprod->parent = $correspondanceParent[$_SESSION['navig']->panier->tabarticle[$id_panier]->parent]; $venteprod->maj(); } } $pays = new Pays($_SESSION['navig']->client->pays); if ($_SESSION['navig']->client->pourcentage>0) $commande->remise = $total * $_SESSION['navig']->client->pourcentage / 100; $total -= $commande->remise; if($_SESSION['navig']->promo->id != ""){ $commande->remise += calc_remise($total); $_SESSION['navig']->promo->utilise = 1; if(!empty($commande->remise)) $commande->remise = round($commande->remise, 2); $commande->maj(); $temppromo = new Promo(); $temppromo->charger_id($_SESSION['navig']->promo->id); $temppromo->utilise++; $temppromo->maj(); $promoutil = new Promoutil(); $promoutil->commande = $commande->id; $promoutil->promo = $temppromo->id; $promoutil->code = $temppromo->code; $promoutil->type = $temppromo->type; $promoutil->valeur = $temppromo->valeur; $promoutil->add(); } if($commande->remise > $total) $commande->remise = $total; $commande->port = port(); if(intval($commande->port) <= 0) $commande->port = 0; $_SESSION['navig']->promo = new Promo(); $_SESSION['navig']->commande = $commande; $commande->transaction = genid($commande->id, 6); $commande->maj(); $total = $_SESSION['navig']->panier->total(1,$_SESSION['navig']->commande->remise) + $_SESSION['navig']->commande->port; if($total<$_SESSION['navig']->commande->port) $total = $_SESSION['navig']->commande->port; $_SESSION['navig']->commande->total = $total; ActionsModules::instance()->appel_module("aprescommande", $commande); // Appeler la méthode mail du plugin de paiement... $modpaiement->mail($commande); // ... et la méthode paiement $modpaiement->paiement($commande); } catch (Exception $e) { // FIXME: Echec de commande -> cas à traiter ? } } // création d'un compte function creercompte( $raison, $entreprise, $siret, $intracom, $prenom, $nom, $adresse1, $adresse2, $adresse3, $cpostal, $ville, $pays, $telfixe, $telport, $email1, $email2, $motdepasse1, $motdepasse2, $parrain, $obligetel=0, $urlok="", $urlerr=""){ $client = new Client(); $client->raison = strip_tags($raison); $client->nom = strip_tags($nom); $client->entreprise = strip_tags($entreprise); $client->prenom = strip_tags($prenom); $client->telfixe = strip_tags($telfixe); $client->telport =strip_tags($telport); if(filter_var($email1, FILTER_VALIDATE_EMAIL) && $email1==$email2) $client->email = strip_tags($email1); $client->adresse1 = strip_tags($adresse1); $client->adresse2 = strip_tags($adresse2); $client->adresse3 = strip_tags($adresse3); $client->cpostal = strip_tags($cpostal); $client->ville = strip_tags($ville); $client->siret = strip_tags($siret); $client->intracom = strip_tags($intracom); $client->pays = strip_tags($pays); $client->type = "0"; $client->lang = ActionsLang::instance()->get_id_langue_courante(); $testcli = new Client(); if($parrain != "") if($testcli->charger_mail($parrain)) $parrain=$testcli->id; else $parrain=-1; else $parrain=0; if($testcli->id != "") $client->parrain=$testcli->id; if ($motdepasse1 == $motdepasse2 && strlen($motdepasse1) > 3 ) $client->motdepasse = strip_tags($motdepasse1); $_SESSION['navig']->formcli = $client; $obligeok = 1; // obligetel : 0 non, 1 fixe, 2 portable, 3 au moins un des deux, 4 les deux switch($obligetel){ case 0 : $obligeok = 1; break; case 1 : if($client->telfixe == "") $obligeok = 0; break; case 2 : if($client->telport == "") $obligeok = 0; break; case 3 : if($client->telfixe == "" && $client->telport == "") $obligeok = 0; break; case 4 : if($client->telfixe == "" || $client->telport == "") $obligeok = 0; break; default : $obligeok = 1; } ActionsModules::instance()->appel_module("avantclient"); if($client->raison!="" && $client->prenom!="" && $client->nom!="" && $client->email!="" && $client->motdepasse!="" && $client->email && ! $client->existe($email1) && $client->adresse1 !="" && $client->cpostal!="" && $client->ville !="" && $client->pays !="" && $obligeok){ $_SESSION['navig']->client = $client; $client->crypter(); $client->id = $client->add(); if($client->charger_mail($client->email)) { $_SESSION['navig']->client = $client; $_SESSION['navig']->connecte = 1; } else return 0; ActionsModules::instance()->appel_module("apresclient", $client); redirige_action($urlok, urlfond("adresse")); } else { redirige_action($urlerr, urlfond("formulerr", "errform=1")); } } // modification de compte function modifiercompte( $raison, $entreprise, $siret, $intracom, $prenom, $nom, $adresse1, $adresse2, $adresse3, $cpostal, $ville, $pays, $telfixe, $telport, $email1, $email2, $motdepasse1, $motdepasse2, $obligetel=0, $urlok="", $urlerr="") { $client = new Client(); $client->charger_id($_SESSION['navig']->client->id); if( $motdepasse1 == "") { $client->id = $_SESSION['navig']->client->id; $client->raison = strip_tags($raison); $client->siret = strip_tags($siret); $client->intracom = strip_tags($intracom); $client->entreprise = strip_tags($entreprise); $client->nom = strip_tags($nom); $client->prenom = strip_tags($prenom); $client->telfixe = strip_tags($telfixe); $client->telport =strip_tags($telport); $errEmail = 0; if($email1 != $client->email){ $test = new Client(); if($test->existe($email1)){ $errEmail = 1; } } if ($email1==$email2 && $email1 != "" && filter_var($email1, FILTER_VALIDATE_EMAIL)) $client->email = strip_tags($email1); else $client->email = ""; $client->adresse1 = strip_tags($adresse1); $client->adresse2 = strip_tags($adresse2); $client->adresse3 = strip_tags($adresse3); $client->cpostal = strip_tags($cpostal); $client->ville = strip_tags($ville); $client->pays = strip_tags($pays); $client->motdepasse = $_SESSION['navig']->client->motdepasse; $_SESSION['navig']->formcli = $client; $obligeok = 1; switch($obligetel){ case 0 : $obligeok = 1; break; case 1 : if($client->telfixe == "") $obligeok = 0; break; case 2 : if($client->telport == "") $obligeok = 0; break; case 3 : if($client->telfixe == "" && $client->telport == "") $obligeok = 0; break; case 4 : if($client->telfixe == "" || $client->telport == "") $obligeok = 0; break; default : $obligeok = 1; } ActionsModules::instance()->appel_module("avantmodifcompte"); if($client->raison!="" && $client->prenom!="" && $client->nom!="" && $client->email!="" && $client->email && $client->adresse1 !="" && $client->cpostal!="" && $client->ville !="" && $client->pays !="" && $obligeok && !$errEmail) { $client->maj(); $_SESSION['navig']->client = $client; ActionsModules::instance()->appel_module("apresmodifcompte", $client); redirige_action($urlok, $_SESSION['navig']->urlpageret); } else { redirige_action($urlerr, urlfond("compte_modifiererr", "errform=1")); } } else { modifiermotdepasse($motdepasse1, $motdepasse2, $urlok, $urlerr); } } // modification de mot de passe function modifiermotdepasse($motdepasse1, $motdepasse2, $urlok="", $urlerr="") { $client = new Client($_SESSION['navig']->client->id); if( $motdepasse1 == $motdepasse2 && strlen($motdepasse1) > 3) { $client->motdepasse = strip_tags($motdepasse1); $client->crypter(); $client->maj(); $_SESSION['navig']->client = $client; ActionsModules::instance()->appel_module("apresmodifcompte", $client); redirige_action($urlok, $_SESSION['navig']->urlpageret); } else { $_SESSION['navig']->formcli->motdepasse = ""; redirige_action($urlerr, urlfond("compte_modifiererr", "errform=1")); } } // création d'une adresse de livraison function creerlivraison($id, $libelle, $raison, $entreprise, $prenom, $nom, $adresse1, $adresse2, $adresse3, $cpostal, $ville, $tel, $pays, $urlok="", $urlerr=""){ $adresse = new Adresse(); $adresse->libelle = strip_tags($libelle); $adresse->raison = strip_tags($raison); $adresse->entreprise = strip_tags($entreprise); $adresse->prenom = strip_tags($prenom); $adresse->nom = strip_tags($nom); $adresse->adresse1 = strip_tags($adresse1); $adresse->adresse2 = strip_tags($adresse2); $adresse->adresse3 = strip_tags($adresse3); $adresse->cpostal = strip_tags($cpostal); $adresse->ville = strip_tags($ville); $adresse->tel = strip_tags($tel); $adresse->pays = strip_tags($pays); $adresse->client = $_SESSION['navig']->client->id; $_SESSION['navig']->formadr = $adresse; if ($libelle != "" && $raison != "" && $prenom != "" && $nom != "" && $adresse1 != "" && $cpostal != "" && $ville != "" && $pays != "") { $adresse->id = $adresse->add(); $_SESSION['navig']->adresse=$adresse->id; ActionsModules::instance()->appel_module("apres_creerlivraison", $adresse); } else redirige_action($urlerr, '' /* Page erreur pas prevue initialemet */); redirige_action($urlok, $_SESSION['navig']->urlpageret); } // suppression d'une adresse de livraison function supprimerlivraison($id){ $adresse = new Adresse(); $adresse->charger($id); if($adresse->client != $_SESSION['navig']->client->id) return; $adresse->delete(); if($_SESSION['navig']->adresse == $id) $_SESSION['navig']->adresse = 0; } // modification d'une adresse de livraison function modifierlivraison($id, $libelle, $raison, $entreprise, $prenom, $nom, $adresse1, $adresse2, $adresse3, $cpostal, $ville, $tel, $pays, $urlok="", $urlerr=""){ $adresse = new Adresse($id); if($adresse->client != $_SESSION['navig']->client->id) return; $adresse->libelle = strip_tags($libelle); $adresse->raison = strip_tags($raison); $adresse->entreprise = strip_tags($entreprise); $adresse->prenom = strip_tags($prenom); $adresse->nom = strip_tags($nom); $adresse->adresse1 = strip_tags($adresse1); $adresse->adresse2 = strip_tags($adresse2); $adresse->adresse3 = strip_tags($adresse3); $adresse->cpostal = strip_tags($cpostal); $adresse->ville = strip_tags($ville); $adresse->tel = strip_tags($tel); $adresse->pays = strip_tags($pays); $_SESSION['navig']->formadr = $adresse; if ($libelle != "" && $raison != "" && $prenom != "" && $nom != "" && $adresse1 != "" && $cpostal != "" && $ville != "" && $pays != "") { $adresse->maj(); ActionsModules::instance()->appel_module("apres_modifierlivraison", $adresse); } else { redirige_action($urlerr, '' /* Page erreur pas prevue initialemet */); } redirige_action($urlok, $_SESSION['navig']->urlpageret); } // changement du mot de passe function chmdp($email, $urlok="", $urlerr=""){ $tclient = new Client(); if( $tclient->charger_mail($email)) { $msg = new Message(); $msgdesc = new Messagedesc(); $pass = genpass(8); $tclient->motdepasse = $pass; $tclient->crypter(); $tclient->maj(); $msg->charger("changepass"); $msgdesc->charger($msg->id); $sujet = $msgdesc->titre; $corps = $msgdesc->description; $corpstext = $msgdesc->descriptiontext; $nomsite = Variable::lire("nomsite"); $corps = str_replace("__NOMSITE__",$nomsite,$corps); $corps = str_replace("__MOTDEPASSE__",$pass,$corps); $corps = str_replace("__URLSITE__", urlfond(),$corps); $corps = str_replace("__NOM__", $tclient->nom,$corps); $corps = str_replace("__PRENOM__", $tclient->prenom,$corps); $corps = str_replace("__EMAIL__", $tclient->email,$corps); $corpstext = str_replace("__NOMSITE__",$nomsite,$corpstext); $corpstext = str_replace("__MOTDEPASSE__",$pass,$corpstext); $corpstext = str_replace("__URLSITE__", urlfond(),$corpstext); $corpstext = str_replace("__NOM__", $tclient->nom,$corpstext); $corpstext = str_replace("__PRENOM__", $tclient->prenom,$corpstext); $corpstext = str_replace("__EMAIL__", $tclient->email,$corpstext); $emailfrom = Variable::lire("emailfrom"); Mail::envoyer( $tclient->prenom . " " . $tclient->nom, $tclient->email, $nomsite, $emailfrom, $sujet, $corps, $corpstext); redirige_action($urlok, '' /* Pas prevu initialement */); } else { redirige_action($urlerr, urlfond("mdperreur")); } } function reprise_paiement($id_paiement, $id_commande) { if (!$_SESSION['navig']->client->id) { redirige(urlfond()); } $commande = new Commande(); $paiement = new Modules(); if ($commande->charger_id($id_commande) && $paiement->charger_id($id_paiement)) { if ($commande->client != $_SESSION['navig']->client->id) { redirige(urlfond()); } $_SESSION['navig']->panier = new Panier(); $commande->total = $commande->total(true, true); $commande->paiement = $paiement->id; $commande->maj(); $_SESSION['navig']->commande = $commande; $className = $paiement->nom; $modpaiement = ActionsModules::instance()->instancier($paiement->nom); $modpaiement->paiement($commande); } } ?>