dolibarr-dev
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Dolibarr-dev] Dolibarr et Oscommerce


From: Laurent Destailleur (Eldy)
Subject: Re: [Dolibarr-dev] Dolibarr et Oscommerce
Date: Wed, 09 Aug 2006 00:33:00 +0200
User-agent: Thunderbird 1.5.0.5 (Windows/20060719)

Tahiti Rimai (Jean) a écrit :
Le fichier diff obtenu, j'espère qu'il est juste cette fois
C'est mieux, le patch passe presque mais y a encore problème. Voici les 2 manip à faire pour corriger je crois: * Peux tu effacer complètement le répertoire de référence sur ton poste et de regénérer par un checkout CVS car j'ai l'impression que le rep de référence n'était pas l'image exacte de ce qu'il y a dans le CVS (il faut une version exacte issus du CVS sans aucun rep en plus ou en moins ). Par exemple le fichier patch envoyé semble etre fait depuis une version de référence qui contient des fichiers en htdocs/oscommerce_ws/clients. Hors si il peut tres bien y avoir un tel rep dans la version modifié, il n'y en a pas dans le CVS en ce moment. Ton répertoire de référence semble donc non correct et un delete puis une recréation par un checkout CVS résoudra le problème. * Il te faut effacer du répertoire de la version modifiée tous les fichier backup *~ ou *.*~, sinon le patch considère ces fichiers comme nouveau et les embarque dans le fichier patch ce qui me les ajoute quand j'applique le patch.


Jean


------------------------------------------------------------------------

diff -Naur /home/jean/gestion/dolibarr/htdocs/oscommerce_ws/clients/fiche.php 
/home/jean/projets/dolibarr/htdocs/oscommerce_ws/clients/fiche.php
--- /home/jean/gestion/dolibarr/htdocs/oscommerce_ws/clients/fiche.php  
1969-12-31 14:00:00.000000000 -1000
+++ /home/jean/projets/dolibarr/htdocs/oscommerce_ws/clients/fiche.php  
2006-08-05 18:03:24.000000000 -1000
@@ -0,0 +1,148 @@
+<?php
+/*  Copyright (C) 2006      Jean Heimburger     <address@hidden>
+ *
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+ *
+ * $Source: 
/sources/dolibarr/dolibarr/htdocs/oscommerce_ws/clients/fiche.php,v $
+ *
+ */
+require("./pre.inc.php");
+require_once(DOL_DOCUMENT_ROOT."/societe.class.php");
+require_once("../includes/configure.php");
+
+llxHeader();
+
+if ($action == '' && !$cancel) {
+
+ if ($_GET['custid'])
+ {
+  $osc_cust = new Osc_customer($_GET['custid']);
+  $result = $osc_cust->fetch($_GET['custid']);
+
+  if ( !$result)
+ { + print '<div class="titre">Fiche client OSC : '.$osc_cust->osc_custfirstname.' '.$osc_cust->osc_custlastname.'</div><br>';
+
+      print '<table border="1" width="100%" cellspacing="0" cellpadding="4">';
+      print '<tr></tr><td width="20%">Ville</td><td 
width="80%">'.$osc_cust->osc_custcity.'</td></tr>';
+      print '<tr></tr><td width="20%">Pays</td><td 
width="80%">'.$osc_cust->osc_custcountry.'</td></tr>';
+      print '<tr></tr><td width="20%">Id OSC</td><td 
width="80%">'.$osc_cust->osc_custid.'</td></tr>';
+      print '<tr></tr><td width="20%">Téléphone</td><td 
width="80%">'.$osc_cust->osc_custtel.'</td></tr>';
+      print '<tr></tr><td width="20%">E-mail</td><td 
width="80%">'.$osc_cust->osc_custmail.'</td></tr>';
+      print "</table>";
+
+       /* 
************************************************************************** */
+ /* */ + /* Barre d'action */ + /* */ + /* ************************************************************************** */
+       print "\n<div class=\"tabsAction\">\n";
+
+         if ( $user->rights->societe->creer) {
+        print '<a class="tabAction" 
href="fiche.php?action=import&amp;custid='.$osc_cust->osc_custid.'">'.$langs->trans("Import").'</a>';
+       }
+       print "\n</div><br>\n";
+// seule action importer
+ + }
+      else
+       {
+         print "<p>ERROR 1c</p>\n";
+         dolibarr_print_error("erreur webservice ".$osc_cust->error);
+       }
+ }
+ else
+ {
+   print "<p>ERROR 1b</p>\n";
+   print "Error";
+ }
+}
+/* action Import création de l'objet product de dolibarr +*
+*/
+ if (($_GET["action"] == 'import' ) && ( $_GET["custid"] != '' ) && 
$user->rights->produit->creer)
+    {
+                 $osc_cust = new Osc_customer();
+                 $result = $osc_cust->fetch($_GET['custid']);
+               
+         if ( !$result )
+         {
+                       $societe = new Societe($db);
+               if ($_error == 1)
+               {
+                       print '<br>erreur 1</br>';
+                               exit;
+               }
+
+               /* initialisation */
+               $societe->nom = $osc_cust->osc_custsoc.' 
'.$osc_cust->osc_custlastname;
+               $societe->adresse = $osc_cust->osc_cutstreet;
+               $societe->cp = $osc_cust->osc_custpostcode;
+               $societe->ville = $osc_cust->osc_custcity;
+               $societe->departement_id = 0;
+               $societe->pays_code = $osc_cust->osc_custcodecountry;
+ $societe->tel = $osc_cust->osc_custtel; + $societe->fax = $osc_cust->osc_custfax; + $societe->email = $osc_cust->osc_custmail; + /* on force */
+                       $societe->url = '';
+                       $societe->siren = '';
+                       $societe->siret = '';
+                       $societe->ape = '';
+                       $societe->client = 1; // mettre 0 si prospect
+ } +
+                       $id = $societe->create($user);
+ + if ($id == 0)
+                   {
+                       print '<br>création réussie nouveau client/prospect '.$id.' nom 
: '.$societe->nom.'</br>';
+                   }
+                   else
+                   {
+                       if ($id == -3)
+                       {
+                           $_error = 1;
+                           $_GET["action"] = "create";
+                           $_GET["type"] = $_POST["type"];
+                       }
+                               if ($id == -2)
+                               {
+                               /* la référence existe on fait un update */
+                                $societe_control = new Societe($db);
+                                if ($_error == 1)
+                        {
+                               print '<br>erreur 1</br>';
+                                       exit;
+                        }
+                            $idp = $societe_control->fetch($socid = 
$osc_cust->osc_ref);
+                                       
+ if ($idp > 0) + { + $res = $societe->update($idp, $user);
+                                               if ($res < 0) print '<br>Erreur 
update '.$idp.'</br>';
+                                               $res = 
$osc_cust->transcode($osc_cust->custid,$idp);
+                                               if ($res < 0) print '<br>Erreur 
update '.$idp.'</br>';
+
+                                       }
+                                       else print '<br>update impossible $id : 
'.$idp.' </br>';
+                               }
+                   }
+ + }
+
+llxFooter("<em>Derni&egrave;re modification $Date: 2006/07/13 12:59:00 $ r&eacute;vision 
$Revision: 1.1 $</em>");
+?>
diff -Naur /home/jean/gestion/dolibarr/htdocs/oscommerce_ws/clients/fiche.php~ 
/home/jean/projets/dolibarr/htdocs/oscommerce_ws/clients/fiche.php~
--- /home/jean/gestion/dolibarr/htdocs/oscommerce_ws/clients/fiche.php~ 
1969-12-31 14:00:00.000000000 -1000
+++ /home/jean/projets/dolibarr/htdocs/oscommerce_ws/clients/fiche.php~ 
2006-08-05 17:31:38.000000000 -1000
@@ -0,0 +1,145 @@
+<?php
+/*  Copyright (C) 2006      Jean Heimburger     <address@hidden>
+ *
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+ *
+ * $Source: 
/sources/dolibarr/dolibarr/htdocs/oscommerce_ws/clients/fiche.php,v $
+ *
+ */
+require("./pre.inc.php");
+require_once(DOL_DOCUMENT_ROOT."/societe.class.php");
+require_once("../includes/configure.php");
+
+llxHeader();
+
+if ($action == '' && !$cancel) {
+
+ if ($_GET['custid'])
+ {
+  $osc_cust = new Osc_customer($_GET['custid']);
+  $result = $osc_cust->fetch($_GET['custid']);
+
+  if ( !$result)
+ { + print '<div class="titre">Fiche client OSC : '.$osc_cust->osc_custfirstname.' '.$osc_cust->osc_custlastname.'</div><br>';
+
+      print '<table border="1" width="100%" cellspacing="0" cellpadding="4">';
+      print '<tr></tr><td width="20%">Ville</td><td 
width="80%">'.$osc_cust->osc_custcity.'</td></tr>';
+      print '<tr></tr><td width="20%">Pays</td><td 
width="80%">'.$osc_cust->osc_custcountry.'</td></tr>';
+      print '<tr></tr><td width="20%">Id OSC</td><td 
width="80%">'.$osc_cust->osc_custid.'</td></tr>';
+      print '<tr></tr><td width="20%">Téléphone</td><td 
width="80%">'.$osc_cust->osc_custtel.'</td></tr>';
+      print '<tr></tr><td width="20%">E-mail</td><td 
width="80%">'.$osc_cust->osc_custmail.'</td></tr>';
+      print "</table>";
+
+       /* 
************************************************************************** */
+ /* */ + /* Barre d'action */ + /* */ + /* ************************************************************************** */
+       print "\n<div class=\"tabsAction\">\n";
+
+         if ( $user->rights->societe->creer) {
+        print '<a class="tabAction" 
href="fiche.php?action=import&amp;custid='.$osc_cust->osc_custid.'">'.$langs->trans("Import").'</a>';
+       }
+       print "\n</div><br>\n";
+// seule action importer
+ + }
+      else
+       {
+         print "<p>ERROR 1c</p>\n";
+         dolibarr_print_error("erreur webservice ".$osc_cust->error);
+       }
+ }
+ else
+ {
+   print "<p>ERROR 1b</p>\n";
+   print "Error";
+ }
+}
+/* action Import création de l'objet product de dolibarr +*
+*/
+ if (($_GET["action"] == 'import' ) && ( $_GET["custid"] != '' ) && 
$user->rights->produit->creer)
+    {
+                 $osc_cust = new Osc_customer();
+                 $result = $osc_cust->fetch($_GET['custid']);
+               
+         if ( !$result )
+         {
+                       $societe = new Societe($db);
+               if ($_error == 1)
+               {
+                       print '<br>erreur 1</br>';
+                               exit;
+               }
+
+               /* initialisation */
+               $societe->nom = $osc_cust->osc_custsoc.' 
'.$osc_cust->osc_custlastname;
+               $societe->adresse = $osc_cust->osc_cutstreet;
+               $societe->cp = $osc_cust->osc_custpostcode;
+               $societe->ville = $osc_cust->osc_custcity;
+               $societe->departement_id = 0;
+               $societe->pays_code = $osc_cust->osc_custcodecountry;
+ $societe->tel = $osc_cust->osc_custtel; + $societe->fax = $osc_cust->osc_custfax; + $societe->email = $osc_cust->osc_custmail; + /* on force */
+                       $societe->url = '';
+                       $societe->siren = '';
+                       $societe->siret = '';
+                       $societe->ape = '';
+                       $societe->client = 1; // mettre 0 si prospect
+ } +
+                       $id = $societe->create($user);
+ + if ($id == 0)
+                   {
+                       print '<br>création réussie nouveau client/prospect '.$id.' nom 
: '.$societe->nom.'</br>';
+                   }
+                   else
+                   {
+                       if ($id == -3)
+                       {
+                           $_error = 1;
+                           $_GET["action"] = "create";
+                           $_GET["type"] = $_POST["type"];
+                       }
+                               if ($id == -2)
+                               {
+                               /* la référence existe on fait un update */
+                                $societe_control = new Societe($db);
+                                if ($_error == 1)
+                        {
+                               print '<br>erreur 1</br>';
+                                       exit;
+                        }
+                            $id = $societe_control->fetch($soc = 
$osc_cust->osc_ref);
+                                       
+ if ($id > 0) + { + $id = $societe->update($id, $user);
+                                               if ($id < 0) print '<br>Erreur update 
'.$id.'</br>';
+                                       }
+                                       else print '<br>update impossible $id : 
'.$id.' </br>';
+                               }
+                   }
+ + }
+
+llxFooter("<em>Derni&egrave;re modification $Date: 2006/07/13 12:59:00 $ r&eacute;vision 
$Revision: 1.1 $</em>");
+?>
diff -Naur /home/jean/gestion/dolibarr/htdocs/oscommerce_ws/clients/index.php 
/home/jean/projets/dolibarr/htdocs/oscommerce_ws/clients/index.php
--- /home/jean/gestion/dolibarr/htdocs/oscommerce_ws/clients/index.php  
1969-12-31 14:00:00.000000000 -1000
+++ /home/jean/projets/dolibarr/htdocs/oscommerce_ws/clients/index.php  
2006-07-29 11:34:13.000000000 -1000
@@ -0,0 +1,98 @@
+<?php
+/*  Copyright (C) 2006      Jean Heimburger     <address@hidden>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+ *
+ *
+ */
+
+require("./pre.inc.php");
+
+$langs->load("companies");
+
+llxHeader();
+
+
+if ($page == -1) { $page = 0 ; }
+$limit = $conf->liste_limit;
+$offset = $limit * $page ;
+
+print_barre_liste("Liste des clients de la boutique web", $page, "index.php");
+
+set_magic_quotes_runtime(0);
+
+//WebService Client.
+require_once(NUSOAP_PATH."nusoap.php");
+require_once("../includes/configure.php");
+
+// Set the parameters to send to the WebService
+$parameters = array("custid"=>"0");
+
+// Set the WebService URL
+$client = new soapclient(OSCWS_DIR."ws_customers.php");
+
+$result = $client->call("get_Client",$parameters );
+
+//             echo '<h2>Result</h2><pre>'; print_r($result); echo '</pre>';
+
+if ($client->fault) {
+               dolibarr_print_error("erreur de connection ");
+}
+elseif (!($err = $client->getError()) )
+{
+       $num=0;
+       if ($result) $num = sizeof($result);
+       $var=True;
+       $i=0;
+
+       if ($num > 0) {
+               print "<p><TABLE border=\"0\" width=\"100%\" cellspacing=\"0\" 
cellpadding=\"4\">";
+               print '<TR class="liste_titre">';
+               print "<td>id</td>";
+               print '<TD align="center">Société</TD>';
+               print "<td>Nom</td>";
+               print "<td>Ville</td>";
+               print "<td>Pays</td>";
+               print '<td align="center">Téléphone</td>';
+               print "</TR>\n";
+ + while ($i < $num) {
+               $var=!$var;
+
+                   print "<TR $bc[$var]>";
+                   print '<TD><a 
href="fiche.php?custid='.$result[$i][customers_id].'">'.$result[$i][customers_id]."</TD>\n";
+               print "<TD>".$result[$i][entry_company]."</TD>\n";
+               print "<TD>".$result[$i][entry_lastname]."</TD>\n";
+               print "<TD>".$result[$i][entry_city]."</TD>\n";
+               print '<TD 
align="center">'.$result[$i][countries_name]."</TD>\n";
+               print '<TD 
align="center">'.$result[$i][customers_telephone]."</TD>\n";
+               print "</TR>\n";
+               $i++;
+               }
+               print "</table></p>";
+       }
+       else {
+               dolibarr_print_error("Aucun client trouvé");
+       }
+}
+else {
+ dolibarr_print_error("Erreur service web ".$err); +}
+
+print "</TABLE>";
+
+
+llxFooter("<em>Derni&egrave;re modification $Date: 2006/07/30 12:59:00 $ r&eacute;vision 
$Revision: 1.1 $</em>");
+?>
diff -Naur /home/jean/gestion/dolibarr/htdocs/oscommerce_ws/clients/index.php~ 
/home/jean/projets/dolibarr/htdocs/oscommerce_ws/clients/index.php~
--- /home/jean/gestion/dolibarr/htdocs/oscommerce_ws/clients/index.php~ 
1969-12-31 14:00:00.000000000 -1000
+++ /home/jean/projets/dolibarr/htdocs/oscommerce_ws/clients/index.php~ 
2006-07-29 09:47:59.000000000 -1000
@@ -0,0 +1,98 @@
+<?php
+/*  Copyright (C) 2006      Jean Heimburger     <address@hidden>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+ *
+ *
+ */
+
+require("./pre.inc.php");
+
+$langs->load("companies");
+
+llxHeader();
+
+
+if ($page == -1) { $page = 0 ; }
+$limit = $conf->liste_limit;
+$offset = $limit * $page ;
+
+print_barre_liste("Liste des clients de la boutique web", $page, "index.php");
+
+set_magic_quotes_runtime(0);
+
+//WebService Client.
+require_once(NUSOAP_PATH."nusoap.php");
+require_once("../includes/configure.php");
+
+// Set the parameters to send to the WebService
+$parameters = array("custid"=>"0");
+
+// Set the WebService URL
+$client = new soapclient(OSCWS_DIR."ws_customers.php");
+
+$result = $client->call("get_Client",$parameters );
+
+//             echo '<h2>Result</h2><pre>'; print_r($result); echo '</pre>';
+
+if ($client->fault) {
+               dolibarr_print_error("erreur de connection ");
+}
+elseif (!($err = $client->getError()) )
+{
+       $num=0;
+       if ($result) $num = sizeof($result);
+       $var=True;
+       $i=0;
+
+       if ($num > 0) {
+               print "<p><TABLE border=\"0\" width=\"100%\" cellspacing=\"0\" 
cellpadding=\"4\">";
+               print '<TR class="liste_titre">';
+               print "<td>id</td>";
+               print '<TD align="center">Société</TD>';
+               print "<td>Nom</td>";
+               print "<td>Ville</td>";
+               print "<td>Pays</td>";
+               print '<td align="center">Téléphone</td>';
+               print "</TR>\n";
+ + while ($i < $num) {
+               $var=!$var;
+
+                   print "<TR $bc[$var]>";
+                   print '<TD><a 
href="fiche.php?custid='.$result[$i][customers_id].'">'.$result[$i][customers_id]."</TD>\n";
+               print "<TD>".$result[$i][entry_company]."</TD>\n";
+               print "<TD>".$result[$i][entry_lastname]."</TD>\n";
+               print "<TD>".$result[$i][entry_lastname]."</TD>\n";
+               print '<TD 
align="center">'.$result[$i][countries_name]."</TD>\n";
+               print '<TD 
align="center">'.$result[$i][customers_telephone]."</TD>\n";
+               print "</TR>\n";
+               $i++;
+               }
+               print "</table></p>";
+       }
+       else {
+               dolibarr_print_error("Aucun client trouvé");
+       }
+}
+else {
+ dolibarr_print_error("Erreur service web ".$err); +}
+
+print "</TABLE>";
+
+
+llxFooter("<em>Derni&egrave;re modification $Date: 2006/07/30 12:59:00 $ r&eacute;vision 
$Revision: 1.1 $</em>");
+?>
diff -Naur 
/home/jean/gestion/dolibarr/htdocs/oscommerce_ws/clients/osc_customer.class.php 
/home/jean/projets/dolibarr/htdocs/oscommerce_ws/clients/osc_customer.class.php
--- 
/home/jean/gestion/dolibarr/htdocs/oscommerce_ws/clients/osc_customer.class.php 
    1969-12-31 14:00:00.000000000 -1000
+++ 
/home/jean/projets/dolibarr/htdocs/oscommerce_ws/clients/osc_customer.class.php 
    2006-08-05 18:08:40.000000000 -1000
@@ -0,0 +1,174 @@
+<?php
+/*  Copyright (C) 2006      Jean Heimburger     <address@hidden>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+ *
+ * $Id: osc_customer.class.php,v 1.0 2006/07/29 12:59:00 jean Exp $
+ * $Source: 
/sources/dolibarr/dolibarr/htdocs/oscommerce_ws/clients/osc_clustomer.class.php,v
 $
+ */
+
+/**
+        \file       htdocs/oscommerce_ws/clients/osc_customer.class.php
+        \ingroup    oscommerce_ws/clients
+        \brief      Fichier de la classe des clients issus de OsCommerce
+        \version    $Revision: 1.1 $
+*/
+
+
+/**
+        \class      Osc_customer
+        \brief      Classe permettant la gestion des clients/prospects issus 
d'une base OSC
+*/
+
+class Osc_customer
+{
+       var $db;
+
+       var $osc_custid;
+       var $osc_custsoc;
+       var $osc_custfirstname;
+       var $osc_custlastname;
+       var $osc_custstreet;
+       var $osc_custpostcode;
+       var $osc_custcity;
+       var $osc_custtel;
+       var $osc_custfax;
+       var $osc_custmail;
+       var $osc_custidcountry;
+       var $osc_custcodecountry;
+       var $osc_custcountry;
+
+       var $error;
+
+    /**
+     *    \brief      Constructeur de la classe
+     *    \param      id          Id client (0 par defaut)
+     */        
+       function Osc_customer($id=0) {
+
+        global $langs;
+ + $this->osc_custid = $id ;
+
+        /* les initialisations nécessaires */
+       }
+
+
+/**
+*      \brief      Charge le client OsC en mémoire
+* \param id Id du client dans OsC +* \return int <0 si ko, >0 si ok
+*/
+   function fetch($id='')
+    {
+        global $langs;
+               global $conf;
+       
+               $this->error = '';
+               dolibarr_syslog("Osc_customer::fetch $id=$id ref=$ref");
+      // Verification parametres
+      if (! $id )
+        {
+            $this->error=$langs->trans('ErrorWrongParameters');
+            return -1;
+        }
+
+               set_magic_quotes_runtime(0);
+
+               //WebService Client.
+               require_once(NUSOAP_PATH."/nusoap.php");
+               require_once("../includes/configure.php");
+
+               // Set the parameters to send to the WebService
+               $parameters = array("custid"=>$id);
+
+               // Set the WebService URL
+               $client = new soapclient(OSCWS_DIR."/ws_customers.php");
+
+               // Call the WebSeclient->fault)rvice and store its result in 
$obj
+               $obj = $client->call("get_Client",$parameters );
+// Attention c'est un tableau !!
+
+               if ($client->fault) {
+                       $this->error="Fault detected ".$client->getError();
+                       return -1;
+               }
+               elseif (!($err=$client->getError()) ) {
+                       $this->osc_custid = $obj[0][customers_id];
+                       $this->osc_custsoc = $obj[0][entry_company];
+                       $this->osc_custfirstname = $obj[0][entry_firstname];
+                       $this->osc_custlastname = $obj[0][entry_lastname];
+                       $this->osc_custstreet = $obj[0][entry_street_address];
+                       $this->osc_custpostcode = $obj[0][entry_postcode];
+                       $this->osc_custcity = $obj[0][entry_city];
+                       $this->osc_custtel = $obj[0][customers_telephone];
+                       $this->osc_custfax = $obj[0][customers_fax];
+                       $this->osc_custmail = $obj[0][customers_email_address];
+                       $this->osc_custidcountry = $obj[0][entry_country_id];
+                       $this->osc_custcodecountry = 
$obj[0][countries_iso_code_2];
+                       $this->osc_custcountry = $obj[0][countries_name];
+                       }
+               else {
+                   $this->error = 'Erreur '.$err ;
+                       return -1;
+ } + return 0;
+       }
+
+/**
+*      \brief      Mise à jour de la table de transition
+* \param oscid Id du client dans OsC +* \param socidp champ société.idp
+*      \return     int     <0 si ko, >0 si ok
+*/
+       function transcode($oscid, $socidp)
+       {
+               global $conf;
+
+               /* suppression et insertion */
+               $sql = "DELETE FROM ".MAIN_DB_PREFIX." osc_customer WHERE osc_custid 
= ".$oscid;
+               $this->$db = $DB;
+               $result=$this->db->query($sql);
+        if ($result)
+        {
+                       print "suppression ok ".$result;
+               }
+        else
+        {
+                       print "suppression rate ".$result;
+            dolibarr_syslog("osc_customer::transcode echec suppression");
+//            $this->db->rollback();
+//            return -1;
+               }
+               $sql = "INSERT INTO ".MAIN_DB_PREFIX." osc_customer VALUES (".$oscid." , 
CURDATE() , ".$socidp.")";
+               $this->$db = $DB;
+               $result=$this->db->query($sql);
+        if ($result)
+        {
+                       print "insertion ok ". $sql."  ". $result;
+               }
+        else
+        {
+                       print "insertion rate ".$sql." , ".$result;
+            dolibarr_syslog("osc_customer::transcode echec insert");
+//            $this->db->rollback();
+//            return -1;
+               }
+       return 0;       
+     }
+
+       }
+       
+?>
diff -Naur 
/home/jean/gestion/dolibarr/htdocs/oscommerce_ws/clients/osc_customer.class.php~
 
/home/jean/projets/dolibarr/htdocs/oscommerce_ws/clients/osc_customer.class.php~
--- 
/home/jean/gestion/dolibarr/htdocs/oscommerce_ws/clients/osc_customer.class.php~
    1969-12-31 14:00:00.000000000 -1000
+++ 
/home/jean/projets/dolibarr/htdocs/oscommerce_ws/clients/osc_customer.class.php~
    2006-08-05 18:08:21.000000000 -1000
@@ -0,0 +1,176 @@
+<?php
+/*  Copyright (C) 2006      Jean Heimburger     <address@hidden>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+ *
+ * $Id: osc_customer.class.php,v 1.0 2006/07/29 12:59:00 jean Exp $
+ * $Source: 
/sources/dolibarr/dolibarr/htdocs/oscommerce_ws/clients/osc_clustomer.class.php,v
 $
+ */
+
+/**
+        \file       htdocs/oscommerce_ws/clients/osc_customer.class.php
+        \ingroup    oscommerce_ws/clients
+        \brief      Fichier de la classe des clients issus de OsCommerce
+        \version    $Revision: 1.1 $
+*/
+
+
+/**
+        \class      Osc_customer
+        \brief      Classe permettant la gestion des clients/prospects issus 
d'une base OSC
+*/
+
+class Osc_customer
+{
+       var $db;
+
+       var $osc_custid;
+       var $osc_custsoc;
+       var $osc_custfirstname;
+       var $osc_custlastname;
+       var $osc_custstreet;
+       var $osc_custpostcode;
+       var $osc_custcity;
+       var $osc_custtel;
+       var $osc_custfax;
+       var $osc_custmail;
+       var $osc_custidcountry;
+       var $osc_custcodecountry;
+       var $osc_custcountry;
+
+       var $error;
+
+    /**
+     *    \brief      Constructeur de la classe
+     *    \param      id          Id client (0 par defaut)
+     */        
+       function Osc_customer($id=0) {
+
+        global $langs;
+ + $this->osc_custid = $id ;
+
+        /* les initialisations nécessaires */
+       }
+
+
+/**
+*      \brief      Charge le client OsC en mémoire
+* \param id Id du client dans OsC +* \return int <0 si ko, >0 si ok
+*/
+   function fetch($id='')
+    {
+        global $langs;
+               global $conf;
+       
+               $this->error = '';
+               dolibarr_syslog("Osc_customer::fetch $id=$id ref=$ref");
+      // Verification parametres
+      if (! $id )
+        {
+            $this->error=$langs->trans('ErrorWrongParameters');
+            return -1;
+        }
+
+               set_magic_quotes_runtime(0);
+
+               //WebService Client.
+               require_once(NUSOAP_PATH."/nusoap.php");
+               require_once("../includes/configure.php");
+
+               // Set the parameters to send to the WebService
+               $parameters = array("custid"=>$id);
+
+               // Set the WebService URL
+               $client = new soapclient(OSCWS_DIR."/ws_customers.php");
+
+               // Call the WebSeclient->fault)rvice and store its result in 
$obj
+               $obj = $client->call("get_Client",$parameters );
+// Attention c'est un tableau !!
+
+               if ($client->fault) {
+                       $this->error="Fault detected ".$client->getError();
+                       return -1;
+               }
+               elseif (!($err=$client->getError()) ) {
+                       $this->osc_custid = $obj[0][customers_id];
+                       $this->osc_custsoc = $obj[0][entry_company];
+                       $this->osc_custfirstname = $obj[0][entry_firstname];
+                       $this->osc_custlastname = $obj[0][entry_lastname];
+                       $this->osc_custstreet = $obj[0][entry_street_address];
+                       $this->osc_custpostcode = $obj[0][entry_postcode];
+                       $this->osc_custcity = $obj[0][entry_city];
+                       $this->osc_custtel = $obj[0][customers_telephone];
+                       $this->osc_custfax = $obj[0][customers_fax];
+                       $this->osc_custmail = $obj[0][customers_email_address];
+                       $this->osc_custidcountry = $obj[0][entry_country_id];
+                       $this->osc_custcodecountry = 
$obj[0][countries_iso_code_2];
+                       $this->osc_custcountry = $obj[0][countries_name];
+                       }
+               else {
+                   $this->error = 'Erreur '.$err ;
+                       return -1;
+ } + return 0;
+       }
+
+/**
+*      \brief      Mise à jour de la table de transition
+* \param oscid Id du client dans OsC +* \param socidp champ société.idp
+*      \return     int     <0 si ko, >0 si ok
+*/
+       function transcode($oscid, $socidp)
+       {
+               global $conf;
+
+               /* suppression et insertion */
+               $sql = "DELETE FROM ".MAIN_DB_PREFIX." osc_customer WHERE osc_custid 
= ".$oscid;
+               $this->$db = $DB;
+               $result=$this->db->query($sql);
+        if ($result)
+        {
+                       print "suppression ok ".$result;
+               }
+        else
+        {
+                       print "suppression rate ".$result;
+            dolibarr_syslog("osc_customer::transcode echec suppression");
+//            $this->db->rollback();
+//            return -1;
+               }
+               $sql = "INSERT INTO ".MAIN_DB_PREFIX." osc_customer VALUES (".$oscid." , 
CURDATE() , ".$socidp.")";
+               $this->$db = $DB;
+               $result=$this->db->query($sql);
+        if ($result)
+        {
+                       print "insertion ok ". $sql."  ". $result;
+               }
+        else
+        {
+                       print "insertion rate ".$sql." , ".$result;
+            dolibarr_syslog("osc_customer::transcode echec insert");
+//            $this->db->rollback();
+//            return -1;
+               }
+       return 0;       
+     }
+
+       }
+       
+       }
+
+?>
diff -Naur /home/jean/gestion/dolibarr/htdocs/oscommerce_ws/clients/pre.inc.php 
/home/jean/projets/dolibarr/htdocs/oscommerce_ws/clients/pre.inc.php
--- /home/jean/gestion/dolibarr/htdocs/oscommerce_ws/clients/pre.inc.php        
1969-12-31 14:00:00.000000000 -1000
+++ /home/jean/projets/dolibarr/htdocs/oscommerce_ws/clients/pre.inc.php        
2006-07-29 11:38:59.000000000 -1000
@@ -0,0 +1,50 @@
+<?php
+/* Copyright (C) 2003 Rodolphe Quiedeville <address@hidden>
+ * Copyright (C) 2006 Laurent Destailleur  <address@hidden>
+ * Copyright (C) 2006 Jean Heimburger  <address@hidden>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+ *
+ * $Id: pre.inc.php,v 1.1 2006/07/13 12:59:00 eldy Exp $
+ * $Source: /sources/dolibarr/dolibarr/htdocs/oscommerce_ws/pre.inc.php,v $
+ */
+ +/**
+        \file       htdocs/oscommerce_ws/clients/pre.inc.php
+               \brief      Fichier gestionnaire du menu de gauche
+               \version    $Revision: 1.1 $
+*/
+
+require("../../main.inc.php");
+require("./osc_customer.class.php");
+
+function llxHeader($head = "", $urlp = "")
+{
+       global $user, $conf, $langs;
+       $langs->load("shop");
+       
+       top_menu($head);
+       
+       $menu = new Menu();
+       
+       $menu->add(DOL_URL_ROOT."/oscommerce_ws/index.php", 
$langs->trans("OSCommerceShop"));
+       $menu->add_submenu(DOL_URL_ROOT."/oscommerce_ws/produits/", 
$langs->trans("Products"));
+       $menu->add_submenu(DOL_URL_ROOT."/oscommerce_ws/clients/", 
$langs->trans("Clients"));
+       $menu->add_submenu(DOL_URL_ROOT."/oscommerce_ws/commandes/", 
$langs->trans("Commandes"));
+       
+       left_menu($menu->liste);
+}
+
+?>
diff -Naur 
/home/jean/gestion/dolibarr/htdocs/oscommerce_ws/clients/pre.inc.php~ 
/home/jean/projets/dolibarr/htdocs/oscommerce_ws/clients/pre.inc.php~
--- /home/jean/gestion/dolibarr/htdocs/oscommerce_ws/clients/pre.inc.php~       
1969-12-31 14:00:00.000000000 -1000
+++ /home/jean/projets/dolibarr/htdocs/oscommerce_ws/clients/pre.inc.php~       
2006-07-29 10:17:58.000000000 -1000
@@ -0,0 +1,49 @@
+<?php
+/* Copyright (C) 2003 Rodolphe Quiedeville <address@hidden>
+ * Copyright (C) 2006 Laurent Destailleur  <address@hidden>
+ * Copyright (C) 2006 Jean Heimburger  <address@hidden>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+ *
+ * $Id: pre.inc.php,v 1.1 2006/07/13 12:59:00 eldy Exp $
+ * $Source: /sources/dolibarr/dolibarr/htdocs/oscommerce_ws/pre.inc.php,v $
+ */
+ +/**
+        \file       htdocs/oscommerce_ws/clients/pre.inc.php
+               \brief      Fichier gestionnaire du menu de gauche
+               \version    $Revision: 1.1 $
+*/
+
+require("../../main.inc.php");
+require("./osc_customer.class.php");
+
+function llxHeader($head = "", $urlp = "")
+{
+       global $user, $conf, $langs;
+       $langs->load("shop");
+       
+       top_menu($head);
+       
+       $menu = new Menu();
+       
+       $menu->add(DOL_URL_ROOT."/oscommerce_ws/index.php", 
$langs->trans("OSCommerceShop"));
+       $menu->add_submenu(DOL_URL_ROOT."/oscommerce_ws/produits/", 
$langs->trans("Products"));
+       $menu->add_submenu(DOL_URL_ROOT."/oscommerce_ws/clients/", 
$langs->trans("Clients"));
+       
+       left_menu($menu->liste);
+}
+
+?>
diff -Naur /home/jean/gestion/dolibarr/htdocs/oscommerce_ws/commandes/fiche.php 
/home/jean/projets/dolibarr/htdocs/oscommerce_ws/commandes/fiche.php
--- /home/jean/gestion/dolibarr/htdocs/oscommerce_ws/commandes/fiche.php        
1969-12-31 14:00:00.000000000 -1000
+++ /home/jean/projets/dolibarr/htdocs/oscommerce_ws/commandes/fiche.php        
2006-08-05 16:21:51.000000000 -1000
@@ -0,0 +1,146 @@
+<?php
+/*  Copyright (C) 2006      Jean Heimburger     <address@hidden>
+ *
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+ *
+ * $Source: 
/sources/dolibarr/dolibarr/htdocs/oscommerce_ws/commandes/fiche.php,v $
+ *
+ */
+require("./pre.inc.php");
+require_once(DOL_DOCUMENT_ROOT."/commande/commande.class.php");
+require_once("../includes/configure.php");
+
+llxHeader();
+
+if ($action == '' && !$cancel) {
+
+ if ($_GET["orderid"])
+ {
+  $osc_order = new Osc_order($_GET["orderid"]);
+  $result = $osc_order->fetch($_GET["orderid"]);
+
+  if ( !$result)
+ { + print '<div class="titre">Fiche commande OSC : '.$osc_order->osc_orderid.'</div><br>';
+
+      print '<table border="1" width="100%" cellspacing="0" cellpadding="4">';
+      print '<tr></tr><td width="20%">client OSC</td><td 
width="80%">'.$osc_order->osc_custid.'</td></tr>';
+      print '<tr></tr><td width="20%">Nom client</td><td 
width="80%">'.$osc_order->osc_custname.'</td></tr>';
+      print '<tr></tr><td width="20%">Montant</td><td 
width="80%">'.$osc_order->osc_ordertotal.'</td></tr>';
+      print '<tr></tr><td width="20%">Date commande</td><td 
width="80%">'.$osc_order->osc_orderdate.'</td></tr>';
+      print '<tr></tr><td width="20%">Méthode de paiement</td><td 
width="80%">'.$osc_order->osc_orderpaymet.'</td></tr>';
+      print "</table>";
+
+       /* 
************************************************************************** */
+ /* */ + /* Barre d'action */ + /* */ + /* ************************************************************************** */
+       print "\n<div class=\"tabsAction\">\n";
+
+         if ( $user->rights->commande->creer) {
+        print '<a class="tabAction" 
href="fiche.php?action=import&amp;orderid='.$osc_order->osc_orderid.'">'.$langs->trans("Import").'</a>';
+       }
+       print "\n</div><br>\n";
+// seule action importer
+ + }
+      else
+       {
+         print "<p>ERROR 1c</p>\n";
+         dolibarr_print_error("erreur webservice ".$osc_order->error);
+       }
+ }
+ else
+ {
+   print "<p>ERROR 1b</p>\n";
+   print "Error";
+ }
+}
+/* action Import création de l'objet product de dolibarr +*
+*/
+ if (($_GET["action"] == 'import' ) && ( $_GET["orderid"] != '' ) && 
$user->rights->commande->creer)
+    {
+                 $osc_order = new osc_order();
+                 $result = $osc_order->fetch($_GET["orderid"]);
+ print '<br>on passe 1</br>'; + if ( !$result )
+         {
+                       $commande = new Commande($db);
+               if ($_error == 1)
+               {
+                       print '<br>erreur 1</br>';
+                               exit;
+               }
+               print '<br>on passe 2</br>';
+               /* initialisation */
+               $societe->nom = $osc_order->osc_ordersoc.' 
'.$osc_order->osc_orderlastname;
+               $societe->adresse = $osc_order->osc_cutstreet;
+               $societe->cp = $osc_order->osc_orderpostcode;
+               $societe->ville = $osc_order->osc_ordercity;
+               $societe->departement_id = 0;
+               $societe->pays_code = $osc_order->osc_ordercodecountry;
+ $societe->tel = $osc_order->osc_ordertel; + $societe->fax = $osc_order->osc_orderfax; + $societe->email = $osc_order->osc_ordermail; + /* on force */
+                       $societe->url = '';
+                       $societe->siren = '';
+                       $societe->siret = '';
+                       $societe->ape = '';
+                       $societe->client = 1; // mettre 0 si prospect
+ } + print '<br>on passe 3</br>';
+                       $id = $societe->create($user);
+ + if ($id > 0)
+                   {
+                       print '<br>création réussie nouveau client/prospect '.$id.' nom 
: '.$societe->nom.'</br>';
+                               if ($id > 0)  exit;
+                   }
+                   else
+                   {
+                       if ($id == -3)
+                       {
+                           $_error = 1;
+                           $_GET["action"] = "create";
+                           $_GET["type"] = $_POST["type"];
+                       }
+                               if ($id == -2)
+                               {
+                               /* la référence existe on fait un update */
+                                $societe_control = new Societe($db);
+                                if ($_error == 1)
+                        {
+                               print '<br>erreur 1</br>';
+                                       exit;
+                        }
+                            $id = $societe_control->fetch($ref = 
$osc_order->osc_ref);
+                                       
+ if ($id > 0) + { + $id = $societe->update($id, $user);
+                                               if ($id < 0) print '<br>Erreur update 
'.$id.'</br>';
+                                       }
+                                       else print '<br>update impossible $id : 
'.$id.' </br>';
+                               }
+                   }
+ + }
+
+llxFooter("<em>Derni&egrave;re modification $Date: 2006/07/13 12:59:00 $ r&eacute;vision 
$Revision: 1.1 $</em>");
+?>
diff -Naur 
/home/jean/gestion/dolibarr/htdocs/oscommerce_ws/commandes/fiche.php~ 
/home/jean/projets/dolibarr/htdocs/oscommerce_ws/commandes/fiche.php~
--- /home/jean/gestion/dolibarr/htdocs/oscommerce_ws/commandes/fiche.php~       
1969-12-31 14:00:00.000000000 -1000
+++ /home/jean/projets/dolibarr/htdocs/oscommerce_ws/commandes/fiche.php~       
2006-08-05 15:59:28.000000000 -1000
@@ -0,0 +1,146 @@
+<?php
+/*  Copyright (C) 2006      Jean Heimburger     <address@hidden>
+ *
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+ *
+ * $Source: 
/sources/dolibarr/dolibarr/htdocs/oscommerce_ws/commandes/fiche.php,v $
+ *
+ */
+require("./pre.inc.php");
+require_once(DOL_DOCUMENT_ROOT."/commande/commande.class.php");
+require_once("../includes/configure.php");
+
+llxHeader();
+
+if ($action == '' && !$cancel) {
+
+ if ($_GET["orderid"])
+ {
+  $osc_order = new Osc_order($_GET["orderid"]);
+  $result = $osc_order->fetch($_GET["orderid"]);
+
+  if ( !$result)
+ { + print '<div class="titre">Fiche commande OSC : '.$osc_order->osc_orderid.'</div><br>';
+
+      print '<table border="1" width="100%" cellspacing="0" cellpadding="4">';
+      print '<tr></tr><td width="20%">client OSC</td><td 
width="80%">'.$osc_order->osc_custid.'</td></tr>';
+      print '<tr></tr><td width="20%">Nom client</td><td 
width="80%">'.$osc_order->osc_custname.'</td></tr>';
+      print '<tr></tr><td width="20%">Montant</td><td 
width="80%">'.$osc_order->osc_ordertotal.'</td></tr>';
+      print '<tr></tr><td width="20%">Date commande</td><td 
width="80%">'.$osc_order->osc_orderdate.'</td></tr>';
+      print '<tr></tr><td width="20%">Méthode de paiement</td><td 
width="80%">'.$osc_order->osc_orderpaymet.'</td></tr>';
+      print "</table>";
+
+       /* 
************************************************************************** */
+ /* */ + /* Barre d'action */ + /* */ + /* ************************************************************************** */
+       print "\n<div class=\"tabsAction\">\n";
+
+         if ( $user->rights->commande->creer) {
+        print '<a class="tabAction" 
href="fiche.php?action=import&amp;orderid='.$osc_order->osc_orderid.'">'.$langs->trans("Import").'</a>';
+       }
+       print "\n</div><br>\n";
+// seule action importer
+ + }
+      else
+       {
+         print "<p>ERROR 1c</p>\n";
+         dolibarr_print_error("erreur webservice ".$osc_order->error);
+       }
+ }
+ else
+ {
+   print "<p>ERROR 1b</p>\n";
+   print "Error";
+ }
+}
+/* action Import création de l'objet product de dolibarr +*
+*/
+ if (($_GET["action"] == 'import' ) && ( $_GET["orderid"] != '' ) && 
$user->rights->produit->creer)
+    {
+                 $osc_order = new osc_order();
+                 $result = $osc_order->fetch($_GET["orderid"]);
+ print '<br>on passe 1</br>'; + if ( !$result )
+         {
+                       $societe = new Societe($db);
+               if ($_error == 1)
+               {
+                       print '<br>erreur 1</br>';
+                               exit;
+               }
+               print '<br>on passe 2</br>';
+               /* initialisation */
+               $societe->nom = $osc_order->osc_ordersoc.' 
'.$osc_order->osc_orderlastname;
+               $societe->adresse = $osc_order->osc_cutstreet;
+               $societe->cp = $osc_order->osc_orderpostcode;
+               $societe->ville = $osc_order->osc_ordercity;
+               $societe->departement_id = 0;
+               $societe->pays_code = $osc_order->osc_ordercodecountry;
+ $societe->tel = $osc_order->osc_ordertel; + $societe->fax = $osc_order->osc_orderfax; + $societe->email = $osc_order->osc_ordermail; + /* on force */
+                       $societe->url = '';
+                       $societe->siren = '';
+                       $societe->siret = '';
+                       $societe->ape = '';
+                       $societe->client = 1; // mettre 0 si prospect
+ } + print '<br>on passe 3</br>';
+                       $id = $societe->create($user);
+ + if ($id > 0)
+                   {
+                       print '<br>création réussie nouveau client/prospect '.$id.' nom 
: '.$societe->nom.'</br>';
+                               if ($id > 0)  exit;
+                   }
+                   else
+                   {
+                       if ($id == -3)
+                       {
+                           $_error = 1;
+                           $_GET["action"] = "create";
+                           $_GET["type"] = $_POST["type"];
+                       }
+                               if ($id == -2)
+                               {
+                               /* la référence existe on fait un update */
+                                $societe_control = new Societe($db);
+                                if ($_error == 1)
+                        {
+                               print '<br>erreur 1</br>';
+                                       exit;
+                        }
+                            $id = $societe_control->fetch($ref = 
$osc_order->osc_ref);
+                                       
+ if ($id > 0) + { + $id = $societe->update($id, $user);
+                                               if ($id < 0) print '<br>Erreur update 
'.$id.'</br>';
+                                       }
+                                       else print '<br>update impossible $id : 
'.$id.' </br>';
+                               }
+                   }
+ + }
+
+llxFooter("<em>Derni&egrave;re modification $Date: 2006/07/13 12:59:00 $ r&eacute;vision 
$Revision: 1.1 $</em>");
+?>
diff -Naur /home/jean/gestion/dolibarr/htdocs/oscommerce_ws/commandes/index.php 
/home/jean/projets/dolibarr/htdocs/oscommerce_ws/commandes/index.php
--- /home/jean/gestion/dolibarr/htdocs/oscommerce_ws/commandes/index.php        
1969-12-31 14:00:00.000000000 -1000
+++ /home/jean/projets/dolibarr/htdocs/oscommerce_ws/commandes/index.php        
2006-07-29 12:12:17.000000000 -1000
@@ -0,0 +1,98 @@
+<?php
+/*  Copyright (C) 2006      Jean Heimburger     <address@hidden>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+ *
+ *
+ */
+
+require("./pre.inc.php");
+
+$langs->load("companies");
+
+llxHeader();
+
+
+if ($page == -1) { $page = 0 ; }
+$limit = $conf->liste_limit;
+$offset = $limit * $page ;
+
+print_barre_liste("Liste des commandes de la boutique web", $page, 
"index.php");
+
+set_magic_quotes_runtime(0);
+
+//WebService Client.
+require_once(NUSOAP_PATH."nusoap.php");
+require_once("../includes/configure.php");
+
+// Set the parameters to send to the WebService
+$parameters = array("orderid"=>"0");
+
+// Set the WebService URL
+$client = new soapclient(OSCWS_DIR."ws_orders.php");
+
+$result = $client->call("get_Order",$parameters );
+
+//             echo '<h2>Result</h2><pre>'; print_r($result); echo '</pre>';
+
+if ($client->fault) {
+               dolibarr_print_error("erreur de connection ");
+}
+elseif (!($err = $client->getError()) )
+{
+       $num=0;
+       if ($result) $num = sizeof($result);
+       $var=True;
+       $i=0;
+
+       if ($num > 0) {
+               print "<p><TABLE border=\"0\" width=\"100%\" cellspacing=\"0\" 
cellpadding=\"4\">";
+               print '<TR class="liste_titre">';
+               print "<td>id</td>";
+               print '<TD align="center">Commande</TD>';
+               print "<td>Client</td>";
+               print "<td>Date</td>";
+               print "<td>Montant</td>";
+               print '<td align="center">Paiement</td>';
+               print "</TR>\n";
+ + while ($i < $num) {
+               $var=!$var;
+
+                   print "<TR $bc[$var]>";
+                   print '<TD><a 
href="fiche.php?orderid='.$result[$i][orders_id].'">'.$result[$i][orders_id]."</TD>\n";
+               print "<TD>".$result[$i][customers_name]."</TD>\n";
+               print "<TD>".$result[$i][date_purchased]."</TD>\n";
+               print "<TD>".$result[$i][value]."</TD>\n";
+               print '<TD 
align="center">'.$result[$i][payment_method]."</TD>\n";
+//             print '<TD 
align="center">'/*.$result[$i][customers_telephone]*/."</TD>\n";
+               print "</TR>\n";
+               $i++;
+               }
+               print "</table></p>";
+       }
+       else {
+               dolibarr_print_error("Aucune commande trouvée");
+       }
+}
+else {
+ dolibarr_print_error("Erreur service web ".$err); +}
+
+print "</TABLE>";
+
+
+llxFooter("<em>Derni&egrave;re modification $Date: 2006/07/30 12:59:00 $ r&eacute;vision 
$Revision: 1.1 $</em>");
+?>
diff -Naur 
/home/jean/gestion/dolibarr/htdocs/oscommerce_ws/commandes/index.php~ 
/home/jean/projets/dolibarr/htdocs/oscommerce_ws/commandes/index.php~
--- /home/jean/gestion/dolibarr/htdocs/oscommerce_ws/commandes/index.php~       
1969-12-31 14:00:00.000000000 -1000
+++ /home/jean/projets/dolibarr/htdocs/oscommerce_ws/commandes/index.php~       
2006-07-29 12:04:38.000000000 -1000
@@ -0,0 +1,98 @@
+<?php
+/*  Copyright (C) 2006      Jean Heimburger     <address@hidden>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+ *
+ *
+ */
+
+require("./pre.inc.php");
+
+$langs->load("companies");
+
+llxHeader();
+
+
+if ($page == -1) { $page = 0 ; }
+$limit = $conf->liste_limit;
+$offset = $limit * $page ;
+
+print_barre_liste("Liste des commandes de la boutique web", $page, 
"index.php");
+
+set_magic_quotes_runtime(0);
+
+//WebService Client.
+require_once(NUSOAP_PATH."nusoap.php");
+require_once("../includes/configure.php");
+
+// Set the parameters to send to the WebService
+$parameters = array("orderid"=>"0");
+
+// Set the WebService URL
+$client = new soapclient(OSCWS_DIR."ws_orders.php");
+
+$result = $client->call("get_Order",$parameters );
+
+//             echo '<h2>Result</h2><pre>'; print_r($result); echo '</pre>';
+
+if ($client->fault) {
+               dolibarr_print_error("erreur de connection ");
+}
+elseif (!($err = $client->getError()) )
+{
+       $num=0;
+       if ($result) $num = sizeof($result);
+       $var=True;
+       $i=0;
+
+       if ($num > 0) {
+               print "<p><TABLE border=\"0\" width=\"100%\" cellspacing=\"0\" 
cellpadding=\"4\">";
+               print '<TR class="liste_titre">';
+               print "<td>id</td>";
+               print '<TD align="center">Commande</TD>';
+               print "<td>Client</td>";
+               print "<td>Date</td>";
+               print "<td>Montant</td>";
+               print '<td align="center">Paiement</td>';
+               print "</TR>\n";
+ + while ($i < $num) {
+               $var=!$var;
+
+                   print "<TR $bc[$var]>";
+                   print '<TD><a 
href="fiche.php?custid='.$result[$i][orders_id].'">'.$result[$i][orders_id]."</TD>\n";
+               print "<TD>".$result[$i][customers_name]."</TD>\n";
+               print "<TD>".$result[$i][date_purchased]."</TD>\n";
+               print "<TD>".$result[$i][value]."</TD>\n";
+               print '<TD 
align="center">'.$result[$i][payment_method]."</TD>\n";
+//             print '<TD 
align="center">'/*.$result[$i][customers_telephone]*/."</TD>\n";
+               print "</TR>\n";
+               $i++;
+               }
+               print "</table></p>";
+       }
+       else {
+               dolibarr_print_error("Aucune commande trouvée");
+       }
+}
+else {
+ dolibarr_print_error("Erreur service web ".$err); +}
+
+print "</TABLE>";
+
+
+llxFooter("<em>Derni&egrave;re modification $Date: 2006/07/30 12:59:00 $ r&eacute;vision 
$Revision: 1.1 $</em>");
+?>
diff -Naur 
/home/jean/gestion/dolibarr/htdocs/oscommerce_ws/commandes/osc_customer.class.php~
 
/home/jean/projets/dolibarr/htdocs/oscommerce_ws/commandes/osc_customer.class.php~
--- 
/home/jean/gestion/dolibarr/htdocs/oscommerce_ws/commandes/osc_customer.class.php~
  1969-12-31 14:00:00.000000000 -1000
+++ 
/home/jean/projets/dolibarr/htdocs/oscommerce_ws/commandes/osc_customer.class.php~
  2006-07-29 10:53:33.000000000 -1000
@@ -0,0 +1,134 @@
+<?php
+/*  Copyright (C) 2006      Jean Heimburger     <address@hidden>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+ *
+ * $Id: osc_customer.class.php,v 1.0 2006/07/29 12:59:00 jean Exp $
+ * $Source: 
/sources/dolibarr/dolibarr/htdocs/oscommerce_ws/clients/osc_clustomer.class.php,v
 $
+ */
+
+/**
+        \file       htdocs/oscommerce_ws/clients/osc_customer.class.php
+        \ingroup    oscommerce_ws/clients
+        \brief      Fichier de la classe des clients issus de OsCommerce
+        \version    $Revision: 1.1 $
+*/
+
+
+/**
+        \class      Osc_customer
+        \brief      Classe permettant la gestion des clients/prospects issus 
d'une base OSC
+*/
+
+class Osc_customer
+{
+       var $osc_custid;
+       var $osc_custsoc;
+       var $osc_custfirstname;
+       var $osc_custlastname;
+       var $osc_custstreet;
+       var $osc_custpostcode;
+       var $osc_custcity;
+       var $osc_custtel;
+       var $osc_custfax;
+       var $osc_custmail;
+       var $osc_custidcountry;
+       var $osc_custcodecountry;
+       var $osc_custcountry;
+
+       var $error;
+
+    /**
+     *    \brief      Constructeur de la classe
+     *    \param      id          Id client (0 par defaut)
+     */        
+       function Osc_customer($id=0) {
+
+        global $langs;
+ + $this->osc_custid = $id ;
+
+        /* les initialisations nécessaires */
+       }
+
+
+/**
+*      \brief      Charge le client OsC en mémoire
+* \param id Id du client dans OsC +* \return int <0 si ko, >0 si ok
+*/
+   function fetch($id='')
+    {
+        global $langs;
+               global $conf;
+       
+               $this->error = '';
+               dolibarr_syslog("Osc_customer::fetch $id=$id ref=$ref");
+      // Verification parametres
+      if (! $id )
+        {
+            $this->error=$langs->trans('ErrorWrongParameters');
+            return -1;
+        }
+
+               set_magic_quotes_runtime(0);
+
+               //WebService Client.
+               require_once(NUSOAP_PATH."/nusoap.php");
+               require_once("../includes/configure.php");
+
+               // Set the parameters to send to the WebService
+               $parameters = array("custid"=>$id);
+
+               // Set the WebService URL
+               $client = new soapclient(OSCWS_DIR."/ws_customers.php");
+
+               // Call the WebSeclient->fault)rvice and store its result in 
$obj
+               $obj = $client->call("get_Client",$parameters );
+// Attention c'est un tableau !!
+
+               if ($client->fault) {
+                       $this->error="Fault detected ".$client->getError();
+                       return -1;
+               }
+               elseif (!($err=$client->getError()) ) {
+                       $this->osc_custid = $obj[0][customers_id];
+                       $this->osc_custsoc = $obj[0][entry_company];
+                       $this->osc_custfirstname = $obj[0][entry_firstname];
+                       $this->osc_custlastname = $obj[0][entry_lastname];
+                       $this->osc_custstreet = $obj[0][entry_street_address];
+                       $this->osc_custpostcode = $obj[0][entry_postcode];
+                       $this->osc_custcity = $obj[0][entry_city];
+                       $this->osc_custtel = $obj[0][customers_telephone];
+                       $this->osc_custfax = $obj[0][customers_fax];
+                       $this->osc_custmail = $obj[0][customers_email_address];
+                       $this->osc_custidcountry = $obj[0][entry_country_id];
+                       $this->osc_custcodecountry = 
$obj[0][countries_iso_code_2];
+                       $this->osc_custcountry = $obj[0][countries_name];
+                       }
+               else {
+                   $this->error = 'Erreur '.$err ;
+                       return -1;
+ } +echo '<h2>Request</h2><pre>' . htmlspecialchars($client->request, ENT_QUOTES) . '</pre>';
+echo '<h2>Response</h2><pre>' . htmlspecialchars($client->response, ENT_QUOTES) . 
'</pre>';
+echo '<h2>Debug</h2><pre>' . htmlspecialchars($client->debug_str, ENT_QUOTES) . 
'</pre>';
+
+               return 0;
+       }
+       
+       }
+
+?>
diff -Naur 
/home/jean/gestion/dolibarr/htdocs/oscommerce_ws/commandes/osc_order.class.php 
/home/jean/projets/dolibarr/htdocs/oscommerce_ws/commandes/osc_order.class.php
--- 
/home/jean/gestion/dolibarr/htdocs/oscommerce_ws/commandes/osc_order.class.php  
    1969-12-31 14:00:00.000000000 -1000
+++ 
/home/jean/projets/dolibarr/htdocs/oscommerce_ws/commandes/osc_order.class.php  
    2006-08-05 15:54:18.000000000 -1000
@@ -0,0 +1,115 @@
+<?php
+/*  Copyright (C) 2006      Jean Heimburger     <address@hidden>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+ *
+ * $Id: osc_customer.class.php,v 1.0 2006/07/29 12:59:00 jean Exp $
+ * $Source: 
/sources/dolibarr/dolibarr/htdocs/oscommerce_ws/commandes/osc_order.class.php,v 
$
+ */
+
+/**
+        \file       htdocs/oscommerce_ws/orders/osc_order.class.php
+        \ingroup    oscommerce_ws/orders
+        \brief      Fichier de la classe des commandes issus de OsCommerce
+        \version    $Revision: 1.1 $
+*/
+
+
+/**
+        \class      Osc_order
+        \brief      Classe permettant la gestion des commandes issues d'une 
base OSC
+*/
+
+class Osc_order
+{
+       var $osc_orderid;
+       var $osc_custid; //identifant du client osc
+       var $osc_custname;
+       var $osc_orderdate;
+       var $osc_ordertotal;
+       var $osc_orderpaymet;
+
+       var $error;
+
+    /**
+     *    \brief      Constructeur de la classe
+     *    \param      id          Id client (0 par defaut)
+     */        
+       function Osc_order($id=0) {
+
+        global $langs;
+ + $this->osc_orderid = $id ;
+
+        /* les initialisations nécessaires */
+       }
+
+
+/**
+*      \brief      Charge la commande OsC en mémoire
+* \param id Id de la commande dans OsC +* \return int <0 si ko, >0 si ok
+*/
+   function fetch($id='')
+    {
+        global $langs;
+               global $conf;
+       
+               $this->error = '';
+               dolibarr_syslog("Osc_order::fetch $id=$id ");
+      // Verification parametres
+      if (! $id )
+        {
+            $this->error=$langs->trans('ErrorWrongParameters');
+            return -1;
+        }
+
+               set_magic_quotes_runtime(0);
+
+               //WebService Client.
+               require_once(NUSOAP_PATH."/nusoap.php");
+               require_once("../includes/configure.php");
+
+               // Set the parameters to send to the WebService
+               $parameters = array("orderid"=>$id);
+
+               // Set the WebService URL
+               $client = new soapclient(OSCWS_DIR."/ws_orders.php");
+
+               // Call the WebSeclient->fault)rvice and store its result in 
$obj
+               $obj = $client->call("get_Order",$parameters );
+
+               if ($client->fault) {
+                       $this->error="Fault detected ".$client->getError();
+                       return -1;
+               }
+               elseif (!($err=$client->getError()) ) {
+                       $this->osc_orderid = $obj[0][orders_id];
+                       $this->osc_custname = $obj[0][customers_name];
+                       $this->osc_custid = $obj[0][customers_id];
+                       $this->osc_orderdate = $obj[0][date_purchased];
+                       $this->osc_ordertotal = $obj[0][value];
+                       $this->osc_orderpaymet = $obj[0][payment_method];
+                       }
+               else {
+                   $this->error = 'Erreur '.$err ;
+                       return -1;
+ } + return 0;
+       }
+       
+       }
+
+?>
diff -Naur 
/home/jean/gestion/dolibarr/htdocs/oscommerce_ws/commandes/osc_order.class.php~ 
/home/jean/projets/dolibarr/htdocs/oscommerce_ws/commandes/osc_order.class.php~
--- 
/home/jean/gestion/dolibarr/htdocs/oscommerce_ws/commandes/osc_order.class.php~ 
    1969-12-31 14:00:00.000000000 -1000
+++ 
/home/jean/projets/dolibarr/htdocs/oscommerce_ws/commandes/osc_order.class.php~ 
    2006-08-05 15:36:05.000000000 -1000
@@ -0,0 +1,109 @@
+<?php
+/*  Copyright (C) 2006      Jean Heimburger     <address@hidden>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+ *
+ * $Id: osc_customer.class.php,v 1.0 2006/07/29 12:59:00 jean Exp $
+ * $Source: 
/sources/dolibarr/dolibarr/htdocs/oscommerce_ws/commandes/osc_order.class.php,v 
$
+ */
+
+/**
+        \file       htdocs/oscommerce_ws/orders/osc_order.class.php
+        \ingroup    oscommerce_ws/orders
+        \brief      Fichier de la classe des commandes issus de OsCommerce
+        \version    $Revision: 1.1 $
+*/
+
+
+/**
+        \class      Osc_order
+        \brief      Classe permettant la gestion des clients/prospects issus 
d'une base OSC
+*/
+
+class Osc_order
+{
+       var $osc_orderid;
+       var $osc_ordercity;
+       var $osc_ordercountry;
+       var $osc_ordertel;
+       var $osc_ordermail;
+
+       var $error;
+
+    /**
+     *    \brief      Constructeur de la classe
+     *    \param      id          Id client (0 par defaut)
+     */        
+       function Osc_order($id=0) {
+
+        global $langs;
+ + $this->osc_orderid = $id ;
+
+        /* les initialisations nécessaires */
+       }
+
+
+/**
+*      \brief      Charge la commande OsC en mémoire
+* \param id Id de la commande dans OsC +* \return int <0 si ko, >0 si ok
+*/
+   function fetch($id='')
+    {
+        global $langs;
+               global $conf;
+       
+               $this->error = '';
+               dolibarr_syslog("Osc_order::fetch $id=$id ");
+      // Verification parametres
+      if (! $id )
+        {
+            $this->error=$langs->trans('ErrorWrongParameters');
+            return -1;
+        }
+
+               set_magic_quotes_runtime(0);
+
+               //WebService Client.
+               require_once(NUSOAP_PATH."/nusoap.php");
+               require_once("../includes/configure.php");
+
+               // Set the parameters to send to the WebService
+               $parameters = array("orderid"=>$id);
+
+               // Set the WebService URL
+               $client = new soapclient(OSCWS_DIR."/ws_orders.php");
+
+               // Call the WebSeclient->fault)rvice and store its result in 
$obj
+               $obj = $client->call("get_Order",$parameters );
+
+               if ($client->fault) {
+                       $this->error="Fault detected ".$client->getError();
+                       return -1;
+               }
+               elseif (!($err=$client->getError()) ) {
+                       $this->osc_orderid = $obj[0][orders_id];
+                       }
+               else {
+                   $this->error = 'Erreur '.$err ;
+                       return -1;
+ } + return 0;
+       }
+       
+       }
+
+?>
diff -Naur 
/home/jean/gestion/dolibarr/htdocs/oscommerce_ws/commandes/pre.inc.php 
/home/jean/projets/dolibarr/htdocs/oscommerce_ws/commandes/pre.inc.php
--- /home/jean/gestion/dolibarr/htdocs/oscommerce_ws/commandes/pre.inc.php      
1969-12-31 14:00:00.000000000 -1000
+++ /home/jean/projets/dolibarr/htdocs/oscommerce_ws/commandes/pre.inc.php      
2006-07-29 12:00:09.000000000 -1000
@@ -0,0 +1,50 @@
+<?php
+/* Copyright (C) 2003 Rodolphe Quiedeville <address@hidden>
+ * Copyright (C) 2006 Laurent Destailleur  <address@hidden>
+ * Copyright (C) 2006 Jean Heimburger  <address@hidden>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+ *
+ * $Id: pre.inc.php,v 1.1 2006/07/13 12:59:00 eldy Exp $
+ * $Source: /sources/dolibarr/dolibarr/htdocs/oscommerce_ws/pre.inc.php,v $
+ */
+ +/**
+        \file       htdocs/oscommerce_ws/clients/pre.inc.php
+               \brief      Fichier gestionnaire du menu de gauche
+               \version    $Revision: 1.1 $
+*/
+
+require("../../main.inc.php");
+require("./osc_order.class.php");
+
+function llxHeader($head = "", $urlp = "")
+{
+       global $user, $conf, $langs;
+       $langs->load("shop");
+       
+       top_menu($head);
+       
+       $menu = new Menu();
+       
+       $menu->add(DOL_URL_ROOT."/oscommerce_ws/index.php", 
$langs->trans("OSCommerceShop"));
+       $menu->add_submenu(DOL_URL_ROOT."/oscommerce_ws/produits/", 
$langs->trans("Products"));
+       $menu->add_submenu(DOL_URL_ROOT."/oscommerce_ws/clients/", 
$langs->trans("Clients"));
+       $menu->add_submenu(DOL_URL_ROOT."/oscommerce_ws/commandes/", 
$langs->trans("Commandes"));
+       
+       left_menu($menu->liste);
+}
+
+?>
diff -Naur 
/home/jean/gestion/dolibarr/htdocs/oscommerce_ws/commandes/pre.inc.php~ 
/home/jean/projets/dolibarr/htdocs/oscommerce_ws/commandes/pre.inc.php~
--- /home/jean/gestion/dolibarr/htdocs/oscommerce_ws/commandes/pre.inc.php~     
1969-12-31 14:00:00.000000000 -1000
+++ /home/jean/projets/dolibarr/htdocs/oscommerce_ws/commandes/pre.inc.php~     
2006-07-29 11:38:34.000000000 -1000
@@ -0,0 +1,50 @@
+<?php
+/* Copyright (C) 2003 Rodolphe Quiedeville <address@hidden>
+ * Copyright (C) 2006 Laurent Destailleur  <address@hidden>
+ * Copyright (C) 2006 Jean Heimburger  <address@hidden>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+ *
+ * $Id: pre.inc.php,v 1.1 2006/07/13 12:59:00 eldy Exp $
+ * $Source: /sources/dolibarr/dolibarr/htdocs/oscommerce_ws/pre.inc.php,v $
+ */
+ +/**
+        \file       htdocs/oscommerce_ws/clients/pre.inc.php
+               \brief      Fichier gestionnaire du menu de gauche
+               \version    $Revision: 1.1 $
+*/
+
+require("../../main.inc.php");
+require("./osc_customer.class.php");
+
+function llxHeader($head = "", $urlp = "")
+{
+       global $user, $conf, $langs;
+       $langs->load("shop");
+       
+       top_menu($head);
+       
+       $menu = new Menu();
+       
+       $menu->add(DOL_URL_ROOT."/oscommerce_ws/index.php", 
$langs->trans("OSCommerceShop"));
+       $menu->add_submenu(DOL_URL_ROOT."/oscommerce_ws/produits/", 
$langs->trans("Products"));
+       $menu->add_submenu(DOL_URL_ROOT."/oscommerce_ws/clients/", 
$langs->trans("Clients"));
+       $menu->add_submenu(DOL_URL_ROOT."/oscommerce_ws/commandes/", 
$langs->trans("Commandes"));
+       
+       left_menu($menu->liste);
+}
+
+?>
diff -Naur 
/home/jean/gestion/dolibarr/htdocs/oscommerce_ws/includes/configure.php 
/home/jean/projets/dolibarr/htdocs/oscommerce_ws/includes/configure.php
--- /home/jean/gestion/dolibarr/htdocs/oscommerce_ws/includes/configure.php     
2006-07-13 02:59:00.000000000 -1000
+++ /home/jean/projets/dolibarr/htdocs/oscommerce_ws/includes/configure.php     
2006-07-29 09:36:18.000000000 -1000
@@ -7,8 +7,8 @@
 ----------------------------------------------*/
//base url des webservices
-//define(OSCWS_DIR,'http://osc-tiaris/ws_OSC/');
-define(OSCWS_DIR,'http://osc.tiaris.info/ws_OSC/');
+define(OSCWS_DIR,'http://osc-tiaris/ws_OSC/');
+//define(OSCWS_DIR,'http://osc.tiaris.info/ws_OSC/');
 //affichages dans la page d'accueil
 define(OSC_MAXNBCOM, 5);
 define(OSC_ORDWAIT,'4'); // code du statut de commande en attente
diff -Naur 
/home/jean/gestion/dolibarr/htdocs/oscommerce_ws/includes/configure.php~ 
/home/jean/projets/dolibarr/htdocs/oscommerce_ws/includes/configure.php~
--- /home/jean/gestion/dolibarr/htdocs/oscommerce_ws/includes/configure.php~    
1969-12-31 14:00:00.000000000 -1000
+++ /home/jean/projets/dolibarr/htdocs/oscommerce_ws/includes/configure.php~    
2006-07-13 02:59:00.000000000 -1000
@@ -0,0 +1,18 @@
+<?php
+/*---------------------------------------------
+/ Webservices OSC pour dolibarr
+/ configuration des clients
+/
+/ Jean Heimburger                      juin 2006
+----------------------------------------------*/
+
+//base url des webservices
+//define(OSCWS_DIR,'http://osc-tiaris/ws_OSC/');
+define(OSCWS_DIR,'http://osc.tiaris.info/ws_OSC/');
+//affichages dans la page d'accueil
+define(OSC_MAXNBCOM, 5);
+define(OSC_ORDWAIT,'4'); // code du statut de commande en attente
+define(OSC_ORDPROCESS,'1'); // code du statut de commande en traitement
+//
+define(OSC_ENTREPOT, 1); //l'entrepot lié au stock du site web
+?>
diff -Naur /home/jean/gestion/dolibarr/htdocs/oscommerce_ws/pre.inc.php 
/home/jean/projets/dolibarr/htdocs/oscommerce_ws/pre.inc.php
--- /home/jean/gestion/dolibarr/htdocs/oscommerce_ws/pre.inc.php        
2006-07-13 02:59:00.000000000 -1000
+++ /home/jean/projets/dolibarr/htdocs/oscommerce_ws/pre.inc.php        
2006-07-29 11:36:56.000000000 -1000
@@ -1,6 +1,7 @@
 <?php
 /* Copyright (C) 2003 Rodolphe Quiedeville <address@hidden>
  * Copyright (C) 2006 Laurent Destailleur  <address@hidden>
+ * Copyright (C) 2006 Jean Heimburger  <address@hidden>
  *
  * This program is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -39,6 +40,8 @@
        
        $menu->add(DOL_URL_ROOT."/oscommerce_ws/index.php", 
$langs->trans("OSCommerceShop"));
        $menu->add_submenu(DOL_URL_ROOT."/oscommerce_ws/produits/", 
$langs->trans("Products"));
+       $menu->add_submenu(DOL_URL_ROOT."/oscommerce_ws/clients/", 
$langs->trans("Clients"));
+       $menu->add_submenu(DOL_URL_ROOT."/oscommerce_ws/commandes/", 
$langs->trans("Commandes"));
        
        left_menu($menu->liste);
 }
diff -Naur /home/jean/gestion/dolibarr/htdocs/oscommerce_ws/pre.inc.php~ 
/home/jean/projets/dolibarr/htdocs/oscommerce_ws/pre.inc.php~
--- /home/jean/gestion/dolibarr/htdocs/oscommerce_ws/pre.inc.php~       
1969-12-31 14:00:00.000000000 -1000
+++ /home/jean/projets/dolibarr/htdocs/oscommerce_ws/pre.inc.php~       
2006-07-29 09:09:42.000000000 -1000
@@ -0,0 +1,48 @@
+<?php
+/* Copyright (C) 2003 Rodolphe Quiedeville <address@hidden>
+ * Copyright (C) 2006 Laurent Destailleur  <address@hidden>
+ * Copyright (C) 2006 Jean Heimburger  <address@hidden>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+ *
+ * $Id: pre.inc.php,v 1.1 2006/07/13 12:59:00 eldy Exp $
+ * $Source: /sources/dolibarr/dolibarr/htdocs/oscommerce_ws/pre.inc.php,v $
+ */
+ +/**
+        \file       htdocs/oscommerce_ws/pre.inc.php
+               \brief      Fichier gestionnaire du menu de gauche
+               \version    $Revision: 1.1 $
+*/
+
+require("../main.inc.php");
+
+function llxHeader($head = "", $urlp = "")
+{
+       global $user, $conf, $langs;
+       $langs->load("shop");
+       
+       top_menu($head);
+       
+       $menu = new Menu();
+       
+       $menu->add(DOL_URL_ROOT."/oscommerce_ws/index.php", 
$langs->trans("OSCommerceShop"));
+       $menu->add_submenu(DOL_URL_ROOT."/oscommerce_ws/produits/", 
$langs->trans("Products"));
+       $menu->add_submenu(DOL_URL_ROOT."/oscommerce_ws/clients/", 
$langs->trans("Clients"));
+       
+       left_menu($menu->liste);
+}
+
+?>
diff -Naur 
/home/jean/gestion/dolibarr/htdocs/oscommerce_ws/produits/CVS/Entries 
/home/jean/projets/dolibarr/htdocs/oscommerce_ws/produits/CVS/Entries
--- /home/jean/gestion/dolibarr/htdocs/oscommerce_ws/produits/CVS/Entries       
2006-08-04 14:40:44.000000000 -1000
+++ /home/jean/projets/dolibarr/htdocs/oscommerce_ws/produits/CVS/Entries       
2006-07-29 09:21:47.000000000 -1000
@@ -1,5 +1,5 @@
 /fiche.php/1.1/Thu Jul 13 12:59:00 2006//
-/index.php/1.1/Thu Jul 13 12:59:00 2006//
 /osc_product.class.php/1.1/Thu Jul 13 12:59:00 2006//
 /pre.inc.php/1.1/Thu Jul 13 12:59:00 2006//
+/index.php/1.1/Sat Jul 29 19:21:47 2006//
 D
diff -Naur /home/jean/gestion/dolibarr/htdocs/oscommerce_ws/produits/fiche.php 
/home/jean/projets/dolibarr/htdocs/oscommerce_ws/produits/fiche.php
--- /home/jean/gestion/dolibarr/htdocs/oscommerce_ws/produits/fiche.php 
2006-07-13 02:59:00.000000000 -1000
+++ /home/jean/projets/dolibarr/htdocs/oscommerce_ws/produits/fiche.php 
2006-07-29 12:28:55.000000000 -1000
@@ -1,6 +1,5 @@
 <?php
-/* Copyright (C) 2003 Rodolphe Quiedeville <address@hidden>
- * Copyright (C) 2003-2005 Éric Seigne <address@hidden>
+/*  Copyright (C) 2006      Jean Heimburger     <address@hidden>
  *
  * This program is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
diff -Naur /home/jean/gestion/dolibarr/htdocs/oscommerce_ws/produits/fiche.php~ 
/home/jean/projets/dolibarr/htdocs/oscommerce_ws/produits/fiche.php~
--- /home/jean/gestion/dolibarr/htdocs/oscommerce_ws/produits/fiche.php~        
1969-12-31 14:00:00.000000000 -1000
+++ /home/jean/projets/dolibarr/htdocs/oscommerce_ws/produits/fiche.php~        
2006-07-13 02:59:00.000000000 -1000
@@ -0,0 +1,147 @@
+<?php
+/* Copyright (C) 2003 Rodolphe Quiedeville <address@hidden>
+ * Copyright (C) 2003-2005 Éric Seigne <address@hidden>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+ *
+ * $Id: fiche.php,v 1.1 2006/07/13 12:59:00 eldy Exp $
+ * $Source: 
/sources/dolibarr/dolibarr/htdocs/oscommerce_ws/produits/fiche.php,v $
+ *
+ */
+require("./pre.inc.php");
+require_once(DOL_DOCUMENT_ROOT."/product.class.php");
+require_once("../includes/configure.php");
+
+llxHeader();
+
+if ($action == '' && !$cancel) {
+
+ if ($_GET['id'])
+ {
+  $osc_prod = new Osc_product();
+  $result = $osc_prod->fetch($_GET['id']);
+
+  if ( !$result)
+ { + print '<div class="titre">Fiche article OSC : '.$osc_prod->osc_name.'</div><br>';
+
+      print '<table border="1" width="100%" cellspacing="0" cellpadding="4">';
+      print '<tr></tr><td width="20%">Descrption</td><td 
width="80%">'.$osc_prod->osc_desc.'</td></tr>';
+      print '<tr></tr><td width="20%">ref</td><td 
width="80%">'.$osc_prod->osc_ref.'</td></tr>';
+      print '<tr></tr><td width="20%">Id</td><td 
width="80%">'.$osc_prod->osc_id.'</td></tr>';
+      print '<tr></tr><td width="20%">Prix</td><td 
width="80%">'.$osc_prod->osc_price.'</td></tr>';
+      print '<tr></tr><td width="20%">Four_id</td><td 
width="80%">'.$osc_prod->osc_four.'</td></tr>';
+      print "</table>";
+
+       /* 
************************************************************************** */
+ /* */ + /* Barre d'action */ + /* */ + /* ************************************************************************** */
+       print "\n<div class=\"tabsAction\">\n";
+
+         if ( $user->rights->produit->creer) {
+        print '<a class="tabAction" 
href="fiche.php?action=import&amp;id='.$osc_prod->osc_id.'">'.$langs->trans("Import").'</a>';
+       }
+       print "\n</div><br>\n";
+// seule action importer
+ + }
+      else
+       {
+         print "<p>ERROR 1</p>\n";
+         dolibarr_print_error("erreur webservice ".$osc_prod->error);
+       }
+ }
+ else
+ {
+   print "<p>ERROR 1</p>\n";
+   print "Error";
+ }
+}
+/* action Import création de l'objet product de dolibarr +*
+*/
+ if (($_GET["action"] == 'import' ) && ( $_GET["id"] != '' ) && 
$user->rights->produit->creer)
+    {
+                 $osc_prod = new Osc_product();
+                 $result = $osc_prod->fetch($_GET['id']);
+ + if ( !$result )
+         {
+                       $product = new Product($db);
+               if ($_error == 1)
+               {
+                       print '<br>erreur 1</br>';
+                               exit;
+               }
+               /* initialisation */
+               $product->ref = $osc_prod->osc_ref;
+               $product->libelle = $osc_prod->osc_name;
+               $product->description = $osc_prod->osc_desc;
+               $product->price = $osc_prod->osc_price;
+               $product->tva_tx = $osc_prod->osc_tva;
+               $product->type = 0;
+               $product->seuil_stock_alerte = 0; /* on force */
+       /* on force */
+                       $product->catid = 0; /* à voir avec la gestion des 
catégories */
+                       $product->status = 1; /* en vente */
+ } +
+                       $id = $product->create($user);
+ + if ($id > 0)
+                   {
+                       print '<br>création réussie produit '.$id.' référence : 
'.$product->ref.'</br>';
+                               $id_entrepot = OSC_ENTREPOT;
+                               $id = 
$product->create_stock($id_entrepot,$osc_prod->osc_stock);
+                               if ($id > 0)  exit;
+                   }
+                   else
+                   {
+                       if ($id == -3)
+                       {
+                           $_error = 1;
+                           $_GET["action"] = "create";
+                           $_GET["type"] = $_POST["type"];
+                       }
+                               if ($id == -2)
+                               {
+                               /* la référence existe on fait un update */
+                                $product_control = new Product($db);
+                                if ($_error == 1)
+                        {
+                               print '<br>erreur 1</br>';
+                                       exit;
+                        }
+                            $id = $product_control->fetch($ref = 
$osc_prod->osc_ref);
+                                       
+ if ($id > 0) + { + $id = $product->update($id, $user);
+                                               if ($id > 0) {
+                                                       $id_entrepot = 1;
+                                                       $id = 
$product->correct_stock($id_entrepot,$osc_prod->osc_stock);
+                                               }
+                                               else print '<br>Erreur update 
'.$id.'</br>';
+                                       }
+                                       else print '<br>update impossible $id : 
'.$id.' </br>';
+                               }
+                   }
+ + }
+
+llxFooter("<em>Derni&egrave;re modification $Date: 2006/07/13 12:59:00 $ r&eacute;vision 
$Revision: 1.1 $</em>");
+?>
diff -Naur /home/jean/gestion/dolibarr/htdocs/oscommerce_ws/produits/index.php 
/home/jean/projets/dolibarr/htdocs/oscommerce_ws/produits/index.php
--- /home/jean/gestion/dolibarr/htdocs/oscommerce_ws/produits/index.php 
2006-07-13 02:59:00.000000000 -1000
+++ /home/jean/projets/dolibarr/htdocs/oscommerce_ws/produits/index.php 
2006-07-29 09:22:48.000000000 -1000
@@ -1,6 +1,6 @@
 <?php
-/* Copyright (C) 2003 Rodolphe Quiedeville <address@hidden>
- * Copyright (C) 2004 Laurent Destailleur  <address@hidden>
+/*  Copyright (C) 2006      Jean Heimburger     <address@hidden>
+ *
  *
  * This program is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
diff -Naur /home/jean/gestion/dolibarr/htdocs/oscommerce_ws/produits/index.php~ 
/home/jean/projets/dolibarr/htdocs/oscommerce_ws/produits/index.php~
--- /home/jean/gestion/dolibarr/htdocs/oscommerce_ws/produits/index.php~        
1969-12-31 14:00:00.000000000 -1000
+++ /home/jean/projets/dolibarr/htdocs/oscommerce_ws/produits/index.php~        
2006-07-29 09:21:47.000000000 -1000
@@ -0,0 +1,98 @@
+<?php
+/* Copyright (C) 2003 Rodolphe Quiedeville <address@hidden>
+ * Copyright (C) 2004 Laurent Destailleur  <address@hidden>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+ *
+ * $Id: index.php,v 1.1 2006/07/13 12:59:00 eldy Exp $
+ * $Source: 
/sources/dolibarr/dolibarr/htdocs/oscommerce_ws/produits/index.php,v $
+ *
+ */
+
+require("./pre.inc.php");
+
+$langs->load("companies");
+
+llxHeader();
+
+
+if ($page == -1) { $page = 0 ; }
+$limit = $conf->liste_limit;
+$offset = $limit * $page ;
+
+print_barre_liste("Liste des articles de la boutique web", $page, "index.php");
+
+set_magic_quotes_runtime(0);
+
+//WebService Client.
+require_once(NUSOAP_PATH."nusoap.php");
+require_once("../includes/configure.php");
+
+// Set the parameters to send to the WebService
+$parameters = array();
+
+// Set the WebService URL
+$client = new soapclient(OSCWS_DIR."ws_articles.php");
+
+$result = $client->call("get_listearticles",$parameters );
+if ($client->fault) {
+               dolibarr_print_error("erreur de connection ");
+}
+elseif (!($err = $client->getError()) )
+{
+       $num=0;
+       if ($result) $num = sizeof($result);
+       $var=True;
+       $i=0;
+
+       if ($num > 0) {
+               print "<p><TABLE border=\"0\" width=\"100%\" cellspacing=\"0\" 
cellpadding=\"4\">";
+               print '<TR class="liste_titre">';
+               print "<td>id</td>";
+               print "<td>Ref</td>";
+               print "<td>Titre</td>";
+               print "<td>Groupe</td>";
+               print '<td align="center">Stock</td>';
+               print '<TD align="center">Status</TD>';
+               print "</TR>\n";
+ + while ($i < $num) {
+               $var=!$var;
+
+                   print "<TR $bc[$var]>";
+                   print '<TD><a 
href="fiche.php?id='.$result[$i][OSC_id].'">'.$result[$i][OSC_id]."</TD>\n";
+               print "<TD>".$result[$i][model]."</TD>\n";
+               print "<TD>".$result[$i][name]."</TD>\n";
+               print "<TD>".$result[$i][manufacturer]."</TD>\n";
+               print '<TD align="center">'.$result[$i][quantity]."</TD>\n";
+               print '<TD align="center">'.$result[$i][status]."</TD>\n";
+               print "</TR>\n";
+               $i++;
+               }
+               print "</table></p>";
+       }
+       else {
+               dolibarr_print_error("Aucun article trouvé");
+       }
+}
+else {
+ dolibarr_print_error("Erreur service web ".$err); +}
+
+print "</TABLE>";
+
+
+llxFooter("<em>Derni&egrave;re modification $Date: 2006/07/13 12:59:00 $ r&eacute;vision 
$Revision: 1.1 $</em>");
+?>
diff -Naur 
/home/jean/gestion/dolibarr/htdocs/oscommerce_ws/produits/osc_product.class.php 
/home/jean/projets/dolibarr/htdocs/oscommerce_ws/produits/osc_product.class.php
--- 
/home/jean/gestion/dolibarr/htdocs/oscommerce_ws/produits/osc_product.class.php 
    2006-07-13 02:59:00.000000000 -1000
+++ 
/home/jean/projets/dolibarr/htdocs/oscommerce_ws/produits/osc_product.class.php 
    2006-07-29 08:30:55.000000000 -1000
@@ -1,9 +1,5 @@
 <?php
-/* Copyright (C) 2001-2005 Rodolphe Quiedeville <address@hidden>
- * Copyright (C) 2004-2006 Laurent Destailleur  <address@hidden>
- * Copyright (C) 2005-2006 Regis Houssin        <address@hidden>
- * Copyright (C) 2006      Andre Cianfarani     <address@hidden>
- * Copyright (C) 2006      Jean Heimburger     <address@hidden>
+/*  Copyright (C) 2006      Jean Heimburger     <address@hidden>
  *
  * This program is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -24,9 +20,9 @@
  */
/**
-        \file       htdocs/product.class.php
-        \ingroup    produit
-        \brief      Fichier de la classe des produits prédéfinis
+        \file       htdocs/oscommerce_ws/produits/osc_product.class.php
+        \ingroup    oscommerce_ws/produits/
+        \brief      Fichier de la classe des produits issus de OSC
         \version    $Revision: 1.1 $
 */
@@ -64,9 +60,9 @@
        }
/**
-     *      \brief      Charge le produit/service en mémoire
-     *      \param      id      Id du produit/service à charger
-     *      \param      ref     Ref du produit/service à charger
+     *      \brief      Charge le produit OsC en mémoire
+ * \param id Id du produit dans OsC + * \param ref Ref du produit dans OsC (doit être unique dans OsC)
      *      \return     int     <0 si ko, >0 si ok
      */
    function fetch($id='',$ref='')
diff -Naur 
/home/jean/gestion/dolibarr/htdocs/oscommerce_ws/produits/osc_product.class.php~
 
/home/jean/projets/dolibarr/htdocs/oscommerce_ws/produits/osc_product.class.php~
--- 
/home/jean/gestion/dolibarr/htdocs/oscommerce_ws/produits/osc_product.class.php~
    1969-12-31 14:00:00.000000000 -1000
+++ 
/home/jean/projets/dolibarr/htdocs/oscommerce_ws/produits/osc_product.class.php~
    2006-07-29 08:25:55.000000000 -1000
@@ -0,0 +1,145 @@
+<?php
+/*  Copyright (C) 2006      Jean Heimburger     <address@hidden>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+ *
+ * $Id: osc_product.class.php,v 1.1 2006/07/13 12:59:00 eldy Exp $
+ * $Source: 
/sources/dolibarr/dolibarr/htdocs/oscommerce_ws/produits/osc_product.class.php,v
 $
+ */
+
+/**
+        \file       htdocs/product.class.php
+        \ingroup    produit
+        \brief      Fichier de la classe des produits prédéfinis
+        \version    $Revision: 1.1 $
+*/
+
+
+/**
+        \class      Osc_product
+        \brief      Classe permettant la gestion des produits issus d'une base 
OSC
+*/
+
+class Osc_product
+{
+       var $osc_id;
+       var $osc_ref;
+       var $osc_name;
+       var $osc_desc;
+       var $osc_price;
+       var $osc_tva;
+       var $osc_stockmini;
+       var $osc_stock;
+       var $osc_four;
+       
+       var $error;
+       
+    /**
+     *    \brief      Constructeur de la classe
+     *    \param      id          Id produit (0 par defaut)
+     */        
+       function Osc_product($id=0) {
+
+        global $langs;
+ + $this->osc_id = $id ;
+
+        /* les initialisations nécessaires */
+       }
+
+/**
+     *      \brief      Charge le produit/service en mémoire
+     *      \param      id      Id du produit/service à charger
+     *      \param      ref     Ref du produit/service à charger
+     *      \return     int     <0 si ko, >0 si ok
+     */
+   function fetch($id='',$ref='')
+    {
+        global $langs;
+               global $conf;
+       
+       $this->error = '';
+               dolibarr_syslog("Osc_product::fetch $id=$id ref=$ref");
+      // Verification parametres
+      if (! $id && ! $ref)
+        {
+            $this->error=$langs->trans('ErrorWrongParameters');
+            return -1;
+        }
+
+               set_magic_quotes_runtime(0);
+
+               //WebService Client.
+               require_once(NUSOAP_PATH."/nusoap.php");
+               require_once("../includes/configure.php");
+
+               // Set the parameters to send to the WebService
+               $parameters = array("id"=>$id,"ref"=>$ref);
+
+               // Set the WebService URL
+               $client = new soapclient(OSCWS_DIR."/ws_articles.php");
+
+               // Call the WebSeclient->fault)rvice and store its result in 
$obj
+               $obj = $client->call("get_article",$parameters );
+               if ($client->fault) {
+                       $this->error="Fault detected";
+                       return -1;
+               }
+               elseif (!($err=$client->getError()) ) {
+                       $this->osc_id = $obj[products_id];
+                       $this->osc_ref = $obj[products_model];
+                       $this->osc_name = $obj[products_name];
+                       $this->osc_desc = $obj[products_description];
+                       $this->osc_stock = $obj[products_quantity];
+                       $this->osc_four = $obj[manufacturers_id];
+                       $this->osc_price = $obj[products_price];
+                       }
+               else {
+                   $this->error = 'Erreur '.$err ;
+                       return -1;
+ } + return 0;
+       }
+
+       
+ + /**
+     *    \brief      création d'un article dans base OSC
+     *    \param      $user utilisateur
+     */        
+       function create($user)
+    {
+    /* non implémentée */
+    }  
+
+         /**
+     *    \brief      modification d'un article dans base OSC
+     *    \param      $user utilisateur
+     */        
+       function update($id, $user)
+    {
+    /* non implémentée */
+    }
+
+    /**
+     *    \brief      Suppression du produit en base OSC
+     *    \param      id          id du produit
+     */
+   function delete($id)
+    {
+    /* non implémentée */
+    }
+}
+?>
diff -Naur 
/home/jean/gestion/dolibarr/htdocs/oscommerce_ws/produits/pre.inc.php 
/home/jean/projets/dolibarr/htdocs/oscommerce_ws/produits/pre.inc.php
--- /home/jean/gestion/dolibarr/htdocs/oscommerce_ws/produits/pre.inc.php       
2006-07-13 02:59:00.000000000 -1000
+++ /home/jean/projets/dolibarr/htdocs/oscommerce_ws/produits/pre.inc.php       
2006-07-29 11:38:10.000000000 -1000
@@ -1,6 +1,7 @@
 <?php
 /* Copyright (C) 2003 Rodolphe Quiedeville <address@hidden>
  * Copyright (C) 2006 Laurent Destailleur  <address@hidden>
+ * Copyright (C) 2006 Jean Heimburger  <address@hidden>
  *
  * This program is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -27,7 +28,7 @@
 */
require("../../main.inc.php");
-require_once('./osc_product.class.php');
+require("./osc_product.class.php");
function llxHeader($head = "", $urlp = "")
 {
@@ -40,7 +41,9 @@
        
        $menu->add(DOL_URL_ROOT."/oscommerce_ws/index.php", 
$langs->trans("OSCommerceShop"));
        $menu->add_submenu(DOL_URL_ROOT."/oscommerce_ws/produits/", 
$langs->trans("Products"));
-       
+       $menu->add_submenu(DOL_URL_ROOT."/oscommerce_ws/clients/", 
$langs->trans("Clients")); 
+       $menu->add_submenu(DOL_URL_ROOT."/oscommerce_ws/commandes/", 
$langs->trans("Commandes"));
+
        left_menu($menu->liste);
 }
diff -Naur /home/jean/gestion/dolibarr/htdocs/oscommerce_ws/produits/pre.inc.php~ /home/jean/projets/dolibarr/htdocs/oscommerce_ws/produits/pre.inc.php~
--- /home/jean/gestion/dolibarr/htdocs/oscommerce_ws/produits/pre.inc.php~      
1969-12-31 14:00:00.000000000 -1000
+++ /home/jean/projets/dolibarr/htdocs/oscommerce_ws/produits/pre.inc.php~      
2006-07-29 10:20:32.000000000 -1000
@@ -0,0 +1,48 @@
+<?php
+/* Copyright (C) 2003 Rodolphe Quiedeville <address@hidden>
+ * Copyright (C) 2006 Laurent Destailleur  <address@hidden>
+ * Copyright (C) 2006 Jean Heimburger  <address@hidden>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+ *
+ * $Id: pre.inc.php,v 1.1 2006/07/13 12:59:00 eldy Exp $
+ * $Source: 
/sources/dolibarr/dolibarr/htdocs/oscommerce_ws/produits/pre.inc.php,v $
+ */
+ +/**
+        \file       htdocs/oscommerce_ws/pre.inc.php
+               \brief      Fichier gestionnaire du menu de gauche
+               \version    $Revision: 1.1 $
+*/
+
+require("../../main.inc.php");
+require("./osc_product.class.php");
+
+function llxHeader($head = "", $urlp = "")
+{
+       global $user, $conf, $langs;
+       $langs->load("shop");
+       
+       top_menu($head);
+       
+       $menu = new Menu();
+       
+       $menu->add(DOL_URL_ROOT."/oscommerce_ws/index.php", 
$langs->trans("OSCommerceShop"));
+       $menu->add_submenu(DOL_URL_ROOT."/oscommerce_ws/produits/", 
$langs->trans("Products"));
+       $menu->add_submenu(DOL_URL_ROOT."/oscommerce_ws/clients/", 
$langs->trans("Clients")); 
+       left_menu($menu->liste);
+}
+
+?>
diff -Naur 
/home/jean/gestion/dolibarr/htdocs/oscommerce_ws/ws_server/ws_articles.php 
/home/jean/projets/dolibarr/htdocs/oscommerce_ws/ws_server/ws_articles.php
--- /home/jean/gestion/dolibarr/htdocs/oscommerce_ws/ws_server/ws_articles.php  
2006-07-13 02:59:00.000000000 -1000
+++ /home/jean/projets/dolibarr/htdocs/oscommerce_ws/ws_server/ws_articles.php  
2006-07-29 12:26:44.000000000 -1000
@@ -1,24 +1,45 @@
 <?php
-set_magic_quotes_runtime(0);
+/*  Copyright (C) 2006      Jean Heimburger     <address@hidden>
+ *
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+ *
+ * $Source: 
/sources/dolibarr/dolibarr/htdocs/oscommerce_ws/ws_server/ws_articles.php,v $
+ *
+ */
+
+set_magic_quotes_runtime(0);
require_once("./includes/configure.php");
-
-// Soap Server.
-require_once('./lib/nusoap.php');
-
-// Create the soap Object
-$s = new soap_server;
-
-// Register a method available for clients
+
+// Soap Server.
+require_once('./lib/nusoap.php');
+
+// Create the soap Object
+$s = new soap_server;
+
+// Register a method available for clients
 $s->register('get_article');
-$s->register('get_listearticles');
-
+$s->register('get_listearticles');
+
function get_article($id='',$ref='') { //on se connecte
-       if (!($connexion = mysql_connect(OSC_DB_SERVER, OSC_DB_SERVER_USERNAME, OSC_DB_SERVER_PASSWORD)))   
return new soap_fault("Server", "MySQL 1", "connection impossible");
-       if (!($db = mysql_select_db(OSC_DB_DATABASE, $connexion)))  return new 
soap_fault("Server", "MySQL 2", mysql_error());
+       if (!($connexion = mysql_connect(DB_SERVER, DB_SERVER_USERNAME, DB_SERVER_PASSWORD)))   return new 
soap_fault("Server", "MySQL 1", "connection impossible");
+       if (!($db = mysql_select_db(DB_DATABASE, $connexion)))  return new 
soap_fault("Server", "MySQL 2", mysql_error());
//on recherche
                $sql = "SELECT p.products_id, p.products_model, p.products_quantity, 
p.products_status, p.products_price, d.products_name, d.products_description, 
m.manufacturers_name, m.manufacturers_id";
@@ -30,10 +51,10 @@
if (!($resquer = mysql_query($sql,$connexion))) return new soap_fault("Server", "MySQL 3 ".$sql, mysql_error()); - switch (mysql_numrows($resquer)) { - case 0 : - return new soap_fault("Server", "MySQL 4", "produit inexistant");
-                       break;
+               switch (mysql_numrows($resquer)) {
+ case 0 : + return new soap_fault("Server", "MySQL 4", "produit inexistant");
+                       break;
case 1 : $res_article = @mysql_fetch_array($resquer, MYSQL_ASSOC);
                        $res_article["time"] = time();
@@ -49,21 +70,21 @@
 function get_listearticles() {
//on se connecte
-       if (!($connexion = mysql_connect(OSC_DB_SERVER, OSC_DB_SERVER_USERNAME, OSC_DB_SERVER_PASSWORD)))   
return new soap_fault("Server", "MySQL 1", "connection impossible");
-       if (!($db = mysql_select_db(OSC_DB_DATABASE, $connexion)))  return new 
soap_fault("Server", "MySQL 2", mysql_error());
+       if (!($connexion = mysql_connect(DB_SERVER, DB_SERVER_USERNAME, DB_SERVER_PASSWORD)))   return new 
soap_fault("Server", "MySQL 1", "connection impossible");
+       if (!($db = mysql_select_db(DB_DATABASE, $connexion)))  return new 
soap_fault("Server", "MySQL 2", mysql_error());
//on recherche
-       $sql = "SELECT p.products_id, p.products_model, p.products_quantity, 
p.products_status, d.products_name, m.manufacturers_name, m.manufacturers_id";
+       $sql = "SELECT p.products_id as OSC_id, p.products_model as model, 
p.products_quantity as quantity, p.products_status as status, d.products_name as name, 
m.manufacturers_name as manufacturer, m.manufacturers_id";
        $sql .= " FROM products as p, products_description as d, manufacturers as 
m";
        $sql .= " WHERE p.products_id = d.products_id AND d.language_id =" . 
OSC_LANGUAGE_ID;
        $sql .= " AND p.manufacturers_id=m.manufacturers_id";
if (!($resquer = mysql_query($sql,$connexion))) return new soap_fault("Server", "MySQL 3 ".$sql, mysql_error()); - switch ($numrows = mysql_numrows($resquer)) { - case 0 : - return new soap_fault("Server", "MySQL 4", "produit inexistant");
-                       break;
+               switch ($numrows = mysql_numrows($resquer)) {
+ case 0 : + return new soap_fault("Server", "MySQL 4", "produit inexistant");
+                       break;
default : $i = 0;
                        while ( $i < $numrows)  {
@@ -76,8 +97,8 @@
  /* Sends the results to the client */
 return $liste_articles;
 }
-
-// Return the results.
+
+// Return the results.
 $s->service($HTTP_RAW_POST_DATA);
-
-?>
+
+?>
diff -Naur 
/home/jean/gestion/dolibarr/htdocs/oscommerce_ws/ws_server/ws_customers.php 
/home/jean/projets/dolibarr/htdocs/oscommerce_ws/ws_server/ws_customers.php
--- /home/jean/gestion/dolibarr/htdocs/oscommerce_ws/ws_server/ws_customers.php 
1969-12-31 14:00:00.000000000 -1000
+++ /home/jean/projets/dolibarr/htdocs/oscommerce_ws/ws_server/ws_customers.php 
2006-07-30 16:48:01.000000000 -1000
@@ -0,0 +1,72 @@
+<?php
+/*  Copyright (C) 2006      Jean Heimburger     <address@hidden>
+ *
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+ *
+ * $Source: 
/sources/dolibarr/dolibarr/htdocs/oscommerce_ws/ws_server/ws_customers.php,v $
+ *
+ */
+
+set_magic_quotes_runtime(0);
+
+// Soap Server.
+require_once('./lib/nusoap.php');
+
+require_once('./includes/configure.php');
+
+// Create the soap Object
+$s = new soap_server;
+
+// Register the methods available for clients
+$s->register('get_Client');
+
+// méthodes
+function get_Client($custid='') {
+
+//on se connecte
+       if (!($connexion = mysql_connect(DB_SERVER, DB_SERVER_USERNAME, DB_SERVER_PASSWORD)))   return new 
soap_fault("Server", "MySQL 1", "connection impossible");
+       if (!($db = mysql_select_db(DB_DATABASE, $connexion)))  return new 
soap_fault("Server", "MySQL 2", mysql_error());
+
+//la requête
+       $sql = "SELECT c.customers_id, a.entry_company, a.entry_firstname, 
a.entry_lastname, a.entry_street_address, a.entry_postcode, a.entry_city, 
c.customers_telephone, c.customers_fax, c.customers_email_address, a.entry_country_id, 
b.countries_iso_code_2, b.countries_name ";
+       $sql .= " from customers c JOIN address_book a ON a.customers_id = 
c.customers_id JOIN countries b ON b.countries_id = a.entry_country_id JOIN orders o ON 
o.customers_id = c.customers_id ";
+if ($custid > 0)    $sql .= "WHERE c.customers_id = ".$custid;
+       $sql .= " GROUP BY c.customers_id ORDER BY c.customers_id";
+
+       if (!($resquer = mysql_query($sql,$connexion)))  return new soap_fault("Server", 
"MySQL 3 ".$sql, mysql_error());
+       
+//     $result[$i] = $numrows." lignes trouvées ".$sql;
+               switch ($numrows = mysql_numrows($resquer)) {
+ case 0 : + return new soap_fault("Server", "MySQL 4", "client inexistant ".$sql);
+                       break;
+               default :
+                       $i = 0;
+                       while ( $i < $numrows)  {
+                               $result[$i] =  mysql_fetch_array($resquer, 
MYSQL_ASSOC);
+                               $i++;
+                       }
+                       break;
+               }               
+       mysql_close($connexion);
+ /* Sends the results to the client */
+return $result;
+}
+
+// Return the results.
+$s->service($HTTP_RAW_POST_DATA);
+
+?>
diff -Naur 
/home/jean/gestion/dolibarr/htdocs/oscommerce_ws/ws_server/ws_orders.php 
/home/jean/projets/dolibarr/htdocs/oscommerce_ws/ws_server/ws_orders.php
--- /home/jean/gestion/dolibarr/htdocs/oscommerce_ws/ws_server/ws_orders.php    
2006-07-13 02:59:00.000000000 -1000
+++ /home/jean/projets/dolibarr/htdocs/oscommerce_ws/ws_server/ws_orders.php    
2006-07-30 18:18:32.000000000 -1000
@@ -1,24 +1,39 @@
-<?php
-/*---------------------------------------------
-/ Webservices OSC pour dolibarr
-/ gestion des commandes
-/
-/ Jean Heimburger                      juin 2006
-----------------------------------------------*/
-
-set_magic_quotes_runtime(0);
-
-// Soap Server.
-require_once('./lib/nusoap.php');
+<?php
+/*  Copyright (C) 2006      Jean Heimburger     <address@hidden>
+ *
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+ *
+ * $Source: 
/sources/dolibarr/dolibarr/htdocs/oscommerce_ws/ws_server/ws_orders.php,v $
+ *
+ */
+set_magic_quotes_runtime(0);
+
+// Soap Server.
+require_once('./lib/nusoap.php');
require_once('./includes/configure.php');
-
-// Create the soap Object
-$s = new soap_server;
-
-// Register the methods available for clients
+
+// Create the soap Object
+$s = new soap_server;
+
+// Register the methods available for clients
 $s->register('get_CAmensuel');
 $s->register('get_orders');
+$s->register('get_lastOrderClients');
+$s->register('get_Order');
/*----------------------------------------------
 * renvoie un tableau avec le CA mensuel réalisé
@@ -26,8 +41,8 @@
 function get_CAmensuel() {
//on se connecte
-       if (!($connexion = mysql_connect(OSC_DB_SERVER, OSC_DB_SERVER_USERNAME, OSC_DB_SERVER_PASSWORD)))   
return new soap_fault("Server", "MySQL 1", "connection impossible");
-       if (!($db = mysql_select_db(OSC_DB_DATABASE, $connexion)))  return new 
soap_fault("Server", "MySQL 2", mysql_error());
+       if (!($connexion = mysql_connect(DB_SERVER, DB_SERVER_USERNAME, DB_SERVER_PASSWORD)))   return new 
soap_fault("Server", "MySQL 1", "connection impossible");
+       if (!($db = mysql_select_db(DB_DATABASE, $connexion)))  return new 
soap_fault("Server", "MySQL 2", mysql_error());
//la requête
        $sql = "SELECT sum(t.value) as value, MONTH(o.date_purchased) as mois";
@@ -38,10 +53,10 @@
if (!($resquer = mysql_query($sql,$connexion))) return new soap_fault("Server", "MySQL 3 ".$sql, mysql_error()); - switch ($numrows = mysql_numrows($resquer)) { - case 0 : - return new soap_fault("Server", "MySQL 4", "produit inexistant");
-                       break;
+               switch ($numrows = mysql_numrows($resquer)) {
+ case 0 : + return new soap_fault("Server", "MySQL 4", "produit inexistant");
+                       break;
                default :
                        $i = 0;
                        while ( $i < $numrows)  {
@@ -58,9 +73,9 @@
 function get_orders($limit='', $status='') {
//on se connecte
-       if (!($connexion = mysql_connect(OSC_DB_SERVER, OSC_DB_SERVER_USERNAME, OSC_DB_SERVER_PASSWORD)))   
return new soap_fault("Server", "MySQL 1", "connection impossible");
-       if (!($db = mysql_select_db(OSC_DB_DATABASE, $connexion)))  return new 
soap_fault("Server", "MySQL 2", mysql_error());
-       
+       if (!($connexion = mysql_connect(DB_SERVER, DB_SERVER_USERNAME, DB_SERVER_PASSWORD)))   return new 
soap_fault("Server", "MySQL 1", "connection impossible");
+       if (!($db = mysql_select_db(DB_DATABASE, $connexion)))  return new 
soap_fault("Server", "MySQL 2", mysql_error());
+
 //on recherche
 $sql = "SELECT o.orders_id, o.customers_name, o.date_purchased, t.value, 
o.payment_method";
 $sql .= " FROM orders_total as t JOIN orders as o on o.orders_id = t.orders_id 
";
@@ -72,10 +87,44 @@
        if (!($resquer = mysql_query($sql,$connexion)))  return new soap_fault("Server", 
"MySQL 3 ".$sql, mysql_error());
        $result ='';
- switch ($numrows = mysql_numrows($resquer)) { - case 0 : + switch ($numrows = mysql_numrows($resquer)) { + case 0 : //return new soap_fault("Server", "MySQL 4", "produit inexistant");
+                       break;
+               default :
+                       $i = 0;
+                       while ( $i < $numrows)  {
+                               $result[$i] =  mysql_fetch_array($resquer, 
MYSQL_ASSOC);
+                               $i++;
+                       }
                        break;
+               }       
+       mysql_close($connexion);
+ /* Sends the results to the client */
+return $result;
+}
+
+
+function get_lastOrderClients($id='',$name='',$limit='') {
+
+//on se connecte
+       if (!($connexion = mysql_connect(DB_SERVER, DB_SERVER_USERNAME, DB_SERVER_PASSWORD)))   return new 
soap_fault("Server", "MySQL 1", "connection impossible");
+       if (!($db = mysql_select_db(DB_DATABASE, $connexion)))  return new 
soap_fault("Server", "MySQL 2", mysql_error());
+
+//on recherche
+       $sql = "SELECT o.orders_id, o.customers_name, o.delivery_country, 
o.date_purchased, t.value, s.orders_status_name as statut";
+       $sql .= " FROM orders_total as t JOIN orders as o on o.orders_id = 
t.orders_id ";
+       $sql .= " JOIN orders_status as s on o.orders_status = s.orders_status_id 
and s.language_id = 1";
+       $sql .= " WHERE t.class = 'ot_subtotal' order by o.date_purchased desc";
+       if ($limit > 0) $sql .= " LIMIT ".$limit;
+ + if (!($resquer = mysql_query($sql,$connexion))) return new soap_fault("Server", "MySQL 3 ".$sql, mysql_error());
+       $result ='';
+
+               switch ($numrows = mysql_numrows($resquer)) {
+ case 0 : + return new soap_fault("Server", "MySQL 4", "produit inexistant");
+                       break;
                default :
                        $i = 0;
                        while ( $i < $numrows)  {
@@ -89,7 +138,70 @@
 return $result;
 }
-// Return the results.
-$s->service($HTTP_RAW_POST_DATA);
+//renvoie la commande $id ou toute la liste des commandes si $id = 0
+
+function get_Order($orderid="0")
+{
+
+//on se connecte
+       if (!($connexion = mysql_connect(DB_SERVER, DB_SERVER_USERNAME, DB_SERVER_PASSWORD)))   return new 
soap_fault("Server", "MySQL 1", "connection impossible");
+       if (!($db = mysql_select_db(DB_DATABASE, $connexion)))  return new 
soap_fault("Server", "MySQL 2", mysql_error());
-?>
+//on recherche la commande
+$sql = "SELECT o.orders_id, o.customers_name, o.customers_id, o.date_purchased, 
t.value, o.payment_method ";
+$sql .= " FROM orders_total as t JOIN orders as o on o.orders_id = t.orders_id 
";
+$sql .= " WHERE t.class = 'ot_subtotal'";
+if ($orderid > 0) $sql .=  " and o.orders_id = ".$orderid;
+$sql .= " ORDER BY o.date_purchased desc";
+
+ + if (!($resquer = mysql_query($sql,$connexion))) return new soap_fault("Server", "MySQL 3 ".$sql, mysql_error());
+       $result ='';
+
+               switch ($numrows = mysql_numrows($resquer)) {
+ case 0 : + return new soap_fault("Server", "MySQL 4", "commande inexistante");
+                       break;
+               default :
+                       $i = 0;
+                       while ( $i < $numrows)  {
+                               $result[$i] =  mysql_fetch_array($resquer, 
MYSQL_ASSOC);
+                               $i++;
+                       }
+                       break;
+               }
+               $j = $i--;
+
+if ($orderid > 0) +{
+       //on recherche les lignes de la commande
+       $sql = "SELECT l.products_id, l.products_name, l.products_price, 
l.final_price, l.products_tax, l.products_quantity ";
+       $sql .= " FROM orders_products l ";
+       $sql .= " WHERE l.orders_id = ".$orderid;
+
+ + if (!($resquer = mysql_query($sql,$connexion))) return new soap_fault("Server", "MySQL 3 ".$sql, mysql_error());
+
+               switch ($numrows = mysql_numrows($resquer)) {
+ case 0 : + return new soap_fault("Server", "MySQL 5", "commande sans articles");
+                       break;
+               default :
+
+                       while ( $i < $numrows)  {
+                               $result[$j + $i] =  mysql_fetch_array($resquer, 
MYSQL_ASSOC);
+                               $i++;
+                       }
+                       break;
+               }
+}
+mysql_close($connexion);
+ /* Sends the results to the client */
+return $result;
+}
+
+
+// Return the results.
+$s->service($HTTP_RAW_POST_DATA);
+
+?>
--- /home/jean/gestion/dolibarr/htdocs/conf/conf.class.php      2006-08-07 
21:26:23.771202648 -1000
+++ /home/jean/projets/dolibarr/htdocs/conf/conf.class.php      2006-08-07 
21:21:09.283012120 -1000
@@ -2,6 +2,7 @@
 /* Copyright (C) 2003      Rodolphe Quiedeville <address@hidden>
  * Copyright (C) 2003      Xavier Dutoit        <address@hidden>
  * Copyright (C) 2004-2006 Laurent Destailleur  <address@hidden>
+ * Copyright (C) 2006     Jean Heimburger      <address@hidden>
  *
  * This program is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -62,6 +63,7 @@
     var $webcal;
     var $propal;
     var $categorie;
+       var $oscommerce2;
/**

------------------------------------------------------------------------

No virus found in this outgoing message.
Checked by AVG Free Edition.
Version: 7.1.394 / Virus Database: 268.10.7/411 - Release Date: 07/08/2006
------------------------------------------------------------------------

_______________________________________________
Dolibarr-dev mailing list
address@hidden
http://lists.nongnu.org/mailman/listinfo/dolibarr-dev


--
Laurent Destailleur.
---------------------------------------------------------------
EMail: address@hidden
Web: http://www.destailleur.fr
IM: IRC=Eldy, Jabber=Eldy

AWStats (Author) : http://awstats.sourceforge.net
CVSChangeLogBuilder (Author) : http://cvschangelogb.sourceforge.net
AWBot (Author) : http://awbot.sourceforge.net
Dolibarr (Contributor) : http//www.dolibarr.org





reply via email to

[Prev in Thread] Current Thread [Next in Thread]