edit_web.html 27 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429
  1. <div class="l-center edit">
  2. <div class="l-sort clearfix">
  3. <div class="l-sort-toolbar clearfix float-left">
  4. <span class="title edit"><b><?=__('Editing Domain')?></b></span>
  5. <?php
  6. if (!empty($_SESSION['error_msg'])) {
  7. echo "<span class=\"vst-error\"> → ".htmlentities($_SESSION['error_msg'])."</span>";
  8. } else {
  9. if (!empty($_SESSION['ok_msg'])) {
  10. echo "<span class=\"vst-ok\"> → ".$_SESSION['ok_msg']."</span>";
  11. }
  12. }
  13. ?>
  14. </div>
  15. </div>
  16. </div>
  17. <div class="l-separator"></div>
  18. <!-- /.l-separator -->
  19. <div class="l-center">
  20. <?php
  21. $back = $_SESSION['back'];
  22. if (empty($back)) {
  23. $back = "location.href='/list/web/'";
  24. } else {
  25. $back = "location.href='".$back."'";
  26. }
  27. ?>
  28. <form id="vstobjects" name="v_edit_web" method="post" class="<?=$v_status?>">
  29. <input type="hidden" name="token" value="<?=$_SESSION['token']?>" />
  30. <input type="hidden" name="save" value="save" />
  31. <table class='data'>
  32. <tr class="data-add">
  33. <td class="data-dotted">
  34. <table class="data-col1">
  35. <tr>
  36. <td>
  37. <a class="data-date"><?=translate_date($v_date)?></a><br>
  38. <a class="data-date"><?=$v_time?></a>
  39. </td>
  40. </tr>
  41. <tr><td class="data-<?php echo $v_status ?>"><b><?php echo __($v_status) ?></b></td></tr>
  42. </table>
  43. </td>
  44. <td class="data-dotted">
  45. <table class="data-col2">
  46. <tr>
  47. <td class="vst-text step-top">
  48. <?php print __('Domain');?>
  49. </td>
  50. </tr>
  51. <tr>
  52. <td>
  53. <input type="text" size="20" class="vst-input" name="v_domain" <?php if (!empty($v_domain)) echo "value=".htmlentities($v_domain); ?> disabled> <input type="hidden" name="v_domain" <?php if (!empty($v_domain)) echo "value=".htmlentities($v_domain); ?>>
  54. </td>
  55. </tr>
  56. <tr>
  57. <td class="vst-text input-label">
  58. <?php print __('IP Address');?>
  59. </td>
  60. </tr>
  61. <tr>
  62. <td>
  63. <select class="vst-list" name="v_ip">
  64. <?php
  65. foreach ($ips as $ip => $value) {
  66. $display_ip = htmlentities(empty($value['NAT']) ? $ip : "{$value['NAT']}");
  67. $ip_selected = ((!empty($v_ip) && $ip == $v_ip) || $v_ip == "'{$ip}'") ? 'selected' : '';
  68. echo "\n\t\t\t\t\t\t\t\t\t\t\t\t<option value=\"{$ip}\" {$ip_selected}>{$display_ip}</option>\n";
  69. }
  70. ?>
  71. </select>
  72. </td>
  73. </tr>
  74. <tr>
  75. <td class="vst-text input-label">
  76. <?php print __('Aliases');?>
  77. </td>
  78. </tr>
  79. <tr>
  80. <td>
  81. <textarea size="20" class="vst-textinput" name="v_aliases"><?php if (!empty($v_aliases)) echo htmlentities($v_aliases); ?></textarea>
  82. </td>
  83. </tr>
  84. <tr>
  85. <td class="vst-text step-top">
  86. <label><input type="checkbox" size="20" class="vst-checkbox" name="v_ssl" <?php if ($v_ssl == 'yes') echo "checked=yes" ?> onclick="javascript:elementHideShow('ssltable');"> <?php print __('SSL Support');?></label>
  87. </td>
  88. </tr>
  89. <tr>
  90. <td class="step-left">
  91. <table style="display:<?php if ($v_ssl == 'no' ) { echo 'none';} else {echo 'block';}?> ;" id="ssltable">
  92. <tr>
  93. <td class="input-label vst-text">
  94. <label><input type="checkbox" size="20" class="vst-checkbox" name="v_letsencrypt" <?php if($v_letsencrypt == 'yes' || $v_letencrypt == 'on') echo "checked=yes" ?> onclick="App.Actions.WEB.toggle_letsencrypt(this)"> <?php print __('Lets Encrypt Support');?></label>
  95. </td>
  96. </tr>
  97. <tr>
  98. <td class="vst-text input-label">
  99. <?php print __('SSL Home Directory');?>
  100. </td>
  101. </tr>
  102. <tr>
  103. <td>
  104. <select class="vst-list" name="v_ssl_home">
  105. <option value='same' <?php if ($v_ssl_home == 'same') echo "selected";?>>
  106. public_html
  107. </option>
  108. <option value='single' <?php if ($v_ssl_home == 'single') echo "selected";?>>
  109. public_shtml
  110. </option>
  111. </select>
  112. </td>
  113. </tr>
  114. <tr>
  115. <td class="vst-text input-label">
  116. <?php print __('SSL Certificate');?>
  117. <span id="generate-csr"> / <a class="generate" target="_blank" href="/generate/ssl/?domain=<?php echo $v_domain ?>"><?php print __('Generate CSR') ?></a></span>
  118. </td>
  119. </tr>
  120. <tr>
  121. <td>
  122. <textarea size="20" class="vst-textinput" name="v_ssl_crt"><?php if (!empty($v_ssl_crt)) echo htmlentities($v_ssl_crt); ?></textarea>
  123. </td>
  124. </tr>
  125. <tr>
  126. <td class="vst-text input-label">
  127. <?php print __('SSL Key');?>
  128. </td>
  129. </tr>
  130. <tr>
  131. <td>
  132. <textarea size="20" class="vst-textinput" name="v_ssl_key"><?php if (!empty($v_ssl_key)) echo htmlentities($v_ssl_key); ?></textarea>
  133. </td>
  134. </tr>
  135. <tr>
  136. <td class="vst-text input-label">
  137. <?php print __('SSL Certificate Authority / Intermediate');?> <span class="optional">(<?php print __('optional');?>)</span>
  138. </td>
  139. </tr>
  140. <tr>
  141. <td>
  142. <textarea size="20" class="vst-textinput" name="v_ssl_ca"><?php if (!empty($v_ssl_ca)) echo htmlentities($v_ssl_ca); ?></textarea>
  143. </td>
  144. </tr>
  145. <?
  146. if ($v_ssl != 'no' ) { ?>
  147. <tr>
  148. <td>
  149. <table class="additional-info">
  150. <tr>
  151. <td>
  152. <?=__('SUBJECT')?>:
  153. </td>
  154. <td class="details">
  155. <?=$v_ssl_subject?>
  156. </td>
  157. </tr>
  158. <? if($v_ssl_aliases){?>
  159. <tr>
  160. <td>
  161. <?=__('ALIASES')?>:
  162. </td>
  163. <td class="details">
  164. <?=$v_ssl_aliases?>
  165. </td>
  166. </tr>
  167. <? } ?>
  168. <tr>
  169. <td>
  170. <?=__('NOT_BEFORE')?>:
  171. </td>
  172. <td class="details">
  173. <?=$v_ssl_not_before?>
  174. </td>
  175. </tr>
  176. <tr>
  177. <td>
  178. <?=__('NOT_AFTER')?>:
  179. </td>
  180. <td class="details">
  181. <?=$v_ssl_not_after?>
  182. </td>
  183. </tr>
  184. <tr>
  185. <td>
  186. <?=__('SIGNATURE')?>:
  187. </td>
  188. <td class="details">
  189. <?=$v_ssl_signature?>
  190. </td>
  191. </tr>
  192. <tr>
  193. <td>
  194. <?=__('PUB_KEY')?>:
  195. </td>
  196. <td class="details">
  197. <?=$v_ssl_pub_key?>
  198. </td>
  199. </tr>
  200. <tr>
  201. <td>
  202. <?=__('ISSUER')?>
  203. </td>
  204. <td class="details">
  205. <?=$v_ssl_issuer?>
  206. </td>
  207. </tr>
  208. </table>
  209. </td>
  210. </tr>
  211. <? } // if ssl is enabled ?>
  212. </table>
  213. </td>
  214. </tr>
  215. <tr>
  216. <td class="vst-text step-top">
  217. <?php print __('Web Statistics');?>
  218. </td>
  219. </tr>
  220. <tr>
  221. <td>
  222. <select class="vst-list" name="v_stats">
  223. <?php
  224. foreach ($stats as $key => $value) {
  225. $svalue = "'".$value."'";
  226. echo "\t\t\t\t<option value=\"".htmlentities($value)."\"";
  227. if (empty($v_stats)) $v_stats = 'none';
  228. if (( $value == $v_stats ) || ($svalue == $v_stats )){
  229. echo ' selected' ;
  230. }
  231. echo ">". htmlentities(__($value)) ."</option>\n";
  232. }
  233. ?>
  234. </select>
  235. </td>
  236. </tr>
  237. <tr class="stats-auth" style="<? if ($v_stats == 'none') { ?>display:none<? } ?>">
  238. <td class="vst-text input-label step-left">
  239. <label><input type="checkbox" size="20" class="vst-checkbox" name="v_stats_auth" <?php if (!empty($v_stats_user)) echo "checked=yes" ?> onclick="javascript:elementHideShow('statstable');"><?php print __('Statistics Authorization');?></label>
  240. </td>
  241. </tr>
  242. <tr class="stats-auth">
  243. <td class="step-left">
  244. <table style="display:<?php if (empty($v_stats_user)) { echo 'none';} else {echo 'block';}?> ;" id="statstable" name="v-add-web-domain-stats-user">
  245. <tr>
  246. <td class="vst-text input-label">
  247. <?php print __('Username');?>
  248. </td>
  249. </tr>
  250. <tr>
  251. <td>
  252. <input type="text" size="20" class="vst-input" name="v_stats_user" <?php if (!empty($v_stats_user)) echo "value=".htmlentities($v_stats_user); ?>>
  253. </td>
  254. </tr>
  255. <tr>
  256. <td class="vst-text input-label">
  257. <?php print __('Password');?> / <a href="javascript:WEBrandom();" class="generate"><?php print __('generate');?></a>
  258. </td>
  259. </tr>
  260. <tr>
  261. <td>
  262. <input type="text" size="20" class="vst-input password" name="v_stats_password" <?php if (!empty($v_stats_password)) echo "value=".htmlentities($v_stats_password); ?> id="v_password">
  263. </td>
  264. </tr>
  265. </table>
  266. </td>
  267. </tr>
  268. <tr>
  269. <td class="vst-text step-top">
  270. <label><input type="checkbox" size="20" class="vst-checkbox" name="v_ftp" <?php if (!empty($v_ftp_user)) echo "checked=yes" ?> onclick="App.Actions.WEB.toggle_additional_ftp_accounts(this)"> <?php print __('Additional FTP Account');?></label>
  271. </td>
  272. </tr>
  273. <tr>
  274. <td>
  275. <?php foreach ($v_ftp_users as $i => $ftp_user): ?>
  276. <?php
  277. $v_ftp_user = $ftp_user['v_ftp_user'];
  278. $v_ftp_password = $ftp_user['v_ftp_password'];
  279. $v_ftp_path = $ftp_user['v_ftp_path'];
  280. $v_ftp_email = $ftp_user['v_ftp_email'];
  281. $v_ftp_pre_path = $ftp_user['v_ftp_pre_path'];
  282. ?>
  283. <table style="display:<?php if (empty($v_ftp_user)) { echo 'none';} else {echo 'block';}?> ;" class="ftptable ftptable-nrm" name="v_add_domain_ftp">
  284. <tr>
  285. <td class="vst-text input-label">
  286. <?php print __('FTP') ?> #<span class="ftp-user-number"><?php print $i + 1; ?></span> <a class="ftp-remove-user additional-control" onCLick="App.Actions.WEB.remove_ftp_user(this)">(<?=__('delete')?>)</a>
  287. <input type="hidden" class="v-ftp-user-deleted" name="v_ftp_user[<?php print $i ?>][delete]" value="0" />
  288. <input type="hidden" class="v-ftp-user-is-new" name="v_ftp_user[<?php print $i ?>][is_new]" value="<?php print htmlentities($ftp_user['is_new']) ?>" />
  289. </td>
  290. </tr>
  291. <tr>
  292. <td class="vst-text step-left input-label">
  293. <?php print __('Username');?><br>
  294. <span style="font-size: 10pt; color:#777;"><?php print __('Prefix will be automaticaly added to username',$user."_");?></span>
  295. </td>
  296. </tr>
  297. <tr>
  298. <td class="step-left">
  299. <input type="text" size="20" class="vst-input v-ftp-user" <?php print $ftp_user['is_new'] != 1 ? 'disabled="disabled"' : '' ?> name="v_ftp_user[<?php print $i ?>][v_ftp_user]" <?php if (!empty($v_ftp_user)) echo "value=".htmlentities($v_ftp_user); ?>>
  300. <small class="hint"></small>
  301. </td>
  302. </tr>
  303. <tr>
  304. <td class="vst-text step-left input-label">
  305. <?php print __('Password');?> / <a href="javascript:void(0);" onClick="FTPrandom(this)"; class="generate" ><?php print __('generate');?></a>
  306. </td>
  307. </tr>
  308. <tr>
  309. <td class="step-left">
  310. <input type="text" class="vst-input v-ftp-user-psw password" name="v_ftp_user[<?php print $i ?>][v_ftp_password]" <?php if (!empty($v_ftp_password)) echo "value=".htmlentities($v_ftp_password); ?>>
  311. </td>
  312. </tr>
  313. <tr>
  314. <td class="vst-text step-left input-label">
  315. <?php print __('Path');?>
  316. </td>
  317. </tr>
  318. <tr>
  319. <td class="step-left">
  320. <input type="hidden" class="vst-input v-ftp-pre-path" name="v_ftp_pre_path" value="<?php print !empty($v_ftp_pre_path) ? htmlentities($v_ftp_pre_path) : '/'; ?>">
  321. <input type="hidden" class="vst-input v-ftp-path" name="v_ftp_user[<?php print $i ?>][v_ftp_path_prev]" <?php if (!empty($v_ftp_path)) echo "value=".($v_ftp_path[0] != '/' ? '/' : '').htmlentities($v_ftp_path); ?>>
  322. <input type="text" class="vst-input v-ftp-path" name="v_ftp_user[<?php print $i ?>][v_ftp_path]" <?php if (!empty($v_ftp_path)) echo "value=".($v_ftp_path[0] != '/' ? '/' : '').htmlentities($v_ftp_path); ?>>
  323. <br /><span class="ftp-path-prefix"><?php print $v_ftp_pre_path ?></span><span class="ftp-path-value v-ftp-path-hint"></span>
  324. </td>
  325. </tr>
  326. <?php if ($ftp_user['is_new'] == 1): ?>
  327. <tr>
  328. <td class="vst-text step-left input-label">
  329. <?php print __('Send FTP credentials to email');?>
  330. </td>
  331. </tr>
  332. <tr>
  333. <td class="step-left">
  334. <input type="text" class="vst-input vst-email-alert-on-psw" name="v_ftp_user[<?php print $i ?>][v_ftp_email]" <?php if (!empty($v_ftp_email)) echo "value=".htmlentities($v_ftp_email); ?>>
  335. </td>
  336. </tr>
  337. <?php endif; ?>
  338. </table>
  339. <?php endforeach; ?>
  340. </td>
  341. </tr>
  342. <tr class="add-new-ftp-user-button" style="<?php print !empty($v_ftp_user) ? '' : 'display:none;' ?>">
  343. <td class="vst-text step-top v-add-new-user step-bottom">
  344. <a class="additional-control" onClick="App.Actions.WEB.add_ftp_user_form()"><?php print __('Add one more FTP Account');?></a>
  345. </td>
  346. </tr>
  347. </table>
  348. <table class="data-col2">
  349. <tr>
  350. <td class="step-top" width="116px">
  351. <input type="submit" class="button" name="save" value="<?php print __('Save');?>">
  352. </td>
  353. <td class="step-top">
  354. <input type="button" class="button cancel" value="<?php print __('Back');?>" onclick="<?php echo $back ?>">
  355. </td>
  356. </tr>
  357. </table>
  358. </td>
  359. </tr>
  360. </table>
  361. </form>
  362. <div id="templates" class="hidden">
  363. <table class="ftptable ftptable-nrm" name="v_add_domain_ftp">
  364. <tr>
  365. <td class="vst-text input-label">
  366. <?php print __('FTP') ?> #<span class="ftp-user-number"></span> <a class="ftp-remove-user additional-control" onCLick="App.Actions.WEB.remove_ftp_user(this)">(<?=__('delete')?>)</a>
  367. <input type="hidden" class="v-ftp-user-deleted" name="v_ftp_user[%INDEX%][delete]" value="0" />
  368. <input type="hidden" class="v-ftp-user-is-new" name="v_ftp_user[%INDEX%][is_new]" value="1" />
  369. </td>
  370. </tr>
  371. <tr>
  372. <td class="vst-text step-left input-label">
  373. <?php print __('Username');?><br>
  374. <span style="font-size: 10pt; color:#777;"><?php print __('Prefix will be automaticaly added to username',$user."_");?></span>
  375. </td>
  376. </tr>
  377. <tr>
  378. <td class="step-left">
  379. <input type="text" size="20" class="vst-input v-ftp-user" name="v_ftp_user[%INDEX%][v_ftp_user]" value="">
  380. <small class="hint"></small>
  381. </td>
  382. </tr>
  383. <tr>
  384. <td class="vst-text step-left input-label">
  385. <?php print __('Password');?> / <a href="javascript:void(0);" onClick="FTPrandom(this)"; class="generate" ><?php print __('generate');?></a>
  386. </td>
  387. </tr>
  388. <tr>
  389. <td class="step-left">
  390. <input type="text" class="vst-input v-ftp-user-psw password" name="v_ftp_user[%INDEX%][v_ftp_password]" value="">
  391. </td>
  392. </tr>
  393. <tr>
  394. <td class="vst-text step-left input-label">
  395. <?php print __('Path');?>
  396. </td>
  397. </tr>
  398. <tr>
  399. <td class="step-left">
  400. <input type="hidden" class="vst-input v-ftp-pre-path" name="v_ftp_pre_path" value="">
  401. <input type="text" class="vst-input v-ftp-path" name="v_ftp_user[%INDEX%][v_ftp_path]" value="">
  402. <br /><span class="ftp-path-prefix"><?php print $v_ftp_pre_path_new_user ?></span><span class="ftp-path-value v-ftp-path-hint"></span>
  403. </td>
  404. </tr>
  405. <tr>
  406. <td class="vst-text step-left input-label">
  407. <?php print __('Send FTP credentials to email');?>
  408. </td>
  409. </tr>
  410. <tr>
  411. <td class="step-left">
  412. <input type="text" class="vst-input vst-email-alert-on-psw" name="v_ftp_user[%INDEX%][v_ftp_email]" value="">
  413. </td>
  414. </tr>
  415. </table>
  416. </div>
  417. </div>
  418. <script>
  419. GLOBAL.FTP_USER_PREFIX = <?=json_encode($user.'_')?>;
  420. </script>