public function action(Request $request) { switch ($request->get('action')) { /*listrub actions*/ case 'addCategory': CategoryAdmin::getInstance()->add($request->request->get('title'), $request->request->get('parent')); break; case 'deleteCategory': CategoryAdmin::getInstance($request->query->get('category_id'))->delete(); break; case 'modClassementCategory': CategoryAdmin::getInstance($request->query->get("category_id"))->modifyOrder($request->query->get("type"), $request->query->get("parent")); break; case 'changeClassementCategory': CategoryAdmin::getInstance($request->request->get("category_id"))->changeOrder($request->request->get("newClassement"), $request->request->get("parent")); break; case "modifier": $categoryAdmin = CategoryAdmin::getInstance($request->request->get('id')); $categoryAdmin->modify($request->request->get('lang', ActionsLang::instance()->get_id_langue_courante()), $request->request->get('parent'), $request->request->get('lien'), $request->request->get('ligne'), $request->request->get('titre'), $request->request->get('chapo'), $request->request->get('description'), $request->request->get('postscriptum'), $request->request->get('urlsuiv'), $request->request->get('urlreecrite'), $this->getAssociatedContents($request, $categoryAdmin), $this->getAssociatedFeatures($request, $categoryAdmin), $this->getAssociatedVariants($request, $categoryAdmin), $this->getImages($request, $categoryAdmin), $this->getDocuments($request, $categoryAdmin), $request->request->get('tab')); break; /*association*/ /*case 'deleteAssociatedContent': AssociatedContentAdmin::getInstance()->delete($request->query->get('associatedContent')); break; case 'addAssociatedContent': AssociatedContentAdmin::getInstance()->add($request->query->get('contenu'), 0, $request->query->get('id')); break;*/ } }
/** * Cette classe est un singleton * @return ActionsLang une instance de ActionsLang */ public static function instance() { if (self::$instance === false) { self::$instance = new ActionsLang(); } return self::$instance; }
public function getList() { $return = array(); $query = "SELECT m.id, m.nom FROM " . Message::TABLE . " m"; foreach ($this->query_liste($query) as $message) { $messagedesc = new Messagedesc($message->id, ActionsLang::instance()->get_id_langue_courante()); $return[] = array("id" => $message->id, "nom" => $message->nom, "intitule" => $messagedesc->intitule); } return $return; }
public function action(Request $request) { switch ($request->get('action')) { case "modifier": $productAdmin = ProductAdmin::getInstanceByRef($request->request->get('ref')); $productAdmin->modify($request->request->get('lang', ActionsLang::instance()->get_id_langue_courante()), $request->request->get('prix', 0), $request->request->get('prix2', 0), $request->request->get('ecotaxe', 0), $request->request->get('promo'), $request->request->get('rubrique'), $request->request->get('nouveaute'), $request->request->get('perso'), $request->request->get('poids'), $request->request->get('stock'), $request->request->get('tva'), $request->request->get('ligne'), $request->request->get('titre'), $request->request->get('chapo'), $request->request->get('description'), $request->request->get('postscriptum'), $request->request->get('urlsuiv'), $request->request->get('urlreecrite'), $this->getCaracteristique($request, $productAdmin), $this->getDeclinaison($request, $productAdmin), $this->getImages($request, $productAdmin), $this->getDocuments($request, $productAdmin), $request->request->get('tab')); break; case "duplicateProduct": $productAdmin = ProductAdmin::getInstanceByRef($request->request->get('ref')); $duplicate = $request->request->get('duplicate'); $productAdmin->duplicate(isset($duplicate['ref']) ? $duplicate['ref'] : null, isset($duplicate['description']) && $duplicate['description'] == 'on', isset($duplicate['info']) && $duplicate['info'] == 'on', isset($duplicate['features']) && $duplicate['features'] == 'on', isset($duplicate['variants']) && $duplicate['variants'] == 'on', isset($duplicate['accessories']) && $duplicate['accessories'] == 'on', isset($duplicate['accessories_auto']) && $duplicate['accessories_auto'] == 'on', isset($duplicate['associated_contents']) && $duplicate['associated_contents'] == 'on', isset($duplicate['pictures']) && $duplicate['pictures'] == 'on', isset($duplicate['documents']) && $duplicate['documents'] == 'on'); break; } }
/** * Calculer une URL à partir d'un nom de fond. * * @param string fond le nom du fond * @param string parametres les parametres éventuels à ajouter à l'URL * @param boolean escape si true, on sépoare l'URL et les paramètres par &. Si false, par '&' */ function urlfond($fond = "", $parametres = false, $escape = false) { $urlsite = urlsite(); if (!empty($fond)) { if (Variable::lire("rewrite") != 0) { // Trouver une éventuelle reecriture $rw = new Reecriture(); if ($rw->charger_param($fond, $parametres == false ? '' : "&" . $parametres, ActionsLang::instance()->get_id_langue_courante(), 1)) { return "{$urlsite}/{$rw->url}"; } } $urlsite = sprintf("%s/?fond=%s", $urlsite, $fond); } if ($parametres !== false) { if ($escape) { $parametres = escape_ampersand($parametres); } $urlsite .= ($escape ? "&" : "&") . $parametres; } return $urlsite; }
public function action(Request $request) { switch ($request->get('action')) { case "modifier": $contentAdmin = ContentAdmin::getInstance($request->request->get('id')); $contentAdmin->modify($request->request->get('lang', ActionsLang::instance()->get_id_langue_courante()), $request->request->get('dossier'), $request->request->get('ligne'), $request->request->get('titre'), $request->request->get('chapo'), $request->request->get('description'), $request->request->get('postscriptum'), $request->request->get('urlsuiv'), $request->request->get('urlreecrite'), $this->getImages($request, $contentAdmin), $this->getDocuments($request, $contentAdmin), $request->request->get('tab')); break; /*listdos actions*/ /*listdos actions*/ case "addContent": ContentAdmin::getInstance()->add($request->request->get('title'), $request->request->get('parent')); break; case 'deleteContent': ContentAdmin::getInstance($request->query->get('content_id'))->delete(); break; case 'modClassementContent': ContentAdmin::getInstance($request->query->get("content_id"))->modifyOrder($request->query->get("type"), $request->query->get("parent")); break; case 'changeClassementContent': ContentAdmin::getInstance($request->request->get("content_id"))->changeOrder($request->request->get("newClassement"), $request->request->get("parent")); break; } }
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")); } }
if ($id) { ?> <tr class="claire"> <th class="designation"><?php echo trad('Changer_langue', 'admin'); ?> </th> <th> <?php $langl = new Lang(); $query = "select * from {$langl->table}"; $resul = mysql_query($query); while ($row = mysql_fetch_object($resul)) { $langl->charger($row->id); $ttrad = new Dossierdesc(); if (!$ttrad->charger($contenu->dossier, $row->id) && ActionsLang::instance()->get_action_si_trad_absente() == ActionsLang::UTILISER_LANGUE_INDIQUEE) { continue; } ?> <div class="flag<?php if ($lang == $langl->id) { ?> Selected<?php } ?> "> <a href="<?php echo $_SERVER['PHP_SELF']; ?> ?id=<?php echo $id;
<th><?php echo trad('TVA', 'admin'); ?> </th> <th></th> </tr> </thead> <tbody id="products_in_cart"> <?php $total = 0; $soustotal = 0; if ($createError && $panier) { for ($i = 0; $i < $panier->nbart; $i++) { if ($panier->tabarticle[$i]->perso[0]) { $declinaison = new Declinaisondesc($panier->tabarticle[$i]->perso[0]->declinaison, ActionsLang::instance()->get_id_langue_courante()); $declidisp = new Declidispdesc($panier->tabarticle[$i]->perso[0]->valeur, ActionsLang::instance()->get_id_langue_courante()); } $soustotal += $panier->tabarticle[$i]->produit->prix * $panier->tabarticle[$i]->quantite; ?> <tr> <td><?php echo $panier->tabarticle[$i]->produit->ref; ?> </td> <td><?php echo $panier->tabarticle[$i]->produitdesc->titre; ?> </td> <td><?php echo $panier->tabarticle[$i]->perso[0] ? $declinaison->titre . " : " . $declidisp->titre : ''; ?>
function liste_rubriques($parent, $critere, $order, $alpha) { $rubrique = new Rubrique(); $rubriquedesc = new Rubriquedesc(); if ($alpha == "alpha") { $query = "select r.id, r.ligne, r.classement from {$rubrique->table} r LEFT JOIN {$rubriquedesc->table} rd ON rd.rubrique=r.id and lang=" . ActionsLang::instance()->get_id_langue_courante() . " where r.parent=\"{$parent}\" order by rd.{$critere} {$order}"; } else { $query = "select id, ligne, classement from {$rubrique->table} where parent=\"{$parent}\" order by {$critere} {$order}"; } $resul = $rubrique->query($query); $i = 0; while ($resul && ($row = $rubrique->fetch_object($resul))) { $rubriquedesc = new Rubriquedesc(); $rubriquedesc->charger($row->id); if (!$rubriquedesc->affichage_back_office_permis()) { continue; } $fond = "ligne_" . ($i++ % 2 ? "claire" : "fonce") . "_rub"; ?> <ul class="<?php echo $fond; ?> "> <li style="width:623px;"><span id="titrerub_<?php echo $row->id; ?> " <?php if ($rubriquedesc->est_langue_courante()) { echo 'class="texte_edit"'; } ?> ><?php echo substr($rubriquedesc->titre, 0, 80); if (strlen($rubriquedesc->titre) > 80) { echo " ..."; } ?> </span></li> <li style="width:53px;"><input type="checkbox" id="rub_ligne_<?php echo $row->ref; ?> " name="ligne[]" class="sytle_checkbox" onchange="checkvalues('lignerub','<?php echo $row->id; ?> ')" <?php if ($row->ligne) { ?> checked="checked" <?php } ?> /></li> <li style="width:54px;"><?php if ($rubriquedesc->rubrique) { ?> <a href="parcourir.php?parent=<?php echo $row->id; ?> " ><?php echo trad('parcourir', 'admin'); ?> </a><?php } ?> </li> <li style="width:34px;"><a href="rubrique_modifier.php?id=<?php echo $row->id; ?> " class="txt_vert_11"><?php echo trad('editer', 'admin'); ?> </a></li> <li style="width:71px;"> <div class="bloc_classement"> <div class="classement"><a href="rubrique_modifier.php?id=<?php echo $row->id; ?> &action=modclassement&parent=<?php echo $parent; ?> &type=M"><img src="gfx/up.gif" border="0" /></a></div> <div class="classement"><span id="classementrub_<?php echo $row->id; ?> " class="classement_edit"><?php echo $row->classement; ?> </span></div> <div class="classement"><a href="rubrique_modifier.php?id=<?php echo $row->id; ?> &action=modclassement&parent=<?php echo $parent; ?> &type=D"><img src="gfx/dn.gif" border="0" /></a></div> </div> </li> <li style="width:37px; text-align:center;"><a href="javascript:supprimer_rubrique('<?php echo $row->id; ?> ','<?php echo $parent; ?> ')"><img src="gfx/supprimer.gif" width="9" height="9" border="0" /></a></li> </ul> <?php } }
private function __construct() { parent::__construct(); }
function substitutions($texte) { global $fond, $action; $texte = str_replace("#FOND", $fond, $texte); $texte = str_replace("#ACTION", $action, $texte); $texte = str_replace("#URLPREC", $_SESSION['navig']->urlprec, $texte); $texte = str_replace("#URLPAGERET", $_SESSION['navig']->urlpageret, $texte); $texte = str_replace("#URLPANIER", urlfond("panier"), $texte); $texte = str_replace("#URLCOMMANDER", urlfond("commande"), $texte); $texte = str_replace("#URLNOUVEAU", urlfond("nouveau"), $texte); // Supprimer l'éventuel paramètre de déconnexion, en, préservant les éventuels autres. $selfurl = supprimer_deconnexion(url_page_courante()); $parametres = parse_url($selfurl, PHP_URL_QUERY); $texte = str_replace("#URLCOURANTEPARAM", $parametres, $texte); $texte = str_replace("#URLCOURANTE", escape_ampersand($selfurl), $texte); $texte = str_replace("#URLDECONNEXION", escape_ampersand($selfurl . ($parametres != '' ? "&" : "?") . "action=deconnexion"), $texte); $texte = str_replace("#URLRECHERCHE", urlfond("recherche"), $texte); $texte = str_replace("#URLADRESSE", urlfond("adresse"), $texte); $texte = str_replace("#URLPAIEMENT", urlfond("commande"), $texte); $texte = str_replace("#URLSOMMAIRE", urlfond(), $texte); $texte = str_replace("#URLCOMPTEMODIFIER", urlfond("compte_modifier"), $texte); $texte = str_replace("#URLCOMPTE", urlfond("moncompte"), $texte); // Substitutions "langue" $texte = ActionsLang::instance()->substitutions(ActionsLang::instance()->get_langue_courante(), $texte); // Substitutions "devises" $texte = ActionsDevises::instance()->substitutions(ActionsDevises::instance()->get_devise_courante(), $texte); if (strstr($texte, "#VARIABLE")) { $texte = substitvariable($texte); } if (strstr($texte, "#MESSAGE_")) { $texte = substitmessage($texte); } if (strstr($texte, "#RUBRIQUE_")) { $texte = substitrubriques($texte); } if (strstr($texte, "#PRODUIT_")) { $texte = substitproduits($texte); } if (strstr($texte, "#PANIER_")) { $texte = substitpanier($texte); } if (strstr($texte, "#CLIENT_")) { $texte = substitclient($texte); } if (strstr($texte, "#PAGE_")) { $texte = substitpage($texte); } if (strstr($texte, "#ADRESSE_")) { $texte = substitadresse($texte); } if (strstr($texte, "#COMMANDE_")) { $texte = substitcommande($texte); } if (strstr($texte, "#IMAGE_")) { $texte = substitimage($texte); } if (strstr($texte, "#CARACTERISTIQUE_")) { $texte = substitcaracteristique($texte); } if (strstr($texte, "#DECLINAISON_")) { $texte = substitdeclinaison($texte); } if (strstr($texte, "#DOSSIER_")) { $texte = substitdossier($texte); } if (strstr($texte, "#CONTENU_")) { $texte = substitcontenu($texte); } if (strstr($texte, "#PARRAIN_")) { $texte = substitparrain($texte); } if (strstr($texte, "#PROMO_")) { $texte = substitpromo($texte); } // Traduction du template $texte = substitlang($texte); if (isset($_GET['errconnex']) && $_GET['errconnex'] == "1") { $texte = preg_replace("/\\#ERRCONNEX\\[([^]]*)\\]/", "\\1", $texte); } else { $texte = preg_replace("/\\#ERRCONNEX\\[([^]]*)\\]/", "", $texte); } // URL d'un fond, forme: #URLFOND(nom-du-fond) if (preg_match_all("`\\#URLFOND\\(([^\\),]+)(:?,([^\\),]+))*\\)`", $texte, $matches, PREG_SET_ORDER)) { foreach ($matches as $match) { $url = urlfond($match[1], isset($match[2]) ? $match[3] : false, true); $texte = str_replace($match[0], $url, $texte); } } // Ajout d'un paramètre à une URL, forme: #AJOUT_PARAMETRE(url,liste-de-paramètres) if (preg_match_all("`\\#AJOUTER_PARAMETRE\\(([^\\),]+)(:?,([^\\),]+))*\\)`", $texte, $matches, PREG_SET_ORDER)) { foreach ($matches as $match) { $url = $match[1]; if (isset($match[2])) { if (strstr($url, '?') !== false) { $url .= "&" . $match[3]; } else { $url .= "?" . $match[3]; } } $texte = str_replace($match[0], $url, $texte); } } $texte = str_replace("index.php", "", $texte); return $texte; }
public function getSearchList($searchTerm) { $searchTerm = $this->escape_string(trim($searchTerm)); $return = array(); if ($searchTerm === '') { return $return; } $query = "SELECT c.id, c.dossier, c.ligne, cd.titre\n FROM " . Contenu::TABLE . " c\n LEFT JOIN " . Contenudesc::TABLE . " cd\n ON c.id=cd.contenu AND cd.lang='" . ActionsLang::instance()->get_id_langue_courante() . "'\n WHERE cd.titre LIKE '%{$searchTerm}%'\n OR cd.description LIKE '%{$searchTerm}%'"; $resul = $this->query($query); while ($resul && ($row = $this->fetch_object($resul))) { $return[] = array("id" => $row->id, "dossier" => $row->dossier, "ligne" => $row->ligne, "titre" => $row->titre); } return $return; }
?> </th> <th style="text-align: center;"><?php echo trad('N° ISO', 'admin'); ?> </th> <th style="text-align: center;"><?php echo trad('Codes ISO', 'admin'); ?> </th> <th> </th> <th> </th> </tr> <?php $query = "SELECT *,p.id as id_pays FROM pays p left join paysdesc pd on pd.pays = p.id where pd.lang=" . ActionsLang::instance()->get_id_langue_courante() . " order by pd.titre"; $result = mysql_query($query); $style = 'fonce'; while ($result && ($row = mysql_fetch_object($result))) { ?> <tr class="<?php echo $style; ?> "> <td style="padding-left: 5px;"><?php echo $row->id_pays; ?> </td> <td><?php echo $row->titre != '' ? $row->titre : '<i>Non spécifié</i>'; ?>
public function getList() { $query = "SELECT p.id, p.tva, p.defaut, p.isocode, p.isoalpha2, p.isoalpha3, ps.titre, p.boutique FROM " . Pays::TABLE . " p LEFT JOIN " . Paysdesc::TABLE . " ps on p.id=ps.pays WHERE ps.lang=" . ActionsLang::instance()->get_id_langue_courante() . " order by ps.titre"; return $this->query_liste($query); }
if ($ref) { ?> <tr class="fonce"> <td class="designation"><?php echo trad('Changer_langue', 'admin'); ?> </td> <td> <?php $langl = new Lang(); $query = "select * from {$langl->table}"; $resul = mysql_query($query); while ($row = mysql_fetch_object($resul)) { $langl->charger($row->id); $ttrad = new Rubriquedesc(); if (!$ttrad->charger($produit->rubrique, $row->id) && ActionsLang::instance()->get_action_si_trad_absente() == ActionsLang::UTILISER_LANGUE_INDIQUEE) { continue; } ?> <div class="flag<?php if ($lang == $langl->id) { ?> Selected<?php } ?> "><a href="<?php echo $_SERVER['PHP_SELF']; ?> ?ref=<?php echo $ref; ?>
public function createOrder($facturation_raison, $facturation_entreprise, $facturation_nom, $facturation_prenom, $facturation_adresse1, $facturation_adresse2, $facturation_adresse3, $facturation_cpostal, $facturation_ville, $facturation_tel, $facturation_pays, $livraison_raison, $livraison_entreprise, $livraison_nom, $livraison_prenom, $livraison_adresse1, $livraison_adresse2, $livraison_adresse3, $livraison_cpostal, $livraison_ville, $livraison_tel, $livraison_pays, $type_paiement, $type_transport, $fraisport, $remise, $client_selected, $ref_client, $email, \Panier $panier, $applyClientDiscount, $callMail, $callPayment) { $client = new Client(); if ($client_selected == 1) { $clientOK = $client->charger_ref($ref_client); } else { if ($email != '' && $client->charger_mail($email)) { $existeDeja = 1; } elseif ($email != '' && !filter_var($email, FILTER_VALIDATE_EMAIL)) { $badFormat = 1; } else { $client->email = $email; $client->raison = $facturation_raison; $client->entreprise = $facturation_entreprise; $client->prenom = $facturation_prenom; $client->nom = $facturation_nom; $client->adresse1 = $facturation_adresse1; $client->adresse2 = $facturation_adresse2; $client->adresse3 = $facturation_adresse3; $client->cpostal = $facturation_cpostal; $client->ville = $facturation_ville; $client->tel = $facturation_tel; $client->pays = $facturation_pays; $pass = genpass(8); $client->motdepasse = $pass; } } $facturationAddress = new Venteadr(); $facturationAddress->raison = $facturation_raison; $facturationAddress->entreprise = $facturation_entreprise; $facturationAddress->prenom = $facturation_prenom; $facturationAddress->nom = $facturation_nom; $facturationAddress->adresse1 = $facturation_adresse1; $facturationAddress->adresse2 = $facturation_adresse2; $facturationAddress->adresse3 = $facturation_adresse3; $facturationAddress->cpostal = $facturation_cpostal; $facturationAddress->ville = $facturation_ville; $facturationAddress->tel = $facturation_tel; $facturationAddress->pays = $facturation_pays; $livraisonAddress = new Venteadr(); $livraisonAddress->raison = $livraison_raison; $livraisonAddress->entreprise = $livraison_entreprise; $livraisonAddress->prenom = $livraison_prenom; $livraisonAddress->nom = $livraison_nom; $livraisonAddress->adresse1 = $livraison_adresse1; $livraisonAddress->adresse2 = $livraison_adresse2; $livraisonAddress->adresse3 = $livraison_adresse3; $livraisonAddress->cpostal = $livraison_cpostal; $livraisonAddress->ville = $livraison_ville; $livraisonAddress->tel = $livraison_tel; $livraisonAddress->pays = $livraison_pays; $order = new Commande(); $order->date = date("Y-m-d H:i:s"); $order->livraison = "L" . date("ymdHis") . strtoupper(ereg_caracspec(substr($client->prenom, 0, 3))); $order->transport = $type_transport; $order->paiement = $type_paiement; $order->statut = Commande::NONPAYE; $order->transaction = genid($order->id, 6); $module_paiement = new Modules(); $module_paiement->charger_id($type_paiement); if ($facturationAddress->raison != "" && $facturationAddress->prenom != "" && $facturationAddress->nom != "" && $facturationAddress->adresse1 != "" && $facturationAddress->cpostal != "" && $facturationAddress->ville != "" && $facturationAddress->pays != "" && $livraisonAddress->raison != "" && $livraisonAddress->prenom != "" && $livraisonAddress->nom != "" && $livraisonAddress->adresse1 != "" && $livraisonAddress->cpostal != "" && $livraisonAddress->ville != "" && $livraisonAddress->pays != "" && $order->transport != "" && is_numeric($fraisport) && $fraisport >= 0 && is_numeric($remise) && $remise >= 0 && $module_paiement->actif && $order->paiement != "" && $panier->nbart > 0 && ($clientOK || $client_selected != 1 && !$existeDeja && !$badFormat) && $email != '') { $facturationAddress->id = $facturationAddress->add(); $livraisonAddress->id = $livraisonAddress->add(); if (!$client->id) { $client->crypter(); $client->id = $client->add(); $client->ref = date("ymdHi") . genid($client->id, 6); $client->maj(); ClientAdmin::getInstance()->sendMailCreation($client, $pass); } $devise = ActionsDevises::instance()->get_devise_courante(); $order->adrfact = $facturationAddress->id; $order->adrlivr = $livraisonAddress->id; $order->client = $client->id; $order->devise = $devise->id; $order->taux = $devise->taux; $order->lang = ActionsLang::instance()->get_id_langue_courante(); $order->id = $order->add(); $order->ref = "C" . date("ymdHi") . genid($order->id, 6); $order->maj(); $total = 0; foreach ($panier->tabarticle as $pos => $article) { $venteprod = new Venteprod(); $dectexte = "\n"; $stock = new Stock(); foreach ($article->perso as $perso) { $declinaison = new Declinaison(); $declinaisondesc = new Declinaisondesc(); if (is_numeric($perso->valeur) && ActionsModules::instance()->instancier($module_paiement->nom)->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 (ActionsModules::instance()->instancier($module_paiement->nom)->defalqcmd) { $produit->stock -= $article->quantite; $produit->maj(); } $venteprod->quantite = $article->quantite; $venteprod->prixu = $article->produit->prix; $venteprod->ref = $article->produit->ref; $venteprod->titre = $article->produitdesc->titre . " " . $dectexte; $venteprod->chapo = $article->produitdesc->chapo; $venteprod->description = $article->produitdesc->description; $venteprod->tva = $article->produit->tva; $venteprod->commande = $order->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("apresVenteprodAdmin", $venteprod, $pos); $total += $venteprod->prixu * $venteprod->quantite; } foreach ($correspondanceParent as $id_panier => $id_venteprod) { if ($panier->tabarticle[$id_panier]->parent >= 0) { $venteprod->charger($id_venteprod); $venteprod->parent = $correspondanceParent[$panier->tabarticle[$id_panier]->parent]; $venteprod->maj(); } } if ($client->pourcentage > 0 && $applyClientDiscount) { $order->remise = $total * $client->pourcentage / 100; } $order->remise += $remise; if ($order->remise > $total) { $order->remise = $total; } $order->port = $fraisport; $order->maj(); ActionsModules::instance()->appel_module("aprescommandeadmin", $order); if ($callMail) { ActionsModules::instance()->instancier($module_paiement->nom)->mail($order); } if ($callPayment) { ActionsModules::instance()->instancier($module_paiement->nom)->paiement($order); } else { self::getInstance($order->id)->redirect(); } } else { if ($existeDeja) { throw new TheliaAdminException("error creating order", TheliaAdminException::EMAIL_ALREADY_EXISTS); } if ($badFormat) { throw new TheliaAdminException("error creating order", TheliaAdminException::EMAIL_FORMAT_ERROR); } else { throw new TheliaAdminException("error creating order", TheliaAdminException::ORDER_ADD_ERROR); } } }
<?php require_once "auth.php"; if (!est_autorise("acces_contenu")) { exit; } require_once __DIR__ . "/../fonctions/divers.php"; $request = Symfony\Component\HttpFoundation\Request::createFromGlobals(); if (false == ($lang = $request->get("lang", false))) { $lang = ActionsLang::instance()->get_id_langue_courante(); } if (false == ($tab = $request->get("tab", false))) { $tab = "generalDescriptionTab"; } $errorCode = 0; $errorMessage = ''; try { ActionsAdminFolder::getInstance()->action($request); } catch (TheliaAdminException $e) { $errorCode = $e->getCode(); $errorMessage = $e->getMessage(); } $dossier = new Dossier($request->query->get("id")); $dossierdesc = new Dossierdesc($dossier->id, $lang); // $dossierdesc->chapo = str_replace('<br />', "\n", $dossierdesc->chapo); // $dossierdesc->postscriptum = str_replace('<br />', "\n", $dossierdesc->postscriptum); ?> <!DOCTYPE html> <html lang="fr"> <head> <?php
function liste_produits($rubrique, $critere, $order, $alpha) { $produit = new Produit(); $produitdesc = new Produitdesc(); if ($alpha == "alpha") { $query = "select p.* from {$produit->table} p LEFT JOIN {$produitdesc->table} pd ON pd.produit = p.id and lang=" . ActionsLang::instance()->get_id_langue_courante() . " where p.rubrique=\"{$rubrique}\" order by pd.{$critere} {$order}"; } else { $query = "select * from {$produit->table} where rubrique=\"{$rubrique}\" order by {$critere} {$order}"; } $resul = $produit->query($query); $i = 0; while ($resul && ($row = $produit->fetch_object($resul))) { $produit->charger($row->ref); $produitdesc = new Produitdesc(); $produitdesc->charger($row->id); if (!$produitdesc->affichage_back_office_permis()) { continue; } $fond = "ligne_" . ($i++ % 2 ? "claire" : "fonce"); $image = new Image(); $query_image = "select * from {$image->table} where produit=\"" . $row->id . "\" order by classement limit 0,1"; $resul_image = $image->query($query_image); $row_image = $image->fetch_object($resul_image); ?> <ul class="<?php echo $fond; ?> "> <li><div class="vignette"><?php if ($row_image) { ?> <img src="../fonctions/redimlive.php?nomorig=<?php echo $row_image->fichier; ?> &type=produit&width=51&height=51&exact=1" title="<?php echo $produit->ref; ?> " /><?php } ?> </div></li> <li style="width:61px;"><span class="texte_noedit" title="<?php echo $row->ref; ?> "><?php echo substr($row->ref, 0, 9); if (strlen($row->ref) > 9) { echo " ..."; } ?> </span></li> <li style="width:225px;"><span id="titreprod_<?php echo $row->id; ?> " <?php if ($produitdesc->est_langue_courante()) { echo 'class="texte_edit"'; } ?> ><?php echo substr($produitdesc->titre, 0, 35); if (strlen($produitdesc->titre) > 35) { echo " ..."; } ?> </span></li> <li style="width:39px;"><span id="stock_<?php echo $row->id; ?> " class="texte_edit"><?php echo $row->stock; ?> </span></li> <li style="width:30px;"><span id="prix_<?php echo $row->id; ?> " class="texte_edit"><?php echo $row->prix; ?> </span></li> <li style="width:68px;"><span id="prix2_<?php echo $row->id; ?> " class="texte_edit"><?php echo $row->prix2; ?> </span></li> <li style="width:64px;"><input id="promo_<?php echo $row->id; ?> " type="checkbox" name="promo[]" class="sytle_checkbox" onchange="checkvalues('promo','<?php echo $row->id; ?> ')" <?php if ($row->promo) { ?> checked="checked" <?php } ?> /></li> <li style="width:64px;"><input type="checkbox" id="nouveaute_<?php echo $row->id; ?> " name="nouveaute[]" class="sytle_checkbox" onchange="checkvalues('nouveaute','<?php echo $row->id; ?> ')" <?php if ($row->nouveaute) { ?> checked="checked" <?php } ?> /></li> <li style="width:53px;"><input type="checkbox" id="prod_ligne_<?php echo $row->id; ?> " name="ligne[]" class="sytle_checkbox" onchange="checkvalues('ligneprod','<?php echo $row->id; ?> ')" <?php if ($row->ligne) { ?> checked="checked" <?php } ?> /></li> <li style="width:41px;"><a href="produit_modifier.php?ref=<?php echo $produit->ref; ?> &rubrique=<?php echo $produit->rubrique; ?> " class="txt_vert_11"><?php echo trad('editer', 'admin'); ?> </a></li> <li style="width:78px; text-align:center;"> <div class="bloc_classement"> <div class="classement"> <a href="produit_modifier.php?ref=<?php echo $produit->id; ?> &action=modclassement&parent=<?php echo $rubrique; ?> &type=M"><img src="gfx/up.gif" border="0" /></a> </div> <div class="classement"><span id="classementprod_<?php echo $produit->id; ?> " class="classement_edit"><?php echo $row->classement; ?> </span></div> <div class="classement"> <a href="produit_modifier.php?ref=<?php echo $produit->id; ?> &action=modclassement&parent=<?php echo $rubrique; ?> &type=D"><img src="gfx/dn.gif" border="0" /></a> </div> </div> </li> <li style="width:37px; text-align:center;"><a href="javascript:supprimer_produit('<?php echo $produit->ref; ?> ','<?php echo $rubrique; ?> ')"><img src="gfx/supprimer.gif" width="9" height="9" border="0" /></a></li> </ul> <?php } }
function boucleDeclidisp($texte, $args) { global $declidisp; $declinaison = lireTag($args, "declinaison", "int"); $id = lireTag($args, "id", "int"); $produit = lireTag($args, "produit", "int"); $classement = lireTag($args, "classement", "string"); $stockmini = lireTag($args, "stockmini", "int"); $courante = lireTag($args, "courante", "int"); $num = lireTag($args, "num", "int"); $search = ""; $limit = ""; $res = ""; $tdeclidisp = new Declidisp(); $tdeclidispdesc = new Declidispdesc(); // preparation de la requete if ($declinaison != "") { $search .= " and {$tdeclidisp->table}.declinaison=\"{$declinaison}\""; } if ($id != "") { $search .= " and {$tdeclidisp->table}.id=\"{$id}\""; } if ($classement == "alpha") { $order = "order by {$tdeclidispdesc->table}.titre"; } else { if ($classement == "alphainv") { $order = "order by {$tdeclidispdesc->table}.titre desc"; } else { if ($classement == "manuel") { $order = "order by {$tdeclidispdesc->table}.classement"; } } } if (ActionsLang::instance()->get_action_si_trad_absente() == ActionsLang::UTILISER_LANGUE_INDIQUEE) { // On retourne uniquement les declidisp traduites $search .= " and {$tdeclidispdesc->table}.id is not null"; } if ($stockmini != "" && $produit != "") { $stock = new Stock(); $stock_join = "inner join {$stock->table} on {$stock->table}.produit={$produit} and {$stock->table}.declidisp = declidisp.id"; $search .= " and {$stock->table}.valeur >= {$stockmini}"; } if ($num != "") { $limit = " limit {$num}"; } $query = "\n\t\t\tselect {$tdeclidisp->table}.* from {$tdeclidisp->table}\n\t\t\t{$stock_join}\n\t\t\tleft join {$tdeclidispdesc->table} on {$tdeclidispdesc->table}.declidisp = {$tdeclidisp->table}.id and {$tdeclidispdesc->table}.lang = " . ActionsLang::instance()->get_id_langue_courante() . "\n\t\t\twhere 1 {$search}\n\t\t\t{$order}\n\t\t\t{$limit}\n\t\t"; $resul = CacheBase::getCache()->query($query); if (!empty($resul)) { $exdecprod = new Exdecprod(); foreach ($resul as $row) { if ($courante == "1" && $row->id . "-" != $declidisp) { continue; } else { if ($courante == "0" && $row->id . "-" == $declidisp) { continue; } } if ($produit != "" && $exdecprod->charger($produit, $row->id)) { continue; } $tdeclidispdesc = new Declidispdesc($row->id); $temp = str_replace("#ID", $tdeclidispdesc->declidisp, $texte); $temp = str_replace("#DECLINAISON", $row->declinaison, $temp); $temp = str_replace("#TITRE", "{$tdeclidispdesc->titre}", $temp); $temp = str_replace("#PRODUIT", "{$produit}", $temp); $res .= $temp; } } return $res; }
} ?> /></td></tr> <tr class="fonce"> <td class="designation"><?php echo trad('Civilite', 'admin'); ?> <span class="erreur_crea_client"><?php if ($erreurraison) { echo trad('Obligatoire', 'admin'); } ?> </span></td> <td> <?php $q = "SELECT * FROM " . Raisondesc::TABLE . " WHERE lang=" . ActionsLang::instance()->get_id_langue_courante(); $r = mysql_query($q); while ($r && ($a = mysql_fetch_object($r))) { ?> <input name="raison" type="radio" class="form" value="<?php echo $a->raison; ?> " <?php if (isset($raison) && $raison == $a->raison) { echo "checked"; } ?> /> <?php echo $a->court; }
<?php if (strstr($_SERVER['PHP_SELF'], "/admin/")) { header("Location: changerep.php"); exit; } require_once __DIR__ . "/../fonctions/error_reporting.php"; require_once __DIR__ . "/autoload.php"; ActionsLang::instance()->set_mode_backoffice(true); Tlog::mode_back_office(true); require_once __DIR__ . "/../fonctions/divers.php"; foreach ($_REQUEST as $key => $value) { ${$key} = $value; } if (!ini_get("date.timezone")) { date_default_timezone_set("Europe/Paris"); Tlog::error("Timezone not set, set to Europe/Paris for no errors"); } setlocale(LC_TIME, 'fr_FR.utf8', 'fr_FR'); setlocale(LC_NUMERIC, 'en_US.utf8', 'en_US');
public function subSendMailCreation($corps, $client, $password) { $raisondesc = new Raisondesc($client->raison, ActionsLang::instance()->get_id_langue_courante()); $paysdesc = new Paysdesc(); $paysdesc->charger($client->pays); $corps = str_replace("__NOMSITE__", Variable::lire("nomsite"), $corps); $corps = str_replace("__EMAIL__", $client->email, $corps); $corps = str_replace("__MOTDEPASSE__", $password, $corps); $corps = str_replace("__URLSITE__", Variable::lire("urlsite"), $corps); $corps = str_replace("__NOM__", $client->nom, $corps); $corps = str_replace("__PRENOM__", $client->prenom, $corps); $corps = str_replace("__ADRESSE1__", $client->adresse1, $corps); $corps = str_replace("__ADRESSE2__", $client->adresse2, $corps); $corps = str_replace("__ADRESSE3__", $client->adresse3, $corps); $corps = str_replace("__VILLE__", $client->ville, $corps); $corps = str_replace("__CPOSTAL__", $client->cpostal, $corps); $corps = str_replace("__TELEPHONE__", $client->telfixe, $corps); $corps = str_replace("__CIVILITE__", $raisondesc->court, $corps); $corps = str_replace("__PAYS__", $paysdesc->titre, $corps); return $corps; }
} // on supprime index.php s'il est présent (duplicate content) if (strstr($_SERVER['REQUEST_URI'], "index.php") && $_SERVER['REQUEST_METHOD'] == "GET") { $redir_url = urlfond(); if (!empty($_SERVER['QUERY_STRING'])) { $redir_url .= "?" . $_SERVER['QUERY_STRING']; } header("HTTP/1.1 301 Moved Permanently"); redirige($redir_url); } // URL précédente if (isset($_SERVER['HTTP_REFERER'])) { $_SESSION["navig"]->urlprec = $_SERVER['HTTP_REFERER']; } // Langue ActionsLang::instance()->set_id_langue_courante($lang); // Devise ActionsDevises::instance()->set_id_devise_courante($devise); // fonctions à éxecuter avant le moteur ActionsModules::instance()->appel_module("demarrage"); // Actions switch ($action) { case 'ajouter': ajouter($ref, $quantite, $append, $nouveau, $parent); break; case 'supprimer': supprimer($article); break; case 'modifier': modifier($article, $quantite); break;
public function getList($parent, $critere, $order, $alpha) { $return = array(); $rubriquedesc = new Rubriquedesc(); if ($alpha == "alpha") { $query = "select r.id, r.ligne, r.classement from " . Rubrique::TABLE . " r LEFT JOIN " . Rubriquedesc::TABLE . " rd ON rd.rubrique=r.id and lang=" . ActionsLang::instance()->get_id_langue_courante() . " where r.parent=\"{$parent}\" order by rd.{$critere} {$order}"; } else { $query = "select id, ligne, classement from " . Rubrique::TABLE . " where parent=\"{$parent}\" order by {$critere} {$order}"; } $resul = $this->query($query); $i = 0; while ($resul && ($row = $this->fetch_object($resul))) { $rubriquedesc = new Rubriquedesc(); $rubriquedesc->charger($row->id); if (!$rubriquedesc->affichage_back_office_permis()) { continue; } $return[] = array("id" => $row->id, "ligne" => $row->ligne, "classement" => $row->classement, "titre" => $rubriquedesc->titre, "langue_courante" => $rubriquedesc->est_langue_courante(), "parent" => $parent); } return $return; }
public function create($formulation, $name, $description) { $this->checkFormulation($formulation); $this->nom = $formulation; $this->id = $this->add(); $profileDesc = new Profildesc(); $profileDesc->profil = $this->id; $profileDesc->titre = $name; $profileDesc->description = $description; $profileDesc->lang = ActionsLang::instance()->get_id_langue_courante(); $profileDesc->id = $profileDesc->add(); redirige("droits.php?profil=" . $this->id); }
/** * Charge une description, dans la langue demandée, dans la langue courante, ou dans la langue par défaut. * Dans le cobntexte du back office, on charge toujours la langue demandé, même si celle-ci n'existe pas. * * @param int $fkey l'identifiant de l'objet associé (foreign key) * @param int $lang l'ID de la languie demandée. Si false, la langue courante sera utilisée * @param string $colonne la colonne de la table 'desc' à utiliser pour la recherche. Si false, c'est celle passée au constructeur qui est utilisée. * @param int $traiter_trad_vide indique comment traiter le cas d'une traduction absente, cf les constantes définies * @return 0 si la trdunction n' pas pu être chargée, 1 sinon. */ public function charger_desc($fkey, $lang = false, $colonne = false, $traiter_trad_vide = self::TRAITER_TRAD_VIDE) { // Aucune colonne indiquée ? utiliser celle de base if ($colonne === false) { $colonne = $this->colonne; } // Dans le back office, on force le chargement de la langue demandée. if (ActionsLang::instance()->est_mode_backoffice() && $lang !== false) { $traiter_trad_vide = self::NE_PAS_TRAITER_TRAD_VIDE; } // La langue n'est pas définie ? if ($lang === false) { // Utiliser la langue courante $lang = ActionsLang::instance()->get_id_langue_courante(); } $res = $this->getVars($this->get_charger_sql($fkey, $lang, $colonne)); // La traduction n'est pas dispo ? if ($traiter_trad_vide == self::TRAITER_TRAD_VIDE && $res == 0) { switch (ActionsLang::instance()->get_action_si_trad_absente()) { case ActionsLang::UTILISER_LANGUE_PAR_DEFAUT: // Charger la description dans la langue par defaut $res = $this->getVars($this->get_charger_sql($fkey, ActionsLang::instance()->get_id_langue_defaut(), $colonne)); break; case ActionsLang::UTILISER_LANGUE_INDIQUEE: // ne rien à faire break; } } return $res; }
<td> <input type="text" value="<?php echo $addError ? $ville : ''; ?> " name="ville" /> </td> </tr> <tr> <td><?php echo trad('Pays', 'admin'); ?> </td> <td> <select name="pays" > <?php $qListCountries = "SELECT * FROM " . Paysdesc::TABLE . " WHERE lang=" . ActionsLang::instance()->get_id_langue_courante(); $rListCountries = $paysdesc->query($qListCountries); while ($rListCountries && ($theCountry = $paysdesc->fetch_object($rListCountries, 'Paysdesc'))) { ?> <option value="<?php echo $theCountry->pays; ?> " <?php if ($addError && $pays == $theCountry->pays) { ?> selected="selected"<?php } ?> > <?php echo $theCountry->titre;
public function getVariants($id = 0) { if ($id) { $this->charger_id($id); } if (!$this->id) { return 0; } $q = "SELECT dd.declinaison AS declinaison_id, dd.id AS declidisp_id, ddd.titre AS declidisp_titre, d.titre AS declinaison_titre, s.valeur AS declidisp_stock, s.surplus AS declidisp_surplus\n FROM " . Stock::TABLE . " s\n LEFT JOIN " . Declidisp::TABLE . " dd\n ON dd.id=s.declidisp\n LEFT JOIN " . Declidispdesc::TABLE . " ddd\n ON ddd.declidisp=dd.id AND ddd.lang='" . ActionsLang::instance()->get_id_langue_courante() . "'\n LEFT JOIN " . Declinaisondesc::TABLE . " d\n ON d.declinaison=dd.declinaison AND ddd.lang='" . ActionsLang::instance()->get_id_langue_courante() . "'\n LEFT JOIN " . Exdecprod::TABLE . " edp\n ON edp.produit='{$this->id}' AND edp.declidisp=dd.id\n LEFT JOIN " . Rubdeclinaison::TABLE . " rd\n ON rd.rubrique='{$this->rubrique}' AND rd.declinaison=dd.declinaison\n WHERE s.produit='{$this->id}' AND ISNULL(edp.id) AND NOT ISNULL(rd.id)"; $r = $this->query($q); if ($this->num_rows($r) == 0) { return $this->stock; } $retour = array(); while ($r && ($a = $this->fetch_object($r))) { if (!$retour[$a->declinaison_id] || count($retour[$a->declinaison_id]) == 0) { $retour[$a->declinaison_id] = array('titre' => $a->declinaison_titre, 'declinaisons' => array(array("declidisp_id" => $a->declidisp_id, "declidisp_titre" => $a->declidisp_titre, "declidisp_stock" => $a->declidisp_stock, "declidisp_surplus" => $a->declidisp_surplus))); } else { $retour[$a->declinaison_id]['declinaisons'][] = array("declidisp_id" => $a->declidisp_id, "declidisp_titre" => $a->declidisp_titre, "declidisp_stock" => $a->declidisp_stock, "declidisp_surplus" => $a->declidisp_surplus); } } return $retour; }