mirror of
https://github.com/Dolibarr/dolibarr.git
synced 2025-12-06 09:38:23 +01:00
Works on paypal module
Fix: replace ref_ext by ref_int
This commit is contained in:
@@ -54,6 +54,7 @@ class Commande extends CommonObject
|
||||
var $ref;
|
||||
var $ref_client;
|
||||
var $ref_ext;
|
||||
var $ref_int;
|
||||
var $contactid;
|
||||
var $fk_project;
|
||||
var $statut; // -1=Canceled, 0=Draft, 1=Validated, (2=Accepted/On process not managed for customer orders), 3=Closed (Sent/Received, billed or not)
|
||||
|
||||
@@ -540,7 +540,7 @@ if ($action == 'add' && $user->rights->facture->creer)
|
||||
$object->note_public = trim($_POST['note_public']);
|
||||
$object->note = trim($_POST['note']);
|
||||
$object->ref_client = $_POST['ref_client'];
|
||||
$object->ref_ext = $_POST['ref_ext'];
|
||||
$object->ref_int = $_POST['ref_int'];
|
||||
$object->modelpdf = $_POST['model'];
|
||||
$object->fk_project = $_POST['projectid'];
|
||||
$object->cond_reglement_id = $_POST['cond_reglement_id'];
|
||||
@@ -586,7 +586,7 @@ if ($action == 'add' && $user->rights->facture->creer)
|
||||
$object->note_public = trim($_POST['note_public']);
|
||||
$object->note = trim($_POST['note']);
|
||||
$object->ref_client = $_POST['ref_client'];
|
||||
$object->ref_ext = $_POST['ref_ext'];
|
||||
$object->ref_int = $_POST['ref_int'];
|
||||
$object->modelpdf = $_POST['model'];
|
||||
$object->fk_project = $_POST['projectid'];
|
||||
$object->cond_reglement_id = 0;
|
||||
@@ -634,7 +634,7 @@ if ($action == 'add' && $user->rights->facture->creer)
|
||||
$object->note_public = trim($_POST['note_public']);
|
||||
$object->note = trim($_POST['note']);
|
||||
$object->ref_client = $_POST['ref_client'];
|
||||
$object->ref_ext = $_POST['ref_ext'];
|
||||
$object->ref_int = $_POST['ref_int'];
|
||||
$object->modelpdf = $_POST['model'];
|
||||
|
||||
// Source facture
|
||||
@@ -664,7 +664,7 @@ if ($action == 'add' && $user->rights->facture->creer)
|
||||
$object->note_public = trim($_POST['note_public']);
|
||||
$object->note = trim($_POST['note']);
|
||||
$object->ref_client = $_POST['ref_client'];
|
||||
$object->ref_ext = $_POST['ref_ext'];
|
||||
$object->ref_int = $_POST['ref_int'];
|
||||
$object->modelpdf = $_POST['model'];
|
||||
$object->fk_project = $_POST['projectid'];
|
||||
$object->cond_reglement_id = ($_POST['type'] == 3?1:$_POST['cond_reglement_id']);
|
||||
@@ -1442,7 +1442,7 @@ if ($action == 'create')
|
||||
|
||||
$projectid = (!empty($objectsrc->fk_project)?$object->fk_project:'');
|
||||
$ref_client = (!empty($objectsrc->ref_client)?$object->ref_client:'');
|
||||
$ref_ext = (!empty($objectsrc->ref_ext)?$object->ref_ext:'');
|
||||
$ref_int = (!empty($objectsrc->ref_int)?$object->ref_int:'');
|
||||
|
||||
$soc = $objectsrc->client;
|
||||
$cond_reglement_id = (!empty($objectsrc->cond_reglement_id)?$objectsrc->cond_reglement_id:(!empty($soc->cond_reglement_id)?$soc->cond_reglement_id:1));
|
||||
@@ -1475,7 +1475,7 @@ if ($action == 'create')
|
||||
print '<input type="hidden" name="socid" value="'.$soc->id.'">' ."\n";
|
||||
print '<input name="facnumber" type="hidden" value="provisoire">';
|
||||
print '<input name="ref_client" type="hidden" value="'.$ref_client.'">';
|
||||
print '<input name="ref_ext" type="hidden" value="'.$ref_ext.'">';
|
||||
print '<input name="ref_int" type="hidden" value="'.$ref_int.'">';
|
||||
print '<input type="hidden" name="origin" value="'.GETPOST('origin').'">';
|
||||
print '<input type="hidden" name="originid" value="'.GETPOST('originid').'">';
|
||||
|
||||
|
||||
@@ -67,6 +67,7 @@ class Facture extends CommonObject
|
||||
var $ref;
|
||||
var $ref_client;
|
||||
var $ref_ext;
|
||||
var $ref_int;
|
||||
//! 0=Standard invoice, 1=Replacement invoice, 2=Credit note invoice, 3=Deposit invoice, 4=Proforma invoice
|
||||
var $type;
|
||||
var $amount;
|
||||
@@ -221,7 +222,7 @@ class Facture extends CommonObject
|
||||
$sql.= ", datef";
|
||||
$sql.= ", note";
|
||||
$sql.= ", note_public";
|
||||
$sql.= ", ref_client, ref_ext";
|
||||
$sql.= ", ref_client, ref_int";
|
||||
$sql.= ", fk_facture_source, fk_user_author, fk_projet";
|
||||
$sql.= ", fk_cond_reglement, fk_mode_reglement, date_lim_reglement, model_pdf";
|
||||
$sql.= ")";
|
||||
@@ -238,7 +239,7 @@ class Facture extends CommonObject
|
||||
$sql.= ",".($this->note?"'".$this->db->escape($this->note)."'":"null");
|
||||
$sql.= ",".($this->note_public?"'".$this->db->escape($this->note_public)."'":"null");
|
||||
$sql.= ",".($this->ref_client?"'".$this->db->escape($this->ref_client)."'":"null");
|
||||
$sql.= ",".($this->ref_ext?"'".$this->db->escape($this->ref_ext)."'":"null");
|
||||
$sql.= ",".($this->ref_int?"'".$this->db->escape($this->ref_int)."'":"null");
|
||||
$sql.= ",".($this->fk_facture_source?"'".$this->db->escape($this->fk_facture_source)."'":"null");
|
||||
$sql.= ",".($user->id > 0 ? "'".$user->id."'":"null");
|
||||
$sql.= ",".($this->fk_project?$this->fk_project:"null");
|
||||
@@ -646,13 +647,13 @@ class Facture extends CommonObject
|
||||
* @param ref External reference of invoice
|
||||
* @return int >0 if OK, <0 if KO
|
||||
*/
|
||||
function fetch($rowid, $ref='', $ref_ext='')
|
||||
function fetch($rowid, $ref='', $ref_ext='', $ref_int='')
|
||||
{
|
||||
global $conf;
|
||||
|
||||
if (empty($rowid) && empty($ref) && empty($ref_ext)) return -1;
|
||||
if (empty($rowid) && empty($ref) && empty($ref_ext) && empty($ref_int)) return -1;
|
||||
|
||||
$sql = 'SELECT f.rowid,f.facnumber,f.ref_client,f.type,f.fk_soc,f.amount,f.tva, f.localtax1, f.localtax2, f.total,f.total_ttc,f.remise_percent,f.remise_absolue,f.remise';
|
||||
$sql = 'SELECT f.rowid,f.facnumber,f.ref_client,f.ref_ext,f.ref_int,f.type,f.fk_soc,f.amount,f.tva, f.localtax1, f.localtax2, f.total,f.total_ttc,f.remise_percent,f.remise_absolue,f.remise';
|
||||
$sql.= ', f.datef as df';
|
||||
$sql.= ', f.date_lim_reglement as dlr';
|
||||
$sql.= ', f.datec as datec';
|
||||
@@ -672,6 +673,7 @@ class Facture extends CommonObject
|
||||
if ($rowid) $sql.= " AND f.rowid=".$rowid;
|
||||
if ($ref) $sql.= " AND f.facnumber='".$this->db->escape($ref)."'";
|
||||
if ($ref_ext) $sql.= " AND f.ref_ext='".$this->db->escape($ref_ext)."'";
|
||||
if ($ref_int) $sql.= " AND f.ref_int='".$this->db->escape($ref_int)."'";
|
||||
|
||||
dol_syslog("Facture::Fetch sql=".$sql, LOG_DEBUG);
|
||||
$result = $this->db->query($sql);
|
||||
@@ -685,6 +687,7 @@ class Facture extends CommonObject
|
||||
$this->ref = $obj->facnumber;
|
||||
$this->ref_client = $obj->ref_client;
|
||||
$this->ref_ext = $obj->ref_ext;
|
||||
$this->ref_int = $obj->ref_int;
|
||||
$this->type = $obj->type;
|
||||
$this->date = $this->db->jdate($obj->df);
|
||||
$this->date_creation = $this->db->jdate($obj->datec);
|
||||
|
||||
@@ -548,44 +548,20 @@ class CommonObject
|
||||
}
|
||||
|
||||
/**
|
||||
* Load object from import key
|
||||
* Load object from specific field
|
||||
* @param table Table element or element line
|
||||
* @param field Field selected
|
||||
* @param key Import key
|
||||
* @return int <0 if KO, >0 if OK
|
||||
*/
|
||||
function fetchObjectFromImportKey($table,$key)
|
||||
function fetchObjectFrom($table,$field,$key)
|
||||
{
|
||||
global $conf;
|
||||
|
||||
$result=false;
|
||||
|
||||
$sql = "SELECT rowid FROM ".MAIN_DB_PREFIX.$table;
|
||||
$sql.= " WHERE import_key = '".$key."'";
|
||||
$sql.= " AND entity = ".$conf->entity;
|
||||
$resql = $this->db->query($sql);
|
||||
if ($resql)
|
||||
{
|
||||
$row = $this->db->fetch_row($resql);
|
||||
$result = $this->fetch($row[0]);
|
||||
}
|
||||
|
||||
return $result;
|
||||
}
|
||||
|
||||
/**
|
||||
* Load object from external reference
|
||||
* @param table Table element or element line
|
||||
* @param ref External reference
|
||||
* @return int <0 if KO, >0 if OK
|
||||
*/
|
||||
function fetchObjectFromRefExt($table,$ref)
|
||||
{
|
||||
global $conf;
|
||||
|
||||
$result=false;
|
||||
|
||||
$sql = "SELECT rowid FROM ".MAIN_DB_PREFIX.$table;
|
||||
$sql.= " WHERE ref_ext = '".$ref."'";
|
||||
$sql.= " WHERE ".$field." = '".$key."'";
|
||||
$sql.= " AND entity = ".$conf->entity;
|
||||
$resql = $this->db->query($sql);
|
||||
if ($resql)
|
||||
|
||||
@@ -114,6 +114,10 @@ ALTER TABLE llx_usergroup_user ADD UNIQUE INDEX uk_usergroup_entity (entity,fk_u
|
||||
ALTER TABLE llx_usergroup_user ADD CONSTRAINT fk_usergroup_user_fk_user FOREIGN KEY (fk_user) REFERENCES llx_user (rowid);
|
||||
ALTER TABLE llx_usergroup_user ADD CONSTRAINT fk_usergroup_user_fk_usergroup FOREIGN KEY (fk_usergroup) REFERENCES llx_usergroup (rowid);
|
||||
|
||||
ALTER TABLE llx_commande ADD COLUMN ref_int varchar(30) AFTER ref_ext;
|
||||
ALTER TABLE llx_facture ADD COLUMN ref_int varchar(30) AFTER ref_ext;
|
||||
ALTER TABLE llx_societe ADD COLUMN ref_int varchar(60) AFTER ref_ext;
|
||||
|
||||
--Add Chile data (id pays=67)
|
||||
-- Regions Chile
|
||||
INSERT INTO llx_c_regions (rowid, code_region, fk_pays, cheflieu, tncc, nom, active) VALUES (6701, 6701, 67, NULL, NULL, 'Tarapacá', 1);
|
||||
|
||||
@@ -31,6 +31,7 @@ create table llx_commande
|
||||
entity integer DEFAULT 1 NOT NULL, -- multi company id
|
||||
|
||||
ref_ext varchar(30), -- reference into an external system (not used by dolibarr)
|
||||
ref_int varchar(30), -- reference into an internal system (used by dolibarr)
|
||||
ref_client varchar(30), -- reference for customer
|
||||
|
||||
date_creation datetime, -- date de creation
|
||||
|
||||
@@ -30,6 +30,7 @@ create table llx_facture
|
||||
entity integer DEFAULT 1 NOT NULL, -- multi company id
|
||||
|
||||
ref_ext varchar(30), -- reference into an external system (not used by dolibarr)
|
||||
ref_int varchar(30), -- reference into an internal system (used by dolibarr)
|
||||
ref_client varchar(30), -- reference for customer
|
||||
|
||||
type smallint DEFAULT 0 NOT NULL, -- type of invoice
|
||||
|
||||
@@ -35,7 +35,8 @@ create table llx_societe
|
||||
nom varchar(60), -- company reference name
|
||||
entity integer DEFAULT 1 NOT NULL, -- multi company id
|
||||
|
||||
ref_ext varchar(60), -- reference into an external system (not used by dolibarr)
|
||||
ref_ext varchar(60), -- reference into an external system (not used by dolibarr)
|
||||
ref_int varchar(60), -- reference into an internal system (used by dolibarr)
|
||||
|
||||
code_client varchar(15), -- code client
|
||||
code_fournisseur varchar(15), -- code founisseur
|
||||
|
||||
@@ -68,7 +68,7 @@ if (isset($_GET['action']) && ! empty($_GET['action']) && isset($_GET['transacti
|
||||
$return_arr = array();
|
||||
|
||||
// Create customer if not exists
|
||||
$ret = $soc->fetchObjectFromRefExt($soc->table_element,$_SESSION[$_GET['transaction_id']]['PAYERID']);
|
||||
$ret = $soc->fetchObjectFrom($soc->table_element,'ref_int',$_SESSION[$_GET['transaction_id']]['PAYERID']);
|
||||
if ($ret < 0)
|
||||
{
|
||||
// Load object modCodeTiers
|
||||
@@ -82,7 +82,7 @@ if (isset($_GET['action']) && ! empty($_GET['action']) && isset($_GET['transacti
|
||||
$modCodeClient = new $module;
|
||||
|
||||
// Create customer and return rowid
|
||||
$soc->ref_ext = $_SESSION[$_GET['transaction_id']]['PAYERID'];
|
||||
$soc->ref_int = $_SESSION[$_GET['transaction_id']]['PAYERID'];
|
||||
$soc->name = empty($conf->global->MAIN_FIRSTNAME_NAME_POSITION)?trim($_SESSION[$_GET['transaction_id']]['FIRSTNAME'].' '.$_SESSION[$_GET['transaction_id']]['LASTNAME']):trim($_SESSION[$_GET['transaction_id']]['LASTNAME'].' '.$_SESSION[$_GET['transaction_id']]['FIRSTNAME']);
|
||||
$soc->nom_particulier = $_SESSION[$_GET['transaction_id']]['LASTNAME'];
|
||||
$soc->prenom = $_SESSION[$_GET['transaction_id']]['FIRSTNAME'];
|
||||
@@ -159,7 +159,7 @@ if (isset($_GET['action']) && ! empty($_GET['action']) && isset($_GET['transacti
|
||||
$object->fetch_thirdparty();
|
||||
|
||||
$object->date = dol_now();
|
||||
$object->ref_ext = $_SESSION[$_GET['transaction_id']]['TRANSACTIONID'];
|
||||
$object->ref_int = $_SESSION[$_GET['transaction_id']]['TRANSACTIONID'];
|
||||
$shipamount = ($_SESSION[$_GET['transaction_id']]['SHIPPINGAMT']?$_SESSION[$_GET['transaction_id']]['SHIPPINGAMT']:$_SESSION[$_GET['transaction_id']]['SHIPAMOUNT']);
|
||||
|
||||
$object_id = $object->create($user);
|
||||
@@ -238,6 +238,18 @@ if (isset($_GET['action']) && ! empty($_GET['action']) && isset($_GET['transacti
|
||||
$return_arr['error'].= $langs->trans('ErrorUndefinedProductForShippingCost').'<br />';
|
||||
}
|
||||
}
|
||||
|
||||
// Add contact customer
|
||||
if ($contact->id > 0)
|
||||
{
|
||||
$result=$object->add_contact($contact->id,'CUSTOMER','external');
|
||||
if ($result < 0)
|
||||
{
|
||||
$error++;
|
||||
$langs->load("errors");
|
||||
$return_arr['error'].= $langs->trans('ErrorToAddContactCustomer').'<br />';
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -279,7 +291,7 @@ if (isset($_GET['action']) && ! empty($_GET['action']) && isset($_GET['transacti
|
||||
if (! empty($objects)) $return_arr['element_created'] = true;
|
||||
|
||||
$soc = new Societe($db);
|
||||
$ret = $soc->fetchObjectFromRefExt($soc->table_element, $_SESSION[$_GET['transaction_id']]['PAYERID']);
|
||||
$ret = $soc->fetchObjectFrom($soc->table_element, 'ref_int', $_SESSION[$_GET['transaction_id']]['PAYERID']);
|
||||
|
||||
$var=true;
|
||||
|
||||
|
||||
@@ -173,7 +173,7 @@ function getLinkedObjects($transactionID)
|
||||
$classname = ucfirst($subelement);
|
||||
$object = new $classname($db);
|
||||
|
||||
$res = $object->fetchObjectFromRefExt($object->table_element, $transactionID);
|
||||
$res = $object->fetchObjectFrom($object->table_element, 'ref_int', $transactionID);
|
||||
if ($res > 0) $objectArray[$element] = $object;
|
||||
}
|
||||
|
||||
|
||||
@@ -174,7 +174,7 @@ if (empty($conf->global->PAYPAL_API_USER) || empty($conf->global->PAYPAL_API_PAS
|
||||
} else {
|
||||
$.jnotify("<?php echo $langs->trans('PleaseBePatient'); ?>", 500);
|
||||
$( "div #paypal-details" ).dialog( "close" );
|
||||
location.href=value;
|
||||
//location.href=value;
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
@@ -129,7 +129,7 @@ class Societe extends CommonObject
|
||||
|
||||
var $canvas;
|
||||
|
||||
var $ref_ext;
|
||||
var $ref_int;
|
||||
var $import_key;
|
||||
|
||||
var $logo;
|
||||
@@ -202,12 +202,12 @@ class Societe extends CommonObject
|
||||
|
||||
if ($result >= 0)
|
||||
{
|
||||
$sql = "INSERT INTO ".MAIN_DB_PREFIX."societe (nom, entity, datec, datea, fk_user_creat, canvas, status, ref_ext)";
|
||||
$sql = "INSERT INTO ".MAIN_DB_PREFIX."societe (nom, entity, datec, datea, fk_user_creat, canvas, status, ref_int)";
|
||||
$sql.= " VALUES ('".$this->db->escape($this->name)."', ".$conf->entity.", '".$this->db->idate($now)."', '".$this->db->idate($now)."'";
|
||||
$sql.= ", ".($user->id > 0 ? "'".$user->id."'":"null");
|
||||
$sql.= ", ".($this->canvas ? "'".$this->canvas."'":"null");
|
||||
$sql.= ", ".$this->status;
|
||||
$sql.= ", ".($this->ref_ext ? "'".$this->ref_ext."'":"null");
|
||||
$sql.= ", ".($this->ref_int ? "'".$this->ref_int."'":"null");
|
||||
$sql.= ")";
|
||||
|
||||
dol_syslog("Societe::create sql=".$sql);
|
||||
@@ -557,20 +557,21 @@ class Societe extends CommonObject
|
||||
* @param rowid Id of third party to load
|
||||
* @param ref Reference of third party, name (Warning, this can return several records)
|
||||
* @param ref_ext External reference of third party (Warning, this information is a free field not provided by Dolibarr)
|
||||
* @param ref_int Internal reference of third party
|
||||
* @param idprof1 Prof id 1 of third party (Warning, this can return several records)
|
||||
* @param idprof2 Prof id 2 of third party (Warning, this can return several records)
|
||||
* @param idprof3 Prof id 3 of third party (Warning, this can return several records)
|
||||
* @param idprof4 Prof id 4 of third party (Warning, this can return several records)
|
||||
* @return int >0 if OK, <0 if KO or if two records found for same ref or idprof.
|
||||
*/
|
||||
function fetch($rowid, $ref='', $ref_ext='', $idprof1='',$idprof2='',$idprof3='',$idprof4='')
|
||||
function fetch($rowid, $ref='', $ref_ext='', $ref_int='', $idprof1='',$idprof2='',$idprof3='',$idprof4='')
|
||||
{
|
||||
global $langs;
|
||||
global $conf;
|
||||
|
||||
if (empty($rowid) && empty($ref) && empty($ref_ext)) return -1;
|
||||
if (empty($rowid) && empty($ref) && empty($ref_ext) && empty($ref_int)) return -1;
|
||||
|
||||
$sql = 'SELECT s.rowid, s.nom as name, s.entity, s.ref_ext, s.address, s.datec as datec, s.prefix_comm';
|
||||
$sql = 'SELECT s.rowid, s.nom as name, s.entity, s.ref_ext, s.ref_int, s.address, s.datec as datec, s.prefix_comm';
|
||||
$sql .= ', s.price_level';
|
||||
$sql .= ', s.tms as date_update';
|
||||
$sql .= ', s.tel, s.fax, s.email, s.url, s.cp as zip, s.ville as town, s.note, s.client, s.fournisseur';
|
||||
@@ -600,6 +601,7 @@ class Societe extends CommonObject
|
||||
if ($rowid) $sql .= ' WHERE s.rowid = '.$rowid;
|
||||
if ($ref) $sql .= " WHERE s.nom = '".$this->db->escape($ref)."' AND s.entity = ".$conf->entity;
|
||||
if ($ref_ext) $sql .= " WHERE s.ref_ext = '".$this->db->escape($ref_ext)."' AND s.entity = ".$conf->entity;
|
||||
if ($ref_int) $sql .= " WHERE s.ref_int = '".$this->db->escape($ref_int)."' AND s.entity = ".$conf->entity;
|
||||
if ($idprof1) $sql .= " WHERE s.siren = '".$this->db->escape($siren)."' AND s.entity = ".$conf->entity;
|
||||
if ($idprof2) $sql .= " WHERE s.siret = '".$this->db->escape($siret)."' AND s.entity = ".$conf->entity;
|
||||
if ($idprof3) $sql .= " WHERE s.ape = '".$this->db->escape($ape)."' AND s.entity = ".$conf->entity;
|
||||
@@ -627,6 +629,7 @@ class Societe extends CommonObject
|
||||
$this->name = $obj->name;
|
||||
$this->nom = $obj->name; // TODO obsolete
|
||||
$this->ref_ext = $obj->ref_ext;
|
||||
$this->ref_int = $obj->ref_int;
|
||||
|
||||
$this->datec = $this->db->jdate($obj->datec);
|
||||
$this->date_update = $this->db->jdate($obj->date_update);
|
||||
|
||||
Reference in New Issue
Block a user