Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop
This commit is contained in:
commit
af44af0235
@ -3,6 +3,7 @@
|
|||||||
* Copyright (C) 2004-2015 Laurent Destailleur <eldy@users.sourceforge.net>
|
* Copyright (C) 2004-2015 Laurent Destailleur <eldy@users.sourceforge.net>
|
||||||
* Copyright (C) 2005-2009 Regis Houssin <regis.houssin@capnetworks.com>
|
* Copyright (C) 2005-2009 Regis Houssin <regis.houssin@capnetworks.com>
|
||||||
* Copyright (C) 2015 Frederic France <frederic.france@free.fr>
|
* Copyright (C) 2015 Frederic France <frederic.france@free.fr>
|
||||||
|
* Copyright (C) 2018 Josep Lluís Amador <joseplluis@lliuretic.cat>
|
||||||
*
|
*
|
||||||
* This program is free software; you can redistribute it and/or modify
|
* 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
|
* it under the terms of the GNU General Public License as published by
|
||||||
@ -20,7 +21,7 @@
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* \file htdocs/core/boxes/box_contacts.php
|
* \file htdocs/core/boxes/box_contacts.php
|
||||||
* \ingroup societes
|
* \ingroup contacts
|
||||||
* \brief Module to show box of contacts
|
* \brief Module to show box of contacts
|
||||||
*/
|
*/
|
||||||
|
|
||||||
@ -57,7 +58,7 @@ class box_contacts extends ModeleBoxes
|
|||||||
|
|
||||||
$this->db=$db;
|
$this->db=$db;
|
||||||
|
|
||||||
$this->hidden=! ($user->rights->societe->lire);
|
$this->hidden=! ($user->rights->societe->lire && $user->rights->societe->contact->lire);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -75,12 +76,12 @@ class box_contacts extends ModeleBoxes
|
|||||||
|
|
||||||
$this->info_box_head = array('text' => $langs->trans("BoxTitleLastModifiedContacts",$max));
|
$this->info_box_head = array('text' => $langs->trans("BoxTitleLastModifiedContacts",$max));
|
||||||
|
|
||||||
if ($user->rights->societe->lire)
|
if ($user->rights->societe->lire && $user->rights->societe->contact->lire)
|
||||||
{
|
{
|
||||||
$sql = "SELECT sp.rowid as id, sp.lastname, sp.firstname, sp.civility as civility_id, sp.datec, sp.tms, sp.fk_soc, sp.statut as status";
|
$sql = "SELECT sp.rowid as id, sp.lastname, sp.firstname, sp.civility as civility_id, sp.datec, sp.tms, sp.fk_soc, sp.statut as status";
|
||||||
$sql.= ", sp.address, sp.zip, sp.town, sp.phone, sp.phone_perso, sp.phone_mobile";
|
$sql.= ", sp.address, sp.zip, sp.town, sp.phone, sp.phone_perso, sp.phone_mobile";
|
||||||
$sql.= ", s.nom as socname, s.name_alias";
|
$sql.= ", s.nom as socname, s.name_alias";
|
||||||
$sql.= ", s.client, s.fournisseur, s.code_client, s.code_fournisseur";
|
$sql.= ", s.client, s.fournisseur, s.code_client, s.code_fournisseur";
|
||||||
$sql.= " FROM ".MAIN_DB_PREFIX."socpeople as sp";
|
$sql.= " FROM ".MAIN_DB_PREFIX."socpeople as sp";
|
||||||
$sql.= " LEFT JOIN ".MAIN_DB_PREFIX."societe as s ON sp.fk_soc = s.rowid";
|
$sql.= " LEFT JOIN ".MAIN_DB_PREFIX."societe as s ON sp.fk_soc = s.rowid";
|
||||||
if (! $user->rights->societe->client->voir && ! $user->societe_id) $sql.= ", ".MAIN_DB_PREFIX."societe_commerciaux as sc";
|
if (! $user->rights->societe->client->voir && ! $user->societe_id) $sql.= ", ".MAIN_DB_PREFIX."societe_commerciaux as sc";
|
||||||
@ -91,98 +92,97 @@ class box_contacts extends ModeleBoxes
|
|||||||
$sql.= $db->plimit($max, 0);
|
$sql.= $db->plimit($max, 0);
|
||||||
|
|
||||||
$result = $db->query($sql);
|
$result = $db->query($sql);
|
||||||
if ($result) {
|
if ($result) {
|
||||||
$num = $db->num_rows($result);
|
$num = $db->num_rows($result);
|
||||||
|
|
||||||
$contactstatic=new Contact($db);
|
$contactstatic=new Contact($db);
|
||||||
$societestatic=new Societe($db);
|
$societestatic=new Societe($db);
|
||||||
|
|
||||||
$line = 0;
|
$line = 0;
|
||||||
while ($line < $num)
|
while ($line < $num)
|
||||||
{
|
{
|
||||||
$objp = $db->fetch_object($result);
|
$objp = $db->fetch_object($result);
|
||||||
$datec=$db->jdate($objp->datec);
|
$datec=$db->jdate($objp->datec);
|
||||||
$datem=$db->jdate($objp->tms);
|
$datem=$db->jdate($objp->tms);
|
||||||
|
|
||||||
$contactstatic->id=$objp->id;
|
$contactstatic->id=$objp->id;
|
||||||
$contactstatic->lastname=$objp->lastname;
|
$contactstatic->lastname=$objp->lastname;
|
||||||
$contactstatic->firstname=$objp->firstname;
|
$contactstatic->firstname=$objp->firstname;
|
||||||
$contactstatic->civility_id=$objp->civility_id;
|
$contactstatic->civility_id=$objp->civility_id;
|
||||||
$contactstatic->statut=$objp->status;
|
$contactstatic->statut=$objp->status;
|
||||||
$contactstatic->phone_pro = $objp->phone;
|
$contactstatic->phone_pro = $objp->phone;
|
||||||
$contactstatic->phone_perso = $objp->phone_perso;
|
$contactstatic->phone_perso = $objp->phone_perso;
|
||||||
$contactstatic->phone_mobile = $objp->phone_mobile;
|
$contactstatic->phone_mobile = $objp->phone_mobile;
|
||||||
$contactstatic->address = $objp->address;
|
$contactstatic->address = $objp->address;
|
||||||
$contactstatic->zip = $objp->zip;
|
$contactstatic->zip = $objp->zip;
|
||||||
$contactstatic->town = $objp->town;
|
$contactstatic->town = $objp->town;
|
||||||
|
|
||||||
$societestatic->id = $objp->fk_soc;
|
$societestatic->id = $objp->fk_soc;
|
||||||
$societestatic->name = $objp->socname;
|
$societestatic->name = $objp->socname;
|
||||||
$societestatic->name_alias = $objp->name_alias;
|
$societestatic->name_alias = $objp->name_alias;
|
||||||
$societestatic->code_client = $objp->code_client;
|
$societestatic->code_client = $objp->code_client;
|
||||||
$societestatic->code_fournisseur = $objp->code_fournisseur;
|
$societestatic->code_fournisseur = $objp->code_fournisseur;
|
||||||
$societestatic->client = $objp->client;
|
$societestatic->client = $objp->client;
|
||||||
$societestatic->fournisseur = $objp->fournisseur;
|
$societestatic->fournisseur = $objp->fournisseur;
|
||||||
|
|
||||||
$this->info_box_contents[$line][] = array(
|
$this->info_box_contents[$line][] = array(
|
||||||
'td' => '',
|
'td' => '',
|
||||||
'text' => $contactstatic->getNomUrl(1),
|
'text' => $contactstatic->getNomUrl(1),
|
||||||
'asis' => 1,
|
'asis' => 1,
|
||||||
);
|
);
|
||||||
|
|
||||||
$this->info_box_contents[$line][] = array(
|
$this->info_box_contents[$line][] = array(
|
||||||
'td' => '',
|
'td' => '',
|
||||||
'text' => ($objp->fk_soc > 0 ? $societestatic->getNomUrl(1) : ''),
|
'text' => ($objp->fk_soc > 0 ? $societestatic->getNomUrl(1) : ''),
|
||||||
'asis' => 1,
|
'asis' => 1,
|
||||||
);
|
);
|
||||||
|
|
||||||
$this->info_box_contents[$line][] = array(
|
$this->info_box_contents[$line][] = array(
|
||||||
'td' => 'class="right"',
|
'td' => 'class="right"',
|
||||||
'text' => dol_print_date($datem, "day"),
|
'text' => dol_print_date($datem, "day"),
|
||||||
);
|
);
|
||||||
|
|
||||||
$this->info_box_contents[$line][] = array(
|
$this->info_box_contents[$line][] = array(
|
||||||
'td' => 'align="right" class="nowrap" width="18"',
|
'td' => 'align="right" class="nowrap" width="18"',
|
||||||
'text' => $contactstatic->getLibStatut(3),
|
'text' => $contactstatic->getLibStatut(3),
|
||||||
'asis'=>1,
|
'asis'=>1,
|
||||||
);
|
);
|
||||||
|
|
||||||
$line++;
|
$line++;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($num==0)
|
if ($num==0)
|
||||||
$this->info_box_contents[$line][0] = array(
|
$this->info_box_contents[$line][0] = array(
|
||||||
'td' => 'align="center"',
|
'td' => 'align="center"',
|
||||||
'text'=>$langs->trans("NoRecordedContacts"),
|
'text'=>$langs->trans("NoRecordedContacts"),
|
||||||
);
|
);
|
||||||
|
|
||||||
$db->free($result);
|
$db->free($result);
|
||||||
} else {
|
} else {
|
||||||
$this->info_box_contents[0][0] = array(
|
$this->info_box_contents[0][0] = array(
|
||||||
'td' => '',
|
'td' => '',
|
||||||
'maxlength'=>500,
|
'maxlength'=>500,
|
||||||
'text' => ($db->error().' sql='.$sql),
|
'text' => ($db->error().' sql='.$sql),
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
$this->info_box_contents[0][0] = array(
|
$this->info_box_contents[0][0] = array(
|
||||||
'td' => 'align="left" class="nohover opacitymedium"',
|
'td' => 'align="left" class="nohover opacitymedium"',
|
||||||
'text' => $langs->trans("ReadPermissionNotAllowed")
|
'text' => $langs->trans("ReadPermissionNotAllowed")
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Method to show box
|
* Method to show box
|
||||||
*
|
*
|
||||||
* @param array $head Array with properties of box title
|
* @param array $head Array with properties of box title
|
||||||
* @param array $contents Array with properties of box lines
|
* @param array $contents Array with properties of box lines
|
||||||
* @param int $nooutput No print, only return string
|
* @param int $nooutput No print, only return string
|
||||||
* @return string
|
* @return string
|
||||||
*/
|
*/
|
||||||
function showBox($head = null, $contents = null, $nooutput=0)
|
function showBox($head = null, $contents = null, $nooutput=0)
|
||||||
{
|
{
|
||||||
return parent::showBox($this->info_box_head, $this->info_box_contents, $nooutput);
|
return parent::showBox($this->info_box_head, $this->info_box_contents, $nooutput);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -46,11 +46,9 @@ class pdf_sepamandate extends ModeleBankAccountDoc
|
|||||||
function __construct($db)
|
function __construct($db)
|
||||||
{
|
{
|
||||||
global $conf,$langs,$mysoc;
|
global $conf,$langs,$mysoc;
|
||||||
|
|
||||||
$langs->load("main");
|
// Translations
|
||||||
$langs->load("bank");
|
$langs->loadLangs(array("main", "bank", "withdrawals", "companies"));
|
||||||
$langs->load("withdrawals");
|
|
||||||
$langs->load("companies");
|
|
||||||
|
|
||||||
$this->db = $db;
|
$this->db = $db;
|
||||||
$this->name = "sepamandate";
|
$this->name = "sepamandate";
|
||||||
@ -104,13 +102,9 @@ class pdf_sepamandate extends ModeleBankAccountDoc
|
|||||||
if (! is_object($outputlangs)) $outputlangs=$langs;
|
if (! is_object($outputlangs)) $outputlangs=$langs;
|
||||||
// For backward compatibility with FPDF, force output charset to ISO, because FPDF expect text to be encoded in ISO
|
// For backward compatibility with FPDF, force output charset to ISO, because FPDF expect text to be encoded in ISO
|
||||||
if (! empty($conf->global->MAIN_USE_FPDF)) $outputlangs->charset_output='ISO-8859-1';
|
if (! empty($conf->global->MAIN_USE_FPDF)) $outputlangs->charset_output='ISO-8859-1';
|
||||||
|
|
||||||
$outputlangs->load("main");
|
// Translations
|
||||||
$outputlangs->load("dict");
|
$outputlangs->loadLangs(array("main", "dict", "withdrawals", "companies", "projects", "bills"));
|
||||||
$outputlangs->load("companies");
|
|
||||||
$outputlangs->load("projects");
|
|
||||||
$outputlangs->load("withdrawals");
|
|
||||||
$outputlangs->load("bills");
|
|
||||||
|
|
||||||
if (! empty($conf->bank->dir_output))
|
if (! empty($conf->bank->dir_output))
|
||||||
{
|
{
|
||||||
|
|||||||
@ -320,7 +320,7 @@ class modProduct extends DolibarrModules
|
|||||||
'sp.unitprice'=>'50',
|
'sp.unitprice'=>'50',
|
||||||
'sp.remise_percent'=>'0'
|
'sp.remise_percent'=>'0'
|
||||||
);
|
);
|
||||||
$this->import_updatekeys_array[$r]=array('sp.fk_product'=>'ProductOrService','sp.ref_fourn'=>'SupplierRef');
|
$this->import_updatekeys_array[$r]=array('sp.fk_product'=>'ProductOrService','sp.ref_fourn'=>'SupplierRef','sp.fk_soc'=>'Supplier');
|
||||||
}
|
}
|
||||||
|
|
||||||
if (! empty($conf->global->PRODUIT_MULTIPRICES))
|
if (! empty($conf->global->PRODUIT_MULTIPRICES))
|
||||||
|
|||||||
@ -222,4 +222,6 @@ NoAssignedTasks=No assigned tasks (assign project/tasks the current user from th
|
|||||||
# Comments trans
|
# Comments trans
|
||||||
AllowCommentOnTask=Allow user comments on tasks
|
AllowCommentOnTask=Allow user comments on tasks
|
||||||
AllowCommentOnProject=Allow user comments on projects
|
AllowCommentOnProject=Allow user comments on projects
|
||||||
|
DontHavePermissionForCloseProject=You do not have permissions to close the project %s
|
||||||
|
DontHaveTheValidateStatus=The project %s must be open to be closed
|
||||||
|
RecordsClosed=%s project(s) closed
|
||||||
|
|||||||
@ -272,7 +272,7 @@ print '</div><div class="fichetwothirdright"><div class="ficheaddleft">';
|
|||||||
* Last modified products
|
* Last modified products
|
||||||
*/
|
*/
|
||||||
$max=15;
|
$max=15;
|
||||||
$sql = "SELECT p.rowid, p.label, p.price, p.ref, p.fk_product_type, p.tosell, p.tobuy, p.fk_price_expression,";
|
$sql = "SELECT p.rowid, p.label, p.price, p.ref, p.fk_product_type, p.tosell, p.tobuy, p.tobatch, p.fk_price_expression,";
|
||||||
$sql.= " p.entity,";
|
$sql.= " p.entity,";
|
||||||
$sql.= " p.tms as datem";
|
$sql.= " p.tms as datem";
|
||||||
$sql.= " FROM ".MAIN_DB_PREFIX."product as p";
|
$sql.= " FROM ".MAIN_DB_PREFIX."product as p";
|
||||||
@ -336,7 +336,8 @@ if ($result)
|
|||||||
$product_static->ref=$objp->ref;
|
$product_static->ref=$objp->ref;
|
||||||
$product_static->label = $objp->label;
|
$product_static->label = $objp->label;
|
||||||
$product_static->type=$objp->fk_product_type;
|
$product_static->type=$objp->fk_product_type;
|
||||||
$product_static->entity = $objp->entity;
|
$product_static->entity = $objp->entity;
|
||||||
|
$product_static->status_batch = $objp->tobatch;
|
||||||
print $product_static->getNomUrl(1,'',16);
|
print $product_static->getNomUrl(1,'',16);
|
||||||
print "</td>\n";
|
print "</td>\n";
|
||||||
print '<td>'.dol_trunc($objp->label,32).'</td>';
|
print '<td>'.dol_trunc($objp->label,32).'</td>';
|
||||||
|
|||||||
@ -698,6 +698,7 @@ else
|
|||||||
$product_static->type = $obj->fk_product_type;
|
$product_static->type = $obj->fk_product_type;
|
||||||
$product_static->status_buy = $obj->tobuy;
|
$product_static->status_buy = $obj->tobuy;
|
||||||
$product_static->status = $obj->tosell;
|
$product_static->status = $obj->tosell;
|
||||||
|
$product_static->status_batch = $obj->tobatch;
|
||||||
$product_static->entity = $obj->entity;
|
$product_static->entity = $obj->entity;
|
||||||
$product_static->pmp = $obj->pmp;
|
$product_static->pmp = $obj->pmp;
|
||||||
|
|
||||||
|
|||||||
@ -446,7 +446,7 @@ else
|
|||||||
$totalunit=0;
|
$totalunit=0;
|
||||||
$totalvalue=$totalvaluesell=0;
|
$totalvalue=$totalvaluesell=0;
|
||||||
|
|
||||||
$sql = "SELECT p.rowid as rowid, p.ref, p.label as produit, p.fk_product_type as type, p.pmp as ppmp, p.price, p.price_ttc, p.entity,";
|
$sql = "SELECT p.rowid as rowid, p.ref, p.label as produit, p.tobatch, p.fk_product_type as type, p.pmp as ppmp, p.price, p.price_ttc, p.entity,";
|
||||||
$sql.= " ps.reel as value";
|
$sql.= " ps.reel as value";
|
||||||
$sql.= " FROM ".MAIN_DB_PREFIX."product_stock as ps, ".MAIN_DB_PREFIX."product as p";
|
$sql.= " FROM ".MAIN_DB_PREFIX."product_stock as ps, ".MAIN_DB_PREFIX."product as p";
|
||||||
$sql.= " WHERE ps.fk_product = p.rowid";
|
$sql.= " WHERE ps.fk_product = p.rowid";
|
||||||
@ -487,10 +487,11 @@ else
|
|||||||
print '<tr class="oddeven">';
|
print '<tr class="oddeven">';
|
||||||
print "<td>";
|
print "<td>";
|
||||||
$productstatic->id=$objp->rowid;
|
$productstatic->id=$objp->rowid;
|
||||||
$productstatic->ref = $objp->ref;
|
$productstatic->ref = $objp->ref;
|
||||||
$productstatic->label = $objp->produit;
|
$productstatic->label = $objp->produit;
|
||||||
$productstatic->type=$objp->type;
|
$productstatic->type=$objp->type;
|
||||||
$productstatic->entity=$objp->entity;
|
$productstatic->entity=$objp->entity;
|
||||||
|
$productstatic->status_batch=$objp->tobatch;
|
||||||
print $productstatic->getNomUrl(1,'stock',16);
|
print $productstatic->getNomUrl(1,'stock',16);
|
||||||
print '</td>';
|
print '</td>';
|
||||||
|
|
||||||
|
|||||||
@ -415,7 +415,7 @@ $formother=new FormOther($db);
|
|||||||
$formproduct=new FormProduct($db);
|
$formproduct=new FormProduct($db);
|
||||||
if (!empty($conf->projet->enabled)) $formproject=new FormProjets($db);
|
if (!empty($conf->projet->enabled)) $formproject=new FormProjets($db);
|
||||||
|
|
||||||
$sql = "SELECT p.rowid, p.ref as product_ref, p.label as produit, p.fk_product_type as type, p.entity,";
|
$sql = "SELECT p.rowid, p.ref as product_ref, p.label as produit, p.tobatch, p.fk_product_type as type, p.entity,";
|
||||||
$sql.= " e.ref as stock, e.rowid as entrepot_id, e.lieu,";
|
$sql.= " e.ref as stock, e.rowid as entrepot_id, e.lieu,";
|
||||||
$sql.= " m.rowid as mid, m.value as qty, m.datem, m.fk_user_author, m.label, m.inventorycode, m.fk_origin, m.origintype,";
|
$sql.= " m.rowid as mid, m.value as qty, m.datem, m.fk_user_author, m.label, m.inventorycode, m.fk_origin, m.origintype,";
|
||||||
$sql.= " m.batch, m.price,";
|
$sql.= " m.batch, m.price,";
|
||||||
@ -891,6 +891,7 @@ if ($resql)
|
|||||||
$productstatic->label=$objp->produit;
|
$productstatic->label=$objp->produit;
|
||||||
$productstatic->type=$objp->type;
|
$productstatic->type=$objp->type;
|
||||||
$productstatic->entity=$objp->entity;
|
$productstatic->entity=$objp->entity;
|
||||||
|
$productstatic->status_batch=$objp->tobatch;
|
||||||
|
|
||||||
$productlot->id = $objp->lotid;
|
$productlot->id = $objp->lotid;
|
||||||
$productlot->batch= $objp->batch;
|
$productlot->batch= $objp->batch;
|
||||||
|
|||||||
@ -195,6 +195,52 @@ if (empty($reshook))
|
|||||||
$permtodelete = $user->rights->projet->supprimer;
|
$permtodelete = $user->rights->projet->supprimer;
|
||||||
$uploaddir = $conf->projet->dir_output;
|
$uploaddir = $conf->projet->dir_output;
|
||||||
include DOL_DOCUMENT_ROOT.'/core/actions_massactions.inc.php';
|
include DOL_DOCUMENT_ROOT.'/core/actions_massactions.inc.php';
|
||||||
|
|
||||||
|
// Close records
|
||||||
|
if (! $error && $massaction == 'close' && $user->rights->projet->creer)
|
||||||
|
{
|
||||||
|
$db->begin();
|
||||||
|
|
||||||
|
$objecttmp=new $objectclass($db);
|
||||||
|
$nbok = 0;
|
||||||
|
foreach($toselect as $toselectid)
|
||||||
|
{
|
||||||
|
$result=$objecttmp->fetch($toselectid);
|
||||||
|
if ($result > 0)
|
||||||
|
{
|
||||||
|
$userWrite = $object->restrictedProjectArea($user,'write');
|
||||||
|
if ($userWrite > 0 && $objecttmp->statut == 1) {
|
||||||
|
$result = $objecttmp->setClose($user);
|
||||||
|
if ($result <= 0) {
|
||||||
|
setEventMessages($objecttmp->error, $objecttmp->errors, 'errors');
|
||||||
|
$error++;
|
||||||
|
break;
|
||||||
|
} else $nbok++;
|
||||||
|
} elseif($userWrite <= 0) {
|
||||||
|
setEventMessages($langs->trans("DontHavePermissionForCloseProject", $objecttmp->ref), null, 'warnings');
|
||||||
|
} else {
|
||||||
|
setEventMessages($langs->trans("DontHaveTheValidateStatus", $objecttmp->ref), null, 'warnings');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
setEventMessages($objecttmp->error, $objecttmp->errors, 'errors');
|
||||||
|
$error++;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (! $error)
|
||||||
|
{
|
||||||
|
if ($nbok > 1) setEventMessages($langs->trans("RecordsClosed", $nbok), null, 'mesgs');
|
||||||
|
else setEventMessages($langs->trans("RecordsClosed", $nbok), null, 'mesgs');
|
||||||
|
$db->commit();
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
$db->rollback();
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -390,7 +436,9 @@ $arrayofmassactions = array(
|
|||||||
);
|
);
|
||||||
//if($user->rights->societe->creer) $arrayofmassactions['createbills']=$langs->trans("CreateInvoiceForThisCustomer");
|
//if($user->rights->societe->creer) $arrayofmassactions['createbills']=$langs->trans("CreateInvoiceForThisCustomer");
|
||||||
if ($user->rights->societe->supprimer) $arrayofmassactions['predelete']=$langs->trans("Delete");
|
if ($user->rights->societe->supprimer) $arrayofmassactions['predelete']=$langs->trans("Delete");
|
||||||
|
if ($user->rights->projet->creer) $arrayofmassactions['close']=$langs->trans("Close");
|
||||||
if (in_array($massaction, array('presend','predelete'))) $arrayofmassactions=array();
|
if (in_array($massaction, array('presend','predelete'))) $arrayofmassactions=array();
|
||||||
|
|
||||||
$massactionbutton=$form->selectMassAction('', $arrayofmassactions);
|
$massactionbutton=$form->selectMassAction('', $arrayofmassactions);
|
||||||
|
|
||||||
print '<form method="POST" id="searchFormList" action="'.$_SERVER["PHP_SELF"].'">';
|
print '<form method="POST" id="searchFormList" action="'.$_SERVER["PHP_SELF"].'">';
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user