27require
'../main.inc.php';
28require_once DOL_DOCUMENT_ROOT.
'/core/lib/admin.lib.php';
29require_once DOL_DOCUMENT_ROOT.
'/core/lib/invoice.lib.php';
30require_once DOL_DOCUMENT_ROOT.
'/compta/paiement/class/paiement.class.php';
33$langs->loadLangs(array(
"admin",
"other",
"errors",
"bills"));
39$action =
GETPOST(
'action',
'aZ09');
40$value =
GETPOST(
'value',
'alpha');
41$label =
GETPOST(
'label',
'alpha');
42$scandir =
GETPOST(
'scan_dir',
'alpha');
46 $conf->global->PAYMENT_ADDON =
'mod_payment_cicada.php';
54if ($action ==
'updateMask') {
55 $maskconstpayment =
GETPOST(
'maskconstpayment',
'aZ09');
56 $maskpayment =
GETPOST(
'maskpayment',
'alpha');
57 if ($maskconstpayment && preg_match(
'/_MASK$/', $maskconstpayment)) {
58 $res =
dolibarr_set_const($db, $maskconstpayment, $maskpayment,
'chaine', 0,
'', $conf->entity);
72if ($action ==
'setmod') {
76if ($action ==
'setparams') {
77 $freetext =
GETPOST(
'FACTURE_PAYMENTS_ON_DIFFERENT_THIRDPARTIES_BILLS',
'restricthtml');
78 $res =
dolibarr_set_const($db,
"FACTURE_PAYMENTS_ON_DIFFERENT_THIRDPARTIES_BILLS", $freetext,
'chaine', 0,
'', $conf->entity);
83 $res =
dolibarr_set_const($db,
"PAYMENTS_REPORT_GROUP_BY_MOD",
GETPOSTINT(
'PAYMENTS_REPORT_GROUP_BY_MOD'),
'chaine', 0,
'', $conf->entity);
101$dirmodels = array_merge(array(
'/'), (array) $conf->modules_parts[
'models']);
103llxHeader(
'', $langs->trans(
"BillsSetup"),
'EN:Invoice_Configuration|FR:Configuration_module_facture|ES:ConfiguracionFactura',
'', 0, 0,
'',
'',
'',
'mod-admin page-payment');
105$form =
new Form($db);
108$linkback =
'<a href="'.DOL_URL_ROOT.
'/admin/modules.php?restore_lastsearch_values=1">'.$langs->trans(
"BackToModuleList").
'</a>';
109print
load_fiche_titre($langs->trans(
"BillsSetup"), $linkback,
'title_setup');
120print
'<div class="div-table-responsive-no-min">';
121print
'<table class="noborder centpercent">';
122print
'<tr class="liste_titre">';
123print
'<td>'.$langs->trans(
"Name").
'</td>';
124print
'<td>'.$langs->trans(
"Description").
'</td>';
125print
'<td class="nowrap">'.$langs->trans(
"Example").
'</td>';
126print
'<td align="center" width="60">'.$langs->trans(
"Status").
'</td>';
127print
'<td align="center" width="16">'.$langs->trans(
"ShortInfo").
'</td>';
132foreach ($dirmodels as $reldir) {
135 $handle = opendir($dir);
136 if (is_resource($handle)) {
137 while (($file = readdir($handle)) !==
false) {
138 if (!is_dir($dir.$file) || (substr($file, 0, 1) !=
'.' && substr($file, 0, 3) !=
'CVS')) {
140 $classname = preg_replace(
'/\.php$/',
'', $file);
142 if (!is_file($dir.$filebis)) {
143 $filebis = $file.
"/".$file.
".modules.php";
144 $classname =
"mod_payment_".$file;
147 preg_match(
'/\-(.*)_(.*)$/', $classname, $reg);
148 if (!empty($reg[2]) && $reg[2] != strtoupper($mysoc->country_code)) {
152 $classname = preg_replace(
'/\-.*$/',
'', $classname);
153 if (!class_exists($classname) && is_readable($dir.$filebis) && (preg_match(
'/mod_/', $filebis) || preg_match(
'/mod_/', $classname)) && substr($filebis,
dol_strlen($filebis) - 3, 3) ==
'php') {
155 require_once $dir.$filebis;
157 $module =
new $classname($db);
158 '@phan-var-force ModeleNumRefPayments $module';
161 if ($module->version ==
'development' &&
getDolGlobalInt(
'MAIN_FEATURES_LEVEL') < 2) {
164 if ($module->version ==
'experimental' &&
getDolGlobalInt(
'MAIN_FEATURES_LEVEL') < 1) {
168 if ($module->isEnabled()) {
169 print
'<tr class="oddeven"><td width="100">';
170 echo preg_replace(
'/\-.*$/',
'', preg_replace(
'/mod_payment_/',
'', preg_replace(
'/\.php$/',
'', $file)));
173 print $module->info($langs);
178 print
'<td class="nowrap">';
179 $tmp = $module->getExample();
180 if (preg_match(
'/^Error/', $tmp)) {
181 $langs->load(
"errors");
182 print
'<div class="error">'.$langs->trans($tmp).
'</div>';
183 } elseif ($tmp ==
'NotConfigured') {
184 print
'<span class="opacitymedium">'.$langs->trans($tmp).
'</span>';
190 print
'<td class="center">';
192 if ($conf->global->PAYMENT_ADDON == $file ||
getDolGlobalString(
'PAYMENT_ADDON') .
'.php' == $file) {
193 print
img_picto($langs->trans(
"Activated"),
'switch_on');
195 print
'<a class="reposition" href="'.$_SERVER[
"PHP_SELF"].
'?action=setmod&token='.
newToken().
'&value='.preg_replace(
'/\.php$/',
'', $file).
'" alt="'.$langs->trans(
"Default").
'">'.
img_picto($langs->trans(
"Disabled"),
'switch_off').
'</a>';
200 $payment->initAsSpecimen();
204 $htmltooltip .=
''.$langs->trans(
"Version").
': <b>'.$module->getVersion().
'</b><br>';
205 $nextval = $module->getNextValue($mysoc, $payment);
206 if (
"$nextval" != $langs->trans(
"NotAvailable")) {
207 $htmltooltip .= $langs->trans(
"NextValue").
': ';
209 if (preg_match(
'/^Error/', $nextval) || $nextval ==
'NotConfigured') {
210 $nextval = $langs->trans($nextval);
212 $htmltooltip .= $nextval.
'<br>';
214 $htmltooltip .= $langs->trans($module->error).
'<br>';
218 print
'<td class="center">';
219 print $form->textwithpicto(
'', $htmltooltip, 1, 0);
222 if (!empty($module->error)) {
246print
'<form action="'.$_SERVER[
"PHP_SELF"].
'" method="POST">';
247print
'<input type="hidden" name="token" value="'.newToken().
'" />';
248print
'<input type="hidden" name="action" value="setparams" />';
250print
'<div class="div-table-responsive-no-min">';
251print
'<table class="noborder centpercent">';
252print
'<tr class="liste_titre">';
253print
'<td>'.$langs->trans(
"Parameter").
'</td>';
254print
'<td align="center" width="60">'.$langs->trans(
"Value").
'</td>';
255print
'<td width="80"> </td>';
259print
'<tr class="oddeven"><td>';
260print $langs->trans(
"PaymentOnDifferentThirdBills");
261print
'</td><td width="60" align="center">';
262print $form->selectyesno(
"FACTURE_PAYMENTS_ON_DIFFERENT_THIRDPARTIES_BILLS",
getDolGlobalInt(
'FACTURE_PAYMENTS_ON_DIFFERENT_THIRDPARTIES_BILLS'), 1);
263print
'</td><td class="right">';
267print
'<tr class="oddeven"><td>';
268print $langs->trans(
"GroupPaymentsByModOnReports");
269print
'</td><td width="60" align="center">';
270print $form->selectyesno(
"PAYMENTS_REPORT_GROUP_BY_MOD",
getDolGlobalInt(
'PAYMENTS_REPORT_GROUP_BY_MOD'), 1);
271print
'</td><td class="right">';
279print $form->buttonsSaveCancel(
"Modify",
'');
dolibarr_set_const($db, $name, $value, $type='chaine', $visible=0, $note='', $entity=1)
Insert a parameter (key,value) into database (delete old key then insert it again).
if(!defined('NOREQUIRESOC')) if(!defined( 'NOREQUIRETRAN')) if(!defined('NOTOKENRENEWAL')) if(!defined( 'NOREQUIREMENU')) if(!defined('NOREQUIREHTML')) if(!defined( 'NOREQUIREAJAX')) llxHeader()
Empty header.
Class to manage payments of customer invoices.
load_fiche_titre($title, $morehtmlright='', $picto='generic', $pictoisfullpath=0, $id='', $morecssontable='', $morehtmlcenter='')
Load a title with picto.
img_picto($titlealt, $picto, $moreatt='', $pictoisfullpath=0, $srconly=0, $notitle=0, $alt='', $morecss='', $marginleftonlyshort=2)
Show picto whatever it's its name (generic function)
GETPOSTINT($paramname, $method=0)
Return the value of a $_GET or $_POST supervariable, converted into integer.
dol_get_fiche_head($links=array(), $active='', $title='', $notab=0, $picto='', $pictoisfullpath=0, $morehtmlright='', $morecss='', $limittoshow=0, $moretabssuffix='', $dragdropfile=0)
Show tabs of a record.
dol_get_fiche_end($notab=0)
Return tab footer of a card.
dol_strlen($string, $stringencoding='UTF-8')
Make a strlen call.
getDolGlobalInt($key, $default=0)
Return a Dolibarr global constant int value.
newToken()
Return the value of token currently saved into session with name 'newtoken'.
GETPOST($paramname, $check='alphanohtml', $method=0, $filter=null, $options=null, $noreplace=0)
Return value of a param into GET or POST supervariable.
setEventMessages($mesg, $mesgs, $style='mesgs', $messagekey='', $noduplicate=0)
Set event messages in dol_events session object.
dol_buildpath($path, $type=0, $returnemptyifnotfound=0)
Return path of url or filesystem.
dol_htmloutput_mesg($mesgstring='', $mesgarray=array(), $style='ok', $keepembedded=0)
Print formatted messages to output (Used to show messages on html output).
getDolGlobalString($key, $default='')
Return dolibarr global constant string value.
invoice_admin_prepare_head()
Return array head with list of tabs to view object information.
accessforbidden($message='', $printheader=1, $printfooter=1, $showonlymessage=0, $params=null)
Show a message to say access is forbidden and stop program.