dolibarr  9.0.0
security_other.php
Go to the documentation of this file.
1 <?php
2 /* Copyright (C) 2004-2013 Laurent Destailleur <eldy@users.sourceforge.net>
3  * Copyright (C) 2005-2012 Regis Houssin <regis.houssin@inodbox.com>
4  * Copyright (C) 2013 Juanjo Menent <jmenent@2byte.es>
5  *
6  * This program is free software; you can redistribute it and/or modify
7  * it under the terms of the GNU General Public License as published by
8  * the Free Software Foundation; either version 3 of the License, or
9  * (at your option) any later version.
10  *
11  * This program is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14  * GNU General Public License for more details.
15  *
16  * You should have received a copy of the GNU General Public License
17  * along with this program. If not, see <http://www.gnu.org/licenses/>.
18  */
19 
26 require '../main.inc.php';
27 require_once DOL_DOCUMENT_ROOT.'/core/lib/admin.lib.php';
28 require_once DOL_DOCUMENT_ROOT.'/core/lib/files.lib.php';
29 require_once DOL_DOCUMENT_ROOT.'/core/class/html.formfile.class.php';
30 
31 // Load translation files required by the page
32 $langs->loadLangs(array("users","admin","other"));
33 
34 if (! $user->admin)
36 
37 $action=GETPOST('action','alpha');
38 
39 
40 
41 /*
42  * Actions
43  */
44 
45 if (preg_match('/set_([a-z0-9_\-]+)/i',$action,$reg))
46 {
47  $code=$reg[1];
48  $value=(GETPOST($code, 'alpha') ? GETPOST($code, 'alpha') : 1);
49  if (dolibarr_set_const($db, $code, $value, 'chaine', 0, '', $conf->entity) > 0)
50  {
51  Header("Location: ".$_SERVER["PHP_SELF"]);
52  exit;
53  }
54  else
55  {
56  dol_print_error($db);
57  }
58 }
59 
60 else if (preg_match('/del_([a-z0-9_\-]+)/i',$action,$reg))
61 {
62  $code=$reg[1];
63  if (dolibarr_del_const($db, $code, $conf->entity) > 0)
64  {
65  Header("Location: ".$_SERVER["PHP_SELF"]);
66  exit;
67  }
68  else
69  {
70  dol_print_error($db);
71  }
72 }
73 
74 else if ($action == 'updateform')
75 {
76  $res1=dolibarr_set_const($db, "MAIN_APPLICATION_TITLE", $_POST["MAIN_APPLICATION_TITLE"],'chaine',0,'',$conf->entity);
77  $res2=dolibarr_set_const($db, "MAIN_SESSION_TIMEOUT", $_POST["MAIN_SESSION_TIMEOUT"],'chaine',0,'',$conf->entity);
78  if ($res1 && $res2) setEventMessages($langs->trans("RecordModifiedSuccessfully"), null, 'mesgs');
79 }
80 
81 
82 
83 /*
84  * View
85  */
86 
87 $form = new Form($db);
88 
89 $wikihelp='EN:Setup_Security|FR:Paramétrage_Sécurité|ES:Configuración_Seguridad';
90 llxHeader('',$langs->trans("Miscellaneous"),$wikihelp);
91 
92 print load_fiche_titre($langs->trans("SecuritySetup"),'','title_setup');
93 
94 print $langs->trans("MiscellaneousDesc")."<br>\n";
95 print "<br>\n";
96 
97 
98 
99 print '<form action="'.$_SERVER["PHP_SELF"].'" method="POST">';
100 print '<input type="hidden" name="token" value="'.$_SESSION['newtoken'].'">';
101 print '<input type="hidden" name="action" value="updateform">';
102 
103 $head=security_prepare_head();
104 
105 dol_fiche_head($head, 'misc', $langs->trans("Security"), -1);
106 
107 
108 // Other Options
109 print '<table class="noborder" width="100%">';
110 print '<tr class="liste_titre">';
111 print '<td colspan="3">'.$langs->trans("Parameters").'</td>';
112 print '<td align="right" width="100">'.$langs->trans("Status").'</td>';
113 print '</tr>';
114 
115 // Enable Captcha code
116 print '<tr class="oddeven">';
117 print '<td colspan="3">'.$langs->trans("UseCaptchaCode").'</td>';
118 print '<td align="right">';
119 if (function_exists("imagecreatefrompng"))
120 {
121  if (! empty($conf->use_javascript_ajax))
122  {
123  print ajax_constantonoff('MAIN_SECURITY_ENABLECAPTCHA');
124  }
125  else
126  {
127  if (empty($conf->global->MAIN_SECURITY_ENABLECAPTCHA))
128  {
129  print '<a href="'.$_SERVER['PHP_SELF'].'?action=set_MAIN_SECURITY_ENABLECAPTCHA">'.img_picto($langs->trans("Disabled"),'off').'</a>';
130  }
131  else
132  {
133  print '<a href="'.$_SERVER['PHP_SELF'].'?action=del_MAIN_SECURITY_ENABLECAPTCHA">'.img_picto($langs->trans("Enabled"),'on').'</a>';
134  }
135  }
136 }
137 else
138 {
139  $desc = $form->textwithpicto('',$langs->transnoentities("EnableGDLibraryDesc"),1,'warning');
140  print $desc;
141 }
142 print '</td></tr>';
143 
144 // Enable advanced perms
145 print '<tr class="oddeven">';
146 print '<td colspan="3">'.$langs->trans("UseAdvancedPerms").'</td>';
147 print '<td align="right">';
148 if (! empty($conf->use_javascript_ajax))
149 {
150  print ajax_constantonoff('MAIN_USE_ADVANCED_PERMS');
151 }
152 else
153 {
154  if (empty($conf->global->MAIN_USE_ADVANCED_PERMS))
155  {
156  print '<a href="'.$_SERVER['PHP_SELF'].'?action=set_MAIN_USE_ADVANCED_PERMS">'.img_picto($langs->trans("Disabled"),'off').'</a>';
157  }
158  else
159  {
160  print '<a href="'.$_SERVER['PHP_SELF'].'?action=del_MAIN_USE_ADVANCED_PERMS">'.img_picto($langs->trans("Enabled"),'on').'</a>';
161  }
162 }
163 print "</td></tr>";
164 
165 print '</table>';
166 
167 
168 print '<br>';
169 
170 
171 // Timeout
172 print '<table width="100%" class="noborder">';
173 print '<tr class="liste_titre">';
174 print '<td colspan="2">'.$langs->trans("Parameters").'</td>';
175 print '<td>'.$langs->trans("Value").'</td>';
176 print "</tr>\n";
177 
178 
179 $sessiontimeout=ini_get("session.gc_maxlifetime");
180 if (empty($conf->global->MAIN_SESSION_TIMEOUT)) $conf->global->MAIN_SESSION_TIMEOUT=$sessiontimeout;
181 print '<tr class="oddeven">';
182 print '<td>'.$langs->trans("SessionTimeOut").'</td><td align="right">';
183 print $form->textwithpicto('',$langs->trans("SessionExplanation",ini_get("session.gc_probability"),ini_get("session.gc_divisor")));
184 print '</td>';
185 print '<td class="nowrap">';
186 print '<input class="flat" name="MAIN_SESSION_TIMEOUT" type="text" size="6" value="'.htmlentities($conf->global->MAIN_SESSION_TIMEOUT).'"> '.strtolower($langs->trans("Seconds"));
187 print '</td>';
188 print '</tr>';
189 
190 
191 $sessiontimeout=ini_get("session.gc_maxlifetime");
192 if (empty($conf->global->MAIN_APPLICATION_TITLE)) $conf->global->MAIN_APPLICATION_TITLE="";
193 print '<tr class="oddeven">';
194 print '<td>'.$langs->trans("MAIN_APPLICATION_TITLE").'</td><td align="right">';
195 print '</td>';
196 print '<td class="nowrap">';
197 print '<input class="flat" name="MAIN_APPLICATION_TITLE" type="text" size="20" value="'.htmlentities($conf->global->MAIN_APPLICATION_TITLE).'"> ';
198 print '</td>';
199 print '</tr>';
200 
201 print '</table>';
202 
203 dol_fiche_end();
204 
205 print '<div class="center"><input type="submit" class="button" name="button" value="'.$langs->trans("Modify").'"></div>';
206 
207 print '</form>';
208 
209 // End of page
210 llxFooter();
211 $db->close();
llxFooter()
Empty footer.
Definition: wrapper.php:56
load_fiche_titre($titre, $morehtmlright='', $picto='title_generic.png', $pictoisfullpath=0, $id='', $morecssontable='', $morehtmlcenter='')
Load a title with picto.
GETPOST($paramname, $check='none', $method=0, $filter=null, $options=null, $noreplace=0)
Return value of a param into GET or POST supervariable.
print
Draft customers invoices.
Definition: index.php:91
setEventMessages($mesg, $mesgs, $style='mesgs')
Set event messages in dol_events session object.
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).
Definition: admin.lib.php:510
dol_print_error($db='', $error='', $errors=null)
Affiche message erreur system avec toutes les informations pour faciliter le diagnostic et la remonte...
accessforbidden($message='', $printheader=1, $printfooter=1, $showonlymessage=0)
Show a message to say access is forbidden and stop program Calling this function terminate execution ...
Class to manage generation of HTML components Only common components must be here.
dolibarr_del_const($db, $name, $entity=1)
Effacement d&#39;une constante dans la base de donnees.
Definition: admin.lib.php:435
dol_fiche_end($notab=0)
Show tab footer of a card.
llxHeader()
Empty header.
Definition: wrapper.php:44
security_prepare_head()
Prepare array with list of tabs.
Definition: admin.lib.php:606
ajax_constantonoff($code, $input=array(), $entity=null, $revertonoff=0, $strict=0)
On/off button for constant.
Definition: ajax.lib.php:484
img_picto($titlealt, $picto, $moreatt='', $pictoisfullpath=false, $srconly=0, $notitle=0, $alt='', $morecss='')
Show picto whatever it&#39;s its name (generic function)
dol_fiche_head($links=array(), $active='0', $title='', $notab=0, $picto='', $pictoisfullpath=0, $morehtmlright='', $morecss='')
Show tab header of a card.
if(GETPOST('button_removefilter_x', 'alpha')||GETPOST('button_removefilter.x', 'alpha')||GETPOST('button_removefilter', 'alpha')) if(GETPOST('button_search_x', 'alpha')||GETPOST('button_search.x', 'alpha')||GETPOST('button_search', 'alpha')) if($action=="save" &&empty($cancel)) $wikihelp
View.
Definition: agenda.php:120