Fix: Gestion des droits sur compte bancaire incomplete. Pas assez de droit pour rapprocher. Melange entre droit de creer/supprimer ecriture bancaire et droit de saisir virement.
This commit is contained in:
parent
0dba0bf93c
commit
1fdeb753db
@ -58,7 +58,7 @@ $date_select=isset($_GET["date_select"])?$_GET["date_select"]:$_POST["date_selec
|
||||
// Cette fonction me semble pas utile. Si on a fait des adhesions alors que module banque
|
||||
// pas actif c'est qu'on voulait pas d'insertion en banque.
|
||||
// si on active apres coup, on va pas modifier toutes les adhesions pour avoir une ecriture
|
||||
// en banque mais on va mettre le solde banque direct a la valeur apres toutes les adhésions.
|
||||
// en banque mais on va mettre le solde banque direct a la valeur apres toutes les adh<EFBFBD>sions.
|
||||
$allowinsertbankafter=0;
|
||||
|
||||
if (! $user->rights->adherent->cotisation->lire)
|
||||
@ -70,7 +70,7 @@ if (! $user->rights->adherent->cotisation->lire)
|
||||
*/
|
||||
|
||||
// Insertion de la cotisation dans le compte banquaire
|
||||
if ($allowinsertbankafter && $user->rights->banque->modifier && $_POST["action"] == '2bank' && $_POST["rowid"] !='')
|
||||
if ($allowinsertbankafter && $_POST["action"] == '2bank' && $_POST["rowid"] !='')
|
||||
{
|
||||
if (defined("ADHERENT_BANK_USE") && $conf->global->ADHERENT_BANK_USE)
|
||||
{
|
||||
@ -83,7 +83,7 @@ if ($allowinsertbankafter && $user->rights->banque->modifier && $_POST["action"]
|
||||
$msg='<div class="error">'.$langs->trans("ErrorFieldRequired",$langs->trans("OperationType")).'</div>';
|
||||
}
|
||||
|
||||
// Créer un tiers + facture et enregistrer son paiement ? -> Non requis avec module compta expert
|
||||
// Cr<EFBFBD>er un tiers + facture et enregistrer son paiement ? -> Non requis avec module compta expert
|
||||
// Eventuellement offrir option a la creation adhesion
|
||||
|
||||
if (! $msg)
|
||||
@ -211,7 +211,7 @@ if ($result)
|
||||
|
||||
$var=!$var;
|
||||
|
||||
if ($allowinsertbankafter && $user->rights->banque->modifier && ! $objp->fk_account && $conf->banque->enabled && $conf->global->ADHERENT_BANK_USE && $objp->cotisation)
|
||||
if ($allowinsertbankafter && ! $objp->fk_account && $conf->banque->enabled && $conf->global->ADHERENT_BANK_USE && $objp->cotisation)
|
||||
{
|
||||
print "<form method=\"post\" action=\"cotisations.php\">";
|
||||
}
|
||||
@ -251,7 +251,7 @@ if ($result)
|
||||
else
|
||||
{
|
||||
print "<td>";
|
||||
if ($allowinsertbankafter && $user->rights->banque->modifier && $objp->cotisation)
|
||||
if ($allowinsertbankafter && $objp->cotisation)
|
||||
{
|
||||
print '<input type="hidden" name="action" value="2bank">';
|
||||
print '<input type="hidden" name="rowid" value="'.$objp->crowid.'">';
|
||||
@ -279,7 +279,7 @@ if ($result)
|
||||
print '<td align="right">'.price($objp->cotisation).'</td>';
|
||||
|
||||
print "</tr>";
|
||||
if ($allowinsertbankafter && $user->rights->banque->modifier && ! $objp->fk_account && $conf->banque->enabled && $conf->global->ADHERENT_BANK_USE && $objp->cotisation)
|
||||
if ($allowinsertbankafter && ! $objp->fk_account && $conf->banque->enabled && $conf->global->ADHERENT_BANK_USE && $objp->cotisation)
|
||||
{
|
||||
print "</form>\n";
|
||||
}
|
||||
|
||||
@ -24,7 +24,7 @@
|
||||
/**
|
||||
\file htdocs/compta/bank/ligne.php
|
||||
\ingroup compta
|
||||
\brief Page édition d'une écriture bancaire
|
||||
\brief Page <EFBFBD>dition d'une <EFBFBD>criture bancaire
|
||||
\version $Revision$
|
||||
*/
|
||||
|
||||
@ -91,7 +91,7 @@ if ($_POST["action"] == "update")
|
||||
{
|
||||
$objp = $db->fetch_object($result);
|
||||
if ($objp->rappro)
|
||||
die ("Vous ne pouvez pas modifier une écriture déjà rapprochée");
|
||||
die ("Vous ne pouvez pas modifier une <EFBFBD>criture d<>j<EFBFBD> rapproch<63>e");
|
||||
}
|
||||
|
||||
$db->begin();
|
||||
@ -100,7 +100,7 @@ if ($_POST["action"] == "update")
|
||||
$dateop = $_POST["dateoyear"].'-'.$_POST["dateomonth"].'-'.$_POST["dateoday"];
|
||||
$dateval= $_POST["datevyear"].'-'.$_POST["datevmonth"].'-'.$_POST["datevday"];
|
||||
$sql = "UPDATE ".MAIN_DB_PREFIX."bank";
|
||||
$sql.= " SET label='".addslashes($_POST["label"])."',"; // Todo: créer une classe pour séparer les requêtes sql
|
||||
$sql.= " SET label='".addslashes($_POST["label"])."',"; // Todo: cr<EFBFBD>er une classe pour s<>parer les requ<71>tes sql
|
||||
if (isset($_POST['amount'])) $sql.=" amount='$amount',";
|
||||
$sql.= " dateo = '".$dateop."', datev = '".$dateval."',";
|
||||
$sql.= " fk_account = ".$_POST['accountid'];
|
||||
@ -218,7 +218,7 @@ if ($result)
|
||||
// Confirmations
|
||||
if ($_GET["action"] == 'delete_categ')
|
||||
{
|
||||
$html->form_confirm("ligne.php?rowid=".$_GET["rowid"]."&cat1=".$_GET["fk_categ"]."&orig_account=".$orig_account,"Supprimer dans la catégorie","Etes-vous sûr de vouloir supprimer le classement dans la catégorie ?","confirm_delete_categ");
|
||||
$html->form_confirm("ligne.php?rowid=".$_GET["rowid"]."&cat1=".$_GET["fk_categ"]."&orig_account=".$orig_account,"Supprimer dans la cat<EFBFBD>gorie","Etes-vous s<>r de vouloir supprimer le classement dans la cat<61>gorie ?","confirm_delete_categ");
|
||||
print '<br>';
|
||||
}
|
||||
|
||||
@ -233,7 +233,7 @@ if ($result)
|
||||
|
||||
$links=$acct->get_url($rowid);
|
||||
|
||||
// Tableau sur 4 colonne si déja rapproché, sinon sur 5 colonnes
|
||||
// Tableau sur 4 colonne si d<EFBFBD>ja rapproch<63>, sinon sur 5 colonnes
|
||||
|
||||
// Author
|
||||
print '<tr><td width="20%">'.$langs->trans("Author")."</td>";
|
||||
@ -266,7 +266,7 @@ if ($result)
|
||||
|
||||
// Date ope
|
||||
print '<tr><td>'.$langs->trans("DateOperation").'</td>';
|
||||
if (! $objp->rappro && $user->rights->banque->modifier)
|
||||
if (! $objp->rappro && ($user->rights->banque->modifier || $user->rights->banque->consolidate))
|
||||
{
|
||||
print '<td colspan="3">';
|
||||
$html->select_date($objp->do,'dateo','','','','update');
|
||||
@ -281,7 +281,7 @@ if ($result)
|
||||
|
||||
// Value date
|
||||
print "<tr><td>".$langs->trans("DateValue")."</td>";
|
||||
if (! $objp->rappro && $user->rights->banque->modifier)
|
||||
if (! $objp->rappro && ($user->rights->banque->modifier || $user->rights->banque->consolidate))
|
||||
{
|
||||
print '<td colspan="3">';
|
||||
$html->select_date($objp->dv,'datev','','','','update');
|
||||
@ -301,13 +301,13 @@ if ($result)
|
||||
|
||||
// Description
|
||||
print "<tr><td>".$langs->trans("Label")."</td>";
|
||||
if (! $objp->rappro && $user->rights->banque->modifier)
|
||||
if (! $objp->rappro && ($user->rights->banque->modifier || $user->rights->banque->consolidate))
|
||||
{
|
||||
print '<td colspan="3">';
|
||||
print '<input name="label" class="flat" value="';
|
||||
if (eregi('^\((.*)\)$',$objp->label,$reg))
|
||||
{
|
||||
// Label générique car entre parenthèses. On l'affiche en le traduisant
|
||||
// Label g<EFBFBD>n<EFBFBD>rique car entre parenth<74>ses. On l'affiche en le traduisant
|
||||
print $langs->trans($reg[1]);
|
||||
}
|
||||
else
|
||||
@ -323,7 +323,7 @@ if ($result)
|
||||
print '<td colspan="4">';
|
||||
if (eregi('^\((.*)\)$',$objp->label,$reg))
|
||||
{
|
||||
// Label générique car entre parenthèses. On l'affiche en le traduisant
|
||||
// Label g<EFBFBD>n<EFBFBD>rique car entre parenth<74>ses. On l'affiche en le traduisant
|
||||
print $langs->trans($reg[1]);
|
||||
}
|
||||
else
|
||||
@ -411,7 +411,7 @@ if ($result)
|
||||
|
||||
// Type paiement
|
||||
print "<tr><td>".$langs->trans("Type")." / ".$langs->trans("Numero")."</td><td colspan=\"3\">";
|
||||
if ($user->rights->banque->modifier)
|
||||
if ($user->rights->banque->modifier || $user->rights->banque->consolidate)
|
||||
{
|
||||
print "<form method=\"post\" action=\"ligne.php?rowid=$objp->rowid\">";
|
||||
print '<input type="hidden" name="action" value="type">';
|
||||
@ -434,7 +434,7 @@ if ($result)
|
||||
print "<form method=\"post\" action=\"ligne.php?rowid=$objp->rowid\">";
|
||||
print '<input type="hidden" name="action" value="banque">';
|
||||
print "<input type=\"hidden\" name=\"orig_account\" value=\"".$orig_account."\">";
|
||||
print '<input type="text" class="flat" size="40" name="banque" value="'.(empty($objp->banque) ? '' : stripslashes($objp->banque)).'">';
|
||||
print '<input type="text" class="flat" size="40" name="banque" value="'.(empty($objp->banque) ? '' : $objp->banque).'">';
|
||||
print '</td><td align="center"><input type="submit" class="button" value="'.$langs->trans("Update").'">';
|
||||
print "</form>";
|
||||
}
|
||||
@ -446,7 +446,7 @@ if ($result)
|
||||
|
||||
// Emetteur
|
||||
print "<tr><td>".$langs->trans("CheckTransmitter")."</td><td colspan=\"3\">";
|
||||
if ($user->rights->banque->modifier)
|
||||
if ($user->rights->banque->modifier || $user->rights->banque->consolidate)
|
||||
{
|
||||
print "<form method=\"post\" action=\"ligne.php?rowid=$objp->rowid\">";
|
||||
print '<input type="hidden" name="action" value="emetteur">';
|
||||
|
||||
@ -75,9 +75,9 @@ function llxHeader($head = "")
|
||||
// Obsolete. Replaced by page Rapport E/S
|
||||
// $menu->add_submenu(DOL_URL_ROOT."/compta/bank/bilan.php","Bilan",1,$user->rights->banque->lire);
|
||||
|
||||
if ($user->rights->banque->modifier)
|
||||
if ($user->rights->banque->transfer)
|
||||
{
|
||||
$menu->add_submenu(DOL_URL_ROOT."/compta/bank/virement.php",$langs->trans("BankTransfers"),1,$user->rights->banque->modifier);
|
||||
$menu->add_submenu(DOL_URL_ROOT."/compta/bank/virement.php",$langs->trans("BankTransfers"),1,$user->rights->banque->transfer);
|
||||
}
|
||||
|
||||
if ($conf->global->COMPTA_ONLINE_PAYMENT_BPLC)
|
||||
|
||||
@ -315,7 +315,7 @@ if ($resql)
|
||||
print img_edit();
|
||||
print '</a> ';
|
||||
|
||||
if ($objp->do <= mktime() ) {
|
||||
if ($objp->do <= dolibarr_mktime() ) {
|
||||
print '<a href="'.DOL_URL_ROOT.'/compta/bank/rappro.php?action=del&rowid='.$objp->rowid.'&account='.$acct->id.'">';
|
||||
print img_delete();
|
||||
print '</a>';
|
||||
|
||||
@ -22,7 +22,7 @@
|
||||
/**
|
||||
\file htdocs/compta/bank/releve.php
|
||||
\ingroup banque
|
||||
\brief Page d'affichage d'un relevé
|
||||
\brief Page d'affichage d'un relev<EFBFBD>
|
||||
\version $Revision$
|
||||
*/
|
||||
|
||||
@ -67,7 +67,7 @@ llxHeader();
|
||||
$html = new Form($db);
|
||||
|
||||
|
||||
// Récupère info du compte
|
||||
// R<EFBFBD>cup<EFBFBD>re info du compte
|
||||
$acct = new Account($db);
|
||||
if ($_GET["account"])
|
||||
{
|
||||
@ -82,7 +82,7 @@ if ($_GET["ref"])
|
||||
if (! isset($_GET["num"]))
|
||||
{
|
||||
/*
|
||||
* Vue liste tous relevés confondus
|
||||
* Vue liste tous relev<EFBFBD>s confondus
|
||||
*/
|
||||
$sql = "SELECT distinct(b.num_releve) as numr";
|
||||
$sql.= " FROM ".MAIN_DB_PREFIX."bank as b";
|
||||
@ -156,7 +156,7 @@ else
|
||||
*/
|
||||
if ($_GET["rel"] == 'prev')
|
||||
{
|
||||
// Recherche valeur pour num = numéro relevé précédent
|
||||
// Recherche valeur pour num = num<EFBFBD>ro relev<65> pr<70>c<EFBFBD>dent
|
||||
$sql = "SELECT distinct(num_releve) as num";
|
||||
$sql.= " FROM ".MAIN_DB_PREFIX."bank";
|
||||
$sql.= " WHERE num_releve < ".$_GET["num"]." AND fk_account = ".$_GET["account"];
|
||||
@ -176,7 +176,7 @@ else
|
||||
}
|
||||
elseif ($_GET["rel"] == 'next')
|
||||
{
|
||||
// Recherche valeur pour num = numéro relevé précédent
|
||||
// Recherche valeur pour num = num<EFBFBD>ro relev<65> pr<70>c<EFBFBD>dent
|
||||
$sql = "SELECT distinct(num_releve) as num";
|
||||
$sql.= " FROM ".MAIN_DB_PREFIX."bank";
|
||||
$sql.= " WHERE num_releve > ".$_GET["num"]." AND fk_account = ".$_GET["account"];
|
||||
@ -195,7 +195,7 @@ else
|
||||
}
|
||||
}
|
||||
else {
|
||||
// On veut le relevé num
|
||||
// On veut le relev<EFBFBD> num
|
||||
$num=$_GET["num"];
|
||||
}
|
||||
$ve=$_GET["ve"];
|
||||
@ -222,7 +222,7 @@ else
|
||||
print '<td> </td>';
|
||||
print "</tr>\n";
|
||||
|
||||
// Calcul du solde de départ du relev
|
||||
// Calcul du solde de d<EFBFBD>part du relev
|
||||
$sql = "SELECT sum(amount) as amount FROM ".MAIN_DB_PREFIX."bank";
|
||||
$sql.= " WHERE num_releve < ".$num." AND fk_account = ".$acct->id;
|
||||
$resql=$db->query($sql);
|
||||
@ -233,7 +233,7 @@ else
|
||||
$db->free($resql);
|
||||
}
|
||||
|
||||
// Recherche les écritures pour le relev
|
||||
// Recherche les <EFBFBD>critures pour le relev
|
||||
$sql = "SELECT b.rowid,".$db->pdate("b.dateo")." as do,".$db->pdate("b.datev")." as dv, b.amount, b.label, b.rappro, b.num_releve, b.num_chq, b.fk_type";
|
||||
$sql .= " FROM ".MAIN_DB_PREFIX."bank as b";
|
||||
$sql .= " WHERE num_releve='".$num."'";
|
||||
@ -251,7 +251,7 @@ else
|
||||
$numrows = $db->num_rows($result);
|
||||
$i = 0;
|
||||
|
||||
// Ligne Solde début releve
|
||||
// Ligne Solde d<EFBFBD>but releve
|
||||
print "<tr><td colspan=\"4\"><a href=\"releve.php?num=$num&ve=1&rel=$rel&account=".$acct->id."\"> </a></td>";
|
||||
print "<td align=\"right\" colspan=\"2\"><b>".$langs->trans("InitialBankBalance")." :</b></td><td align=\"right\"><b>".price($total)."</b></td><td> </td></tr>\n";
|
||||
|
||||
@ -281,7 +281,7 @@ else
|
||||
// Libelle
|
||||
print '<td valign="center"><a href="'.DOL_URL_ROOT.'/compta/bank/ligne.php?rowid='.$objp->rowid.'&account='.$acct->id.'">';
|
||||
$reg=array();
|
||||
eregi('\((.+)\)',$objp->label,$reg); // Si texte entouré de parenthèe on tente recherche de traduction
|
||||
eregi('\((.+)\)',$objp->label,$reg); // Si texte entour<EFBFBD> de parenth<74>e on tente recherche de traduction
|
||||
if ($reg[1] && $langs->trans($reg[1])!=$reg[1]) print $langs->trans($reg[1]);
|
||||
else print $objp->label;
|
||||
print '</a>';
|
||||
@ -354,7 +354,7 @@ else
|
||||
}
|
||||
}
|
||||
|
||||
// Catégories
|
||||
// Cat<EFBFBD>gories
|
||||
if ($ve)
|
||||
{
|
||||
$sql = "SELECT label FROM ".MAIN_DB_PREFIX."bank_categ as ct, ".MAIN_DB_PREFIX."bank_class as cl";
|
||||
@ -393,7 +393,7 @@ else
|
||||
|
||||
print "<td align=\"right\" nowrap=\"nowrap\">".price($total)."</td>\n";
|
||||
|
||||
if ($user->rights->banque->modifier)
|
||||
if ($user->rights->banque->modifier || $user->rights->banque->consolidate)
|
||||
{
|
||||
print "<td align=\"center\"><a href=\"ligne.php?rowid=$objp->rowid&account=".$acct->id."\">";
|
||||
print img_edit();
|
||||
|
||||
@ -33,7 +33,7 @@ $langs->load("banks");
|
||||
|
||||
$user->getrights('banque');
|
||||
|
||||
if (!$user->rights->banque->modifier)
|
||||
if (! $user->rights->banque->transfer)
|
||||
accessforbidden();
|
||||
|
||||
|
||||
|
||||
@ -93,7 +93,7 @@ class modBanque extends DolibarrModules
|
||||
|
||||
$r++;
|
||||
$this->rights[$r][0] = 112; // id de la permission
|
||||
$this->rights[$r][1] = 'Créer/modifier/supprimer écriture bancaire'; // libelle de la permission
|
||||
$this->rights[$r][1] = 'Créer/modifier montant/supprimer écriture bancaire'; // libelle de la permission
|
||||
$this->rights[$r][2] = 'w'; // type de la permission (déprécié à ce jour)
|
||||
$this->rights[$r][3] = 0; // La permission est-elle une permission par défaut
|
||||
$this->rights[$r][4] = 'modifier';
|
||||
@ -119,6 +119,14 @@ class modBanque extends DolibarrModules
|
||||
$this->rights[$r][3] = 0; // La permission est-elle une permission par défaut
|
||||
$this->rights[$r][4] = 'export';
|
||||
|
||||
$r++;
|
||||
$this->rights[$r][0] = 116; // id de la permission
|
||||
$this->rights[$r][1] = 'Virements entre comptes'; // libelle de la permission
|
||||
$this->rights[$r][2] = 'w'; // type de la permission (déprécié à ce jour)
|
||||
$this->rights[$r][3] = 0; // La permission est-elle une permission par défaut
|
||||
$this->rights[$r][4] = 'transfer';
|
||||
|
||||
|
||||
|
||||
// Exports
|
||||
//--------
|
||||
|
||||
Loading…
Reference in New Issue
Block a user