From cf72c05a99b15083ccf9dc9f0aa57fa965056999 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Fri, 1 Aug 2014 02:11:37 +0200 Subject: [PATCH 01/12] Fix: debian package provided by dolibarr team use embedded libraries. --- build/debian/dolibarr.postinst | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/build/debian/dolibarr.postinst b/build/debian/dolibarr.postinst index f45ab7680c4..0f99f53203b 100644 --- a/build/debian/dolibarr.postinst +++ b/build/debian/dolibarr.postinst @@ -131,19 +131,19 @@ case "$1" in setup_empty_conf else # File already exist. We add params not found. - echo Add new params to overwrite path to use shared libraries/fonts - grep -q -c "dolibarr_lib_ADODB_PATH" $config || [ ! -d "/usr/share/php/adodb" ] || echo "" >> $config - grep -q -c "dolibarr_lib_FPDI_PATH" $config || [ ! -d "/usr/share/php/fpdi" ] || echo "" >> $config - #grep -q -c "dolibarr_lib_GEOIP_PATH" $config || echo "" >> $config - grep -q -c "dolibarr_lib_NUSOAP_PATH" $config || [ ! -d "/usr/share/php/nusoap" ] || echo "" >> $config - grep -q -c "dolibarr_lib_ODTPHP_PATHTOPCLZIP" $config || [ ! -d "/usr/share/php/libphp-pclzip" ] || echo "" >> $config - #grep -q -c "dolibarr_lib_PHPEXCEL_PATH" $config || echo "" >> $config - #grep -q -c "dolibarr_lib_TCPDF_PATH" $config || echo "" >> $config - grep -q -c "dolibarr_js_CKEDITOR" $config || [ ! -d "/usr/share/javascript/ckeditor" ] || echo "" >> $config - grep -q -c "dolibarr_js_JQUERY" $config || [ ! -d "/usr/share/javascript/jquery" ] || echo "" >> $config - grep -q -c "dolibarr_js_JQUERY_UI" $config || [ ! -d "/usr/share/javascript/jquery-ui" ] || echo "" >> $config - grep -q -c "dolibarr_js_JQUERY_FLOT" $config || [ ! -d "/usr/share/javascript/flot" ] || echo "" >> $config - grep -q -c "dolibarr_font_DOL_DEFAULT_TTF_BOLD" $config || echo "" >> $config + #echo Add new params to overwrite path to use shared libraries/fonts + #grep -q -c "dolibarr_lib_ADODB_PATH" $config || [ ! -d "/usr/share/php/adodb" ] || echo "" >> $config + #grep -q -c "dolibarr_lib_FPDI_PATH" $config || [ ! -d "/usr/share/php/fpdi" ] || echo "" >> $config + ##grep -q -c "dolibarr_lib_GEOIP_PATH" $config || echo "" >> $config + #grep -q -c "dolibarr_lib_NUSOAP_PATH" $config || [ ! -d "/usr/share/php/nusoap" ] || echo "" >> $config + #grep -q -c "dolibarr_lib_ODTPHP_PATHTOPCLZIP" $config || [ ! -d "/usr/share/php/libphp-pclzip" ] || echo "" >> $config + ##grep -q -c "dolibarr_lib_PHPEXCEL_PATH" $config || echo "" >> $config + ##grep -q -c "dolibarr_lib_TCPDF_PATH" $config || echo "" >> $config + #grep -q -c "dolibarr_js_CKEDITOR" $config || [ ! -d "/usr/share/javascript/ckeditor" ] || echo "" >> $config + #grep -q -c "dolibarr_js_JQUERY" $config || [ ! -d "/usr/share/javascript/jquery" ] || echo "" >> $config + #grep -q -c "dolibarr_js_JQUERY_UI" $config || [ ! -d "/usr/share/javascript/jquery-ui" ] || echo "" >> $config + #grep -q -c "dolibarr_js_JQUERY_FLOT" $config || [ ! -d "/usr/share/javascript/flot" ] || echo "" >> $config + #grep -q -c "dolibarr_font_DOL_DEFAULT_TTF_BOLD" $config || echo "" >> $config fi db_get dolibarr/reconfigure-webserver From 32e110b6d908e71e86b6b718e65538bb5767f4ef Mon Sep 17 00:00:00 2001 From: Juanjo Menent Date: Fri, 1 Aug 2014 13:25:29 +0200 Subject: [PATCH 02/12] Fix: Price by customer --- htdocs/contrat/fiche.php | 32 +++++++++++++++++------ htdocs/product/fiche.php | 55 +++++++++++++++++++++++++++++++++++++++- 2 files changed, 78 insertions(+), 9 deletions(-) diff --git a/htdocs/contrat/fiche.php b/htdocs/contrat/fiche.php index 4c842e25f55..7bcd7fcbc8d 100644 --- a/htdocs/contrat/fiche.php +++ b/htdocs/contrat/fiche.php @@ -3,9 +3,10 @@ * Copyright (C) 2004-2012 Laurent Destailleur * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2006 Andre Cianfarani - * Copyright (C) 2010-2013 Juanjo Menent + * Copyright (C) 2010-2014 Juanjo Menent * Copyright (C) 2013 Christophe Battarel * Copyright (C) 2013-2014 Florian Henry + * Copyright (C) 2014 Ferran Marcet * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -419,6 +420,10 @@ else if ($action == 'addline' && $user->rights->contrat->creer) $tva_tx = get_default_tva($mysoc,$object->thirdparty,$prod->id); $tva_npr = get_default_npr($mysoc,$object->thirdparty,$prod->id); + $pu_ht = $prod->price; + $pu_ttc = $prod->price_ttc; + $price_min = $prod->price_min; + $price_base_type = $prod->price_base_type; // On defini prix unitaire if ($conf->global->PRODUIT_MULTIPRICES && $object->thirdparty->price_level) @@ -428,13 +433,24 @@ else if ($action == 'addline' && $user->rights->contrat->creer) $price_min = $prod->multiprices_min[$object->thirdparty->price_level]; $price_base_type = $prod->multiprices_base_type[$object->thirdparty->price_level]; } - else - { - $pu_ht = $prod->price; - $pu_ttc = $prod->price_ttc; - $price_min = $prod->price_min; - $price_base_type = $prod->price_base_type; - } + elseif (! empty($conf->global->PRODUIT_CUSTOMER_PRICES)) + { + require_once DOL_DOCUMENT_ROOT . '/product/class/productcustomerprice.class.php'; + + $prodcustprice = new Productcustomerprice($db); + + $filter = array('t.fk_product' => $prod->id,'t.fk_soc' => $object->client->id); + + $result = $prodcustprice->fetch_all('', '', 0, 0, $filter); + if ($result) { + if (count($prodcustprice->lines) > 0) { + $pu_ht = price($prodcustprice->lines [0]->price); + $pu_ttc = price($prodcustprice->lines [0]->price_ttc); + $price_base_type = $prodcustprice->lines [0]->price_base_type; + $prod->tva_tx = $prodcustprice->lines [0]->tva_tx; + } + } + } // On reevalue prix selon taux tva car taux tva transaction peut etre different // de ceux du produit par defaut (par exemple si pays different entre vendeur et acheteur). diff --git a/htdocs/product/fiche.php b/htdocs/product/fiche.php index 07830cd793c..4132bfc58f3 100644 --- a/htdocs/product/fiche.php +++ b/htdocs/product/fiche.php @@ -5,11 +5,12 @@ * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2006 Andre Cianfarani * Copyright (C) 2006 Auguria SARL - * Copyright (C) 2010-2011 Juanjo Menent + * Copyright (C) 2010-2014 Juanjo Menent * Copyright (C) 2013 Marcos García * Copyright (C) 2013 Cédric Salvador * Copyright (C) 2011-2014 Alexandre Spangaro * Copyright (C) 2014 Cédric Gross + * Copyright (C) 2014 Ferran Marcet * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -513,6 +514,24 @@ if (empty($reshook)) $pu_ttc = $object->multiprices_ttc[$soc->price_level]; $price_base_type = $object->multiprices_base_type[$soc->price_level]; } + elseif (! empty($conf->global->PRODUIT_CUSTOMER_PRICES)) + { + require_once DOL_DOCUMENT_ROOT . '/product/class/productcustomerprice.class.php'; + + $prodcustprice = new Productcustomerprice($db); + + $filter = array('t.fk_product' => $object->id,'t.fk_soc' => $soc->id); + + $result = $prodcustprice->fetch_all('', '', 0, 0, $filter); + if ($result) { + if (count($prodcustprice->lines) > 0) { + $pu_ht = price($prodcustprice->lines [0]->price); + $pu_ttc = price($prodcustprice->lines [0]->price_ttc); + $price_base_type = $prodcustprice->lines [0]->price_base_type; + $prod->tva_tx = $prodcustprice->lines [0]->tva_tx; + } + } + } // On reevalue prix selon taux tva car taux tva transaction peut etre different // de ceux du produit par defaut (par exemple si pays different entre vendeur et acheteur). @@ -586,7 +605,24 @@ if (empty($reshook)) $pu_ttc = $object->multiprices_ttc[$soc->price_level]; $price_base_type = $object->multiprices_base_type[$soc->price_level]; } + elseif (! empty($conf->global->PRODUIT_CUSTOMER_PRICES)) + { + require_once DOL_DOCUMENT_ROOT . '/product/class/productcustomerprice.class.php'; + $prodcustprice = new Productcustomerprice($db); + + $filter = array('t.fk_product' => $object->id,'t.fk_soc' => $soc->id); + + $result = $prodcustprice->fetch_all('', '', 0, 0, $filter); + if ($result) { + if (count($prodcustprice->lines) > 0) { + $pu_ht = price($prodcustprice->lines [0]->price); + $pu_ttc = price($prodcustprice->lines [0]->price_ttc); + $price_base_type = $prodcustprice->lines [0]->price_base_type; + $prod->tva_tx = $prodcustprice->lines [0]->tva_tx; + } + } + } // On reevalue prix selon taux tva car taux tva transaction peut etre different // de ceux du produit par defaut (par exemple si pays different entre vendeur et acheteur). if ($tva_tx != $object->tva_tx) @@ -659,7 +695,24 @@ if (empty($reshook)) $pu_ttc = $object->multiprices_ttc[$soc->price_level]; $price_base_type = $object->multiprices_base_type[$soc->price_level]; } + elseif (! empty($conf->global->PRODUIT_CUSTOMER_PRICES)) + { + require_once DOL_DOCUMENT_ROOT . '/product/class/productcustomerprice.class.php'; + $prodcustprice = new Productcustomerprice($db); + + $filter = array('t.fk_product' => $object->id,'t.fk_soc' => $soc->id); + + $result = $prodcustprice->fetch_all('', '', 0, 0, $filter); + if ($result) { + if (count($prodcustprice->lines) > 0) { + $pu_ht = price($prodcustprice->lines [0]->price); + $pu_ttc = price($prodcustprice->lines [0]->price_ttc); + $price_base_type = $prodcustprice->lines [0]->price_base_type; + $prod->tva_tx = $prodcustprice->lines [0]->tva_tx; + } + } + } // On reevalue prix selon taux tva car taux tva transaction peut etre different // de ceux du produit par defaut (par exemple si pays different entre vendeur et acheteur). if ($tva_tx != $object->tva_tx) From 07cf09536d99e9200ac462130d2fdfdd5185b928 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Fri, 1 Aug 2014 14:48:48 +0200 Subject: [PATCH 03/12] Fix: delete bank account --- htdocs/compta/bank/bankid_fr.php | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/htdocs/compta/bank/bankid_fr.php b/htdocs/compta/bank/bankid_fr.php index 3c298e1c0b0..907792010ba 100644 --- a/htdocs/compta/bank/bankid_fr.php +++ b/htdocs/compta/bank/bankid_fr.php @@ -35,6 +35,7 @@ $langs->load("bills"); $action=GETPOST('action'); $id=GETPOST('id'); +$ref=GETPOST('ref'); // Security check if (isset($_GET["id"]) || isset($_GET["ref"])) @@ -88,8 +89,9 @@ if ($action == 'update' && ! $_POST["cancel"]) if ($action == 'confirm_delete' && $_POST["confirm"] == "yes" && $user->rights->banque->configurer) { // Modification - $account = new Account($db, $_GET["id"]); - $account->delete($_GET["id"]); + $account = new Account($db); + $account->fetch($id); + $account->delete(); header("Location: ".DOL_URL_ROOT."/compta/bank/index.php"); exit; From 41f846ac6ef5393004fc0c85183bc8861a54095e Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Fri, 1 Aug 2014 17:11:18 +0200 Subject: [PATCH 04/12] Fix: Bad param --- htdocs/public/members/new.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/public/members/new.php b/htdocs/public/members/new.php index 5728e1ae5f5..c8628bd26a0 100644 --- a/htdocs/public/members/new.php +++ b/htdocs/public/members/new.php @@ -251,7 +251,7 @@ if ($action == 'add') $extralabels=$extrafields->fetch_name_optionals_label($adh->table_element); $ret = $extrafields->setOptionalsFromPost($extralabels,$adh); - $result=$adh->create($user->id); + $result=$adh->create($user); if ($result > 0) { require_once DOL_DOCUMENT_ROOT.'/core/class/CMailFile.class.php'; From c15da5f2571991fd3ec5924986fd7e2719ec7d8d Mon Sep 17 00:00:00 2001 From: Juanjo Menent Date: Fri, 1 Aug 2014 18:22:39 +0200 Subject: [PATCH 05/12] Fix: Price by customer: a client must be able to have multiple products with customer prices --- htdocs/product/price.php | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/htdocs/product/price.php b/htdocs/product/price.php index 9268a3a59a4..db88599f52d 100644 --- a/htdocs/product/price.php +++ b/htdocs/product/price.php @@ -5,6 +5,7 @@ * Copyright (C) 2005-2013 Regis Houssin * Copyright (C) 2006 Andre Cianfarani * Copyright (C) 2014 Florian Henry + * Copyright (C) 2014 Juanjo Menent * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -820,7 +821,7 @@ if (! empty($conf->global->PRODUIT_CUSTOMER_PRICES)) { print ''; print '' . $langs->trans('ThirdParty') . ''; print ''; - print $form->select_company('', 'socid', 's.rowid NOT IN (SELECT fk_soc FROM ' . MAIN_DB_PREFIX . 'product_customer_price)', 1); + print $form->select_company('', 'socid', 's.rowid NOT IN (SELECT fk_soc FROM ' . MAIN_DB_PREFIX . 'product_customer_price WHERE fk_product='.$object->id.')', 1); print ''; print ''; From 6ff57e57c2a03cf67bb079738b22e916978b555f Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Sat, 2 Aug 2014 00:34:15 +0200 Subject: [PATCH 06/12] Fix: external link is visible when a module is using tabhelp of dictionary. --- htdocs/admin/dict.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/admin/dict.php b/htdocs/admin/dict.php index d834929d00f..b72dff643b5 100644 --- a/htdocs/admin/dict.php +++ b/htdocs/admin/dict.php @@ -780,7 +780,7 @@ if ($id) if ($valuetoshow != '') { print ''; - if (! empty($tabhelp[$id][$value]) && preg_match('/http:/i',$tabhelp[$id][$value])) print ''.$valuetoshow.''; + if (! empty($tabhelp[$id][$value]) && preg_match('/^http(s*):/i',$tabhelp[$id][$value])) print ''.$valuetoshow.' '.img_help(1,$valuetoshow).''; else if (! empty($tabhelp[$id][$value])) print $form->textwithpicto($valuetoshow,$tabhelp[$id][$value]); else print $valuetoshow; print ''; From 4c91788941df954a6f9562593cbcfadcef2a272e Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Sun, 3 Aug 2014 22:08:25 +0200 Subject: [PATCH 07/12] Fix: Can not set option when using in nojs mode. --- htdocs/admin/agenda_other.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/htdocs/admin/agenda_other.php b/htdocs/admin/agenda_other.php index 4a9c359f5c1..3748a46f802 100644 --- a/htdocs/admin/agenda_other.php +++ b/htdocs/admin/agenda_other.php @@ -110,11 +110,11 @@ if ($conf->use_javascript_ajax) } else { - if($conf->global->AGENDA_USE_EVENT_TYPE == 0) + if (empty($conf->global->AGENDA_USE_EVENT_TYPE)) { print ''.img_picto($langs->trans("Disabled"),'off').''; } - else if($conf->global->BUSINESS_VISIBLE_TO_ALL_BY_DEFAULT == 1) + else { print ''.img_picto($langs->trans("Enabled"),'on').''; } From 9fb11cd13b3453a64084042c627f834433c83e1a Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Sun, 3 Aug 2014 23:20:32 +0200 Subject: [PATCH 08/12] Fix: Action created by triggers does not saved owner of action. --- .../triggers/interface_50_modAgenda_ActionsAuto.class.php | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/htdocs/core/triggers/interface_50_modAgenda_ActionsAuto.class.php b/htdocs/core/triggers/interface_50_modAgenda_ActionsAuto.class.php index 6ab80b6ad88..8f884ee0f7b 100644 --- a/htdocs/core/triggers/interface_50_modAgenda_ActionsAuto.class.php +++ b/htdocs/core/triggers/interface_50_modAgenda_ActionsAuto.class.php @@ -380,7 +380,7 @@ class InterfaceActionsAuto $langs->load("other"); $langs->load("sendings"); $langs->load("agenda"); - + $object->actiontypecode='AC_OTH_AUTO'; if (empty($object->actionmsg2)) $object->actionmsg2=$langs->transnoentities("ShippingValidated",$object->ref); if (empty($object->actionmsg)) @@ -388,7 +388,7 @@ class InterfaceActionsAuto $object->actionmsg=$langs->transnoentities("ShippingValidated",$object->ref); $object->actionmsg.="\n".$langs->transnoentities("Author").': '.$user->login; } - + // Parameters $object->sendtoid defined by caller //$object->sendtoid=0; $ok=1; @@ -641,8 +641,8 @@ class InterfaceActionsAuto $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 + $actioncomm->usertodo = $user; // User action is assigned to (owner of action) + $actioncomm->userdone = $user; // User doing action (deprecated, not used anymore) $actioncomm->fk_element = $object->id; $actioncomm->elementtype = $object->element; From 51f1577c84506e4cdb6db2c0662b16b471a12f87 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Sun, 3 Aug 2014 23:32:36 +0200 Subject: [PATCH 09/12] Fix: Field for user into event is "owner". --- htdocs/comm/action/fiche.php | 26 +++++++++---------- .../install/mysql/tables/llx_actioncomm.sql | 4 +-- htdocs/langs/en_US/commercial.lang | 2 +- 3 files changed, 16 insertions(+), 16 deletions(-) diff --git a/htdocs/comm/action/fiche.php b/htdocs/comm/action/fiche.php index 520cb5d175a..d17b1acb4f0 100644 --- a/htdocs/comm/action/fiche.php +++ b/htdocs/comm/action/fiche.php @@ -518,18 +518,18 @@ if ($action == 'create') // Location print ''.$langs->trans("Location").''; + // Assigned to + $var=false; + print ''.$langs->trans("ActionAffectedTo").''; + $form->select_users(GETPOST("affectedto")?GETPOST("affectedto"):(! empty($object->usertodo->id) && $object->usertodo->id > 0 ? $object->usertodo->id : $user->id),'affectedto',1); + print ''; + print ''; print '

'; print ''; - // Assigned to - $var=false; - print ''; - // Busy print ''; - print '
'.$langs->trans("ActionAffectedTo").''; - $form->select_users(GETPOST("affectedto")?GETPOST("affectedto"):(! empty($object->usertodo->id) && $object->usertodo->id > 0 ? $object->usertodo->id : $user->id),'affectedto',1); - print '
'.$langs->trans("Busy").''; print 'transparency?' checked="checked"':'').'>'; @@ -772,15 +772,15 @@ if ($id > 0) // Location print '
'.$langs->trans("Location").'


'; - // Assigned to - print ''; + print '
'.$langs->trans("ActionAffectedTo").''; + print '
'.$langs->trans("ActionAffectedTo").''; print $form->select_dolusers($object->usertodo->id>0?$object->usertodo->id:-1,'affectedto',1); print '


'; + // Busy - print ''; @@ -947,15 +947,15 @@ if ($id > 0) // Location print ''; - print '
'.$langs->trans("Busy").''; + print '
'.$langs->trans("Busy").''; print 'transparency?' checked="checked"':'').'">'; print '
'.$langs->trans("Location").''.$object->location.'


'; - // Assigned to print ''; + print '
'.$langs->trans("ActionAffectedTo").''; if ($object->usertodo->id > 0) print $object->usertodo->getNomUrl(1); print '


'; + // Busy - print ''; diff --git a/htdocs/install/mysql/tables/llx_actioncomm.sql b/htdocs/install/mysql/tables/llx_actioncomm.sql index 1dce458fb72..c42cf377b85 100644 --- a/htdocs/install/mysql/tables/llx_actioncomm.sql +++ b/htdocs/install/mysql/tables/llx_actioncomm.sql @@ -45,9 +45,9 @@ create table llx_actioncomm fk_parent integer NOT NULL default 0, fk_user_action integer, -- user id of owner of action (currently also user id of actor that must do action. In future, actors assigned to action will be an array into table llx_actioncomm_resources) + transparency integer, -- transparency (ical standard). used to say if user assigned to event are busy or not by event (in future version, this field is deprecated and will be stored into table llx_actioncomm_resources) - transparency integer, -- transparency (ical standard). used to say if people assigned to event are busy or not by event (in future version, this field is deprecated and will be stored into table llx_actioncomm_resources) - fk_user_done integer, -- user id of people that has made action (deprecated) + fk_user_done integer, -- user id of user that has made action (deprecated) priority smallint, fulldayevent smallint NOT NULL default 0, diff --git a/htdocs/langs/en_US/commercial.lang b/htdocs/langs/en_US/commercial.lang index a863cf37b17..3f2f5a6a96a 100644 --- a/htdocs/langs/en_US/commercial.lang +++ b/htdocs/langs/en_US/commercial.lang @@ -62,7 +62,7 @@ LastProspectContactDone=Contact done DateActionPlanned=Date event planned for DateActionDone=Date event done ActionAskedBy=Event reported by -ActionAffectedTo=Event assigned to +ActionAffectedTo=Event owned by ActionDoneBy=Event done by ActionUserAsk=Reported by ErrorStatusCantBeZeroIfStarted=If field 'Date done' is filled, action is started (or finished), so field 'Status' can't be 0%%. From 8ea52f52f5e7702f51cebb3778c37725d280176f Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Sun, 3 Aug 2014 23:48:27 +0200 Subject: [PATCH 10/12] Fix: Missing counter into document tab --- htdocs/core/lib/agenda.lib.php | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/htdocs/core/lib/agenda.lib.php b/htdocs/core/lib/agenda.lib.php index 08aacfca14e..0c4abbf002e 100644 --- a/htdocs/core/lib/agenda.lib.php +++ b/htdocs/core/lib/agenda.lib.php @@ -428,10 +428,15 @@ function actions_prepare_head($object) $h++; } - $head[$h][0] = DOL_URL_ROOT.'/comm/action/document.php?id='.$object->id; - $head[$h][1] = $langs->trans('Documents'); - $head[$h][2] = 'documents'; - $h++; + // Attached files + require_once DOL_DOCUMENT_ROOT.'/core/lib/files.lib.php'; + $upload_dir = $conf->agenda->dir_output . "/" . $object->id; + $nbFiles = count(dol_dir_list($upload_dir,'files',0,'','(\.meta|_preview\.png)$')); + $head[$h][0] = DOL_URL_ROOT.'/comm/action/document.php?id='.$object->id; + $head[$h][1] = $langs->trans("Documents"); + if($nbFiles > 0) $head[$h][1].= ' ('.$nbFiles.')'; + $head[$h][2] = 'document'; + $h++; $head[$h][0] = DOL_URL_ROOT.'/comm/action/info.php?id='.$object->id; $head[$h][1] = $langs->trans('Info'); From b16dc8dbcd7703dbdb2d672d2665ba4006bbed93 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Sun, 3 Aug 2014 23:51:26 +0200 Subject: [PATCH 11/12] Fix: Tab not selected --- htdocs/core/lib/agenda.lib.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/core/lib/agenda.lib.php b/htdocs/core/lib/agenda.lib.php index 0c4abbf002e..e730a1ed45b 100644 --- a/htdocs/core/lib/agenda.lib.php +++ b/htdocs/core/lib/agenda.lib.php @@ -435,7 +435,7 @@ function actions_prepare_head($object) $head[$h][0] = DOL_URL_ROOT.'/comm/action/document.php?id='.$object->id; $head[$h][1] = $langs->trans("Documents"); if($nbFiles > 0) $head[$h][1].= ' ('.$nbFiles.')'; - $head[$h][2] = 'document'; + $head[$h][2] = 'documents'; $h++; $head[$h][0] = DOL_URL_ROOT.'/comm/action/info.php?id='.$object->id; From bf7a33494ef2e47a46291ff040b5544b4c2f267f Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Sun, 3 Aug 2014 23:55:33 +0200 Subject: [PATCH 12/12] Run request to clean data --- htdocs/install/mysql/migration/3.5.0-3.6.0.sql | 5 ++++- htdocs/install/mysql/migration/repair.sql | 4 ++++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/htdocs/install/mysql/migration/3.5.0-3.6.0.sql b/htdocs/install/mysql/migration/3.5.0-3.6.0.sql index 950263bfd12..91febed40d2 100644 --- a/htdocs/install/mysql/migration/3.5.0-3.6.0.sql +++ b/htdocs/install/mysql/migration/3.5.0-3.6.0.sql @@ -1677,4 +1677,7 @@ INSERT INTO llx_accountingaccount (rowid, fk_pcg_version, pcg_type, pcg_subtype, -- Fix: Missing instruction not correctly done into 3.5 -- VPGSQL8.2 ALTER TABLE llx_facture_fourn ALTER fk_mode_reglement DROP NOT NULL; -- VPGSQL8.2 ALTER TABLE llx_facture_fourn ALTER fk_cond_reglement DROP NOT NULL; - + +UPDATE llx_actioncomm set fk_user_action = fk_user_done where fk_user_done > 0 and (fk_user_action is null or fk_user_action = 0); + + diff --git a/htdocs/install/mysql/migration/repair.sql b/htdocs/install/mysql/migration/repair.sql index a172b83a99b..6c758e56332 100644 --- a/htdocs/install/mysql/migration/repair.sql +++ b/htdocs/install/mysql/migration/repair.sql @@ -150,3 +150,7 @@ drop table tmp_societe_double; UPDATE llx_projet_task SET fk_task_parent = 0 WHERE fk_task_parent = rowid + + +UPDATE llx_actioncomm set fk_user_action = fk_user_done where fk_user_done > 0 and (fk_user_action is null or fk_user_action = 0); +
'.$langs->trans("Busy").''; + print '
'.$langs->trans("Busy").''; if ($object->usertodo->id > 0) print yn(($object->transparency > 0)?1:0); // We show nothing if event is assigned to nobody print '