Flux d’activité

Flux d’activité de Messages

  1. carcy


    Bonjour à tous

    Décidément, la sénilité me poursuit ! Je n'arrive plus à trouver depuis que je suis passé en 8.0.5, comment on fait pour supprimer du footer les boutons Conditions de ventes et Informations légales !

    J'ai essayé la méthode donnée précédemment par Simon concernant les variables de configurations disabled_legal_left mais les liens sont toujours là...

    Merci !

    JL

     

  2. carcy


    Bonjour !

    une toute petite question.

    J'ai activé sur mon site le bloc "récemment consulté" en sideblocktitle, en bas de page juste avant le footer.

    Les articles défilent régulièrement, mais le bloc change des fois de taille (en fonction de la longueur du titre du produit, de la hauteur de l'image etc...) ce qui fait faire le yoyo au footer ! c'est assez désagréable si on est en fond de page et qu'on veut par exemple cliquer sur un des liens du footer au moment ou la page bouge !!

    n'y a t'il pas un moyen de fixer celà ?

    merci pour le tuyau !

    JL

     


  3. Bonjour,

    1) dans le fichier lib/class/Product.php il faut remplacer la ligne 1137 (sur la version 8.0.4)

    $prix_promo_percent = round(($this->prix - $prix_promo) * 100 / $this->prix, 2);

    par

    $prix_promo_percent = ($this->prix - $prix_promo) * 100 / $this->prix;

     

    2) dans le fichier administrer/produits.php, il faut ajouter la ligne

        $prix_promo = fprix(get_float_from_user_input($frm['prix_promo']), false, $GLOBALS['site_parameters']['code'], false, null, false, false);

    à la ligne 471 du fichier (en dessous de la définition de la variable $prix_achat)


  4. Bonjour,

    pour ajoute une option vide dans le menu déroulant des attributs administrables, vous pouvez ajouter le paramètre attribut_first_select_option_is_empty depuis la page d'ajout de paramètre /administrer/configuration.php?mode=ajout. Pour remplir le paramètre :

    Origine : manual
    Code technique : attribut_first_select_option_is_empty
    Type : boolean

    Votre contenu : true

    Concernant les erreurs lors de l'ajout au panier, j'ai pris contact avec vous via la messagerie privée.

     

  5. carcy


    Bonjour

    Y a t'il une grosse différence entre la 8.04 et 8.05 dans le code ?

    J'avais appliqué il y a quelques temps de ça, depuis les dernières versions 7, des modifications qui visaient dans le back office, à afficher entre autre sur la page commander.php des infos supplémentaires comme le numéro de client, le poids total de la commande, le prix des suppléments de paiement... (en collaboration avec Simon).

    J'ai appliqué ces modif sur la V8.05 sur laquelle j'ai basculé hier soir (8.0.4->8.0.5) et là mes modifs ne marchent plus.

    J'avais ajouté dans le fichier lib/fonctions/fonctions_admin.php les lignes suivantes dans la fonction affiche_details_commande:

    $tpl->assign('total_poids',  String::str_form_value(vb($commande['total_poids'])) . $GLOBALS['STR_ADMIN_GRAMS']);
        	$tpl->assign('STR_ADMIN_ORDER_WEIGHT', $GLOBALS['STR_ADMIN_ORDER_WEIGHT']);
        	$tpl->assign('STR_ADMIN_PAIEMENT_METHOD_OVERCOST', $GLOBALS['STR_ADMIN_PAIEMENT_METHOD_OVERCOST']);
        	$tpl->assign('tarif_paiement',  String::str_form_value(vb($commande['tarif_paiement'])));

    puis ajouté dans le  tpl smarty/admin_commande_details :

    <tr> 
    			<td>{$STR_ADMIN_ORDER_WEIGHT}{$STR_BEFORE_TWO_POINTS}:</td>
    			<td>{$total_poids}</td>
    		</tr>
    		<tr> 
    			<td>{$STR_ADMIN_PAIEMENT_METHOD_OVERCOST}{$STR_BEFORE_TWO_POINTS}:</td>
    			<td>{$tarif_paiement}</td>
    		</tr>

    AVec cette modif qui fonctionne depuis très longtemps, hé bien hier soir j'ai eu la désagréable surprise d'avoir une page blanche avec le message d'erreur suivant :

    Fatal error: Class 'String' not found in /homepages/5/d334204221/htdocs/lib/fonctions/fonctions_admin.php on line 1329

    Est ce que vous pouvez m'aider svp ??? merci

    JL

     

  6. barney57400


    Bonjour,

    Je suis sous 8.0.4

    1/ Lorsque je saisi un prix promotionné dans le backoffice, le prix affiché ensuite n'est pas 100% identique mais a quelques centimes de + ou de -

    par exemple un prix de départ à 700 euros - prix promotionné mis à 500 euros mais sur le site il s'affiche 500.01 euros

    2/ Lorsque je retourne sur la fiche du produit dans le backoffice, le champ prix promotionné est vide (il reste à 0)

    Comment puis-je résoudre ces 2 problèmes ?

    merci d'avance


  7. Bonjour,

    Effectivement sur les versions 8 la requête est générée automatiquement en fonction des champs présent dans peel_utilisateurs. Pour appliquer les fonctions que vous souhaitez sur les champs prenom, nom_famille et ville, il faut ajouter un bloc de code au niveau de la ligne 276 (sur la version 8.0.4) :

    Il faut remplacer le bloc ci dessous

    		if(in_array($this_field, array('description', 'parameters'))) {
    			$sql_fields_array[$this_field] = word_real_escape_string($this_field) . "='" . real_escape_string($frm[$this_field]) . "'";
    		} else {
    			$sql_fields_array[$this_field] = word_real_escape_string($this_field) . "='" . nohtml_real_escape_string($frm[$this_field]) . "'";
    		}

    par

    		if(in_array($this_field, array('prenom'))) {
    			$sql_fields_array[$this_field] = word_real_escape_string($this_field) . "='" . nohtml_real_escape_string(String::ucfirst($frm[$this_field])) . "'";
    		} elseif(in_array($this_field, array('ville', 'nom_famille'))) {
    			$sql_fields_array[$this_field] = word_real_escape_string($this_field) . "='" . nohtml_real_escape_string(String::strtoupper($frm[$this_field])) . "'";
    		} elseif(in_array($this_field, array('description', 'parameters'))) {
    			$sql_fields_array[$this_field] = word_real_escape_string($this_field) . "='" . real_escape_string($frm[$this_field]) . "'";
    		} else {
    			$sql_fields_array[$this_field] = word_real_escape_string($this_field) . "='" . nohtml_real_escape_string($frm[$this_field]) . "'";
    		}

     

  8. carcy


    bonsoir Simon

    Merci pour votre aide ! mais dans cette version 8, je ne retrouve plus comme dans la version 7 les variables de nom, prénom, ville...

    Dans la version précédente je n'avais qu'à faire celà :

    , '" . nohtml_real_escape_string(String::ucfirst(String::strtolower(vb($frm['prenom'])))) . "'

     , '" . nohtml_real_escape_string(String::strtoupper(vb($frm['nom_famille']))) . "'

     , '" . nohtml_real_escape_string(String::strtoupper(vb($frm['ville']))) . "'

    Mais là, plus rien... A moins que ça se passe ailleurs...

     

  9. carcy


    Bonjour

    Merci pour la réponse

    Suite à cette modif, j'obtiens une erreur lorsque j'ajoute un produit sans spécifier l'option :

    Notice: Undefined index: session_display_popup in /homepages/5/d334204221/htdocs/achat/caddie_ajout.php on line 138

    Notice: Undefined index: error_text in /homepages/5/d334204221/htdocs/achat/caddie_ajout.php on line 138

    Warning: Cannot modify header information - headers already sent by (output started at /homepages/5/d334204221/htdocs/achat/caddie_ajout.php:138) in /homepages/5/d334204221/htdocs/lib/fonctions/fonctions.php on line 1608

    Warning: Cannot modify header information - headers already sent by (output started at /homepages/5/d334204221/htdocs/achat/caddie_ajout.php:138) in /homepages/5/d334204221/htdocs/lib/fonctions/fonctions.php on line 1612

    merci pour votre aide

     


  10. Bonjour,

    Pour permettre la prise en compte des attributs obligatoire, dans la fonction get_attribut_list_from_post_data du fichier modules\attributs\fonctions.php il faut ajouter remplacer le test vers la ligne 822 (pour une version 8.0.4)

    					if (is_array($this_value)) {
    						// Tableau d'attributs
    						foreach($this_value as $this_combinaison) {
    							// On teste la validité des données
    							$value_array = explode('|', $this_combinaison);
    							if($value_array[0] == $this_nom_attribut_id && !empty($attribut_infos[$this_nom_attribut_id][$value_array[1]])) {
    								// L'option existe bien pour cet attribut
    								$combinaisons_array[] = $this_combinaison;
    								unset($GLOBALS['error_attribut_mandatory'][$this_nom_attribut_id]);
    							}
    						}
    					} else {
    						$combinaisons_array[] = $this_value;
    						unset($GLOBALS['error_attribut_mandatory'][$this_nom_attribut_id]);
    					}

    par

        if (is_array($this_value)) {
                            // Tableau d'attributs
                            foreach($this_value as $this_combinaison) {
                                // On teste la validité des données
                                $value_array = explode('|', $this_combinaison);
                                if($value_array[0] == $this_nom_attribut_id && !empty($attribut_infos[$this_nom_attribut_id][$value_array[1]])) {
                                    // L'option existe bien pour cet attribut
                                    $combinaisons_array[] = $this_combinaison;
                                    unset($GLOBALS['error_attribut_mandatory'][$this_nom_attribut_id]);
                                }
                            }
                        } elseif(!empty($this_value)) {
                            $combinaisons_array[] = $this_value;
                            unset($GLOBALS['error_attribut_mandatory'][$this_nom_attribut_id]);
                        }

     Concrètement il faut changer la condition } else { par } elseif(!empty($this_value)) { pour exécuter le code qui suit uniquement si on a une valeur pour l'attribut.


  11. Bonjour,

    Pour cela vous pouvez modifier la fonction qui enregistre les utilisateurs dans la base de données : insere_utilisateur qui est défini dans lib/fonctions/user.php

    Dans cette fonction vous pouvez appliquer les fonctions PHP ucfirst : https://secure.php.net/manual/fr/function.ucfirst.php ou strtoupper : https://secure.php.net/manual/fr/function.strtoupper.php sur les variables souhaitées.

  12. carcy


    Bonjour

    Je souhaiterai que lorsqu'un client s'enregistre sur le site ou que lorsque je créé un utilisateur en BO, à l'enregistrement de la fiche, les données se formatent comme cela :

    -NOM de FAMILLE en MAJUSCULES (ne pas accentuer les majuscules)

    -Prénom avec première lettre en majuscule seulement (le reste en minuscules)

    -La VILLE tout en majuscule sans accent.

    Je sais pas faire du tout, ni ou retoucher le code...

    Merci pour le tuyau !

    JL

     

  13. carcy


    Bon alors déjà merci pour votre réponse Simon.

    J'ai apporté la petite modif dont vous parlez.

    Du coup, sur ma page produit, les champs des 2 attributs se retrouvent vides et demandent un choix. Jusque là c'est bon...

    Exemple concret à la page : https://www.jl-transferts-numeriques.fr/achat/produit_details.php?id=56

    je rappelle : support = attribut multitaille/multiprix -> il est bien obligatoire (=> "vous n'avez pas choisi de support")

    SAUF QUE après avoir validé le choix de cet attribut taille, je peux ajouter au panier le produit SANS AVOIR CHOISI l'attribut paramétrable...

    Le produit se retrouve dans le panier mais ne précise pas d'attribut paramétrable.

    En fait, il serait bien que quelque soit l'attribut (taille, personnalisé...), le champs soit vide au départ et que l'ajout au panier ne soit possible QUE si l'attribut (ou les attributs) sont renseignés...

    N'est pas un fonctionnement normal ?

     


  14. Bonjour,

    L'ajout d'une option vide dans le menu déroulant des attributs administrable a été ajouté sur la 8.0.5 (c'est paramétrable), ce qui répond au problème que vous soulevez. Sur la 8.0.4 vous pouvez modifier le fichier modeles\peel7\smarty\modules\attributs_form_part.tpl pour ajouter une option vide <option value="">{$LANG.STR_CHOOSE}</option> vers la ligne  35, en dessous de <select id="{$a.input_id}" name="{$a.input_name}" onchange="{$a.onchange}" class="form-control{if $a.input_class} {$a.input_class}{/if}">

     

Twitter Advisto ecommerce

Facebook PEEL Shopping