-
Compteur de contenus
2 913 -
Inscrit(e) le
-
Dernière visite
Tout ce qui a été posté par Simon développeur PEEL
-
Simon développeur PEEL a ajouté un message dans un sujet Inscription Sur Mon Site
Bonjour,
Avez-vous accès aux logs d'erreur de votre serveur? Il est possible que suite à la migration, une erreur SQL conséquente d'un champ manquant dans la BDD empêche l'enregistrement des utilisateurs.
Si l'affichage des erreurs est activé sur votre hébergement, et dans le back office de votre boutique (configuration de la boutique, rubrique Sécurité, champ IPs dont l'affichage des erreurs PHP est activé :), vous pouvez faire un test d'inscription et mettre le message d'erreur dans ce sujet.
-
0
-
-
Simon développeur PEEL a ajouté un message dans un sujet privilège utilisateur
Bonjour,
Effectivement, dans la fonction a_priv test si si la chaine de caractère 'admin' est présente dans le privilège demandé :
if (substr($requested_priv, 0, 5) == 'admin' && $this_user_priv == 'admin') { => Vous pouvez renforcer le test de cette façon : if (a_priv('admini', true) && $_SESSION['session_utilisateur']['priv'] != 'admin') {
-
0
-
-
Simon développeur PEEL a ajouté un message dans un sujet pour des email plus jolis
Bonjour,
Si les emails sont envoyés en HTML, vous pouvez insérer une balise <img /> dans votre email, avec pour source un lien vers une image hébergée sur un serveur.
-
0
-
-
Simon développeur PEEL a ajouté un message dans un sujet produit hors ligne une fois commander
Bonjour,
Si vous souhaitez la désactivation uniquement en front office, vous pouvez effectivement modifier la fonction save_in_database qui est appelée lors de la création de commande par un utilisateur. Si vous souhaitez désactiver les produits aussi lors de la création de commande en back office, vous pouvez modifier la fonction create_or_update_order du fichier \lib\fonctions\order.php. Sous le bloc
foreach ($articles_array as $article_infos) {
// On construit un objet product à partir des informations de $article_infos.
// On l'utilise pour des informations diverses, mais surtout pas pour les prix par exemple, qui doivent être ceux imposés par $article_infos
// L'objet produit n'a pas besoin d'être initialisé avec toute les informations de $article_infos car on ne l'utilise que pour les parties sur lesquelles on n'a pas d'information dans $article_infos
$product_infos = null;
$product_object = new Product($article_infos['product_id'], $product_infos, false, null, true, !is_micro_entreprise_module_active());[/CODE]
il faut ajouter
query('UPDATE peel_produits SET etat=0 WHERE id=' . intval($product_object->id));
-
0
-
-
Simon développeur PEEL a ajouté un message dans un sujet [INSTALLATION] - Module PREMIUM
Bonjour,
Les modifications faites entre la version 6.3 et 6.4 du module premium concernent l'optimisation du code, des corrections de bug et des ajouts de fonctionnalité, mais la rétrocompatibilité du modules premium n'est pas garanti, il est donc possible que le nouveaux module premium fasse appel à des fonctions qui sont présentes uniquement dans les versions 6.4 et supérieures.
-
0
-
-
Simon développeur PEEL a ajouté un message dans un sujet privilège utilisateur
Bonjour,
Comment faites-vous pour tester cette page d'un privilège à l'autre ?
Si vous changer les droits de votre compte dans l'administration sans vous déconnecter/reconnecter, la session contiendra toujours les privilèges de votre compte au moment de votre dernière connexion, ce qui fausse le test.
-
0
-
-
Simon développeur PEEL a ajouté un message dans un sujet Problème de migration
Bonjour,
L'erreur
ne correspond pas à une erreur provenant de votre base de donnée, mais plutôt du fichier .htaccess qui se trouve à la racine du site. Vous pouvez ouvrir ce fichier, et décommenter les lignes qui correspondent à votre hébergeur.
Les erreurs du type
apparaissent lorsque vous tenter de créer un champ qui existe déjà en base de donnée.
-
0
-
-
Simon développeur PEEL a ajouté un message dans un sujet Bouton "+ de détails" manquant
Bonjour,
Vous pouvez modifier la valeur de la constante MORE_DETAIL dans le fichier lib/lang/fr.php qui doit correspondre à la mention utilisée à cet endroit.
-
0
-
-
Simon développeur PEEL a ajouté un message dans un sujet Gérer les 'etat de stock'
Bonjour,
Pour automatiser la mise à jour du champ resupplying de la table peel_produits quand le stock temporaire tombe à 0, il faut modifier la fonction reservation_stock_temp() du fichier modules\stock_advanced\fonctions.php. Avant
if (!empty($GLOBALS['site_parameters']['timemax'])) { Vous pouvez ajouter :
if(empty($stock_restant_apres_demande) {
query("UPDATE peel_produits
SET resupplying = 0
WHERE id = '" . intval($product_id) . "'");
}
[/code] Il faut également faire la manipulation inverse, si l'utilisateur vide le panier, le stock temporaire est réincrémenté et le produit doit être de nouveau disponible. Dans la fonction liberation_stock_temp() du même fichier, vous pouvez ajouter sous la ligne[i] $stock_temp_restant = $stock_temp_disponible + $quantite;[/i] [CODE]
if (!empty($stock_temp_restant)) {
query("UPDATE peel_produits
SET resupplying = 1
WHERE id = '" . intval($product_id) . "'");
}
-
0
-
-
Simon développeur PEEL a ajouté un message dans un sujet Problème avec Paypal
Bonjour,
Il n'y a pas apparemment pas de devise configuré pour votre boutique. Avez-vous désactivé le module devise?
-
0
-
-
Simon développeur PEEL a ajouté un message dans un sujet Les creations de commande
Bonjour,
Le taux de change doit être automatiquement calculé à 1, ce qui correspond au taux de change pour la devise €.
-
0
-
-
Simon développeur PEEL a ajouté un message dans un sujet Gérer les 'etat de stock'
Bonjour,
Pour supprimer l'affichage du bouton d'ajout au panier, pour les produits resupplying, il faut compléter ce test (ligne 1229)
if (empty($product_object->on_estimate)) { par if (empty($product_object->on_estimate) && empty($product_object->resupplying)) { {
Le produit sera à nouveau commandable après la mise à jour du champ dans le back office, cette opération n'est pas automatique.
Je regarde pour le problème des couleurs.
-
0
-
-
Simon développeur PEEL a ajouté un message dans un sujet empêcher référencement des pages avec devise différente
Bonjour,
Vous pouvez empêcher l'indexation des urls avec des points d'interrogations :
http://robots-txt.com/ressources/robots-txt-wildcard/
La manipulation est la même avec le symbole &.
-
0
-
-
Simon développeur PEEL a ajouté un message dans un sujet Gérer les 'etat de stock'
Bonjour,
Pour le premier problème, avez-vous modifié les requêtes de création/modification de produits ? Pour être sur d'avoir modifié l'ensemble du code nécessaire sur cette page, vous pouvez faire une recherche sur le nom du champ d'une fonctionnalité déjà en place, comme on_rollover (produit à la une). Pour chaque occurrence de ce terme, il faut ajouter votre nouveau champ. Si vous faites cette recherche, vous verrez qu'il faut modifier
- la fonction affiche_formulaire_ajout_produit en ajoutant $frm['resupplying'] = ""; au début de cette fonction.
- Ajouter la checbox dans le formulaire.
- Ajouter $sqlProd .= ', resupplying'; et
$sqlProd .= "
, '" . nohtml_real_escape_string(vn($frm['resupplying'])) . "'"; dans la requête SQL de la fonction insere_produit.
- Enfin ajouter
$sql .= "
, resupplying = '" . nohtml_real_escape_string(vn($frm['resupplying'])) . "'";
Une fois les requêtes modifiées, la mise à jour du champ devrait fonctionner.
Pour le second point, l'affichage d'un état de stock est indépendant de la mise au panier du produit. Pour forcer la rupture de stock si le champ resupplying est coché, il faut modifier la fonction affiche_critere_stock() dans le fichier lib/fonctions/display_product.php. Dans cette fonction, vous pouvez remplacer les 4 occurences du test :
if (empty($product_object->on_rupture) || !empty($GLOBALS['site_parameters']['allow_add_product_with_no_stock_in_cart'])) { par if (empty($product_object->resupplying) && (empty($product_object->on_rupture) || !empty($GLOBALS['site_parameters']['allow_add_product_with_no_stock_in_cart']))) { Au sujet de Un développement sera fait sur PEEL7 pour permettre de séléctionner la rupture de stock pour une association taille/produits/couleurs. Pour ce point => La correction consiste à ajouter un test sur la couleur lors du calcul du stock temporaire restant pour le produit. Dans la fonction affiche_critere stock, il faut remplacer
foreach ($product_stock_infos as $stock_infos) {
$stock_remain_all += $stock_infos['stock_temp'];
}
[/code] par [code]
foreach ($product_stock_infos as $stock_infos) {
if (empty($selected_color_id) || (!empty($selected_color_id) && ($selected_color_id == $stock_infos['couleur_id']))){
$stock_remain_all += $stock_infos['stock_temp'];
}
}
vers la ligne 1170. Au sujet de Pas de possibilité non plus de renseigner une référence différente selon la couleur...
A moins de créer une fiche article pour chaque couleur, mais la ça devient complètement absurde.[/code]
=> La gestion de référence unique par couleur et par taille est un développement supplémentaire, qui consiste à ajouter une table de base de donnée supplémentaire, ainsi que la possibilité de les administrer, et d'exploiter et d'afficher ces références en front et back office. Si vous souhaitez cette fonctionnalité je vous invite à prendre contact avec le service commercial au 01 75 43 67 97.
-
0
-
-
Simon développeur PEEL a ajouté un message dans un sujet Frais sur petites commandes en backoffice
Bonjour,
Ci dessous le code corrigé pour permettre la mise à jour automatique de frais sur les petites commandes. Le fonctionnement est :
Si la valeur du champ est à 0, les frais supplémentaires restent à 0.
Si la valeur du champ est supérieur à 0, les frais supplémentaires seront inchangé
Si la valeur du champ est vide, les frais supplémentaires seront ceux défini dans la page de paramètre généraux.
Il faut pour cela ajouter le code
if ($frm['small_order_overcost_amount'] == '') {
if($total_produit < $GLOBALS['site_parameters']['small_order_overcost_limit'] && $total_produit >= $GLOBALS['site_parameters']['minimal_amout_to_order']) {
$small_order_overcost_amount = $GLOBALS['site_parameters']['small_order_overcost_amount'];
} else {
$small_order_overcost_amount = 0;
}
} else {
$small_order_overcost_amount = get_float_from_user_input($frm['small_order_overcost_amount'], $frm['currency_rate']);
}
$tva_small_order_overcost = get_float_from_user_input($small_order_overcost_amount, $frm['currency_rate']);[/CODE]
dans la fonction save_commande_in_database, ligne 1471 du fichier fonctions/fonctions_admin.php.
Cette modification annule et remplace les indications fournies dans mes messages précédents.
-
0
-
-
Simon développeur PEEL a ajouté un message dans un sujet empêcher référencement des pages avec devise différente
Bonjour,
Ce paramétrage est à faire dans Google webmaster tools, vous pouvez consulter la FAQ de ce service ou l'aide pour en savoir plus =>
https://support.google.com/webmasters/bin/answer.py?hl=fr&answer=1050724
https://support.google.com/webmasters/?hl=fr&usrctx=IP_HP_INPRODUCT_TARGET_CLICKED_1050724
-
0
-
-
Simon développeur PEEL a ajouté un message dans un sujet attributs personnalisés dans la création de commande backoffice
Bonjour,
Cette fonctionnalité est intéressante, mais nécessite une modification conséquente dans le code de la boutique, de sorte qu'elle ne sera pas intégré au logiciel lors de la prochaine release. Par contre, nous réaliserons cette fonctionnalité pour une version suivante.
Merci
-
0
-
-
Simon développeur PEEL a ajouté un message dans un sujet A quoi sert la photo des attributs ?
Bonjour,
Oui, c'est bien ça l'idée.
-
0
-
-
Simon développeur PEEL a ajouté un message dans un sujet A quoi sert la photo des attributs ?
Bonjour,
Cette fonctionnalité n'a été développée que partiellement sur la version 6.4.2. Elle n'est actuellement pas visible en front-office. Elle le sera prochainement sur une prochaine version.
-
0
-
-
Simon développeur PEEL a ajouté un message dans un sujet Gérer les 'etat de stock'
Bonjour,
Le moyen le plus simple à mon sens serait de créer :
- Un nouveau champ dans la table peel_produits, et prendre en compte ce nouveau champ dans la Class Product. Il faut aussi prévoir son administration.
- Un nouveau paramètre dans la fonction affiche_etat_stock qui permettra de chercher le bon etat de stock, en fonction de ce qui est défini pour le produit.
Concrètement, il faut ajouter le champ resupplying (ou autre nom qui vous convienne) TINYINT 1 NOT NULL DEFAULT 0 dans la table peel_produit. Il faut ensuite ajouter $resupplying au début de la classe Product (vers la ligne 100). Il faut aussi ajouter le champ dans la requête SQL de la ligne 134. Une fois que c'est fait, il faut modifier la page administrer/produits.php pour l'administration de ce champ. Vous pouvez dupliquer le fonctionnement d'une autre champ checbox, comme on_rollover.
Une fois que le champ est administrable, et accessible depuis la classe Product, il faut modifier ensuite la fonction affiche_etat_stock(). Vous pouvez ajouter un paramètre $resupplying à cette fonction :
function affiche_etat_stock($stock, $on_rupture = false, $return_mode = false, $resupplying=null) et ajouter ce paramètre dans la requête SQL :
$resEtatStock = query("SELECT id, nom_" . $_SESSION['session_langue'] . " AS nom, image, valeur
FROM peel_etatstock
WHERE id='" . ($checked_value > 0 ? 1 : (!empty($resupplying)? 3 : 2 ) ) . "'");
Je pars du principe que l'id de votre nouvel état de stock est 3, il faut modifier pour le bon id si ce n'est pas le cas.
Enfin, à chaque appel de la fonction il faut spécifier le nouveau paramètre. Dans lib\class\Product.php, ligne 947 :
return affiche_etat_stock($stock_remain_all, $this->on_rupture, true, $this->resupplying) ;
et dans lib\fonctions\display_product.php :
ligne 1177
' . affiche_etat_stock($stock_remain_all, false, true, $product_object->resupplying) . '';
ligne 1217
$output .= '' . affiche_etat_stock($stock_remain_all, false, true, $product_object->resupplying) . '';
Les numéros de lignes sont données pour une 6.3.1
-
0
-
-
Simon développeur PEEL a ajouté un message dans un sujet 'Ajouter au panier' dans page catalogue
Bonjour,
le morceau de code
<td style="text-align:center; width:12%;">
';
if (empty($product_object->on_estimate)) {
$output .= ((vn($GLOBALS['site_parameters']['category_order_on_catalog']) != 1)?$product_object->affiche_prix(display_prices_with_taxes_active(), is_reseller_module_active() && is_reseller(), true, false, null, false, true, 'full_expand_in_container', false):'');
} else {
$output .= display_on_estimate_information(true);
}
$output .= '
</td>
[/CODE]
affiche le prix du produit, ou la mention 'Sur devis' si le checkbox "La mention "Sur devis" sera affichée à la place du prix :" est coché dans la fiche produit en back office. Ce morceau de code est utilisé uniquement pour l'affichage des produits en ligne dans les pages de catégorie.
-
0
-
-
Simon développeur PEEL a ajouté un message dans un sujet Base de donnée prix
Bonjour,
Lors de l'ouverture d'un fichier csv avec calc d'open office, une fenêtre s'affiche dans al quelle vous pouvez renseigner l'encodage, et le spérateur utilisé pour le fichier.
Pour le fichier d'export, vous devez préciser UTF-8 pour l'encodage, et tabulation pour le séparateur. Une fois paramétrer de cette façon, les lignes de produits devrait être affichées clairement.
-
0
-
-
Simon développeur PEEL a ajouté un message dans un sujet Bouton "+ de détails" manquant
Bonjour,
Avez-vous une capture d'écran ou une URL, pour que l'on puisse voir le problème ?
-
0
-
-
Simon développeur PEEL a ajouté un message dans un sujet Peel Démo et création de commandes backoffice
Bonjour,
effectivement, l'utilisateur avec les droits de démonstration ne peux pas effectuer d'actions autres que SELECT sur la BDD dans l’administration.
-
0
-
-
Simon développeur PEEL a ajouté un message dans un sujet Taux de change appliqué ? la commande passé ? 0 !?
Bonjour,
Ces valeurs sont corrects, il faut donc chercher l'erreur dans le code de mon message pour comprendre pourquoi la variable $frm['currency_rate'] est vide.
Vous pouvez ajouté des echo à chaque test pour savoir quel sont les blocs exécutés :
// Calcul des coûts et insertion de la commande
if ((empty($frm['currency_rate']) || empty($frm['devise'])) && is_devises_module_active ()) {
echo '1 <br/>';
if (isset($frm['devise']) && $frm['devise'] != $GLOBALS['site_parameters']['code']) {
echo '2 <br/>';
// Si la devise de la commande n'est pas celle de la boutique, alors on récupère le taux de change de la devise
$res = query("SELECT p.conversion
FROM peel_devises p
WHERE p.code = '" . nohtml_real_escape_string($frm['devise']) . "'");
}
if (!empty($res) && $tab = fetch_assoc($res)) {
echo '3 <br/>';
$frm['currency_rate'] = $tab['conversion'];
} else {
echo '4 <br/>';
// Valeur par défaut de la devise
$frm['devise'] = $GLOBALS['site_parameters']['code'];
$frm['currency_rate'] = $GLOBALS['site_parameters']['conversion'];
}
}
[/CODE]
-
0
-