Aide - Recherche - Membres - Calendrier
Version complète : Ecotax Version 1.3 by paddybl (compatible Recupel pour la Belgique)
Forum osCommerce-fr > Adapter OsCommerce MS2 > Contributions
Pages : 1, 2, 3, 4, 5, 6
paddybl
Forcément si je l'avais oublié dans l'admin, coté client celà devait arriver aussi...

dans account_history_info.php et print_order.php(pour ceux qui l'ont)



rechercher:

CODE
     echo '            <td class="main" align="right" valign="top">' . $currencies->display_price($order->products[$i]['price'], $order->products[$i]['tax'],0, $order->products[$i]['qty']). "\n";


et remplacer par:

CODE
     echo '            <td class="main" align="right" valign="top">' . $currencies->format(tep_add_tax($order->products[$i]['final_price']-(tep_get_ecotax_price_value($order->products[$i]['ecotax_rates_id'])+tep_get_ecotax_taxable($order->products[$i]['ecotax_rates_id'])), $order->products[$i]['tax']) * $order->products[$i]['qty'], true, $order->info['currency'], $order->info['currency_value']) . "\n";


Merci steph
ypetrel
Bonjour à tous et surtout félicitations à Paddybl pour cette contribution.
Bien écrite et bien documentée celà nous a permis de l'intégrer à une Creload sans problème.
Juste une petite demande, nous utilisons les factures pdf et pour nous simplifier la vie nous souhaiterions modifier le fichier ot_ecotaxe.php pour qu'au lieu d'afficher la TVA de l'écotaxe dans le pied de facture il nous affiche le montant total des ecotaxes TTC. On sèche sur le sujet.
Si l'auteur a une petite idée elle est la bienvenue et nous l'en remercions par avance.
Cordialement
-steph44
Bonjour smile.gif ,

je sais pas si cela est une erreur lors de l'instal de ecotax sur mon OSC mais je voi que maintenant que sur la page index (lorsque l'on consulte une categorie, sinon ailleur c'est bon smile.gif ) la promotion faite sur un article ne s'affiche pas, seul le prix "de base" s'affiche mellow.gif .

j'ai chercher dans les 7 pages traitant de l'ecotax mais (a moins que je n'ai pas les yeux en face des trous biggrin.gif ) je n'ai rien trouvez qui parle d'un probleme d'affichage du prix promotionnelle confused.gif .

sur vos OSC, cela s'affiche ou c'est général ? smile.gif

merci beaucoup pour vos réponses smile.gif

A bientot
steph smile.gif

Fausse alerte, la valeurs promotionnelle se ré-affiche blink.gif , pourquoi ? sais pas, cela la fait sur le site en production et en test unsure.gif .
enfin le principal, c'est qu'il n'y à pas de probleme smile.gif (enfin je pense biggrin.gif ) .
paddybl
CITATION(ypetrel @ 21 Feb 2007, 16:31) [snapback]222201[/snapback]
Bonjour à tous et surtout félicitations à Paddybl pour cette contribution.
Bien écrite et bien documentée celà nous a permis de l'intégrer à une Creload sans problème.
Juste une petite demande, nous utilisons les factures pdf et pour nous simplifier la vie nous souhaiterions modifier le fichier ot_ecotaxe.php pour qu'au lieu d'afficher la TVA de l'écotaxe dans le pied de facture il nous affiche le montant total des ecotaxes TTC. On sèche sur le sujet.
Si l'auteur a une petite idée elle est la bienvenue et nous l'en remercions par avance.
Cordialement


Bravo, et franchement chapeau bas, car pour avoir effectué moi même une installation sur creload, je peux affirmer que celà n'est pas simple surtout à cause de la gestion des templates et de la différence du fichier categorie.php...
si vous avez réussi cette intégration sur creload vous ne devriez pas avoir de mal à calculer les ecotax totales
pour comprendre le fonctionnement il faut partir du fichier ot_ecotax.php cette classe qui dans sont utilisation actuel ne guére que la tva et affiché grace la classe order_total. pour order_total il n'y à rien a toucher, cette classe ne fait que récupérer les lignes des différents modules pour en effectuer l'affichage.
l'idée serait de copier le bloc $order->info['ecotax_groups'] du fichier ot_ecotax, qui stock la valeur total des tva d'ecotax, pour stock le total des ecotax: genre $order->info['ecotax_groups2']
le calcul s'effectue dans la classe order.php en reprenant les lignes, il ne reste plus qu'à placer cette ligne au bonne endroit:
$this->info['ecotax_groups2']["$products_ecotax_description"] +=(tep_get_ecotax_price_value($this->products[$index]['ecotax_rates_id'])+(tep_get_ecotax_taxable($this->products[$index]['ecotax_rates_id']))*$this->products[$index]['qty'];
-steph44
bonjour smile.gif

j'ai une petite question unsure.gif , cela concerne l'affichage des produits lorsque l'on clique sur le nom du fabriquant (dans la boxe "fabriquants") la page s'affiche mais indique "Il n'y a aucun produit listé dans cette catégorie."
et
lorsque je suis sur une page contenant plusieurs marque de fabriquant, si j'utilise le filtre, celui-ci ne fonctionne pas et m'affiche la page sans quelle soit filtrée sad.gif

j'ai cette anomalie depuis l'installation de la contrib ecotax, c'est la page "index.php" smile.gif c'est une anomalie générale ou cela est que chez moi ? smile.gif

merci d'avance pour vos réponses smile.gif

A bientot
Steph smile.gif
ypetrel
CITATION(paddybl @ 3 Mar 2007, 17:57) [snapback]223945[/snapback]
CITATION(ypetrel @ 21 Feb 2007, 16:31) [snapback]222201[/snapback]
Bonjour à tous et surtout félicitations à Paddybl pour cette contribution.
Bien écrite et bien documentée celà nous a permis de l'intégrer à une Creload sans problème.
Juste une petite demande, nous utilisons les factures pdf et pour nous simplifier la vie nous souhaiterions modifier le fichier ot_ecotaxe.php pour qu'au lieu d'afficher la TVA de l'écotaxe dans le pied de facture il nous affiche le montant total des ecotaxes TTC. On sèche sur le sujet.
Si l'auteur a une petite idée elle est la bienvenue et nous l'en remercions par avance.
Cordialement


Bravo, et franchement chapeau bas, car pour avoir effectué moi même une installation sur creload, je peux affirmer que celà n'est pas simple surtout à cause de la gestion des templates et de la différence du fichier categorie.php...
si vous avez réussi cette intégration sur creload vous ne devriez pas avoir de mal à calculer les ecotax totales
pour comprendre le fonctionnement il faut partir du fichier ot_ecotax.php cette classe qui dans sont utilisation actuel ne guére que la tva et affiché grace la classe order_total. pour order_total il n'y à rien a toucher, cette classe ne fait que récupérer les lignes des différents modules pour en effectuer l'affichage.
l'idée serait de copier le bloc $order->info['ecotax_groups'] du fichier ot_ecotax, qui stock la valeur total des tva d'ecotax, pour stock le total des ecotax: genre $order->info['ecotax_groups2']
le calcul s'effectue dans la classe order.php en reprenant les lignes, il ne reste plus qu'à placer cette ligne au bonne endroit:
$this->info['ecotax_groups2']["$products_ecotax_description"] +=(tep_get_ecotax_price_value($this->products[$index]['ecotax_rates_id'])+(tep_get_ecotax_taxable($this->products[$index]['ecotax_rates_id']))*$this->products[$index]['qty'];


Merci Paddybl c'est exactement ce qu'on voulait et çà marche nickel, sympa de nous avoir mâcher le travail et de nous avoir fait économiser un temps précieux.
Juste une petite erreur dans ton code (une parenthèse en trop) corrigé ci-dessous pour ceux que çà intéressent :
$this->info['ecotax_groups2']["$products_ecotax_description"] +=tep_get_ecotax_price_value($this->products[$index]['ecotax_rates_id'])+(tep_get_ecotax_taxable($this->products[$index]['ecotax_rates_id']))*$this->products[$index]['qty'];
Je profite de l'occasion pour soulever un dernier point concernant la TVA. Il y a une erreur de quelques centimes d'euros lorsque la commande comporte des produits sujets à écotaxe, sans doute une erreur d'arrondi. Je précise que nous n'avons aucune erreur lorsque la commande ne comporte pas de produits soumis à écotaxe et que cette erreur semble survenir lorsqu'il y a plusieurs produits soumis à écotaxe et n'est que de quelques centimes (ex : 230,11 au lieu de 230,12 sur une commande de 1404,20 €).
Si tu as une idée ou si quelqu'un a déjà remarqué et résolu ce problème vous êtes les bienvenus. Comme dit plus haut nous sommes en Creload avece le module TVA Intracom.
A bientôt.
Cordialement.
paddybl
CITATION(ypetrel @ 6 Mar 2007, 15:07) [snapback]224277[/snapback]
CITATION(paddybl @ 3 Mar 2007, 17:57) [snapback]223945[/snapback]
CITATION(ypetrel @ 21 Feb 2007, 16:31) [snapback]222201[/snapback]
Bonjour à tous et surtout félicitations à Paddybl pour cette contribution.
Bien écrite et bien documentée celà nous a permis de l'intégrer à une Creload sans problème.
Juste une petite demande, nous utilisons les factures pdf et pour nous simplifier la vie nous souhaiterions modifier le fichier ot_ecotaxe.php pour qu'au lieu d'afficher la TVA de l'écotaxe dans le pied de facture il nous affiche le montant total des ecotaxes TTC. On sèche sur le sujet.
Si l'auteur a une petite idée elle est la bienvenue et nous l'en remercions par avance.
Cordialement


Bravo, et franchement chapeau bas, car pour avoir effectué moi même une installation sur creload, je peux affirmer que celà n'est pas simple surtout à cause de la gestion des templates et de la différence du fichier categorie.php...
si vous avez réussi cette intégration sur creload vous ne devriez pas avoir de mal à calculer les ecotax totales
pour comprendre le fonctionnement il faut partir du fichier ot_ecotax.php cette classe qui dans sont utilisation actuel ne guére que la tva et affiché grace la classe order_total. pour order_total il n'y à rien a toucher, cette classe ne fait que récupérer les lignes des différents modules pour en effectuer l'affichage.
l'idée serait de copier le bloc $order->info['ecotax_groups'] du fichier ot_ecotax, qui stock la valeur total des tva d'ecotax, pour stock le total des ecotax: genre $order->info['ecotax_groups2']
le calcul s'effectue dans la classe order.php en reprenant les lignes, il ne reste plus qu'à placer cette ligne au bonne endroit:
$this->info['ecotax_groups2']["$products_ecotax_description"] +=(tep_get_ecotax_price_value($this->products[$index]['ecotax_rates_id'])+(tep_get_ecotax_taxable($this->products[$index]['ecotax_rates_id']))*$this->products[$index]['qty'];


Merci Paddybl c'est exactement ce qu'on voulait et çà marche nickel, sympa de nous avoir mâcher le travail et de nous avoir fait économiser un temps précieux.
Juste une petite erreur dans ton code (une parenthèse en trop) corrigé ci-dessous pour ceux que çà intéressent :
$this->info['ecotax_groups2']["$products_ecotax_description"] +=tep_get_ecotax_price_value($this->products[$index]['ecotax_rates_id'])+(tep_get_ecotax_taxable($this->products[$index]['ecotax_rates_id']))*$this->products[$index]['qty'];
Je profite de l'occasion pour soulever un dernier point concernant la TVA. Il y a une erreur de quelques centimes d'euros lorsque la commande comporte des produits sujets à écotaxe, sans doute une erreur d'arrondi. Je précise que nous n'avons aucune erreur lorsque la commande ne comporte pas de produits soumis à écotaxe et que cette erreur semble survenir lorsqu'il y a plusieurs produits soumis à écotaxe et n'est que de quelques centimes (ex : 230,11 au lieu de 230,12 sur une commande de 1404,20 €).
Si tu as une idée ou si quelqu'un a déjà remarqué et résolu ce problème vous êtes les bienvenus. Comme dit plus haut nous sommes en Creload avece le module TVA Intracom.
A bientôt.
Cordialement.



de rien, pour la parenthèse en trop celà vient certainement de l'heure à laquelle j'ai proposé ce bout de code, lol
concernant la tva j'ai remarqué ce souci il y à quelque temps, sans pouvoir y trouvé de solution. celà vient une fois de plus des arrondis. j'ai le souci avec edit order (de mon cru), les calcules sont juste mais les arrondis arrangent celà à leurs sauces. (calcul sur 4 chiffre après la virgule, arrondi à 2 donc tous dépend de la position de la 4eme décimale.)
ypetrel
No problem pour la parenthèse çà nous arrive aussi souvent surtout quand on code la nuit ....
Bon tant pis pour la TVA on essaiera de s'y pencher quand on aura 5 mn (ou plus ) à tuer.
Concernant Edit Order que nous utisons (celui de la Creload) ton code pourrait également nous intéresser car nous n'avons toujours pas effectué l'intégration de l'écotaxe dedans faute de temps (toujours le même problème).
Est-il envisageable de l'obtenir.
Cordialement.

paddybl
CITATION(ypetrel @ 6 Mar 2007, 16:04) [snapback]224293[/snapback]
No problem pour la parenthèse çà nous arrive aussi souvent surtout quand on code la nuit ....
Bon tant pis pour la TVA on essaiera de s'y pencher quand on aura 5 mn (ou plus ) à tuer.
Concernant Edit Order que nous utisons (celui de la Creload) ton code pourrait également nous intéresser car nous n'avons toujours pas effectué l'intégration de l'écotaxe dedans faute de temps (toujours le même problème).
Est-il envisageable de l'obtenir.
Cordialement.


La version se trouve sur mon site en donation libre blush.gif
-steph44
bonsoir smile.gif ,

désolé pour la relance mais la je bloque, je ne trouve pas d'ou pourai venir le probleme sad.gif noté plus haut http://www.oscommerce-fr.info/forum/index....st&p=224246

Avez vous constaté ce probleme ou c'est juste chez moi ? blush.gif

merci d'avance pour vos réponses blush.gif

bonne soirée
Steph smile.gif
paddybl
Désolé steph je n'avais pas vu ton post

alors en vérifiant sur mon osc j'avais les 2 cas
celle qui ma servi à créer ecotax=>marche po
celle que j'ai repris depuis le début=>ca marche
bizarre je compare les 2, et là o surprise les requète non rien à voir, re bizarre...
je sais pas ou j'ai pris les première mais bon
il faut donc rechercher:
CODE
//debut modif by paddybl for ecotax  
  $listing_sql = "select DISTINCTROW " . $select_column_list . "  p.products_id, p.manufacturers_id, p.products_price, p.ecotax_rates_id,  p.products_tax_class_id,IF(s.status, s.specials_new_products_price, NULL) as specials_new_products_price, IF(s.status, s.specials_new_products_price, p.products_price) as final_price from (" . TABLE_PRODUCTS . " p) left join " . TABLE_SPECIALS . " s on p.products_id = s.products_id, " . TABLE_PRODUCTS_DESCRIPTION . " pd, " . TABLE_MANUFACTURERS . " m, " . TABLE_PRODUCTS_TO_CATEGORIES . " p2c where p.products_status = '1' and p.manufacturers_id = m.manufacturers_id and m.manufacturers_id = '" . (int)$HTTP_GET_VARS['manufacturers_id'] . "' and p.products_id = p2c.products_id and pd.products_id = p2c.products_id and pd.language_id = '" . (int)$languages_id . "' and p2c.categories_id = '" . (int)$HTTP_GET_VARS['filter_id'] . "'";        
      } else {
// We show them all
        /*$listing_sql = "select DISTINCTROW " . $select_column_list . " p.products_id, p.manufacturers_id, p.products_price, p.products_tax_class_id from " . TABLE_PRODUCTS . " p, " . TABLE_PRODUCTS_DESCRIPTION . " pd, " . TABLE_MANUFACTURERS . " m left join " . TABLE_SPECIALS . " s on p.products_id = s.products_id where p.products_status = '1' and pd.products_id = p.products_id and pd.language_id = '" . (int)$languages_id . "' and p.manufacturers_id = m.manufacturers_id and m.manufacturers_id = '" . (int)$HTTP_GET_VARS['manufacturers_id'] . "'"; */
      
  $listing_sql = "select DISTINCTROW " . $select_column_list . "  p.products_id, p.manufacturers_id, p.products_price, p.ecotax_rates_id, p.products_tax_class_id, IF(s.status, s.specials_new_products_price, NULL) as specials_new_products_price, IF(s.status, s.specials_new_products_price, p.products_price) as final_price from " . TABLE_PRODUCTS . " p left join " . TABLE_SPECIALS . " s on p.products_id = s.products_id, " . TABLE_PRODUCTS_DESCRIPTION . " pd, " . TABLE_MANUFACTURERS . " m, " . TABLE_PRODUCTS_TO_CATEGORIES . " p2c where p.products_status = '1' and p.manufacturers_id = m.manufacturers_id and m.manufacturers_id = '" . (int)$HTTP_GET_VARS['filter_id'] . "' and p.products_id = p2c.products_id and pd.products_id = p2c.products_id and pd.language_id = '" . (int)$languages_id . "' and p2c.categories_id = '" . (int)$current_category_id . "'";
   }
    } else {
// show the products in a given categorie
      if (isset($HTTP_GET_VARS['filter_id']) && tep_not_null($HTTP_GET_VARS['filter_id'])) {
// We are asked to show only specific catgeory
        /* $listing_sql = "select DISTINCTROW " . $select_column_list . " p.products_id, p.manufacturers_id, p.products_price, p.products_tax_class_id from " . TABLE_PRODUCTS . " p, " . TABLE_PRODUCTS_DESCRIPTION . " pd, " . TABLE_MANUFACTURERS . " m, " . TABLE_PRODUCTS_TO_CATEGORIES . " p2c left join " . TABLE_SPECIALS . " s on p.products_id = s.products_id where p.products_status = '1' and p.manufacturers_id = m.manufacturers_id and m.manufacturers_id = '" . (int)$HTTP_GET_VARS['filter_id'] . "' and p.products_id = p2c.products_id and pd.products_id = p2c.products_id and pd.language_id = '" . (int)$languages_id . "' and p2c.categories_id = '" . (int)$current_category_id . "'"; */
        
        $listing_sql = "select DISTINCTROW " . $select_column_list . "  p.products_id, p.manufacturers_id, p.products_price, p.ecotax_rates_id, p.products_tax_class_id, IF(s.status, s.specials_new_products_price, NULL) as specials_new_products_price, IF(s.status, s.specials_new_products_price, p.products_price) as final_price from " . TABLE_PRODUCTS_DESCRIPTION . " pd, " . TABLE_PRODUCTS . " p left join " . TABLE_MANUFACTURERS . " m on p.manufacturers_id = m.manufacturers_id left join " . TABLE_SPECIALS . " s on p.products_id = s.products_id, " . TABLE_PRODUCTS_TO_CATEGORIES . " p2c where p.products_status = '1' and p.products_id = p2c.products_id and pd.products_id = p2c.products_id and pd.language_id = '" . (int)$languages_id . "' and p2c.categories_id = '" . (int)$current_category_id . "'";
      } else {
// We show them all
        $listing_sql = "select DISTINCTROW " . $select_column_list . " p.products_id, p.manufacturers_id, p.products_price, IF(s.status, s.specials_new_products_price, NULL) as specials_new_products_price, IF(s.status, s.specials_new_products_price, p.products_price) as final_price, p.ecotax_rates_id, p.products_tax_class_id from ((" . TABLE_PRODUCTS_DESCRIPTION . " pd, " . TABLE_PRODUCTS . " p) left join " . TABLE_MANUFACTURERS . " m on p.manufacturers_id = m.manufacturers_id, " . TABLE_PRODUCTS_TO_CATEGORIES . " p2c) left join " . TABLE_SPECIALS . " s on p.products_id = s.products_id where p.products_status = '1' and p.products_id = p2c.products_id and pd.products_id = p2c.products_id and pd.language_id = '" . (int)$languages_id . "' and p2c.categories_id = '" . (int)$current_category_id . "'";
      }
//fin modif by paddybl for ecotax


et remplacer par çà

CODE
//debut modif by paddybl for ecotax  
        $listing_sql = "select " . $select_column_list . " p.products_id, p.manufacturers_id, p.products_price, p.ecotax_rates_id, p.products_tax_class_id, IF(s.status, s.specials_new_products_price, NULL) as specials_new_products_price, IF(s.status, s.specials_new_products_price, p.products_price) as final_price from " . TABLE_PRODUCTS . " p left join " . TABLE_SPECIALS . " s on p.products_id = s.products_id join " . TABLE_PRODUCTS_DESCRIPTION . " pd join " . TABLE_MANUFACTURERS . " m join " . TABLE_PRODUCTS_TO_CATEGORIES . " p2c where p.products_status = '1' and p.manufacturers_id = m.manufacturers_id and m.manufacturers_id = '" . (int)$HTTP_GET_VARS['manufacturers_id'] . "' and p.products_id = p2c.products_id and pd.products_id = p2c.products_id and pd.language_id = '" . (int)$languages_id . "' and p2c.categories_id = '" . (int)$HTTP_GET_VARS['filter_id'] . "'";
      } else {
// We show them all
        $listing_sql = "select " . $select_column_list . " p.products_id, p.manufacturers_id, p.products_price, p.ecotax_rates_id, p.products_tax_class_id, IF(s.status, s.specials_new_products_price, NULL) as specials_new_products_price, IF(s.status, s.specials_new_products_price, p.products_price) as final_price from " . TABLE_PRODUCTS . " p left join " . TABLE_SPECIALS . " s on p.products_id = s.products_id join " . TABLE_PRODUCTS_DESCRIPTION . " pd join " . TABLE_MANUFACTURERS . " m where p.products_status = '1' and pd.products_id = p.products_id and pd.language_id = '" . (int)$languages_id . "' and p.manufacturers_id = m.manufacturers_id and m.manufacturers_id = '" . (int)$HTTP_GET_VARS['manufacturers_id'] . "'";
   }
    } else {
// show the products in a given categorie
      if (isset($HTTP_GET_VARS['filter_id']) && tep_not_null($HTTP_GET_VARS['filter_id'])) {
// We are asked to show only specific catgeory
        $listing_sql = "select " . $select_column_list . " p.products_id, p.manufacturers_id, p.products_price, p.ecotax_rates_id, p.products_tax_class_id, IF(s.status, s.specials_new_products_price, NULL) as specials_new_products_price, IF(s.status, s.specials_new_products_price, p.products_price) as final_price from " . TABLE_PRODUCTS . " p left join " . TABLE_SPECIALS . " s on p.products_id = s.products_id join " . TABLE_PRODUCTS_DESCRIPTION . " pd join " . TABLE_MANUFACTURERS . " m join " . TABLE_PRODUCTS_TO_CATEGORIES . " p2c where p.products_status = '1' and p.manufacturers_id = m.manufacturers_id and m.manufacturers_id = '" . (int)$HTTP_GET_VARS['filter_id'] . "' and p.products_id = p2c.products_id and pd.products_id = p2c.products_id and pd.language_id = '" . (int)$languages_id . "' and p2c.categories_id = '" . (int)$current_category_id . "'";
      } else {
// We show them all
        $listing_sql = "select " . $select_column_list . " p.products_id, p.manufacturers_id, p.products_price, p.ecotax_rates_id, p.products_tax_class_id, IF(s.status, s.specials_new_products_price, NULL) as specials_new_products_price, IF(s.status, s.specials_new_products_price, p.products_price) as final_price from " . TABLE_PRODUCTS_DESCRIPTION . " pd, " . TABLE_PRODUCTS . " p left join " . TABLE_MANUFACTURERS . " m on p.manufacturers_id = m.manufacturers_id left join " . TABLE_SPECIALS . " s on p.products_id = s.products_id join " . TABLE_PRODUCTS_TO_CATEGORIES . " p2c where p.products_status = '1' and p.products_id = p2c.products_id and pd.products_id = p2c.products_id and pd.language_id = '" . (int)$languages_id . "' and p2c.categories_id = '" . (int)$current_category_id . "'";
}
//fin modif by paddybl for ecotax

(version corrigée le 10/03)
normalement ca devrait remarcher tiens moi au courant que je corrige l'archive sur osC
-steph44
bonjour Paddybl smile.gif

j'ai remplacer les codes par celui du indiqué ci-dessus mais cela me marque cette erreur :
CODE
Parse error: syntax error, unexpected T_ELSE in /var/-----/---/-/---/catalog/index.php on line 325


voici ce que donne la page index.php (j'ai indiquer : " ! ligne 325 indiquée en erreur ! " sur la ligne dite en erreur smile.gif


CODE
<?php
/*
  $Id: index.php,v 1.1 2003/06/11 17:37:59 hpdl Exp $

  osCommerce, Open Source E-Commerce Solutions
  http://www.oscommerce.com

  Copyright (c) 2003 osCommerce

  Released under the GNU General Public License
*/

  require('includes/application_top.php');

// the following cPath references come from application_top.php
  $category_depth = 'top';
  if (isset($cPath) && tep_not_null($cPath)) {
    $categories_products_query = tep_db_query("select count(*) as total from " . TABLE_PRODUCTS_TO_CATEGORIES . " where categories_id = '" . (int)$current_category_id . "'");
    $cateqories_products = tep_db_fetch_array($categories_products_query);
    if ($cateqories_products['total'] > 0) {
      $category_depth = 'products'; // display products
    } else {
      $category_parent_query = tep_db_query("select count(*) as total from " . TABLE_CATEGORIES . " where parent_id = '" . (int)$current_category_id . "'");
      $category_parent = tep_db_fetch_array($category_parent_query);
      if ($category_parent['total'] > 0) {
        $category_depth = 'nested'; // navigate through the categories
      } else {
        $category_depth = 'products'; // category has no products, but display the 'no products' message
      }
    }
  }

  require(DIR_WS_LANGUAGES . $language . '/' . FILENAME_DEFAULT);
?>
<!doctype html public "-//W3C//DTD HTML 4.01 Transitional//EN">
<html <?php echo HTML_PARAMS; ?>>
<head>
<?php
// BOF: Header Tag Controller v2.5.7
if ( file_exists(DIR_WS_INCLUDES . 'header_tags.php') ) {
  require(DIR_WS_INCLUDES . 'header_tags.php');
} else {
?>
  <title><?php echo TITLE; ?></title>
<?php
}
// EOF: Header Tag Controller v2.5.7
?>
<meta name="author" content="">
<meta name="revisit-after" content="1 days">
<base href="<?php echo (($request_type == 'SSL') ? HTTPS_SERVER : HTTP_SERVER) . DIR_WS_CATALOG; ?>">
<link rel="stylesheet" type="text/css" href="stylesheet.css">
</head>
<body marginwidth="0" marginheight="0" topmargin="0" bottommargin="0" leftmargin="0" rightmargin="0">
<!-- header //-->
<?php require(DIR_WS_INCLUDES . 'header.php'); ?>
<!-- header_eof //-->

<!-- body //-->
<table border="0" width="100%" cellspacing="3" cellpadding="3">
  <tr>
    <td width="<?php echo BOX_WIDTH; ?>" valign="top"><table border="0" width="<?php echo BOX_WIDTH; ?>" cellspacing="0" cellpadding="2">
<!-- left_navigation //-->
<?php require(DIR_WS_INCLUDES . 'column_left.php'); ?>
<!-- left_navigation_eof //-->
    </table></td>
<!-- body_text //-->
<?php
  if ($category_depth == 'nested') {
    $category_query = tep_db_query("select cd.categories_name, c.categories_image, cd.categories_htc_title_tag, cd.categories_htc_description from " . TABLE_CATEGORIES . " c, " . TABLE_CATEGORIES_DESCRIPTION . " cd where c.categories_id = '" . (int)$current_category_id . "' and cd.categories_id = '" . (int)$current_category_id . "' and cd.language_id = '" . (int)$languages_id . "'");    $category = tep_db_fetch_array($category_query);
?>
    <td width="100%" valign="top"><table border="0" width="100%" cellspacing="0" cellpadding="0">
      <tr>
        <td><table border="0" width="100%" cellspacing="0" cellpadding="0">
          <tr>
            <td><h1><?php echo $category['categories_htc_title_tag']; ?></h1></td>
           <td class="pageHeading" align="right"><?php echo tep_image(DIR_WS_IMAGES . $category['categories_image'], $category['categories_name'], HEADING_IMAGE_WIDTH, HEADING_IMAGE_HEIGHT); ?></td>
          </tr>
           <?php if (tep_not_null($category['categories_htc_description'])) { ?>
          <tr>
           <td><?php echo tep_draw_separator('pixel_trans.gif', '100%', '10'); ?></td>
          </tr>
          <tr>
           <td><h2><?php echo $category['categories_htc_description']; ?></h2></td>
          </tr>
          <?php } ?>
        </table></td>
      </tr>
      <tr>
        <td><?php echo tep_draw_separator('pixel_trans.gif', '100%', '10'); ?></td>
      </tr>
      <tr>
        <td><table border="0" width="100%" cellspacing="0" cellpadding="2">
          <tr>
            <td><table border="0" width="100%" cellspacing="0" cellpadding="2">
              <tr>
<?php
    if (isset($cPath) && strpos('_', $cPath)) {
// check to see if there are deeper categories within the current category
      $category_links = array_reverse($cPath_array);
      for($i=0, $n=sizeof($category_links); $i<$n; $i++) {
        $categories_query = tep_db_query("select count(*) as total from " . TABLE_CATEGORIES . " c, " . TABLE_CATEGORIES_DESCRIPTION . " cd where c.parent_id = '" . (int)$category_links[$i] . "' and c.categories_id = cd.categories_id and cd.language_id = '" . (int)$languages_id . "'");
        $categories = tep_db_fetch_array($categories_query);
        if ($categories['total'] < 1) {
          // do nothing, go through the loop
        } else {
          $categories_query = tep_db_query("select c.categories_id, cd.categories_name, c.categories_image, c.parent_id from " . TABLE_CATEGORIES . " c, " . TABLE_CATEGORIES_DESCRIPTION . " cd where c.parent_id = '" . (int)$category_links[$i] . "' and c.categories_id = cd.categories_id and cd.language_id = '" . (int)$languages_id . "' order by sort_order, cd.categories_name");
          break; // we've found the deepest category the customer is in
        }
      }
    } else {
      $categories_query = tep_db_query("select c.categories_id, cd.categories_name, c.categories_image, c.parent_id from " . TABLE_CATEGORIES . " c, " . TABLE_CATEGORIES_DESCRIPTION . " cd where c.parent_id = '" . (int)$current_category_id . "' and c.categories_id = cd.categories_id and cd.language_id = '" . (int)$languages_id . "' order by sort_order, cd.categories_name");
    }

    $number_of_categories = tep_db_num_rows($categories_query);

    $rows = 0;
    while ($categories = tep_db_fetch_array($categories_query)) {
      $rows++;
      $cPath_new = tep_get_path($categories['categories_id']);
      $width = (int)(100 / MAX_DISPLAY_CATEGORIES_PER_ROW) . '%';
      echo '                <td align="center" class="smallText" width="' . $width . '" valign="top"><a href="' . tep_href_link(FILENAME_DEFAULT, $cPath_new) . '">' . tep_image(DIR_WS_IMAGES . $categories['categories_image'], $categories['categories_name'], SUBCATEGORY_IMAGE_WIDTH, SUBCATEGORY_IMAGE_HEIGHT) . '<br>' . $categories['categories_name'] . '</a></td>' . "\n";
      if ((($rows / MAX_DISPLAY_CATEGORIES_PER_ROW) == floor($rows / MAX_DISPLAY_CATEGORIES_PER_ROW)) && ($rows != $number_of_categories)) {
        echo '              </tr>' . "\n";
        echo '              <tr>' . "\n";
      }
    }

// needed for the new products module shown below
    $new_products_category_id = $current_category_id;
?>
              </tr>
            </table></td>
          </tr>
          <tr>
            <td><?php echo tep_draw_separator('pixel_trans.gif', '100%', '10'); ?></td>
          </tr>
          <tr>
            <td><?php include(DIR_WS_MODULES . FILENAME_NEW_PRODUCTS); ?></td>
          </tr>
        </table></td>
      </tr>
    </table></td>
<?php
  } elseif ($category_depth == 'products' || isset($HTTP_GET_VARS['manufacturers_id'])) {
// create column list
    $define_list = array('PRODUCT_LIST_MODEL' => PRODUCT_LIST_MODEL,
                         'PRODUCT_LIST_NAME' => PRODUCT_LIST_NAME,
                         'PRODUCT_LIST_MANUFACTURER' => PRODUCT_LIST_MANUFACTURER,
                         'PRODUCT_LIST_PRICE' => PRODUCT_LIST_PRICE,
                         'PRODUCT_LIST_QUANTITY' => PRODUCT_LIST_QUANTITY,
                         'PRODUCT_LIST_WEIGHT' => PRODUCT_LIST_WEIGHT,
                         'PRODUCT_LIST_IMAGE' => PRODUCT_LIST_IMAGE,
                         'PRODUCT_LIST_BUY_NOW' => PRODUCT_LIST_BUY_NOW);

    asort($define_list);

    $column_list = array();
    reset($define_list);
    while (list($key, $value) = each($define_list)) {
      if ($value > 0) $column_list[] = $key;
    }

    $select_column_list = '';

    for ($i=0, $n=sizeof($column_list); $i<$n; $i++) {
      switch ($column_list[$i]) {
        case 'PRODUCT_LIST_MODEL':
          $select_column_list .= 'p.products_model, ';
          break;
        case 'PRODUCT_LIST_NAME':
          $select_column_list .= 'pd.products_name, ';
          break;
        case 'PRODUCT_LIST_MANUFACTURER':
          $select_column_list .= 'm.manufacturers_name, ';
          break;
        case 'PRODUCT_LIST_QUANTITY':
          $select_column_list .= 'p.products_quantity, ';
          break;
        case 'PRODUCT_LIST_IMAGE':
          $select_column_list .= 'p.products_image, ';
          break;
        case 'PRODUCT_LIST_WEIGHT':
          $select_column_list .= 'p.products_weight, ';
          break;
      }
    }

// show the products of a specified manufacturer
    if (isset($HTTP_GET_VARS['manufacturers_id'])) {
      if (isset($HTTP_GET_VARS['filter_id']) && tep_not_null($HTTP_GET_VARS['filter_id'])) {
// We are asked to show only a specific category



//debut modif by paddybl for ecotax en manuel
//debut modif by paddybl for ecotax  
        $listing_sql = "select " . $select_column_list . " p.products_id, p.manufacturers_id, p.products_price, p.ecotax_rates_id, p.products_tax_class_id, IF(s.status, s.specials_new_products_price, NULL) as specials_new_products_price, IF(s.status, s.specials_new_products_price, p.products_price) as final_price from " . TABLE_PRODUCTS . " p left join " . TABLE_SPECIALS . " s on p.products_id = s.products_id join " . TABLE_PRODUCTS_DESCRIPTION . " pd join " . TABLE_MANUFACTURERS . " m join " . TABLE_PRODUCTS_TO_CATEGORIES . " p2c where p.products_status = '1' and p.manufacturers_id = m.manufacturers_id and m.manufacturers_id = '" . (int)$HTTP_GET_VARS['manufacturers_id'] . "' and p.products_id = p2c.products_id and pd.products_id = p2c.products_id and pd.language_id = '" . (int)$languages_id . "' and p2c.categories_id = '" . (int)$HTTP_GET_VARS['filter_id'] . "'";
      } else {
// We show them all
        $listing_sql = "select " . $select_column_list . " p.products_id, p.manufacturers_id, p.products_price, p.ecotax_rates_id, p.products_tax_class_id, IF(s.status, s.specials_new_products_price, NULL) as specials_new_products_price, IF(s.status, s.specials_new_products_price, p.products_price) as final_price from " . TABLE_PRODUCTS . " p left join " . TABLE_SPECIALS . " s on p.products_id = s.products_id join " . TABLE_PRODUCTS_DESCRIPTION . " pd join " . TABLE_MANUFACTURERS . " m where p.products_status = '1' and pd.products_id = p.products_id and pd.language_id = '" . (int)$languages_id . "' and p.manufacturers_id = m.manufacturers_id and m.manufacturers_id = '" . (int)$HTTP_GET_VARS['manufacturers_id'] . "'";
   }
    } else {
// show the products in a given categorie
      if (isset($HTTP_GET_VARS['filter_id']) && tep_not_null($HTTP_GET_VARS['filter_id'])) {
// We are asked to show only specific catgeory
        $listing_sql = "select " . $select_column_list . " p.products_id, p.manufacturers_id, p.products_price, p.ecotax_rates_id, p.products_tax_class_id, IF(s.status, s.specials_new_products_price, NULL) as specials_new_products_price, IF(s.status, s.specials_new_products_price, p.products_price) as final_price from " . TABLE_PRODUCTS . " p left join " . TABLE_SPECIALS . " s on p.products_id = s.products_id join " . TABLE_PRODUCTS_DESCRIPTION . " pd join " . TABLE_MANUFACTURERS . " m join " . TABLE_PRODUCTS_TO_CATEGORIES . " p2c where p.products_status = '1' and p.manufacturers_id = m.manufacturers_id and m.manufacturers_id = '" . (int)$HTTP_GET_VARS['filter_id'] . "' and p.products_id = p2c.products_id and pd.products_id = p2c.products_id and pd.language_id = '" . (int)$languages_id . "' and p2c.categories_id = '" . (int)$current_category_id . "'";
      } else {
// We show them all
        $listing_sql = "select " . $select_column_list . " p.products_id, p.manufacturers_id, p.products_price, p.ecotax_rates_id, p.products_tax_class_id, IF(s.status, s.specials_new_products_price, NULL) as specials_new_products_price, IF(s.status, s.specials_new_products_price, p.products_price) as final_price from " . TABLE_PRODUCTS_DESCRIPTION . " pd, " . TABLE_PRODUCTS . " p left join " . TABLE_MANUFACTURERS . " m on p.manufacturers_id = m.manufacturers_id left join " . TABLE_SPECIALS . " s on p.products_id = s.products_id join " . TABLE_PRODUCTS_TO_CATEGORIES . " p2c where p.products_status = '1' and p.products_id = p2c.products_id and pd.products_id = p2c.products_id and pd.language_id = '" . (int)$languages_id . "' and p2c.categories_id = '" . (int)$current_category_id . "'";
//fin modif by paddybl for ecotax
//fin modif by paddybl for ecotax en manuel

    }

    if ( (!isset($HTTP_GET_VARS['sort'])) || (!ereg('[1-8][ad]', $HTTP_GET_VARS['sort'])) || (substr($HTTP_GET_VARS['sort'], 0, 1) > sizeof($column_list)) ) {
      for ($i=0, $n=sizeof($column_list); $i<$n; $i++) {
        if ($column_list[$i] == 'PRODUCT_LIST_NAME') {
          $HTTP_GET_VARS['sort'] = $i+1 . 'a';
          $listing_sql .= " order by pd.products_name";
          break;
        }
      }
    } else {
      $sort_col = substr($HTTP_GET_VARS['sort'], 0 , 1);
      $sort_order = substr($HTTP_GET_VARS['sort'], 1);
      $listing_sql .= ' order by ';
      switch ($column_list[$sort_col-1]) {
        case 'PRODUCT_LIST_MODEL':
          $listing_sql .= "p.products_model " . ($sort_order == 'd' ? 'desc' : '') . ", pd.products_name";
          break;
        case 'PRODUCT_LIST_NAME':
          $listing_sql .= "pd.products_name " . ($sort_order == 'd' ? 'desc' : '');
          break;
        case 'PRODUCT_LIST_MANUFACTURER':
          $listing_sql .= "m.manufacturers_name " . ($sort_order == 'd' ? 'desc' : '') . ", pd.products_name";
          break;
        case 'PRODUCT_LIST_QUANTITY':
          $listing_sql .= "p.products_quantity " . ($sort_order == 'd' ? 'desc' : '') . ", pd.products_name";
          break;
        case 'PRODUCT_LIST_IMAGE':
          $listing_sql .= "pd.products_name";
          break;
        case 'PRODUCT_LIST_WEIGHT':
          $listing_sql .= "p.products_weight " . ($sort_order == 'd' ? 'desc' : '') . ", pd.products_name";
          break;
        case 'PRODUCT_LIST_PRICE':
//debut modif by paddybl for ecotax    
          $listing_sql .= "products_price " . ($sort_order == 'd' ? 'desc' : '') . ", pd.products_name";
//fin modif by paddybl for ecotax    
          break;
      }
    }
if (isset($HTTP_GET_VARS['manufacturers_id']))
      $db_query = tep_db_query("select manufacturers_htc_title_tag as htc_title, manufacturers_htc_description as htc_description from " . TABLE_MANUFACTURERS_INFO . " where languages_id = '" . (int)$languages_id . "' and manufacturers_id = '" . (int)$HTTP_GET_VARS['manufacturers_id'] . "'");
    else
      $db_query = tep_db_query("select categories_htc_title_tag as htc_title, categories_htc_description as htc_description from " . TABLE_CATEGORIES_DESCRIPTION . " where categories_id = '" . (int)$current_category_id . "' and language_id = '" . (int)$languages_id . "'");

    $htc = tep_db_fetch_array($db_query);
    ?>
    <td width="100%" valign="top"><table border="0" width="100%" cellspacing="0" cellpadding="0">
      <tr>
        <td><table border="0" width="100%" cellspacing="0" cellpadding="0">
          <tr>
            <td><h1><?php echo $htc['htc_title']; ?></h1></td>
<?php
// optional Product List Filter
    if (PRODUCT_LIST_FILTER > 0) {
      if (isset($HTTP_GET_VARS['manufacturers_id'])) {
        $filterlist_sql = "select distinct c.categories_id as id, cd.categories_name as name from " . TABLE_PRODUCTS . " p, " . TABLE_PRODUCTS_TO_CATEGORIES . " p2c, " . TABLE_CATEGORIES . " c, " . TABLE_CATEGORIES_DESCRIPTION . " cd where p.products_status = '1' and p.products_id = p2c.products_id and p2c.categories_id = c.categories_id and p2c.categories_id = cd.categories_id and cd.language_id = '" . (int)$languages_id . "' and p.manufacturers_id = '" . (int)$HTTP_GET_VARS['manufacturers_id'] . "' order by cd.categories_name";
      } else {
        $filterlist_sql= "select distinct m.manufacturers_id as id, m.manufacturers_name as name from " . TABLE_PRODUCTS . " p, " . TABLE_PRODUCTS_TO_CATEGORIES . " p2c, " . TABLE_MANUFACTURERS . " m where p.products_status = '1' and p.manufacturers_id = m.manufacturers_id and p.products_id = p2c.products_id and p2c.categories_id = '" . (int)$current_category_id . "' order by m.manufacturers_name";
      }
      $filterlist_query = tep_db_query($filterlist_sql);
      if (tep_db_num_rows($filterlist_query) > 1) {
        echo '            <td align="center" class="main">' . tep_draw_form('filter', FILENAME_DEFAULT, 'get') . TEXT_SHOW . ' ';
        if (isset($HTTP_GET_VARS['manufacturers_id'])) {
          echo tep_draw_hidden_field('manufacturers_id', $HTTP_GET_VARS['manufacturers_id']);
          $options = array(array('id' => '', 'text' => TEXT_ALL_CATEGORIES));
        } else {
          echo tep_draw_hidden_field('cPath', $cPath);
          $options = array(array('id' => '', 'text' => TEXT_ALL_MANUFACTURERS));
        }
        echo tep_draw_hidden_field('sort', $HTTP_GET_VARS['sort']);
        while ($filterlist = tep_db_fetch_array($filterlist_query)) {
          $options[] = array('id' => $filterlist['id'], 'text' => $filterlist['name']);
        }
        echo tep_draw_pull_down_menu('filter_id', $options, (isset($HTTP_GET_VARS['filter_id']) ? $HTTP_GET_VARS['filter_id'] : ''), 'onchange="this.form.submit()"');
        echo '</form></td>' . "\n";
      }
    }

// Get the right image for the top-right
    $image = DIR_WS_IMAGES . 'table_background_list.gif';
    if (isset($HTTP_GET_VARS['manufacturers_id'])) {
      $image = tep_db_query("select manufacturers_image from " . TABLE_MANUFACTURERS . " where manufacturers_id = '" . (int)$HTTP_GET_VARS['manufacturers_id'] . "'");
      $image = tep_db_fetch_array($image);
      $image = $image['manufacturers_image'];
    } elseif ($current_category_id) {
      $image = tep_db_query("select categories_image from " . TABLE_CATEGORIES . " where categories_id = '" . (int)$current_category_id . "'");
      $image = tep_db_fetch_array($image);
      $image = $image['categories_image'];
    }
?>
            <td align="right"><?php echo tep_image(DIR_WS_IMAGES . $image, $category['categories_htc_title_tag'], HEADING_IMAGE_WIDTH, HEADING_IMAGE_HEIGHT); ?></td>
          </tr>          
          <?php if (tep_not_null($htc['htc_description'])) { ?>
          <tr>
           <td><?php echo tep_draw_separator('pixel_trans.gif', '100%', '10'); ?></td>
          </tr>
          <tr>
           <td><h2><?php echo $htc['htc_description']; ?></h2></td>
          </tr>
          <?php } ?>
        </table></td>
      </tr>
      <tr>
        <td><?php echo tep_draw_separator('pixel_trans.gif', '100%', '10'); ?></td>
      </tr>
      <tr>
        <td><?php include(DIR_WS_MODULES . FILENAME_PRODUCT_LISTING); ?></td>
      </tr>
    </table></td>
<?php
  } else { // default page                                                                              !   ligne 325 indiquée en erreur !
?>
    <td width="100%" valign="top"><table border="0" width="100%" cellspacing="0" cellpadding="0">
      <tr>
        <td><table border="0" width="100%" cellspacing="0" cellpadding="0">
          <tr>
            <td class="pageHeading"><?php echo HEADING_TITLE; ?></td>
            <td class="pageHeading" align="right"><?php echo tep_image(DIR_WS_IMAGES . 'table_background_default.gif', HEADING_TITLE, HEADING_IMAGE_WIDTH, HEADING_IMAGE_HEIGHT); ?></td>
          </tr>
        </table></td>
      </tr>
      <tr>
        <td><?php echo tep_draw_separator('pixel_trans.gif', '100%', '10'); ?></td>
      </tr>
      <tr>
        <td><table border="0" width="100%" cellspacing="0" cellpadding="0">
          <tr>
            <td class="main"><?php echo tep_customer_greeting(); ?></td>
          </tr>
          <tr>
            <td><?php echo tep_draw_separator('pixel_trans.gif', '100%', '10'); ?></td>
          </tr>
          <tr>
            <td class="main"><?php echo TEXT_MAIN; ?></td>
          </tr>
           <tr><td>
          <?php
          if ($banner = tep_banner_exists('dynamic', '470x50')) {
          ?>
         <br>
           <table border="0" width="100%" cellspacing="0" cellpadding="0">
         <tr>
         <td align="center"><?php echo tep_display_banner('static', $banner); ?></td>
         </tr><td>
         </table>
         <?php
         }
         ?>
         </tr>
         <tr>
            <td><?php echo tep_draw_separator('pixel_trans.gif', '100%', '10'); ?></td>
          </tr>
           <tr>
            <td><?php include(DIR_WS_MODULES . FILENAME_MAIN_CATEGORIES); ?></td>
          </tr>
          <tr>
            <td><?php //include(DIR_WS_MODULES . FILENAME_NEW_PRODUCTS);                                   affichage cadre nouveaux produit?></td>
          </tr>
<?php
    include(DIR_WS_MODULES . FILENAME_UPCOMING_PRODUCTS);
?>
        </table></td>
      </tr>
    </table></td>
<?php
  }
?>
<!-- body_text_eof //-->
    <td width="<?php echo BOX_WIDTH; ?>" valign="top"><table border="0" width="<?php echo BOX_WIDTH; ?>" cellspacing="0" cellpadding="2">
<!-- right_navigation //-->
<?php require(DIR_WS_INCLUDES . 'column_right.php'); ?>
<!-- right_navigation_eof //-->
    </table></td>
  </tr>
</table>
<!-- body_eof //-->

<!-- footer //-->
<?php require(DIR_WS_INCLUDES . 'footer.php'); ?>
<!-- footer_eof //-->
<br>
</body>
</html>
<?php require(DIR_WS_INCLUDES . 'application_bottom.php'); ?>


merci d'avance paddybl smile.gif

A bientot
steph smile.gif
gege81
CITATION(paddybl @ 8 Mar 2007, 11:59) [snapback]224581[/snapback]
Désolé steph je n'avais pas vu ton post

alors en vérifiant sur mon osc j'avais les 2 cas
celle qui ma servi à créer ecotax=>marche po
celle que j'ai repris depuis le début=>ca marche
bizarre je compare les 2, et là o surprise les requète non rien à voir, re bizarre...
je sais pas ou j'ai pris les première mais bon
il faut donc rechercher:
..........................
normalement ca devrait remarcher tiens moi au courant que je corrige l'archive sur osC


paddybl bonsoir

En cherchant une contrib pour de l'ecotaxe je suis tomber sur ce sujet.
Je dois dire qu'il est très étoffé et que tous s'accordent à trouver ton boulot fantastique.
J'avoue ne pas avoir lu tous les posts des 7 pages et je te prie de bien vouloir m'en excuser. blush.gif

Peux tu me donner le lien pour récupérer l'archive ?
Cela servira certainement à d'autres qui débarquent comme moi.
Je dois faire des essais ce weekend.
Je pense que je devrais également te donner des infos à l'issue de cette installation, car je ne suis pas un pro du php.

En attendant, Merci et à bientôt.

Gégé
paddybl
Salut et bienvenue
En effet le sujet et étoffé, j'avoue que le poste s'est transformé un peu en SAV
mais l'évolution à voulu celà
le mieux pour télécharger l'archive c'est encore de venir sur mon site,(la version et à jour de la dernière modif que j'ai expliqué au dessus, par rapport à la version sur osc. j'attend les retour pour la publier...) regarde dans mon profil, tu y trouvera plus d'info.
autre solution le site oscommerce.com tu tapes ecotax ou tu te sert de ce lien
paddybl
attention j'ai introduit une erreur sur la dernière modif.
trouver le bout de code comme indiqué par steph44
CODE
{
// We show them all
        $listing_sql = "select " . $select_column_list . " p.products_id, p.manufacturers_id, p.products_price, p.ecotax_rates_id, p.products_tax_class_id, IF(s.status, s.specials_new_products_price, NULL) as specials_new_products_price, IF(s.status, s.specials_new_products_price, p.products_price) as final_price from " . TABLE_PRODUCTS_DESCRIPTION . " pd, " . TABLE_PRODUCTS . " p left join " . TABLE_MANUFACTURERS . " m on p.manufacturers_id = m.manufacturers_id left join " . TABLE_SPECIALS . " s on p.products_id = s.products_id join " . TABLE_PRODUCTS_TO_CATEGORIES . " p2c where p.products_status = '1' and p.products_id = p2c.products_id and pd.products_id = p2c.products_id and pd.language_id = '" . (int)$languages_id . "' and p2c.categories_id = '" . (int)$current_category_id . "'";
//fin modif by paddybl for ecotax
//fin modif by paddybl for ecotax en manuel

    }

et rajouter un crochet fermant à la fin ou remplacer par ce code
CODE
{
// We show them all
        $listing_sql = "select " . $select_column_list . " p.products_id, p.manufacturers_id, p.products_price, p.ecotax_rates_id, p.products_tax_class_id, IF(s.status, s.specials_new_products_price, NULL) as specials_new_products_price, IF(s.status, s.specials_new_products_price, p.products_price) as final_price from " . TABLE_PRODUCTS_DESCRIPTION . " pd, " . TABLE_PRODUCTS . " p left join " . TABLE_MANUFACTURERS . " m on p.manufacturers_id = m.manufacturers_id left join " . TABLE_SPECIALS . " s on p.products_id = s.products_id join " . TABLE_PRODUCTS_TO_CATEGORIES . " p2c where p.products_status = '1' and p.products_id = p2c.products_id and pd.products_id = p2c.products_id and pd.language_id = '" . (int)$languages_id . "' and p2c.categories_id = '" . (int)$current_category_id . "'";
}
//fin modif by paddybl for ecotax
//fin modif by paddybl for ecotax en manuel

    }

désolé de cette précipitation
-steph44
bonjour paddybl smile.gif ,

c'est tout bon biggrin.gif l'affichage des articles par fabriquant re-fonctionne smile.gif

je tien au courant si éventuellement, je trouve des petites anomalies smile.gif

bonne fin de week-end et encore merci smile.gif

steph
paddybl
salut, désolé j'étais partie faire pretty women avec ma cherie donc pour les réponse hier s'était : "l'abonné est absent pour le moment..."
javais mal recopié mon code vu que mon commentaire de fin n'était pas placé au même endroit sur ma version
allez A+ je retourne programmer de nouvelles contributions compatible (la prochaine pdf catalog compatible gif et ecotax)...
ypetrel
Bonjour à Tous,

Il reste un bug dans admin/orders.php suite à la modif pour la prise en compte du prix des options dans le total HT (modif de paddybl du 10/02/07).
Le prix de l'option d'un produit est aussi ajouté aux produits suivants.
Pour le corriger il suffit de chercher ce code :

CODE
   '        <td class="dataTableContent" align="right" valign="top"><b>' . $currencies->format($order->products[$i]['price']*$order->products[$i]['qty']+tep_get_ecotax_price_value($order->products[$i]['ecotax_rates_id'])*$order->products[$i]['qty']+$price_options, true, $order->info['currency'], $order->info['currency_value']) . '</b></td>' . "\n" .
   '        <td class="dataTableContent" align="right" valign="top"><b>' .$currencies->format(tep_add_tax($order->products[$i]['final_price']-$order->products[$i]['products_ecotax'], $order->products[$i]['tax'])* $order->products[$i]['qty']+($order->products[$i]['products_ecotax']* $order->products[$i]['qty']), true, $order->info['currency'], $order->info['currency_value']) . '</b></td>' . "\n";
      echo '      </tr>' . "\n";


et d'ajouter en dessous
CODE
      $price_options=0;

paddybl
Merci beaucoup du coup de main, je l'avais pas vu celle là.
J'ajouterai que cette modif et à faire aussi sur invoice.php,
orders_check.php,orders_check_invoice.php (pour ceux qui utilise order check) et printorder.php (pour ceux qui l'on)
pldtm
bonsoir,

petit soucis d'order total.
Voila la contrib marche nickel sur product_info.php mais dans checkout_confirmation c'est bug dans les totaux.
Normalement devraient apparaitre les rubriques suivantes soit:

sous-total (px HT + ecotaxe HT)
TVA sur ecotaxe
transport HT
Total (sous total+ transport *1.196)

soit et ce serait plus logique:
Sous total HT
ecotaxe HT
transport HT
Total TTC de tout les HT

mais voila!! c'est pas ce qui s'affiche. J'ai un sous total hors ecotaxe ajoutée, j'ai un affichage de la tva ecotaxe (on sans moque un peu) et un total general qui ne prends en compte que le ht+ transport * TVA.

J'ai beau chercher je vois pas ou ca cloche.

Dans la partie admin hormis le non fonctionnement normal dans les valeur HT et TTC rien n'apparait dans les rubriques DEEE et le calcul des totaux est faux.

Quelqu'un a t'il pu rencontrer un tel probleme ou une partie, cela m'aiderait a avancer,


merci d'avance.

pldtm
pldtm
juste un petit addon a mon message,

quand je dois saisir les infos dans ma compta c'est la deuxième possibilité" d'affichage qui m'est demandé.

Et si c'est ce que j'ai actuellement a l'écran ou la première possibilité, qui s'affiche quand un client passe une commande on perd de l'argent.

Y a t'il un commercant qui a resolu ces petits soucis???


merci
pldtm
paddybl
salut après avoir essayé de comprendre ton exemple, j'en ai conclus que tu travaillais avec avec des tarifs hors taxes, et en effet en désactivant la fonction inclure la tva dans la configuration de mabootic, j'ai constaté que les calculs semblent faux. J'ai trouvé en partie la cause, mais je préfère revérifier complètement.
En outre d'après ce que j'ai pu lire un peu partout, l'éco-participation est à inclure en TTC(tva non déductible) même si tu factures HT
a confirmer!
Je me colle dessus dès demain
A suivre
pldtm
salut,

Sur le site, effectivement je n'inclue pas l'ecotaxe dans le prix montré (c'est une taxe donc a traiter comme telle). Donc je l'affiche (ex un ecran 19" = 0.84€HT) mais l'addition avec le prix du produit se fait dans le panier et dans FEC (fast easy checkout)

en fait je travaille avec des clients pros et particuliers mais 95% pros, et en france donc avec une tva à 19.6. Donc j'affiche mes prix en HT partout sauf lorsque le client en arrive à la confirmation de commande il doit y avoir d'indiqué la TVA totale (sur HT+Transport HT+ecotaxe HT). Et pour le client particulier, il verra bien son ttc a payer dans la confirmation de commande.

L'ecotaxe est une taxe parafiscale donc je souhaite pouvoir la traiter comme l'autre taxe (TVA). C'est à dire non incluse dans le prix du produit. mais rajoutée au moment du calcul final qui doit être affiché dans les checkout. En fait L'ecotaxe HT devrait apparaitre comme un sous total 2 juste au dessous de sous total et etre intégrée dans le calcul de total general TTC.

Merci d'avance

paddybl
Bonjour à tous, désolè d'avoir trainé un peu, mais quelques petits soucis suite à une mise à jour zindows...

donc le correctif que je propose ne concerne que les personnes qui utilise des tarifs HT affiché dans le catalogue
(malgré tous ce serait bien de faire la modif quand même)

voici un lien temporaire de l'archive contenant les correctifs. je placerais celà sur oscommerce.com quand on sera sur du résultat.
http://www.mabootic.net/correctif_du_06_04_2007.zip

en se qui concerne les améliorations possibles de l'affichage des commandes et factures (TTC, HT,...), je précise que j'ai créé un additif à Ecotax disponible sur mon site( un coup d'oeil à mon profile pour l'adresse) blush.gif
n'oubliez pas de m'informer sur le bon fonctionnement de ce correctif!!!

A bientot
pldtm
salut paddybl,

je viens juste d'essayer le correctif mais ca ne marche pas (les montants affichés sont faux).
En fait voila comment devrait s'afficher le shopping cart:

Produit HT unitaire * quantité = PHT (ex: 100*2)
prix ecotaxe HT unitaire * quantité = EHT (ex: 0.84 *2)

sous total = PHT + EHT (ex: (100*2)+(0.84*2) = 201.68 HT )car la valeur de l'ecotaxe n'est pas a inclure dans le prix que ce soit pour un client particulier ou un client pro, c'est une taxe donc qui ne fait pas partie du prix du produit (qui lui varie en fonction des nego ou des tarifs constructeurs et fournisseurs) d'ou le terme "hors taxes".

et lorsque l'on commande dans les checkout on devrait avoir la même chose mais avec la tva sur PHT + EHT +shipping. la variable "ecotaxe_price" ne doit pas être incluse dans le prix du produit, avec la tva sur l'ecotaxe affichée, mais ajoutée et le calcul final se faire en ajoutant la TVA sur (le produit HT + l'ecotaxe HT+ shipping HT). La TVA sur l'ecotaxe affichée ne servant a rien.

Finalement je sais pas si je suis clair shock.gif . J'ai surtout une expérience de commerce (négoce) traditionnel avec les entreprises et les particuliers. Je ne tiens aucun magasin mais travaille dans un bureau ou je fais de l'achat vente toute la journée avec des entreprises et parfois des particuliers pour rendre service.
Ce que je sais, c'est que lorsque je montre un devis avec 102 € HT mais ecotaxe incluse et, mon concurrent montre un devis avec 100€ sans ecotaxe, c'est lui qui est prit, car un responsable de service que ce soit informatique, bureautique ou au services generaux ne cherche pas a comprendre : ce qu'il voit c'est le 100€.

J'espère que ca peut t'aider a comprendre ce qui est nécessaire( et oui je suis un commercial de base mais pas un développeur). Et c'est peut être pour cela que je trouve pas ou sont cachés les fonctions show total et ou se fait le calcul.

Je reste à ta dispo même en PM et te remercie d'avance de tous tes efforts.


pldtm


pldtm
Dans la classe order je pense qu'il n'y a rien a modifier. Par contre
Il y a une autre ligne dans general.php a modifier pour que l'affichage HT soit bon:
[codebox]$group_taxed = (DISPLAY_PRICE_WITH_TAX == 'true' || $ecotax > 0 ) ? 'true' : 'false';

switch ($group_taxed) {
case 'true':

return floatval($price) + $ecotax*$qty;
break;
case 'false':

return floatval($price);
break;[/codebox]

et la, l'affichage pour ceux qui affichent en HT sera bon... a priori!!



merci paddybl
paddybl
Salut, j'ai noté tes remarques sur la méthode d'affichage et de prise en compte de l'écotaxe, mais sans prétendre avoir TOUS compris au divers textes que je te place plus bas, je crois que si justement l'éco-participation fait parti intégrante du prix du produit

voilà ce qui me sert de base:

http://www.minefi.gouv.fr/directions_servi.../2007/cu07a.pdf

trouver sur le site du gouvernent:

http://www.ecologie.gouv.fr/article.php3?i...3215%3C/a%3E%20

et en réference la facture:

Les Recommandations de la DGCCRF

Franchement, je n'y connais pas grand chose en compta et gestion CO, mais j'ai essayè de coller au plus près des articles qui me semble ètre la référence, et sur ce coup, j'aurai besoin aussi de confirmations!!!!

excl.gif Par contre si on effectue la dernière modif que tu as indiqués celà ne fonctionnera plus lorsque l'on inclus la TVA au tarifs affiché!

SOS si quelqu'un à des infos clairs blink.gif
pldtm
salut,

je suis d'accord avec ces informations "officielles" et dans la facture de la dgccrf il y a bien une colonne de montant unitaire HT hors deee. et sur cette même facture quand tu fais des remises c'est sur le montant hors deee (tu peux pas faire de remise sur une constante).
Je pense que mes remarques vont dans le sens d'affichage de cette facture. La seule info que je rajoute a cette facture c'est le montant global des deee

Par contre l'ajout de la TVA est toujours dans le pied de devis et sur une seule ligne de TVA globale.

C'est très lourd cette xxxx de deee!!!

Pour les modifs que j'ai indiqué, je n'ai pas vérifié si ca fonctionne pour ceux qui affichent en TTC.

merci pour tes infos
paddybl
SAlut, donc sur ce coup on est quazi daccord rolleyes.gif
j'admet que c'est de ma propre initiative que je fait ajouter la tva de l'ecotax, pour 2 raisons:
c'est ma façon de montrer la "transparence" de ce décrèt, car je trouve dingue que l'on ajoute une TVA à une "taxe" même si l'on ne doit pas l'appeler comme çà!
en prenant de l'avance sur ce fait, j'imagine très bien que l'on demande un de ces 4 matins aux commercants de communiquer leurs tva hors coup d'éco-participation(normalement celle-ci ne devrait pas ètre déductible)
Si celà venait à arriver l'adaptation ne serait que plus lègère.
c'est aussi pour celà que j'ai conçut l'upgrade à ecotax. toujours dans l'idée, que si un de ces 4 matins on vous demande encore plus de détails sur les factures, le système est près.
(contenu: sous total ht+ecotax HT, Total ht+ ecotax TTC(vu que c'est non déductible), total des ecotax, possibilité de créer une écotax spécifique pour chaque produit...)
Je crains que si on venait a passer un peu plus "au vert (électoral)", pas mal de commercant (qui joue la montre) verrons "rouge".
Et je suis convaincu que ce n'est qu'un début! a quand la taxe sur les produits pétroliers, les fringues... La aussi les fillières de retraitement existe il vont vouloir leur par du gateau....
groover
j'ai essayé d'intégrer l'ecotax dans les fichiers XML tel que leguide.com ou touslesprix.com mais sans résultat.
Quel serait les modifs à apporter ?

Merci
MCS77
Salut à tous
rolleyes.gif

Pour cette contrib y a t il quelqu'un qui l' a intégrée pour une MS1 ?
merci
Au plaisir de vous relire...
A++++
paddybl
Salut à tous, je me fais rare en ce moment (projet immobilier), donc désolè pour les réponse tardives

CITATION(groover @ 22 May 2007, 18:22) [snapback]236602[/snapback]
j'ai essayé d'intégrer l'ecotax dans les fichiers XML tel que leguide.com ou touslesprix.com mais sans résultat.
Quel serait les modifs à apporter ?

Merci


J'ai bien conçut une version qui actualise les prix pour le fichier xml de leguide.com et comme pour d'autres comparateurs, mais il y à quelques temps, j'avais demandé à la communauté si vous étiez au courant des types et infos à transmettre dans ce dit fichier: pas de réponse.
donc je n'ai pas sorti la contrib.

CITATION
Pour cette contrib y a t il quelqu'un qui l' a intégrée pour une MS1 ?
merci
Au plaisir de vous relire...


Ce que je peux dire: J'ai développé Ecotax avec la ms2.2. N'ayant jamais installé de ms1 ("trop jeune" dans cette aventure), je ne connais pas les différences de structure de celle-ci. Je dirais malgré tous qu'en programmation tout est possible en ce plongeant dans le code, mais voilà, il faut sauter à l'eau, et je n'aurais pas le temps. Je suis déjà en retard sur la sortie de la version creloaded (pour les raisons citées ci dessus), donc je te souhaite bon courage en espèrant que la communauté pourra t'aider aussi.
groover
les contribs pour les comparateurs existent déjà. (xml_guide...) il suffirait juste d'y rajouter l'écotaxe dans le prix pour que le total TTC apparaisse dans le comparateur.
j'ai rajouté ecotax_rates_id dans la requête, j'ai modifié le calcul de la taxe
CODE
$price = tep_add_tax($products['products_price'], tep_get_tax_rate($products['products_tax_class_id']),$products['ecotax_rates_id']);

Mais ça ne marche pas !!!!

Aurais je oublié quelque chose ?
paddybl
salut groover,
la fonction tep_add_tax() ne sait pas gérer l'écotax, elle ajoute juste la tva
mais pourquoi pas comme celà
CODE
$ecotax=tep_get_ecotax_price_value($products['ecotax_rates_id'])+tep_get_ecotax_taxable($products['ecotax_rates_id']);
$price = tep_add_tax($products['products_price'], tep_get_tax_rate($products['products_tax_class_id']);
$price+=$ecotax;

mais d'après ce que j'avais entendu dire, il fallait créer un champ xml, spécial indiquant l'écotax (enfin tu là au-dessus, si besoin).
A confirmer
groover
ok je vais essayé cela pendant ce week end.

Pour le champ en + , je vais regarder ça

Merci
ypetrel
Bonjour Paddybl et bonjour à tous,

Je reviens sur les ondes avec un souci un peu gratiné.
En effet, quand on fait une vente sur une autre zone fiscale que la France (DOM-TOM, étranger) avec un produit soumis à écotax le total de la commande affiche la TVA de l'écotax (est-ce normal) avec comme description : "Taux de taxe inconnue".
Doit-on calculer la TVA de l'écotax lors d'une vente non soumise à TVA ? Si oui comment faire pour afficher la bonne description de la TVA ? Sinon comment faire pour supprimer la TVA de l'écotax ?
Merci d'avance de vos éclaircissement sur le sujet on sèche bien la-dessus.

Une question plus générique pour l'auteur Paddybl.
Pourquoi avoir choisi d'enregistrer systématiquement l'écotax du produit en TTC dans la commande plutôt qu'en HT qui semble le standard de fonctionnement d'oscommerce.
Merci également à toi de nous éclairer sur les raisons de ton choix.
Cordialement
groover
Pour l'intégration de l'écotaxe dans leguide.com (ou autre)

Voici ce que dit leguide.com
CITATION
Montant en euros de l’éco-participation pour les Déchets d’Equipements Electriques et Electroniques (DEEE).

Cas 1- L’offre entre dans la définition des EEE et le prix de l’offre inclus le montant de l’eco-participation : Renseignez le champ D3E à " - 2 "
Cas 2 - L’offre entre dans la définition des EEE et le prix de l’offre n’inclus pas le montant de l’eco-participation : Renseignez le champ D3E avec le montant de l’eco-participation
Cas 3 - L’offre n’entre pas dans la définition des EEE : Renseignez le champ D3E à " 0 ".


Donc pour le cas n°1, faire comme paddybl le dit précedemment

CODE
$ecotax=tep_get_ecotax_price_value($products['ecotax_rates_id'])+tep_get_ecotax_taxable($products['ecotax_rates_id']);
$price = tep_add_tax($products['products_price'], tep_get_tax_rate($products['products_tax_class_id']);
$price+=$ecotax;

et vers 160, rajouter
CODE
echo '<D3E>'-2'</d3e>'.chr(10);



Pour le cas n° 2, rajouter ceci après //calcul des prix
CODE
$ecotax=tep_get_ecotax_price_value($products['ecotax_rates_id'])+tep_get_ecotax_taxable($products['ecotax_rates_id']);


et vers 160, rajouter
CODE
echo '<D3E>'.$ecotax.'</d3e>'.chr(10);


bon code
paddybl
CITATION(ypetrel @ 15 Jun 2007, 10:07) [snapback]239908[/snapback]
Bonjour Paddybl et bonjour à tous,

Je reviens sur les ondes avec un souci un peu gratiné.
En effet, quand on fait une vente sur une autre zone fiscale que la France (DOM-TOM, étranger) avec un produit soumis à écotax le total de la commande affiche la TVA de l'écotax (est-ce normal) avec comme description : "Taux de taxe inconnue".

salut, comme je l'ai expliqué, je suis un peu débordé en ce moment et hélas pas par l'informatique.
concernant ce cas, dés le début de la creation d'Ecotax, j'ai réflechi au problème (sans toutefois l'approfondir plus depuis) des pays non soumis à l'ecoparticipation, ou ayant des taux de tva différents(voir sans)
donc un petit flashback au mois de décembre (houla ca date shock.gif )
l'astuce c'est de créer dans les taux d'écotax (lieux/taxes->taux ecotax) la copie "générique" de tes taux pour la zone correspond au pays désiré.
exemple:
taux pour la france
Catégorie 3 3.7 Petits périphériques : webcam, souris, clavier, haut parleur pour ordinateur, casque,microphone France Métropolitaine 19.600% 0.0800
taux (générique) pour un autre pays de la communauté européenne
Catégorie 3 3.7 Petits périphériques informatique (union européenne) European Union 17.500% 8.5000
attention toutefois au fait que tu n'as la possiblitité de créér qu' un seul taux "génerique" pour une même catégorie est code de catégorie : (catégorie 3 et code 3.7 dans l'exemple)
tu peux malgré tous créer autant de taux que tu veux pour des zones différentes. a toi de placer tes pays dans ces zones précises.

évidemment,l'affichage et le calcul du taux ecotax ne pourra se faire correctemment que lorsque l'utilisateur sera authentifié

c'est certainement perfectible mais à l'époque c'est la seul solution que j'avais trouvé.
CITATION
Doit-on calculer la TVA de l'écotax lors d'une vente non soumise à TVA ? Si oui comment faire pour afficher la bonne description de la TVA ? Sinon comment faire pour supprimer la TVA de l'écotax ?
Merci d'avance de vos éclaircissement sur le sujet on sèche bien la-dessus.


d'après les infos que j'avais collecté sur l'éco-participation, la tva est ajouté à l'écotax
c'est une somme ttc que tu collectes lors de la vente, peu importe ton mode de facturation (ttc ou ht)
pour afficher la bonne description voir explication du dessus
CITATION
Une question plus générique pour l'auteur Paddybl.
Pourquoi avoir choisi d'enregistrer systématiquement l'écotax du produit en TTC dans la commande plutôt qu'en HT qui semble le standard de fonctionnement d'oscommerce.
Merci également à toi de nous éclairer sur les raisons de ton choix.
Cordialement

pour les raisons ci-dessus (somme ttc que tu collectes ), malgré tous les taux d'ecotax sont affiché en HT dans le tableau récapitulatif des eco-participations.
groover
Suite à la facturation d'un de mes fournisseurs, je me suis aperçu que ses taxes DEEE ne correspondaient pas aux miennes.
Petit coup de fil et on me dit qu'ils appliquent une autre grille d'un autre éco-organisme. voir ICI

il faut donc adapter ses eco taxes selon ce que le fournisseur utilise.
Si on a plusieurs fournisseurs qui utilisent des grilles différentes (comme c'est mon cas)... Ca se complique
paddybl
Salut groover, c'est pour celà que dernièrement j'ai mis en place un additif à ecotax permettant de créer des tarifs d'éco-participations personnalisés par produit en plus des taux génériques d'Ecotax (ecotax Plus!, voir site) malgré tout je ne vois pas de solution au problème lorsque tu as plusieurs fournisseurs. il faudrait que la gestion des stocks puisse permettre d'affecter une ecotaxe par produit, ce qui d'un point de vue conception ne me semble pas possible(ou difficile). le mieux serait d'adapter ton tarif personnalisé en fonction de tes arrivages (et donc de tes ecotaxes).
Mais là, je trouve que le fait de changer tes tarifs (affichés) cotés clients de manière aléatoire risque de dérouter ceux-ci et que tu aies des réclamations en permanence. DE plus bonjour la gestion des réactualisations de tarif!
A vos avis.... blush.gif
marquito
Bonjour,

Je tiens moi aussi à vous féliciter pour cette contribution très utile !

j'ai installé la dernière version 1.3, je me permets de vous informer qu'il y a un détail pour l'affichage des images... vous avez noté \images en installant votre contrib sur un catalogue sans modif les images ne sont pas trouvées le ( \ ) est en trop.

Comme je le disais c'est un détail mais une info rolleyes.gif

Parcontre moi j'ai un gros soucis shock.gif

Mais prix sont affichés en HT que ce soit sur product_info.php ou dans la popup les deux prix sont en HT ?
Vous voyez où est mon erreur sur quel fichier je dois me concentrer ?

INFO je ne sais pas si c'est la raison mais ça pourrait provenir de la BDD ? (j'utilise un préfixe pour les tables)
pour les préfixes j'ai bien sur mis le bon chemin dans le fichier data_table
[codebox]
define('TABLE_ECOTAX_CLASS', DB_TABLE_PREFIX . 'ecotax_class');
define('TABLE_ECOTAX_RATES', DB_TABLE_PREFIX . 'ecotax');[/codebox]
et renommer les tables avec mon préfixe

Merci pour vos conseils
Cordialement
marquito
Mille excuses blush.gif j'ai vus mon erreur
et encore bravo pour cette contrib

Par contre j'ai un soucis dans l'admin (admin/categories.php) j'ai dans l'ordre :

Classe Fiscale : TVA normal (19.6)
Taux écotaxe : Lave linge
Prix du produit (HT) :237.4549
Prix du produit (TTC) :290.0000

Donc résultat faux le HT devrait être à 242.4749

Si je note Taux écotaxe : non assujettie mon HT et mon TTC s'affichent correctement

Il y a une astuce que j'aurai zappé ??

Merci pour vos conseils


miko51
Probleme dans qq fichiers.
La partie admin a l'air de bien fonctionner, de même que la page products-info.
Mais des qu'on arrive dans le pannier c'est la cata, sur shoping_card l'ecotaxe affiche +nous contacter malgrer la presence de l'ecotax sur le produit (oui, j'ai verifier les zones).
Sur checkout_confirmation pas de trace de l'ecotaxe et lors du payement on paye sans.
sad.gif
Une solution, une idee, qq chose pour m'aider ?

Merci d'avance
paddybl
Salut, alors par élimination:
ton client( pays) ainsi que ta boutique doivent faire partie de la zone concerné par l'ecotax.
dans taux ecotax verifie la zone qui concerne ces taux
si je ne me trompe pas retrouve sur ce poste l'explication pour la modif.

si celà est ok, est ce que le prix apparait dans la boxe panier avec le bon prix ? dans les 2 cas suivant. identifié et non.

A suivre
Rockfell
Bonjour, tout d'abord bravo pour cette contribution et le boulot que celà représente.

Je me suis lancé dans son installation mais il me reste 2 soucis majeurs :

- Lorsque j'ajoute un produit dans le panier, son prix augmente à chaque fois de 13 € (catalog/includes/boxes/shopping_cart.php).
Idem sur la page catalog/checkout_payment.php, 13 euros en + dans le détail sur le prix de chaque article. Je n'y comprend rien. Ce n'était pas le cas avant sad.gif

- 2ème problème sur la page catalog/shopping_cart.php, quand j'ajoute un produit dans le panier, j'ai le message d'erreur suivant lorsque je ne suis pas connecté à un compte :

Warning: reset() [function.reset]: Passed variable is not an array or object in /home/www/5237f5cd60015e28b129c50f18d8be6c/web/catalog/includes/modules/order_total/ot_ecotax.php on line 29

Warning: Variable passed to each() is not an array or object in /home/www/5237f5cd60015e28b129c50f18d8be6c/web/catalog/includes/modules/order_total/ot_ecotax.php on line 30

Une solution ? Voir deux ? Merci. rolleyes.gif
paddybl
Concernant ces erreurs, je pense qu'il faut revoir les 2 fichieers de class
/includes/classes/order.php
et
/includes/classes/shopping_cart.php

le mieux et encore de remplacer ces fichiers par ceux fourni dans l'archive.
il est vrai que cette contrib n'est pas des plus simple à installer et je ne vous parle même pas des versions creloaded shock.gif rolleyes.gif

bon courage
Thierry_ZT
Bonsoir et bravo pour cette contribution.

Je suis en train de mettre en place une boutique, et j'ai un soucis avec ecotax_v1.3_by_paddybl.

Je développe sur la dernière version de Osc MS2 (version de base) avec la contrib osCommerce_PayPal_IPN_v2.2.

Il y a juste un petit problème sur l'affichage de la facture, il n'apparait pas la taxe ni le code DEEE quand je rêgle avec la contrib paypal, par contre, si je paye par chéque, ça apparait bien.

J'ai bien fouillé dans le forum, mais je n'ai rien trouvé à ce sujet.

Je compte par la suite passer sur la MAJ ECOTAX Plus! mais je souhaite résoudre ce problème avant.

pour info, les 2 screenshots:

par chêque
par paypal

Merci de votre aide et encore bravo.
paddybl
bonsoir, je pense qu'il est tous simplement nécessaire d'adapter osCommerce_PayPal_IPN_v2.2 pour pouvoir gérer l'Ecotax.
si je me rappel bien le traitement de la commande n'est plus effectué par osC mais par la class de paypal, qui évidement n'est pas adapté.


Thierry_ZT
Merci paddybl pour ta réponse.

Mais je ne connais pas encore bien OscCommerce. Pourrais-tu m'aiguiller sur les démarches à effectuer pour pouvoir rendre PayPal IPN compatible avec l'ecotax (fichiers à modifier, quoi chercher dans le code,...)

Merci à l'avance.

paddybl
Pour celà il faut s'inspirer de la classe order.php pour récupérer l'ecotax et effectuer le calcul. et ceci sur le fichier ipn.php et paypal_ipn.php
Ceci est une version "bas débit" de notre forum. Pour voir la version complète avec plus d'informations, la mise en page et les images, veuillez cliquer ici.
Invision Power Board © 2001-2013 Invision Power Services, Inc.