* Copyright (C) 2004-2008 Laurent Destailleur * Copyright (C) 2005-2009 Regis Houssin * * 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, see . */ /** * \file htdocs/admin/taxes.php * \ingroup tax * \brief Page de configuration du module tax * \version $Id: taxes.php,v 1.10 2011/07/31 22:23:24 eldy Exp $ */ require("../main.inc.php"); require_once(DOL_DOCUMENT_ROOT."/lib/admin.lib.php"); $langs->load('admin'); $langs->load('compta'); $langs->load('taxes'); if (!$user->admin) accessforbidden(); /* * View */ llxHeader(); // 0=normal, 1=option vat for services is on debit $tax_mode = empty($conf->global->TAX_MODE)?0:$conf->global->TAX_MODE; // TAX_MODE=0 (most cases): // Buy Sell // Product On delivery On delivery // Service On payment On payment // TAX_MODE=1 (option): // Buy Sell // Product On delivery On delivery // Service On invoice On invoice if ($_POST['action'] == 'settaxmode') { $tax_mode = $_POST['tax_mode']; if (! dolibarr_set_const($db, 'TAX_MODE', $tax_mode,'chaine',0,'',$conf->entity)) { print $db->error(); } if ($tax_mode == 0) { if (! dolibarr_set_const($db, 'TAX_MODE_SELL_PRODUCT', 'invoice','chaine',0,'',$conf->entity)) { print $db->error(); } if (! dolibarr_set_const($db, 'TAX_MODE_BUY_PRODUCT', 'invoice','chaine',0,'',$conf->entity)) { print $db->error(); } if (! dolibarr_set_const($db, 'TAX_MODE_SELL_SERVICE', 'payment','chaine',0,'',$conf->entity)) { print $db->error(); } if (! dolibarr_set_const($db, 'TAX_MODE_BUY_SERVICE', 'payment','chaine',0,'',$conf->entity)) { print $db->error(); } } if ($tax_mode == 1) { if (! dolibarr_set_const($db, 'TAX_MODE_SELL_PRODUCT', 'invoice','chaine',0,'',$conf->entity)) { print $db->error(); } if (! dolibarr_set_const($db, 'TAX_MODE_BUY_PRODUCT', 'invoice','chaine',0,'',$conf->entity)) { print $db->error(); } if (! dolibarr_set_const($db, 'TAX_MODE_SELL_SERVICE', 'invoice','chaine',0,'',$conf->entity)) { print $db->error(); } if (! dolibarr_set_const($db, 'TAX_MODE_BUY_SERVICE', 'invoice','chaine',0,'',$conf->entity)) { print $db->error(); } } } if ($_POST['action'] == 'update' || $_POST['action'] == 'add') { if (! dolibarr_set_const($db, $_POST['constname'], $_POST['constvalue'], $typeconst[$_POST['consttype']], 0, isset($_POST['constnote']) ? $_POST['constnote'] : '',$conf->entity)); { print $db->error(); } } if ($_GET['action'] == 'delete') { if (! dolibarr_del_const($db, $_GET['constname'],$conf->entity)); { print $db->error(); } } /* * Affichage page */ $html=new Form($db); $linkback=''.$langs->trans("BackToModuleList").''; print_fiche_titre($langs->trans('TaxSetup'),$linkback,'setup'); print '
'; if (empty($mysoc->tva_assuj)) { print $langs->trans("YourCompanyDoesNotUseVAT").'
'; } else { print ''; // Cas des parametres TAX_MODE_SELL/BUY_SERVICE/PRODUCT print ''; print ''; print ''; print ''; print ''; print ''; print "\n"; print ''; print '\n"; print ''; print '\n"; print ''; print "
'.$langs->trans('OptionVatMode').''.$langs->trans('Description').'
'.$langs->trans('OptionVATDefault').''.nl2br($langs->trans('OptionVatDefaultDesc')); print "
'.$langs->trans('OptionVATDebitOption').''.nl2br($langs->trans('OptionVatDebitOptionDesc'))."
\n"; print '

'; print_fiche_titre($langs->trans("SummaryOfVatExigibilityUsedByDefault"),'',''); //print ' ('.$langs->trans("CanBeChangedWhenMakingInvoice").')'; print ''; print ''; // Products print ''; print ''; print ''; // Services print ''; print ''; print ''; print '
 '.$langs->trans("Buy").''.$langs->trans("Sell").'
'.$langs->trans("Product").''; print $langs->trans("OnDelivery"); print ' ('.$langs->trans("SupposedToBeInvoiceDate").')'; print ''; print $langs->trans("OnDelivery"); print ' ('.$langs->trans("SupposedToBeInvoiceDate").')'; print '
'.$langs->trans("Services").''; if ($tax_mode == 0) { print $langs->trans("OnPayment"); print ' ('.$langs->trans("SupposedToBePaymentDate").')'; } if ($tax_mode == 1) { print $langs->trans("OnInvoice"); print ' ('.$langs->trans("InvoiceDateUsed").')'; } print ''; if ($tax_mode == 0) { print $langs->trans("OnPayment"); print ' ('.$langs->trans("SupposedToBePaymentDate").')'; } if ($tax_mode == 1) { print $langs->trans("OnInvoice"); print ' ('.$langs->trans("InvoiceDateUsed").')'; } print '
'; } $db->close(); llxFooter('$Date: 2011/07/31 22:23:24 $ - $Revision: 1.10 $'); ?>