<?php
/**
* Classe de modèle spécifique aux clients
*
*/
class vm_soaModelclients extends JModel
{
function clientsList()
{
JRequest::getVar('trace')->trace_it(__FILE__." clientsList début", 1, 1);
/**
* On commence par récupérer la liste des clients VirtueMart
*/
require_once( JPATH_COMPONENT.DS."models".DS."virtuemart_access.php" );
$my_vm=new VMaccess();
$VmClients=$my_vm->get_clients();
// echo "<br>Clients VirtueMart";
// JRequest::getVar('trace')->trace_print_r($VmClients);
/**
* Ensuite on récupére la liste des clients
*/
require_once( JPATH_COMPONENT.DS."models".DS."dolibarr_access.php" );
$my_dol=new DOLaccess();
$DolClients=$my_dol->get_clients();
// echo "<br>Clients ";
// JRequest::getVar('trace')->trace_print_r($DolClients);
if (is_array($VmClients))
{
reset($VmClients);
foreach($VmClients as $k => $v)
{
// JRequest::getVar('trace')->trace_print_r($v);
$tmpClient=new client($v);
$list_clients[$tmpClient->ks]=new clients_mix();
$list_clients[$tmpClient->ks]->vm=$tmpClient;
$list_clients[$tmpClient->ks]->update();
}
}
if (is_array($DolClients) > 0)
{
foreach($DolClients as $k => $v)
{
$tmpClient=new client($v);
if (!isset($list_clients[$tmpClient->ks]))
{
$list_clients[$tmpClient->ks]=new clients_mix();
}
$list_clients[$tmpClient->ks]->dol=$tmpClient;
$list_clients[$tmpClient->ks]->update();
}
}
/**
* On mémorise le résultat pour le récupérer dans la fonction d'affichage
*/
JRequest::setVar('list_clients', $list_clients);
JRequest::getVar('trace')->trace_it(__FILE__." clientsList fin", 1, -1);
}
function clientsApply()
{
JRequest::getVar('trace')->trace_it(__FILE__." clientsApply début", 1, 1);
require_once( JPATH_COMPONENT.DS."models".DS."virtuemart_access.php" );
$my_vm=new VMaccess();
$cids=JRequest::getVar('cid');
$vm2dol="";
if (is_array($cids))
{
foreach($cids as $k => $v)
{
list($vmid,$dolid)=split("-", $v);
if ($vmid != '')
{
if ($dolid == '')
{
echo "<br>export du client VirtueMart : ".$vmid." vers ";
$vm2dol[]=$vmid;
}
else
{
echo "<br>mise à jour d'un client : non encore codé...";
}
}
else
{
echo "<br>Pas d'id Virtuemart : pas de traitement prévu (l'import des clients vers VirtueMart n'est pas traité).";
}
}
}
else
{
echo "<br>Pas de clients à propager...";
}
if (is_array($vm2dol))
{
$VmClients=$my_vm->get_ces_clients($vm2dol);
require_once( JPATH_COMPONENT.DS."models".DS."dolibarr_access.php" );
$my_dol=new DOLaccess();
// On envoie les produits Ã
$res=$my_dol->set_clients($VmClients);
}
JRequest::getVar('trace')->trace_it(__FILE__." clientsApply fin", 1, -1);
}
}
?>