2003-03-11 16:27:34 +01:00
< ? PHP
/* Copyright ( C ) 2003 Rodolphe Quiedeville < rodolphe @ quiedeville . org >
2004-02-02 23:55:10 +01:00
* Copyright ( C ) 2004 Laurent Destailleur < eldy @ users . sourceforge . net >
2003-03-11 16:27:34 +01:00
*
* 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
* the Free Software Foundation ; either version 2 of the License , or
* ( at your option ) any later version .
*
* This program is distributed in the hope that it will be useful ,
* but WITHOUT ANY WARRANTY ; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE . See the
* GNU General Public License for more details .
*
* You should have received a copy of the GNU General Public License
* along with this program ; if not , write to the Free Software
* Foundation , Inc . , 59 Temple Place - Suite 330 , Boston , MA 02111 - 1307 , USA .
*
* $Id $
* $Source $
*/
require ( " ./pre.inc.php " );
2003-03-11 17:01:45 +01:00
if ( ! $user -> admin )
2004-02-15 17:49:08 +01:00
accessforbidden ();
llxHeader ();
2003-03-11 16:27:34 +01:00
$facture_addon_var = FACTURE_ADDON ;
2003-04-13 16:25:45 +02:00
$facture_addon_var_pdf = FACTURE_ADDON_PDF ;
2003-05-13 21:08:04 +02:00
$facture_rib_number_var = FACTURE_RIB_NUMBER ;
2004-02-02 23:03:12 +01:00
$facture_chq_number_var = FACTURE_CHQ_NUMBER ;
2004-02-08 18:00:18 +01:00
$facture_tva_option = FACTURE_TVAOPTION ;
2003-03-11 16:27:34 +01:00
if ( $action == 'set' )
{
2004-02-15 17:49:08 +01:00
if ( dolibarr_set_const ( $db , " FACTURE_ADDON " , $value )) $facture_addon_var = $value ;
2003-03-11 16:27:34 +01:00
}
2004-02-02 23:03:12 +01:00
if ( $action == 'setribchq' )
2003-05-13 21:08:04 +02:00
{
2004-02-15 17:49:08 +01:00
if ( dolibarr_set_const ( $db , " FACTURE_RIB_NUMBER " , $rib )) $facture_rib_number_var = $rib ;
if ( dolibarr_set_const ( $db , " FACTURE_CHQ_NUMBER " , $chq )) $facture_chq_number_var = $chq ;
2003-05-13 21:08:04 +02:00
}
2003-04-13 16:25:45 +02:00
if ( $action == 'setpdf' )
{
2004-02-15 17:49:08 +01:00
if ( dolibarr_set_const ( $db , " FACTURE_ADDON_PDF " , $value )) $facture_addon_var_pdf = $value ;
2003-04-13 16:25:45 +02:00
}
2004-02-08 18:00:18 +01:00
if ( $action == 'settvaoption' )
{
2004-02-15 17:49:08 +01:00
if ( dolibarr_set_const ( $db , " FACTURE_TVAOPTION " , $optiontva )) $facture_tva_option = $optiontva ;
2004-02-08 18:00:18 +01:00
}
2003-03-11 16:27:34 +01:00
$dir = " ../includes/modules/facture/ " ;
2004-02-21 00:40:13 +01:00
print_titre ( " Configuration du module Factures " );
print " <br> " ;
2004-02-11 21:12:58 +01:00
print_titre ( " Module de num<75> rotation des factures " );
2003-03-11 16:27:34 +01:00
2004-02-15 17:49:08 +01:00
print '<table class="noborder" cellpadding="3" cellspacing="0" width=\"100%\">' ;
2003-03-11 16:27:34 +01:00
print '<TR class="liste_titre">' ;
print '<td>Nom</td>' ;
2004-02-15 17:49:08 +01:00
print '<td>Description</td>' ;
2004-02-08 18:00:18 +01:00
print '<td align="center" width="60">Activ<69> </td>' ;
print '<td width="80"> </td>' ;
2003-03-11 16:27:34 +01:00
print " </TR> \n " ;
clearstatcache ();
$handle = opendir ( $dir );
2004-02-15 17:49:08 +01:00
$var = True ;
2003-03-11 16:27:34 +01:00
while (( $file = readdir ( $handle )) !== false )
{
2003-03-11 16:37:30 +01:00
if ( is_dir ( $dir . $file ) && substr ( $file , 0 , 1 ) <> '.' && substr ( $file , 0 , 3 ) <> 'CVS' )
2003-03-11 16:27:34 +01:00
{
2004-02-15 17:49:08 +01:00
$var = ! $var ;
print '<tr ' . $bc [ $var ] . '><td width=\"100\">' ;
2003-03-11 16:27:34 +01:00
echo " $file " ;
print " </td><td> \n " ;
$func = $file . " _get_num_explain " ;
print $func ();
print '</td><td align="center">' ;
if ( $facture_addon_var == " $file " )
{
2003-06-24 16:36:32 +02:00
print '<img src="' . DOL_URL_ROOT . '/theme/' . $conf -> theme . '/img/tick.png" border="0"></a>' ;
2004-02-08 18:00:18 +01:00
print '</td><td align="center">' ;
print ' ' ;
2003-03-11 16:27:34 +01:00
}
else
{
2004-02-08 18:00:18 +01:00
print ' ' ;
print '</td><td align="center">' ;
print '<a href="facture.php?action=set&value=' . $file . '">Activer</a>' ;
2003-03-11 16:27:34 +01:00
}
2004-02-08 18:00:18 +01:00
print " </td></tr> \n " ;
2003-03-11 16:27:34 +01:00
}
}
closedir ( $handle );
print '</table>' ;
2003-04-13 16:25:45 +02:00
/*
* PDF
*/
print_titre ( " Mod<EFBFBD> les de facture pdf " );
2004-02-15 17:49:08 +01:00
print '<table class="noborder" cellpadding="3" cellspacing="0" width=\"100%\">' ;
print '<tr class="liste_titre">' ;
2003-04-13 16:25:45 +02:00
print '<td>Nom</td>' ;
2004-02-15 17:49:08 +01:00
print '<td>Description</td>' ;
2004-02-08 18:00:18 +01:00
print '<td align="center" width="60">Activ<69> </td>' ;
print '<td width="80"> </td>' ;
2004-02-15 17:49:08 +01:00
print " </tr> \n " ;
2003-04-13 16:25:45 +02:00
clearstatcache ();
$handle = opendir ( $dir );
2004-02-15 17:49:08 +01:00
$var = True ;
2003-04-13 16:25:45 +02:00
while (( $file = readdir ( $handle )) !== false )
{
if ( substr ( $file , strlen ( $file ) - 12 ) == '.modules.php' && substr ( $file , 0 , 4 ) == 'pdf_' )
{
2004-02-15 17:49:08 +01:00
$var = ! $var ;
2003-04-13 16:25:45 +02:00
$name = substr ( $file , 4 , strlen ( $file ) - 16 );
$classname = substr ( $file , 0 , strlen ( $file ) - 12 );
2004-02-15 17:49:08 +01:00
print '<tr ' . $bc [ $var ] . '><td width=\"100\">' ;
2003-04-13 16:25:45 +02:00
echo " $name " ;
print " </td><td> \n " ;
require_once ( $dir . $file );
$obj = new $classname ();
print $obj -> description ;
print '</td><td align="center">' ;
2003-04-13 16:32:45 +02:00
if ( $facture_addon_var_pdf == " $name " )
2003-04-13 16:25:45 +02:00
{
2003-06-24 16:36:32 +02:00
print '<img src="' . DOL_URL_ROOT . '/theme/' . $conf -> theme . '/img/tick.png" border="0"></a>' ;
2004-02-08 18:00:18 +01:00
print '</td><td align="center">' ;
print ' ' ;
2003-04-13 16:25:45 +02:00
}
else
{
2004-02-08 18:00:18 +01:00
print ' ' ;
print '</td><td align="center">' ;
print '<a href="facture.php?action=setpdf&value=' . $name . '">Activer</a>' ;
2003-04-13 16:25:45 +02:00
}
2004-02-08 18:00:18 +01:00
print " </td></tr> \n " ;
2003-04-13 16:25:45 +02:00
}
}
closedir ( $handle );
print '</table>' ;
2003-03-11 16:27:34 +01:00
2003-05-13 21:08:04 +02:00
/*
*
*
*/
2004-02-02 23:03:12 +01:00
print_titre ( " Mode de r<> glement <20> afficher sur les factures " );
2003-05-13 21:08:04 +02:00
2004-02-15 17:49:08 +01:00
print '<table class="noborder" cellpadding="3" cellspacing="0" width=\"100%\">' ;
2004-02-02 23:03:12 +01:00
2004-02-15 17:49:08 +01:00
print '<form action="' . $PHP_SELF . '" method="post">' ;
2004-02-02 23:03:12 +01:00
print '<input type="hidden" name="action" value="setribchq">' ;
print '<tr class="liste_titre">' ;
2004-02-08 18:00:18 +01:00
print '<td>Mode r<> glement <20> proposer</td>' ;
print '<td><input type="submit" value="Modifier"></td>' ;
2004-02-02 23:03:12 +01:00
print " </tr> \n " ;
2004-02-15 17:49:08 +01:00
print '<tr ' . $bc [ True ] . '>' ;
2004-02-08 18:00:18 +01:00
print " <td>Proposer paiement par RIB sur le compte</td> " ;
2004-02-22 21:50:22 +01:00
print " <td> " ;
2004-02-01 01:55:46 +01:00
$sql = " SELECT rowid, label FROM " . MAIN_DB_PREFIX . " bank_account " ;
2004-02-15 17:49:08 +01:00
$var = True ;
2003-05-13 21:08:04 +02:00
if ( $db -> query ( $sql ))
{
2004-02-22 21:50:22 +01:00
$num = $db -> num_rows ();
$i = 0 ;
if ( $num > 0 ) {
print " <select name= \" rib \" > " ;
print '<option value="0">Ne pas afficher</option>' ;
while ( $i < $num )
{
$var =! $var ;
$row = $db -> fetch_row ( $i );
if ( $facture_rib_number_var == $row [ 0 ])
{
print '<option value="' . $row [ 0 ] . '" selected>' . $row [ 1 ] . '</option>' ;
}
else
{
print '<option value="' . $row [ 0 ] . '">' . $row [ 1 ] . '</option>' ;
}
$i ++ ;
}
print " </select> " ;
} else {
print " <i>Aucun compte bancaire encore cr<63> <72> </i> " ;
2003-05-13 21:08:04 +02:00
}
}
2004-02-22 21:50:22 +01:00
print " </td></tr> " ;
2004-02-02 23:03:12 +01:00
2004-02-15 17:49:08 +01:00
print '<tr ' . $bc [ False ] . '>' ;
2004-02-08 18:00:18 +01:00
print " <td>Proposer paiement par ch<63> que <20> l'ordre et adresse du titulaire du compte</td> " ;
2004-02-22 21:50:22 +01:00
print " <td> " ;
2004-02-02 23:03:12 +01:00
$sql = " SELECT rowid, label FROM " . MAIN_DB_PREFIX . " bank_account " ;
2004-02-15 17:49:08 +01:00
$var = True ;
2004-02-02 23:03:12 +01:00
if ( $db -> query ( $sql ))
{
$num = $db -> num_rows ();
$i = 0 ;
2004-02-22 21:50:22 +01:00
if ( $num > 0 ) {
print " <select name= \" chq \" > " ;
print '<option value="0">Ne pas afficher</option>' ;
while ( $i < $num )
{
$var =! $var ;
$row = $db -> fetch_row ( $i );
if ( $facture_chq_number_var == $row [ 0 ])
2004-02-02 23:03:12 +01:00
{
print '<option value="' . $row [ 0 ] . '" selected>' . $row [ 1 ] . '</option>' ;
}
2004-02-22 21:50:22 +01:00
else
2004-02-02 23:03:12 +01:00
{
print '<option value="' . $row [ 0 ] . '">' . $row [ 1 ] . '</option>' ;
}
2004-02-22 21:50:22 +01:00
$i ++ ;
}
print " </select> " ;
} else {
print " <i>Aucun compte bancaire actif encore cr<63> <72> </i> " ;
}
2004-02-02 23:03:12 +01:00
}
2004-02-22 21:50:22 +01:00
print " </td></tr> " ;
2004-02-02 23:03:12 +01:00
2003-05-13 21:08:04 +02:00
print " </form> " ;
2004-02-02 23:03:12 +01:00
print " </table> " ;
2003-05-13 21:08:04 +02:00
$db -> close ();
2003-06-22 14:16:11 +02:00
/*
* Repertoire
*/
print_titre ( " Chemins d'acc<63> s aux documents " );
2004-02-15 17:49:08 +01:00
print '<table class="noborder" cellpadding="3" cellspacing="0" width=\"100%\">' ;
print '<tr class="liste_titre">' ;
2003-06-22 14:16:11 +02:00
print '<td>Nom</td><td>Valeur</td>' ;
2004-02-15 17:49:08 +01:00
print " </tr> \n " ;
print '<tr ' . $bc [ True ] . '><td width=\"140\">R<> pertoire</td><td>' . FAC_OUTPUTDIR . '</td></tr>' ;
print '<tr ' . $bc [ False ] . '><td width=\"140\">URL</td><td><a href="' . FAC_OUTPUT_URL . '">' . FAC_OUTPUT_URL . '</a></td></tr>' ;
2003-06-22 14:16:11 +02:00
print " </table> " ;
2004-02-08 18:00:18 +01:00
/*
* Options fiscale
*/
print_titre ( " Options fiscales de facturation de la TVA " );
2004-02-15 17:49:08 +01:00
print '<table class="noborder" cellpadding="3" cellspacing="0" width=\"100%\">' ;
print '<form action="' . $PHP_SELF . '" method="post">' ;
2004-02-08 18:00:18 +01:00
print '<input type="hidden" name="action" value="settvaoption">' ;
print '<TR class="liste_titre">' ;
print '<td>Option</td><td>Description</td>' ;
print '<td><input type="submit" value="Modifier"></td>' ;
print " </TR> \n " ;
2004-02-15 17:49:08 +01:00
print " <tr " . $bc [ True ] . " ><td width= \" 140 \" ><input type= \" radio \" name= \" optiontva \" value= \" reel \" " . ( $facture_tva_option != " franchise " ? " checked " : " " ) . " > Option r<> el</td> " ;
2004-02-08 18:00:18 +01:00
print " <td colspan= \" 2 \" >L'option 'r<> el' est la plus courante. Elle est <20> destination des entreprises et professions lib<69> rales. \n Chaque produits/service vendu est soumis <20> la TVA (Dolibarr propose le taux standard par d<> faut <20> la cr<63> ation d'une facture). Cette derni<6E> re est r<> cup<75> r<EFBFBD> e l'ann<6E> e suivante suite <20> la d<> claration TVA pour les produits/services achet<65> s et est revers<72> e <20> l'<27> tat pour les produits/services vendus.</td></tr> \n " ;
2004-02-15 17:49:08 +01:00
print " <tr " . $bc [ False ] . " ><td width= \" 140 \" ><input type= \" radio \" name= \" optiontva \" value= \" franchise \" " . ( $facture_tva_option == " franchise " ? " checked " : " " ) . " > Option franchise</td> " ;
2004-02-11 21:17:50 +01:00
print " <td colspan= \" 2 \" >L'option 'franchise' est utilis<69> e par les particuliers ou professions lib<69> rales <20> titre occasionnel avec de petits chiffres d'affaires. \n Chaque produits/service vendu est soumis <20> une TVA de 0 (Dolibarr propose le taux 0 par d<> faut <20> la cr<63> ation d'une facture cliente). Il n'y a pas de d<> claration ou r<> cup<75> ration de TVA, et les factures qui g<> rent l'option affichent la mention obligatoire \" TVA non applicable - art-293B du CGI \" .</td></tr> \n " ;
2004-02-08 18:00:18 +01:00
print " </form> " ;
print " </table> " ;
2003-06-22 14:16:11 +02:00
llxFooter ( " <em>Dernière modification $Date $ révision $Revision $ </em> " );
2003-03-11 16:27:34 +01:00
?>