Flux d’activité
Flux d’activité de Messages
-
-
Bonjour,
a priori vous avez récupéré le code d'ajout au panier des produits. Ce code reprend l'ajout au panier, mais aussi l'affichage des attributs du produit ainsi que l'affichage des stocks. Il faudra adapter ce script pour le rendre compatible avec la page d'affichage des catégories, je vois notamment l'objet objProd qu'il faudra définir.
Si vous le souhaitez nous pouvons le faire pour vous, il faudra dans ce cas faire une demande au service commercial au 01 75 43 67 97 ou via le formulaire de contact https://www.peel.fr/utilisateurs/contact.php
-
Parse erreur à la fin de mon script. J'ai regardé et je ne trouve pas, mais je ne suis même pas certain d'avoir placé le bon formulaire avec le bon bouton "ajouter au panier". Là j'ai juste récupéré un bout de code sur template.php, qui m'a "semblé" être le bon.
Alors déjà avant de chercher pour rien, je préférerai être certain d'être sur la bonne voie.
Ai-je trouvé le bon code, et sinon, où faudrait-il récupérer le code du bouton pour pouvoir le réintégrer sur la page d'affichage des catégories ?
Merci.
-
Bonjour,
L'affichage des informations dans une infobulle n'est pas disponible avec la solution de génération de graphique implémentée.
-
Bonjour,
est-il possible d'avoir les informations lorsque l'on passe la souris sur les points ?
Comme dans les dernières versions ?
merci
-
Bonjour,
J'ai essayé à tout hasard de placer le formulaire "ajouter au panier" qui se trouve plus bas dans le template du blog, mais j'obtiens une page blanche.
Si vous avez une page blanche, il y a sans doute une erreur fatal mettant fin au script, et les messages d'erreurs ne sont pas affichés sur votre site. Pour voir cette erreur vous pouvez consulter les logs d'erreur de votre hébergement et analyser ces logs ce qui vous permettra ensuite procéder à la résolution du problème.
-
Bonjour,
C'est pour une version 5.6.
Pourrait-on ajouter le bouton "ajouter au caddie", à côté du descriptif court, juste en face du bouton "+ de détails", c'est-à-dire sur la page des catégories ?
J'ai essayé à tout hasard de placer le formulaire "ajouter au panier" qui se trouve plus bas dans le template du blog, mais j'obtiens une page blanche.
echo ' <p class="retour">' . $descriptif . '</p> <div class="col_detail"><a class="col_detail" href="' . $urlprod . '" title="' . $nom . '">' . MORE . '</a></div> </div> <div class="col4"> '; if (est_identifie() && a_priv('admin')) { echo '<p class="retour"><a href="' . $GLOBALS['administrer_url'] . '/produits.php?mode=modif&id=' . $id . '" class="label">' . MODIFY_PRODUCT . '</a></p>'; } echo ' </div> '; } echo ' <form method="post" action="' . $wwwroot . '/achat/caddie_ajout.php" id="' . $form . 'ajout' . $prodId . '">'; $hidden_input = '<input type="hidden" name="id" value="' . $prodId . '" />'; if (is_advanced_stock_module_active()) { $sqlStock = 'SELECT stock, couleur_id, taille_id FROM peel_stocks_temp WHERE produit_id = "' . $prodId . '"'; /* Ici on ne recherche que les produits dont le stock est > 0 */ $resStock = query($sqlStock); /* Si la table des stocks temporaires est vide alors on teste la table réelle */ if (num_rows($resStock) == 0) { $sqlStock = 'SELECT stock, couleur_id, taille_id FROM peel_stocks WHERE produit_id = "' . $prodId . '" AND stock > 0'; /* Ici on ne recherche que les produits dont le stock est > 0 */ $resStock = query($sqlStock); } $Stock = fetch_assoc($resStock); // On récupère le nombre de ligne dans le table, si = à 1 alors on est dans le cas d'un produit sans couleur ni taille // Dans ce cas, le critere sera traité par <input type="hidden"> $numLigne = num_rows($resStock); $stock_remain = 0; #- Initialisation de la variable Stock restant $sPrix = 0; # Indique qu'il n'existe pas de prix / taille pour ce produit. if ($numLigne == 1 && $Stock['couleur_id'] == 0 && $Stock['taille_id'] == 0) { // Si il y a du stock mais pas de couleur et pas de taille /** * 1er cas : produit avec stock sans critère */ /* PRODUIT CONTENANT UN STOCK SANS TAILLE NI COULEUR */ $hidden_input .= '<input type="hidden" value="||" name="critere" />'; if ($Stock['stock'] != 0) { affiche_etat_stock($Stock['stock']); $stock_remain = 1; echo ' <p class="retour">' . QUANTITY . ' : <input type="text" size="2" name="qte" value="1" onchange="if (this.value > ' . $Stock['stock'] . ') {this.value=\'' . $Stock['stock'] . '\'; alert(\'' . QUANTITY_INSUFFICIENT . '\');}" maxlength="3" /></p>'; echo ' <div class="bouton"> ' . $hidden_input . ' <a class="blanc" href="Javascript:document.getElementById(\'' . $form . 'ajout' . $prodId . '\').submit()" title="' . ADD_CART . '">' . ADD_CART . '</a> </div>'; } } else { /* * 2ème cas : produit avec stock avec critère */ if ($numLigne > 0) { $cName = ''; $sName = ''; $cId = 0; $sId = 0; $sPrix = 0; /* Indique qu'il n'existe pas de prix / taille pour ce produit. */ $sqlStockTrue = 'SELECT stock, couleur_id, taille_id FROM peel_stocks WHERE produit_id = "' . $prodId . '"'; $stockTrue = query($sqlStockTrue); $selected = 1; #- cette variable permet d'initialiser les boutons radio en sélectionnant au moins 1 item if (num_rows($stockTrue) > 0) { echo ' <p class="retour"> <select name="critere" >'; while ($s = fetch_assoc($stockTrue)) { $resCouleur = query('SELECT id, nom_' . $_SESSION['langue'] . ' as nom FROM peel_couleurs WHERE id = "' . $s['couleur_id'] . '"') ; $resTaille = query('SELECT id, nom_' . $_SESSION['langue'] . ' as nom, prix, prix_revendeur FROM peel_tailles WHERE id = "' . $s['taille_id'] . '"') ; if ($s['couleur_id'] > 0) { /* si il y a une couleur */ $couleur = fetch_assoc($resCouleur); $cId = $couleur['id']; $cName = $couleur['nom']; } if ($s['taille_id'] > 0) { /* si il y a une taille */ $taille = fetch_assoc($resTaille); $sName = $taille['nom']; if (is_reseller_module_active() && is_reseller()) { $sPrix = $taille['prix_revendeur'] * (1 - $objProd->promotion / 100); } else { $sPrix = $taille['prix'] * (1 - $objProd->promotion / 100); } $sId = $taille['id']; } $sqlStock = 'SELECT stock, couleur_id, taille_id FROM peel_stocks_temp WHERE produit_id = "' . $prodId . '" AND couleur_id = "' . vn($cId) . '" AND taille_id = "' . vn($sId) . '"'; /* Ici on ne recherche que les produits dont le stock est > 0 */ $resStock = query($sqlStock); /* Si la table des stocks temporaires est vide alors on teste la table réelle */ if (num_rows($resStock) == 0) { $sqlStock = 'SELECT stock, couleur_id, taille_id FROM peel_stocks WHERE produit_id = "' . $prodId . '" AND stock > 0 AND couleur_id = "' . $cId . '" AND taille_id = "' . $sId . '"'; /* Ici on ne recherche que les produits dont le stock est > 0 */ $resStock = query($sqlStock); } $Stock = fetch_assoc($resStock); if (!empty($Stock['stock'])) { $stock_remain = 1; echo ' <option value="' . $cId . '|' . $sId . '|' . $Stock['stock'] . '"' . ($selected == 1? ' selected="selected"':'') . '>'; // echo '<input type="radio" name="critere" value="'.$cId."|".$sId."|".$Stock['stock'].""'; if (!empty($cName)) { echo COLOR . ' : ' . $cName; } if (!empty($sName)) { echo ' - ' . SIZE . ' : ' . $sName; } if ($sPrix != 0) { if (display_prices_with_taxes_active()) { echo ' ' . fprix($sPrix, true) . ' ' . TTC; } else { $sPrix_ht = $sPrix / $objProd->tva; echo ' ' . fprix($sPrix_ht, true) . ' ' . HT; } } echo ($objProd->affiche_stock == 1 ?' - Stock : ' . $Stock['stock'] : '') . '</option> '; $selected++; } else { echo ' <option value="NULL">'; if (!empty($cName)) { echo $cName; } if (!empty($sName)) { echo ' ' . $sName; } echo ' : ' . NO_AVAILABLE . '</option> '; } } # FIN DE LA BOUCLE WHILE echo ' </select> </p>'; } } else { /* Fin de la boucle if ($numLigne > 0) */ $hidden_input .= ' <input type="hidden" name="critere" value="||" />'; } if ($stock_remain != 0) { affiche_etat_stock($Stock['stock']); echo ' <p class="retour"> ' . QUANTITY . ' :<input type="text" size="3" name="qte" value="1" /> <input type="hidden" name="option" value="' . vn($sPrix) . '" /> </p>'; /* le <p class=retour se ferme dans la fonction template index */ echo ' <div class="bouton"> ' . $hidden_input . ' <input type="hidden" value="' . $Stock['stock'] . '" name="stock" /> <a class="blanc" href="Javascript:document.getElementById(\'' . $form . 'ajout' . $prodId . '\').submit()" title="' . ADD_CART . '">' . ADD_CART . '</a> </div>'; } } /* Sinon on propose l'alerte par mail - Fin de la boucle if $numLigne */ if ($affiche_stock == 1 && $Stock['stock'] != 0 && vn($cId) == 0 && vn($sId) == 0) { echo ' <div style="text-align:right;"> <br /><span class="label"> Stock : ' . $Stock['stock'] . '</span><br /> </div>'; } if (!empty($objProd->delai_stock)) { echo '<br />' . DELIVERY_STOCK . ' :' . $objProd->delai_stock . '<br />'; } if ($stock_remain == 0) { echo ' <p class="retour"> <img src="' . $wwwroot . '/images/mail.gif" style="border:0" alt="mail" /> <a class="label" href="javascript:ProductAlert(\'' . $prodId . '', '' . $wwwroot . '\');" onmouseover="return overlib(\'' . OVERLIB_STOCK . '\');" onmouseout="return nd();">' . STOCK . '</a> </p>'; } } else { // Peel Shopping $sqlstock = 'SELECT * FROM peel_produits WHERE id = "' . $prodId . '"'; $query = query($sqlstock); $p = fetch_object($query); $sqlcriteres = 'SELECT c.id as cid, c.nom_' . $_SESSION['langue'] . ' as cname, t.id as tid, t.nom_' . $_SESSION['langue'] . ' as tname, t.prix FROM peel_produits_couleurs pc INNER JOIN peel_couleurs c ON c.id = pc.couleur_id INNER JOIN peel_produits_tailles pt ON pt.produit_id = pc.produit_id INNER JOIN peel_tailles t ON t.id = pt.taille_id WHERE pc.produit_id = "' . $prodId . '"'; $query = query($sqlcriteres); if ($query && num_rows($query) > 0) { echo '<select name="critere">'; $selected = 1; while ($type = fetch_object($query)) { echo '<option value="' . $type->cid . '|' . $type->tid . '|"' . ($selected == 1 ? ' selected="selected"' : '') . '>' . (!empty($type->cname) ? COLOR . ' : ' . $type->cname . ' - ' : '') . (!empty($type->tname) ? SIZE . ' : ' . $type->tname : '') . '</option>'; $selected++; } echo '</select>'; } else { $hidden_input .= '<input type="hidden" name="critere" value="||" />'; } if ($p->on_rupture == 1 || $p->stock == 0) { echo ' <p style="color:#cd0720;font-style:italic"> Ce produit est actuellement en rupture de stock. Vous ne pouvez pas le commander. </p>'; } else { echo '<p class="retour">' . QUANTITY . ' : <input type="text" size="3" name="qte" value="1" />' . $hidden_input . ' <input type="hidden" name="option" value="0" /> </p> <div class="bouton"> <a class="blanc" href="Javascript:document.getElementById(\'' . $form . 'ajout' . $prodId . '\').submit()" title="' . ADD_CART . '">' . ADD_CART . '</a> </div>'; if (!empty($p->delai_stock)) { echo '<p>Délai disponible : ' . html_entity_decode($p->delai_stock) . '</p>'; } if ($p->affiche_stock == 1) { echo '<p>Stock disponible : ' . $p->stock . '</p>'; } } } echo ' </form>'; }
Merci.
-
Bonjour,
Vous pouvez développer le module à partir des spécifications techniques fournis par votre banque. Pour l'implémentation sous forme de module vous pouvez vous inspirez des modules déjà existant et reprendre le même fonctionnement (module paypal par exemple).
-
-
-
Bonjour,
Est-il normal qu'un tas de variables de configuration sur Peel 7.0 aient été redatées samedi dernier, alors que personne, à priori ne soit allé sur l'admin ?
Les dates ont été mis à jour suite à la validation du formulaire de configuration du site (page administrer/sites.php)
Notice: Erreur SQL 1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'as name, a.image1 as image, a.date_insere, a.etat, a.id, a.on_special, r.id AS r' at line 1 - Page : /boutique/ - IP 86.68.33.210 - SELECT a.on_reseller, .titre_fr as name, a.image1 as image, a.date_insere, a.etat, a.id, a.on_special, r.id AS rubrique_id, r.nom_fr AS rubrique FROM peel_articles a INNER JOIN peel_articles_rubriques ar ON a.id = ar.article_id INNER JOIN peel_rubriques r ON r.id = ar.rubrique_id AND r.site_id IN (0,1) WHERE a.on_rollover = '1' AND a.titre_fr != '' AND r.nom_fr != '' AND a.etat='1' AND a.site_id IN (0,1) GROUP BY a.id ORDER BY a.date_insere DESC LIMIT 20 - Error number in /home/../www/boutique/lib/fonctions/database.php on line 239
Il manque l'alias a du champ titre_fr dans la requête SQL du fichier \modules\menus\fonctions.php. Pour information ce problème n'est pas présent sur PEEL.
-
Bonjour,
Il faut faire un développement sur votre site pour modifier le fonctionnement de la fonction format_filename_base qui génère le nom des images uplaodées
-
Bonjour,
est-il possible de renommer les images tout du moins la première pour qu'elle porte le nom du produit lors de l'upload?
merci
-
Bonjour,
Je m'inquiète.
Est-il normal qu'un tas de variables de configuration sur Peel 7.0 aient été redatées samedi dernier, alors que personne, à priori ne soit allé sur l'admin ?
De plus il y a une erreur sur la page d'accueil du même site, depuis vendredi dernier :
Notice: Erreur SQL 1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'as name, a.image1 as image, a.date_insere, a.etat, a.id, a.on_special, r.id AS r' at line 1 - Page : /boutique/ - IP 86.68.33.210 - SELECT a.on_reseller, .titre_fr as name, a.image1 as image, a.date_insere, a.etat, a.id, a.on_special, r.id AS rubrique_id, r.nom_fr AS rubrique FROM peel_articles a INNER JOIN peel_articles_rubriques ar ON a.id = ar.article_id INNER JOIN peel_rubriques r ON r.id = ar.rubrique_id AND r.site_id IN (0,1) WHERE a.on_rollover = '1' AND a.titre_fr != '' AND r.nom_fr != '' AND a.etat='1' AND a.site_id IN (0,1) GROUP BY a.id ORDER BY a.date_insere DESC LIMIT 20 - Error number in /home/../www/boutique/lib/fonctions/database.php on line 239
Serait-ce lié ?
Merci
-
Bonjour,
Cette fonctionnalité permet de changer rapidement l'état de livraison d'une commande. La puce active correspond à l'état de livraison en cours sur la commande.
-
Bonjour,
Merci pour votre message, ce problème est apparue sur les versions 7.2. Pour corriger, vous devez modifier le fichier administrer/rpc_positions.php et remplacer
la requête SQL$sql = "UPDATE peel_pays SET position='%s' AND " . get_filter_site_cond('pays', null, true) . " WHERE id='%s'";
par
$sql = "UPDATE peel_pays SET position='%s' WHERE id='%s' AND " . get_filter_site_cond('pays', null, true) . "";
La prochaine version de PEEL bénéficiera de cette correction.
-
Bonjour,
il est possible de positionner les pays par Drag & drop.
Les données ne semblent pas être enregistrées.
merci
-
oui il n'existe pas par défaut, j'avais suivi ton exemple plus haut où tu donnais id à 0 dans l'exemple.
voici ma nouvelle config :
'1'=>'puce-orange.gif', '3'=>'puce-verte.gif', '4'=>'puce-blanche.gif'
sur la liste des commandes j'ai les 3 images affichées sans cliquer, pourquoi ais-je deux fois la puce blanche :
j'ai puce orange(1), puce blanche(4), puce blanche(4).
d'accord .... le code affiche la puce blanche si l'id n'est pas égal au statut défini dans la config. Voilà pourquoi j'ai deux puces blanches.
je suis un peu sceptique quant à l'utilisation de ce module
-
Bonjour,
Le statut de livraison id 0 n'existe pas par défaut, êtes-vous sûr de l'id du statut de livraison ?
-
j'ai renseigné les trois images en fonction du statut comme indiqué dans ton exemple.
mais voici que sur la liste des commandes j'ai trois images qui s'affichent :
deux fois l'image pour le statut = 0 et une autre pour le statut = 1
j'ai fais :
'0'=>'puce-blanche.gif', '1'=>'puce-orange.gif', '3'=>'puce-verte.gif'
alors que ma commande a le statut de : En attente de livraison soit id 0
-
Bonjour,
vous devez renseigner une image par statut. Si vous cliquez sur l'image qui a l'id 0, alors le statut de livraison de la commande passe à 0.
-
-
ok alors je dois renseigner trois images ?
est ce normal d'après avoir cliqué le statut de livraison passe à 0 alors que lors d'une commande il est à 1 ?
oui je pense car j'ai mal renseigné la partie Votre contenu je n'ai fait que mettre le nom de l'image.
J'ai bon là ? :)
-
Bonjour,
Sur quel mode faut-il configurer le contenu de l'option ? Que je le configure en true ou false, j'ai les mêmes résultats, qui ne correspondent pas au méta title renseigné par moi-même dans les champs affectés pour cela.
Pour les catégories, c'est le paramètre :
Origine : admin
Code technique : get_straight_category_page_title
Type : boolean
Votre contenu : true=> C'est ce paramètre qui ne fonctionne pas dans votre cas ?
Le titre du site, c'est-à-dire de la page d'accueil est également modifié. Est-il possible de contrôler cela ?
Vous pouvez gérer les métas spécifiquement pour une page depuis la page de gestion des méta administrer/meta.php
-
Bonjour,
le paramètre statut_livraison_picto doit être rempli de cette façon :
Origine :admin Code technique :statut_livraison_picto Type :array Votre contenu :'0'=>'monimage.gif', '1'=>'monimage2.gif', '3'=>'monimage3.gif'
Les valeurs 0,1 ou 3 dans mon exemple correspondent aux ids des statuts.
Ventes flash
dans PEEL SHOPPING : logiciel open source de boutique en ligne
paulanna
Posté(e) · Signaler ce message
Bonjour,
pourquoi les produits s'affichent toujours sur la page flash.php même si leur date est expirée ?
par exemple j'ai un seul produit sur cette page, sa date est expirée et ce dernier s'affiche toujours si la date du jour correspond à la date de fin de la vente. Bien entendu je n'ai plus le message.
merci