Flux d’activité
Flux d’activité de Messages
-
-
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.
-
Bonjour,
merci pour votre retour, pour corriger il faut modifier le fichier lib/fonctions/fonctions_admin.php. Sur une version 8.0.1, à la ligne 1713 il faut remplacer la requête par
$query = query('SELECT societe, prenom, nom_famille AS nom, adresse, code_postal, ville, pays, email, telephone AS contact
par
$query = query('SELECT societe, prenom, nom_famille AS nom, adresse, code_postal AS zip, ville, pays, email, telephone
et changer le foreach ligne 1719
foreach($frm['adresses_fields_array'] as $this_item) { $frm[$this_item . '1'] = $result[$this_item]; $frm[$this_item . '2'] = $result[$this_item]; } }
par
foreach($frm['adresses_fields_array'] as $this_item) { if ($this_item == 'telephone') { $this_frm_item = 'contact'; } elseif ($this_item == 'zip') { $this_frm_item = 'code_postal'; } else { $this_frm_item = $this_item; } $frm[$this_frm_item . '1'] = $result[$this_item]; $frm[$this_frm_item . '2'] = $result[$this_item]; }
-
Bonjour,
ça concerne plusieurs fichiers, l'impact est mineur et ne concerne que l'administration - donc le plus simple est soit que vous preniez la nouvelle version, soit que vous fassiez sans cette correction. Sinon je vous laisse chercher en analysant les différences de code dans github par exemple
-
Bonjour,
Les modifications sont faites dans le fichier administrer/produits.php, ligne 1310 à 1321 et ligne 1533 à 1545 (sur la version 8.0.1)
graphe back office v8.0.1
dans PEEL SHOPPING : logiciel open source de boutique en ligne
Simon développeur PEEL
Posté(e) · Signaler ce message
Bonjour,
L'affichage des informations dans une infobulle n'est pas disponible avec la solution de génération de graphique implémentée.