diff --git a/build/exe/doliwamp/doliwamp.iss b/build/exe/doliwamp/doliwamp.iss index f89ff75f410..c731758148d 100644 --- a/build/exe/doliwamp/doliwamp.iss +++ b/build/exe/doliwamp/doliwamp.iss @@ -10,7 +10,7 @@ ; only the root user with no password, stop server and catch ; files user.MY* to put them in the Dolibarr build/exe/doliwamp/mysql directory. ; -; Version: $Id$ +; Version: $Id: doliwamp.iss,v 1.82 2011/07/13 21:09:30 eldy Exp $ ;---------------------------------------------------------------------------------------- @@ -18,12 +18,12 @@ ; ----- Change this ----- AppName=DoliWamp ; DoliWamp-x.x.x or DoliWamp-x.x.x-dev or DoliWamp-x.x.x-beta -AppVerName=DoliWamp-3.1.0-alpha +AppVerName=DoliWamp-3.1.0-beta ; DoliWamp-x.x x or DoliWamp-x.x.x-dev or DoliWamp-x.x.x-beta -OutputBaseFilename=DoliWamp-3.1.0-alpha +OutputBaseFilename=DoliWamp-3.1.0-beta ; Define full path from wich all relative path are defined ; You must modify this to put here your dolibarr root directory -SourceDir=C:\Work\Data\Workspace\dolibarr +SourceDir=C:\Mes Developpements\dolibarr ; ----- End of change ;OutputManifestFile=build\doliwampbuild.log AppId=doliwamp @@ -101,10 +101,10 @@ Source: "build\exe\doliwamp\UsedPort.exe"; DestDir: "{app}\"; Flags: ignoreversi ; PhpMyAdmin, Apache, Php, Mysql ; Put here path of Wampserver applications ; Value OK: apache 2.2.6, php 5.2.5 (5.2.11 fails if php_exif is on), mysql 5.0.45 or 5.1.36 -Source: "C:\Work\Applis\Wamp\apps\phpmyadmin3.2.0.1\*.*"; DestDir: "{app}\apps\phpmyadmin3.2.0.1"; Flags: ignoreversion recursesubdirs; Excludes: "config.inc.php,wampserver.conf,*.log,*_log" -Source: "C:\Work\Applis\Wamp\bin\apache\apache2.2.6\*.*"; DestDir: "{app}\bin\apache\apache2.2.6"; Flags: ignoreversion recursesubdirs; Excludes: "php.ini,httpd.conf,wampserver.conf,*.log,*_log" -Source: "C:\Work\Applis\Wamp\bin\php\php5.2.5\*.*"; DestDir: "{app}\bin\php\php5.2.5"; Flags: ignoreversion recursesubdirs; Excludes: "php.ini,phpForApache.ini,wampserver.conf,*.log,*_log" -Source: "C:\Work\Applis\Wamp\bin\mysql\mysql5.0.45\*.*"; DestDir: "{app}\bin\mysql\mysql5.0.45"; Flags: ignoreversion recursesubdirs; Excludes: "my.ini,data\*,wampserver.conf,*.log,*_log,MySQLInstanceConfig.exe" +Source: "C:\Program Files\Wamp\apps\phpmyadmin3.2.0.1\*.*"; DestDir: "{app}\apps\phpmyadmin3.2.0.1"; Flags: ignoreversion recursesubdirs; Excludes: "config.inc.php,wampserver.conf,*.log,*_log" +Source: "C:\Program Files\Wamp\bin\apache\apache2.2.6\*.*"; DestDir: "{app}\bin\apache\apache2.2.6"; Flags: ignoreversion recursesubdirs; Excludes: "php.ini,httpd.conf,wampserver.conf,*.log,*_log" +Source: "C:\Program Files\Wamp\bin\php\php5.2.5\*.*"; DestDir: "{app}\bin\php\php5.2.5"; Flags: ignoreversion recursesubdirs; Excludes: "php.ini,phpForApache.ini,wampserver.conf,*.log,*_log" +Source: "C:\Program Files\Wamp\bin\mysql\mysql5.0.45\*.*"; DestDir: "{app}\bin\mysql\mysql5.0.45"; Flags: ignoreversion recursesubdirs; Excludes: "my.ini,data\*,wampserver.conf,*.log,*_log,MySQLInstanceConfig.exe" ; Mysql data files (does not overwrite if exists) Source: "build\exe\doliwamp\mysql\*.*"; DestDir: "{app}\bin\mysql\data\mysql"; Flags: onlyifdoesntexist ignoreversion recursesubdirs; Excludes: ".cvsignore,.project,CVS\*,Thumbs.db" ; Dolibarr diff --git a/htdocs/core/class/commonobject.class.php b/htdocs/core/class/commonobject.class.php index e9ae1ea7e05..a6c93758797 100644 --- a/htdocs/core/class/commonobject.class.php +++ b/htdocs/core/class/commonobject.class.php @@ -22,7 +22,7 @@ * \file htdocs/core/class/commonobject.class.php * \ingroup core * \brief File of parent class of all other business classes (invoices, contracts, proposals, orders, ...) - * \version $Id: commonobject.class.php,v 1.145 2011/07/10 16:50:40 eldy Exp $ + * \version $Id: commonobject.class.php,v 1.146 2011/07/13 16:55:25 eldy Exp $ */ @@ -365,9 +365,10 @@ class CommonObject * Return array with list of possible values for type of contacts * @param source internal, external or all if not defined * @param order Sort order by : code or rowid - * @return array List of type of contacts + * @param option 0=Return array id->label, 1=Return array code->label + * @return array Array list of type of contacts (id->label if option=0, code->label if option=1) */ - function liste_type_contact($source='internal', $order='code') + function liste_type_contact($source='internal', $order='code', $option=0) { global $langs; @@ -390,7 +391,8 @@ class CommonObject $transkey="TypeContact_".$this->element."_".$source."_".$obj->code; $libelle_type=($langs->trans($transkey)!=$transkey ? $langs->trans($transkey) : $obj->libelle); - $tab[$obj->rowid]=$libelle_type; + if (empty($option)) $tab[$obj->rowid]=$libelle_type; + else $tab[$obj->code]=$libelle_type; $i++; } return $tab; diff --git a/htdocs/core/class/conf.class.php b/htdocs/core/class/conf.class.php index e9e0a507b7e..bd15e21b0ab 100644 --- a/htdocs/core/class/conf.class.php +++ b/htdocs/core/class/conf.class.php @@ -25,7 +25,7 @@ * \ingroup core * \brief Fichier de la classe de stockage de la config courante * \remarks La config est stockee dans le fichier conf/conf.php - * \version $Id: conf.class.php,v 1.60 2011/07/09 05:28:42 hregis Exp $ + * \version $Id: conf.class.php,v 1.61 2011/07/13 18:04:25 eldy Exp $ */ @@ -145,13 +145,13 @@ class Conf elseif (preg_match('/^MAIN_MODULE_([A-Z_]+)_TRIGGERS$/i',$key,$reg)) { $modulename = strtolower($reg[1]); - $this->triggers_modules[] = '/'.$modulename.'/inc/triggers/'; + $this->triggers_modules[] = '/'.$modulename.'/inc/triggers/'; // TODO Replace inc by includes to have same path than standard } // If this is constant for login method activated by a module elseif (preg_match('/^MAIN_MODULE_([A-Z_]+)_LOGIN_METHOD$/i',$key,$reg)) { $modulename = strtolower($reg[1]); - $this->login_method_modules[] = DOL_DOCUMENT_ROOT.'/'.$modulename.'/inc/login/'; + $this->login_method_modules[] = DOL_DOCUMENT_ROOT.'/'.$modulename.'/inc/login/'; // TODO Replace inc by includes to have same path than standard } // If this is constant for hook activated by a module. Value is list of hooked tabs separated with : elseif (preg_match('/^MAIN_MODULE_([A-Z_]+)_HOOKS$/i',$key,$reg)) diff --git a/htdocs/core/class/html.formmail.class.php b/htdocs/core/class/html.formmail.class.php index 3164f86d8e1..6ca8f1e007f 100644 --- a/htdocs/core/class/html.formmail.class.php +++ b/htdocs/core/class/html.formmail.class.php @@ -22,7 +22,7 @@ * \file htdocs/core/class/html.formmail.class.php * \ingroup core * \brief Fichier de la classe permettant la generation du formulaire html d'envoi de mail unitaire - * \version $Id: html.formmail.class.php,v 1.31 2011/07/10 20:03:41 eldy Exp $ + * \version $Id: html.formmail.class.php,v 1.32 2011/07/13 16:55:25 eldy Exp $ */ require_once(DOL_DOCUMENT_ROOT ."/core/class/html.form.class.php"); @@ -519,7 +519,7 @@ class FormMail foreach($listofpaths as $key => $val) { $out.= '
'; - $out.= img_mime($listofnames[$key]).' '.$listofnames[$key]; + $out.= img_mime($listofnames[$key]).' '.$listofnames[$key]; if (! $this->withfilereadonly) { $out.= ' '; @@ -547,15 +547,15 @@ class FormMail $defaultmessage=""; // TODO A partir du type, proposer liste de messages dans table llx_models - if ($this->param["models"]=='body') { $defaultmessage=$this->withbody; } - if ($this->param["models"]=='facture_send') { $defaultmessage=$langs->transnoentities("PredefinedMailContentSendInvoice"); } - if ($this->param["models"]=='facture_relance') { $defaultmessage=$langs->transnoentities("PredefinedMailContentSendInvoiceReminder"); } - if ($this->param["models"]=='propal_send') { $defaultmessage=$langs->transnoentities("PredefinedMailContentSendProposal"); } - if ($this->param["models"]=='order_send') { $defaultmessage=$langs->transnoentities("PredefinedMailContentSendOrder"); } - if ($this->param["models"]=='order_supplier_send') { $defaultmessage=$langs->transnoentities("PredefinedMailContentSendSupplierOrder"); } - if ($this->param["models"]=='invoice_supplier_send') { $defaultmessage=$langs->transnoentities("PredefinedMailContentSendSupplierInvoice"); } - if ($this->param["models"]=='shipping_send') { $defaultmessage=$langs->transnoentities("PredefinedMailContentSendShipping"); } - if ($this->param["models"]=='fichinter_send') { $defaultmessage=$langs->transnoentities("PredefinedMailContentSendFichInter"); } + if ($this->param["models"]=='facture_send') { $defaultmessage=$langs->transnoentities("PredefinedMailContentSendInvoice"); } + elseif ($this->param["models"]=='facture_relance') { $defaultmessage=$langs->transnoentities("PredefinedMailContentSendInvoiceReminder"); } + elseif ($this->param["models"]=='propal_send') { $defaultmessage=$langs->transnoentities("PredefinedMailContentSendProposal"); } + elseif ($this->param["models"]=='order_send') { $defaultmessage=$langs->transnoentities("PredefinedMailContentSendOrder"); } + elseif ($this->param["models"]=='order_supplier_send') { $defaultmessage=$langs->transnoentities("PredefinedMailContentSendSupplierOrder"); } + elseif ($this->param["models"]=='invoice_supplier_send') { $defaultmessage=$langs->transnoentities("PredefinedMailContentSendSupplierInvoice"); } + elseif ($this->param["models"]=='shipping_send') { $defaultmessage=$langs->transnoentities("PredefinedMailContentSendShipping"); } + elseif ($this->param["models"]=='fichinter_send') { $defaultmessage=$langs->transnoentities("PredefinedMailContentSendFichInter"); } + elseif (! is_numeric($this->withbody)) { $defaultmessage=$this->withbody; } if ($conf->paypal->enabled && $conf->global->PAYPAL_ADD_PAYMENT_URL) { @@ -565,12 +565,12 @@ class FormMail if ($this->param["models"]=='order_send') { - $url=getPaymentUrl('order',$this->substit['__ORDERREF__']); + $url=getPaypalPaymentUrl('order',$this->substit['__ORDERREF__']); $defaultmessage=$langs->transnoentities("PredefinedMailContentSendOrderWithPaypalLink",$url); } if ($this->param["models"]=='facture_send') { - $url=getPaymentUrl('invoice',$this->substit['__FACREF__']); + $url=getPaypalPaymentUrl('invoice',$this->substit['__FACREF__']); $defaultmessage=$langs->transnoentities("PredefinedMailContentSendInvoiceWithPaypalLink",$url); } } diff --git a/htdocs/includes/triggers/interface_modAgenda_ActionsAuto.class.php b/htdocs/includes/triggers/interface_modAgenda_ActionsAuto.class.php index 2ff7b4003b3..e2987f224ee 100644 --- a/htdocs/includes/triggers/interface_modAgenda_ActionsAuto.class.php +++ b/htdocs/includes/triggers/interface_modAgenda_ActionsAuto.class.php @@ -22,7 +22,7 @@ * \file htdocs/includes/triggers/interface_modAgenda_ActionsAuto.class.php * \ingroup agenda * \brief Trigger file for agenda module - * \version $Id: interface_modAgenda_ActionsAuto.class.php,v 1.33 2011/07/07 09:18:27 simnandez Exp $ + * \version $Id: interface_modAgenda_ActionsAuto.class.php,v 1.34 2011/07/13 18:05:27 eldy Exp $ */ @@ -550,8 +550,14 @@ class InterfaceActionsAuto { $now=dol_now(); + require_once(DOL_DOCUMENT_ROOT.'/contact/class/contact.class.php'); + require_once(DOL_DOCUMENT_ROOT.'/societe/class/societe.class.php'); + $contactforaction=new Contact($this->db); + $societeforaction=new Societe($this->db); + if ($object->sendtoid > 0) $contactforaction->fetch($object->sendtoid); + if ($object->socid > 0) $societeforaction->fetch($object->socid); + // Insertion action - require_once(DOL_DOCUMENT_ROOT.'/contact/class/contact.class.php'); require_once(DOL_DOCUMENT_ROOT.'/comm/action/class/actioncomm.class.php'); $actioncomm = new ActionComm($this->db); $actioncomm->type_code = $object->actiontypecode; @@ -562,8 +568,8 @@ class InterfaceActionsAuto $actioncomm->durationp = 0; $actioncomm->punctual = 1; $actioncomm->percentage = -1; // Not applicable - $actioncomm->contact = new Contact($this->db,$object->sendtoid); - $actioncomm->societe = new Societe($this->db,$object->socid); + $actioncomm->contact = $contactforaction; + $actioncomm->societe = $societeforaction; $actioncomm->author = $user; // User saving action //$actioncomm->usertodo = $user; // User affected to action $actioncomm->userdone = $user; // User doing action diff --git a/htdocs/langs/fr_FR/categories.lang b/htdocs/langs/fr_FR/categories.lang index 092becf4c98..484cc8ce9a3 100644 --- a/htdocs/langs/fr_FR/categories.lang +++ b/htdocs/langs/fr_FR/categories.lang @@ -42,7 +42,7 @@ ErrCatAlreadyExists=Ce nom est déjà utilisé AddProductToCat=Ajouter ce produit à une catégorie ? ImpossibleAddCat=Impossible d'ajouter la catégorie ImpossibleAssociateCategory=Impossible d'associer la catégorie -WasAddedSuccessfully=%s a été ajoutée avec succès. +WasAddedSuccessfully=%s a été ajouté avec succès. ObjectAlreadyLinkedToCategory=L'élément est déjà lié à cette catégorie. CategorySuccessfullyCreated=La catégorie %s a été ajouté avec succès. ProductIsInCategories=Ce produit/service est dans les catégories suivantes diff --git a/htdocs/paypal/lib/paypal.lib.php b/htdocs/paypal/lib/paypal.lib.php index 0e846c9e9a7..82ec9a15c2e 100755 --- a/htdocs/paypal/lib/paypal.lib.php +++ b/htdocs/paypal/lib/paypal.lib.php @@ -22,7 +22,7 @@ * \file htdocs/paypal/lib/paypal.lib.php * \ingroup paypal * \brief Library for common paypal functions - * \version $Id$ + * \version $Id: paypal.lib.php,v 1.25 2011/07/13 16:55:34 eldy Exp $ */ function llxHeaderPaypal($title, $head = "") { @@ -132,7 +132,7 @@ function html_print_paypal_footer($fromcompany,$langs) function paypaladmin_prepare_head() { global $langs, $conf; - + $h = 0; $head = array(); @@ -140,7 +140,7 @@ function paypaladmin_prepare_head() $head[$h][1] = $langs->trans("Account"); $head[$h][2] = 'paypalaccount'; $h++; - + // Show more tabs from modules // Entries must be declared in modules descriptor with line // $this->tabs = array('entity:+tabname:Title:@mymodule:/mymodule/mypage.php?id=__ID__'); to add new tab @@ -151,24 +151,24 @@ function paypaladmin_prepare_head() } /** - * + * */ -function getPaymentUrl($source='',$ref='',$amount=0,$freetag='') +function getPaypalPaymentUrl($source='',$ref='',$amount=0,$freetag='') { global $conf; - + require_once(DOL_DOCUMENT_ROOT."/lib/security.lib.php"); - + if (! empty($source) && ! empty($ref)) { $token=''; if (! empty($conf->global->PAYPAL_SECURITY_TOKEN)) $token='&securekey='.dol_hash($conf->global->PAYPAL_SECURITY_TOKEN.$source.$ref, 2); - + if ($source == 'commande') $source = 'order'; if ($source == 'facture') $source = 'invoice'; - + $url = DOL_MAIN_URL_ROOT.'/public/paypal/newpayment.php?source='.$source.'&ref='.$ref.$token; - + return $url; } } @@ -482,7 +482,7 @@ function hash_call($methodName,$nvpStr) global $conf, $langs; global $API_Endpoint, $API_Url, $API_version, $USE_PROXY, $PROXY_HOST, $PROXY_PORT, $PROXY_USER, $PROXY_PASS; global $PAYPAL_API_USER, $PAYPAL_API_PASSWORD, $PAYPAL_API_SIGNATURE; - + // TODO problem with triggers $API_version="56"; if ($conf->global->PAYPAL_API_SANDBOX) @@ -495,7 +495,7 @@ function hash_call($methodName,$nvpStr) $API_Endpoint = "https://api-3t.paypal.com/nvp"; $API_Url = "https://www.paypal.com/cgi-bin/webscr?cmd=_express-checkout&token="; } - + // Clean parameters $PAYPAL_API_USER=""; if ($conf->global->PAYPAL_API_USER) $PAYPAL_API_USER=$conf->global->PAYPAL_API_USER; @@ -506,7 +506,7 @@ function hash_call($methodName,$nvpStr) $PAYPAL_API_SANDBOX=""; if ($conf->global->PAYPAL_API_SANDBOX) $PAYPAL_API_SANDBOX=$conf->global->PAYPAL_API_SANDBOX; // TODO END problem with triggers - + dol_syslog("Paypal API endpoint ".$API_Endpoint); //setting the curl parameters. @@ -580,19 +580,19 @@ function hash_call($methodName,$nvpStr) function GetApiError() { $errors=array(); - + $resArray=$_SESSION['reshash']; - + if(isset($_SESSION['curl_error_no'])) { $errors[] = $_SESSION['curl_error_no'].'-'.$_SESSION['curl_error_msg']; } - + foreach($resArray as $key => $value) { $errors[] = $key.'-'.$value; } - + return $errors; }