diff --git a/htdocs/admin/dict.php b/htdocs/admin/dict.php index 25bde7a7b85..56f4f6140bb 100644 --- a/htdocs/admin/dict.php +++ b/htdocs/admin/dict.php @@ -767,7 +767,7 @@ if ($id) // Line to type new values print ""; - $obj = (object) array(); + $obj = new stdClass(); // If data was already input, we define them in obj to populate input fields. if (GETPOST('actionadd')) { @@ -1292,4 +1292,4 @@ function fieldList($fieldlist,$obj='',$tabname='') } } -?> \ No newline at end of file +?> diff --git a/htdocs/comm/action/class/actioncomm.class.php b/htdocs/comm/action/class/actioncomm.class.php index ff40ed97a2a..5e7a77c6ca2 100644 --- a/htdocs/comm/action/class/actioncomm.class.php +++ b/htdocs/comm/action/class/actioncomm.class.php @@ -89,12 +89,12 @@ class ActionComm extends CommonObject { $this->db = $db; - $this->author = (object) array(); - $this->usermod = (object) array(); - $this->usertodo = (object) array(); - $this->userdone = (object) array(); - $this->societe = (object) array(); - $this->contact = (object) array(); + $this->author = new stdClass(); + $this->usermod = new stdClass(); + $this->usertodo = new stdClass(); + $this->userdone = new stdClass(); + $this->societe = new stdClass(); + $this->contact = new stdClass(); } /** diff --git a/htdocs/comm/propal.php b/htdocs/comm/propal.php index 8d0a608f6c2..f1850014a48 100644 --- a/htdocs/comm/propal.php +++ b/htdocs/comm/propal.php @@ -1,6 +1,6 @@ - * Copyright (C) 2004-2011 Laurent Destailleur + * Copyright (C) 2004-2013 Laurent Destailleur * Copyright (C) 2004 Eric Seigne * Copyright (C) 2005 Marc Barilley / Ocebo * Copyright (C) 2005-2012 Regis Houssin @@ -736,6 +736,17 @@ else if ($action == "addline" && $user->rights->propal->creer) } $desc=dol_concatdesc($desc,$product_desc); + + // Add custom code and origin country into description + if (empty($conf->global->MAIN_PRODUCT_DISABLE_CUSTOMCOUNTRYCODE) && (! empty($prod->customcode) || ! empty($prod->country_code))) + { + $tmptxt='('; + if (! empty($prod->customcode)) $tmptxt.=$langs->transnoentitiesnoconv("CustomCode").': '.$prod->customcode; + if (! empty($prod->customcode) && ! empty($prod->country_code)) $tmptxt.=' - '; + if (! empty($prod->country_code)) $tmptxt.=$langs->transnoentitiesnoconv("CountryOrigin").': '.getCountry($prod->country_code,0,$db,$langs,0); + $tmptxt.=')'; + $desc.= dol_concatdesc($desc, $tmptxt); + } } $type = $prod->type; diff --git a/htdocs/comm/propal/class/propal.class.php b/htdocs/comm/propal/class/propal.class.php index 80364be4479..8b481885b2e 100644 --- a/htdocs/comm/propal/class/propal.class.php +++ b/htdocs/comm/propal/class/propal.class.php @@ -2405,7 +2405,7 @@ class Propal extends CommonObject { $obj = $this->db->fetch_object($resql); - $this->lines[$i] = (object) array(); + $this->lines[$i] = new stdClass(); $this->lines[$i]->id = $obj->rowid; // for backward compatibility $this->lines[$i]->rowid = $obj->rowid; $this->lines[$i]->label = $obj->custom_label; diff --git a/htdocs/comm/propal/stats/index.php b/htdocs/comm/propal/stats/index.php index 462ec8ecdea..f2d6bce161a 100644 --- a/htdocs/comm/propal/stats/index.php +++ b/htdocs/comm/propal/stats/index.php @@ -212,7 +212,7 @@ $head[$h][1] = $langs->trans("ByMonthYear"); $head[$h][2] = 'byyear'; $h++; -$object=(object) array(); // TODO $object not defined ? +$object=new stdClass(); // TODO $object not defined ? complete_head_from_modules($conf,$langs,$object,$head,$h,'propal_stats'); dol_fiche_head($head,'byyear',$langs->trans("Statistics")); diff --git a/htdocs/commande/fiche.php b/htdocs/commande/fiche.php index 61f52eadc62..bf983a41469 100644 --- a/htdocs/commande/fiche.php +++ b/htdocs/commande/fiche.php @@ -1,6 +1,6 @@ - * Copyright (C) 2004-2012 Laurent Destailleur + * Copyright (C) 2004-2013 Laurent Destailleur * Copyright (C) 2005 Marc Barilley / Ocebo * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2006 Andre Cianfarani @@ -651,6 +651,17 @@ else if ($action == 'addline' && $user->rights->commande->creer) } $desc=dol_concatdesc($desc,$product_desc); + + // Add custom code and origin country into description + if (empty($conf->global->MAIN_PRODUCT_DISABLE_CUSTOMCOUNTRYCODE) && (! empty($prod->customcode) || ! empty($prod->country_code))) + { + $tmptxt='('; + if (! empty($prod->customcode)) $tmptxt.=$langs->transnoentitiesnoconv("CustomCode").': '.$prod->customcode; + if (! empty($prod->customcode) && ! empty($prod->country_code)) $tmptxt.=' - '; + if (! empty($prod->country_code)) $tmptxt.=$langs->transnoentitiesnoconv("CountryOrigin").': '.getCountry($prod->country_code,0,$db,$langs,0); + $tmptxt.=')'; + $desc.= dol_concatdesc($desc, $tmptxt); + } } $type = $prod->type; diff --git a/htdocs/commande/stats/index.php b/htdocs/commande/stats/index.php index 25967914a9d..3857031febe 100644 --- a/htdocs/commande/stats/index.php +++ b/htdocs/commande/stats/index.php @@ -233,7 +233,7 @@ $h++; if ($mode == 'customer') $type='order_stats'; if ($mode == 'supplier') $type='supplier_order_stats'; -$object=(object) array(); // TODO $object not defined ? +$object=new stdClass(); // TODO $object not defined ? complete_head_from_modules($conf,$langs,$object,$head,$h,$type); dol_fiche_head($head,'byyear',$langs->trans("Statistics")); diff --git a/htdocs/compta/facture.php b/htdocs/compta/facture.php index f685a5c7609..34b501f73c9 100644 --- a/htdocs/compta/facture.php +++ b/htdocs/compta/facture.php @@ -1,7 +1,7 @@ * Copyright (C) 2004 Eric Seigne - * Copyright (C) 2004-2012 Laurent Destailleur + * Copyright (C) 2004-2013 Laurent Destailleur * Copyright (C) 2005 Marc Barilley / Ocebo * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2006 Andre Cianfarani @@ -1041,7 +1041,7 @@ else if (($action == 'addline' || $action == 'addline_predef') && $user->rights- $desc = $product_desc; } else - { + { $tva_tx = get_default_tva($mysoc,$object->client,$prod->id); $tva_npr = get_default_npr($mysoc,$object->client,$prod->id); @@ -1098,16 +1098,17 @@ else if (($action == 'addline' || $action == 'addline_predef') && $user->rights- } $desc=dol_concatdesc($desc,$product_desc); - } - if (! empty($prod->customcode) || ! empty($prod->country_code)) - { - $tmptxt='('; - if (! empty($prod->customcode)) $tmptxt.=$langs->transnoentitiesnoconv("CustomCode").': '.$prod->customcode; - if (! empty($prod->customcode) && ! empty($prod->country_code)) $tmptxt.=' - '; - if (! empty($prod->country_code)) $tmptxt.=$langs->transnoentitiesnoconv("CountryOrigin").': '.getCountry($prod->country_code,0,$db,$langs,0); - $tmptxt.=')'; - $desc.= (dol_textishtml($desc)?"
\n":"\n").$tmptxt; + // Add custom code and origin country into description + if (empty($conf->global->MAIN_PRODUCT_DISABLE_CUSTOMCOUNTRYCODE) && (! empty($prod->customcode) || ! empty($prod->country_code))) + { + $tmptxt='('; + if (! empty($prod->customcode)) $tmptxt.=$langs->transnoentitiesnoconv("CustomCode").': '.$prod->customcode; + if (! empty($prod->customcode) && ! empty($prod->country_code)) $tmptxt.=' - '; + if (! empty($prod->country_code)) $tmptxt.=$langs->transnoentitiesnoconv("CountryOrigin").': '.getCountry($prod->country_code,0,$db,$langs,0); + $tmptxt.=')'; + $desc.= dol_concatdesc($desc, $tmptxt); + } } $type = $prod->type; diff --git a/htdocs/compta/paiement/cheque/class/remisecheque.class.php b/htdocs/compta/paiement/cheque/class/remisecheque.class.php index 72c17512ef0..2d5eaebf8e9 100644 --- a/htdocs/compta/paiement/cheque/class/remisecheque.class.php +++ b/htdocs/compta/paiement/cheque/class/remisecheque.class.php @@ -513,7 +513,7 @@ class RemiseCheque extends CommonObject $i = 0; while ($objp = $this->db->fetch_object($result)) { - $docmodel->lines[$i] = (object) array(); + $docmodel->lines[$i] = new stdClass(); $docmodel->lines[$i]->bank_chq = $objp->banque; $docmodel->lines[$i]->emetteur_chq = $objp->emetteur; $docmodel->lines[$i]->amount_chq = $objp->amount; diff --git a/htdocs/core/class/conf.class.php b/htdocs/core/class/conf.class.php index 4c117c8d526..75414d8f109 100644 --- a/htdocs/core/class/conf.class.php +++ b/htdocs/core/class/conf.class.php @@ -74,32 +74,32 @@ class Conf function __construct() { // Avoid warnings when filling this->xxx - $this->file = (object) array(); - $this->db = (object) array(); - $this->global = (object) array(); - $this->mycompany = (object) array(); - $this->admin = (object) array(); - $this->user = (object) array(); - $this->syslog = (object) array(); - $this->browser = (object) array(); - $this->multicompany = (object) array(); + $this->file = new stdClass(); + $this->db = new stdClass(); + $this->global = new stdClass(); + $this->mycompany = new stdClass(); + $this->admin = new stdClass(); + $this->user = new stdClass(); + $this->syslog = new stdClass(); + $this->browser = new stdClass(); + $this->multicompany = new stdClass(); // First level object - $this->expedition_bon = (object) array(); - $this->livraison_bon = (object) array(); - $this->fournisseur = (object) array(); - $this->product = (object) array(); - $this->service = (object) array(); - $this->contrat = (object) array(); - $this->actions = (object) array(); - $this->commande = (object) array(); - $this->propal = (object) array(); - $this->facture = (object) array(); - $this->contrat = (object) array(); - $this->adherent = (object) array(); - $this->bank = (object) array(); - $this->notification = (object) array(); - $this->mailing = (object) array(); + $this->expedition_bon = new stdClass(); + $this->livraison_bon = new stdClass(); + $this->fournisseur = new stdClass(); + $this->product = new stdClass(); + $this->service = new stdClass(); + $this->contrat = new stdClass(); + $this->actions = new stdClass(); + $this->commande = new stdClass(); + $this->propal = new stdClass(); + $this->facture = new stdClass(); + $this->contrat = new stdClass(); + $this->adherent = new stdClass(); + $this->bank = new stdClass(); + $this->notification = new stdClass(); + $this->mailing = new stdClass(); //! Charset for HTML output and for storing data in memory $this->file->character_set_client='UTF-8'; // UTF-8, ISO-8859-1 @@ -179,7 +179,7 @@ class Conf { $modulename=strtolower($reg[1]); if ($modulename == 'propale') $modulename='propal'; - if (! isset($this->$modulename) || ! is_object($this->$modulename)) $this->$modulename=(object) array(); + if (! isset($this->$modulename) || ! is_object($this->$modulename)) $this->$modulename=new stdClass(); $this->$modulename->enabled=true; $this->modules[]=$modulename; // Add this module in list of enabled modules } @@ -202,20 +202,20 @@ class Conf } // Second or others levels object - $this->propal->cloture = (object) array(); - $this->propal->facturation = (object) array(); - $this->commande->client = (object) array(); - $this->commande->fournisseur = (object) array(); - $this->facture->client = (object) array(); - $this->facture->fournisseur = (object) array(); - $this->fournisseur->commande = (object) array(); - $this->fournisseur->facture = (object) array(); - $this->contrat->services = (object) array(); - $this->contrat->services->inactifs = (object) array(); - $this->contrat->services->expires = (object) array(); - $this->adherent->cotisation = (object) array(); - $this->bank->rappro = (object) array(); - $this->bank->cheque = (object) array(); + $this->propal->cloture = new stdClass(); + $this->propal->facturation = new stdClass(); + $this->commande->client = new stdClass(); + $this->commande->fournisseur = new stdClass(); + $this->facture->client = new stdClass(); + $this->facture->fournisseur = new stdClass(); + $this->fournisseur->commande = new stdClass(); + $this->fournisseur->facture = new stdClass(); + $this->contrat->services = new stdClass(); + $this->contrat->services->inactifs = new stdClass(); + $this->contrat->services->expires = new stdClass(); + $this->adherent->cotisation = new stdClass(); + $this->bank->rappro = new stdClass(); + $this->bank->cheque = new stdClass(); // Clean some variables if (empty($this->global->MAIN_MENU_STANDARD)) $this->global->MAIN_MENU_STANDARD="eldy_backoffice.php"; diff --git a/htdocs/core/class/menubase.class.php b/htdocs/core/class/menubase.class.php index 36d0a7269d7..85731d34685 100644 --- a/htdocs/core/class/menubase.class.php +++ b/htdocs/core/class/menubase.class.php @@ -596,8 +596,8 @@ class Menubase $title = $langs->trans($menu['titre']); } } -//$tmp4=dol_microtime_float(); -//print '>>> 3 '.($tmp4 - $tmp3).'
'; +//$tmp4=dol_microtime_float(); +//print '>>> 3 '.($tmp4 - $tmp3).'
'; // We complete tabMenu $tabMenu[$b]['rowid'] = $menu['rowid']; diff --git a/htdocs/core/class/translate.class.php b/htdocs/core/class/translate.class.php index a15fb092b55..ae4e2fd2e8f 100644 --- a/htdocs/core/class/translate.class.php +++ b/htdocs/core/class/translate.class.php @@ -40,7 +40,7 @@ class Translate private $_tab_loaded=array(); // Array to store result after loading each language file var $cache_labels=array(); // Cache for labels return by getLabelFromKey method - var $cache_currencies=array(); // Cache to store currency symbols + var $cache_currencies=array(); // Cache to store currency symbols @@ -705,80 +705,80 @@ class Translate else return $amount.$symbol; } - /** - * Return a currency code into its symbol - * + /** + * Return a currency code into its symbol + * * @param string $currency_code Currency code - * @param string $forceloadall 1=Force to load all currencies into cache. We know we need to use all of them. By default read and cache only required currency. - * @return string Currency symbol encoded into UTF8 - */ - function getCurrencySymbol($currency_code, $forceloadall=0) - { - $currency_sign = ''; // By default return iso code - + * @param string $forceloadall 1=Force to load all currencies into cache. We know we need to use all of them. By default read and cache only required currency. + * @return string Currency symbol encoded into UTF8 + */ + function getCurrencySymbol($currency_code, $forceloadall=0) + { + $currency_sign = ''; // By default return iso code + if (function_exists("mb_convert_encoding")) { $this->load_cache_currencies($forceloadall?'':$currency_code); if (isset($this->cache_currencies[$currency_code]) && ! empty($this->cache_currencies[$currency_code]['unicode']) && is_array($this->cache_currencies[$currency_code]['unicode'])) - { - foreach($this->cache_currencies[$currency_code]['unicode'] as $unicode) - { - $currency_sign .= mb_convert_encoding("&#{$unicode};", "UTF-8", 'HTML-ENTITIES'); + { + foreach($this->cache_currencies[$currency_code]['unicode'] as $unicode) + { + $currency_sign .= mb_convert_encoding("&#{$unicode};", "UTF-8", 'HTML-ENTITIES'); } - } - } - - return ($currency_sign?$currency_sign:$currency_code); + } + } + + return ($currency_sign?$currency_sign:$currency_code); } - /** - * Load into the cache, all currencies + /** + * Load into the cache, all currencies * - * @param string $currency_code Get only currency. Get all if ''. - * @return int Nb of loaded lines, 0 if already loaded, <0 if KO - */ - function load_cache_currencies($currency_code) + * @param string $currency_code Get only currency. Get all if ''. + * @return int Nb of loaded lines, 0 if already loaded, <0 if KO + */ + function load_cache_currencies($currency_code) { global $db; - - if (! empty($currency_code) && isset($this->cache_currencies[$currency_code])) return 0; // Value already into cache - - $sql = "SELECT code_iso, label, unicode"; - $sql.= " FROM ".MAIN_DB_PREFIX."c_currencies"; + + if (! empty($currency_code) && isset($this->cache_currencies[$currency_code])) return 0; // Value already into cache + + $sql = "SELECT code_iso, label, unicode"; + $sql.= " FROM ".MAIN_DB_PREFIX."c_currencies"; $sql.= " WHERE active = 1"; - if (! empty($currency_code)) $sql.=" AND code_iso = '".$currency_code."'"; - //$sql.= " ORDER BY code_iso ASC"; // Not required, a sort is done later - - dol_syslog(get_class($this).'::load_cache_currencies sql='.$sql, LOG_DEBUG); - $resql = $db->query($sql); - if ($resql) - { + if (! empty($currency_code)) $sql.=" AND code_iso = '".$currency_code."'"; + //$sql.= " ORDER BY code_iso ASC"; // Not required, a sort is done later + + dol_syslog(get_class($this).'::load_cache_currencies sql='.$sql, LOG_DEBUG); + $resql = $db->query($sql); + if ($resql) + { $this->load("dict"); $label=array(); - $num = $db->num_rows($resql); - $i = 0; - while ($i < $num) - { - $obj = $db->fetch_object($resql); - - // Si traduction existe, on l'utilise, sinon on prend le libelle par defaut - $this->cache_currencies[$obj->code_iso]['label'] = ($obj->code_iso && $this->trans("Currency".$obj->code_iso)!="Currency".$obj->code_iso?$this->trans("Currency".$obj->code_iso):($obj->label!='-'?$obj->label:'')); - $this->cache_currencies[$obj->code_iso]['unicode'] = (array) json_decode($obj->unicode, true); - $label[$obj->code_iso] = $this->cache_currencies[$obj->code_iso]['label']; - $i++; - } - - array_multisort($label, SORT_ASC, $this->cache_currencies); + $num = $db->num_rows($resql); + $i = 0; + while ($i < $num) + { + $obj = $db->fetch_object($resql); - return $num; - } - else - { - dol_print_error($db); - return -1; - } + // Si traduction existe, on l'utilise, sinon on prend le libelle par defaut + $this->cache_currencies[$obj->code_iso]['label'] = ($obj->code_iso && $this->trans("Currency".$obj->code_iso)!="Currency".$obj->code_iso?$this->trans("Currency".$obj->code_iso):($obj->label!='-'?$obj->label:'')); + $this->cache_currencies[$obj->code_iso]['unicode'] = (array) json_decode($obj->unicode, true); + $label[$obj->code_iso] = $this->cache_currencies[$obj->code_iso]['label']; + $i++; + } + + array_multisort($label, SORT_ASC, $this->cache_currencies); + + return $num; + } + else + { + dol_print_error($db); + return -1; + } } } diff --git a/htdocs/core/lib/agenda.lib.php b/htdocs/core/lib/agenda.lib.php index 903e55eefd5..fa0c80ce4ae 100644 --- a/htdocs/core/lib/agenda.lib.php +++ b/htdocs/core/lib/agenda.lib.php @@ -385,7 +385,7 @@ function agenda_prepare_head() $h++; complete_head_from_modules($conf,$langs,$object,$head,$h,'agenda_admin'); - + $head[$h][0] = DOL_URL_ROOT."/admin/agenda_extrafields.php"; $head[$h][1] = $langs->trans("ExtraFields"); $head[$h][2] = 'attributes'; @@ -455,7 +455,7 @@ function calendars_prepare_head($param) $head[$h][2] = 'card'; $h++; - $object=(object) array(); + $object=new stdClass(); // Show more tabs from modules // Entries must be declared in modules descriptor with line diff --git a/htdocs/core/lib/functions.lib.php b/htdocs/core/lib/functions.lib.php index f3a31bfb1e8..3a17c270544 100644 --- a/htdocs/core/lib/functions.lib.php +++ b/htdocs/core/lib/functions.lib.php @@ -708,20 +708,20 @@ function dol_format_address($object) -/** - * Format a string. +/** + * Format a string. * * @param string $fmt Format of strftime function (http://php.net/manual/fr/function.strftime.php) * @param int $ts Timesamp (If is_gmt is true, timestamp is already includes timezone and daylight saving offset, if is_gmt is false, timestamp is a GMT timestamp and we must compensate with server PHP TZ) * @param int $is_gmt See comment of timestamp parameter * @return string A formatted string - */ -function dol_strftime($fmt, $ts=false, $is_gmt=false) -{ - if ((abs($ts) <= 0x7FFFFFFF)) { // check if number in 32-bit signed range - return ($is_gmt)? @gmstrftime($fmt,$ts): @strftime($fmt,$ts); + */ +function dol_strftime($fmt, $ts=false, $is_gmt=false) +{ + if ((abs($ts) <= 0x7FFFFFFF)) { // check if number in 32-bit signed range + return ($is_gmt)? @gmstrftime($fmt,$ts): @strftime($fmt,$ts); } - else return 'Error date into a not supported range'; + else return 'Error date into a not supported range'; } /** @@ -2938,18 +2938,18 @@ function get_default_tva($thirdparty_seller, $thirdparty_buyer, $idprod=0, $idpr dol_syslog("get_default_tva: seller use vat=".$thirdparty_seller->tva_assuj.", seller country=".$thirdparty_seller->country_code.", seller in cee=".$thirdparty_seller->isInEEC().", buyer country=".$thirdparty_buyer->country_code.", buyer in cee=".$thirdparty_buyer->isInEEC().", idprod=".$idprod.", idprodfournprice=".$idprodfournprice.", SERVICE_ARE_ECOMMERCE_200238EC=".(! empty($conf->global->SERVICES_ARE_ECOMMERCE_200238EC)?$conf->global->SERVICES_ARE_ECOMMERCE_200238EC:'')); - // If services are eServices according to EU Council Directive 2002/38/EC (http://ec.europa.eu/taxation_customs/taxation/vat/traders/e-commerce/article_1610_en.htm) - // we use the buyer VAT. - if (! empty($conf->global->SERVICE_ARE_ECOMMERCE_200238EC)) - { - //print "eee".$thirdparty_buyer->isACompany();exit; - if (! $thirdparty_seller->isInEEC() && $thirdparty_buyer->isInEEC() && ! $thirdparty_buyer->isACompany()) - { - //print 'VATRULE 6'; - return get_product_vat_for_country($idprod,$thirdparty_buyer,$idprodfournprice); - } - } - + // If services are eServices according to EU Council Directive 2002/38/EC (http://ec.europa.eu/taxation_customs/taxation/vat/traders/e-commerce/article_1610_en.htm) + // we use the buyer VAT. + if (! empty($conf->global->SERVICE_ARE_ECOMMERCE_200238EC)) + { + //print "eee".$thirdparty_buyer->isACompany();exit; + if (! $thirdparty_seller->isInEEC() && $thirdparty_buyer->isInEEC() && ! $thirdparty_buyer->isACompany()) + { + //print 'VATRULE 6'; + return get_product_vat_for_country($idprod,$thirdparty_buyer,$idprodfournprice); + } + } + // Si vendeur non assujeti a TVA (tva_assuj vaut 0/1 ou franchise/reel) if (is_numeric($thirdparty_seller->tva_assuj) && ! $thirdparty_seller->tva_assuj) { diff --git a/htdocs/filefunc.inc.php b/htdocs/filefunc.inc.php index 313d50a8d80..d5efaa8f22f 100755 --- a/htdocs/filefunc.inc.php +++ b/htdocs/filefunc.inc.php @@ -191,7 +191,7 @@ if (! empty($dolibarr_main_url_root_alt)) define('DOL_URL_ROOT_ALT', $suburi); // URL relative root ('', '/dolibarr/custom', ...) } -//print DOL_URL_ROOT.'-'.DOL_URL_ROOT_ALT; +//print DOL_URL_ROOT.'-'.DOL_URL_ROOT_ALT; // Define prefix MAIN_DB_PREFIX define('MAIN_DB_PREFIX',$dolibarr_main_db_prefix); diff --git a/htdocs/fourn/class/fournisseur.facture.class.php b/htdocs/fourn/class/fournisseur.facture.class.php index dd4cc748b74..e8be8c28323 100644 --- a/htdocs/fourn/class/fournisseur.facture.class.php +++ b/htdocs/fourn/class/fournisseur.facture.class.php @@ -406,7 +406,7 @@ class FactureFournisseur extends CommonInvoice { $obj = $this->db->fetch_object($resql_rows); - $this->lines[$i] = (object) array(); + $this->lines[$i] = new stdClass(); $this->lines[$i]->rowid = $obj->rowid; $this->lines[$i]->description = $obj->description; $this->lines[$i]->ref = $obj->product_ref; // TODO deprecated diff --git a/htdocs/fourn/facture/index.php b/htdocs/fourn/facture/index.php index 9910e51b2f2..6181ec15b24 100644 --- a/htdocs/fourn/facture/index.php +++ b/htdocs/fourn/facture/index.php @@ -57,7 +57,7 @@ $offset = $limit * $page ; $pageprev = $page - 1; $pagenext = $page + 1; if (! $sortorder) $sortorder="DESC"; -if (! $sortfield) $sortfield="fac.datef"; +if (! $sortfield) $sortfield="fac.datef,fac.rowid"; $month = GETPOST('month','int'); $year = GETPOST('year','int'); @@ -193,7 +193,7 @@ if ($resql) print ''; print_liste_field_titre($langs->trans("Ref"),$_SERVER["PHP_SELF"],"fac.rowid","",$param,"",$sortfield,$sortorder); print_liste_field_titre($langs->trans("RefSupplier"),$_SERVER["PHP_SELF"],"facnumber","",$param,"",$sortfield,$sortorder); - print_liste_field_titre($langs->trans("Date"),$_SERVER["PHP_SELF"],"fac.datef","",$param,'align="center"',$sortfield,$sortorder); + print_liste_field_titre($langs->trans("Date"),$_SERVER["PHP_SELF"],"fac.datef,fac.rowid","",$param,'align="center"',$sortfield,$sortorder); print_liste_field_titre($langs->trans("DateDue"),$_SERVER["PHP_SELF"],"fac.date_lim_reglement","",$param,'align="center"',$sortfield,$sortorder); print_liste_field_titre($langs->trans("Label"),$_SERVER["PHP_SELF"],"fac.libelle","",$param,"",$sortfield,$sortorder); print_liste_field_titre($langs->trans("ThirdParty"),$_SERVER["PHP_SELF"],"s.nom","",$param,"",$sortfield,$sortorder); diff --git a/htdocs/index.php b/htdocs/index.php index 7d38cb67495..ba3cbf1b05f 100644 --- a/htdocs/index.php +++ b/htdocs/index.php @@ -252,7 +252,7 @@ if ($user->societe_id == 0) } } - $object=(object) array(); + $object=new stdClass(); $parameters=array(); $action=''; $reshook=$hookmanager->executeHooks('addStatisticLine',$parameters,$object,$action); // Note that $action and $object may have been modified by some hooks diff --git a/htdocs/install/inc.php b/htdocs/install/inc.php index 2babd3dd575..9e8565402d2 100644 --- a/htdocs/install/inc.php +++ b/htdocs/install/inc.php @@ -48,10 +48,10 @@ require_once ADODB_PATH.'adodb-time.inc.php'; // Avoid warnings with strict mode E_STRICT $conf = new stdClass(); // instantiate $conf explicitely -$conf->global = (object) array(); -$conf->file = (object) array(); -$conf->db = (object) array(); -$conf->syslog = (object) array(); +$conf->global = new stdClass(); +$conf->file = new stdClass(); +$conf->db = new stdClass(); +$conf->syslog = new stdClass(); // Force $_REQUEST["logtohtml"] $_REQUEST["logtohtml"]=1; diff --git a/htdocs/install/mysql/data/llx_20_c_departements.sql b/htdocs/install/mysql/data/llx_20_c_departements.sql index a7a86a2a1d8..a2b69c3cf07 100644 --- a/htdocs/install/mysql/data/llx_20_c_departements.sql +++ b/htdocs/install/mysql/data/llx_20_c_departements.sql @@ -5,7 +5,7 @@ -- Copyright (C) 2004 Guillaume Delecourt -- Copyright (C) 2005-2009 Regis Houssin -- Copyright (C) 2007 Patrick Raguin --- Copyright (C) 2010-2012 Juanjo Menent +-- Copyright (C) 2010-2013 Juanjo Menent -- Copyright (C) 2012 Sebastian Neuwert -- Copyright (C) 2012 Ricardo Schluter -- @@ -284,7 +284,7 @@ insert into llx_c_departements (fk_region, code_departement,cheflieu,tncc,ncc,no insert into llx_c_departements (fk_region, code_departement,cheflieu,tncc,ncc,nom) values (1401,'NL','',1,'','Newfoundland and Labrador'); -- Provinces Spain (id country=4) -INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('01', 419, '', 19, 'PAIS VASCO', 'País Vasco', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('01', 419, '', 19, 'ALAVA, 'Álava', 1); INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('02', 404, '', 4, 'ALBACETE', 'Albacete', 1); INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('03', 411, '', 11, 'ALICANTE', 'Alicante', 1); INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('04', 401, '', 1, 'ALMERIA', 'Almería', 1); @@ -294,7 +294,7 @@ INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, nc INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('08', 406, '', 6, 'BARCELONA', 'Barcelona', 1); INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('09', 403, '', 8, 'BURGOS', 'Burgos', 1); INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('10', 412, '', 12, 'CACERES', 'Cáceres', 1); -INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('11', 401, '', 1, 'CADIz', 'Cádiz', 1); +INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('11', 401, '', 1, 'CADIZ', 'Cádiz', 1); INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('12', 411, '', 11, 'CASTELLON', 'Castellón', 1); INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('13', 404, '', 4, 'CIUDAD REAL', 'Ciudad Real', 1); INSERT INTO llx_c_departements ( code_departement, fk_region, cheflieu, tncc, ncc, nom, active) VALUES ('14', 401, '', 1, 'CORDOBA', 'Córdoba', 1); diff --git a/htdocs/install/mysql/migration/3.2.0-3.3.0.sql b/htdocs/install/mysql/migration/3.2.0-3.3.0.sql index 7c92341271b..a94871e2b9c 100755 --- a/htdocs/install/mysql/migration/3.2.0-3.3.0.sql +++ b/htdocs/install/mysql/migration/3.2.0-3.3.0.sql @@ -913,3 +913,5 @@ ALTER TABLE llx_element_lock DROP COLUMN status; DELETE FROM llx_c_action_trigger WHERE elementtype='withdraw'; UPDATE llx_c_action_trigger SET code='FICHINTER_VALIDATE' WHERE code='FICHEINTER_VALIDATE'; + +UPDATE llx_c_departements SET ncc='ALAVA', nom='Álava' WHERE code_departement='01' AND fk_region=419; diff --git a/htdocs/main.inc.php b/htdocs/main.inc.php index 8a5b638818c..d464083167b 100644 --- a/htdocs/main.inc.php +++ b/htdocs/main.inc.php @@ -775,41 +775,41 @@ if (! empty($conf->multicompany->enabled) && GETPOST('action') == 'switchentity' //print 'eee'.$conf->standard_menu; -// Init menu manager -if (empty($user->societe_id)) // If internal user or not defined -{ - $conf->standard_menu=(empty($conf->global->MAIN_MENU_STANDARD_FORCED)?$conf->global->MAIN_MENU_STANDARD:$conf->global->MAIN_MENU_STANDARD_FORCED); - $conf->smart_menu=(empty($conf->global->MAIN_MENU_SMARTPHONE_FORCED)?$conf->global->MAIN_MENU_SMARTPHONE:$conf->global->MAIN_MENU_SMARTPHONE_FORCED); -} -else // If external user -{ - $conf->standard_menu=(empty($conf->global->MAIN_MENUFRONT_STANDARD_FORCED)?$conf->global->MAIN_MENUFRONT_STANDARD:$conf->global->MAIN_MENUFRONT_STANDARD_FORCED); - $conf->smart_menu=(empty($conf->global->MAIN_MENUFRONT_SMARTPHONE_FORCED)?$conf->global->MAIN_MENUFRONT_SMARTPHONE:$conf->global->MAIN_MENUFRONT_SMARTPHONE_FORCED); -} -// For backward compatibility +// Init menu manager +if (empty($user->societe_id)) // If internal user or not defined +{ + $conf->standard_menu=(empty($conf->global->MAIN_MENU_STANDARD_FORCED)?$conf->global->MAIN_MENU_STANDARD:$conf->global->MAIN_MENU_STANDARD_FORCED); + $conf->smart_menu=(empty($conf->global->MAIN_MENU_SMARTPHONE_FORCED)?$conf->global->MAIN_MENU_SMARTPHONE:$conf->global->MAIN_MENU_SMARTPHONE_FORCED); +} +else // If external user +{ + $conf->standard_menu=(empty($conf->global->MAIN_MENUFRONT_STANDARD_FORCED)?$conf->global->MAIN_MENUFRONT_STANDARD:$conf->global->MAIN_MENUFRONT_STANDARD_FORCED); + $conf->smart_menu=(empty($conf->global->MAIN_MENUFRONT_SMARTPHONE_FORCED)?$conf->global->MAIN_MENUFRONT_SMARTPHONE:$conf->global->MAIN_MENUFRONT_SMARTPHONE_FORCED); +} +// For backward compatibility if (empty($conf->standard_menu)) $conf->standard_menu ='eldy_backoffice.php'; -elseif ($conf->standard_menu == 'eldy.php') $conf->standard_menu='eldy_backoffice.php'; +elseif ($conf->standard_menu == 'eldy.php') $conf->standard_menu='eldy_backoffice.php'; + +// Load the menu manager (only if not already done) +$file_menu=empty($conf->browser->phone)?$conf->standard_menu:$conf->smart_menu; +if (GETPOST('menu')) $file_menu=GETPOST('menu'); // menu=eldy_backoffice.php +if (! class_exists('MenuManager')) +{ + $menufound=0; + $dirmenus=array_merge(array("/core/menus/"),(array) $conf->modules_parts['menus']); + foreach($dirmenus as $dirmenu) + { + $menufound=dol_include_once($dirmenu."standard/".$file_menu); + if ($menufound) break; + } + if (! $menufound) // If failed to include, we try with standard + { + $file_menu='eldy_backoffice.php'; + include_once DOL_DOCUMENT_ROOT."/core/menus/standard/".$file_menu; + } +} +$menumanager = new MenuManager($db); -// Load the menu manager (only if not already done) -$file_menu=empty($conf->browser->phone)?$conf->standard_menu:$conf->smart_menu; -if (GETPOST('menu')) $file_menu=GETPOST('menu'); // menu=eldy_backoffice.php -if (! class_exists('MenuManager')) -{ - $menufound=0; - $dirmenus=array_merge(array("/core/menus/"),(array) $conf->modules_parts['menus']); - foreach($dirmenus as $dirmenu) - { - $menufound=dol_include_once($dirmenu."standard/".$file_menu); - if ($menufound) break; - } - if (! $menufound) // If failed to include, we try with standard - { - $file_menu='eldy_backoffice.php'; - include_once DOL_DOCUMENT_ROOT."/core/menus/standard/".$file_menu; - } -} -$menumanager = new MenuManager($db); - diff --git a/htdocs/paypal/lib/paypal.lib.php b/htdocs/paypal/lib/paypal.lib.php index 244d6d59705..372122940f4 100755 --- a/htdocs/paypal/lib/paypal.lib.php +++ b/htdocs/paypal/lib/paypal.lib.php @@ -177,7 +177,7 @@ function paypaladmin_prepare_head() $head[$h][2] = 'paypalaccount'; $h++; - $object=(object) array(); + $object=new stdClass(); // Show more tabs from modules // Entries must be declared in modules descriptor with line diff --git a/htdocs/product/class/product.class.php b/htdocs/product/class/product.class.php index 430ffbbc674..a9c0439b220 100644 --- a/htdocs/product/class/product.class.php +++ b/htdocs/product/class/product.class.php @@ -2571,7 +2571,7 @@ class Product extends CommonObject while ($i < $num) { $row = $this->db->fetch_object($result); - $this->stock_warehouse[$row->fk_entrepot] = (object) array(); + $this->stock_warehouse[$row->fk_entrepot] = new stdClass(); $this->stock_warehouse[$row->fk_entrepot]->real = $row->reel; $this->stock_warehouse[$row->fk_entrepot]->pmp = $row->pmp; $this->stock_reel+=$row->reel; diff --git a/htdocs/projet/class/task.class.php b/htdocs/projet/class/task.class.php index bb5ae82aa3b..f28e5d27e6d 100644 --- a/htdocs/projet/class/task.class.php +++ b/htdocs/projet/class/task.class.php @@ -551,7 +551,7 @@ class Task extends CommonObject if (! $error) { - $tasks[$i] = (object) array(); + $tasks[$i] = new stdClass(); $tasks[$i]->id = $obj->taskid; $tasks[$i]->ref = $obj->taskid; $tasks[$i]->fk_project = $obj->projectid; diff --git a/htdocs/public/demo/index.php b/htdocs/public/demo/index.php index 5b24610c012..9109cabc09b 100644 --- a/htdocs/public/demo/index.php +++ b/htdocs/public/demo/index.php @@ -66,7 +66,7 @@ $demoprofiles=array( $tmpaction = 'view'; $parameters=array(); -$object=(object) 'nothing'; +$object=new stdClass(); $reshook=$hookmanager->executeHooks('addDemoProfile', $parameters, $object, $tmpaction); // Note that $action and $object may have been modified by some hooks $error=$hookmanager->error; $errors=$hookmanager->errors; diff --git a/htdocs/public/paypal/paymentok.php b/htdocs/public/paypal/paymentok.php index 73b7a096d50..3a0b56f62a1 100755 --- a/htdocs/public/paypal/paymentok.php +++ b/htdocs/public/paypal/paymentok.php @@ -136,7 +136,7 @@ if ($PAYPALTOKEN) $ack = strtoupper($resArray["ACK"]); if($ack=="SUCCESS" || $ack=="SUCCESSWITHWARNING") { - $object = (object) 'paypal'; + $object = new stdClass(); $object->source = $source; $object->ref = $ref; diff --git a/htdocs/support/inc.php b/htdocs/support/inc.php index 0e85d8c9650..42a4d65ce27 100644 --- a/htdocs/support/inc.php +++ b/htdocs/support/inc.php @@ -45,10 +45,10 @@ require_once ADODB_PATH.'adodb-time.inc.php'; // Avoid warnings with strict mode E_STRICT $conf = new stdClass(); // instantiate $conf explicitely -$conf->global = (object) array(); -$conf->file = (object) array(); -$conf->db = (object) array(); -$conf->syslog = (object) array(); +$conf->global = new stdClass(); +$conf->file = new stdClass(); +$conf->db = new stdClass(); +$conf->syslog = new stdClass(); // Force $_REQUEST["logtohtml"] $_REQUEST["logtohtml"]=1; diff --git a/htdocs/user/class/user.class.php b/htdocs/user/class/user.class.php index 9ee9e91bc24..daf7b7ade4c 100644 --- a/htdocs/user/class/user.class.php +++ b/htdocs/user/class/user.class.php @@ -112,11 +112,11 @@ class User extends CommonObject $this->all_permissions_are_loaded = 0; $this->admin=0; - $this->conf = (object) array(); - $this->rights = (object) array(); - $this->rights->user = (object) array(); - $this->rights->user->user = (object) array(); - $this->rights->user->self = (object) array(); + $this->conf = new stdClass(); + $this->rights = new stdClass(); + $this->rights->user = new stdClass(); + $this->rights->user->user = new stdClass(); + $this->rights->user->self = new stdClass(); } /** @@ -538,11 +538,11 @@ class User extends CommonObject if ($perms) { - if (! isset($this->rights) || ! is_object($this->rights)) $this->rights = (object) array(); // For avoid error - if (! isset($this->rights->$module) || ! is_object($this->rights->$module)) $this->rights->$module = (object) array(); + if (! isset($this->rights) || ! is_object($this->rights)) $this->rights = new stdClass(); // For avoid error + if (! isset($this->rights->$module) || ! is_object($this->rights->$module)) $this->rights->$module = new stdClass(); if ($subperms) { - if (! isset($this->rights->$module->$perms) || ! is_object($this->rights->$module->$perms)) $this->rights->$module->$perms = (object) array(); + if (! isset($this->rights->$module->$perms) || ! is_object($this->rights->$module->$perms)) $this->rights->$module->$perms = new stdClass(); $this->rights->$module->$perms->$subperms = 1; } else @@ -588,11 +588,11 @@ class User extends CommonObject if ($perms) { - if (! isset($this->rights) || ! is_object($this->rights)) $this->rights = (object) array(); // For avoid error - if (! isset($this->rights->$module) || ! is_object($this->rights->$module)) $this->rights->$module = (object) array(); + if (! isset($this->rights) || ! is_object($this->rights)) $this->rights = new stdClass(); // For avoid error + if (! isset($this->rights->$module) || ! is_object($this->rights->$module)) $this->rights->$module = new stdClass(); if ($subperms) { - if (! isset($this->rights->$module->$perms) || ! is_object($this->rights->$module->$perms)) $this->rights->$module->$perms = (object) array(); + if (! isset($this->rights->$module->$perms) || ! is_object($this->rights->$module->$perms)) $this->rights->$module->$perms = new stdClass(); $this->rights->$module->$perms->$subperms = 1; } else diff --git a/htdocs/user/class/usergroup.class.php b/htdocs/user/class/usergroup.class.php index 0249967ab71..206c8bffcf3 100644 --- a/htdocs/user/class/usergroup.class.php +++ b/htdocs/user/class/usergroup.class.php @@ -470,11 +470,11 @@ class UserGroup extends CommonObject if ($perms) { - if (! isset($this->rights)) $this->rights = (object) array(); // For avoid error - if (! isset($this->rights->$module) || ! is_object($this->rights->$module)) $this->rights->$module = (object) array(); + if (! isset($this->rights)) $this->rights = new stdClass(); // For avoid error + if (! isset($this->rights->$module) || ! is_object($this->rights->$module)) $this->rights->$module = new stdClass(); if ($subperms) { - if (! isset($this->rights->$module->$perms) || ! is_object($this->rights->$module->$perms)) $this->rights->$module->$perms = (object) array(); + if (! isset($this->rights->$module->$perms) || ! is_object($this->rights->$module->$perms)) $this->rights->$module->$perms = new stdClass(); $this->rights->$module->$perms->$subperms = 1; } else diff --git a/test/phpunit/DateLibTest.php b/test/phpunit/DateLibTest.php index 83866bcd817..0eaf6149f3b 100644 --- a/test/phpunit/DateLibTest.php +++ b/test/phpunit/DateLibTest.php @@ -217,16 +217,16 @@ class DateLibTest extends PHPUnit_Framework_TestCase print __METHOD__." result=".$result."\n"; $this->assertEquals('1970-01-01 00:00:00',$result); - // Check %Y-%m-%d %H:%M:%S format - $result=dol_print_date(16725225600,'%Y-%m-%d %H:%M:%S',true); // http://www.epochconverter.com/ - print __METHOD__." result=".$result."\n"; - $this->assertEquals('2500-01-01 00:00:00',$result); + // Check %Y-%m-%d %H:%M:%S format + $result=dol_print_date(16725225600,'%Y-%m-%d %H:%M:%S',true); // http://www.epochconverter.com/ + print __METHOD__." result=".$result."\n"; + $this->assertEquals('2500-01-01 00:00:00',$result); + + // Check %Y-%m-%d %H:%M:%S format + $result=dol_print_date(-1830384000,'%Y-%m-%d %H:%M:%S',true); // http://www.epochconverter.com/ + print __METHOD__." result=".$result."\n"; + $this->assertEquals('1912-01-01 00:00:00',$result); // dol_print_date use TZ (good) but epoch converter does not use it. - // Check %Y-%m-%d %H:%M:%S format - $result=dol_print_date(-1830384000,'%Y-%m-%d %H:%M:%S',true); // http://www.epochconverter.com/ - print __METHOD__." result=".$result."\n"; - $this->assertEquals('1912-01-01 00:00:00',$result); // dol_print_date use TZ (good) but epoch converter does not use it. - // Check %Y-%m-%d %H:%M:%S format $result=dol_print_date(-11676096000,'%Y-%m-%d %H:%M:%S',true); // http://www.epochconverter.com/ print __METHOD__." result=".$result."\n"; diff --git a/test/phpunit/DateLibTzFranceTest.php b/test/phpunit/DateLibTzFranceTest.php index 1f190b87ffc..889c6be3c3c 100644 --- a/test/phpunit/DateLibTzFranceTest.php +++ b/test/phpunit/DateLibTzFranceTest.php @@ -77,9 +77,9 @@ class DateLibTzFranceTest extends PHPUnit_Framework_TestCase { global $conf,$user,$langs,$db; - if (getServerTimeZoneString() != 'Europe/Paris') { - print "\n".__METHOD__." This PHPUnit test can be launched manually only onto a server with PHP timezone set to TZ+1 Europe/Paris, not a TZ=".getServerTimeZoneString().".\n"; die(); - } + if (getServerTimeZoneString() != 'Europe/Paris') { + print "\n".__METHOD__." This PHPUnit test can be launched manually only onto a server with PHP timezone set to TZ+1 Europe/Paris, not a TZ=".getServerTimeZoneString().".\n"; die(); + } $db->begin(); // This is to have all actions inside a transaction even if test launched without suite. @@ -152,10 +152,10 @@ class DateLibTzFranceTest extends PHPUnit_Framework_TestCase // Specific cas during war - // 1940, no timezone - $result=dol_print_date(-946771200,'%Y-%m-%d %H:%M:%S',false); // http://www.epochconverter.com/ - print __METHOD__." result=".$result."\n"; - $this->assertEquals('1940-01-01 01:00:00',$result); // dol_print_date use a modern timezone, not epoch converter as it did not exists this year + // 1940, no timezone + $result=dol_print_date(-946771200,'%Y-%m-%d %H:%M:%S',false); // http://www.epochconverter.com/ + print __METHOD__." result=".$result."\n"; + $this->assertEquals('1940-01-01 01:00:00',$result); // dol_print_date use a modern timezone, not epoch converter as it did not exists this year // 1941, timezone is added by germany to +2 (same for 1942) $result=dol_print_date(-915148800,'%Y-%m-%d %H:%M:%S',false); // http://www.epochconverter.com/