Merge remote-tracking branch 'upstream/develop' into customerordertooltip

This commit is contained in:
Frédéric FRANCE 2023-03-13 13:59:51 +01:00
commit 7c6624e27d
18 changed files with 962 additions and 884 deletions

View File

@ -113,15 +113,15 @@ class DolibarrApiAccess implements iAuthenticate
$sql = "SELECT u.login, u.datec, u.api_key, ";
$sql .= " u.tms as date_modification, u.entity";
$sql .= " FROM ".MAIN_DB_PREFIX."user as u";
$sql .= " WHERE u.api_key = '".$this->db->escape($api_key)."'";
// TODO Check if 2 users has same API key.
$sql .= " WHERE u.api_key = '".$this->db->escape($api_key)."' OR u.api_key = '".$this->db->escape(dolEncrypt($api_key, '', '', 'dolibarr'))."'";
$result = $this->db->query($sql);
if ($result) {
if ($this->db->num_rows($result)) {
$nbrows = $this->db->num_rows($result);
if ($nbrows == 1) {
$obj = $this->db->fetch_object($result);
$login = $obj->login;
$stored_key = $obj->api_key;
$stored_key = dolDecrypt($obj->api_key);
$userentity = $obj->entity;
if (!defined("DOLENTITY") && $conf->entity != ($obj->entity ? $obj->entity : 1)) { // If API was not forced with HTTP_DOLENTITY, and user is on another entity, so we reset entity to entity of user
@ -130,6 +130,8 @@ class DolibarrApiAccess implements iAuthenticate
dol_syslog("Entity was not set on http header with HTTP_DOLAPIENTITY (recommanded for performance purpose), so we switch now on entity of user (".$conf->entity.") and we have to reload configuration.", LOG_WARNING);
$conf->setValues($this->db);
}
} elseif ($nbrows > 1) {
throw new RestException(503, 'Error when fetching user api_key : More than 1 user with this apikey');
}
} else {
throw new RestException(503, 'Error when fetching user api_key :'.$this->db->error_msg);

View File

@ -18,6 +18,7 @@
use Luracast\Restler\RestException;
require_once DOL_DOCUMENT_ROOT.'/core/lib/security.lib.php';
require_once DOL_DOCUMENT_ROOT.'/user/class/user.class.php';
/**
@ -152,7 +153,7 @@ class Login
// We store API token into database
$sql = "UPDATE ".MAIN_DB_PREFIX."user";
$sql .= " SET api_key = '".$this->db->escape($token)."'";
$sql .= " SET api_key = '".$this->db->escape(dolEncrypt($token, '', '', 'dolibarr'))."'";
$sql .= " WHERE login = '".$this->db->escape($login)."'";
dol_syslog(get_class($this)."::login", LOG_DEBUG); // No log

View File

@ -155,9 +155,6 @@ if (!empty($conf->global->AGENDA_REMINDER_EMAIL)) {
$TDurationTypes = array('y'=>$langs->trans('Years'), 'm'=>$langs->trans('Month'), 'w'=>$langs->trans('Weeks'), 'd'=>$langs->trans('Days'), 'h'=>$langs->trans('Hours'), 'i'=>$langs->trans('Minutes'));
$result = restrictedArea($user, 'agenda', $object->id, 'actioncomm&societe', 'myactions|allactions', 'fk_soc', 'id');
if ($user->socid && $socid) {
$result = restrictedArea($user, 'societe', $socid);
}
$usercancreate = $user->hasRight('agenda', 'allactions', 'create') || (($object->authorid == $user->id || $object->userownerid == $user->id) && $user->rights->agenda->myactions->create);

View File

@ -223,6 +223,7 @@ include DOL_DOCUMENT_ROOT.'/core/tpl/extrafields_list_array_fields.tpl.php';
$object->fields = dol_sort_array($object->fields, 'position');
$arrayfields = dol_sort_array($arrayfields, 'position');
$error = 0;
/*
@ -1284,24 +1285,24 @@ if ($resql) {
if ($permissiontovalidate) {
$arrayofmassactions['prevalidate'] = img_picto('', 'check', 'class="pictofixedwidth"').$langs->trans("Validate");
}
if ($permissiontosendbymail) {
$arrayofmassactions['presend'] = img_picto('', 'email', 'class="pictofixedwidth"').$langs->trans("SendByMail");
}
if ($permissiontoclose) {
$arrayofmassactions['preshipped'] = img_picto('', 'dollyrevert', 'class="pictofixedwidth"').$langs->trans("ClassifyShipped");
}
if ($permissiontocancel) {
$arrayofmassactions['cancelorders'] = img_picto('', 'close_title', 'class="pictofixedwidth"').$langs->trans("Cancel");
}
if (isModEnabled('facture') && $user->hasRight("facture", "creer")) {
$arrayofmassactions['createbills'] = img_picto('', 'bill', 'class="pictofixedwidth"').$langs->trans("CreateInvoiceForThisCustomer");
}
if ($permissiontoclose) {
$arrayofmassactions['setbilled'] = img_picto('', 'bill', 'class="pictofixedwidth"').$langs->trans("ClassifyBilled");
}
if ($permissiontocancel) {
$arrayofmassactions['cancelorders'] = img_picto('', 'close_title', 'class="pictofixedwidth"').$langs->trans("Cancel");
}
if ($permissiontodelete) {
$arrayofmassactions['predelete'] = img_picto('', 'delete', 'class="pictofixedwidth"').$langs->trans("Delete");
}
if (isModEnabled('facture') && $user->hasRight("facture", "creer")) {
$arrayofmassactions['createbills'] = img_picto('', 'bill', 'class="pictofixedwidth"').$langs->trans("CreateInvoiceForThisCustomer");
}
if ($permissiontosendbymail) {
$arrayofmassactions['presend'] = img_picto('', 'email', 'class="pictofixedwidth"').$langs->trans("SendByMail");
}
if (in_array($massaction, array('presend', 'predelete', 'createbills'))) {
$arrayofmassactions = array();
}

View File

@ -32,6 +32,7 @@
use OAuth\Common\Storage\DoliStorage;
use OAuth\Common\Consumer\Credentials;
/**
* Class to send emails (with attachments or not)
* Usage: $mailfile = new CMailFile($subject,$sendto,$replyto,$message,$filepath,$mimetype,$filename,$cc,$ccc,$deliveryreceipt,$msgishtml,$errors_to,$css,$trackid,$moreinheader,$sendcontext,$replyto);
@ -171,6 +172,10 @@ class CMailFile
{
global $conf, $dolibarr_main_data_root, $user;
dol_syslog("CMailFile::CMailfile: charset=".$conf->file->character_set_client." from=$from, to=$to, addr_cc=$addr_cc, addr_bcc=$addr_bcc, errors_to=$errors_to, replyto=$replyto trackid=$trackid sendcontext=$sendcontext", LOG_DEBUG);
dol_syslog("CMailFile::CMailfile: subject=".$subject.", deliveryreceipt=".$deliveryreceipt.", msgishtml=".$msgishtml, LOG_DEBUG);
// Clean values of $mimefilename_list
if (is_array($mimefilename_list)) {
foreach ($mimefilename_list as $key => $val) {
@ -214,9 +219,6 @@ class CMailFile
// On defini alternative_boundary
$this->alternative_boundary = 'mul_'.dol_hash(uniqid("dolibarr3"), 3); // Force md5 hash (does not contains special chars)
dol_syslog("CMailFile::CMailfile: sendmode=".$this->sendmode." charset=".$conf->file->character_set_client." from=$from, to=$to, addr_cc=$addr_cc, addr_bcc=$addr_bcc, errors_to=$errors_to, replyto=$replyto trackid=$trackid sendcontext=$sendcontext upload_dir_tmp=$upload_dir_tmp", LOG_DEBUG);
dol_syslog("CMailFile::CMailfile: subject=".$subject.", deliveryreceipt=".$deliveryreceipt.", msgishtml=".$msgishtml, LOG_DEBUG);
if (empty($subject)) {
dol_syslog("CMailFile::CMailfile: Try to send an email with empty subject");
$this->error = 'ErrorSubjectIsRequired';
@ -367,6 +369,8 @@ class CMailFile
}
}
dol_syslog("CMailFile::CMailfile: sendmode=".$this->sendmode." addr_bcc=$addr_bcc, replyto=$replyto", LOG_DEBUG);
// We set all data according to choosed sending method.
// We also set a value for ->msgid
if ($this->sendmode == 'mail') {

View File

@ -11685,7 +11685,10 @@ function dolForgeCriteriaCallback($matches)
return '';
}
$operator = strtoupper(preg_replace('/[^a-z<>=]/i', '', trim($tmp[1])));
$operand = preg_replace('/[^a-z0-9\._]/i', '', trim($tmp[0]));
$operator = strtoupper(preg_replace('/[^a-z<>!=]/i', '', trim($tmp[1])));
if ($operator == 'NOTLIKE') {
$operator = 'NOT LIKE';
}
@ -11723,7 +11726,7 @@ function dolForgeCriteriaCallback($matches)
}
}
return $db->escape($tmp[0]).' '.strtoupper($operator).' '.$tmpescaped;
return $db->escape($operand).' '.strtoupper($operator).' '.$tmpescaped;
}

View File

@ -146,7 +146,7 @@ function payment_supplier_prepare_head(Paiement $object)
*/
function getValidOnlinePaymentMethods($paymentmethod = '')
{
global $conf, $langs, $hookmanager, $action;
global $langs, $hookmanager, $action;
$validpaymentmethod = array();
@ -434,6 +434,8 @@ function htmlPrintOnlinePaymentFooter($fromcompany, $langs, $addformmessage = 0,
{
global $conf;
$reg = array();
// Juridical status
$line1 = "";
if ($fromcompany->forme_juridique_code) {
@ -485,9 +487,8 @@ function htmlPrintOnlinePaymentFooter($fromcompany, $langs, $addformmessage = 0,
print '<!-- htmlPrintOnlinePaymentFooter -->'."\n";
print '<footer class="center paddingleft paddingright centpercent">'."\n";
print '<br>';
print '<div class="center paddingleft paddingright centpercent">'."\n";
if ($addformmessage) {
print '<!-- object = '.(empty($object) ? 'undefined' : $object->element).' -->';
print '<br>';
@ -519,5 +520,6 @@ function htmlPrintOnlinePaymentFooter($fromcompany, $langs, $addformmessage = 0,
print ' - ';
}
print $line2;
print '</span></div>'."\n";
print '</span>';
print '</footer>'."\n";
}

View File

@ -113,10 +113,11 @@ function dolGetRandomBytes($length)
* @param string $chain string to encode
* @param string $key If '', we use $dolibarr_main_instance_unique_id
* @param string $ciphering Default ciphering algorithm
* @param string $forceseed To force the seed
* @return string encoded string
* @see dolDecrypt(), dol_hash()
*/
function dolEncrypt($chain, $key = '', $ciphering = "AES-256-CTR")
function dolEncrypt($chain, $key = '', $ciphering = 'AES-256-CTR', $forceseed = '')
{
global $dolibarr_main_instance_unique_id;
global $dolibarr_disable_dolcrypt_for_debug;
@ -134,6 +135,9 @@ function dolEncrypt($chain, $key = '', $ciphering = "AES-256-CTR")
if (empty($key)) {
$key = $dolibarr_main_instance_unique_id;
}
if (empty($ciphering)) {
$ciphering = 'AES-256-CTR';
}
$newchain = $chain;
@ -145,7 +149,11 @@ function dolEncrypt($chain, $key = '', $ciphering = "AES-256-CTR")
if ($ivlen === false || $ivlen < 1 || $ivlen > 32) {
$ivlen = 16;
}
$ivseed = dolGetRandomBytes($ivlen);
if (empty($forceseed)) {
$ivseed = dolGetRandomBytes($ivlen);
} else {
$ivseed = dol_trunc(md5($forceseed), $ivlen, 'right', 'UTF-8', 1);
}
$newchain = openssl_encrypt($chain, $ciphering, $key, 0, $ivseed);
return 'dolcrypt:'.$ciphering.':'.$ivseed.':'.$newchain;

View File

@ -1497,9 +1497,11 @@ class Holiday extends CommonObject
}
$out .= '</select>'."\n";
$out .= ajax_combobox($htmlname);
print $out;
$showempty= 0;
$out .= ajax_combobox($htmlname, array(), 0, 0, 'resolve', ($showempty < 0 ? (string) $showempty : '-1'), $morecss);
return $out;
}
/**
@ -2488,7 +2490,7 @@ class Holiday extends CommonObject
$return .= '<input id="cb'.$this->id.'" class="flat checkforselect fright" type="checkbox" name="toselect[]" value="'.$this->id.'"'.($selected ? ' checked="checked"' : '').'>';
if (property_exists($this, 'fk_type')) {
$return .= '<br><span class="opacitymedium">'.$langs->trans("Type").'</span> : ';
$return .= '<span class="info_box-label maxwidth100">'.arraydata['labeltype'].'</span>';
$return .= '<span class="info_box-label maxwidth100">'.$arraydata['labeltype'].'</span>';
}
if (property_exists($this, 'date_debut') && property_exists($this, 'date_fin')) {
$return .= '<br><span class="info-box-label">'.dol_print_date($this->date_debut, 'day').'</span>';

File diff suppressed because it is too large Load Diff

View File

@ -279,255 +279,255 @@ INSERT INTO llx_c_country (rowid, code, code_iso, label, active, favorite) VALUE
UPDATE llx_c_country SET numeric_code = '004' WHERE code_iso = "AFG";
UPDATE llx_c_country SET numeric_code = '248' WHERE code_iso = "ALA";
UPDATE llx_c_country SET numeric_code = '008' WHERE code_iso = "ALB";
UPDATE llx_c_country SET numeric_code = '276' WHERE code_iso = "DEU";
UPDATE llx_c_country SET numeric_code = '020' WHERE code_iso = "AND";
UPDATE llx_c_country SET numeric_code = '024' WHERE code_iso = "AGO";
UPDATE llx_c_country SET numeric_code = '660' WHERE code_iso = "AIA";
UPDATE llx_c_country SET numeric_code = '010' WHERE code_iso = "ATA";
UPDATE llx_c_country SET numeric_code = '028' WHERE code_iso = "ATG";
UPDATE llx_c_country SET numeric_code = '682' WHERE code_iso = "SAU";
UPDATE llx_c_country SET numeric_code = '012' WHERE code_iso = "DZA";
UPDATE llx_c_country SET numeric_code = '032' WHERE code_iso = "ARG";
UPDATE llx_c_country SET numeric_code = '051' WHERE code_iso = "ARM";
UPDATE llx_c_country SET numeric_code = '533' WHERE code_iso = "ABW";
UPDATE llx_c_country SET numeric_code = '036' WHERE code_iso = "AUS";
UPDATE llx_c_country SET numeric_code = '040' WHERE code_iso = "AUT";
UPDATE llx_c_country SET numeric_code = '031' WHERE code_iso = "AZE";
UPDATE llx_c_country SET numeric_code = '044' WHERE code_iso = "BHS";
UPDATE llx_c_country SET numeric_code = '050' WHERE code_iso = "BGD";
UPDATE llx_c_country SET numeric_code = '052' WHERE code_iso = "BRB";
UPDATE llx_c_country SET numeric_code = '048' WHERE code_iso = "BHR";
UPDATE llx_c_country SET numeric_code = '056' WHERE code_iso = "BEL";
UPDATE llx_c_country SET numeric_code = '084' WHERE code_iso = "BLZ";
UPDATE llx_c_country SET numeric_code = '204' WHERE code_iso = "BEN";
UPDATE llx_c_country SET numeric_code = '060' WHERE code_iso = "BMU";
UPDATE llx_c_country SET numeric_code = '112' WHERE code_iso = "BLR";
UPDATE llx_c_country SET numeric_code = '068' WHERE code_iso = "BOL";
UPDATE llx_c_country SET numeric_code = '535' WHERE code_iso = "BES";
UPDATE llx_c_country SET numeric_code = '070' WHERE code_iso = "BIH";
UPDATE llx_c_country SET numeric_code = '072' WHERE code_iso = "BWA";
UPDATE llx_c_country SET numeric_code = '076' WHERE code_iso = "BRA";
UPDATE llx_c_country SET numeric_code = '096' WHERE code_iso = "BRN";
UPDATE llx_c_country SET numeric_code = '100' WHERE code_iso = "BGR";
UPDATE llx_c_country SET numeric_code = '854' WHERE code_iso = "BFA";
UPDATE llx_c_country SET numeric_code = '108' WHERE code_iso = "BDI";
UPDATE llx_c_country SET numeric_code = '064' WHERE code_iso = "BTN";
UPDATE llx_c_country SET numeric_code = '132' WHERE code_iso = "CPV";
UPDATE llx_c_country SET numeric_code = '116' WHERE code_iso = "KHM";
UPDATE llx_c_country SET numeric_code = '120' WHERE code_iso = "CMR";
UPDATE llx_c_country SET numeric_code = '124' WHERE code_iso = "CAN";
UPDATE llx_c_country SET numeric_code = '634' WHERE code_iso = "QAT";
UPDATE llx_c_country SET numeric_code = '148' WHERE code_iso = "TCD";
UPDATE llx_c_country SET numeric_code = '152' WHERE code_iso = "CHL";
UPDATE llx_c_country SET numeric_code = '156' WHERE code_iso = "CHN";
UPDATE llx_c_country SET numeric_code = '196' WHERE code_iso = "CYP";
UPDATE llx_c_country SET numeric_code = '170' WHERE code_iso = "COL";
UPDATE llx_c_country SET numeric_code = '174' WHERE code_iso = "COM";
UPDATE llx_c_country SET numeric_code = '408' WHERE code_iso = "PRK";
UPDATE llx_c_country SET numeric_code = '410' WHERE code_iso = "KOR";
UPDATE llx_c_country SET numeric_code = '384' WHERE code_iso = "CIV";
UPDATE llx_c_country SET numeric_code = '188' WHERE code_iso = "CRI";
UPDATE llx_c_country SET numeric_code = '191' WHERE code_iso = "HRV";
UPDATE llx_c_country SET numeric_code = '192' WHERE code_iso = "CUB";
UPDATE llx_c_country SET numeric_code = '531' WHERE code_iso = "CUW";
UPDATE llx_c_country SET numeric_code = '208' WHERE code_iso = "DNK";
UPDATE llx_c_country SET numeric_code = '212' WHERE code_iso = "DMA";
UPDATE llx_c_country SET numeric_code = '218' WHERE code_iso = "ECU";
UPDATE llx_c_country SET numeric_code = '818' WHERE code_iso = "EGY";
UPDATE llx_c_country SET numeric_code = '222' WHERE code_iso = "SLV";
UPDATE llx_c_country SET numeric_code = '784' WHERE code_iso = "ARE";
UPDATE llx_c_country SET numeric_code = '232' WHERE code_iso = "ERI";
UPDATE llx_c_country SET numeric_code = '703' WHERE code_iso = "SVK";
UPDATE llx_c_country SET numeric_code = '705' WHERE code_iso = "SVN";
UPDATE llx_c_country SET numeric_code = '724' WHERE code_iso = "ESP";
UPDATE llx_c_country SET numeric_code = '840' WHERE code_iso = "USA";
UPDATE llx_c_country SET numeric_code = '233' WHERE code_iso = "EST";
UPDATE llx_c_country SET numeric_code = '231' WHERE code_iso = "ETH";
UPDATE llx_c_country SET numeric_code = '608' WHERE code_iso = "PHL";
UPDATE llx_c_country SET numeric_code = '246' WHERE code_iso = "FIN";
UPDATE llx_c_country SET numeric_code = '242' WHERE code_iso = "FJI";
UPDATE llx_c_country SET numeric_code = '250' WHERE code_iso = "FRA";
UPDATE llx_c_country SET numeric_code = '266' WHERE code_iso = "GAB";
UPDATE llx_c_country SET numeric_code = '270' WHERE code_iso = "GMB";
UPDATE llx_c_country SET numeric_code = '268' WHERE code_iso = "GEO";
UPDATE llx_c_country SET numeric_code = '288' WHERE code_iso = "GHA";
UPDATE llx_c_country SET numeric_code = '292' WHERE code_iso = "GIB";
UPDATE llx_c_country SET numeric_code = '308' WHERE code_iso = "GRD";
UPDATE llx_c_country SET numeric_code = '300' WHERE code_iso = "GRC";
UPDATE llx_c_country SET numeric_code = '304' WHERE code_iso = "GRL";
UPDATE llx_c_country SET numeric_code = '312' WHERE code_iso = "GLP";
UPDATE llx_c_country SET numeric_code = '316' WHERE code_iso = "GUM";
UPDATE llx_c_country SET numeric_code = '320' WHERE code_iso = "GTM";
UPDATE llx_c_country SET numeric_code = '254' WHERE code_iso = "GUF";
UPDATE llx_c_country SET numeric_code = '831' WHERE code_iso = "GGY";
UPDATE llx_c_country SET numeric_code = '324' WHERE code_iso = "GIN";
UPDATE llx_c_country SET numeric_code = '624' WHERE code_iso = "GNB";
UPDATE llx_c_country SET numeric_code = '226' WHERE code_iso = "GNQ";
UPDATE llx_c_country SET numeric_code = '328' WHERE code_iso = "GUY";
UPDATE llx_c_country SET numeric_code = '332' WHERE code_iso = "HTI";
UPDATE llx_c_country SET numeric_code = '340' WHERE code_iso = "HND";
UPDATE llx_c_country SET numeric_code = '344' WHERE code_iso = "HKG";
UPDATE llx_c_country SET numeric_code = '348' WHERE code_iso = "HUN";
UPDATE llx_c_country SET numeric_code = '356' WHERE code_iso = "IND";
UPDATE llx_c_country SET numeric_code = '360' WHERE code_iso = "IDN";
UPDATE llx_c_country SET numeric_code = '368' WHERE code_iso = "IRQ";
UPDATE llx_c_country SET numeric_code = '364' WHERE code_iso = "IRN";
UPDATE llx_c_country SET numeric_code = '372' WHERE code_iso = "IRL";
UPDATE llx_c_country SET numeric_code = '074' WHERE code_iso = "BVT";
UPDATE llx_c_country SET numeric_code = '833' WHERE code_iso = "IMN";
UPDATE llx_c_country SET numeric_code = '162' WHERE code_iso = "CXR";
UPDATE llx_c_country SET numeric_code = '352' WHERE code_iso = "ISL";
UPDATE llx_c_country SET numeric_code = '136' WHERE code_iso = "CYM";
UPDATE llx_c_country SET numeric_code = '166' WHERE code_iso = "CCK";
UPDATE llx_c_country SET numeric_code = '184' WHERE code_iso = "COK";
UPDATE llx_c_country SET numeric_code = '234' WHERE code_iso = "FRO";
UPDATE llx_c_country SET numeric_code = '239' WHERE code_iso = "SGS";
UPDATE llx_c_country SET numeric_code = '334' WHERE code_iso = "HMD";
UPDATE llx_c_country SET numeric_code = '238' WHERE code_iso = "FLK";
UPDATE llx_c_country SET numeric_code = '580' WHERE code_iso = "MNP";
UPDATE llx_c_country SET numeric_code = '584' WHERE code_iso = "MHL";
UPDATE llx_c_country SET numeric_code = '612' WHERE code_iso = "PCN";
UPDATE llx_c_country SET numeric_code = '090' WHERE code_iso = "SLB";
UPDATE llx_c_country SET numeric_code = '796' WHERE code_iso = "TCA";
UPDATE llx_c_country SET numeric_code = '581' WHERE code_iso = "UMI";
UPDATE llx_c_country SET numeric_code = '092' WHERE code_iso = "VGB";
UPDATE llx_c_country SET numeric_code = '850' WHERE code_iso = "VIR";
UPDATE llx_c_country SET numeric_code = '376' WHERE code_iso = "ISR";
UPDATE llx_c_country SET numeric_code = '380' WHERE code_iso = "ITA";
UPDATE llx_c_country SET numeric_code = '388' WHERE code_iso = "JAM";
UPDATE llx_c_country SET numeric_code = '392' WHERE code_iso = "JPN";
UPDATE llx_c_country SET numeric_code = '832' WHERE code_iso = "JEY";
UPDATE llx_c_country SET numeric_code = '400' WHERE code_iso = "JOR";
UPDATE llx_c_country SET numeric_code = '398' WHERE code_iso = "KAZ";
UPDATE llx_c_country SET numeric_code = '404' WHERE code_iso = "KEN";
UPDATE llx_c_country SET numeric_code = '417' WHERE code_iso = "KGZ";
UPDATE llx_c_country SET numeric_code = '296' WHERE code_iso = "KIR";
UPDATE llx_c_country SET numeric_code = '414' WHERE code_iso = "KWT";
UPDATE llx_c_country SET numeric_code = '418' WHERE code_iso = "LAO";
UPDATE llx_c_country SET numeric_code = '426' WHERE code_iso = "LSO";
UPDATE llx_c_country SET numeric_code = '428' WHERE code_iso = "LVA";
UPDATE llx_c_country SET numeric_code = '422' WHERE code_iso = "LBN";
UPDATE llx_c_country SET numeric_code = '430' WHERE code_iso = "LBR";
UPDATE llx_c_country SET numeric_code = '434' WHERE code_iso = "LBY";
UPDATE llx_c_country SET numeric_code = '438' WHERE code_iso = "LIE";
UPDATE llx_c_country SET numeric_code = '440' WHERE code_iso = "LTU";
UPDATE llx_c_country SET numeric_code = '442' WHERE code_iso = "LUX";
UPDATE llx_c_country SET numeric_code = '446' WHERE code_iso = "MAC";
UPDATE llx_c_country SET numeric_code = '807' WHERE code_iso = "MKD";
UPDATE llx_c_country SET numeric_code = '450' WHERE code_iso = "MDG";
UPDATE llx_c_country SET numeric_code = '458' WHERE code_iso = "MYS";
UPDATE llx_c_country SET numeric_code = '454' WHERE code_iso = "MWI";
UPDATE llx_c_country SET numeric_code = '462' WHERE code_iso = "MDV";
UPDATE llx_c_country SET numeric_code = '466' WHERE code_iso = "MLI";
UPDATE llx_c_country SET numeric_code = '470' WHERE code_iso = "MLT";
UPDATE llx_c_country SET numeric_code = '504' WHERE code_iso = "MAR";
UPDATE llx_c_country SET numeric_code = '474' WHERE code_iso = "MTQ";
UPDATE llx_c_country SET numeric_code = '480' WHERE code_iso = "MUS";
UPDATE llx_c_country SET numeric_code = '478' WHERE code_iso = "MRT";
UPDATE llx_c_country SET numeric_code = '175' WHERE code_iso = "MYT";
UPDATE llx_c_country SET numeric_code = '484' WHERE code_iso = "MEX";
UPDATE llx_c_country SET numeric_code = '583' WHERE code_iso = "FSM";
UPDATE llx_c_country SET numeric_code = '498' WHERE code_iso = "MDA";
UPDATE llx_c_country SET numeric_code = '492' WHERE code_iso = "MCO";
UPDATE llx_c_country SET numeric_code = '496' WHERE code_iso = "MNG";
UPDATE llx_c_country SET numeric_code = '499' WHERE code_iso = "MNE";
UPDATE llx_c_country SET numeric_code = '500' WHERE code_iso = "MSR";
UPDATE llx_c_country SET numeric_code = '508' WHERE code_iso = "MOZ";
UPDATE llx_c_country SET numeric_code = '104' WHERE code_iso = "MMR";
UPDATE llx_c_country SET numeric_code = '516' WHERE code_iso = "NAM";
UPDATE llx_c_country SET numeric_code = '520' WHERE code_iso = "NRU";
UPDATE llx_c_country SET numeric_code = '524' WHERE code_iso = "NPL";
UPDATE llx_c_country SET numeric_code = '558' WHERE code_iso = "NIC";
UPDATE llx_c_country SET numeric_code = '562' WHERE code_iso = "NER";
UPDATE llx_c_country SET numeric_code = '566' WHERE code_iso = "NGA";
UPDATE llx_c_country SET numeric_code = '570' WHERE code_iso = "NIU";
UPDATE llx_c_country SET numeric_code = '574' WHERE code_iso = "NFK";
UPDATE llx_c_country SET numeric_code = '578' WHERE code_iso = "NOR";
UPDATE llx_c_country SET numeric_code = '540' WHERE code_iso = "NCL";
UPDATE llx_c_country SET numeric_code = '554' WHERE code_iso = "NZL";
UPDATE llx_c_country SET numeric_code = '512' WHERE code_iso = "OMN";
UPDATE llx_c_country SET numeric_code = '528' WHERE code_iso = "NLD";
UPDATE llx_c_country SET numeric_code = '586' WHERE code_iso = "PAK";
UPDATE llx_c_country SET numeric_code = '585' WHERE code_iso = "PLW";
UPDATE llx_c_country SET numeric_code = '275' WHERE code_iso = "PSE";
UPDATE llx_c_country SET numeric_code = '591' WHERE code_iso = "PAN";
UPDATE llx_c_country SET numeric_code = '598' WHERE code_iso = "PNG";
UPDATE llx_c_country SET numeric_code = '600' WHERE code_iso = "PRY";
UPDATE llx_c_country SET numeric_code = '604' WHERE code_iso = "PER";
UPDATE llx_c_country SET numeric_code = '258' WHERE code_iso = "PYF";
UPDATE llx_c_country SET numeric_code = '616' WHERE code_iso = "POL";
UPDATE llx_c_country SET numeric_code = '620' WHERE code_iso = "PRT";
UPDATE llx_c_country SET numeric_code = '630' WHERE code_iso = "PRI";
UPDATE llx_c_country SET numeric_code = '826' WHERE code_iso = "GBR";
UPDATE llx_c_country SET numeric_code = '732' WHERE code_iso = "ESH";
UPDATE llx_c_country SET numeric_code = '140' WHERE code_iso = "CAF";
UPDATE llx_c_country SET numeric_code = '203' WHERE code_iso = "CZE";
UPDATE llx_c_country SET numeric_code = '178' WHERE code_iso = "COG";
UPDATE llx_c_country SET numeric_code = '180' WHERE code_iso = "COD";
UPDATE llx_c_country SET numeric_code = '214' WHERE code_iso = "DOM";
UPDATE llx_c_country SET numeric_code = '638' WHERE code_iso = "REU";
UPDATE llx_c_country SET numeric_code = '646' WHERE code_iso = "RWA";
UPDATE llx_c_country SET numeric_code = '642' WHERE code_iso = "ROU";
UPDATE llx_c_country SET numeric_code = '643' WHERE code_iso = "RUS";
UPDATE llx_c_country SET numeric_code = '882' WHERE code_iso = "WSM";
UPDATE llx_c_country SET numeric_code = '016' WHERE code_iso = "ASM";
UPDATE llx_c_country SET numeric_code = '652' WHERE code_iso = "BLM";
UPDATE llx_c_country SET numeric_code = '659' WHERE code_iso = "KNA";
UPDATE llx_c_country SET numeric_code = '674' WHERE code_iso = "SMR";
UPDATE llx_c_country SET numeric_code = '663' WHERE code_iso = "MAF";
UPDATE llx_c_country SET numeric_code = '666' WHERE code_iso = "SPM";
UPDATE llx_c_country SET numeric_code = '670' WHERE code_iso = "VCT";
UPDATE llx_c_country SET numeric_code = '654' WHERE code_iso = "SHN";
UPDATE llx_c_country SET numeric_code = '662' WHERE code_iso = "LCA";
UPDATE llx_c_country SET numeric_code = '678' WHERE code_iso = "STP";
UPDATE llx_c_country SET numeric_code = '686' WHERE code_iso = "SEN";
UPDATE llx_c_country SET numeric_code = '688' WHERE code_iso = "SRB";
UPDATE llx_c_country SET numeric_code = '690' WHERE code_iso = "SYC";
UPDATE llx_c_country SET numeric_code = '694' WHERE code_iso = "SLE";
UPDATE llx_c_country SET numeric_code = '702' WHERE code_iso = "SGP";
UPDATE llx_c_country SET numeric_code = '534' WHERE code_iso = "SXM";
UPDATE llx_c_country SET numeric_code = '760' WHERE code_iso = "SYR";
UPDATE llx_c_country SET numeric_code = '706' WHERE code_iso = "SOM";
UPDATE llx_c_country SET numeric_code = '144' WHERE code_iso = "LKA";
UPDATE llx_c_country SET numeric_code = '748' WHERE code_iso = "SWZ";
UPDATE llx_c_country SET numeric_code = '710' WHERE code_iso = "ZAF";
UPDATE llx_c_country SET numeric_code = '729' WHERE code_iso = "SDN";
UPDATE llx_c_country SET numeric_code = '728' WHERE code_iso = "SSD";
UPDATE llx_c_country SET numeric_code = '752' WHERE code_iso = "SWE";
UPDATE llx_c_country SET numeric_code = '756' WHERE code_iso = "CHE";
UPDATE llx_c_country SET numeric_code = '740' WHERE code_iso = "SUR";
UPDATE llx_c_country SET numeric_code = '744' WHERE code_iso = "SJM";
UPDATE llx_c_country SET numeric_code = '764' WHERE code_iso = "THA";
UPDATE llx_c_country SET numeric_code = '158' WHERE code_iso = "TWN";
UPDATE llx_c_country SET numeric_code = '834' WHERE code_iso = "TZA";
UPDATE llx_c_country SET numeric_code = '762' WHERE code_iso = "TJK";
UPDATE llx_c_country SET numeric_code = '086' WHERE code_iso = "IOT";
UPDATE llx_c_country SET numeric_code = '260' WHERE code_iso = "ATF";
UPDATE llx_c_country SET numeric_code = '626' WHERE code_iso = "TLS";
UPDATE llx_c_country SET numeric_code = '768' WHERE code_iso = "TGO";
UPDATE llx_c_country SET numeric_code = '772' WHERE code_iso = "TKL";
UPDATE llx_c_country SET numeric_code = '776' WHERE code_iso = "TON";
UPDATE llx_c_country SET numeric_code = '780' WHERE code_iso = "TTO";
UPDATE llx_c_country SET numeric_code = '788' WHERE code_iso = "TUN";
UPDATE llx_c_country SET numeric_code = '795' WHERE code_iso = "TKM";
UPDATE llx_c_country SET numeric_code = '792' WHERE code_iso = "TUR";
UPDATE llx_c_country SET numeric_code = '798' WHERE code_iso = "TUV";
UPDATE llx_c_country SET numeric_code = '804' WHERE code_iso = "UKR";
UPDATE llx_c_country SET numeric_code = '800' WHERE code_iso = "UGA";
UPDATE llx_c_country SET numeric_code = '858' WHERE code_iso = "URY";
UPDATE llx_c_country SET numeric_code = '860' WHERE code_iso = "UZB";
UPDATE llx_c_country SET numeric_code = '548' WHERE code_iso = "VUT";
UPDATE llx_c_country SET numeric_code = '336' WHERE code_iso = "VAT";
UPDATE llx_c_country SET numeric_code = '862' WHERE code_iso = "VEN";
UPDATE llx_c_country SET numeric_code = '704' WHERE code_iso = "VNM";
UPDATE llx_c_country SET numeric_code = '876' WHERE code_iso = "WLF";
UPDATE llx_c_country SET numeric_code = '887' WHERE code_iso = "YEM";
UPDATE llx_c_country SET numeric_code = '262' WHERE code_iso = "DJI";
UPDATE llx_c_country SET numeric_code = '894' WHERE code_iso = "ZMB";
UPDATE llx_c_country SET numeric_code = '716' WHERE code_iso = "ZWE";
UPDATE llx_c_country SET numeric_code = '004' WHERE code_iso = 'AFG';
UPDATE llx_c_country SET numeric_code = '248' WHERE code_iso = 'ALA';
UPDATE llx_c_country SET numeric_code = '008' WHERE code_iso = 'ALB';
UPDATE llx_c_country SET numeric_code = '276' WHERE code_iso = 'DEU';
UPDATE llx_c_country SET numeric_code = '020' WHERE code_iso = 'AND';
UPDATE llx_c_country SET numeric_code = '024' WHERE code_iso = 'AGO';
UPDATE llx_c_country SET numeric_code = '660' WHERE code_iso = 'AIA';
UPDATE llx_c_country SET numeric_code = '010' WHERE code_iso = 'ATA';
UPDATE llx_c_country SET numeric_code = '028' WHERE code_iso = 'ATG';
UPDATE llx_c_country SET numeric_code = '682' WHERE code_iso = 'SAU';
UPDATE llx_c_country SET numeric_code = '012' WHERE code_iso = 'DZA';
UPDATE llx_c_country SET numeric_code = '032' WHERE code_iso = 'ARG';
UPDATE llx_c_country SET numeric_code = '051' WHERE code_iso = 'ARM';
UPDATE llx_c_country SET numeric_code = '533' WHERE code_iso = 'ABW';
UPDATE llx_c_country SET numeric_code = '036' WHERE code_iso = 'AUS';
UPDATE llx_c_country SET numeric_code = '040' WHERE code_iso = 'AUT';
UPDATE llx_c_country SET numeric_code = '031' WHERE code_iso = 'AZE';
UPDATE llx_c_country SET numeric_code = '044' WHERE code_iso = 'BHS';
UPDATE llx_c_country SET numeric_code = '050' WHERE code_iso = 'BGD';
UPDATE llx_c_country SET numeric_code = '052' WHERE code_iso = 'BRB';
UPDATE llx_c_country SET numeric_code = '048' WHERE code_iso = 'BHR';
UPDATE llx_c_country SET numeric_code = '056' WHERE code_iso = 'BEL';
UPDATE llx_c_country SET numeric_code = '084' WHERE code_iso = 'BLZ';
UPDATE llx_c_country SET numeric_code = '204' WHERE code_iso = 'BEN';
UPDATE llx_c_country SET numeric_code = '060' WHERE code_iso = 'BMU';
UPDATE llx_c_country SET numeric_code = '112' WHERE code_iso = 'BLR';
UPDATE llx_c_country SET numeric_code = '068' WHERE code_iso = 'BOL';
UPDATE llx_c_country SET numeric_code = '535' WHERE code_iso = 'BES';
UPDATE llx_c_country SET numeric_code = '070' WHERE code_iso = 'BIH';
UPDATE llx_c_country SET numeric_code = '072' WHERE code_iso = 'BWA';
UPDATE llx_c_country SET numeric_code = '076' WHERE code_iso = 'BRA';
UPDATE llx_c_country SET numeric_code = '096' WHERE code_iso = 'BRN';
UPDATE llx_c_country SET numeric_code = '100' WHERE code_iso = 'BGR';
UPDATE llx_c_country SET numeric_code = '854' WHERE code_iso = 'BFA';
UPDATE llx_c_country SET numeric_code = '108' WHERE code_iso = 'BDI';
UPDATE llx_c_country SET numeric_code = '064' WHERE code_iso = 'BTN';
UPDATE llx_c_country SET numeric_code = '132' WHERE code_iso = 'CPV';
UPDATE llx_c_country SET numeric_code = '116' WHERE code_iso = 'KHM';
UPDATE llx_c_country SET numeric_code = '120' WHERE code_iso = 'CMR';
UPDATE llx_c_country SET numeric_code = '124' WHERE code_iso = 'CAN';
UPDATE llx_c_country SET numeric_code = '634' WHERE code_iso = 'QAT';
UPDATE llx_c_country SET numeric_code = '148' WHERE code_iso = 'TCD';
UPDATE llx_c_country SET numeric_code = '152' WHERE code_iso = 'CHL';
UPDATE llx_c_country SET numeric_code = '156' WHERE code_iso = 'CHN';
UPDATE llx_c_country SET numeric_code = '196' WHERE code_iso = 'CYP';
UPDATE llx_c_country SET numeric_code = '170' WHERE code_iso = 'COL';
UPDATE llx_c_country SET numeric_code = '174' WHERE code_iso = 'COM';
UPDATE llx_c_country SET numeric_code = '408' WHERE code_iso = 'PRK';
UPDATE llx_c_country SET numeric_code = '410' WHERE code_iso = 'KOR';
UPDATE llx_c_country SET numeric_code = '384' WHERE code_iso = 'CIV';
UPDATE llx_c_country SET numeric_code = '188' WHERE code_iso = 'CRI';
UPDATE llx_c_country SET numeric_code = '191' WHERE code_iso = 'HRV';
UPDATE llx_c_country SET numeric_code = '192' WHERE code_iso = 'CUB';
UPDATE llx_c_country SET numeric_code = '531' WHERE code_iso = 'CUW';
UPDATE llx_c_country SET numeric_code = '208' WHERE code_iso = 'DNK';
UPDATE llx_c_country SET numeric_code = '212' WHERE code_iso = 'DMA';
UPDATE llx_c_country SET numeric_code = '218' WHERE code_iso = 'ECU';
UPDATE llx_c_country SET numeric_code = '818' WHERE code_iso = 'EGY';
UPDATE llx_c_country SET numeric_code = '222' WHERE code_iso = 'SLV';
UPDATE llx_c_country SET numeric_code = '784' WHERE code_iso = 'ARE';
UPDATE llx_c_country SET numeric_code = '232' WHERE code_iso = 'ERI';
UPDATE llx_c_country SET numeric_code = '703' WHERE code_iso = 'SVK';
UPDATE llx_c_country SET numeric_code = '705' WHERE code_iso = 'SVN';
UPDATE llx_c_country SET numeric_code = '724' WHERE code_iso = 'ESP';
UPDATE llx_c_country SET numeric_code = '840' WHERE code_iso = 'USA';
UPDATE llx_c_country SET numeric_code = '233' WHERE code_iso = 'EST';
UPDATE llx_c_country SET numeric_code = '231' WHERE code_iso = 'ETH';
UPDATE llx_c_country SET numeric_code = '608' WHERE code_iso = 'PHL';
UPDATE llx_c_country SET numeric_code = '246' WHERE code_iso = 'FIN';
UPDATE llx_c_country SET numeric_code = '242' WHERE code_iso = 'FJI';
UPDATE llx_c_country SET numeric_code = '250' WHERE code_iso = 'FRA';
UPDATE llx_c_country SET numeric_code = '266' WHERE code_iso = 'GAB';
UPDATE llx_c_country SET numeric_code = '270' WHERE code_iso = 'GMB';
UPDATE llx_c_country SET numeric_code = '268' WHERE code_iso = 'GEO';
UPDATE llx_c_country SET numeric_code = '288' WHERE code_iso = 'GHA';
UPDATE llx_c_country SET numeric_code = '292' WHERE code_iso = 'GIB';
UPDATE llx_c_country SET numeric_code = '308' WHERE code_iso = 'GRD';
UPDATE llx_c_country SET numeric_code = '300' WHERE code_iso = 'GRC';
UPDATE llx_c_country SET numeric_code = '304' WHERE code_iso = 'GRL';
UPDATE llx_c_country SET numeric_code = '312' WHERE code_iso = 'GLP';
UPDATE llx_c_country SET numeric_code = '316' WHERE code_iso = 'GUM';
UPDATE llx_c_country SET numeric_code = '320' WHERE code_iso = 'GTM';
UPDATE llx_c_country SET numeric_code = '254' WHERE code_iso = 'GUF';
UPDATE llx_c_country SET numeric_code = '831' WHERE code_iso = 'GGY';
UPDATE llx_c_country SET numeric_code = '324' WHERE code_iso = 'GIN';
UPDATE llx_c_country SET numeric_code = '624' WHERE code_iso = 'GNB';
UPDATE llx_c_country SET numeric_code = '226' WHERE code_iso = 'GNQ';
UPDATE llx_c_country SET numeric_code = '328' WHERE code_iso = 'GUY';
UPDATE llx_c_country SET numeric_code = '332' WHERE code_iso = 'HTI';
UPDATE llx_c_country SET numeric_code = '340' WHERE code_iso = 'HND';
UPDATE llx_c_country SET numeric_code = '344' WHERE code_iso = 'HKG';
UPDATE llx_c_country SET numeric_code = '348' WHERE code_iso = 'HUN';
UPDATE llx_c_country SET numeric_code = '356' WHERE code_iso = 'IND';
UPDATE llx_c_country SET numeric_code = '360' WHERE code_iso = 'IDN';
UPDATE llx_c_country SET numeric_code = '368' WHERE code_iso = 'IRQ';
UPDATE llx_c_country SET numeric_code = '364' WHERE code_iso = 'IRN';
UPDATE llx_c_country SET numeric_code = '372' WHERE code_iso = 'IRL';
UPDATE llx_c_country SET numeric_code = '074' WHERE code_iso = 'BVT';
UPDATE llx_c_country SET numeric_code = '833' WHERE code_iso = 'IMN';
UPDATE llx_c_country SET numeric_code = '162' WHERE code_iso = 'CXR';
UPDATE llx_c_country SET numeric_code = '352' WHERE code_iso = 'ISL';
UPDATE llx_c_country SET numeric_code = '136' WHERE code_iso = 'CYM';
UPDATE llx_c_country SET numeric_code = '166' WHERE code_iso = 'CCK';
UPDATE llx_c_country SET numeric_code = '184' WHERE code_iso = 'COK';
UPDATE llx_c_country SET numeric_code = '234' WHERE code_iso = 'FRO';
UPDATE llx_c_country SET numeric_code = '239' WHERE code_iso = 'SGS';
UPDATE llx_c_country SET numeric_code = '334' WHERE code_iso = 'HMD';
UPDATE llx_c_country SET numeric_code = '238' WHERE code_iso = 'FLK';
UPDATE llx_c_country SET numeric_code = '580' WHERE code_iso = 'MNP';
UPDATE llx_c_country SET numeric_code = '584' WHERE code_iso = 'MHL';
UPDATE llx_c_country SET numeric_code = '612' WHERE code_iso = 'PCN';
UPDATE llx_c_country SET numeric_code = '090' WHERE code_iso = 'SLB';
UPDATE llx_c_country SET numeric_code = '796' WHERE code_iso = 'TCA';
UPDATE llx_c_country SET numeric_code = '581' WHERE code_iso = 'UMI';
UPDATE llx_c_country SET numeric_code = '092' WHERE code_iso = 'VGB';
UPDATE llx_c_country SET numeric_code = '850' WHERE code_iso = 'VIR';
UPDATE llx_c_country SET numeric_code = '376' WHERE code_iso = 'ISR';
UPDATE llx_c_country SET numeric_code = '380' WHERE code_iso = 'ITA';
UPDATE llx_c_country SET numeric_code = '388' WHERE code_iso = 'JAM';
UPDATE llx_c_country SET numeric_code = '392' WHERE code_iso = 'JPN';
UPDATE llx_c_country SET numeric_code = '832' WHERE code_iso = 'JEY';
UPDATE llx_c_country SET numeric_code = '400' WHERE code_iso = 'JOR';
UPDATE llx_c_country SET numeric_code = '398' WHERE code_iso = 'KAZ';
UPDATE llx_c_country SET numeric_code = '404' WHERE code_iso = 'KEN';
UPDATE llx_c_country SET numeric_code = '417' WHERE code_iso = 'KGZ';
UPDATE llx_c_country SET numeric_code = '296' WHERE code_iso = 'KIR';
UPDATE llx_c_country SET numeric_code = '414' WHERE code_iso = 'KWT';
UPDATE llx_c_country SET numeric_code = '418' WHERE code_iso = 'LAO';
UPDATE llx_c_country SET numeric_code = '426' WHERE code_iso = 'LSO';
UPDATE llx_c_country SET numeric_code = '428' WHERE code_iso = 'LVA';
UPDATE llx_c_country SET numeric_code = '422' WHERE code_iso = 'LBN';
UPDATE llx_c_country SET numeric_code = '430' WHERE code_iso = 'LBR';
UPDATE llx_c_country SET numeric_code = '434' WHERE code_iso = 'LBY';
UPDATE llx_c_country SET numeric_code = '438' WHERE code_iso = 'LIE';
UPDATE llx_c_country SET numeric_code = '440' WHERE code_iso = 'LTU';
UPDATE llx_c_country SET numeric_code = '442' WHERE code_iso = 'LUX';
UPDATE llx_c_country SET numeric_code = '446' WHERE code_iso = 'MAC';
UPDATE llx_c_country SET numeric_code = '807' WHERE code_iso = 'MKD';
UPDATE llx_c_country SET numeric_code = '450' WHERE code_iso = 'MDG';
UPDATE llx_c_country SET numeric_code = '458' WHERE code_iso = 'MYS';
UPDATE llx_c_country SET numeric_code = '454' WHERE code_iso = 'MWI';
UPDATE llx_c_country SET numeric_code = '462' WHERE code_iso = 'MDV';
UPDATE llx_c_country SET numeric_code = '466' WHERE code_iso = 'MLI';
UPDATE llx_c_country SET numeric_code = '470' WHERE code_iso = 'MLT';
UPDATE llx_c_country SET numeric_code = '504' WHERE code_iso = 'MAR';
UPDATE llx_c_country SET numeric_code = '474' WHERE code_iso = 'MTQ';
UPDATE llx_c_country SET numeric_code = '480' WHERE code_iso = 'MUS';
UPDATE llx_c_country SET numeric_code = '478' WHERE code_iso = 'MRT';
UPDATE llx_c_country SET numeric_code = '175' WHERE code_iso = 'MYT';
UPDATE llx_c_country SET numeric_code = '484' WHERE code_iso = 'MEX';
UPDATE llx_c_country SET numeric_code = '583' WHERE code_iso = 'FSM';
UPDATE llx_c_country SET numeric_code = '498' WHERE code_iso = 'MDA';
UPDATE llx_c_country SET numeric_code = '492' WHERE code_iso = 'MCO';
UPDATE llx_c_country SET numeric_code = '496' WHERE code_iso = 'MNG';
UPDATE llx_c_country SET numeric_code = '499' WHERE code_iso = 'MNE';
UPDATE llx_c_country SET numeric_code = '500' WHERE code_iso = 'MSR';
UPDATE llx_c_country SET numeric_code = '508' WHERE code_iso = 'MOZ';
UPDATE llx_c_country SET numeric_code = '104' WHERE code_iso = 'MMR';
UPDATE llx_c_country SET numeric_code = '516' WHERE code_iso = 'NAM';
UPDATE llx_c_country SET numeric_code = '520' WHERE code_iso = 'NRU';
UPDATE llx_c_country SET numeric_code = '524' WHERE code_iso = 'NPL';
UPDATE llx_c_country SET numeric_code = '558' WHERE code_iso = 'NIC';
UPDATE llx_c_country SET numeric_code = '562' WHERE code_iso = 'NER';
UPDATE llx_c_country SET numeric_code = '566' WHERE code_iso = 'NGA';
UPDATE llx_c_country SET numeric_code = '570' WHERE code_iso = 'NIU';
UPDATE llx_c_country SET numeric_code = '574' WHERE code_iso = 'NFK';
UPDATE llx_c_country SET numeric_code = '578' WHERE code_iso = 'NOR';
UPDATE llx_c_country SET numeric_code = '540' WHERE code_iso = 'NCL';
UPDATE llx_c_country SET numeric_code = '554' WHERE code_iso = 'NZL';
UPDATE llx_c_country SET numeric_code = '512' WHERE code_iso = 'OMN';
UPDATE llx_c_country SET numeric_code = '528' WHERE code_iso = 'NLD';
UPDATE llx_c_country SET numeric_code = '586' WHERE code_iso = 'PAK';
UPDATE llx_c_country SET numeric_code = '585' WHERE code_iso = 'PLW';
UPDATE llx_c_country SET numeric_code = '275' WHERE code_iso = 'PSE';
UPDATE llx_c_country SET numeric_code = '591' WHERE code_iso = 'PAN';
UPDATE llx_c_country SET numeric_code = '598' WHERE code_iso = 'PNG';
UPDATE llx_c_country SET numeric_code = '600' WHERE code_iso = 'PRY';
UPDATE llx_c_country SET numeric_code = '604' WHERE code_iso = 'PER';
UPDATE llx_c_country SET numeric_code = '258' WHERE code_iso = 'PYF';
UPDATE llx_c_country SET numeric_code = '616' WHERE code_iso = 'POL';
UPDATE llx_c_country SET numeric_code = '620' WHERE code_iso = 'PRT';
UPDATE llx_c_country SET numeric_code = '630' WHERE code_iso = 'PRI';
UPDATE llx_c_country SET numeric_code = '826' WHERE code_iso = 'GBR';
UPDATE llx_c_country SET numeric_code = '732' WHERE code_iso = 'ESH';
UPDATE llx_c_country SET numeric_code = '140' WHERE code_iso = 'CAF';
UPDATE llx_c_country SET numeric_code = '203' WHERE code_iso = 'CZE';
UPDATE llx_c_country SET numeric_code = '178' WHERE code_iso = 'COG';
UPDATE llx_c_country SET numeric_code = '180' WHERE code_iso = 'COD';
UPDATE llx_c_country SET numeric_code = '214' WHERE code_iso = 'DOM';
UPDATE llx_c_country SET numeric_code = '638' WHERE code_iso = 'REU';
UPDATE llx_c_country SET numeric_code = '646' WHERE code_iso = 'RWA';
UPDATE llx_c_country SET numeric_code = '642' WHERE code_iso = 'ROU';
UPDATE llx_c_country SET numeric_code = '643' WHERE code_iso = 'RUS';
UPDATE llx_c_country SET numeric_code = '882' WHERE code_iso = 'WSM';
UPDATE llx_c_country SET numeric_code = '016' WHERE code_iso = 'ASM';
UPDATE llx_c_country SET numeric_code = '652' WHERE code_iso = 'BLM';
UPDATE llx_c_country SET numeric_code = '659' WHERE code_iso = 'KNA';
UPDATE llx_c_country SET numeric_code = '674' WHERE code_iso = 'SMR';
UPDATE llx_c_country SET numeric_code = '663' WHERE code_iso = 'MAF';
UPDATE llx_c_country SET numeric_code = '666' WHERE code_iso = 'SPM';
UPDATE llx_c_country SET numeric_code = '670' WHERE code_iso = 'VCT';
UPDATE llx_c_country SET numeric_code = '654' WHERE code_iso = 'SHN';
UPDATE llx_c_country SET numeric_code = '662' WHERE code_iso = 'LCA';
UPDATE llx_c_country SET numeric_code = '678' WHERE code_iso = 'STP';
UPDATE llx_c_country SET numeric_code = '686' WHERE code_iso = 'SEN';
UPDATE llx_c_country SET numeric_code = '688' WHERE code_iso = 'SRB';
UPDATE llx_c_country SET numeric_code = '690' WHERE code_iso = 'SYC';
UPDATE llx_c_country SET numeric_code = '694' WHERE code_iso = 'SLE';
UPDATE llx_c_country SET numeric_code = '702' WHERE code_iso = 'SGP';
UPDATE llx_c_country SET numeric_code = '534' WHERE code_iso = 'SXM';
UPDATE llx_c_country SET numeric_code = '760' WHERE code_iso = 'SYR';
UPDATE llx_c_country SET numeric_code = '706' WHERE code_iso = 'SOM';
UPDATE llx_c_country SET numeric_code = '144' WHERE code_iso = 'LKA';
UPDATE llx_c_country SET numeric_code = '748' WHERE code_iso = 'SWZ';
UPDATE llx_c_country SET numeric_code = '710' WHERE code_iso = 'ZAF';
UPDATE llx_c_country SET numeric_code = '729' WHERE code_iso = 'SDN';
UPDATE llx_c_country SET numeric_code = '728' WHERE code_iso = 'SSD';
UPDATE llx_c_country SET numeric_code = '752' WHERE code_iso = 'SWE';
UPDATE llx_c_country SET numeric_code = '756' WHERE code_iso = 'CHE';
UPDATE llx_c_country SET numeric_code = '740' WHERE code_iso = 'SUR';
UPDATE llx_c_country SET numeric_code = '744' WHERE code_iso = 'SJM';
UPDATE llx_c_country SET numeric_code = '764' WHERE code_iso = 'THA';
UPDATE llx_c_country SET numeric_code = '158' WHERE code_iso = 'TWN';
UPDATE llx_c_country SET numeric_code = '834' WHERE code_iso = 'TZA';
UPDATE llx_c_country SET numeric_code = '762' WHERE code_iso = 'TJK';
UPDATE llx_c_country SET numeric_code = '086' WHERE code_iso = 'IOT';
UPDATE llx_c_country SET numeric_code = '260' WHERE code_iso = 'ATF';
UPDATE llx_c_country SET numeric_code = '626' WHERE code_iso = 'TLS';
UPDATE llx_c_country SET numeric_code = '768' WHERE code_iso = 'TGO';
UPDATE llx_c_country SET numeric_code = '772' WHERE code_iso = 'TKL';
UPDATE llx_c_country SET numeric_code = '776' WHERE code_iso = 'TON';
UPDATE llx_c_country SET numeric_code = '780' WHERE code_iso = 'TTO';
UPDATE llx_c_country SET numeric_code = '788' WHERE code_iso = 'TUN';
UPDATE llx_c_country SET numeric_code = '795' WHERE code_iso = 'TKM';
UPDATE llx_c_country SET numeric_code = '792' WHERE code_iso = 'TUR';
UPDATE llx_c_country SET numeric_code = '798' WHERE code_iso = 'TUV';
UPDATE llx_c_country SET numeric_code = '804' WHERE code_iso = 'UKR';
UPDATE llx_c_country SET numeric_code = '800' WHERE code_iso = 'UGA';
UPDATE llx_c_country SET numeric_code = '858' WHERE code_iso = 'URY';
UPDATE llx_c_country SET numeric_code = '860' WHERE code_iso = 'UZB';
UPDATE llx_c_country SET numeric_code = '548' WHERE code_iso = 'VUT';
UPDATE llx_c_country SET numeric_code = '336' WHERE code_iso = 'VAT';
UPDATE llx_c_country SET numeric_code = '862' WHERE code_iso = 'VEN';
UPDATE llx_c_country SET numeric_code = '704' WHERE code_iso = 'VNM';
UPDATE llx_c_country SET numeric_code = '876' WHERE code_iso = 'WLF';
UPDATE llx_c_country SET numeric_code = '887' WHERE code_iso = 'YEM';
UPDATE llx_c_country SET numeric_code = '262' WHERE code_iso = 'DJI';
UPDATE llx_c_country SET numeric_code = '894' WHERE code_iso = 'ZMB';
UPDATE llx_c_country SET numeric_code = '716' WHERE code_iso = 'ZWE';

View File

@ -554,7 +554,7 @@ if (!empty($moreforfilter)) {
}
$varpage = empty($contextpage) ? $_SERVER["PHP_SELF"] : $contextpage;
$selectedfields = $form->multiSelectArrayWithCheckbox('selectedfields', $arrayfields, $varpage, getDolGlobalString('MAIN_CHECKBOX_LEFT_COLUMN', '')); // This also change content of $arrayfields
$selectedfields = ($mode != 'kanban' ? $form->multiSelectArrayWithCheckbox('selectedfields', $arrayfields, $varpage, getDolGlobalString('MAIN_CHECKBOX_LEFT_COLUMN', '')) : ''); // This also change content of $arrayfields
$selectedfields .= (count($arrayofmassactions) ? $form->showCheckAddButtons('checkforselect', 1) : '');
print '<div class="div-table-responsive">'; // You can use div-table-responsive-no-min if you dont need reserved height for your table
@ -631,7 +631,7 @@ $totalarray['nbfield'] = 0;
// --------------------------------------------------------------------
print '<tr class="liste_titre">';
if (getDolGlobalString('MAIN_CHECKBOX_LEFT_COLUMN')) {
print getTitleFieldOfList(($mode != 'kanban' ? $selectedfields : ''), 0, $_SERVER["PHP_SELF"], '', '', '', '', $sortfield, $sortorder, 'center maxwidthsearch ')."\n";
print getTitleFieldOfList($selectedfields, 0, $_SERVER["PHP_SELF"], '', '', '', '', $sortfield, $sortorder, 'center maxwidthsearch ')."\n";
$totalarray['nbfield']++;
}
foreach ($object->fields as $key => $val) {
@ -663,7 +663,7 @@ print $hookmanager->resPrint;
}*/
// Action column
if (!getDolGlobalString('MAIN_CHECKBOX_LEFT_COLUMN')) {
print getTitleFieldOfList(($mode != 'kanban' ? $selectedfields : ''), 0, $_SERVER["PHP_SELF"], '', '', '', '', $sortfield, $sortorder, 'center maxwidthsearch ')."\n";
print getTitleFieldOfList($selectedfields, 0, $_SERVER["PHP_SELF"], '', '', '', '', $sortfield, $sortorder, 'center maxwidthsearch ')."\n";
$totalarray['nbfield']++;
}
print '</tr>'."\n";

View File

@ -382,7 +382,7 @@ if ($action == "view_ticket" || $action == "presend" || $action == "close" || $a
// Close ticket
if ($object->dao->fk_statut >= Ticket::STATUS_NOT_READ && $object->dao->fk_statut < Ticket::STATUS_CLOSED) {
print '<div class="inline-block divButAction"><a class="butAction" href="'.$_SERVER['PHP_SELF'].'?action=close&track_id='.$object->dao->track_id.(!empty($entity) && isModEnabled('multicompany')?'&entity='.$entity:'').'">'.$langs->trans('CloseTicket').'</a></div>';
print '<div class="inline-block divButAction"><a class="butAction" href="'.$_SERVER['PHP_SELF'].'?action=close&token='.newToken().'&track_id='.$object->dao->track_id.(!empty($entity) && isModEnabled('multicompany')?'&entity='.$entity:'').'">'.$langs->trans('CloseTicket').'</a></div>';
}
}

View File

@ -451,8 +451,6 @@ print '</div>'."\n";
print '<br>';
//htmlPrintOnlinePaymentFooter($mysoc, $langs);
print '<div class="backgreypublicpayment">';
print '<div class="center">';
print '<a href="'.$urlforqrcode.'">';

View File

@ -1248,10 +1248,12 @@ if ($action == 'create' || $action == 'presend') {
}
print '</td></tr>';
// Group
print '<tr><td>'.$langs->trans("TicketCategory").'</td><td>';
$s = '';
if (!empty($object->category_code)) {
print $langs->getLabelFromKey($db, 'TicketCategoryShort'.$object->category_code, 'c_ticket_category', 'code', 'label', $object->category_code);
$s = $langs->getLabelFromKey($db, 'TicketCategoryShort'.$object->category_code, 'c_ticket_category', 'code', 'label', $object->category_code);
}
print '<tr><td>'.$langs->trans("TicketCategory").'</td><td class="tdoverflowmax200" title="'.dol_escape_htmltag($s).'">';
print dol_escape_htmltag($s);
print '</td></tr>';
// Severity
print '<tr><td>'.$langs->trans("TicketSeverity").'</td><td>';

View File

@ -35,9 +35,11 @@
* \ingroup core
*/
require_once DOL_DOCUMENT_ROOT.'/core/lib/security.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/commonobject.class.php';
require_once DOL_DOCUMENT_ROOT.'/user/class/usergroup.class.php';
/**
* Class to manage Dolibarr users
*/
@ -509,7 +511,7 @@ class User extends CommonObject
$this->pass_indatabase_crypted = $obj->pass_crypted;
$this->pass = $obj->pass;
$this->pass_temp = $obj->pass_temp;
$this->api_key = $obj->api_key;
$this->api_key = dolDecrypt($obj->api_key);
$this->address = $obj->address;
$this->zip = $obj->zip;
@ -1963,7 +1965,7 @@ class User extends CommonObject
$sql .= ", national_registration_number = '".$this->db->escape($this->national_registration_number)."'";
$sql .= ", employee = ".(int) $this->employee;
$sql .= ", login = '".$this->db->escape($this->login)."'";
$sql .= ", api_key = ".($this->api_key ? "'".$this->db->escape($this->api_key)."'" : "null");
$sql .= ", api_key = ".($this->api_key ? "'".$this->db->escape(dolEncrypt($this->api_key, '', '', 'dolibarr'))."'" : "null");
$sql .= ", gender = ".($this->gender != -1 ? "'".$this->db->escape($this->gender)."'" : "null"); // 'man' or 'woman'
$sql .= ", birth=".(strval($this->birth) != '' ? "'".$this->db->idate($this->birth, 'tzserver')."'" : 'null');
if (!empty($user->admin)) {

View File

@ -1152,10 +1152,13 @@ while ($i < $imaxinloop) {
}
}
if (!empty($arrayfields['u.api_key']['checked'])) {
print '<td class="tdoverflowmax125" title="'.dol_escape_htmltag($obj->api_key).'">';
if ($obj->api_key) {
$api_key = dolDecrypt($obj->api_key);
print '<td class="tdoverflowmax125" title="'.dol_escape_htmltag($api_key).'">';
if ($api_key) {
if ($canreadsecretapi) {
print dol_escape_htmltag($obj->api_key);
print '<span class="opacitymedium">';
print showValueWithClipboardCPButton($object->api_key, 1, dol_trunc($api_key, 3)); // TODO Add an option to also reveal the hash, not only copy paste
print '</span>';
} else {
print '<span class="opacitymedium">'.$langs->trans("Hidden").'</span>';
}

View File

@ -180,12 +180,12 @@ class FunctionsLibTest extends PHPUnit\Framework\TestCase
// An attempt for SQL injection
$filter='if(now()=sysdate()%2Csleep(6)%2C0)';
$sql = forgeSQLFromUniversalSearchCriteria($filter);
$this->assertEquals($sql, '1 = 3');
$this->assertEquals($sql, 'Filter syntax error');
// A real search string
$filter='(((statut:=:1) or (entity:in:__AAA__)) and (abc:<:2.0) and (abc:!=:1.23))';
$sql = forgeSQLFromUniversalSearchCriteria($filter);
$this->assertEquals($sql, ' AND (((statut = 1 or entity IN (__AAA__)) and abc < 2 and abc = 1.23))');
$this->assertEquals($sql, ' AND (((statut = 1 or entity IN (__AAA__)) and abc < 2 and abc <> 1.23))');
$filter="(t.ref:like:'SO-%') or (t.date_creation:<:'20160101') or (t.date_creation:<:'2016-01-01 12:30:00') or (t.nature:is:NULL)";
$sql = forgeSQLFromUniversalSearchCriteria($filter);