proxy.php 7.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208
  1. <?php
  2. /* Copyright (C) 2011 Laurent Destailleur <eldy@users.sourceforge.net>
  3. *
  4. * This program is free software; you can redistribute it and/or modify
  5. * it under the terms of the GNU General Public License as published by
  6. * the Free Software Foundation; either version 2 of the License, or
  7. * (at your option) any later version.
  8. *
  9. * This program is distributed in the hope that it will be useful,
  10. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  11. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  12. * GNU General Public License for more details.
  13. *
  14. * You should have received a copy of the GNU General Public License
  15. * along with this program. If not, see <http://www.gnu.org/licenses/>.
  16. */
  17. /**
  18. * \file htdocs/admin/proxy.php
  19. * \ingroup core
  20. * \brief Page setup proxy to use for external web access
  21. */
  22. require("../main.inc.php");
  23. require_once(DOL_DOCUMENT_ROOT."/lib/admin.lib.php");
  24. require_once(DOL_DOCUMENT_ROOT."/core/class/html.formfile.class.php");
  25. $langs->load("users");
  26. $langs->load("admin");
  27. $langs->load("other");
  28. if (!$user->admin) accessforbidden();
  29. $upload_dir=$conf->admin->dir_temp;
  30. /*
  31. * Actions
  32. */
  33. if (GETPOST("action") == 'set_proxy')
  34. {
  35. $result=0;
  36. $result+=dolibarr_set_const($db, 'MAIN_USE_CONNECT_TIMEOUT', $_POST["MAIN_USE_CONNECT_TIMEOUT"], 'chaine',0,'',$conf->entity);
  37. $result+=dolibarr_set_const($db, 'MAIN_USE_RESPONSE_TIMEOUT', $_POST["MAIN_USE_RESPONSE_TIMEOUT"], 'chaine',0,'',$conf->entity);
  38. $result+=dolibarr_set_const($db, 'MAIN_PROXY_USE', $_POST["MAIN_PROXY_USE"], 'chaine',0,'',$conf->entity);
  39. $result+=dolibarr_set_const($db, 'MAIN_PROXY_HOST',$_POST["MAIN_PROXY_HOST"],'chaine',0,'',$conf->entity);
  40. $result+=dolibarr_set_const($db, 'MAIN_PROXY_PORT',$_POST["MAIN_PROXY_PORT"],'chaine',0,'',$conf->entity);
  41. $result+=dolibarr_set_const($db, 'MAIN_PROXY_USER',$_POST["MAIN_PROXY_USER"],'chaine',0,'',$conf->entity);
  42. $result+=dolibarr_set_const($db, 'MAIN_PROXY_PASS',$_POST["MAIN_PROXY_PASS"],'chaine',0,'',$conf->entity);
  43. if ($result < 5)
  44. {
  45. dol_print_error($db);
  46. }
  47. else
  48. {
  49. $mesg='<div class="ok">'.$langs->trans("RecordModifiedSuccessfully").'</div>';
  50. }
  51. }
  52. /*
  53. * View
  54. */
  55. $form = new Form($db);
  56. llxHeader('',$langs->trans("Proxy"));
  57. print_fiche_titre($langs->trans("SecuritySetup"),'','setup');
  58. print $langs->trans("ProxyDesc")."<br>\n";
  59. print "<br>\n";
  60. $head=security_prepare_head();
  61. dol_fiche_head($head, 'proxy', $langs->trans("Security"));
  62. if ($conf->use_javascript_ajax)
  63. {
  64. print "\n".'<script type="text/javascript" language="javascript">';
  65. print 'jQuery(document).ready(function () {
  66. function initfields()
  67. {
  68. if (jQuery("#MAIN_PROXY_USE").val()==\'1\')
  69. {
  70. jQuery(".drag").show();
  71. }
  72. if (jQuery("#MAIN_PROXY_USE").val()==\'0\')
  73. {
  74. jQuery(".drag").hide();
  75. }
  76. }
  77. initfields();
  78. jQuery("#MAIN_PROXY_USE").change(function() {
  79. initfields();
  80. });
  81. })';
  82. print '</script>'."\n";
  83. }
  84. // Timeout
  85. $var=true;
  86. print '<form action="'.$_SERVER["PHP_SELF"].'" method="POST">';
  87. print '<input type="hidden" name="token" value="'.$_SESSION['newtoken'].'">';
  88. print '<input type="hidden" name="action" value="set_proxy">';
  89. print '<table width="100%" class="noborder">';
  90. print '<tr class="liste_titre">';
  91. print '<td colspan="2">'.$langs->trans("Parameters").'</td>';
  92. print '<td width="200">'.$langs->trans("Value").'</td>';
  93. print "</tr>\n";
  94. $var=!$var;
  95. print '<tr '.$bc[$var].'>';
  96. print '<td>'.$langs->trans("ConnectionTimeout").'</td><td align="right">';
  97. //print $form->textwithpicto('',$langs->trans("SessionExplanation",ini_get("session.gc_probability"),ini_get("session.gc_divisor")));
  98. print '</td>';
  99. print '<td nowrap="nowrap">';
  100. print '<input class="flat" name="MAIN_USE_CONNECT_TIMEOUT" type="text" size="4" value="'.$conf->global->MAIN_USE_CONNECT_TIMEOUT.'">';
  101. print ' '.$langs->trans("seconds");
  102. print '</td>';
  103. print '</tr>';
  104. $var=!$var;
  105. print '<tr '.$bc[$var].'>';
  106. print '<td>'.$langs->trans("ResponseTimeout").'</td><td align="right">';
  107. //print $form->textwithpicto('',$langs->trans("SessionExplanation",ini_get("session.gc_probability"),ini_get("session.gc_divisor")));
  108. print '</td>';
  109. print '<td nowrap="nowrap">';
  110. print '<input class="flat" name="MAIN_USE_RESPONSE_TIMEOUT" type="text" size="4" value="'.$conf->global->MAIN_USE_RESPONSE_TIMEOUT.'">';
  111. print ' '.$langs->trans("seconds");
  112. print '</td>';
  113. print '</tr>';
  114. $var=!$var;
  115. print '<tr '.$bc[$var].'>';
  116. print '<td>'.$langs->trans("MAIN_PROXY_USE").'</td><td align="right">';
  117. //print $form->textwithpicto('',$langs->trans("SessionExplanation",ini_get("session.gc_probability"),ini_get("session.gc_divisor")));
  118. print '</td>';
  119. print '<td nowrap="nowrap">';
  120. print $form->selectyesno('MAIN_PROXY_USE',$conf->global->MAIN_PROXY_USE,1);
  121. print '</td>';
  122. print '</tr>';
  123. $var=!$var;
  124. print '<tr '.$bcdd[$var].'>';
  125. print '<td>'.$langs->trans("MAIN_PROXY_HOST").'</td><td align="right">';
  126. //print $form->textwithpicto('',$langs->trans("SessionExplanation",ini_get("session.gc_probability"),ini_get("session.gc_divisor")));
  127. print '</td>';
  128. print '<td nowrap="nowrap">';
  129. print '<input class="flat" name="MAIN_PROXY_HOST" type="text" size="16" value="'.$conf->global->MAIN_PROXY_HOST.'">';
  130. print '</td>';
  131. print '</tr>';
  132. $var=!$var;
  133. print '<tr '.$bcdd[$var].'>';
  134. print '<td>'.$langs->trans("MAIN_PROXY_PORT").'</td><td align="right">';
  135. //print $form->textwithpicto('',$langs->trans("SessionExplanation",ini_get("session.gc_probability"),ini_get("session.gc_divisor")));
  136. print '</td>';
  137. print '<td nowrap="nowrap">';
  138. print '<input class="flat" name="MAIN_PROXY_PORT" type="text" size="4" value="'.$conf->global->MAIN_PROXY_PORT.'">';
  139. print '</td>';
  140. print '</tr>';
  141. $var=!$var;
  142. print '<tr '.$bcdd[$var].'>';
  143. print '<td>'.$langs->trans("MAIN_PROXY_USER").'</td><td align="right">';
  144. //print $form->textwithpicto('',$langs->trans("SessionExplanation",ini_get("session.gc_probability"),ini_get("session.gc_divisor")));
  145. print '</td>';
  146. print '<td nowrap="nowrap">';
  147. print '<input class="flat" name="MAIN_PROXY_USER" type="text" size="16" value="'.$conf->global->MAIN_PROXY_USER.'">';
  148. print '</td>';
  149. print '</tr>';
  150. $var=!$var;
  151. print '<tr '.$bcdd[$var].'>';
  152. print '<td>'.$langs->trans("MAIN_PROXY_PASS").'</td><td align="right">';
  153. //print $form->textwithpicto('',$langs->trans("SessionExplanation",ini_get("session.gc_probability"),ini_get("session.gc_divisor")));
  154. print '</td>';
  155. print '<td nowrap="nowrap">';
  156. print '<input class="flat" name="MAIN_PROXY_PASS" type="text" size="16" value="'.$conf->global->MAIN_PROXY_PASS.'">';
  157. print '</td>';
  158. print '</tr>';
  159. print '</table>';
  160. dol_fiche_end();
  161. print '<center>';
  162. print '<input type="submit" class="button" name="button" value="'.$langs->trans("Modify").'">';
  163. print '</center>';
  164. print '</form><br>';
  165. dol_htmloutput_mesg($mesg);
  166. $db->close();
  167. llxFooter();
  168. ?>