diff --git a/htdocs/comm/action/list.php b/htdocs/comm/action/list.php
index 8a578eec735..6e46aee2435 100644
--- a/htdocs/comm/action/list.php
+++ b/htdocs/comm/action/list.php
@@ -526,6 +526,7 @@ if ($resql)
require_once DOL_DOCUMENT_ROOT.'/comm/action/class/cactioncomm.class.php';
$caction=new CActionComm($db);
$arraylist=$caction->liste_array(1, 'code', '', (empty($conf->global->AGENDA_USE_EVENT_TYPE)?1:0), '', 1);
+ $contactListCache = array();
while ($i < min($num, $limit))
{
@@ -645,7 +646,34 @@ if ($resql)
// Contact
if (! empty($arrayfields['a.fk_contact']['checked'])) {
print '
';
- if ($obj->fk_contact > 0)
+
+
+ $actionstatic->fetchResources();
+ if(!empty($actionstatic->socpeopleassigned))
+ {
+ $contactList = array();
+ foreach ($actionstatic->socpeopleassigned as $socpeopleId => $socpeopleassigned)
+ {
+ if(!isset($contactListCache[$socpeopleassigned['id']]))
+ {
+ // if no cache found we fetch it
+ $contact = new Contact($db);
+ if($contact->fetch($socpeopleassigned['id'])>0)
+ {
+ $contactListCache[$socpeopleassigned['id']] = $contact->getNomUrl(1,'',28);
+ $contactList[] = $contact->getNomUrl(1,'',28);
+ }
+ }
+ else{
+ // use cache
+ $contactList[] = $contactListCache[$socpeopleassigned['id']];
+ }
+ }
+ if(!empty($contactList)){
+ print implode(', ', $contactList);
+ }
+ }
+ elseif ($obj->fk_contact > 0) //keep for retrocompatibility with faraway event
{
$contactstatic->id=$obj->fk_contact;
$contactstatic->email=$obj->email;
diff --git a/htdocs/comm/propal/class/propal.class.php b/htdocs/comm/propal/class/propal.class.php
index 0b9863f287b..0d3eacc56a4 100644
--- a/htdocs/comm/propal/class/propal.class.php
+++ b/htdocs/comm/propal/class/propal.class.php
@@ -1330,9 +1330,9 @@ class Propal extends CommonObject
// Hook of thirdparty module
if (is_object($hookmanager))
{
- $parameters=array('objFrom'=>$this,'clonedObj'=>$clonedObj);
+ $parameters=array('objFrom'=>$this,'clonedObj'=>$object);
$action='';
- $reshook=$hookmanager->executeHooks('createFrom', $parameters, $clonedObj, $action); // Note that $action and $object may have been modified by some hooks
+ $reshook=$hookmanager->executeHooks('createFrom', $parameters, $object, $action); // Note that $action and $object may have been modified by some hooks
if ($reshook < 0) $error++;
}
}
diff --git a/htdocs/compta/facture/prelevement.php b/htdocs/compta/facture/prelevement.php
index ccc3b305447..db022259e35 100644
--- a/htdocs/compta/facture/prelevement.php
+++ b/htdocs/compta/facture/prelevement.php
@@ -62,42 +62,52 @@ if ($id > 0 || ! empty($ref))
}
}
+$hookmanager->initHooks(array('directdebitcard','globalcard'));
+
+
/*
* Actions
*/
-if ($action == "new")
+$parameters = array('socid' => $socid);
+$reshook = $hookmanager->executeHooks('doActions', $parameters, $object, $action); // Note that $action and $object may have been modified by some hooks
+if ($reshook < 0) setEventMessages($hookmanager->error, $hookmanager->errors, 'errors');
+
+if (empty($reshook))
{
- if ($object->id > 0)
+ if ($action == "new")
{
- $db->begin();
-
- $result = $object->demande_prelevement($user, GETPOST('withdraw_request_amount'));
- if ($result > 0)
+ if ($object->id > 0)
{
- $db->commit();
+ $db->begin();
- setEventMessages($langs->trans("RecordSaved"), null, 'mesgs');
- }
- else
- {
- $db->rollback();
- setEventMessages($object->error, $object->errors, 'errors');
+ $result = $object->demande_prelevement($user, GETPOST('withdraw_request_amount'));
+ if ($result > 0)
+ {
+ $db->commit();
+
+ setEventMessages($langs->trans("RecordSaved"), null, 'mesgs');
+ }
+ else
+ {
+ $db->rollback();
+ setEventMessages($object->error, $object->errors, 'errors');
+ }
}
+ $action='';
}
- $action='';
-}
-if ($action == "delete")
-{
- if ($object->id > 0)
+ if ($action == "delete")
{
- $result = $object->demande_prelevement_delete($user, GETPOST('did'));
- if ($result == 0)
+ if ($object->id > 0)
{
- header("Location: ".$_SERVER['PHP_SELF']."?id=".$object->id);
- exit;
+ $result = $object->demande_prelevement_delete($user, GETPOST('did'));
+ if ($result == 0)
+ {
+ header("Location: ".$_SERVER['PHP_SELF']."?id=".$object->id);
+ exit;
+ }
}
}
}
diff --git a/htdocs/compta/prelevement/create.php b/htdocs/compta/prelevement/create.php
index d9298c9f607..d0c69fbe61b 100644
--- a/htdocs/compta/prelevement/create.php
+++ b/htdocs/compta/prelevement/create.php
@@ -52,42 +52,52 @@ $page = GETPOST("page", 'int');
if (empty($page) || $page == -1) { $page = 0; } // If $page is not defined, or '' or -1
$offset = $limit * $page;
+$hookmanager->initHooks(array('directdebitcreatecard','globalcard'));
+
+
/*
* Actions
*/
-// Change customer bank information to withdraw
-if ($action == 'modify')
-{
- for ($i = 1 ; $i < 9 ; $i++)
- {
- dolibarr_set_const($db, GETPOST("nom$i"), GETPOST("value$i"), 'chaine', 0, '', $conf->entity);
- }
-}
-if ($action == 'create')
-{
- // $conf->global->PRELEVEMENT_CODE_BANQUE and $conf->global->PRELEVEMENT_CODE_GUICHET should be empty
- $bprev = new BonPrelevement($db);
- $executiondate = dol_mktime(0, 0, 0, GETPOST('remonth'), (GETPOST('reday')+$conf->global->PRELEVEMENT_ADDDAYS), GETPOST('reyear'));
+$parameters = array('mode' => $mode, 'format' => $format, 'limit' => $limit, 'page' => $page, 'offset' => $offset);
+$reshook = $hookmanager->executeHooks('doActions', $parameters, $object, $action); // Note that $action and $object may have been modified by some hooks
+if ($reshook < 0) setEventMessages($hookmanager->error, $hookmanager->errors, 'errors');
- $result = $bprev->create($conf->global->PRELEVEMENT_CODE_BANQUE, $conf->global->PRELEVEMENT_CODE_GUICHET, $mode, $format, $executiondate);
- if ($result < 0)
+if (empty($reshook))
+{
+ // Change customer bank information to withdraw
+ if ($action == 'modify')
{
- setEventMessages($bprev->error, $bprev->errors, 'errors');
- }
- elseif ($result == 0)
- {
- $mesg=$langs->trans("NoInvoiceCouldBeWithdrawed", $format);
- setEventMessages($mesg, null, 'errors');
- $mesg.=' '."\n";
- foreach($bprev->invoice_in_error as $key => $val)
+ for ($i = 1 ; $i < 9 ; $i++)
{
- $mesg.=''.$val." \n";
+ dolibarr_set_const($db, GETPOST("nom$i"), GETPOST("value$i"), 'chaine', 0, '', $conf->entity);
}
}
- else
+ if ($action == 'create')
{
- setEventMessages($langs->trans("DirectDebitOrderCreated", $bprev->getNomUrl(1)), null);
+ // $conf->global->PRELEVEMENT_CODE_BANQUE and $conf->global->PRELEVEMENT_CODE_GUICHET should be empty
+ $bprev = new BonPrelevement($db);
+ $executiondate = dol_mktime(0, 0, 0, GETPOST('remonth'), (GETPOST('reday')+$conf->global->PRELEVEMENT_ADDDAYS), GETPOST('reyear'));
+
+ $result = $bprev->create($conf->global->PRELEVEMENT_CODE_BANQUE, $conf->global->PRELEVEMENT_CODE_GUICHET, $mode, $format, $executiondate);
+ if ($result < 0)
+ {
+ setEventMessages($bprev->error, $bprev->errors, 'errors');
+ }
+ elseif ($result == 0)
+ {
+ $mesg=$langs->trans("NoInvoiceCouldBeWithdrawed", $format);
+ setEventMessages($mesg, null, 'errors');
+ $mesg.=' '."\n";
+ foreach($bprev->invoice_in_error as $key => $val)
+ {
+ $mesg.=''.$val." \n";
+ }
+ }
+ else
+ {
+ setEventMessages($langs->trans("DirectDebitOrderCreated", $bprev->getNomUrl(1)), null);
+ }
}
}
diff --git a/htdocs/core/class/commonobject.class.php b/htdocs/core/class/commonobject.class.php
index f98acf48e7b..5d7304e7580 100644
--- a/htdocs/core/class/commonobject.class.php
+++ b/htdocs/core/class/commonobject.class.php
@@ -11,7 +11,7 @@
* Copyright (C) 2016 Bahfir abbes
* Copyright (C) 2017 ATM Consulting
* Copyright (C) 2017-2019 Nicolas ZABOURI
- * Copyright (C) 2017 Rui Strecht
+ * Copyright (C) 2017 Rui Strecht
* Copyright (C) 2018 Frédéric France
* Copyright (C) 2018 Josep Lluís Amador
*
@@ -53,6 +53,7 @@ abstract class CommonObject
/**
* @var string Error string
+ * @see $errors
*/
public $error;
diff --git a/htdocs/expedition/card.php b/htdocs/expedition/card.php
index 39a902ed979..fe3cb32470e 100644
--- a/htdocs/expedition/card.php
+++ b/htdocs/expedition/card.php
@@ -467,7 +467,8 @@ if (empty($reshook))
elseif ($action == 'confirm_delete' && $confirm == 'yes' && $user->rights->expedition->supprimer)
{
- $result = $object->delete();
+ $also_update_stock = (GETPOST('alsoUpdateStock', 'alpha') ? 1 : 0);
+ $result = $object->delete(0, $also_update_stock);
if ($result > 0)
{
header("Location: ".DOL_URL_ROOT.'/expedition/index.php');
@@ -1642,7 +1643,26 @@ elseif ($id || $ref)
// Confirm deleteion
if ($action == 'delete')
{
- $formconfirm=$form->formconfirm($_SERVER['PHP_SELF'].'?id='.$object->id, $langs->trans('DeleteSending'), $langs->trans("ConfirmDeleteSending", $object->ref), 'confirm_delete', '', 0, 1);
+ $formquestion = array();
+ if ($object->statut == Expedition::STATUS_CLOSED && !empty($conf->global->STOCK_CALCULATE_ON_SHIPMENT_CLOSE)) {
+ $formquestion = array(
+ array(
+ 'label' => $langs->trans('ShipmentIncrementStockOnDelete'),
+ 'name' => 'alsoUpdateStock',
+ 'type' => 'checkbox',
+ 'value' => 0
+ ),
+ );
+ }
+ $formconfirm=$form->formconfirm(
+ $_SERVER['PHP_SELF'].'?id='.$object->id,
+ $langs->trans('DeleteSending'),
+ $langs->trans("ConfirmDeleteSending", $object->ref),
+ 'confirm_delete',
+ $formquestion,
+ 0,
+ 1
+ );
}
// Confirmation validation
diff --git a/htdocs/expedition/class/expedition.class.php b/htdocs/expedition/class/expedition.class.php
index 4676d48073c..d79b6976630 100644
--- a/htdocs/expedition/class/expedition.class.php
+++ b/htdocs/expedition/class/expedition.class.php
@@ -1149,10 +1149,11 @@ class Expedition extends CommonObject
* Delete shipment.
* Warning, do not delete a shipment if a delivery is linked to (with table llx_element_element)
*
- * @param int $notrigger Disable triggers
- * @return int >0 if OK, 0 if deletion done but failed to delete files, <0 if KO
+ * @param int $notrigger Disable triggers
+ * @param bool $also_update_stock true if the stock should be increased back (false by default)
+ * @return int >0 if OK, 0 if deletion done but failed to delete files, <0 if KO
*/
- public function delete($notrigger = 0)
+ public function delete($notrigger = 0, $also_update_stock = false)
{
global $conf, $langs, $user;
@@ -1184,7 +1185,9 @@ class Expedition extends CommonObject
}
// Stock control
- if (! $error && $conf->stock->enabled && $conf->global->STOCK_CALCULATE_ON_SHIPMENT && $this->statut > self::STATUS_DRAFT)
+ if (! $error && $conf->stock->enabled &&
+ (($conf->global->STOCK_CALCULATE_ON_SHIPMENT && $this->statut > self::STATUS_DRAFT) ||
+ ($conf->global->STOCK_CALCULATE_ON_SHIPMENT_CLOSE && $this->statut == self::STATUS_CLOSED && $also_update_stock)))
{
require_once DOL_DOCUMENT_ROOT."/product/stock/class/mouvementstock.class.php";
diff --git a/htdocs/fourn/class/fournisseur.commande.class.php b/htdocs/fourn/class/fournisseur.commande.class.php
index bf0a3da62b3..1dddd3e7319 100644
--- a/htdocs/fourn/class/fournisseur.commande.class.php
+++ b/htdocs/fourn/class/fournisseur.commande.class.php
@@ -1538,7 +1538,7 @@ class CommandeFournisseur extends CommonOrder
$desc=trim($desc);
// Check parameters
- if ($qty < 1 && ! $fk_product)
+ if ($qty < 0 && ! $fk_product)
{
$this->error=$langs->trans("ErrorFieldRequired", $langs->transnoentitiesnoconv("Product"));
return -1;
diff --git a/htdocs/fourn/commande/dispatch.php b/htdocs/fourn/commande/dispatch.php
index dae11084fe1..48599a5bbf2 100644
--- a/htdocs/fourn/commande/dispatch.php
+++ b/htdocs/fourn/commande/dispatch.php
@@ -494,11 +494,35 @@ if ($id > 0 || ! empty($ref)) {
$sql = "SELECT l.rowid, l.fk_product, l.subprice, l.remise_percent, l.ref AS sref, SUM(l.qty) as qty,";
$sql .= " p.ref, p.label, p.tobatch, p.fk_default_warehouse";
+
+ // Enable hooks to alter the SQL query (SELECT)
+ $parameters = array();
+ $reshook = $hookmanager->executeHooks(
+ 'printFieldListSelect',
+ $parameters,
+ $object,
+ $action
+ );
+ if ($reshook < 0) setEventMessages($hookmanager->error, $hookmanager->errors, 'errors');
+ $sql .= $hookmanager->resPrint;
+
$sql .= " FROM " . MAIN_DB_PREFIX . "commande_fournisseurdet as l";
$sql .= " LEFT JOIN " . MAIN_DB_PREFIX . "product as p ON l.fk_product=p.rowid";
$sql .= " WHERE l.fk_commande = " . $object->id;
if (empty($conf->global->STOCK_SUPPORTS_SERVICES))
$sql .= " AND l.product_type = 0";
+
+ // Enable hooks to alter the SQL query (WHERE)
+ $parameters = array();
+ $reshook = $hookmanager->executeHooks(
+ 'printFieldListWhere',
+ $parameters,
+ $object,
+ $action
+ );
+ if ($reshook < 0) setEventMessages($hookmanager->error, $hookmanager->errors, 'errors');
+ $sql .= $hookmanager->resPrint;
+
$sql .= " GROUP BY p.ref, p.label, p.tobatch, l.rowid, l.fk_product, l.subprice, l.remise_percent, p.fk_default_warehouse"; // Calculation of amount dispatched is done per fk_product so we must group by fk_product
$sql .= " ORDER BY p.ref, p.label";
@@ -528,7 +552,19 @@ if ($id > 0 || ! empty($ref)) {
print '' . $langs->trans("QtyDispatchedShort") . ' | ';
print '' . $langs->trans("QtyToDispatchShort") . ' | ';
print ' | ';
- print '' . $langs->trans("Warehouse") . ' | ';
+ print '' . $langs->trans("Warehouse") . ' | ';
+
+ // Enable hooks to append additional columns
+ $parameters = array();
+ $reshook = $hookmanager->executeHooks(
+ 'printFieldListTitle',
+ $parameters,
+ $object,
+ $action
+ );
+ if ($reshook < 0) setEventMessages($hookmanager->error, $hookmanager->errors, 'errors');
+ print $hookmanager->resPrint;
+
print "\n";
}
@@ -611,6 +647,23 @@ if ($id > 0 || ! empty($ref)) {
//print img_picto($langs->trans('AddDispatchBatchLine'), 'split.png', 'onClick="addDispatchLine(' . $i . ',\'' . $type . '\')"');
print ' | '; // Dispatch column
print ' | '; // Warehouse column
+
+ // Enable hooks to append additional columns
+ $parameters = array(
+ 'is_information_row' => true, // allows hook to distinguish between the
+ // rows with information and the rows with
+ // dispatch form input
+ 'objp' => $objp
+ );
+ $reshook = $hookmanager->executeHooks(
+ 'printFieldListValue',
+ $parameters,
+ $object,
+ $action
+ );
+ if ($reshook < 0) setEventMessages($hookmanager->error, $hookmanager->errors, 'errors');
+ print $hookmanager->resPrint;
+
print '';
print '';
@@ -651,6 +704,23 @@ if ($id > 0 || ! empty($ref)) {
//print img_picto($langs->trans('AddStockLocationLine'), 'split.png', 'onClick="addDispatchLine(' . $i . ',\'' . $type . '\')"');
print ''; // Dispatch column
print ' | '; // Warehouse column
+
+ // Enable hooks to append additional columns
+ $parameters = array(
+ 'is_information_row' => true, // allows hook to distinguish between the
+ // rows with information and the rows with
+ // dispatch form input
+ 'objp' => $objp
+ );
+ $reshook = $hookmanager->executeHooks(
+ 'printFieldListValue',
+ $parameters,
+ $object,
+ $action
+ );
+ if ($reshook < 0) setEventMessages($hookmanager->error, $hookmanager->errors, 'errors');
+ print $hookmanager->resPrint;
+
print '
';
print '';
@@ -702,6 +772,19 @@ if ($id > 0 || ! empty($ref)) {
}
print "\n";
+ // Enable hooks to append additional columns
+ $parameters = array(
+ 'is_information_row' => false // this is a dispatch form row
+ );
+ $reshook = $hookmanager->executeHooks(
+ 'printFieldListValue',
+ $parameters,
+ $object,
+ $action
+ );
+ if ($reshook < 0) setEventMessages($hookmanager->error, $hookmanager->errors, 'errors');
+ print $hookmanager->resPrint;
+
print "
\n";
}
}
diff --git a/htdocs/fourn/product/list.php b/htdocs/fourn/product/list.php
index 7b319490815..7311f0d20ff 100644
--- a/htdocs/fourn/product/list.php
+++ b/htdocs/fourn/product/list.php
@@ -75,6 +75,7 @@ if (GETPOST('cancel', 'alpha')) { $action='list'; $massaction=''; }
if (! GETPOST('confirmmassaction', 'alpha') && $massaction != 'presend' && $massaction != 'confirm_presend') { $massaction=''; }
$parameters=array();
+
$reshook=$hookmanager->executeHooks('doActions', $parameters, $object, $action); // Note that $action and $object may have been modified by some hooks
if ($reshook < 0) setEventMessages($hookmanager->error, $hookmanager->errors, 'errors');
@@ -129,6 +130,11 @@ $massactionbutton=$form->selectMassAction('', $arrayofmassactions);
$sql = "SELECT p.rowid, p.label, p.ref, p.fk_product_type, p.entity,";
$sql.= " ppf.fk_soc, ppf.ref_fourn, ppf.price as price, ppf.quantity as qty, ppf.unitprice,";
$sql.= " s.rowid as socid, s.nom as name";
+// Add fields to SELECT from hooks
+$parameters = array();
+$reshook = $hookmanager->executeHooks('printFieldListSelect', $parameters, $object, $action);
+if ($reshook < 0) setEventMessages($hookmanager->error, $hookmanager->errors, 'errors');
+$sql .= $hookmanager->resPrint;
$sql.= " FROM ".MAIN_DB_PREFIX."product as p";
if ($catid) $sql.= " LEFT JOIN ".MAIN_DB_PREFIX."categorie_product as cp ON cp.fk_product = p.rowid";
$sql.= " LEFT JOIN ".MAIN_DB_PREFIX."product_fournisseur_price as ppf ON p.rowid = ppf.fk_product";
@@ -159,6 +165,12 @@ if ($fourn_id > 0)
$sql .= " AND ppf.fk_soc = ".$fourn_id;
}
+// Add WHERE filters from hooks
+$parameters = array();
+$reshook = $hookmanager->executeHooks('printFieldListWhere', $parameters);
+if ($reshook < 0) setEventMessages($hookmanager->error, $hookmanager->errors, 'errors');
+$sql .= $hookmanager->resPrint;
+
$sql .= $db->order($sortfield, $sortorder);
// Count total nb of records without orderby and limit
@@ -243,6 +255,11 @@ if ($resql)
print ' | ';
print ' | ';
print ' | ';
+ // add filters from hooks
+ $parameters = array();
+ $reshook = $hookmanager->executeHooks('printFieldPreListTitle', $parameters, $object, $action);
+ if ($reshook < 0) setEventMessages($hookmanager->error, $hookmanager->errors, 'errors');
+ print $hookmanager->resPrint;
print '';
$searchpicto=$form->showFilterButtons();
print $searchpicto;
@@ -258,6 +275,11 @@ if ($resql)
print_liste_field_titre("BuyingPrice", $_SERVER["PHP_SELF"], "ppf.price", $param, "", '', $sortfield, $sortorder, 'right ');
print_liste_field_titre("QtyMin", $_SERVER["PHP_SELF"], "ppf.quantity", $param, "", '', $sortfield, $sortorder, 'right ');
print_liste_field_titre("UnitPrice", $_SERVER["PHP_SELF"], "ppf.unitprice", $param, "", '', $sortfield, $sortorder, 'right ');
+ // add header cells from hooks
+ $parameters = array();
+ $reshook = $hookmanager->executeHooks('printFieldListTitle', $parameters, $object, $action);
+ if ($reshook < 0) setEventMessages($hookmanager->error, $hookmanager->errors, 'errors');
+ print $hookmanager->resPrint;
print_liste_field_titre('', $_SERVER["PHP_SELF"]);
print "\n";
@@ -293,6 +315,12 @@ if ($resql)
print ' | '.(isset($objp->unitprice) ? price($objp->unitprice) : '').' | ';
+ // add additional columns from hooks
+ $parameters = array();
+ $reshook = $hookmanager->executeHooks('printFieldListValue', $parameters, $objp, $action);
+ if ($reshook < 0) setEventMessages($hookmanager->error, $hookmanager->errors, 'errors');
+ print $hookmanager->resPrint;
+
print ' | ';
print "\n";
diff --git a/htdocs/langs/fr_FR/sendings.lang b/htdocs/langs/fr_FR/sendings.lang
index 1071d5f23f9..4f4bfc514e2 100644
--- a/htdocs/langs/fr_FR/sendings.lang
+++ b/htdocs/langs/fr_FR/sendings.lang
@@ -60,6 +60,8 @@ NoProductToShipFoundIntoStock=Aucun produit à expédier n'a été trouver dans
WeightVolShort=Poids/vol.
ValidateOrderFirstBeforeShipment=Vous devez d'abord valider la commande pour pouvoir créer une expédition.
+ShipmentIncrementStockOnDelete=Remettre en stock les éléments de cette expédition
+
# Sending methods
# ModelDocument
DocumentModelTyphon=Modèle de bon de réception/livraison complet (logo…)
diff --git a/htdocs/opensurvey/index.php b/htdocs/opensurvey/index.php
index 413572ca4f6..bec5723c5d2 100644
--- a/htdocs/opensurvey/index.php
+++ b/htdocs/opensurvey/index.php
@@ -25,20 +25,21 @@ require '../main.inc.php';
require_once DOL_DOCUMENT_ROOT."/core/lib/admin.lib.php";
require_once DOL_DOCUMENT_ROOT."/core/lib/files.lib.php";
+// Load translation files required by the page
+$langs->load("opensurvey");
+
// Security check
if (!$user->rights->opensurvey->read) accessforbidden();
+
/*
* View
*/
- // Load translation files required by the page
-$langs->load("opensurvey");
-
-llxHeader();
-
$nbsondages=0;
-$sql='SELECT COUNT(*) as nb FROM '.MAIN_DB_PREFIX.'opensurvey_sondage';
+$sql = 'SELECT COUNT(*) as nb';
+$sql.= ' FROM '.MAIN_DB_PREFIX.'opensurvey_sondage';
+$sql.= ' WHERE entity IN ('.getEntity('survey').')';
$resql=$db->query($sql);
if ($resql)
{
@@ -47,27 +48,16 @@ if ($resql)
}
else dol_print_error($db, '');
-
+llxHeader();
print load_fiche_titre($langs->trans("OpenSurveyArea"));
print '';
-
-$nbsondages=0;
-$sql='SELECT COUNT(*) as nb FROM '.MAIN_DB_PREFIX.'opensurvey_sondage';
-$resql=$db->query($sql);
-if ($resql)
-{
- $obj=$db->fetch_object($resql);
- $nbsondages=$obj->nb;
-}
-else dol_print_error($db, '');
-
print '
';
print '| '.$langs->trans("OpenSurveyArea").' |
';
-print "";
+print '
';
print '| '.$langs->trans("NbOfSurveys").' | '.$nbsondages.' | ';
print "
";
//print '| '.$langs->trans("Total").' | ';
@@ -76,7 +66,7 @@ print " |
";
print '
';
-print '
';
+print '';
// End of page
llxFooter();
diff --git a/htdocs/societe/card.php b/htdocs/societe/card.php
index d7034017691..d0f0bdeb1b8 100644
--- a/htdocs/societe/card.php
+++ b/htdocs/societe/card.php
@@ -958,12 +958,13 @@ else
if (empty($duplicate_code_error)) {
$object->code_client = GETPOST('customer_code', 'alpha');
$object->fournisseur = GETPOST('fournisseur')?GETPOST('fournisseur'):$object->fournisseur;
+ $object->code_fournisseur = GETPOST('supplier_code', 'alpha');
}
else {
setEventMessages($langs->trans('NewCustomerSupplierCodeProposed'), '', 'warnings');
}
- $object->code_fournisseur = GETPOST('supplier_code', 'alpha');
+
$object->address = GETPOST('address', 'alpha');
$object->zip = GETPOST('zipcode', 'alpha');
$object->town = GETPOST('town', 'alpha');
diff --git a/htdocs/ticket/index.php b/htdocs/ticket/index.php
index e7f7c6bff2f..fe30c47b4db 100644
--- a/htdocs/ticket/index.php
+++ b/htdocs/ticket/index.php
@@ -129,6 +129,7 @@ if (!$user->rights->societe->client->voir && !$socid) {
}
$sql .= ' WHERE t.entity IN (' . getEntity('ticket') . ')';
$sql .= dolSqlDateFilter('datec', 0, 0, $endyear);
+
if (!$user->rights->societe->client->voir && !$socid) {
$sql .= " AND t.fk_soc = sc.fk_soc AND sc.fk_user = " . $user->id;
}
@@ -275,7 +276,7 @@ if (!$user->rights->societe->client->voir && !$socid) {
$sql .= ", " . MAIN_DB_PREFIX . "societe_commerciaux as sc";
}
-$sql .= ' WHERE t.entity IN (' . getEntity('ticket', 1) . ')';
+$sql .= ' WHERE t.entity IN (' . getEntity('ticket') . ')';
$sql .= " AND t.fk_statut=0";
if (!$user->rights->societe->client->voir && !$socid) {
$sql .= " AND t.fk_soc = sc.fk_soc AND sc.fk_user = " . $user->id;
diff --git a/htdocs/ticket/list.php b/htdocs/ticket/list.php
index d6128037a5c..91eeceb54e4 100644
--- a/htdocs/ticket/list.php
+++ b/htdocs/ticket/list.php
@@ -209,10 +209,7 @@ $sql=preg_replace('/, $/', '', $sql);
$sql.= " FROM ".MAIN_DB_PREFIX.$object->table_element." as t";
if (is_array($extrafields->attributes[$object->table_element]['label']) && count($extrafields->attributes[$object->table_element]['label'])) $sql.= " LEFT JOIN ".MAIN_DB_PREFIX.$object->table_element."_extrafields as ef on (t.rowid = ef.fk_object)";
$sql.= " LEFT JOIN ".MAIN_DB_PREFIX."societe as s ON (t.fk_soc = s.rowid)";
-if ($object->ismultientitymanaged == 1) $sql.= " WHERE t.entity IN (".getEntity($object->element).")";
-else $sql.=" WHERE 1 = 1";
-
-
+$sql.= " WHERE t.entity IN (".getEntity($object->element).")";
foreach($search as $key => $val)
{
if ($key == 'fk_statut')