* Copyright (C) 2013-2024 Alexandre Spangaro * Copyright (C) 2014 Florian Henry * Copyright (C) 2014 Marcos García * Copyright (C) 2014 Juanjo Menent * Copyright (C) 2015 Jean-François Ferry * Copyright (C) 2017-2018 Frédéric France * * 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 3 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/accountancy/admin/export.php * \ingroup Accountancy (Double entries) * \brief Setup page to configure accounting export module */ require '../../main.inc.php'; require_once DOL_DOCUMENT_ROOT.'/core/lib/admin.lib.php'; require_once DOL_DOCUMENT_ROOT.'/core/lib/accounting.lib.php'; require_once DOL_DOCUMENT_ROOT.'/accountancy/class/accountancyexport.class.php'; // Load translation files required by the page $langs->loadLangs(array("compta", "bills", "admin", "accountancy")); // Security access if (!$user->hasRight('accounting', 'chartofaccount')) { accessforbidden(); } $action = GETPOST('action', 'aZ09'); // Parameters ACCOUNTING_EXPORT_* $main_option = array( 'ACCOUNTING_EXPORT_PREFIX_SPEC', ); $accountancyexport = new AccountancyExport($db); $configuration = $accountancyexport->getTypeConfig(); $listparam = $configuration['param']; $listformat = $configuration['format']; $listcr = $configuration['cr']; $model_option = array( '1' => array( 'label' => 'ACCOUNTING_EXPORT_FORMAT', 'param' => $listformat, ), '2' => array( 'label' => 'ACCOUNTING_EXPORT_SEPARATORCSV', 'param' => '', ), '3' => array( 'label' => 'ACCOUNTING_EXPORT_ENDLINE', 'param' => $listcr, ), '4' => array( 'label' => 'ACCOUNTING_EXPORT_DATE', 'param' => '', ), ); /* * Actions */ if ($action == 'update') { $error = 0; $modelcsv = GETPOSTINT('ACCOUNTING_EXPORT_MODELCSV'); if (!empty($modelcsv)) { if (!dolibarr_set_const($db, 'ACCOUNTING_EXPORT_MODELCSV', $modelcsv, 'chaine', 0, '', $conf->entity)) { $error++; } //if ($modelcsv==AccountancyExport::$EXPORT_TYPE_QUADRATUS || $modelcsv==AccountancyExport::$EXPORT_TYPE_CIEL) { // dolibarr_set_const($db, 'ACCOUNTING_EXPORT_FORMAT', 'txt', 'chaine', 0, '', $conf->entity); //} } else { $error++; } foreach ($main_option as $constname) { $constvalue = GETPOST($constname, 'alpha'); if (!dolibarr_set_const($db, $constname, $constvalue, 'chaine', 0, '', $conf->entity)) { $error++; } } foreach ($listparam[$modelcsv] as $key => $value) { $constante = $key; if (strpos($constante, 'ACCOUNTING') !== false) { $constvalue = GETPOST($key, 'alpha'); if (!dolibarr_set_const($db, $constante, $constvalue, 'chaine', 0, '', $conf->entity)) { $error++; } } } if (!$error) { // reload $configuration = $accountancyexport->getTypeConfig(); $listparam = $configuration['param']; setEventMessages($langs->trans("SetupSaved"), null, 'mesgs'); } else { setEventMessages($langs->trans("Error"), null, 'errors'); } } /* * View */ $form = new Form($db); $help_url = 'EN:Module_Double_Entry_Accounting#Setup|FR:Module_Comptabilité_en_Partie_Double#Configuration'; $title = $langs->trans('ExportOptions'); llxHeader('', $title, $help_url, '', 0, 0, '', '', '', 'mod-accountancy page-admin_export'); $linkback = ''; // $linkback = '' . $langs->trans("BackToModuleList") . ''; print load_fiche_titre($langs->trans('ExportOptions'), $linkback, 'accountancy'); print "\n".''."\n"; print '
'; print ''; print ''; /* * Main Options */ print ''; print ''; print ''; print "\n"; $num = count($main_option); if ($num) { foreach ($main_option as $key) { print ''; // Param $label = $langs->trans($key); print ''; // Value print ''; } } print ''; print ''; if (!$conf->use_javascript_ajax) { print '"; } else { print ''; } print ""; $num2 = count($model_option); if ($num2) { foreach ($model_option as $key) { print ''; // Param $label = $key['label']; print ''; // Value print ''; } print "
'.$langs->trans('ExportOptions').'
'.dol_escape_htmltag($label).''; print ''; print '
'.$langs->trans("Selectmodelcsv").''; print $langs->trans("NotAvailableWhenAjaxDisabled"); print "'; $listofexporttemplates = $accountancyexport->getType(1); print $form->selectarray("ACCOUNTING_EXPORT_MODELCSV", $listofexporttemplates, getDolGlobalString('ACCOUNTING_EXPORT_MODELCSV'), 0, 0, 0, '', 0, 0, 0, '', '', 1); print '
'.$langs->trans($label).''; if (is_array($key['param'])) { print $form->selectarray($label, $key['param'], getDolGlobalString($label), 0); } else { print ''; } print '
\n"; } print '
'; print '
'; // End of page llxFooter(); $db->close();