osCommerce France : Accueil Forum Portail osCommerce France Réponses aux questions Foire aux contributions

Bienvenue invité ( Connexion | Inscription )

 
Reply to this topicStart new topic
> [résolu]Pb avec menu total commande dans l'admin
hermosilla
posté 9 Aug 2004, 23:19
Message #1


Ceinture orange+ OSC
Icône de groupe

Groupe : Membres
Messages : 400
Inscrit : 10-February 04
Lieu : idf france
Membre no 1963



voilà en voulant changer dans le menu => Module=>Total commande, l'ordre de tri de la ligne TVA.

Je me suis aperçu que deux lignes commentées du fichier:

\catalog\includes\modules\order_total\ot_tax.php

m'en empêchaient, une fois décommentée, plus de pb.


Cependant, j'ai beau cherché, je me demande quelle contribution m'avait fait commentée ces deux lignes question.gif question.gif

voilà mon fichier, si quelqu'un a une idée pour la contrib:

CODE
<?php
/*
 $Id: ot_tax.php,v 1.14 2003/02/14 05:58:35 hpdl Exp $

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

 Copyright (c) 2003 osCommerce

 Released under the GNU General Public License
*/

 class ot_tax {
   var $title, $output;

   function ot_tax() {
     $this->code = 'ot_tax';
     $this->title = MODULE_ORDER_TOTAL_TAX_TITLE;
     $this->description = MODULE_ORDER_TOTAL_TAX_DESCRIPTION;
     $this->enabled = ((MODULE_ORDER_TOTAL_TAX_STATUS == 'true') ? true : false);
     $this->sort_order = MODULE_ORDER_TOTAL_TAX_SORT_ORDER;

     $this->output = array();
   }

   function process() {
     global $order, $currencies;

     reset($order->info['tax_groups']);
     while (list($key, $value) = each($order->info['tax_groups'])) {
//        if ($value > 0) {
         $this->output[] = array('title' => $key . ':',
                                 'text' => $currencies->format($value, true, $order->info['currency'], $order->info['currency_value']),
                                 'value' => $value);
       }
     }
   }

   function check() {
     if (!isset($this->_check)) {
       $check_query = tep_db_query("select configuration_value from " . TABLE_CONFIGURATION . " where configuration_key = 'MODULE_ORDER_TOTAL_TAX_STATUS'");
       $this->_check = tep_db_num_rows($check_query);
     }

     return $this->_check;
   }

   function keys() {
     return array('MODULE_ORDER_TOTAL_TAX_STATUS', 'MODULE_ORDER_TOTAL_TAX_SORT_ORDER');
   }

   function install() {
     tep_db_query("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, set_function, date_added) values ('Affichage de la taxe', 'MODULE_ORDER_TOTAL_TAX_STATUS', 'true', 'Voulez-vous montrer la taxe de la commande ?', '6', '1','tep_cfg_select_option(array(\'true\', \'false\'), ', now())");
     tep_db_query("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, date_added) values ('Ordre de tri', 'MODULE_ORDER_TOTAL_TAX_SORT_ORDER', '3', 'Ordre de tri pour l\'affichage (Le plus petit nombre est montr&eacute; en premier).', '6', '2', now())");
   }

   function remove() {
     tep_db_query("delete from " . TABLE_CONFIGURATION . " where configuration_key in ('" . implode("', '", $this->keys()) . "')");
//    }
 }
?>


sinon l'erreur produit par ces deux commentaires est la suivante (quand on essaye de modifier l'ordre de tri de la tva sans décommenter):

QUOTE
Fatal error: Call to undefined function: check() in d:\web\easyphp1-7\www\catalog\aadmino\modules.php on line 146
excl.gif


--------------------
Version Osc 2.2 MS2 Delaballe
Go to the top of the page
 
hermosilla
posté 24 Aug 2004, 11:12
Message #2


Ceinture orange+ OSC
Icône de groupe

Groupe : Membres
Messages : 400
Inscrit : 10-February 04
Lieu : idf france
Membre no 1963



Quelq'un peut il me mettre en ligne son fichier:

catalog\admin\modules.php en ligne

Je voudrais vérifier si les lignes:

134
CODE
//      if ($module->check() > 0) {


&

183
CODE
//  }


ne sont pas commentées.

Si elles ne le sont pas, pouvez vous me dire si votre menu MODULE=>Total commande fonctionne bien dans l'admin.

merci du coup de main.




--------------------
Version Osc 2.2 MS2 Delaballe
Go to the top of the page
 
JeanLuc
posté 24 Aug 2004, 12:34
Message #3


2eme dan OSC
Icône de groupe

Groupe : Membres VIP
Messages : 3526
Inscrit : 12-June 03
Lieu : Montpellier
Membre no 1239



Rien ne doit être commenté...
D'autant que les 2 lignes commentées le sont dans deux méthodes différentes....
C'est n'importe quoi... confused.gif


--------------------
JeanLuc
Pour info: FAQ et doc pour MS1 - doc pour MS2
Go to the top of the page
 
hermosilla
posté 24 Aug 2004, 21:06
Message #4


Ceinture orange+ OSC
Icône de groupe

Groupe : Membres
Messages : 400
Inscrit : 10-February 04
Lieu : idf france
Membre no 1963



Ba, je suis d'accord avec toi Jean Luc, c'est bizarre que lignes suivante soient commentées:

Fichier catalog\admin\modules.php

Ligne 134:

CODE
   $class = substr($file, 0, strrpos($file, '.'));
   if (tep_class_exists($class)) {
     $module = new $class;
//      if ($module->check() > 0) {
       if ($module->sort_order > 0) {
         $installed_modules[$module->sort_order] = $file;
       } else {


Ligne 183:

CODE
               <td class="dataTableContent"><?php echo $module->title; ?></td>
               <td class="dataTableContent" align="right"><?php if (is_numeric($module->sort_order)) echo $module->sort_order; ?></td>
               <td class="dataTableContent" align="right"><?php if (isset($mInfo) && is_object($mInfo) && ($class == $mInfo->code) ) { echo tep_image(DIR_WS_IMAGES . 'icon_arrow_right.gif'); } else { echo '<a href="' . tep_href_link(FILENAME_MODULES, 'set=' . $set . '&module=' . $class) . '">' . tep_image(DIR_WS_IMAGES . 'icon_info.gif', IMAGE_ICON_INFO) . '</a>'; } ?>&nbsp;</td>
             </tr>
<?php
   }
//  }

 ksort($installed_modules);



Fichier \catalog\includes\modules\order_total\ot_tax.php:

Ligne 31

CODE
     reset($order->info['tax_groups']);
     while (list($key, $value) = each($order->info['tax_groups'])) {
//       if ($value > 0) {
         $this->output[] = array('title' => $key . ':',
                                 'text' => $currencies->format($value, true, $order->info['currency'], $order->info['currency_value']),
                                 'value' => $value);
       }


Ligne 59

CODE
   function remove() {
     tep_db_query("delete from " . TABLE_CONFIGURATION . " where configuration_key in ('" . implode("', '", $this->keys()) . "')");
//    }
 }
?>



Problème si j'enlève les commentaires, lors de l'étape de confirmation de Commande, la tva n'apparait plus:

QUOTE
Sous-Total de la commande: 13.85Eur
Coliéco (J+3/+5) (Liv FX : 5.25 Kg): 4.80Eur
TVA ABSENTE
Total TTC: 18.65Eur



question.gif question.gif


Si je les laisse, je suis obligé de les enlenver pour modifier le menu:

Admin=>Module=>Total Commande=>TVA

Sinon message d'erreur dans l'admin:

QUOTE
Fatal error: Call to undefined function: check() in d:\web\easyphp1-7\www\catalog\aadmino\modules.php on line 146


Ligne 146:
CODE
                            'status' => $module->check());


J'y perd mon latin blush.gif


--------------------
Version Osc 2.2 MS2 Delaballe
Go to the top of the page
 
JeanLuc
posté 25 Aug 2004, 09:29
Message #5


2eme dan OSC
Icône de groupe

Groupe : Membres VIP
Messages : 3526
Inscrit : 12-June 03
Lieu : Montpellier
Membre no 1239



QUOTE
Si je les laisse, je suis obligé de les enlenver pour modifier le menu:

Admin=>Module=>Total Commande=>TVA

Sinon message d'erreur dans l'admin:


QUOTE 
Fatal error: Call to undefined function: check() in d:\web\easyphp1-7\www\catalog\aadmino\modules.php on line 146

C'est clair que la fonction check() dans le fichier catalog\admin\modules.php n'est plus définie car en enlevant plus haut la ligne if:
CODE
//      if ($module->check() > 0) {
on se retrouve avec un décalage dans les parenthèses et les fonctions plus bas sont intégrées en partie à la fonction process(). La marmelade quoi...


--------------------
JeanLuc
Pour info: FAQ et doc pour MS1 - doc pour MS2
Go to the top of the page
 
hermosilla
posté 25 Aug 2004, 10:05
Message #6


Ceinture orange+ OSC
Icône de groupe

Groupe : Membres
Messages : 400
Inscrit : 10-February 04
Lieu : idf france
Membre no 1963



a force de chercher, j'ai enfin trouver comment j'en suis arrivé a commenté bêtement ces lignes:

un vieux Post de mes tout début smile.gif

En fait au début, c'était juste pour faire apparaitre une tva à 0%= 0€ dans mes factures.

ça marche, mais bonjour le massacre au niveau du code, y plus qu'a tout reprendre et trouver une autre solution.

merci encore pour le coup de main.


--------------------
Version Osc 2.2 MS2 Delaballe
Go to the top of the page
 
hermosilla
posté 25 Aug 2004, 17:10
Message #7


Ceinture orange+ OSC
Icône de groupe

Groupe : Membres
Messages : 400
Inscrit : 10-February 04
Lieu : idf france
Membre no 1963



Bon du coup j'ai trouvé une solution qui pourra peut être intéresser les personnes en micro qui ne facture pas la TVA mais qui veulent faire apparaitre une TVA à 0% sur leurs factures.

dans Fichier catalog\admin\modules.php


Ligne 134


CODE
     if ($module->check() > 0) {


Remplacer par:

CODE
     if ($module->check() >= 0) {


et dans Fichier \catalog\includes\modules\order_total\ot_tax.php:

Ligne 31

CODE
     if ($module->check() > 0) {


Remplacer par:

CODE
     if ($module->check() >= 0) {



Voilà voilà si ça peut aider.

nota: merci à Jean Luc pour le coup de main.


--------------------
Version Osc 2.2 MS2 Delaballe
Go to the top of the page
 

Reply to this topicStart new topic
1 utilisateur(s) sur ce sujet (1 invité(s) et 0 utilisateur(s) anonyme(s))
0 membre(s) :

 



RSS Version bas débit Nous sommes le : 23rd May 2013 - 19:32
Ce site est déclaré auprès de la commision Nationale
de l'Informatique et des Libertés (déclaration n°: 1043896)