Uniformisation du code pour la gestion des numrotation et modules entre factures, propales, fichieinter, commandes, dons

This commit is contained in:
Laurent Destailleur
2005-11-11 20:11:57 +00:00
parent 0def64a811
commit 9c7ea2d111
28 changed files with 408 additions and 304 deletions

View File

@@ -28,22 +28,22 @@
*/
require("./pre.inc.php");
include_once(DOL_DOCUMENT_ROOT.'/includes/modules/propale/modules_propale.php');
if (defined("PROPALE_ADDON") && is_readable(DOL_DOCUMENT_ROOT ."/includes/modules/propale/".PROPALE_ADDON.".php"))
{
require_once(DOL_DOCUMENT_ROOT ."/includes/modules/propale/".PROPALE_ADDON.".php");
}
$langs->load("propal");
$langs->load("projects");
$langs->load("companies");
$user->getrights('propale');
$user->getrights('fichinter');
$user->getrights('commande');
$user->getrights('projet');
if (defined("PROPALE_ADDON") && is_readable(DOL_DOCUMENT_ROOT ."/includes/modules/propale/".PROPALE_ADDON.".php"))
{
require(DOL_DOCUMENT_ROOT ."/includes/modules/propale/".PROPALE_ADDON.".php");
}
llxHeader();
@@ -171,7 +171,6 @@ if ($_GET["action"] == 'create')
print '<td>Mod<6F>le</td>';
print '<td>';
include_once(DOL_DOCUMENT_ROOT.'/includes/modules/propale/modules_propale.php');
$model=new ModelePDFPropales();
$liste=$model->liste_modeles($db);
$form->select_array("modelpdf",$liste,$conf->global->PROPALE_ADDON_PDF);

View File

@@ -29,6 +29,7 @@
*/
require("./pre.inc.php");
require_once(DOL_DOCUMENT_ROOT ."/includes/modules/propale/modules_propale.php");
$user->getrights('propale');

View File

@@ -18,7 +18,6 @@
*
* $Id$
* $Source$
*
*/
/**
@@ -67,6 +66,7 @@ if ($_POST["action"] == 'update')
if ($don->update($user) > 0)
{
Header("Location: fiche.php?rowid=".$don->id);
exit;
}
}
else
@@ -80,7 +80,6 @@ if ($_POST["action"] == 'add')
if ($_POST["amount"] > 0)
{
$don = new Don($db);
$don->prenom = $_POST["prenom"];
@@ -102,6 +101,7 @@ if ($_POST["action"] == 'add')
if ($don->create($user) > 0)
{
Header("Location: index.php");
exit;
}
}
else
@@ -116,6 +116,7 @@ if ($_GET["action"] == 'delete')
$don = new Don($db);
$don->delete($_GET["rowid"]);
Header("Location: liste.php");
exit;
}
if ($_POST["action"] == 'commentaire')
{
@@ -129,6 +130,7 @@ if ($_GET["action"] == 'valid_promesse')
if ($don->valid_promesse($_GET["rowid"], $user->id))
{
Header("Location: liste.php");
exit;
}
}
if ($_GET["action"] == 'set_payed')
@@ -137,6 +139,7 @@ if ($_GET["action"] == 'set_payed')
if ($don->set_paye($_GET["rowid"], $modepaiement))
{
Header("Location: liste.php");
exit;
}
}
if ($_GET["action"] == 'set_encaisse')
@@ -145,9 +148,19 @@ if ($_GET["action"] == 'set_encaisse')
if ($don->set_encaisse($_GET["rowid"]))
{
Header("Location: liste.php");
exit;
}
}
/*
* G<>n<EFBFBD>rer ou reg<65>n<EFBFBD>rer le document
*/
if ($_GET['action'] == 'build')
{
require_once(DOL_DOCUMENT_ROOT ."/includes/modules/dons/modules_don.php");
don_create($db, $_GET['rowid']);
}
llxHeader();
@@ -161,8 +174,8 @@ $html=new Form($db);
/* */
/* ************************************************************************** */
if ($_GET["action"] == 'create') {
if ($_GET["action"] == 'create')
{
print_titre($langs->trans("AddDonation"));
print '<form action="fiche.php" method="post">';
@@ -174,7 +187,10 @@ if ($_GET["action"] == 'create') {
$html->select_date();
print '</td>';
print '<td rowspan="12" valign="top">'.$langs->trans("Comments").' :<br>';
$nbrows=11;
if ($conf->projet->enabled) $nbrows++;
print '<td rowspan="'.$nbrows.'" valign="top">'.$langs->trans("Comments").' :<br>';
print "<textarea name=\"comment\" wrap=\"soft\" cols=\"40\" rows=\"15\"></textarea></td></tr>";
print "<tr><td>".$langs->trans("PaymentMode")."</td><td>\n";
@@ -210,7 +226,6 @@ if ($_GET["action"] == 'create') {
print "<tr>".'<td colspan="3" align="center"><input type="submit" value="'.$langs->trans("Save").'"></td></tr>';
print "</table>\n";
print "</form>\n";
}
@@ -222,7 +237,6 @@ if ($_GET["action"] == 'create') {
if ($_GET["rowid"] && $_GET["action"] == 'edit')
{
$don = new Don($db);
$don->id = $_GET["rowid"];
$don->fetch($_GET["rowid"]);
@@ -245,13 +259,17 @@ if ($_GET["rowid"] && $_GET["action"] == 'edit')
$html->select_date($don->date);
print '</td>';
print '<td rowspan="12" valign="top">'.$langs->trans("Comments").' :<br>';
$nbrows=12;
if ($conf->projet->enabled) $nbrows++;
print '<td rowspan="'.$nbrows.'" valign="top">'.$langs->trans("Comments").' :<br>';
print "<textarea name=\"comment\" wrap=\"soft\" cols=\"40\" rows=\"15\">$don->commentaire</textarea></td></tr>";
if ($conf->projet->enabled)
{
print "<tr><td>".$langs->trans("Project")."</td><td><select name=\"projetid\">\n";
$sql = "SELECT rowid, libelle FROM ".MAIN_DB_PREFIX."don_projet ORDER BY rowid";
$sql = "SELECT rowid, libelle FROM ".MAIN_DB_PREFIX."don_projet";
$sql.= " ORDER BY rowid";
if ($db->query($sql))
{
$num = $db->num_rows();
@@ -282,7 +300,7 @@ if ($_GET["rowid"] && $_GET["action"] == 'edit')
print "<tr>".'<td>'.$langs->trans("Firstname").'</td><td><input type="text" name="prenom" size="40" value="'.$don->prenom.'"></td></tr>';
print "<tr>".'<td>'.$langs->trans("Lastname").'</td><td><input type="text" name="nom" size="40" value="'.$don->nom.'"></td></tr>';
print "<tr>".'<td>'.$langs->trans("Address").'</td><td>';
print '<textarea name="adresse" wrap="soft" cols="40" rows="3">'.$don->adresse.'</textarea></td></tr>';
print '<textarea name="adresse" wrap="soft" cols="40" rows="'.ROWS_3.'">'.$don->adresse.'</textarea></td></tr>';
print "<tr>".'<td>'.$langs->trans("Zip").' / '.$langs->trans("Town").'</td><td><input type="text" name="cp" size="8" value="'.$don->cp.'"> <input type="text" name="ville" size="40" value="'.$don->ville.'"></td></tr>';
print "<tr>".'<td>'.$langs->trans("Country").'</td><td><input type="text" name="pays" size="40" value="'.$don->pays.'"></td></tr>';
print "<tr>".'<td>'.$langs->trans("EMail").'</td><td><input type="text" name="email" size="40" value="'.$don->email.'"></td></tr>';
@@ -293,7 +311,9 @@ if ($_GET["rowid"] && $_GET["action"] == 'edit')
$paiement->select("modepaiement","CRDT");
print "</td></tr>\n";
print "<tr>".'<td colspan="3" align="center"><input type="submit" value="'.$langs->trans("Save").'"></td></tr>';
print "<tr>".'<td>'.$langs->trans("Status").'</td><td>'.$don->getLibStatut().'</td></tr>';
print "<tr>".'<td colspan="3" align="center"><input type="submit" class="button" value="'.$langs->trans("Save").'"></td></tr>';
print "</table>\n";
print "</form>\n";
@@ -310,7 +330,6 @@ if ($_GET["rowid"] && $_GET["action"] == 'edit')
/* ************************************************************ */
if ($_GET["rowid"] && $_GET["action"] != 'edit')
{
$don = new Don($db);
$don->id = $_GET["rowid"];
$don->fetch($_GET["rowid"]);
@@ -331,10 +350,14 @@ if ($_GET["rowid"] && $_GET["action"] != 'edit')
print dolibarr_print_date($don->date,"%d %B %Y");
print "</td>";
print '<td rowspan="12" valign="top" width="50%">'.$langs->trans("Comments").' :<br>';
$nbrows=12;
if ($conf->projet->enabled) $nbrows++;
print '<td rowspan="'.$nbrows.'" valign="top" width="50%">'.$langs->trans("Comments").' :<br>';
print nl2br($don->commentaire).'</td></tr>';
if ($conf->projet->enabled) {
if ($conf->projet->enabled)
{
print "<tr>".'<td>'.$langs->trans("Project").'</td><td>'.$don->projet.'</td></tr>';
}
@@ -354,6 +377,8 @@ if ($_GET["rowid"] && $_GET["action"] != 'edit')
print $don->modepaiement;
print "</td></tr>\n";
print "<tr>".'<td>'.$langs->trans("Status").'</td><td>'.$don->getLibStatut().'</td></tr>';
print "</table>\n";
print "</form>\n";
@@ -369,7 +394,7 @@ if ($_GET["rowid"] && $_GET["action"] != 'edit')
if ($don->statut == 0)
{
print '<a class="butAction" href="fiche.php?rowid='.$don->id.'&action=valid_promesse">'.$langs->trans("Valid").'</a>';
print '<a class="butAction" href="fiche.php?rowid='.$don->id.'&action=valid_promesse">'.$langs->trans("ValidPromess").'</a>';
}
// \todo G<>rer action <20>mettre paiement
@@ -385,7 +410,7 @@ if ($_GET["rowid"] && $_GET["action"] != 'edit')
if ($don->statut == 2 || $don->statut == 3)
{
print "<a class=\"butAction\" href=\"formulaire/".DONS_FORM."?rowid=$don->id\">".$langs->trans("Form")."</a>";
print ' <a class="butAction" href="fiche.php?rowid='.$don->id.'&amp;action=build">'.$langs->trans('BuildDoc').'</a>';
}
if ($don->statut == 0)
@@ -401,5 +426,6 @@ if ($_GET["rowid"] && $_GET["action"] != 'edit')
$db->close();
llxFooter("<em>Derni&egrave;re modification $Date$ r&eacute;vision $Revision$</em>");
llxFooter('$Date$ - $Revision$');
?>

View File

@@ -30,15 +30,7 @@
*/
require('./pre.inc.php');
$user->getrights('facture');
$user->getrights('banque');
if (!$user->rights->facture->lire)
accessforbidden();
$langs->load('bills');
require_once(DOL_DOCUMENT_ROOT ."/includes/modules/facture/modules_facture.php");
require_once(DOL_DOCUMENT_ROOT.'/facture.class.php');
require_once(DOL_DOCUMENT_ROOT.'/paiement.class.php');
require_once(DOL_DOCUMENT_ROOT.'/lib/CMailFile.class.php');
@@ -47,6 +39,13 @@ if ($conf->propal->enabled) require_once(DOL_DOCUMENT_ROOT.'/propal.class.php'
if ($conf->contrat->enabled) require_once(DOL_DOCUMENT_ROOT.'/contrat/contrat.class.php');
if ($conf->commande->enabled) require_once(DOL_DOCUMENT_ROOT.'/commande/commande.class.php');
$user->getrights('facture');
$user->getrights('banque');
if (!$user->rights->facture->lire)
accessforbidden();
$langs->load('bills');
$sall=isset($_GET['sall'])?$_GET['sall']:$_POST['sall'];
if (isset($_GET['msg'])) { $msg=urldecode($_GET['msg']); }
@@ -404,10 +403,7 @@ if ($_POST['action'] == 'confirm_canceled' && $_POST['confirm'] == 'yes')
{
$fac = new Facture($db);
$fac->fetch($_GET['facid']);
$result = $fac->set_canceled();
$_GET['facid'] = 0 ;
Header('Location: facture.php');
exit;
$result = $fac->set_canceled($user);
}
}
@@ -552,8 +548,6 @@ if ($_POST['action'] == 'send' || $_POST['action'] == 'relance')
*/
if ($_GET['action'] == 'pdf')
{
// Generation de la facture d<>finie dans /includes/modules/facture/modules_facture.php
// G<>n<EFBFBD>re <20>galement le fichier meta dans le meme r<>pertoire (pour faciliter les recherches et indexation)
facture_pdf_create($db, $_GET['facid']);
}

View File

@@ -1,6 +1,6 @@
<?php
/* Copyright (C) 2002 Rodolphe Quiedeville <rodolphe@quiedeville.org>
* Copyright (C) 2004 Laurent Destailleur <eldy@users.sourceforge.net>
* Copyright (C) 2004-2005 Laurent Destailleur <eldy@users.sourceforge.net>
*
* 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
@@ -18,7 +18,6 @@
*
* $Id$
* $Source$
*
*/
/**
@@ -58,26 +57,33 @@ class Don
var $projet;
var $errorstr;
/*
* Statut du don
* 0 : promesse non valid<69>e
* 1 : promesse valid<69>e
* 2 : don valid<69>
* 3 : don pay<61>
*
*/
/*
/**
* \brief Constructeur
* \param DB handler d'acc<63>s base
* \param soc_idp id soci<63>t<EFBFBD>
* \param soc_idp id soci<63>t
*/
function Don($DB, $soc_idp="")
{
global $langs;
$this->db = $DB ;
$this->modepaiementid = 0;
$langs->load("donations");
$this->labelstatut[0]=$langs->trans("DonationStatusPromessNotValidated");
$this->labelstatut[1]=$langs->trans("DonationStatusPromessValidated");
$this->labelstatut[2]=$langs->trans("DonationStatusValidated");
$this->labelstatut[3]=$langs->trans("DonationStatusPayed");
}
/**
* \brief Retourne le libell<6C> du statut d'une propale (brouillon, valid<69>e, ...)
* \return string Libell<6C>
*/
function getLibStatut()
{
return $this->labelstatut[$this->statut];
}
/*
*
@@ -279,16 +285,18 @@ class Don
/*
* \brief Charge l'objet don en m<>moire depuis la base de donn<6E>e
* \param rowid id du don <20> charger
*
* \param rowid Id du don <20> charger
* \return int <0 si ko, >0 si ok
*/
function fetch($rowid)
{
$sql = "SELECT d.rowid, ".$this->db->pdate("d.datec")." as datec,";
$sql.= " ".$this->db->pdate("d.datedon")." as datedon,";
$sql.= " d.prenom, d.nom, d.societe, d.amount, p.libelle as projet, d.fk_statut, d.adresse, d.cp, d.ville, d.pays, d.public, d.amount, d.fk_paiement, d.note, cp.libelle, d.email, d.fk_don_projet";
$sql.= " FROM ".MAIN_DB_PREFIX."don as d, ".MAIN_DB_PREFIX."c_paiement as cp LEFT JOIN ".MAIN_DB_PREFIX."don_projet as p";
$sql.= " ON p.rowid = d.fk_don_projet WHERE cp.id = d.fk_paiement AND d.rowid = $rowid";
$sql.= " FROM ".MAIN_DB_PREFIX."c_paiement as cp, ".MAIN_DB_PREFIX."don as d";
$sql.= " LEFT JOIN ".MAIN_DB_PREFIX."don_projet as p";
$sql.= " ON p.rowid = d.fk_don_projet";
$sql.= " WHERE cp.id = d.fk_paiement AND d.rowid = ".$rowid;
if ( $this->db->query( $sql) )
{
@@ -317,10 +325,12 @@ class Don
$this->amount = $obj->amount;
$this->commentaire = stripslashes($obj->note);
}
return 1;
}
else
{
dolibarr_print_error($this->db);
return -1;
}
}

View File

@@ -767,7 +767,7 @@ class Facture
dolibarr_syslog("Facture.class.php::set_canceled rowid=".$this->id);
$sql = 'UPDATE '.MAIN_DB_PREFIX.'facture';
$sql.= ' SET fk_statut=3 WHERE rowid = '.$this->id;
$resql = $this->db->query( $sql);
$resql = $this->db->query($sql);
if ($resql)
{
@@ -1376,7 +1376,7 @@ class Facture
}
else
{
dolibarr_print_error($db,"modules_facture::getNextNumRef ".$obj->error);
dolibarr_print_error($db,"Facture::getNextNumRef ".$obj->error);
return "";
}
}

View File

@@ -111,7 +111,24 @@ class ModeleNumRefCommandes
return $langs->trans("NoExample");
}
/** \brief Test si les num<75>ros d<>j<EFBFBD> en vigueur dans la base ne provoquent pas de
* de conflits qui empechera cette num<75>rotation de fonctionner.
* \return boolean false si conflit, true si ok
*/
function canBeActivated()
{
return true;
}
/** \brief Renvoi prochaine valeur attribu<62>e
* \return string Valeur
*/
function getNextValue()
{
global $langs;
return $langs->trans("NotAvailable");
}
}
?>

View File

@@ -29,6 +29,8 @@
\version $Revision$
*/
require_once(DOL_DOCUMENT_ROOT ."/includes/modules/facture/modules_facture.php");
/**
\class pdf_bernique

View File

@@ -28,6 +28,8 @@
\version $Revision$
*/
require_once(DOL_DOCUMENT_ROOT ."/includes/modules/facture/modules_facture.php");
/** \class pdf_bigorneau
\brief Classe permettant de g<>n<EFBFBD>rer les factures au mod<6F>le Bigorneau

View File

@@ -28,6 +28,8 @@
\version $Revision$
*/
require_once(DOL_DOCUMENT_ROOT ."/includes/modules/facture/modules_facture.php");
/** \class pdf_bulot
\brief Classe permettant de g<>n<EFBFBD>rer les factures au mod<6F>le Bulot

View File

@@ -28,6 +28,7 @@
\version $Revision$
*/
require_once(DOL_DOCUMENT_ROOT ."/includes/modules/facture/modules_facture.php");
require_once(DOL_DOCUMENT_ROOT."/product.class.php");

View File

@@ -29,6 +29,8 @@
\version $Revision$
*/
require_once(DOL_DOCUMENT_ROOT ."/includes/modules/facture/modules_facture.php");
/**
\class pdf_huitre

View File

@@ -30,6 +30,7 @@
*/
require_once(DOL_DOCUMENT_ROOT."/product.class.php");
require_once(DOL_DOCUMENT_ROOT ."/includes/modules/facture/modules_facture.php");
/**

View File

@@ -28,6 +28,8 @@
\version $Revision$
*/
require_once(DOL_DOCUMENT_ROOT ."/includes/modules/facture/modules_facture.php");
/** \class pdf_tourteau
\brief Classe permettant de g<>n<EFBFBD>rer les factures au mod<6F>le Tourteau

View File

@@ -116,6 +116,24 @@ class ModeleNumRefFicheinter
return $langs->trans("NoExample");
}
/** \brief Test si les num<75>ros d<>j<EFBFBD> en vigueur dans la base ne provoquent pas de
* de conflits qui empechera cette num<75>rotation de fonctionner.
* \return boolean false si conflit, true si ok
*/
function canBeActivated()
{
return true;
}
/** \brief Renvoi prochaine valeur attribu<62>e
* \return string Valeur
*/
function getNextValue()
{
global $langs;
return $langs->trans("NotAvailable");
}
}

View File

@@ -1,6 +1,6 @@
<?php
/* Copyright (C) 2003 Rodolphe Quiedeville <rodolphe@quiedeville.org>
* Copyright (C) 2004 Laurent Destailleur <eldy@users.sourceforge.net>
* Copyright (C) 2004-2005 Laurent Destailleur <eldy@users.sourceforge.net>
*
* 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
@@ -19,7 +19,6 @@
*
* $Id$
* $Source$
*
*/
/**
@@ -119,6 +118,15 @@ class ModeleNumRefPropales
return true;
}
/** \brief Renvoi prochaine valeur attribu<62>e
* \return string Valeur
*/
function getNextValue()
{
global $langs;
return $langs->trans("NotAvailable");
}
}

View File

@@ -27,6 +27,8 @@
\version $Revision$
*/
require_once(DOL_DOCUMENT_ROOT ."/includes/modules/propale/modules_propale.php");
/** \class pdf_propale_adytek
\brief Classe permettant de g<>n<EFBFBD>rer les propales au mod<6F>le Adytek

View File

@@ -28,6 +28,7 @@
\version $Revision$
*/
require_once(DOL_DOCUMENT_ROOT ."/includes/modules/propale/modules_propale.php");
require_once(DOL_DOCUMENT_ROOT."/product.class.php");

View File

@@ -27,6 +27,8 @@
\version $Revision$
*/
require_once(DOL_DOCUMENT_ROOT ."/includes/modules/propale/modules_propale.php");
/** \class pdf_propale_bleu
\brief Classe permettant de g<>n<EFBFBD>rer les propales au mod<6F>le Bleu

View File

@@ -27,6 +27,8 @@
\version $Revision$
*/
require_once(DOL_DOCUMENT_ROOT ."/includes/modules/propale/modules_propale.php");
/** \class pdf_propale_jaune
\brief Classe permettant de g<>n<EFBFBD>rer les propales au mod<6F>le Jaune

View File

@@ -28,6 +28,8 @@
\version $Revision$
*/
require_once(DOL_DOCUMENT_ROOT ."/includes/modules/propale/modules_propale.php");
/**
\class pdf_propale_rouge

View File

@@ -28,6 +28,8 @@
\version $Revision$
*/
require_once(DOL_DOCUMENT_ROOT ."/includes/modules/propale/modules_propale.php");
/** \class pdf_propale_vert
\brief Classe permettant de g<>n<EFBFBD>rer les propales au mod<6F>le Vert

View File

@@ -32,8 +32,6 @@ Send=Send
SendRemind=Send reminder
DoPaiement=Do payment
DoPayment=Do payment
BuildPDF=Build PDF
RebuildPDF=Rebuild PDF
VAT=VAT
VATRate=VAT Rate
Amount=Amount

View File

@@ -285,6 +285,10 @@ Internals=Internal
Externals=External
Warning=Warning
Warnings=Warnings
BuildPDF=Build PDF
RebuildPDF=Rebuild PDF
BuildDoc=Build Doc
RebuildDoc=Rebuild Doc
# Countries
CountryFR=France
CountryBE=Belgium

View File

@@ -7,8 +7,6 @@ CreateBill=Cr
Send=Envoyer
SendRemind=Envoyer un rappel
DoPaiement=Emettre un paiement
BuildPDF=G<>n<EFBFBD>rer le PDF
RebuildPDF=Reg<65>n<EFBFBD>rer le PDF
VAT=TVA
VATRate=Taux TVA
Amount=Montant

View File

@@ -32,8 +32,6 @@ Send=Envoyer
SendRemind=Envoyer rappel
DoPaiement=<3D>mettre paiement
DoPayment=<3D>mettre paiement
BuildPDF=G<>n<EFBFBD>rer le PDF
RebuildPDF=Reg<65>n<EFBFBD>rer le PDF
VAT=TVA
VATRate=Taux TVA
Amount=Montant

View File

@@ -285,6 +285,10 @@ Internals=Internes
Externals=Externes
Warning=Alerte
Warnings=Alertes
BuildPDF=G<>n<EFBFBD>rer le PDF
RebuildPDF=Reg<65>n<EFBFBD>rer le PDF
BuildDoc=G<>n<EFBFBD>rer le doc
RebuildDoc=Reg<65>n<EFBFBD>rer le doc
# Countries
CountryFR=France
CountryBE=Belgique

View File

@@ -287,12 +287,18 @@ $conf->webcal->db->pass=defined('PHPWEBCALENDAR_PASS')?PHPWEBCALENDAR_PASS:'';
$conf->webcal->db->name=defined('PHPWEBCALENDAR_DBNAME')?PHPWEBCALENDAR_DBNAME:'';
$conf->facture->enabled=defined("MAIN_MODULE_FACTURE")?MAIN_MODULE_FACTURE:0;
if ($conf->facture->enabled) require_once(DOL_DOCUMENT_ROOT ."/includes/modules/facture/modules_facture.php");
// \todo Ajouter la ligne
// require_once(DOL_DOCUMENT_ROOT ."/includes/modules/facture/modules_facture.php");
// dans le fichier facturation-emission.php du module telephonie afin de pouvoir
// supprimer celles qui suivent.
if (defined("MAIN_MODULE_TELEPHONIE") && MAIN_MODULE_TELEPHONIE)
{
require_once(DOL_DOCUMENT_ROOT ."/includes/modules/facture/modules_facture.php");
}
$conf->facture->dir_output=DOL_DATA_ROOT."/facture";
$conf->facture->dir_images=DOL_DATA_ROOT."/facture/images";
if (defined('FAC_OUTPUTDIR') && FAC_OUTPUTDIR) { $conf->facture->dir_output=FAC_OUTPUTDIR; } # Pour passer outre le rep par d?faut
$conf->propal->enabled=defined("MAIN_MODULE_PROPALE")?MAIN_MODULE_PROPALE:0;
if ($conf->propal->enabled) require_once(DOL_DOCUMENT_ROOT ."/includes/modules/propale/modules_propale.php");
if (!defined("PROPALE_NEW_FORM_NB_PRODUCT")) define("PROPALE_NEW_FORM_NB_PRODUCT", 4);
$conf->propal->dir_output=DOL_DATA_ROOT."/propale";
$conf->propal->dir_images=DOL_DATA_ROOT."/propale/images";