27require
'../../main.inc.php';
28require_once DOL_DOCUMENT_ROOT.
"/core/lib/admin.lib.php";
29require_once DOL_DOCUMENT_ROOT.
'/datapolicy/lib/datapolicy.lib.php';
32$langs->loadLangs(array(
'admin',
'companies',
'members',
'datapolicy'));
35$action =
GETPOST(
'action',
'aZ09');
36$backtopage =
GETPOST(
'backtopage',
'alpha');
42$arrayofparameters = array();
43$arrayofparameters[
'ThirdParty'] = array(
44 'DATAPOLICY_TIERS_CLIENT' => array(
'css' =>
'minwidth200',
'picto' =>
img_picto(
'',
'company',
'class="pictofixedwidth"')),
45 'DATAPOLICY_TIERS_PROSPECT' => array(
'css' =>
'minwidth200',
'picto' =>
img_picto(
'',
'company',
'class="pictofixedwidth"')),
46 'DATAPOLICY_TIERS_PROSPECT_CLIENT' => array(
'css' =>
'minwidth200',
'picto' =>
img_picto(
'',
'company',
'class="pictofixedwidth"')),
47 'DATAPOLICY_TIERS_NIPROSPECT_NICLIENT' => array(
'css' =>
'minwidth200',
'picto' =>
img_picto(
'',
'company',
'class="pictofixedwidth"')),
48 'DATAPOLICY_TIERS_FOURNISSEUR' => array(
'css' =>
'minwidth200',
'picto' =>
img_picto(
'',
'supplier',
'class="pictofixedwidth"')),
51 $arrayofparameters[
'Contact'] = array(
52 'DATAPOLICY_CONTACT_CLIENT' => array(
'css' =>
'minwidth200',
'picto' =>
img_picto(
'',
'contact',
'class="pictofixedwidth"')),
53 'DATAPOLICY_CONTACT_PROSPECT' => array(
'css' =>
'minwidth200',
'picto' =>
img_picto(
'',
'contact',
'class="pictofixedwidth"')),
54 'DATAPOLICY_CONTACT_PROSPECT_CLIENT' => array(
'css' =>
'minwidth200',
'picto' =>
img_picto(
'',
'contact',
'class="pictofixedwidth"')),
55 'DATAPOLICY_CONTACT_NIPROSPECT_NICLIENT' => array(
'css' =>
'minwidth200',
'picto' =>
img_picto(
'',
'contact',
'class="pictofixedwidth"')),
56 'DATAPOLICY_CONTACT_FOURNISSEUR' => array(
'css' =>
'minwidth200',
'picto' =>
img_picto(
'',
'contact',
'class="pictofixedwidth"')),
59if (isModEnabled(
'member')) {
60 $arrayofparameters[
'Member'] = array(
61 'DATAPOLICY_ADHERENT' => array(
'css' =>
'minwidth200',
'picto' =>
img_picto(
'',
'member',
'class="pictofixedwidth"')),
66 '' => $langs->trans(
'Never'),
67 '6' => $langs->trans(
'NB_MONTHS', 6),
68 '12' => $langs->trans(
'ONE_YEAR'),
69 '24' => $langs->trans(
'NB_YEARS', 2),
70 '36' => $langs->trans(
'NB_YEARS', 3),
71 '48' => $langs->trans(
'NB_YEARS', 4),
72 '60' => $langs->trans(
'NB_YEARS', 5),
73 '120' => $langs->trans(
'NB_YEARS', 10),
74 '180' => $langs->trans(
'NB_YEARS', 15),
75 '240' => $langs->trans(
'NB_YEARS', 20),
79if (!isModEnabled(
"datapolicy")) {
87'@phan-var-force array<string,array<string,array{type?:string,css?:string,picto?:string}>> $arrayofparameters';
95foreach ($arrayofparameters as $title => $tab) {
96 foreach ($tab as $key => $val) {
98 if (GETPOSTISSET($key)) {
99 if (preg_match(
'/category:/', (
string) $val[
'type'])) {
106 $val_const =
GETPOST($key,
'alpha');
123if ($action ==
'update') {
132$page_name =
"datapolicySetup";
136$linkback =
'<a href="'.($backtopage ? $backtopage : DOL_URL_ROOT.
'/admin/modules.php?restore_lastsearch_values=1').
'">'.$langs->trans(
"BackToModuleList").
'</a>';
145print
'<span class="opacitymedium">'.$langs->trans(
"datapolicySetupPage").
'</span><br>';
150if ($action ==
'edit') {
151 print
'<form method="POST" action="'.$_SERVER[
"PHP_SELF"].
'">';
152 print
'<input type="hidden" name="token" value="'.newToken().
'">';
153 print
'<input type="hidden" name="action" value="update">';
155 print
'<table class="noborder centpercent">';
158 foreach ($arrayofparameters as $title => $tab) {
159 print
'<tr class="trforbreak"><td class="titlefield trforbreak" colspan="2">'.$langs->trans($title).
'</td></tr>';
160 foreach ($tab as $key => $val) {
161 print
'<tr class="oddeven"><td>';
163 print $langs->trans($key);
165 print
'<select name="'.$key.
'" id="'.$key.
'" class="flat '.(empty($val[
'css']) ?
'minwidth200' : $val[
'css']).
'">';
166 foreach ($valTab as $key1 => $val1) {
167 print
'<option value="'.$key1.
'" '.(
getDolGlobalString($key) == $key1 ?
'selected="selected"' :
'').
'>';
179 print $form->buttonsSaveCancel(
"Save",
'');
184 print
'<table class="noborder centpercent">';
187 foreach ($arrayofparameters as $title => $tab) {
188 print
'<tr class="trforbreak"><td class="titlefield trforbreak" colspan="2">'.$langs->trans($title).
'</td></tr>';
189 foreach ($tab as $key => $val) {
190 print
'<tr class="oddeven"><td>';
192 print $langs->trans($key);
193 print
'</td><td>'.(getDolGlobalString($key) ==
'' ?
'<span class="opacitymedium">'.$valTab[
''].
'</span>' : $valTab[
getDolGlobalString($key)]).
'</td></tr>';
199 print
'<div class="tabsAction">';
200 print
'<a class="butAction" href="'.$_SERVER[
"PHP_SELF"].
'?action=edit&token='.
newToken().
'">'.$langs->trans(
"Modify").
'</a>';
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).
ajax_combobox($htmlname, $events=array(), $minLengthToAutocomplete=0, $forcefocus=0, $widthTypeOfAutocomplete='resolve', $idforemptyvalue='-1', $morecss='')
Convert a html select field into an ajax combobox.
if(!defined('NOREQUIRESOC')) if(!defined( 'NOREQUIRETRAN')) if(!defined('NOTOKENRENEWAL')) if(!defined( 'NOREQUIREMENU')) if(!defined('NOREQUIREHTML')) if(!defined( 'NOREQUIREAJAX')) llxHeader($head='', $title='', $help_url='', $target='', $disablejs=0, $disablehead=0, $arrayofjs='', $arrayofcss='', $morequerystring='', $morecssonbody='', $replacemainareaby='', $disablenofollow=0, $disablenoindex=0)
Empty header.
datapolicyAdminPrepareHead()
Prepare admin pages header.
load_fiche_titre($title, $morehtmlright='', $picto='generic', $pictoisfullpath=0, $id='', $morecssontable='', $morehtmlcenter='')
Load a title with picto.
setEventMessages($mesg, $mesgs, $style='mesgs', $messagekey='', $noduplicate=0, $attop=0)
Set event messages in dol_events session object.
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.
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.
getDolGlobalString($key, $default='')
Return a Dolibarr global constant string value.
accessforbidden($message='', $printheader=1, $printfooter=1, $showonlymessage=0, $params=null)
Show a message to say access is forbidden and stop program.