Works on delivery and billing address

first step: rename llx_societe_adresse_livraison to llx_societe_address
This commit is contained in:
Regis Houssin 2010-05-29 10:14:51 +00:00
parent 8e9af1583b
commit 1dc875749c
21 changed files with 334 additions and 318 deletions

View File

@ -1325,7 +1325,7 @@ CREATE TABLE `llx_commande` (
`fk_cond_reglement` int(11) DEFAULT NULL,
`fk_mode_reglement` int(11) DEFAULT NULL,
`date_livraison` date DEFAULT NULL,
`fk_adresse_livraison` int(11) DEFAULT NULL,
`fk_address` int(11) DEFAULT NULL,
`import_key` varchar(14) DEFAULT NULL,
PRIMARY KEY (`rowid`),
UNIQUE KEY `uk_commande_ref` (`ref`,`entity`),
@ -2251,7 +2251,7 @@ CREATE TABLE `llx_expedition` (
`date_valid` datetime DEFAULT NULL,
`fk_user_valid` int(11) DEFAULT NULL,
`date_expedition` date DEFAULT NULL,
`fk_adresse_livraison` int(11) DEFAULT NULL,
`fk_address` int(11) DEFAULT NULL,
`fk_expedition_methode` int(11) DEFAULT NULL,
`tracking_number` varchar(50) DEFAULT NULL,
`fk_statut` smallint(6) DEFAULT '0',
@ -2268,9 +2268,9 @@ CREATE TABLE `llx_expedition` (
KEY `idx_expedition_fk_soc` (`fk_soc`),
KEY `idx_expedition_fk_user_author` (`fk_user_author`),
KEY `idx_expedition_fk_user_valid` (`fk_user_valid`),
KEY `idx_expedition_fk_adresse_livraison` (`fk_adresse_livraison`),
KEY `idx_expedition_fk_address` (`fk_address`),
KEY `idx_expedition_fk_expedition_methode` (`fk_expedition_methode`),
CONSTRAINT `fk_expedition_fk_adresse_livraison` FOREIGN KEY (`fk_adresse_livraison`) REFERENCES `llx_societe_adresse_livraison` (`rowid`),
CONSTRAINT `fk_expedition_fk_address` FOREIGN KEY (`fk_address`) REFERENCES `llx_societe_address` (`rowid`),
CONSTRAINT `fk_expedition_fk_expedition_methode` FOREIGN KEY (`fk_expedition_methode`) REFERENCES `llx_expedition_methode` (`rowid`),
CONSTRAINT `fk_expedition_fk_soc` FOREIGN KEY (`fk_soc`) REFERENCES `llx_societe` (`rowid`),
CONSTRAINT `fk_expedition_fk_user_author` FOREIGN KEY (`fk_user_author`) REFERENCES `llx_user` (`rowid`),
@ -2879,7 +2879,7 @@ CREATE TABLE `llx_livraison` (
`date_valid` datetime DEFAULT NULL,
`fk_user_valid` int(11) DEFAULT NULL,
`date_livraison` date DEFAULT NULL,
`fk_adresse_livraison` int(11) DEFAULT NULL,
`fk_address` int(11) DEFAULT NULL,
`fk_statut` smallint(6) DEFAULT '0',
`total_ht` double(24,8) DEFAULT '0.00000000',
`note` text,
@ -2890,8 +2890,8 @@ CREATE TABLE `llx_livraison` (
KEY `idx_livraison_fk_soc` (`fk_soc`),
KEY `idx_livraison_fk_user_author` (`fk_user_author`),
KEY `idx_livraison_fk_user_valid` (`fk_user_valid`),
KEY `idx_livraison_fk_adresse_livraison` (`fk_adresse_livraison`),
CONSTRAINT `fk_livraison_fk_adresse_livraison` FOREIGN KEY (`fk_adresse_livraison`) REFERENCES `llx_societe_adresse_livraison` (`rowid`),
KEY `idx_livraison_fk_address` (`fk_address`),
CONSTRAINT `fk_livraison_fk_address` FOREIGN KEY (`fk_address`) REFERENCES `llx_societe_address` (`rowid`),
CONSTRAINT `fk_livraison_fk_soc` FOREIGN KEY (`fk_soc`) REFERENCES `llx_societe` (`rowid`),
CONSTRAINT `fk_livraison_fk_user_author` FOREIGN KEY (`fk_user_author`) REFERENCES `llx_user` (`rowid`),
CONSTRAINT `fk_livraison_fk_user_valid` FOREIGN KEY (`fk_user_valid`) REFERENCES `llx_user` (`rowid`)
@ -3862,7 +3862,7 @@ CREATE TABLE `llx_propal` (
`note_public` text,
`model_pdf` varchar(50) DEFAULT NULL,
`date_livraison` date DEFAULT NULL,
`fk_adresse_livraison` int(11) DEFAULT NULL,
`fk_address` int(11) DEFAULT NULL,
PRIMARY KEY (`rowid`),
UNIQUE KEY `uk_propal_ref` (`ref`,`entity`),
KEY `idx_propal_fk_soc` (`fk_soc`),
@ -4026,17 +4026,17 @@ INSERT INTO `llx_societe` VALUES (1,0,NULL,'2010-02-08 12:39:02','2010-02-07 02:
UNLOCK TABLES;
--
-- Table structure for table `llx_societe_adresse_livraison`
-- Table structure for table `llx_societe_address`
--
DROP TABLE IF EXISTS `llx_societe_adresse_livraison`;
CREATE TABLE `llx_societe_adresse_livraison` (
DROP TABLE IF EXISTS `llx_societe_address`;
CREATE TABLE `llx_societe_address` (
`rowid` int(11) NOT NULL AUTO_INCREMENT,
`datec` datetime DEFAULT NULL,
`tms` timestamp NOT NULL,
`label` varchar(30) DEFAULT NULL,
`fk_societe` int(11) DEFAULT '0',
`nom` varchar(60) DEFAULT NULL,
`fk_soc` int(11) DEFAULT '0',
`name` varchar(60) DEFAULT NULL,
`address` varchar(255) DEFAULT NULL,
`cp` varchar(10) DEFAULT NULL,
`ville` varchar(50) DEFAULT NULL,
@ -4050,12 +4050,12 @@ CREATE TABLE `llx_societe_adresse_livraison` (
) TYPE=InnoDB;
--
-- Dumping data for table `llx_societe_adresse_livraison`
-- Dumping data for table `llx_societe_address`
--
LOCK TABLES `llx_societe_adresse_livraison` WRITE;
/*!40000 ALTER TABLE `llx_societe_adresse_livraison` DISABLE KEYS */;
/*!40000 ALTER TABLE `llx_societe_adresse_livraison` ENABLE KEYS */;
LOCK TABLES `llx_societe_address` WRITE;
/*!40000 ALTER TABLE `llx_societe_address` DISABLE KEYS */;
/*!40000 ALTER TABLE `llx_societe_address` ENABLE KEYS */;
UNLOCK TABLES;
--

View File

@ -29,7 +29,11 @@
require("../main.inc.php");
require_once(DOL_DOCUMENT_ROOT.'/comm/propal/class/propal.class.php');
require_once(DOL_DOCUMENT_ROOT.'/includes/modules/propale/modules_propale.php');
if ($conf->projet->enabled) require_once(DOL_DOCUMENT_ROOT.'/lib/project.lib.php');
if ($conf->projet->enabled)
{
require_once(DOL_DOCUMENT_ROOT."/projet/class/project.class.php");
require_once(DOL_DOCUMENT_ROOT.'/lib/project.lib.php');
}
$langs->load("propal");
if ($conf->projet->enabled) $langs->load("projects");
@ -179,10 +183,10 @@ if ($_GET["action"] == 'create')
{
print '<tr><td>'.$langs->trans('DeliveryAddress').'</td>';
print '<td colspan="3">';
$numaddress = $html->select_adresse_livraison($soc->fk_delivery_address, $_GET['socid'],'adresse_livraison_id',1);
$numaddress = $html->select_address($soc->fk_delivery_address, $_GET['socid'],'fk_address',1);
if ($numaddress==0)
{
print ' &nbsp; <a href=../comm/adresse_livraison.php?socid='.$soc->id.'&action=create>'.$langs->trans("AddAddress").'</a>';
print ' &nbsp; <a href=../comm/address.php?socid='.$soc->id.'&action=create>'.$langs->trans("AddAddress").'</a>';
}
print '</td></tr>';
}

View File

@ -1,7 +1,7 @@
<?php
/* Copyright (C) 2001-2005 Rodolphe Quiedeville <rodolphe@quiedeville.org>
* Copyright (C) 2004-2006 Laurent Destailleur <eldy@users.sourceforge.net>
* Copyright (C) 2005-2009 Regis Houssin <regis@dolibarr.fr>
* Copyright (C) 2005-2010 Regis Houssin <regis@dolibarr.fr>
*
* 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
@ -19,15 +19,15 @@
*/
/**
\file htdocs/comm/adresse_livraison.php
\ingroup societe
\brief Onglet adresse de livraison d'un client
\version $Id$
*/
* \file htdocs/comm/address.php
* \ingroup societe
* \brief Onglet adresses d'un client
* \version $Id$
*/
require("../main.inc.php");
require_once(DOL_DOCUMENT_ROOT."/lib/company.lib.php");
require_once(DOL_DOCUMENT_ROOT."/comm/class/adresse_livraison.class.php");
require_once(DOL_DOCUMENT_ROOT."/comm/class/address.class.php");
$langs->load("companies");
$langs->load("commercial");
@ -49,26 +49,25 @@ $result = restrictedArea($user, 'societe', $socid);
if ($_POST["action"] == 'add' || $_POST["action"] == 'update')
{
$livraison = new AdresseLivraison($db);
$address = new Address($db);
$livraison->socid = $_POST["socid"];
$livraison->label = ($_POST["label"]!=$langs->trans('RequiredField')?$_POST["label"]:'');
$livraison->nom = ($_POST["nom"]!=$langs->trans('RequiredField')?$_POST["nom"]:'');
$livraison->adresse = $_POST["adresse"];
$livraison->address = $_POST["adresse"]; // TODO obsolete
$livraison->cp = $_POST["cp"];
$livraison->ville = $_POST["ville"];
$livraison->pays_id = $_POST["pays_id"];
$livraison->tel = $_POST["tel"];
$livraison->fax = $_POST["fax"];
$livraison->note = $_POST["note"];
$address->socid = $_POST["socid"];
$address->label = ($_POST["label"]!=$langs->trans('RequiredField')?$_POST["label"]:'');
$address->name = ($_POST["name"]!=$langs->trans('RequiredField')?$_POST["name"]:'');
$address->address = $_POST["address"];
$address->cp = $_POST["cp"];
$address->ville = $_POST["ville"];
$address->pays_id = $_POST["pays_id"];
$address->tel = $_POST["tel"];
$address->fax = $_POST["fax"];
$address->note = $_POST["note"];
if ($_POST["action"] == 'add')
{
$socid = $_POST["socid"];
$origin = $_POST["origin"];
$originid = $_POST["originid"];
$result = $livraison->create($socid, $user);
$socid = $_POST["socid"];
$origin = $_POST["origin"];
$originid = $_POST["originid"];
$result = $address->create($socid, $user);
if ($result >= 0)
{
@ -84,23 +83,23 @@ if ($_POST["action"] == 'add' || $_POST["action"] == 'update')
}
else
{
Header("Location: adresse_livraison.php?socid=".$socid);
Header("Location: ".$_SERVER['PHP_SELF']."?socid=".$socid);
exit;
}
}
else
{
$mesg = $livraison->error;
$mesg = $address->error;
$_GET["action"]='create';
}
}
if ($_POST["action"] == 'update')
{
$socid = $_POST["socid"];
$origin = $_POST["origin"];
$originid = $_POST["originid"];
$result = $livraison->update($_POST["id"], $socid, $user);
$socid = $_POST["socid"];
$origin = $_POST["origin"];
$originid = $_POST["originid"];
$result = $address->update($_POST["id"], $socid, $user);
if ($result >= 0)
{
@ -121,14 +120,14 @@ if ($_POST["action"] == 'add' || $_POST["action"] == 'update')
}
else
{
Header("Location: adresse_livraison.php?socid=".$socid);
Header("Location: ".$_SERVER['PHP_SELF']."?socid=".$socid);
exit;
}
}
else
{
$reload = 0;
$mesg = $livraison->error;
$mesg = $address->error;
$_GET["action"]= "edit";
}
}
@ -137,12 +136,12 @@ if ($_POST["action"] == 'add' || $_POST["action"] == 'update')
if ($_POST["action"] == 'confirm_delete' && $_POST["confirm"] == 'yes' && $user->rights->societe->supprimer)
{
$livraison = new AdresseLivraison($db);
$result = $livraison->delete($_GET["id"], $socid);
$address = new Address($db);
$result = $address->delete($_GET["id"], $socid);
if ($result == 0)
{
Header("Location: adresse_livraison.php?socid=".$socid);
Header("Location: ".$_SERVER['PHP_SELF']."?socid=".$socid);
exit ;
}
else
@ -169,10 +168,10 @@ if ($_GET["action"] == 'create' || $_POST["action"] == 'create')
if ($user->rights->societe->creer)
{
/*
* Fiche adresse de livraison en mode creation
* Fiche adresse en mode creation
*/
$livraison = new AdresseLivraison($db);
$address = new Address($db);
$societe=new Societe($db);
$societe->fetch($socid);
@ -180,25 +179,27 @@ if ($_GET["action"] == 'create' || $_POST["action"] == 'create')
dol_fiche_head($head, 'customer', $societe->nom);
if ($_POST["label"] && $_POST["nom"])
if ($_POST["label"] && $_POST["name"])
{
$livraison->socid=$_POST["socid"];
$livraison->label=$_POST["label"];
$livraison->nom=$_POST["nom"];
$livraison->adresse=$_POST["adresse"]; // TODO obsolete
$livraison->address=$_POST["adresse"];
$livraison->cp=$_POST["cp"];
$livraison->ville=$_POST["ville"];
$livraison->tel=$_POST["tel"];
$livraison->fax=$_POST["fax"];
$livraison->note=$_POST["note"];
$address->socid = $_POST["socid"];
$address->label = $_POST["label"];
$address->name = $_POST["name"];
$address->address = $_POST["address"];
$address->cp = $_POST["cp"];
$address->ville = $_POST["ville"];
$address->tel = $_POST["tel"];
$address->fax = $_POST["fax"];
$address->note = $_POST["note"];
}
// On positionne pays_id, pays_code et libelle du pays choisi
$livraison->pays_id=$_POST["pays_id"]?$_POST["pays_id"]:$conf->global->MAIN_INFO_SOCIETE_PAYS;
if ($livraison->pays_id)
$address->pays_id=$_POST["pays_id"]?$_POST["pays_id"]:$conf->global->MAIN_INFO_SOCIETE_PAYS;
if ($address->pays_id)
{
$sql = "SELECT code, libelle from ".MAIN_DB_PREFIX."c_pays where rowid = ".$livraison->pays_id;
$sql = "SELECT code, libelle";
$sql.= " FROM ".MAIN_DB_PREFIX."c_pays";
$sql.= " WHERE rowid = ".$address->pays_id;
$resql=$db->query($sql);
if ($resql)
{
@ -208,21 +209,21 @@ if ($_GET["action"] == 'create' || $_POST["action"] == 'create')
{
dol_print_error($db);
}
$livraison->pays_code=$obj->code;
$livraison->pays=$obj->libelle;
$address->pays_code = $obj->code;
$address->pays = $obj->libelle;
}
print_titre($langs->trans("NewDeliveryAddress"));
print_titre($langs->trans("NewAddress"));
print "<br>\n";
if ($livraison->error)
if ($address->error)
{
print '<div class="error">';
print nl2br($livraison->error);
print nl2br($address->error);
print '</div>';
}
print '<form action="adresse_livraison.php" method="post" name="formsoc">';
print '<form action="'.$_SERVER['PHP_SELF'].'" method="POST" name="formsoc">';
print '<input type="hidden" name="token" value="'.$_SESSION['newtoken'].'">';
print '<input type="hidden" name="socid" value="'.$socid.'">';
print '<input type="hidden" name="origin" value="'.$origin.'">';
@ -231,32 +232,32 @@ if ($_GET["action"] == 'create' || $_POST["action"] == 'create')
print '<table class="border" width="100%">';
print '<tr><td>'.$langs->trans('DeliveryAddressLabel').'</td><td><input type="text" size="30" name="label" id="label" value="'.($livraison->label?$livraison->label:$langs->trans('RequiredField')).'" '.addHelpMessage("label",$langs->trans('RequiredField')).'></td></tr>';
print '<tr><td>'.$langs->trans('Name').'</td><td><input type="text" size="30" name="nom" id="nom" value="'.($livraison->nom?$livraison->nom:$langs->trans('RequiredField')).'" '.addHelpMessage("nom",$langs->trans('RequiredField')).'></td></tr>';
print '<tr><td>'.$langs->trans('AddressLabel').'</td><td><input type="text" size="30" name="label" id="label" value="'.($address->label?$address->label:$langs->trans('RequiredField')).'" '.addHelpMessage("label",$langs->trans('RequiredField')).'></td></tr>';
print '<tr><td>'.$langs->trans('Name').'</td><td><input type="text" size="30" name="name" id="name" value="'.($address->name?$address->name:$langs->trans('RequiredField')).'" '.addHelpMessage("name",$langs->trans('RequiredField')).'></td></tr>';
print '<tr><td valign="top">'.$langs->trans('Address').'</td><td colspan="3"><textarea name="adresse" cols="40" rows="3" wrap="soft">';
print $livraison->address;
print '<tr><td valign="top">'.$langs->trans('Address').'</td><td colspan="3"><textarea name="address" cols="40" rows="3" wrap="soft">';
print $address->address;
print '</textarea></td></tr>';
print '<tr><td>'.$langs->trans('Zip').'</td><td><input size="6" type="text" name="cp" value="'.$livraison->cp.'">';
print '<tr><td>'.$langs->trans('Zip').'</td><td><input size="6" type="text" name="cp" value="'.$address->cp.'">';
if ($conf->use_javascript_ajax && $conf->global->MAIN_AUTOFILL_TOWNFROMZIP) print ' <input class="button" type="button" name="searchpostalcode" value="'.$langs->trans('FillTownFromZip').'" onclick="autofilltownfromzip_PopupPostalCode(\''.DOL_URL_ROOT.'\',cp.value,ville,pays_id,departement_id)">';
print '</td></tr>';
print '<tr><td>'.$langs->trans('Town').'</td><td><input type="text" name="ville" value="'.$livraison->ville.'"></td></tr>';
print '<tr><td>'.$langs->trans('Town').'</td><td><input type="text" name="ville" value="'.$address->ville.'"></td></tr>';
print '<tr><td width="25%">'.$langs->trans('Country').'</td><td colspan="3">';
$form->select_pays($livraison->pays_id,'pays_id');
$form->select_pays($address->pays_id,'pays_id');
print '</td></tr>';
print '<tr><td>'.$langs->trans('Phone').'</td><td><input type="text" name="tel" value="'.$livraison->tel.'"></td></tr>';
print '<tr><td>'.$langs->trans('Phone').'</td><td><input type="text" name="tel" value="'.$address->tel.'"></td></tr>';
print '<tr><td>'.$langs->trans('Fax').'</td><td><input type="text" name="fax" value="'.$livraison->fax.'"></td></tr>';
print '<tr><td>'.$langs->trans('Fax').'</td><td><input type="text" name="fax" value="'.$address->fax.'"></td></tr>';
print '<tr><td>'.$langs->trans('Note').'</td><td colspan="3"><textarea name="note" cols="40" rows="6" wrap="soft">';
print $livraison->note;
print $address->note;
print '</textarea></td></tr>';
print '<tr><td colspan="4" align="center">';
print '<input type="submit" class="button" value="'.$langs->trans('AddDeliveryAddress').'"></td></tr>'."\n";
print '<input type="submit" class="button" value="'.$langs->trans('AddAddress').'"></td></tr>'."\n";
print '</table>'."\n";
print '</form>'."\n";
@ -268,7 +269,7 @@ elseif ($_GET["action"] == 'edit' || $_POST["action"] == 'edit')
/*
* Fiche societe en mode edition
*/
$livraison = new AdresseLivraison($db);
$address = new Address($db);
$societe=new Societe($db);
$societe->fetch($_GET["socid"]);
@ -276,35 +277,37 @@ elseif ($_GET["action"] == 'edit' || $_POST["action"] == 'edit')
dol_fiche_head($head, 'customer', $societe->nom);
print_titre($langs->trans("EditDeliveryAddress"));
print_titre($langs->trans("EditAddress"));
print "<br>\n";
if ($socid)
{
if ($reload || ! $_POST["nom"])
if ($reload || ! $_POST["name"])
{
$livraison->socid = $socid;
$livraison->fetch_adresse($id);
$address->socid = $socid;
$address->fetch_address($id);
}
else
{
$livraison->id=$_POST["id"];
$livraison->socid=$_POST["socid"];
$livraison->label=$_POST["label"];
$livraison->nom=$_POST["nom"];
$livraison->adresse=$_POST["adresse"]; // TODO obsolete
$livraison->address=$_POST["adresse"];
$livraison->zip=$_POST["zip"];
$livraison->ville=$_POST["ville"];
$livraison->pays_id=$_POST["pays_id"]?$_POST["pays_id"]:$conf->global->MAIN_INFO_SOCIETE_PAYS;
$livraison->tel=$_POST["tel"];
$livraison->fax=$_POST["fax"];
$livraison->note=$_POST["note"];
$address->id = $_POST["id"];
$address->socid = $_POST["socid"];
$address->label = $_POST["label"];
$address->name = $_POST["name"];
$address->address = $_POST["address"];
$address->zip = $_POST["zip"];
$address->ville = $_POST["ville"];
$address->pays_id = $_POST["pays_id"]?$_POST["pays_id"]:$conf->global->MAIN_INFO_SOCIETE_PAYS;
$address->tel = $_POST["tel"];
$address->fax = $_POST["fax"];
$address->note = $_POST["note"];
// On positionne pays_id, pays_code et libelle du pays choisi
if ($livraison->pays_id)
if ($address->pays_id)
{
$sql = "SELECT code, libelle from ".MAIN_DB_PREFIX."c_pays where rowid = ".$livraison->pays_id;
$sql = "SELECT code, libelle";
$sql.= " FROM ".MAIN_DB_PREFIX."c_pays";
$sql.= "WHERE rowid = ".$address->pays_id;
$resql=$db->query($sql);
if ($resql)
{
@ -314,51 +317,51 @@ elseif ($_GET["action"] == 'edit' || $_POST["action"] == 'edit')
{
dol_print_error($db);
}
$livraison->pays_code=$obj->code;
$livraison->pays=$langs->trans("Country".$obj->code)?$langs->trans("Country".$obj->code):$obj->libelle;
$address->pays_code = $obj->code;
$address->pays = $langs->trans("Country".$obj->code)?$langs->trans("Country".$obj->code):$obj->libelle;
}
}
if ($livraison->error)
if ($address->error)
{
print '<div class="error">';
print $livraison->error;
print $address->error;
print '</div>';
}
print '<form action="adresse_livraison.php?socid='.$livraison->socid.'" method="post" name="formsoc">';
print '<form action="'.$_SERVER['PHP_SELF'].'?socid='.$address->socid.'" method="POST" name="formsoc">';
print '<input type="hidden" name="token" value="'.$_SESSION['newtoken'].'">';
print '<input type="hidden" name="action" value="update">';
print '<input type="hidden" name="socid" value="'.$livraison->socid.'">';
print '<input type="hidden" name="socid" value="'.$address->socid.'">';
print '<input type="hidden" name="origin" value="'.$origin.'">';
print '<input type="hidden" name="originid" value="'.$originid.'">';
print '<input type="hidden" name="id" value="'.$livraison->id.'">';
print '<input type="hidden" name="id" value="'.$address->id.'">';
print '<table class="border" width="100%">';
print '<tr><td>'.$langs->trans('DeliveryAddressLabel').'</td><td colspan="3"><input type="text" size="40" name="label" value="'.$livraison->label.'"></td></tr>';
print '<tr><td>'.$langs->trans('Name').'</td><td colspan="3"><input type="text" size="40" name="nom" value="'.$livraison->nom.'"></td></tr>';
print '<tr><td>'.$langs->trans('AddressLabel').'</td><td colspan="3"><input type="text" size="40" name="label" value="'.$address->label.'"></td></tr>';
print '<tr><td>'.$langs->trans('Name').'</td><td colspan="3"><input type="text" size="40" name="name" value="'.$address->name.'"></td></tr>';
print '<tr><td valign="top">'.$langs->trans('Address').'</td><td colspan="3"><textarea name="adresse" cols="40" rows="3" wrap="soft">';
print $livraison->address;
print '<tr><td valign="top">'.$langs->trans('Address').'</td><td colspan="3"><textarea name="address" cols="40" rows="3" wrap="soft">';
print $address->address;
print '</textarea></td></tr>';
print '<tr><td>'.$langs->trans('Zip').'</td><td><input size="6" type="text" name="cp" value="'.$livraison->cp.'">';
print '<tr><td>'.$langs->trans('Zip').'</td><td><input size="6" type="text" name="cp" value="'.$address->cp.'">';
if ($conf->use_javascript_ajax && $conf->global->MAIN_AUTOFILL_TOWNFROMZIP) print ' <input class="button" type="button" name="searchpostalcode" value="'.$langs->trans('FillTownFromZip').'" onclick="autofilltownfromzip_PopupPostalCode(\''.DOL_URL_ROOT.'\',cp.value,ville,pays_id,departement_id)">';
print '</td></tr>';
print '<tr><td>'.$langs->trans('Town').'</td><td><input type="text" name="ville" value="'.$livraison->ville.'"></td></tr>';
print '<tr><td>'.$langs->trans('Town').'</td><td><input type="text" name="ville" value="'.$address->ville.'"></td></tr>';
print '<tr><td>'.$langs->trans('Country').'</td><td colspan="3">';
$form->select_pays($livraison->pays_id,'pays_id');
$form->select_pays($address->pays_id,'pays_id');
print '</td></tr>';
print '<tr><td>'.$langs->trans('Phone').'</td><td><input type="text" name="tel" value="'.$livraison->tel.'"></td></tr>';
print '<tr><td>'.$langs->trans('Phone').'</td><td><input type="text" name="tel" value="'.$address->tel.'"></td></tr>';
print '<tr><td>'.$langs->trans('Fax').'</td><td><input type="text" name="fax" value="'.$livraison->fax.'"></td></tr>';
print '<tr><td>'.$langs->trans('Fax').'</td><td><input type="text" name="fax" value="'.$address->fax.'"></td></tr>';
print '<tr><td>'.$langs->trans('Note').'</td><td colspan="3"><textarea name="note" cols="40" rows="6" wrap="soft">';
print $livraison->note;
print $address->note;
print '</textarea></td></tr>';
print '<tr><td align="center" colspan="4"><input type="submit" class="button" value="'.$langs->trans("Save").'"></td></tr>';
@ -372,58 +375,58 @@ else
/*
* Fiche societe en mode visu
*/
$livraison = new AdresseLivraison($db);
$result=$livraison->fetch($socid);
$address = new Address($db);
$result=$address->fetch($socid);
if ($result < 0)
{
dol_print_error($db,$livraison->error);
dol_print_error($db,$address->error);
exit;
}
$societe=new Societe($db);
$societe->fetch($livraison->socid);
$societe->fetch($address->socid);
$head = societe_prepare_head($societe);
dol_fiche_head($head, 'customer', $societe->nom);
// Confirmation de la suppression de la facture
// Confirmation de la suppression de l'adresse
if ($_GET["action"] == 'delete')
{
$html = new Form($db);
$ret=$html->form_confirm("adresse_livraison.php?socid=".$livraison->socid."&amp;id=".$_GET["id"],$langs->trans("DeleteDeliveryAddress"),$langs->trans("ConfirmDeleteDeliveryAdress"),"confirm_delete");
$ret=$html->form_confirm($_SERVER['PHP_SELF']."?socid=".$address->socid."&amp;id=".$_GET["id"],$langs->trans("DeleteAddress"),$langs->trans("ConfirmDeleteAddress"),"confirm_delete");
if ($ret == 'html') print '<br>';
}
if ($livraison->error)
if ($address->error)
{
print '<div class="error">';
print $livraison->error;
print $address->error;
print '</div>';
}
$nblignes = sizeof($livraison->lignes);
if ($nblignes)
$nblines = sizeof($address->lines);
if ($nblines)
{
for ($i = 0 ; $i < $nblignes ; $i++)
for ($i = 0 ; $i < $nblines ; $i++)
{
print '<table class="border" width="100%">';
print '<tr><td width="20%">'.$langs->trans('DeliveryAddressLabel').'</td><td colspan="3">'.$livraison->lignes[$i]->label.'</td>';
print '<td valign="top" colspan="2" width="50%" rowspan="6">'.$langs->trans('Note').' :<br>'.nl2br($livraison->lignes[$i]->note).'</td></tr>';
print '<tr><td width="20%">'.$langs->trans('Name').'</td><td colspan="3">'.$livraison->lignes[$i]->nom.'</td></tr>';
print '<tr><td width="20%">'.$langs->trans('AddressLabel').'</td><td colspan="3">'.$address->lines[$i]->label.'</td>';
print '<td valign="top" colspan="2" width="50%" rowspan="6">'.$langs->trans('Note').' :<br>'.nl2br($address->lines[$i]->note).'</td></tr>';
print '<tr><td width="20%">'.$langs->trans('Name').'</td><td colspan="3">'.$address->lines[$i]->name.'</td></tr>';
print "<tr><td valign=\"top\">".$langs->trans('Address')."</td><td colspan=\"3\">".nl2br($livraison->lignes[$i]->address)."</td></tr>";
print "<tr><td valign=\"top\">".$langs->trans('Address')."</td><td colspan=\"3\">".nl2br($address->lines[$i]->address)."</td></tr>";
print '<tr><td width="25%">'.$langs->trans('Zip').'</td><td width="25%">'.$livraison->lignes[$i]->cp."</td></tr>";
print '<tr><td width="25%">'.$langs->trans('Town').'</td><td width="25%">'.$livraison->lignes[$i]->ville."</td></tr>";
print '<tr><td width="25%">'.$langs->trans('Zip').'</td><td width="25%">'.$address->lines[$i]->cp."</td></tr>";
print '<tr><td width="25%">'.$langs->trans('Town').'</td><td width="25%">'.$address->lines[$i]->ville."</td></tr>";
print '<tr><td>'.$langs->trans('Country').'</td><td colspan="3">'.$livraison->lignes[$i]->pays.'</td>';
print '<tr><td>'.$langs->trans('Country').'</td><td colspan="3">'.$address->lines[$i]->pays.'</td>';
print '<tr><td>'.$langs->trans('Phone').'</td><td>'.dol_print_phone($livraison->lignes[$i]->tel,$livraison->lignes[$i]->pays_code,0,$livraison->socid,'AC_TEL').'</td></tr>';
print '<tr><td>'.$langs->trans('Phone').'</td><td>'.dol_print_phone($address->lines[$i]->tel,$address->lines[$i]->pays_code,0,$address->socid,'AC_TEL').'</td></tr>';
print '<tr><td>'.$langs->trans('Fax').'</td><td>'.dol_print_phone($livraison->lignes[$i]->fax,$livraison->lignes[$i]->pays_code,0,$livraison->socid,'AC_FAX').'</td></tr>';
print '<tr><td>'.$langs->trans('Fax').'</td><td>'.dol_print_phone($address->lines[$i]->fax,$address->lines[$i]->pays_code,0,$address->socid,'AC_FAX').'</td></tr>';
print '</td></tr>';
@ -438,12 +441,12 @@ else
if ($user->rights->societe->creer)
{
print '<a class="butAction" href="'.DOL_URL_ROOT.'/comm/adresse_livraison.php?socid='.$livraison->socid.'&amp;id='.$livraison->lignes[$i]->id.'&amp;action=edit">'.$langs->trans("Modify").'</a>';
print '<a class="butAction" href="'.$_SERVER['PHP_SELF'].'?socid='.$address->socid.'&amp;id='.$address->lines[$i]->id.'&amp;action=edit">'.$langs->trans("Modify").'</a>';
}
if ($user->rights->societe->supprimer)
{
print '<a class="butActionDelete" href="'.DOL_URL_ROOT.'/comm/adresse_livraison.php?socid='.$livraison->socid.'&amp;id='.$livraison->lignes[$i]->id.'&amp;action=delete">'.$langs->trans("Delete").'</a>';
print '<a class="butActionDelete" href="'.$_SERVER['PHP_SELF'].'?socid='.$address->socid.'&amp;id='.$address->lines[$i]->id.'&amp;action=delete">'.$langs->trans("Delete").'</a>';
}
@ -468,7 +471,7 @@ else
if ($user->rights->societe->creer)
{
print '<a class="butAction" href="'.DOL_URL_ROOT.'/comm/adresse_livraison.php?socid='.$livraison->socid.'&amp;action=create">'.$langs->trans("Add").'</a>';
print '<a class="butAction" href="'.$_SERVER['PHP_SELF'].'?socid='.$address->socid.'&amp;action=create">'.$langs->trans("Add").'</a>';
}
print '</div>';
}

View File

@ -1,7 +1,7 @@
<?php
/* Copyright (C) 2002-2005 Rodolphe Quiedeville <rodolphe@quiedeville.org>
* Copyright (C) 2004-2006 Laurent Destailleur <eldy@users.sourceforge.net>
* Copyright (C) 2005-2006 Regis Houssin <regis@dolibarr.fr>
* Copyright (C) 2005-2010 Regis Houssin <regis@dolibarr.fr>
*
* 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
@ -19,27 +19,27 @@
*/
/**
\file htdocs/comm/adresse_livraison.class.php
\ingroup societe, expedition
\brief Fichier de la classe des adresses de livraison
\version $Id$
* \file htdocs/comm/class/address.class.php
* \ingroup societe
* \brief Fichier de la classe des adresses des tiers
* \version $Id$
*/
/**
\class AdresseLivraison
\brief Classe permettant la gestion des adresses de livraison
* \class Address
* \brief Classe permettant la gestion des adresses des tiers
*/
class AdresseLivraison
class Address
{
var $db;
var $id;
var $type;
var $label;
var $socid;
var $nom;
var $adresse; // TODO obsolete
var $name;
var $address;
var $cp;
var $ville;
@ -55,7 +55,7 @@ class AdresseLivraison
* \param DB handler acces base de donnees
* \param id id societe (0 par defaut)
*/
function AdresseLivraison($DB, $id=0)
function Address($DB, $id=0)
{
global $conf;
@ -67,7 +67,7 @@ class AdresseLivraison
}
/**
* \brief Cree l'adresse de livraison de la societe en base
* \brief Cree l'adresse de la societe en base
* \param user Objet utilisateur qui demande la creation
* \return int 0 si ok, < 0 si erreur
*/
@ -77,10 +77,10 @@ class AdresseLivraison
global $langs,$conf;
// Nettoyage parametres
$this->nom=trim($this->nom);
$this->label=trim($this->label);
$this->name = trim($this->name);
$this->label = trim($this->label);
dol_syslog("AdresseLivraison::create label=".$this->label);
dol_syslog("Address::create label=".$this->label);
$this->db->begin();
@ -88,25 +88,25 @@ class AdresseLivraison
if ($result >= 0)
{
$sql = "INSERT INTO ".MAIN_DB_PREFIX."societe_adresse_livraison (label, fk_societe, nom, datec, fk_user_creat) ";
$sql .= " VALUES ('".addslashes($this->label)."', '".$socid."', '".addslashes($this->nom)."', ".$this->db->idate(mktime()).", '".$user->id."')";
$sql = "INSERT INTO ".MAIN_DB_PREFIX."societe_address (label, fk_soc, name, datec, fk_user_creat) ";
$sql .= " VALUES ('".addslashes($this->label)."', '".$socid."', '".addslashes($this->name)."', ".$this->db->idate(mktime()).", '".$user->id."')";
$result=$this->db->query($sql);
if ($result)
{
$this->id = $this->db->last_insert_id(MAIN_DB_PREFIX."societe_adresse_livraison");
$this->id = $this->db->last_insert_id(MAIN_DB_PREFIX."societe_address");
$ret = $this->update($this->id, $socid, $user);
if ($ret >= 0)
{
dol_syslog("AdresseLivraison::create success id=".$this->id);
dol_syslog("Address::create success id=".$this->id);
$this->db->commit();
return 0;
}
else
{
dol_syslog("AdresseLivraison::create echec update");
dol_syslog("Address::create echec update");
$this->db->rollback();
return -3;
}
@ -121,7 +121,7 @@ class AdresseLivraison
}
else
{
dol_syslog("AdresseLivraison::create echec insert sql=$sql");
dol_syslog("Address::create echec insert sql=$sql");
}
$this->db->rollback();
return -2;
@ -131,22 +131,22 @@ class AdresseLivraison
else
{
$this->db->rollback();
dol_syslog("AdresseLivraison::create echec verify sql=$sql");
dol_syslog("Address::create echec verify sql=$sql");
return -1;
}
}
/**
* \brief Verification lors de la modification de l'adresse de livraison
* \brief Verification lors de la modification de l'adresse
* \return 0 si ok, < 0 en cas d'erreur
*/
function verify()
{
$this->label=trim($this->label);
$this->nom=trim($this->nom);
$this->label = trim($this->label);
$this->name = trim($this->name);
$result = 0;
if (!$this->nom || !$this->label)
if (!$this->name || !$this->label)
{
$this->error = "The name of company and the label can not be empty.\n";
$result = -2;
@ -156,8 +156,8 @@ class AdresseLivraison
/**
* \brief Mise a jour des parametres de l'adresse de livraison
* \param id id adresse de livraison
* \brief Mise a jour des parametres de l'adresse
* \param id id address
* \param user Utilisateur qui demande la mise a jour
* \return int <0 si ko, >=0 si ok
*/
@ -165,35 +165,34 @@ class AdresseLivraison
{
global $langs;
dol_syslog("AdresseLivraison::Update");
dol_syslog("Address::Update");
// Nettoyage des parametres
$this->fk_societe = $socid;
$this->label = trim($this->label);
$this->nom = trim($this->nom);
$this->adresse = trim($this->adresse); // TODO obsolete
$this->address = trim($this->address);
$this->cp = trim($this->cp);
$this->ville = trim($this->ville);
$this->pays_id = trim($this->pays_id);
$this->tel = trim($this->tel);
$this->tel = preg_replace("/\s/","",$this->tel);
$this->tel = preg_replace("/\./","",$this->tel);
$this->fax = trim($this->fax);
$this->fax = preg_replace("/\s/","",$this->fax);
$this->fax = preg_replace("/\./","",$this->fax);
$this->note = trim($this->note);
$this->fk_soc = $socid;
$this->label = trim($this->label);
$this->name = trim($this->name);
$this->address = trim($this->address);
$this->cp = trim($this->cp);
$this->ville = trim($this->ville);
$this->pays_id = trim($this->pays_id);
$this->tel = trim($this->tel);
$this->tel = preg_replace("/\s/","",$this->tel);
$this->tel = preg_replace("/\./","",$this->tel);
$this->fax = trim($this->fax);
$this->fax = preg_replace("/\s/","",$this->fax);
$this->fax = preg_replace("/\./","",$this->fax);
$this->note = trim($this->note);
$result = $this->verify(); // Verifie que nom et label obligatoire
if ($result >= 0)
{
dol_syslog("AdresseLivraison::Update verify ok");
dol_syslog("Address::Update verify ok");
$sql = "UPDATE ".MAIN_DB_PREFIX."societe_adresse_livraison";
$sql = "UPDATE ".MAIN_DB_PREFIX."societe_address";
$sql.= " SET label = '" . addslashes($this->label) ."'"; // Champ obligatoire
$sql.= ",nom = '" . addslashes($this->nom) ."'"; // Champ obligatoire
$sql.= ",name = '" . addslashes($this->name) ."'"; // Champ obligatoire
$sql.= ",address = '" . addslashes($this->address) ."'";
if ($this->cp)
@ -212,7 +211,7 @@ class AdresseLivraison
{ $sql .= ",fax = '" . $this->fax ."'"; }
if ($user) $sql .= ",fk_user_modif = '".$user->id."'";
$sql .= " WHERE fk_societe = '" . $socid ."' AND rowid = '" . $id ."'";
$sql .= " WHERE fk_soc = '" . $socid ."' AND rowid = '" . $id ."'";
$resql=$this->db->query($sql);
if ($resql)
@ -231,7 +230,7 @@ class AdresseLivraison
{
$this->error = $langs->trans("Error sql=$sql");
dol_syslog("AdresseLivraison::Update echec sql=$sql");
dol_syslog("Address::Update echec sql=$sql");
$result = -2;
}
}
@ -242,7 +241,7 @@ class AdresseLivraison
}
/**
* \brief Charge depuis la base toutes les adresses de livraison d'une societe
* \brief Charge depuis la base toutes les adresses d'une societe
* \param socid Id de la societe a charger en memoire
* \param user Objet de l'utilisateur
* \return int >0 si ok, <0 si ko
@ -263,26 +262,26 @@ class AdresseLivraison
{
$obj = $this->db->fetch_object($resqlsoc);
$this->nom_societe = $obj->nom;
$this->socid = $obj->rowid;
$this->id = $obj->rowid;
$this->client = $obj->client;
$this->fournisseur = $obj->fournisseur;
$this->socname = $obj->nom;
$this->socid = $obj->rowid;
$this->id = $obj->rowid;
$this->client = $obj->client;
$this->fournisseur = $obj->fournisseur;
}
$this->lignes = array();
$this->db->free($resqlsoc);
// Adresses de livraison liees a la societe
// Adresses liees a la societe
if ($this->socid)
{
$sql = 'SELECT a.rowid as id, a.label, a.nom, a.address, a.datec as dc';
$sql .= ', a.tms as date_update, a.fk_societe';
$sql = 'SELECT a.rowid as id, a.label, a.name, a.address, a.datec as dc';
$sql .= ', a.tms as date_update, a.fk_soc';
$sql .= ', a.cp, a.ville, a.note, a.fk_pays, a.tel, a.fax';
$sql .= ', p.code as pays_code, p.libelle as pays';
$sql .= ' FROM '.MAIN_DB_PREFIX.'societe_adresse_livraison as a';
$sql .= ' FROM '.MAIN_DB_PREFIX.'societe_address as a';
$sql .= ' LEFT JOIN '.MAIN_DB_PREFIX.'c_pays as p ON a.fk_pays = p.rowid';
$sql .= ' WHERE a.fk_societe = '.$this->socid;
$sql .= ' WHERE a.fk_soc = '.$this->socid;
$resql=$this->db->query($sql);
if ($resql)
@ -291,27 +290,26 @@ class AdresseLivraison
$i = 0;
while ($i < $num)
{
$objp = $this->db->fetch_object($resql);
$objp = $this->db->fetch_object($resql);
$ligne = new AdresseLivraisonLigne();
$line = new AddressLine();
$ligne->id = $objp->id;
$ligne->date_creation = $this->db->jdate($objp->dc);
$ligne->date_update = $this->db->jdate($objp->date_update);
$ligne->label = $objp->label;
$ligne->nom = $objp->nom;
$ligne->address = $objp->address;
$ligne->adresse = $objp->address; // TODO obsolete
$ligne->cp = $objp->cp;
$ligne->ville = $objp->ville;
$ligne->pays_id = $objp->fk_pays;
$ligne->pays_code = $objp->fk_pays?$objp->pays_code:'';
$ligne->pays = $objp->fk_pays?($langs->trans('Country'.$objp->pays_code)!='Country'.$objp->pays_code?strtoupper($langs->trans('Country'.$objp->pays_code)):$objp->pays):'';
$ligne->tel = $objp->tel;
$ligne->fax = $objp->fax;
$ligne->note = $objp->note;
$line->id = $objp->id;
$line->date_creation = $this->db->jdate($objp->dc);
$line->date_update = $this->db->jdate($objp->date_update);
$line->label = $objp->label;
$line->name = $objp->name;
$line->address = $objp->address;
$line->cp = $objp->cp;
$line->ville = $objp->ville;
$line->pays_id = $objp->fk_pays;
$line->pays_code = $objp->fk_pays?$objp->pays_code:'';
$line->pays = $objp->fk_pays?($langs->trans('Country'.$objp->pays_code)!='Country'.$objp->pays_code?strtoupper($langs->trans('Country'.$objp->pays_code)):$objp->pays):'';
$line->tel = $objp->tel;
$line->fax = $objp->fax;
$line->note = $objp->note;
$this->lignes[$i] = $ligne;
$this->lines[$i] = $line;
$i++;
}
$this->db->free($resql);
@ -319,39 +317,39 @@ class AdresseLivraison
}
else
{
dol_syslog('Erreur AdresseLivraison::Fetch aucune adresse dde livraison');
dol_syslog('Address::Fetch Erreur: aucune adresse');
return -1;
}
}
else
{
dol_syslog('AdresseLivraison::Societe inconnue');
dol_syslog('Address::Fetch Erreur: societe inconnue');
return -2;
}
}
else
{
dol_syslog('Erreur Societe::Fetch '.$this->db->error());
dol_syslog('Societe::Fetch '.$this->db->error());
$this->error=$this->db->error();
}
}
/**
* \brief Charge depuis la base l'objet adresse de livraison
* \param id Id de l'adresse de livraison a charger en memoire
* \brief Charge depuis la base l'objet adresse
* \param id Id de l'adresse a charger en memoire
* \param user Objet de l'utilisateur
* \return int >0 si ok, <0 si ko
*/
function fetch_adresse($id, $user=0)
function fetch_address($id, $user=0)
{
global $langs;
global $conf;
$sql = 'SELECT a.rowid, a.fk_societe, a.label, a.nom, a.address, a.datec as date_creation';
$sql = 'SELECT a.rowid, a.fk_soc, a.label, a.name, a.address, a.datec as date_creation';
$sql .= ', a.tms as date_update';
$sql .= ', a.cp,a.ville, a.note, a.fk_pays, a.tel, a.fax';
$sql .= ', p.code as pays_code, p.libelle as pays';
$sql .= ' FROM '.MAIN_DB_PREFIX.'societe_adresse_livraison as a';
$sql .= ' FROM '.MAIN_DB_PREFIX.'societe_address as a';
$sql .= ' LEFT JOIN '.MAIN_DB_PREFIX.'c_pays as p ON a.fk_pays = p.rowid';
$sql .= ' WHERE a.rowid = '.$id;
$resql=$this->db->query($sql);
@ -362,14 +360,13 @@ class AdresseLivraison
$obj = $this->db->fetch_object($resql);
$this->id = $obj->rowid;
$this->socid = $obj->fk_societe;
$this->socid = $obj->fk_soc;
$this->date_update = $this->db->jdate($obj->date_update);
$this->date_creation = $this->db->jdate($obj->date_creation);
$this->label = $obj->label;
$this->nom = $obj->nom;
$this->adresse = $obj->address; // TODO obsolete
$this->name = $obj->name;
$this->address = $obj->address;
$this->cp = $obj->cp;
$this->ville = $obj->ville;
@ -386,8 +383,8 @@ class AdresseLivraison
}
else
{
dol_syslog('Erreur Societe::Fetch aucune adresse de livraison avec id='.$this->id.' - '.$sql);
$this->error='Erreur Societe::Fetch aucune adresse de livraison avec id='.$this->id.' - '.$sql;
dol_syslog('Erreur Societe::Fetch aucune adresse avec id='.$this->id.' - '.$sql);
$this->error='Erreur Societe::Fetch aucune adresse avec id='.$this->id.' - '.$sql;
$result = -2;
}
@ -406,15 +403,16 @@ class AdresseLivraison
/**
* \brief Suppression d'une adresse de livraison
* \brief Suppression d'une adresse
* \param id id de la societe a supprimer
*/
function delete($id,$socid)
{
dol_syslog("AdresseLivraison::Delete");
dol_syslog("Address::Delete");
$sql = "DELETE FROM ".MAIN_DB_PREFIX."societe_adresse_livraison";
$sql .= " WHERE rowid=".$id." AND fk_societe = ".$socid;
$sql = "DELETE FROM ".MAIN_DB_PREFIX."societe_address";
$sql.= " WHERE rowid = ".$id;
$sql.= " AND fk_soc = ".$socid;
$result = $this->db->query($sql);
@ -472,14 +470,14 @@ class AdresseLivraison
}
class AdresseLivraisonLigne
class AddressLine
{
var $id;
var $date_creation;
var $date_update;
var $label;
var $nom;
var $name;
var $adresse;
var $cp;
var $ville;
@ -490,7 +488,7 @@ class AdresseLivraisonLigne
var $fax;
var $note;
function AdresseLivraisonLigne()
function AddressLine()
{
}
}

View File

@ -334,14 +334,14 @@ if ($socid > 0)
print '<td><td align="right">';
if ($user->rights->societe->creer)
{
print '<a href="'.DOL_URL_ROOT.'/comm/adresse_livraison.php?socid='.$objsoc->id.'">'.img_edit($langs->trans("Modify")).'</a>';
print '<a href="'.DOL_URL_ROOT.'/comm/address.php?socid='.$objsoc->id.'">'.img_edit($langs->trans("Modify")).'</a>';
}
print '</td></tr></table>';
print '</td><td colspan="3">';
$sql = "SELECT count(rowid) as nb";
$sql.= " FROM ".MAIN_DB_PREFIX."societe_adresse_livraison";
$sql.= " WHERE fk_societe =".$objsoc->id;
$sql.= " FROM ".MAIN_DB_PREFIX."societe_address";
$sql.= " WHERE fk_soc =".$objsoc->id;
$resql = $db->query($sql);
if ($resql)

View File

@ -209,7 +209,7 @@ if ($_POST['action'] == 'setdeliveryadress' && $user->rights->propale->creer)
{
$propal = new Propal($db);
$propal->fetch($_GET['propalid']);
$result=$propal->set_adresse_livraison($user,$_POST['adresse_livraison_id']);
$result=$propal->set_adresse_livraison($user,$_POST['fk_address']);
if ($result < 0) dol_print_error($db,$propal->error);
}
@ -240,7 +240,7 @@ if ($_POST['action'] == 'add' && $user->rights->propale->creer)
$propal->ref = $_POST['ref'];
$propal->datep = dol_mktime(12, 0, 0, $_POST['remonth'], $_POST['reday'], $_POST['reyear']);
$propal->date_livraison = dol_mktime(12, 0, 0, $_POST['liv_month'], $_POST['liv_day'], $_POST['liv_year']);
$propal->fk_delivery_address = $_POST['adresse_livraison_id'];
$propal->fk_delivery_address = $_POST['fk_address'];
$propal->duree_validite = $_POST['duree_validite'];
$propal->cond_reglement_id = $_POST['cond_reglement_id'];
$propal->mode_reglement_id = $_POST['mode_reglement_id'];
@ -267,7 +267,7 @@ if ($_POST['action'] == 'add' && $user->rights->propale->creer)
$propal->ref_client = $_POST['ref_client'];
$propal->datep = dol_mktime(12, 0, 0, $_POST['remonth'], $_POST['reday'], $_POST['reyear']);
$propal->date_livraison = dol_mktime(12, 0, 0, $_POST['liv_month'], $_POST['liv_day'], $_POST['liv_year']);
$propal->fk_delivery_address = $_POST['fk_delivery_address'];
$propal->fk_delivery_address = $_POST['fk_address'];
$propal->duree_validite = $_POST['duree_validite'];
$propal->cond_reglement_id = $_POST['cond_reglement_id'];
$propal->mode_reglement_id = $_POST['mode_reglement_id'];
@ -1227,11 +1227,11 @@ if ($id > 0 || ! empty($ref))
if ($_GET['action'] == 'editdelivery_adress')
{
$html->form_adresse_livraison($_SERVER['PHP_SELF'].'?propalid='.$propal->id,$propal->fk_delivery_address,$_GET['socid'],'fk_delivery_address','propal',$propal->id);
$html->form_address($_SERVER['PHP_SELF'].'?propalid='.$propal->id,$propal->fk_delivery_address,$_GET['socid'],'fk_address','propal',$propal->id);
}
else
{
$html->form_adresse_livraison($_SERVER['PHP_SELF'].'?propalid='.$propal->id,$propal->fk_delivery_address,$_GET['socid'],'none','propal',$propal->id);
$html->form_address($_SERVER['PHP_SELF'].'?propalid='.$propal->id,$propal->fk_delivery_address,$_GET['socid'],'none','propal',$propal->id);
}
print '</td></tr>';
}

View File

@ -1092,16 +1092,16 @@ class Propal extends CommonObject
* \param adresse_livraison Adresse de livraison
* \return int <0 si ko, >0 si ok
*/
function set_adresse_livraison($user, $adresse_livraison)
function set_adresse_livraison($user, $address_id)
{
if ($user->rights->propale->creer)
{
$sql = "UPDATE ".MAIN_DB_PREFIX."propal SET fk_adresse_livraison = '".$adresse_livraison."'";
$sql = "UPDATE ".MAIN_DB_PREFIX."propal SET fk_adresse_livraison = '".$address_id."'";
$sql.= " WHERE rowid = ".$this->id." AND fk_statut = 0";
if ($this->db->query($sql) )
{
$this->fk_delivery_address = $adresse_livraison;
$this->fk_delivery_address = $address_id;
return 1;
}
else

View File

@ -1613,16 +1613,16 @@ class Commande extends CommonObject
* \param adresse_livraison Adresse de livraison
* \return int <0 si ko, >0 si ok
*/
function set_adresse_livraison($user, $fk_delivery_address)
function set_adresse_livraison($user, $fk_address)
{
if ($user->rights->commande->creer)
{
$sql = "UPDATE ".MAIN_DB_PREFIX."commande SET fk_adresse_livraison = '".$fk_delivery_address."'";
$sql = "UPDATE ".MAIN_DB_PREFIX."commande SET fk_adresse_livraison = '".$fk_address."'";
$sql.= " WHERE rowid = ".$this->id." AND fk_statut = 0";
if ($this->db->query($sql) )
{
$this->fk_delivery_address = $fk_delivery_address;
$this->fk_delivery_address = $fk_address;
return 1;
}
else

View File

@ -196,7 +196,7 @@ if ($_POST['action'] == 'add' && $user->rights->commande->creer)
$commande->cond_reglement_id = $_POST['cond_reglement_id'];
$commande->mode_reglement_id = $_POST['mode_reglement_id'];
$commande->date_livraison = $datelivraison;
$commande->fk_delivery_address = $_POST['fk_delivery_address'];
$commande->fk_delivery_address = $_POST['fk_address'];
$commande->contactid = $_POST['contactidp'];
$NBLINES=8;
@ -231,7 +231,7 @@ if ($_POST['action'] == 'add' && $user->rights->commande->creer)
}
}
$_GET['id'] = $commande->id;
$_GET['id'] = $commande_id;
$action = '';
}
@ -315,7 +315,7 @@ if ($_POST['action'] == 'setdeliveryadress' && $user->rights->commande->creer)
{
$commande = new Commande($db);
$commande->fetch($_GET['id']);
$commande->set_adresse_livraison($user,$_POST['adresse_livraison_id']);
$commande->set_adresse_livraison($user,$_POST['fk_address']);
}
if ($_POST['action'] == 'setmode' && $user->rights->commande->creer)
@ -1076,10 +1076,10 @@ if ($_GET['action'] == 'create' && $user->rights->commande->creer)
// Delivery address
if ($conf->global->COMMANDE_ADD_DELIVERY_ADDRESS)
{
// Link to edit: $html->form_adresse_livraison($_SERVER['PHP_SELF'].'?action=create','',$soc->id,'adresse_livraison_id','commande','');
// Link to edit: $html->form_address($_SERVER['PHP_SELF'].'?action=create','',$soc->id,'adresse_livraison_id','commande','');
print '<tr><td nowrap="nowrap">'.$langs->trans('DeliveryAddress').'</td><td>';
$numaddress = $html->select_adresse_livraison($soc->fk_delivery_address, $_GET['socid'],'fk_delivery_address',1);
print ' &nbsp; <a href="../comm/adresse_livraison.php?socid='.$soc->id.'&action=create">'.$langs->trans("AddAddress").'</a>';
$numaddress = $html->select_address($soc->fk_delivery_address, $_GET['socid'],'fk_address',1);
print ' &nbsp; <a href="../comm/address.php?socid='.$soc->id.'&action=create">'.$langs->trans("AddAddress").'</a>';
print '</td></tr>';
}
@ -1273,8 +1273,8 @@ else
/* *************************************************************************** */
$now=dol_now();
$id = $_REQUEST['id'];
$ref= $_REQUEST['ref'];
$id = $_GET['id'];
$ref= $_GET['ref'];
if ($id > 0 || ! empty($ref))
{
@ -1531,11 +1531,11 @@ else
if ($_GET['action'] == 'editdelivery_adress')
{
$html->form_adresse_livraison($_SERVER['PHP_SELF'].'?id='.$commande->id,$commande->fk_delivery_address,$_GET['socid'],'fk_delivery_address','commande',$commande->id);
$html->form_address($_SERVER['PHP_SELF'].'?id='.$commande->id,$commande->fk_delivery_address,$_GET['socid'],'fk_address','commande',$commande->id);
}
else
{
$html->form_adresse_livraison($_SERVER['PHP_SELF'].'?id='.$commande->id,$commande->fk_delivery_address,$_GET['socid'],'none','commande',$commande->id);
$html->form_address($_SERVER['PHP_SELF'].'?id='.$commande->id,$commande->fk_delivery_address,$_GET['socid'],'none','commande',$commande->id);
}
print '</td></tr>';
}

View File

@ -282,11 +282,11 @@ if ($id > 0 || ! empty($ref))
if ($_GET['action'] == 'editdelivery_adress')
{
$html->form_adresse_livraison($_SERVER['PHP_SELF'].'?id='.$commande->id,$commande->fk_delivery_address,$_GET['socid'],'adresse_livraison_id','commande',$commande->id);
$html->form_address($_SERVER['PHP_SELF'].'?id='.$commande->id,$commande->fk_delivery_address,$_GET['socid'],'adresse_livraison_id','commande',$commande->id);
}
else
{
$html->form_adresse_livraison($_SERVER['PHP_SELF'].'?id='.$commande->id,$commande->fk_delivery_address,$_GET['socid'],'none','commande',$commande->id);
$html->form_address($_SERVER['PHP_SELF'].'?id='.$commande->id,$commande->fk_delivery_address,$_GET['socid'],'none','commande',$commande->id);
}
print '</td></tr>';
}

View File

@ -1311,19 +1311,19 @@ class Form
}
/**
* \brief Retourne la liste deroulante des adresses de livraison
* \brief Retourne la liste deroulante des adresses
* \param selected Id contact pre-selectionn
* \param htmlname Nom champ formulaire
*/
function select_adresse_livraison($selected='', $socid, $htmlname='adresse_livraison_id',$showempty=0)
function select_address($selected='', $socid, $htmlname='address_id',$showempty=0)
{
// On recherche les utilisateurs
$sql = "SELECT a.rowid, a.label";
$sql .= " FROM ".MAIN_DB_PREFIX ."societe_adresse_livraison as a";
$sql .= " WHERE a.fk_societe = ".$socid;
$sql .= " FROM ".MAIN_DB_PREFIX ."societe_address as a";
$sql .= " WHERE a.fk_soc = ".$socid;
$sql .= " ORDER BY a.label ASC";
dol_syslog("Form::select_adresse_livraison sql=".$sql);
dol_syslog("Form::select_address sql=".$sql);
if ($this->db->query($sql))
{
print '<select class="flat" name="'.$htmlname.'">';
@ -2118,7 +2118,7 @@ class Form
* \param origin Origine de l'appel pour pouvoir creer un retour
* \param originid Id de l'origine
*/
function form_adresse_livraison($page, $selected='', $socid, $htmlname='adresse_livraison_id', $origin='', $originid='')
function form_address($page, $selected='', $socid, $htmlname='address_id', $origin='', $originid='')
{
global $langs,$conf;
if ($htmlname != "none")
@ -2128,21 +2128,21 @@ class Form
print '<input type="hidden" name="token" value="'.$_SESSION['newtoken'].'">';
print '<table class="nobordernopadding" cellpadding="0" cellspacing="0">';
print '<tr><td>';
$this->select_adresse_livraison($selected, $socid, $htmlname, 1);
$this->select_address($selected, $socid, $htmlname, 1);
print '</td>';
print '<td align="left"><input type="submit" class="button" value="'.$langs->trans("Modify").'">';
$langs->load("companies");
print ' &nbsp; <a href='.DOL_URL_ROOT.'/comm/adresse_livraison.php?socid='.$socid.'&action=create&origin='.$origin.'&originid='.$originid.'>'.$langs->trans("AddAddress").'</a>';
print ' &nbsp; <a href='.DOL_URL_ROOT.'/comm/address.php?socid='.$socid.'&action=create&origin='.$origin.'&originid='.$originid.'>'.$langs->trans("AddAddress").'</a>';
print '</td></tr></table></form>';
}
else
{
if ($selected)
{
require_once(DOL_DOCUMENT_ROOT ."/comm/class/adresse_livraison.class.php");
$livraison=new AdresseLivraison($this->db);
$result=$livraison->fetch_adresse($selected);
print '<a href='.DOL_URL_ROOT.'/comm/adresse_livraison.php?socid='.$livraison->socid.'&id='.$livraison->id.'&action=edit&origin='.$origin.'&originid='.$originid.'>'.$livraison->label.'</a>';
require_once(DOL_DOCUMENT_ROOT ."/comm/class/address.class.php");
$address=new Address($this->db);
$result=$address->fetch_address($selected);
print '<a href='.DOL_URL_ROOT.'/comm/address.php?socid='.$address->socid.'&id='.$address->id.'&action=edit&origin='.$origin.'&originid='.$originid.'>'.$address->label.'</a>';
}
else
{

View File

@ -392,7 +392,7 @@ if ($_GET["action"] == 'create')
print '<td colspan="3">';
if (!empty($object->fk_delivery_address))
{
$html->form_adresse_livraison($_SERVER['PHP_SELF'].'?id='.$object->id,$object->fk_delivery_address,$_GET['socid'],'none','commande',$object->id);
$html->form_address($_SERVER['PHP_SELF'].'?id='.$object->id,$object->fk_delivery_address,$_GET['socid'],'none','commande',$object->id);
}
print '</td></tr>'."\n";
}
@ -809,7 +809,7 @@ else
print '<td colspan="3">';
if (!empty($expedition->fk_delivery_address))
{
$html->form_adresse_livraison($_SERVER['PHP_SELF'].'?id='.$expedition->id,$expedition->fk_delivery_address,$expedition->deliveryaddress->socid,'none','shipment',$expedition->id);
$html->form_address($_SERVER['PHP_SELF'].'?id='.$expedition->id,$expedition->fk_delivery_address,$expedition->deliveryaddress->socid,'none','shipment',$expedition->id);
}
print '</td></tr>'."\n";
}

View File

@ -289,11 +289,11 @@ if ($id > 0 || ! empty($ref))
if ($_GET['action'] == 'editdelivery_adress')
{
$html->form_adresse_livraison($_SERVER['PHP_SELF'].'?id='.$commande->id,$commande->fk_delivery_address,$_GET['socid'],'delivery_address_id','commande',$commande->id);
$html->form_address($_SERVER['PHP_SELF'].'?id='.$commande->id,$commande->fk_delivery_address,$_GET['socid'],'delivery_address_id','commande',$commande->id);
}
else
{
$html->form_adresse_livraison($_SERVER['PHP_SELF'].'?id='.$commande->id,$commande->fk_delivery_address,$_GET['socid'],'none','commande',$commande->id);
$html->form_address($_SERVER['PHP_SELF'].'?id='.$commande->id,$commande->fk_delivery_address,$_GET['socid'],'none','commande',$commande->id);
}
print '</td></tr>';
}

View File

@ -205,3 +205,13 @@ UPDATE llx_const SET name = 'MAIN_MODULE_PRODUCT' WHERE name = 'MAIN_MODULE_PROD
-- Add more predefined action codes --
insert into llx_c_actioncomm (id, code, type, libelle, module) values (30, 'AC_SUP_ORD', 'system', 'Send supplier invoice by email' ,'supplier_order');
insert into llx_c_actioncomm (id, code, type, libelle, module) values (31, 'AC_SUP_INV', 'system', 'Send supplier invoice by email' ,'supplier_invoice');
-- rename llx_societe_adresse_livraison
ALTER TABLE llx_expedition DROP FOREIGN KEY fk_expedition_fk_adresse_livraison;
ALTER TABLE llx_expedition DROP INDEX idx_expedition_fk_adresse_livraison;
ALTER TABLE llx_livraison DROP FOREIGN KEY fk_livraison_fk_adresse_livraison;
ALTER TABLE llx_livraison DROP INDEX idx_livraison_fk_adresse_livraison;
ALTER TABLE llx_societe_adresse_livraison RENAME TO llx_societe_address;
ALTER TABLE llx_societe_address CHANGE nom name varchar(60);
ALTER TABLE llx_societe_address CHANGE fk_societe fk_soc integer DEFAULT 0;

View File

@ -20,7 +20,7 @@
-- ============================================================================
-- Supprimme orphelins pour permettre montée de la clé
-- Supprimme orphelins pour permettre montee de la cle
-- V4 DELETE llx_commande FROM llx_commande LEFT JOIN llx_societe ON llx_commande.fk_soc = llx_societe.rowid WHERE llx_societe.rowid IS NULL;
ALTER TABLE llx_commande ADD UNIQUE INDEX uk_commande_ref (ref, entity);

View File

@ -1,6 +1,6 @@
-- ===================================================================
-- Copyright (C) 2005 Laurent Destailleur <eldy@users.sourceforge.net>
-- Copyright (C) 2008-2009 Regis Houssin <regis@dolibarr.fr>
-- Copyright (C) 2008-2010 Regis Houssin <regis@dolibarr.fr>
--
-- 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
@ -25,11 +25,13 @@ ALTER TABLE llx_expedition ADD UNIQUE INDEX idx_expedition_uk_ref (ref, entity);
ALTER TABLE llx_expedition ADD INDEX idx_expedition_fk_soc (fk_soc);
ALTER TABLE llx_expedition ADD INDEX idx_expedition_fk_user_author (fk_user_author);
ALTER TABLE llx_expedition ADD INDEX idx_expedition_fk_user_valid (fk_user_valid);
ALTER TABLE llx_expedition ADD INDEX idx_expedition_fk_adresse_livraison (fk_adresse_livraison);
ALTER TABLE llx_expedition ADD INDEX idx_expedition_fk_address (fk_address);
ALTER TABLE llx_expedition ADD INDEX idx_expedition_fk_expedition_methode (fk_expedition_methode);
ALTER TABLE llx_expedition ADD CONSTRAINT fk_expedition_fk_soc FOREIGN KEY (fk_soc) REFERENCES llx_societe (rowid);
ALTER TABLE llx_expedition ADD CONSTRAINT fk_expedition_fk_user_author FOREIGN KEY (fk_user_author) REFERENCES llx_user (rowid);
ALTER TABLE llx_expedition ADD CONSTRAINT fk_expedition_fk_user_valid FOREIGN KEY (fk_user_valid) REFERENCES llx_user (rowid);
ALTER TABLE llx_expedition ADD CONSTRAINT fk_expedition_fk_adresse_livraison FOREIGN KEY (fk_adresse_livraison) REFERENCES llx_societe_adresse_livraison (rowid);
ALTER TABLE llx_expedition ADD CONSTRAINT fk_expedition_fk_expedition_methode FOREIGN KEY (fk_expedition_methode) REFERENCES llx_expedition_methode (rowid);
ALTER TABLE llx_expedition ADD CONSTRAINT fk_expedition_fk_soc FOREIGN KEY (fk_soc) REFERENCES llx_societe (rowid);
ALTER TABLE llx_expedition ADD CONSTRAINT fk_expedition_fk_user_author FOREIGN KEY (fk_user_author) REFERENCES llx_user (rowid);
ALTER TABLE llx_expedition ADD CONSTRAINT fk_expedition_fk_user_valid FOREIGN KEY (fk_user_valid) REFERENCES llx_user (rowid);
ALTER TABLE llx_expedition ADD CONSTRAINT fk_expedition_fk_expedition_methode FOREIGN KEY (fk_expedition_methode) REFERENCES llx_expedition_methode (rowid);
-- obsolete
-- ALTER TABLE llx_expedition ADD CONSTRAINT fk_expedition_fk_address FOREIGN KEY (fk_address) REFERENCES llx_societe_address (rowid);

View File

@ -34,7 +34,7 @@ create table llx_expedition
fk_user_valid integer, -- valideur
date_expedition date, -- shipping date
date_delivery date DEFAULT NULL, -- delivery date
fk_adresse_livraison integer DEFAULT NULL, -- adresse de livraison
fk_address integer DEFAULT NULL, -- adresse de livraison
fk_expedition_methode integer,
tracking_number varchar(50),
fk_statut smallint DEFAULT 0,

View File

@ -1,6 +1,6 @@
-- ===================================================================
-- Copyright (C) 2005 Laurent Destailleur <eldy@users.sourceforge.net>
-- Copyright (C) 2008-2009 Regis Houssin <regis@dolibarr.fr>
-- Copyright (C) 2008-2010 Regis Houssin <regis@dolibarr.fr>
--
-- 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
@ -25,9 +25,10 @@ ALTER TABLE llx_livraison ADD UNIQUE INDEX idx_livraison_uk_ref (ref, entity);
ALTER TABLE llx_livraison ADD INDEX idx_livraison_fk_soc (fk_soc);
ALTER TABLE llx_livraison ADD INDEX idx_livraison_fk_user_author (fk_user_author);
ALTER TABLE llx_livraison ADD INDEX idx_livraison_fk_user_valid (fk_user_valid);
ALTER TABLE llx_livraison ADD INDEX idx_livraison_fk_adresse_livraison (fk_adresse_livraison);
ALTER TABLE llx_livraison ADD INDEX idx_livraison_fk_address (fk_address);
ALTER TABLE llx_livraison ADD CONSTRAINT fk_livraison_fk_soc FOREIGN KEY (fk_soc) REFERENCES llx_societe (rowid);
ALTER TABLE llx_livraison ADD CONSTRAINT fk_livraison_fk_user_author FOREIGN KEY (fk_user_author) REFERENCES llx_user (rowid);
ALTER TABLE llx_livraison ADD CONSTRAINT fk_livraison_fk_user_valid FOREIGN KEY (fk_user_valid) REFERENCES llx_user (rowid);
ALTER TABLE llx_livraison ADD CONSTRAINT fk_livraison_fk_adresse_livraison FOREIGN KEY (fk_adresse_livraison) REFERENCES llx_societe_adresse_livraison (rowid);
ALTER TABLE llx_livraison ADD CONSTRAINT fk_livraison_fk_soc FOREIGN KEY (fk_soc) REFERENCES llx_societe (rowid);
ALTER TABLE llx_livraison ADD CONSTRAINT fk_livraison_fk_user_author FOREIGN KEY (fk_user_author) REFERENCES llx_user (rowid);
ALTER TABLE llx_livraison ADD CONSTRAINT fk_livraison_fk_user_valid FOREIGN KEY (fk_user_valid) REFERENCES llx_user (rowid);
-- obsolete
-- ALTER TABLE llx_livraison ADD CONSTRAINT fk_livraison_fk_address FOREIGN KEY (fk_address) REFERENCES llx_societe_address (rowid);

View File

@ -33,7 +33,7 @@ create table llx_livraison
date_valid datetime, -- date de validation
fk_user_valid integer, -- valideur du bon de livraison
date_delivery date DEFAULT NULL, -- delivery date
fk_adresse_livraison integer, -- adresse de livraison
fk_address integer, -- adresse de livraison
fk_statut smallint DEFAULT 0,
total_ht double(24,8) DEFAULT 0,
note text,

View File

@ -1,6 +1,6 @@
-- ========================================================================
-- Copyright (C) 2000-2004 Rodolphe Quiedeville <rodolphe@quiedeville.org>
-- Copyright (C) 2005-2006 Houssin Régis <regis@dolibarr.fr>
-- Copyright (C) 2005-2010 Houssin Regis <regis@dolibarr.fr>
--
-- 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
@ -19,14 +19,14 @@
-- $Id$
-- ========================================================================
create table llx_societe_adresse_livraison
create table llx_societe_address
(
rowid integer AUTO_INCREMENT PRIMARY KEY,
datec datetime, -- creation date
tms timestamp, -- modification date
label varchar(30), --
fk_societe integer DEFAULT 0, --
nom varchar(60), -- company name
fk_soc integer DEFAULT 0, --
name varchar(60), -- company name
address varchar(255), -- company adresse
cp varchar(10), -- zipcode
ville varchar(50), -- town
@ -34,6 +34,6 @@ create table llx_societe_adresse_livraison
tel varchar(20), -- phone number
fax varchar(20), -- fax number
note text, --
fk_user_creat integer, -- utilisateur qui a créé l'info
fk_user_modif integer -- utilisateur qui a modifié l'info
fk_user_creat integer,
fk_user_modif integer
)type=innodb;

View File

@ -719,21 +719,20 @@ class Societe extends CommonObject
}
/**
*
* Lit une adresse de livraison
*
* Lit une adresse
* TODO: utiliser la classe address
*/
function fetch_adresse_livraison($id)
function fetch_address($id)
{
global $conf,$langs;
$sql = "SELECT l.rowid, l.label, l.fk_societe, l.nom, l.address, l.cp";
$sql = "SELECT l.rowid, l.label, l.fk_soc, l.name, l.address, l.cp";
$sql .= ", l.tms as dm, l.datec as dc";
$sql .= ", l.ville, l.fk_pays, l.note, l.tel, l.fax";
$sql .= ", p.libelle as pays, p.code as pays_code, s.nom as socname";
$sql .= " FROM ".MAIN_DB_PREFIX."societe_adresse_livraison as l";
$sql .= " FROM ".MAIN_DB_PREFIX."societe_address as l";
$sql .= " LEFT JOIN ".MAIN_DB_PREFIX."c_pays as p ON l.fk_pays = p.rowid";
$sql .= " LEFT JOIN ".MAIN_DB_PREFIX."societe as s ON l.fk_societe = s.rowid";
$sql .= " LEFT JOIN ".MAIN_DB_PREFIX."societe as s ON l.fk_soc = s.rowid";
$sql .= " WHERE l.rowid = ".$id;
$result = $this->db->query($sql) ;
@ -746,11 +745,10 @@ class Societe extends CommonObject
$this->datec = $this->db->jdate($obj->dc);
$this->datem = $this->db->jdate($obj->dm);
$this->label = $obj->label;
$this->socid = $obj->fk_societe;
$this->socid = $obj->fk_soc;
$this->societe = $obj->socname;
$this->nom = $obj->nom;
$this->name = $obj->name;
$this->address = $obj->address;
$this->adresse = $obj->address; // TODO obsolete
$this->cp = $obj->cp;
$this->ville = $obj->ville;
$this->pays_id = $obj->fk_pays;