Skip to content
Snippets Groups Projects
Commit 84695845 authored by Laurent Destailleur's avatar Laurent Destailleur
Browse files

Some fixes into translation and permissions

parent 88a29b7c
No related branches found
No related tags found
No related merge requests found
...@@ -67,7 +67,7 @@ llxHeader('',$langs->trans("DefaultRights")); ...@@ -67,7 +67,7 @@ llxHeader('',$langs->trans("DefaultRights"));
print_fiche_titre($langs->trans("SecuritySetup"),'','setup'); print_fiche_titre($langs->trans("SecuritySetup"),'','setup');
print $langs->trans("DefaultRightsDesc"); print $langs->trans("DefaultRightsDesc");
print " ".$langs->trans("OnlyActiveElementsAreShown")."<br>\n"; print " ".$langs->trans("OnlyActiveElementsAreShown")."<br><br>\n";
$db->begin(); $db->begin();
...@@ -115,16 +115,15 @@ foreach ($modulesdir as $dir) ...@@ -115,16 +115,15 @@ foreach ($modulesdir as $dir)
$db->commit(); $db->commit();
// Show warning about external users
print info_admin(showModulesExludedForExternal($modules)).'<br>'."\n";
print "<br>\n";
$head=security_prepare_head(); $head=security_prepare_head();
dol_fiche_head($head, 'default', $langs->trans("Security")); dol_fiche_head($head, 'default', $langs->trans("Security"));
// Show warning about external users
print info_admin(showModulesExludedForExternal($modules)).'<br>'."\n";
print '<table class="noborder" width="100%">'; print '<table class="noborder" width="100%">';
// Affiche lignes des permissions // Affiche lignes des permissions
......
...@@ -2243,7 +2243,11 @@ if ($action == 'create' && $user->rights->commande->creer) ...@@ -2243,7 +2243,11 @@ if ($action == 'create' && $user->rights->commande->creer)
} }
// Cancel order // Cancel order
if ($object->statut == 1 && $user->rights->commande->annuler) { if ($object->statut == 1 &&
((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->commande->cloturer))
|| (! empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->commande->order_advance->annuler)))
)
{
print '<div class="inline-block divButAction"><a class="butActionDelete" href="' . $_SERVER["PHP_SELF"] . '?id=' . $object->id . '&amp;action=cancel">' . $langs->trans('Cancel') . '</a></div>'; print '<div class="inline-block divButAction"><a class="butActionDelete" href="' . $_SERVER["PHP_SELF"] . '?id=' . $object->id . '&amp;action=cancel">' . $langs->trans('Cancel') . '</a></div>';
} }
......
<?php <?php
/* Copyright (C) 2003-2004 Rodolphe Quiedeville <rodolphe@quiedeville.org> /* Copyright (C) 2003-2004 Rodolphe Quiedeville <rodolphe@quiedeville.org>
* Copyright (C) 2004-2010 Laurent Destailleur <eldy@users.sourceforge.net> * Copyright (C) 2004-2015 Laurent Destailleur <eldy@users.sourceforge.net>
* Copyright (C) 2004 Sebastien Di Cintio <sdicintio@ressource-toi.org> * Copyright (C) 2004 Sebastien Di Cintio <sdicintio@ressource-toi.org>
* Copyright (C) 2004 Benoit Mortier <benoit.mortier@opensides.be> * Copyright (C) 2004 Benoit Mortier <benoit.mortier@opensides.be>
* Copyright (C) 2005-2012 Regis Houssin <regis.houssin@capnetworks.com> * Copyright (C) 2005-2012 Regis Houssin <regis.houssin@capnetworks.com>
...@@ -21,11 +21,11 @@ ...@@ -21,11 +21,11 @@
*/ */
/** /**
* \defgroup askpricesupplier Module de demandes de prix fournisseurs * \defgroup askpricesupplier Module to request supplier price proposals
* \brief Module pour gerer la tenue des demandes fournisseurs * \brief Module to request supplier price proposals
* \file htdocs/core/modules/modAskPriceSupplier.class.php * \file htdocs/core/modules/modAskPriceSupplier.class.php
* \ingroup askpricesupplier * \ingroup askpricesupplier
* \brief Fichier de description et activation du module AskPriceSupplier * \brief File to describe and activate module AskPriceSupplier
*/ */
include_once DOL_DOCUMENT_ROOT .'/core/modules/DolibarrModules.class.php'; include_once DOL_DOCUMENT_ROOT .'/core/modules/DolibarrModules.class.php';
......
...@@ -151,8 +151,9 @@ class modCommande extends DolibarrModules ...@@ -151,8 +151,9 @@ class modCommande extends DolibarrModules
$this->rights[$r][1] = 'Annuler les commandes clients'; $this->rights[$r][1] = 'Annuler les commandes clients';
$this->rights[$r][2] = 'd'; $this->rights[$r][2] = 'd';
$this->rights[$r][3] = 0; $this->rights[$r][3] = 0;
$this->rights[$r][4] = 'annuler'; $this->rights[$r][4] = 'order_advance';
$this->rights[$r][5] = 'annuler';
$r++; $r++;
$this->rights[$r][0] = 89; $this->rights[$r][0] = 89;
$this->rights[$r][1] = 'Supprimer les commandes clients'; $this->rights[$r][1] = 'Supprimer les commandes clients';
......
...@@ -180,7 +180,7 @@ class modFournisseur extends DolibarrModules ...@@ -180,7 +180,7 @@ class modFournisseur extends DolibarrModules
$r++; $r++;
$this->rights[$r][0] = 1189; $this->rights[$r][0] = 1189;
$this->rights[$r][1] = 'Check/Uncheck a supplier order reception'; $this->rights[$r][1] = 'Check/Uncheck a supplier order reception';
$this->rights[$r][2] = 'd'; $this->rights[$r][2] = 'w';
$this->rights[$r][3] = 0; $this->rights[$r][3] = 0;
$this->rights[$r][4] = 'commande_advance'; $this->rights[$r][4] = 'commande_advance';
$this->rights[$r][5] = 'check'; $this->rights[$r][5] = 'check';
......
...@@ -500,6 +500,8 @@ Module700Name=Donations ...@@ -500,6 +500,8 @@ Module700Name=Donations
Module700Desc=Donation management Module700Desc=Donation management
Module770Name=Expense Report Module770Name=Expense Report
Module770Desc=Management and claim expense reports (transportation, meal, ...) Module770Desc=Management and claim expense reports (transportation, meal, ...)
Module1120Name=Supplier commercial proposal
Module1120Desc=Request supplier commercial proposal and prices
Module1200Name=Mantis Module1200Name=Mantis
Module1200Desc=Mantis integration Module1200Desc=Mantis integration
Module1400Name=Accounting Module1400Name=Accounting
......
<?php <?php
/* Copyright (C) 2002-2005 Rodolphe Quiedeville <rodolphe@quiedeville.org> /* Copyright (C) 2002-2005 Rodolphe Quiedeville <rodolphe@quiedeville.org>
* Copyright (C) 2002-2003 Jean-Louis Bergamo <jlb@j1b.org> * Copyright (C) 2002-2003 Jean-Louis Bergamo <jlb@j1b.org>
* Copyright (C) 2004-2012 Laurent Destailleur <eldy@users.sourceforge.net> * Copyright (C) 2004-2012 Laurent Destailleur <eldy@users.sourceforge.net>
* Copyright (C) 2004 Eric Seigne <eric.seigne@ryxeo.com> * Copyright (C) 2004 Eric Seigne <eric.seigne@ryxeo.com>
* Copyright (C) 2005-2012 Regis Houssin <regis.houssin@capnetworks.com> * Copyright (C) 2005-2012 Regis Houssin <regis.houssin@capnetworks.com>
* Copyright (C) 2012 Juanjo Menent <jmenent@2byte.es> * Copyright (C) 2012 Juanjo Menent <jmenent@2byte.es>
* *
* 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
* the Free Software Foundation; either version 3 of the License, or * the Free Software Foundation; either version 3 of the License, or
* (at your option) any later version. * (at your option) any later version.
* *
* This program is distributed in the hope that it will be useful, * This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of * but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details. * GNU General Public License for more details.
* *
* You should have received a copy of the GNU General Public License * You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>. * along with this program. If not, see <http://www.gnu.org/licenses/>.
*/ */
/** /**
* \file htdocs/user/perms.php * \file htdocs/user/perms.php
...@@ -74,10 +74,10 @@ if ($user->id <> $id && ! $canreaduser) accessforbidden(); ...@@ -74,10 +74,10 @@ if ($user->id <> $id && ! $canreaduser) accessforbidden();
if ($action == 'addrights' && $caneditperms) if ($action == 'addrights' && $caneditperms)
{ {
$edituser = new User($db); $edituser = new User($db);
$edituser->fetch($id); $edituser->fetch($id);
//$edituser->addrights($rights, $module, '', $entity); // TODO unused for the moment //$edituser->addrights($rights, $module, '', $entity); // TODO unused for the moment
$edituser->addrights($rights, $module); $edituser->addrights($rights, $module);
// Si on a touche a ses propres droits, on recharge // Si on a touche a ses propres droits, on recharge
if ($id == $user->id) if ($id == $user->id)
...@@ -90,10 +90,10 @@ if ($action == 'addrights' && $caneditperms) ...@@ -90,10 +90,10 @@ if ($action == 'addrights' && $caneditperms)
if ($action == 'delrights' && $caneditperms) if ($action == 'delrights' && $caneditperms)
{ {
$edituser = new User($db); $edituser = new User($db);
$edituser->fetch($id); $edituser->fetch($id);
//$edituser->delrights($rights, $module, '', $entity); // TODO unused for the moment //$edituser->delrights($rights, $module, '', $entity); // TODO unused for the moment
$edituser->delrights($rights, $module); $edituser->delrights($rights, $module);
// Si on a touche a ses propres droits, on recharge // Si on a touche a ses propres droits, on recharge
if ($id == $user->id) if ($id == $user->id)
...@@ -133,39 +133,39 @@ $modulesdir = dolGetModulesDirs(); ...@@ -133,39 +133,39 @@ $modulesdir = dolGetModulesDirs();
foreach($modulesdir as $dir) foreach($modulesdir as $dir)
{ {
$handle=@opendir(dol_osencode($dir)); $handle=@opendir(dol_osencode($dir));
if (is_resource($handle)) if (is_resource($handle))
{ {
while (($file = readdir($handle))!==false) while (($file = readdir($handle))!==false)
{ {
if (is_readable($dir.$file) && substr($file, 0, 3) == 'mod' && substr($file, dol_strlen($file) - 10) == '.class.php') if (is_readable($dir.$file) && substr($file, 0, 3) == 'mod' && substr($file, dol_strlen($file) - 10) == '.class.php')
{ {
$modName = substr($file, 0, dol_strlen($file) - 10); $modName = substr($file, 0, dol_strlen($file) - 10);
if ($modName) if ($modName)
{ {
include_once $dir.$file; include_once $dir.$file;
$objMod = new $modName($db); $objMod = new $modName($db);
// Load all lang files of module // Load all lang files of module
if (isset($objMod->langfiles) && is_array($objMod->langfiles)) if (isset($objMod->langfiles) && is_array($objMod->langfiles))
{ {
foreach($objMod->langfiles as $domain) foreach($objMod->langfiles as $domain)
{ {
$langs->load($domain); $langs->load($domain);
} }
} }
// Load all permissions // Load all permissions
if ($objMod->rights_class) if ($objMod->rights_class)
{ {
$forceEntity=((! empty($conf->multicompany->enabled) && ! empty($fuser->entity)) ? $fuser->entity : null); $forceEntity=((! empty($conf->multicompany->enabled) && ! empty($fuser->entity)) ? $fuser->entity : null);
$ret=$objMod->insert_permissions(0, $forceEntity); $ret=$objMod->insert_permissions(0, $forceEntity);
$modules[$objMod->rights_class]=$objMod; $modules[$objMod->rights_class]=$objMod;
//print "modules[".$objMod->rights_class."]=$objMod;"; //print "modules[".$objMod->rights_class."]=$objMod;";
} }
} }
} }
} }
} }
} }
$db->commit(); $db->commit();
...@@ -195,19 +195,19 @@ dol_syslog("get user perms", LOG_DEBUG); ...@@ -195,19 +195,19 @@ dol_syslog("get user perms", LOG_DEBUG);
$result=$db->query($sql); $result=$db->query($sql);
if ($result) if ($result)
{ {
$num = $db->num_rows($result); $num = $db->num_rows($result);
$i = 0; $i = 0;
while ($i < $num) while ($i < $num)
{ {
$obj = $db->fetch_object($result); $obj = $db->fetch_object($result);
array_push($permsuser,$obj->id); array_push($permsuser,$obj->id);
$i++; $i++;
} }
$db->free($result); $db->free($result);
} }
else else
{ {
dol_print_error($db); dol_print_error($db);
} }
// Lecture des droits groupes // Lecture des droits groupes
...@@ -231,27 +231,27 @@ dol_syslog("get user perms", LOG_DEBUG); ...@@ -231,27 +231,27 @@ dol_syslog("get user perms", LOG_DEBUG);
$result=$db->query($sql); $result=$db->query($sql);
if ($result) if ($result)
{ {
$num = $db->num_rows($result); $num = $db->num_rows($result);
$i = 0; $i = 0;
while ($i < $num) while ($i < $num)
{ {
$obj = $db->fetch_object($result); $obj = $db->fetch_object($result);
if (! isset($permsgroupbyentity[$obj->entity])) if (! isset($permsgroupbyentity[$obj->entity]))
$permsgroupbyentity[$obj->entity] = array(); $permsgroupbyentity[$obj->entity] = array();
array_push($permsgroupbyentity[$obj->entity], $obj->id); array_push($permsgroupbyentity[$obj->entity], $obj->id);
$i++; $i++;
} }
$db->free($result); $db->free($result);
} }
else else
{ {
dol_print_error($db); dol_print_error($db);
} }
/* /*
* Ecran ajout/suppression permission * Ecran ajout/suppression permission
*/ */
print '<table class="border" width="100%">'; print '<table class="border" width="100%">';
...@@ -274,9 +274,9 @@ print '</tr>'."\n"; ...@@ -274,9 +274,9 @@ print '</tr>'."\n";
print '</table><br>'; print '</table><br>';
if ($user->admin) print info_admin($langs->trans("WarningOnlyPermissionOfActivatedModules"), 0, 1).'<br>'; if ($user->admin) print info_admin($langs->trans("WarningOnlyPermissionOfActivatedModules"));
// Show warning about external users // Show warning about external users
if (empty($user->societe_id)) print info_admin(showModulesExludedForExternal($modules)).'<br><br>'."\n"; if (empty($user->societe_id)) print info_admin(showModulesExludedForExternal($modules))."\n";
// For multicompany transversal mode // For multicompany transversal mode
// TODO Place a hook here // TODO Place a hook here
...@@ -310,115 +310,115 @@ $sql.= " ORDER BY r.module, r.id"; ...@@ -310,115 +310,115 @@ $sql.= " ORDER BY r.module, r.id";
$result=$db->query($sql); $result=$db->query($sql);
if ($result) if ($result)
{ {
$num = $db->num_rows($result); $num = $db->num_rows($result);
$i = 0; $i = 0;
$var = True; $var = True;
$oldmod=''; $oldmod='';
while ($i < $num) while ($i < $num)
{ {
$obj = $db->fetch_object($result); $obj = $db->fetch_object($result);
// Si la ligne correspond a un module qui n'existe plus (absent de includes/module), on l'ignore // Si la ligne correspond a un module qui n'existe plus (absent de includes/module), on l'ignore
if (empty($modules[$obj->module])) if (empty($modules[$obj->module]))
{ {
$i++; $i++;
continue; continue;
} }
if (isset($obj->module) && ($oldmod <> $obj->module)) if (isset($obj->module) && ($oldmod <> $obj->module))
{ {
$oldmod = $obj->module; $oldmod = $obj->module;
$var = !$var; $var = !$var;
// Rupture detectee, on recupere objMod // Rupture detectee, on recupere objMod
$objMod=$modules[$obj->module]; $objMod=$modules[$obj->module];
$picto=($objMod->picto?$objMod->picto:'generic'); $picto=($objMod->picto?$objMod->picto:'generic');
if ($caneditperms && (empty($objMod->rights_admin_allowed) || empty($fuser->admin))) if ($caneditperms && (empty($objMod->rights_admin_allowed) || empty($fuser->admin)))
{ {
// On affiche ligne pour modifier droits // On affiche ligne pour modifier droits
print '<tr '. $bc[$var].'>'; print '<tr '. $bc[$var].'>';
print '<td class="nowrap">'.img_object('',$picto).' '.$objMod->getName(); print '<td class="nowrap">'.img_object('',$picto).' '.$objMod->getName();
print '<a name="'.$objMod->getName().'">&nbsp;</a></td>'; print '<a name="'.$objMod->getName().'">&nbsp;</a></td>';
print '<td align="center" class="nowrap">'; print '<td align="center" class="nowrap">';
print '<a title="'.dol_escape_htmltag($langs->trans("All")).'" alt="'.dol_escape_htmltag($langs->trans("All")).'" href="perms.php?id='.$fuser->id.'&amp;action=addrights&amp;entity='.$entity.'&amp;module='.$obj->module.'#'.$objMod->getName().'">'.$langs->trans("All")."</a>"; print '<a title="'.dol_escape_htmltag($langs->trans("All")).'" alt="'.dol_escape_htmltag($langs->trans("All")).'" href="perms.php?id='.$fuser->id.'&amp;action=addrights&amp;entity='.$entity.'&amp;module='.$obj->module.'#'.$objMod->getName().'">'.$langs->trans("All")."</a>";
print '/'; print '/';
print '<a title="'.dol_escape_htmltag($langs->trans("None")).'" alt="'.dol_escape_htmltag($langs->trans("None")).'" href="perms.php?id='.$fuser->id.'&amp;action=delrights&amp;entity='.$entity.'&amp;module='.$obj->module.'#'.$objMod->getName().'">'.$langs->trans("None")."</a>"; print '<a title="'.dol_escape_htmltag($langs->trans("None")).'" alt="'.dol_escape_htmltag($langs->trans("None")).'" href="perms.php?id='.$fuser->id.'&amp;action=delrights&amp;entity='.$entity.'&amp;module='.$obj->module.'#'.$objMod->getName().'">'.$langs->trans("None")."</a>";
print '</td>'; print '</td>';
print '<td colspan="2">&nbsp;</td>'; print '<td colspan="2">&nbsp;</td>';
print '</tr>'."\n"; print '</tr>'."\n";
} }
} }
print '<tr '. $bc[$var].'>'; print '<tr '. $bc[$var].'>';
// Picto and label of permission // Picto and label of permission
print '<td>'.img_object('',$picto).' '.$objMod->getName().'</td>'; print '<td>'.img_object('',$picto).' '.$objMod->getName().'</td>';
// Permission and tick // Permission and tick
if (! empty($fuser->admin) && ! empty($objMod->rights_admin_allowed)) // Permission own because admin if (! empty($fuser->admin) && ! empty($objMod->rights_admin_allowed)) // Permission own because admin
{ {
if ($caneditperms) if ($caneditperms)
{ {
print '<td align="center">'.img_picto($langs->trans("Administrator"),'star').'</td>'; print '<td align="center">'.img_picto($langs->trans("Administrator"),'star').'</td>';
} }
print '<td align="center" class="nowrap">'; print '<td align="center" class="nowrap">';
print img_picto($langs->trans("Active"),'tick'); print img_picto($langs->trans("Active"),'tick');
print '</td>'; print '</td>';
} }
else if (in_array($obj->id, $permsuser)) // Permission own by user else if (in_array($obj->id, $permsuser)) // Permission own by user
{ {
if ($caneditperms) if ($caneditperms)
{ {
print '<td align="center"><a href="perms.php?id='.$fuser->id.'&amp;action=delrights&amp;rights='.$obj->id.'#'.$objMod->getName().'">'.img_edit_remove($langs->trans("Remove")).'</a></td>'; print '<td align="center"><a href="perms.php?id='.$fuser->id.'&amp;action=delrights&amp;rights='.$obj->id.'#'.$objMod->getName().'">'.img_edit_remove($langs->trans("Remove")).'</a></td>';
} }
print '<td align="center" class="nowrap">'; print '<td align="center" class="nowrap">';
print img_picto($langs->trans("Active"),'tick'); print img_picto($langs->trans("Active"),'tick');
print '</td>'; print '</td>';
} }
else if (is_array($permsgroupbyentity[$entity])) else if (is_array($permsgroupbyentity[$entity]))
{ {
if (in_array($obj->id, $permsgroupbyentity[$entity])) // Permission own by group if (in_array($obj->id, $permsgroupbyentity[$entity])) // Permission own by group
{ {
if ($caneditperms) if ($caneditperms)
{ {
print '<td align="center">'; print '<td align="center">';
print $form->textwithtooltip($langs->trans("Inherited"),$langs->trans("PermissionInheritedFromAGroup")); print $form->textwithtooltip($langs->trans("Inherited"),$langs->trans("PermissionInheritedFromAGroup"));
print '</td>'; print '</td>';
} }
print '<td align="center" class="nowrap">'; print '<td align="center" class="nowrap">';
print img_picto($langs->trans("Active"),'tick'); print img_picto($langs->trans("Active"),'tick');
print '</td>'; print '</td>';
} }
else else
{ {
// Do not own permission // Do not own permission
if ($caneditperms) if ($caneditperms)
{ {
print '<td align="center"><a href="perms.php?id='.$fuser->id.'&amp;action=addrights&amp;entity='.$entity.'&amp;rights='.$obj->id.'#'.$objMod->getName().'">'.img_edit_add($langs->trans("Add")).'</a></td>'; print '<td align="center"><a href="perms.php?id='.$fuser->id.'&amp;action=addrights&amp;entity='.$entity.'&amp;rights='.$obj->id.'#'.$objMod->getName().'">'.img_edit_add($langs->trans("Add")).'</a></td>';
} }
print '<td>&nbsp</td>'; print '<td>&nbsp</td>';
} }
} }
else else
{ {
// Do not own permission // Do not own permission
if ($caneditperms) if ($caneditperms)
{ {
print '<td align="center"><a href="perms.php?id='.$fuser->id.'&amp;action=addrights&amp;entity='.$entity.'&amp;rights='.$obj->id.'#'.$objMod->getName().'">'.img_edit_add($langs->trans("Add")).'</a></td>'; print '<td align="center"><a href="perms.php?id='.$fuser->id.'&amp;action=addrights&amp;entity='.$entity.'&amp;rights='.$obj->id.'#'.$objMod->getName().'">'.img_edit_add($langs->trans("Add")).'</a></td>';
} }
print '<td>&nbsp</td>'; print '<td>&nbsp</td>';
} }
$perm_libelle=($conf->global->MAIN_USE_ADVANCED_PERMS && ($langs->trans("PermissionAdvanced".$obj->id)!=("PermissionAdvanced".$obj->id))?$langs->trans("PermissionAdvanced".$obj->id):(($langs->trans("Permission".$obj->id)!=("Permission".$obj->id))?$langs->trans("Permission".$obj->id):$obj->libelle)); $perm_libelle=($conf->global->MAIN_USE_ADVANCED_PERMS && ($langs->trans("PermissionAdvanced".$obj->id)!=("PermissionAdvanced".$obj->id))?$langs->trans("PermissionAdvanced".$obj->id):(($langs->trans("Permission".$obj->id)!=("Permission".$obj->id))?$langs->trans("Permission".$obj->id):$obj->libelle));
print '<td>'.$perm_libelle. '</td>'; print '<td>'.$perm_libelle. '</td>';
print '</tr>'."\n"; print '</tr>'."\n";
$i++; $i++;
} }
} }
else dol_print_error($db); else dol_print_error($db);
print '</table>'; print '</table>';
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment