[SI-LINDER-PARTNER-2][OSC] - Refonte du site Internet pour supporter le Responsive Design /* ATTENTION - le design du site ne peut pas être passé en doctype html (html 5) dans la révision 1 du design. bien qu'une révision 2 sera instanciée plus tard (l'année prochaine), il faudra se contenter de nombreux workaround en restant en HTML TRANSITIONAL 4.01 Du fait du nombre massif des éléments DE CETTE PAGE (et de ce qui en découlerait) qui seront à revoir pour transformer le design en design responsive.. .. il est alors plus judicieux de globaliser un TAG unique pour cette tâche pour ne pas alourdir de commentaires le code déjà suffisemment alourdi comme cela! En gros, ici, pour cette méga-tâche, je vais utiliser un format maison de commentaires pour cette tâche précise: --> pour en comprendre les méandres, voir le fichier /[!] - Saphyra-Interactive-TaskList-Explanations/[SI-LINDER-PARTNER-2][OSC]--semantic.php */ // <- [SI-LINDER-PARTNER-2][OSC] - Refonte du site Internet pour supporter le Responsive Design ?> TWG : photo galery // <- OSC-41 : Retrait du bloc Concours et de sa Page Spéciale /* * -- Requête SQL qui qui contacte la base de données pour connaître le texte (titre/entête) des pages spéciales -- * si le page_id possède l'ID 8, il s'agit donc de la page Concours, et on n'en veux plus, alors: * on demande à SQL d'exclure de la recherche SQL, l'ID si il est égal à 8. (p.pages_id != '8'") * */ $page_query = tep_db_query("select p.pages_id, p.status, p.page_type, s.pages_title, s.pages_html_text from " . TABLE_PAGES . " p LEFT JOIN " .TABLE_PAGES_DESCRIPTION . " s on p.pages_id = s.pages_id where s.language_id = '" . (int)$languages_id . "' and p.pages_id = $infopageid and p.pages_id != '8'"); // -> OSC-41 : Retrait du bloc Concours et de sa Page Spéciale // <- TWG $page_check = tep_db_fetch_array($page_query); // <- OSC-41 : Retrait du bloc Concours et de sa Page Spéciale // correction d'un bug logique: la page ciblée par osCommerce n'était pas la bonne. $breadcrumb->add($page_check[pages_title], tep_href_link('extra_info_pages.php?pages_id=' . $infopageid)); // -> OSC-41 : Retrait du bloc Concours et de sa Page Spéciale ?> > <?php echo TITLE; ?> [SI-LINDER-PARTNER-2][OSC][MultiTaskDescriptions]:{ - 1/ on déclare une petite variable, sous forme de tableau associatif, ce tableau servira à identifier la page (au lieu d'utiliser PHP_SELF etc..) et cette identification servira dans le nouveau fichier d'inclusion de design dynamique inclu en [2] c'est tout simple ! - 2/ inclusion du fichier PHP chargeur du design, ce sera à ce fichier inclu de décider quels assets (scripts, feuilles de styles, autres) charger! } */ ?> [SI-LINDER-PARTNER-2][OSC][SubTaskDescription]::BEGIN // [RESPONSIVE_DESIGN_2020_IMPLEMENTATION_CARDBOARD_2020_SAPHYRA_INTERACTIVE_ETAPE_1] $_SI__NewDesign = array( 'pageFilepath' => '/extra_info_pages.php' ); // ([1])-->[SI-LINDER-PARTNER-2][OSC][SubTaskDescription]::END // ([2])-->BEGIN[SI-LINDER-PARTNER-2][OSC][SubTaskDescription]::END require_once('--SI--2020DesignInitializer.php'); /* [SI-LINDER-PARTNER-2][OSC][MultiTaskDescriptions] ************************************************************************/ ?> [SI-LINDER-PARTNER-2][OSC][AddClassDescription(isPage--CommunityExtraInfoPages isResponsive--Main)]:{" ATTENTION (ne pas oublier cette ligne!) servira à cibler cette page précise dans un sélecteur css.. // [RESPONSIVE_DESIGN_2020_IMPLEMENTATION_CARDBOARD_2020_SAPHYRA_INTERACTIVE_ETAPE_2] "} ?> [SI-LINDER-PARTNER-2][OSC][SimpleTaskDescription]:{" on modifie la taille de cette cellule, qui est celle de gauche (avant) gérée via la constante PHP BOX_WIDTH de OSCommerce, (désormais), gérée par une valeur en dur, pourquoi? (1) la valeur initiale est gérée par une constante PHP, mais sa valeur... est aussi la modificatrice de la cellule de droite.. Ce qui pose problème quand on veut juste modifier celle de gauche et ne pas intervenir sur celle de droite, donc, ici, on modifie le echo BOX_WIDTH par une valeur fixée plus souple et enfin, on ajoute une classe pour pouvoir cibler cette cellule de tableau afin de la masquer en responsive ou autres ! // [RESPONSIVE_DESIGN_2020_IMPLEMENTATION_CARDBOARD_2020_SAPHYRA_INTERACTIVE_ETAPE_3] "} ?> [SI-LINDER-PARTNER-2][OSC][SimpleTaskDescription]:{" on ajoute une classe pour pouvoir cibler cette cellule de tableau afin de la masquer en responsive ou autres ! // [RESPONSIVE_DESIGN_2020_IMPLEMENTATION_CARDBOARD_2020_SAPHYRA_INTERACTIVE_ETAPE_4] "} ?>
[SI-LINDER-PARTNER-2][OSC][MultiTaskDescriptions]:{ - 1/ on va ajouter un tas de petites modifications, des classes, des styles, et peut-être du comportement à différents éléments de ce tableau à noter que ce tableau contient le contenu visuel de la page. - 2/ on ajoute une petite classe css ici, afin de styliser cette cellule de contenu - 3/ si la variable est vide on affiche un texte générique comme quoi la page spéciale n'existe pas, et on restructure un peu le code - 4/ on supprime par un display: none la colonne du pixel_trans - 5/ ici on va faire différentes choses déjà on créé une variable référenceurs dans cette variable, sous forme de tableau php, on ajoute un index identique au nom des constantes utilisées dans cette partie (afin de pouvoir répliquer le texte de la constante pour le modifier, sinon on ne pourrait pas) à l'aide d'un petit remplacement, on ajoutes des classes UI-Kit à l'élément de lien afin de lui donner plus de style NOTE on utilise str_replace() ATTENTION str_replace() se révèle problématique dans le cas des balises commençant par ' qui affichera un message générique en commentaire HTML comme quoi la galerie d'image ne peut pas fonctionner en affichage responsive, et que nous y travaillons: 'Gestionnaire de la galerie d\'image en cours de refonte pour un affichage mobile que vous apprécierez mieux.' en troisième, on revoit un peu la structure du code... - 8/ comme expliqué dans les commentaires (et la réalisation du système) dans ce même fichier (VOIR CODETAG[COMMENTS_OVERRIDE_EXTRA_INFOS_PAGES_TEXTS]) on va prévoir d'utiliser un texte de contenu différent selon la valeur actuelle du numéro de page ($infopageid) tout le système a été développé (VOIR CODETAG[SYSTEM_OVERRIDE_EXTRA_INFOS_PAGES_TEXTS]) mais on doit aussi l'adapter ici, et donc, c'est ce qu'on va faire - 9/ on se sert de notre nouveau tableau de références patchées qu'on a initialisé aussi ce fichier pour demander à cette condition de vérifier si on a cette $infopageid à l'intérieur du tableau vérifié le tableau vérifié n'est autre que le tableau d'index de vérification défini ici (VOIR CODETAG[SYSTEM_OVERRIDE_EXTRA_INFOS_PAGES_TEXTS] cette vérification à lidentique s'effectue AUSSI ailleurs, dans ce même fichier, mais pour le texte de TITRE (VOIR CODETAG[OVERRIDE_EXTRA_INFOS_PAGES_VARIABLE_PAGE_CHECK_CONDITIONS_TITLE]) - 10/ comme expliqué beaucoup mieux là-bas (VOIR CODETAG[COMMENTS_OVERRIDE_EXTRA_INFOS_PAGES_TEXTS]) le client souhaite que si l'id de page ($infopageid) est celui de "À propos", alors, on affiche un texte de contenu spécifique au lieu de charger un texte de contenu depuis la base de données que le texte de contenu existe ou non dans une page coincidant avec le $infopageid on le réécrit entièrement - 11/ comme expliqué beaucoup mieux là-bas (VOIR CODETAG[COMMENTS_OVERRIDE_EXTRA_INFOS_PAGES_TEXTS]) le client souhaite que si l'id de page ($infopageid) est celui de "Mentions légales", alors, on affiche un texte de contenu spécifique au lieu de charger un texte de contenu depuis la base de données que le texte de contenu existe ou non dans une page coincidant avec le $infopageid on le réécrit entièrement - 12/ comme expliqué beaucoup mieux là-bas (VOIR CODETAG[COMMENTS_OVERRIDE_EXTRA_INFOS_PAGES_TEXTS]) le client souhaite que si l'id de page ($infopageid) est celui de "Foire aux questions", alors, on affiche un texte de contenu spécifique au lieu de charger un texte de contenu depuis la base de données que le texte de contenu existe ou non dans une page coincidant avec le $infopageid on le réécrit entièrement - 13/ comme expliqué beaucoup mieux là-bas (VOIR CODETAG[COMMENTS_OVERRIDE_EXTRA_INFOS_PAGES_TEXTS]) le client souhaite que si l'id de page ($infopageid) est celui de "Retours produit", alors, on affiche un texte de contenu spécifique au lieu de charger un texte de contenu depuis la base de données que le texte de contenu existe ou non dans une page coincidant avec le $infopageid on le réécrit entièrement - 14/ parfois, un texte de contenu est présent dans la base de données et précédera néanmoins notre propre texte de contenu (mais ne l'empêchera pas), il s'ajoutera juste avant.. de fait, on va ajouter une petite condition de sécurisation pour empêcher une possible pré-inscription de texte de contenu AVANT le texte de contenu réécrit. - 15/ cette mesure permet maintenant de pouvoir éviter que la règle CSS contenue dans le mainStyleSheets, ne fasse un conflit (comme expliqué dans le commentaire ici (VOIR CODETAG[COMMENTS_OVERRIDE_EXTRA_INFOS_PAGES_CSS_MAINSTYLESHEETS])) son déroulement logique est très simple: dans le code CSS de mainStyleSheets, on a à un moment un truc du genre: body.isResponsive--Main.isPage--CommunityExtraInfoPages td.--pageCommunityExtraInfoPagesMainCellTextContainer, body.isResponsive--Main.isPage--CommunityExtraInfoPages td.--pageCommunityExtraInfoPagesMainCellTextContainer * { / * spécifiquement, ici, on stylise une cellule centrale de texte de la page * / font-family: "WebFont Noto-Sans Extralight", sans-serif !important; line-height: 30px; font-size: 1em; } ce code de mise en forme CSS est puissant contre des pages spéciales d'informations rédigées depuis l'administration et affichées comme telles (tellement la version du FCKeditor installé dans la'administration POURRIT littérrallement le code HTML avec une ignominie sans nom: déjà FCKeditor utilise des balises (qui sont absolument INCIBLABLES en CSS) et donc sont affreusement difficiles à intercepter ensuite, il se peut même qu'il créé des conneries égales à ça: N.... bref, une horreur à vomir des pixels au lieu de ça: N.... ) ainsi, la règle de * { permet d'intercepter TOUTES LES BALISES, PEU IMPORTE LEUR NOM dans le conteneur principal de texte (cellule de tableau: td.--pageCommunityExtraInfoPagesMainCellTextContainer) créé à cet effet PROBLÈME: certains navigateurs web ont du mal avec la négation de ce genre de code CSS et sont alors incapable de gérer le ':not()' ce qui nous amène, on a quelques soucis à styliser nous-même dans CE fichier php du code HTML structuré capable de lire du styles CSS (en DUR: inline) car au final, le * { sera quand même priorisé par le navigateur et appliqué.. SOLUTION: on utilise alors l'index du tableau défini là-bas: (VOIR CODETAG[COMMENTS_OVERRIDE_EXTRA_INFOS_PAGES_CSS_MAINSTYLESHEETS]) pour vérifier si OUI ou NON on veut utiliser notre code CSS de mainStyleSheets ou au contraire si on préfère styliser un code CSS structuré en DUR (code CSS inline).. si c'est true, on ajoute une classe CSS au tableau td.--pageCommunityExtraInfoPagesMainCellTextContainer servant à créér une exception pour la règle CSS que finalement on va modifier en: body.isResponsive--Main.isPage--CommunityExtraInfoPages td.--pageCommunityExtraInfoPagesMainCellTextContainer:not(.--disallowCSSForcedStyles), body.isResponsive--Main.isPage--CommunityExtraInfoPages td.--pageCommunityExtraInfoPagesMainCellTextContainer:not(.--disallowCSSForcedStyles) * { ... } de cette manière, quand la cellule de tableau ici td.--pageCommunityExtraInfoPagesMainCellTextContainer contient la classe d'exception --disallowCSSForcedStyles on n'utilisera et n'appliquera PAS les directives inclues dans notre déclaration * { la classe CSS modifiée est située ici: (VOIR fichier: /design/ResponsiveOverrides/si_css-ro-_mainStylesheet.css, CODETAG[PREVENT_FORCING_EXTRA_INFOS_PAGES_CSS_MAINSTYLESHEETS]) si c'est false, on ne fait rien de plus [VTAB-TEAM-LINDER-PARTNER-1][OSC][MultiTaskDescriptions] - Revue de la charte Graphique: - 1/ on retire le saut de ligne HTML (
) à cet endroit } */ ?> [SI-LINDER-PARTNER-2][OSC][SubTaskDescription]::BEGIN ?> BEGIN[SI-LINDER-PARTNER-2][OSC][SubTaskDescription]::END ?>
BEGIN[SI-LINDER-PARTNER-2][OSC][SubTaskDescription]::END ?> BEGIN[SI-LINDER-PARTNER-2][OSC][SubTaskDescription]::END // [OVERRIDE_EXTRA_INFOS_PAGES_HAVEITSOWN_CSS_STYLES] ?> BEGIN[SI-LINDER-PARTNER-2][OSC][SubTaskDescription]::END ?> [SI-LINDER-PARTNER-2][OSC][SubTaskDescription]::BEGIN ?> TWG : photo galery ?> '; $use_this_twg_album = "concours"; include('gallery/index.php'); echo ''; echo ''; echo ''; echo ''; } ?> 0000017: ajout de la box magasin ?> '; $use_this_twg_album = "magasin"; include('gallery/index.php'); echo ''; echo ''; echo ''; echo ''; } ?> [SI-LINDER-PARTNER-2][OSC][SubTaskDescription]::END ?> [SI-LINDER-PARTNER-2][OSC][SubTaskDescription]::END /* [SI-LINDER-PARTNER-2][OSC][MultiTaskDescriptions] ************************************************************************ */ ?>
[SI-LINDER-PARTNER-2][OSC][MultiTaskDescriptions]:{ - 1/ petits changements sur la structure et sur le texte sert uniquement à restyliser l'élément pour le centrer par exemple et le re-marger - 2/ ATTENTION - // [COMMENTS_OVERRIDE_EXTRA_INFOS_PAGES_TEXTS] en 2021, le client a voulu un petit changement dans la logique de fonctionnement des pages spéciales d'informations: ce fichier les gère sa logique initiale est simple: depuis l'outil "Pages d'informations" situé dans l'administration, on accède à un éditeur pour ajouter/supprimer/modifier des pages d'informations l'édition de ces pages se fait donc depuis la zone administrative et la valeur inscrite côté administrative se reflète ici en l'extrayant de la base de données on va un peu bouleverser cette logique, sur demande du client on prévoit la possibilité de dynamiquement outrepasser (overrider) la valeur du texte de titre ET/OU du texte de contenu affiché par le $infopageid reçu en paramètre $_GET['pages_id'] le texte de titre est défini ici: (VOIR CODETAG[OVERRIDE_EXTRA_INFOS_PAGES_VARIABLE_PAGE_CHECK_TITLE]) le texte de contenu est défini ici: (VOIR CODETAG[OVERRIDE_EXTRA_INFOS_PAGES_VARIABLE_PAGE_CHECK_CONTENT]) // COMMENTS_OVERRIDE_EXTRA_INFOS_PAGES_CSS_MAINSTYLESHEETS on prévoit aussi pour le texte du contenu d'avoir la possibilité d'outrepasser le style CSS principal comme défini dans le mainStyleSheets on va donc entièrement revoir la structure de la simple condition d'origine, et lui ajouter un paquet de nouvelles actions à efectuer, avant et pendant le déroulement de la condition - 3/ toujours en rapport avec l'étape [2], on va maintenant initialiser un tableau de références patchées qui sera valorisé correctement au travers du passage dans une condition switch cela sera très simple.. ça va contenir trois index, le premier sera un index qui listera TOUTES les pages spéciales d'informations (extra_info_pages: $infopageid) qui ont besoin d'êtres outrepassées (overridées) cet index servira comme vérification, si on doit intercepter une nouvelle page spéciale d'information (extra_info_pages: $infopageid), il faudra ICI y ajouter la valeur de son numéro de page la valeur de son numéro de page est référencée par la récupération dans le paramètre $_GET['pages_id'] le deuxième sera un index qui servira à savoir l'identifiant de pages spéciales d'informations (extra_info_pages: $infopageid) en se servant de son paramètre $infopageid // COMMENTS_OVERRIDE_EXTRA_INFOS_PAGES_CSS_MAINSTYLESHEETS le troisième contiendra éventuellement (optionnel) un nom de classe CSS pour empêcher les styles globaux dans le mainStyleSheets d'agir comme modificateur de forcing ceci n'est à renseigner que si l'on souhaite forcer un style précis en statique, et non dans un fichier css ceci est nécéssaire car négativer une wildcard en CSS ne fonctionne pas dans tout les navigateurs web, donc *:not(.elementCSS) ne fonctionnerait pas et le style serait alors forcé par cette règle il s'agit d'un interrupteur true/false si c'est true: on ne demande pas à la règle CSS d'intervenir et au contraire, on utilise nos propres styles en DUR! si c'est false: on laisse la règle CSS intervenir et styliser le texte! cet interrupteur ne servira pas ici mais là: (VOIR CODETAG[OVERRIDE_EXTRA_INFOS_PAGES_HAVEITSOWN_CSS_STYLES]) - 4/ on se sert de notre nouveau tableau de références patchées qu'on a initialisé en [3] pour demander à cette condition de vérifier si on a cette $infopageid à l'intérieur du tableau vérifié le tableau vérifié n'est autre que le tableau d'index de vérification défini en [3] cette vérification s'effectuera AUSSI ailleurs, dans ce même fichier, mais pour le texte de CONTENU (VOIR CODETAG[OVERRIDE_EXTRA_INFOS_PAGES_VARIABLE_PAGE_CHECK_CONDITIONS_CONTENT]) - 5/ voilà le switch qui va effectuer la totalité des vérifications sur le contenu de la variable définissant la page actuelle ($infopageid) NOTE - il faut évidemment renseigner son ID ($infopageid) dans le tableau en [3], index 0 NOTE - il faut évidemment renseigner son ID ($infopageid) dans le switch en [5] - 6/ on va prévoir un affichage par défaut, qui respectera, pour lui, en revanche, la logique de comment a été développé à l'origine ce fichier - 7/ ici on va intercepter l'id de page ($infopageid) si celui-ci est égal à la page qu'on souhaite reformater en "À propos" son chiffre est défini dans la case switch peu importe si la page existe ou non, ici son texte de TITRE sera réécrite intégralement si la page existe : sa valeur inscrite en zone administrative ne sera pas utilisée et une valeur en DUR (dans ce fichier) sera utilisée à la place si la page n'existe pas : sa valeur n'existant pas en zone administrative, on doit en inscrire une en DUR (dans ce fichier) et l'utiliser une fois intercepté le numéro de page, on va: afficher un texte de titre spécifique au lieu de charger un texte de titre depuis la base de données paramétrer comme quoi la page d'information ne doit pas outrepasser le style visuel par défaut comme paramétré dans le mainStyleSheets et c'est tout - 8/ ici on va intercepter l'id de page ($infopageid) si celui-ci est égal à la page qu'on souhaite reformater en "Mentions Légales" son chiffre est défini dans la case switch peu importe si la page existe ou non, ici son texte de TITRE sera réécrite intégralement si la page existe : sa valeur inscrite en zone administrative ne sera pas utilisée et une valeur en DUR (dans ce fichier) sera utilisée à la place si la page n'existe pas : sa valeur n'existant pas en zone administrative, on doit en inscrire une en DUR (dans ce fichier) et l'utiliser une fois intercepté le numéro de page, on va: afficher un texte de titre spécifique au lieu de charger un texte de titre depuis la base de données paramétrer comme quoi la page d'information doit vraiment outrepasser le style visuel par défaut et ne pas utiliser celui paramétré dans le mainStyleSheets et c'est tout - 9/ ici on va intercepter l'id de page ($infopageid) si celui-ci est égal à la page qu'on souhaite reformater en "Foire aux questions" son chiffre est défini dans la case switch peu importe si la page existe ou non, ici son texte de TITRE sera réécrite intégralement si la page existe : sa valeur inscrite en zone administrative ne sera pas utilisée et une valeur en DUR (dans ce fichier) sera utilisée à la place si la page n'existe pas : sa valeur n'existant pas en zone administrative, on doit en inscrire une en DUR (dans ce fichier) et l'utiliser une fois intercepté le numéro de page, on va: afficher un texte de titre spécifique au lieu de charger un texte de titre depuis la base de données paramétrer comme quoi la page d'information doit vraiment outrepasser le style visuel par défaut et ne pas utiliser celui paramétré dans le mainStyleSheets et c'est tout - 10/ ici on va intercepter l'id de page ($infopageid) si celui-ci est égal à la page qu'on souhaite reformater en "Retours produit" son chiffre est défini dans la case switch peu importe si la page existe ou non, ici son texte de TITRE sera réécrite intégralement si la page existe : sa valeur inscrite en zone administrative ne sera pas utilisée et une valeur en DUR (dans ce fichier) sera utilisée à la place si la page n'existe pas : sa valeur n'existant pas en zone administrative, on doit en inscrire une en DUR (dans ce fichier) et l'utiliser une fois intercepté le numéro de page, on va: afficher un texte de titre spécifique au lieu de charger un texte de titre depuis la base de données paramétrer comme quoi la page d'information doit vraiment outrepasser le style visuel par défaut et ne pas utiliser celui paramétré dans le mainStyleSheets et c'est tout } */ ?> [SI-LINDER-PARTNER-2][OSC][SubTaskDescription]::BEGIN ?> [SI-LINDER-PARTNER-2][OSC][SubTaskDescription]::END ?> [SI-LINDER-PARTNER-2][OSC][MultiTaskDescriptions] ************************************************************************ */ ?>
[SI-LINDER-PARTNER-2][OSC][SubTaskDescription]::BEGIN // [SYSTEM_OVERRIDE_EXTRA_INFOS_PAGES_TEXTS] // ([3])-->[SI-LINDER-PARTNER-2][OSC][SubTaskDescription]::BEGIN $pageCommunityExtraInfoPages__patchReferencers1 = array( 'fakepagesid::array' => array( 4, 1000, 1001, 1002, ), 'infopageid::value' => $infopageid, 'haveitsowncss::ask' => false ); // ([3])-->[SI-LINDER-PARTNER-2][OSC][SubTaskDescription]::END if ( !empty($page_check['pages_html_text'] ) // ([4])-->BEGIN[SI-LINDER-PARTNER-2][OSC][SubTaskDescription]::END // [OVERRIDE_EXTRA_INFOS_PAGES_VARIABLE_PAGE_CHECK_CONDITIONS_TITLE] OR in_array($infopageid, $pageCommunityExtraInfoPages__patchReferencers1['fakepagesid::array']) ) { // ([5])-->[SI-LINDER-PARTNER-2][OSC][SubTaskDescription]::BEGIN switch ($infopageid) { // ([7])-->[SI-LINDER-PARTNER-2][OSC][SubTaskDescription]::BEGIN case 4: // [OVERRIDE_EXTRA_INFOS_PAGES_VARIABLE_PAGE_CHECK_TITLE] echo 'À propos'; $pageCommunityExtraInfoPages__patchReferencers1['haveitsowncss::ask'] = false; break; // ([7])-->[SI-LINDER-PARTNER-2][OSC][SubTaskDescription]::END // ([8])-->[SI-LINDER-PARTNER-2][OSC][SubTaskDescription]::BEGIN case 1000: // [OVERRIDE_EXTRA_INFOS_PAGES_VARIABLE_PAGE_CHECK_TITLE] echo 'Mentions légales'; $pageCommunityExtraInfoPages__patchReferencers1['haveitsowncss::ask'] = true; break; // ([8])-->[SI-LINDER-PARTNER-2][OSC][SubTaskDescription]::END // ([9])-->[SI-LINDER-PARTNER-2][OSC][SubTaskDescription]::BEGIN case 1001: // [OVERRIDE_EXTRA_INFOS_PAGES_VARIABLE_PAGE_CHECK_TITLE] echo 'Foire aux questions'; $pageCommunityExtraInfoPages__patchReferencers1['haveitsowncss::ask'] = true; break; // ([9])-->[SI-LINDER-PARTNER-2][OSC][SubTaskDescription]::END // ([10])-->[SI-LINDER-PARTNER-2][OSC][SubTaskDescription]::BEGIN case 1002: // [OVERRIDE_EXTRA_INFOS_PAGES_VARIABLE_PAGE_CHECK_TITLE] echo 'Retours produit'; $pageCommunityExtraInfoPages__patchReferencers1['haveitsowncss::ask'] = true; break; // ([10])-->[SI-LINDER-PARTNER-2][OSC][SubTaskDescription]::END // ([6])-->[SI-LINDER-PARTNER-2][OSC][SubTaskDescription]::BEGIN default: // [OVERRIDE_EXTRA_INFOS_PAGES_VARIABLE_PAGE_CHECK_TITLE] echo $page_check['pages_title']; break; // ([6])-->[SI-LINDER-PARTNER-2][OSC][SubTaskDescription]::END } // ([5])-->[SI-LINDER-PARTNER-2][OSC][SubTaskDescription]::END } else { echo 'Page non rédigée'; } // ([2])-->[SI-LINDER-PARTNER-2][OSC][SubTaskDescription]::END ?>
[SI-LINDER-PARTNER-2][OSC][SubTaskDescription]::BEGIN // ([8])-->[SI-LINDER-PARTNER-2][OSC][SubTaskDescription]::BEGIN // [OVERRIDE_EXTRA_INFOS_PAGES_VARIABLE_PAGE_CHECK_CONDITIONS] if ( !empty($page_check['pages_html_text'] ) // ([9])-->BEGIN[SI-LINDER-PARTNER-2][OSC][SubTaskDescription]::END // [OVERRIDE_EXTRA_INFOS_PAGES_VARIABLE_PAGE_CHECK_CONDITIONS_CONTENT] OR in_array($infopageid, $pageCommunityExtraInfoPages__patchReferencers1['fakepagesid::array']) ) { // ([5])-->[SI-LINDER-PARTNER-2][OSC][SubTaskDescription]::BEGIN $pageCommunityExtraInfoPages__referencers = array( // [OVERRIDE_EXTRA_INFOS_PAGES_VARIABLE_PAGE_CHECK_CONTENT] 'page_check::pages_html_text' => stripslashes($page_check['pages_html_text']) ); $pageCommunityExtraInfoPages__referencers['page_check::pages_html_text'] = preg_replace('/\[SI-LINDER-PARTNER-2][OSC][SubTaskDescription]::END // ([14])-->[SI-LINDER-PARTNER-2][OSC][SubTaskDescription]::BEGIN if (!in_array($infopageid, $pageCommunityExtraInfoPages__patchReferencers1['fakepagesid::array'])) { // ([6])-->BEGIN[SI-LINDER-PARTNER-2][OSC][SubTaskDescription]::END echo $pageCommunityExtraInfoPages__referencers['page_check::pages_html_text']; } // ([14])-->[SI-LINDER-PARTNER-2][OSC][SubTaskDescription]::END // ([10])-->[SI-LINDER-PARTNER-2][OSC][SubTaskDescription]::BEGIN if ( $infopageid == 4 ) { echo '
Qui sommes nous?:

Nous importons et distribuons depuis 18 ans des articles de fête. Particulièrement reconnu comme un fournisseur fiable, peu cher, efficace et rapide; notre politique est axée sur la baisse des coûts afin de pouvoir vous proposer les meilleures conditions d\'achat possibles. Nos bureaux, showroom et entrepôts de stockage de 4000m2 sont basés à 10km de Strasbourg.

Nous importons directement sous notre marque LP Divertissements, une gamme d\'accessoires de fêtes à fortes rotations, et aux meilleurs prix du marché européen. Comme par exemple des gadgets lumineux festifs, bracelets fluo, perruques, lunettes gag, chapeaux, masques, casquettes, bandanas, colliers et couronnes de fleurs, boas, articles pour supporter, bonnets de Noël, etc..

En tant que grossiste et revendeur, nous stockons et distribuons une large sélection d\'articles, en provenance des plus importants importateurs européens de la fête.

Nous livrons nos clients en France métropolitaine et Corse en 24-48h, avec un forfait pour frais de transport de 8€33 HT quel que soit votre commande.
Nous appliquons un forfait de 19€ HT pour la Belgique, l\'Espagne, l\'Allemagne, le Luxembourg et l\'Italie. Pour les autres pays, nous facturons les frais de transport sur devis, selon les frais réels du prestataire.

Découvrez en ligne sur notre site marchand, nos prix, nos exclusivités, et notre stock disponible :
www.lp-divertissements.com

'; } // ([10])-->[SI-LINDER-PARTNER-2][OSC][SubTaskDescription]::END // ([11])-->[SI-LINDER-PARTNER-2][OSC][SubTaskDescription]::BEGIN else if ( $infopageid == 1000 ) { // ([1])-->[VTAB-TEAM-LINDER-PARTNER-1][OSC][SubTaskDescription]::BEGIN echo '

Le présent site est la propriété de la société LP-Divertissements , domiciliée au 9B route de Furdenheim, 61117 Quatzenheim, immatriculée au registre du commerce et des sociétés de Strasbourg, N° SIRET: 51427496800023, TVA: FR49514274968, EORI: FR51427496800023, Code APE: 4791BC, EURL au capital de 250\'000€. Directeur de la publication: Linder Henri. Site hébergé chez OVH.

'; // ([1])-->[VTAB-TEAM-LINDER-PARTNER-1][OSC][SubTaskDescription]::END } // ([11])-->[SI-LINDER-PARTNER-2][OSC][SubTaskDescription]::END // ([12])-->[SI-LINDER-PARTNER-2][OSC][SubTaskDescription]::BEGIN else if ( $infopageid == 1001 ) { echo '

Peut-on payer par carte de crédit?
Oui. Choisissez le mode de paiement par carte, totalement sécurisé avec le crédit agricole.

Les prix sont affichés hors taxes ou toutes taxes comprises?
Prix affichés toutes taxes comprises (TTC) sur l\'écran d\'accueil, aprés validation du compte, les prix unitaires, dégressifs et prix partenaire sont affichés en hors taxes HT exclusivement.

Quels sont les modes de paiement?

  • Paiement par carte de crédit totalement sécurisé avec le crédit agricole.
  • Par virement bancaire
  • Par chèque, uniquement pour les associations.
  • En espèces dans le cas d\'une vente à emporter au magasin.

À combien s\'élèvent les frais de transport?
Nous appliquons des forfaits quel que soit votre commande:

Forfaits frais de transport en France métropolitaine et Corse (quel que soit votre commande):
8€33 HT / 10€00 TTC points ici relais
8€33 HT / 10€00 TTC à domicile. pour les professionnels toujours présents en journée

Forfaits frais de transport pour autres destinations (quel que soit votre commande):
19€00 HT / 22€80 TTC: Belgique, Luxembourg, Italie, Espagne, Allemagne

Devis préalable: Suisse, domtoms, autres pays, cliquez sur devis en fin de commande
cliquez sur "devis" au lieu d\'un mode de paiement, nous vous répondrons très vite.

'; } // ([12])-->[SI-LINDER-PARTNER-2][OSC][SubTaskDescription]::END // ([13])-->[SI-LINDER-PARTNER-2][OSC][SubTaskDescription]::BEGIN else if ( $infopageid == 1002 ) { echo '

Retour des articles / satisfait ou remboursé

Délai de rétractation: Vous disposez d\'un délai de 14 jours à compter de la réception pour retourner le produit qui ne vous conviendrait pas. Les frais d\'envoi et de retour seront alors à votre charge. Seul le prix du ou des produits achetés seront remboursés. Les retours sont à effectuer à LP-Divertissements, 9B route de Furdenheim, 67117 Quatzenheim. Le présent droit de retour ne pourra être accepté que pour les produits dans leur état d\'origine et complets (emballage, accessoires, notice...), en bon état et accompagnés d\'une copie de la facture d\'achat. Vous devez nous contacter au préalable afin de discuter des problèmes rencontrés, dans le but de déterminer quelle est la solution à apporter pour résoudre le problème. Utiliser à cet effet le formulaire de rétractation visible en cliquant sur le lien suivant: ' . tep_href_link(FILENAME_DEFAULT, '') . '. En cas de nécessité d\'envoi d\'un colis retour, nous vous communiquons un code/accord de retour. Tout colis expédié sans cet accord de retour indiqué clairement sur le colis, sera refusé par notre réception. Les articles retournés incomplets, abîmés, endommagés ou salis par le Client ne sont pas repris.

'; } // ([13])-->[SI-LINDER-PARTNER-2][OSC][SubTaskDescription]::END } else { echo 'Cette page spéciale n\'existe pas.'; } // ([8])-->[SI-LINDER-PARTNER-2][OSC][SubTaskDescription]::END // ([3])-->[SI-LINDER-PARTNER-2][OSC][SubTaskDescription]::END ?>
[SI-LINDER-PARTNER-2][OSC][MultiTaskDescriptions]:{ - 1/ on va revoir les éléments de boutons, tout simplement par ici - 2/ remplacement de l'ancien bouton (lien) ou (soumission), pour l'avoir désormais géré par UI Kit, mais aussi, avec une classe précise [VTAB-TEAM-LINDER-PARTNER-1][OSC][MultiTaskDescriptions] - Revue de la charte Graphique: - 1/ ajout du nouveau bouton vtab à la place de l'ancien bouton, géré par la fonction vtab_tep_button() qui se trouve dans le fichier vtab_html_output.php cela remplace l'étape [2] de la tâche [SI-LINDER-PARTNER-2][OSC] } */ ?> [SI-LINDER-PARTNER-2][OSC][SubTaskDescription]::BEGIN ?> [VTAB-TEAM-LINDER-PARTNER-1][OSC][SubTaskDescription]::BEGIN ?> [VTAB-TEAM-LINDER-PARTNER-1][OSC][SubTaskDescription]::END ?> [SI-LINDER-PARTNER-2][OSC][SubTaskDescription]::END ?> [SI-LINDER-PARTNER-2][OSC][MultiTaskDescriptions] ************************************************************************ */ ?>
[SI-LINDER-PARTNER-2][OSC][SimpleTaskDescription]:{" on ajoute un élément HTML et une classe pour pouvoir cibler cette zone afin de la styliser en responsive ou autres ! "} ?>