list_services.html 9.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178
  1. <!-- Begin toolbar -->
  2. <div class="l-sort">
  3. <div class="l-sort__inner">
  4. <div class="l-unit-toolbar__buttonstrip">
  5. <a href="/edit/server/" class="button button-secondary"><i class="fas fa-gear status-icon maroon"></i><?=_('Configure');?></a>
  6. <a href="/list/rrd/" class="button button-secondary"><i class="fas fa-chart-area status-icon blue"></i><?=_('Graphs');?></a>
  7. <a href="/list/updates/" class="button button-secondary"><i class="fas fa-arrows-rotate status-icon green"></i><?=_('Updates');?></a>
  8. <?php if (!empty($_SESSION['FIREWALL_SYSTEM']) && $_SESSION['FIREWALL_SYSTEM'] == "iptables" ) {?>
  9. <a href="/list/firewall/" class="button button-secondary"><i class="fas fa-shield-blank status-icon red"></i><?=_('Firewall');?></a>
  10. <?php }?>
  11. <a href="/list/log/?user=system&token=<?=$_SESSION['token']?>" class="button button-secondary"><i class="fas fa-binoculars status-icon orange"></i><?=_('Logs');?></a>
  12. <div class="actions-panel" key-action="js">
  13. <a class="data-controls do_servicerestart button button-secondary button-danger">
  14. <i class="do_servicerestart fas fa-arrow-rotate-left status-icon red"></i><?=_('Restart');?>
  15. <input type="hidden" name="servicerestart_url" value="/restart/system/?hostname=<?=$sys['sysinfo']['HOSTNAME'] ?>&token=<?=$_SESSION['token']?>&system_reset_token=<?=time(); ?>">
  16. <div class="dialog js-confirm-dialog-servicerestart" title="<?=_('Confirmation');?>">
  17. <p><?=sprintf(_('RESTART_CONFIRMATION'), 'Server');?></p>
  18. </div>
  19. </a>
  20. </div>
  21. </div>
  22. <div class="l-sort-toolbar">
  23. <form action="/bulk/service/" method="post" id="objects">
  24. <input type="hidden" name="token" value="<?=$_SESSION['token']?>">
  25. <select class="form-select" name="action">
  26. <option value=""><?=_('apply to selected');?></option>
  27. <option value="stop"><?=_('stop');?></option>
  28. <option value="start"><?=_('start');?></option>
  29. <option value="restart"><?=_('restart');?></option>
  30. </select>
  31. <button type="submit" class="l-sort-toolbar__filter-apply" value="" title="<?=_('apply to selected');?>">
  32. <i class="fas fa-arrow-right"></i>
  33. </button>
  34. </form>
  35. </div>
  36. </div>
  37. </div>
  38. <!-- End toolbar -->
  39. <div class="l-center units">
  40. <div>
  41. <div class="l-unit__col l-unit__col--right server-info">
  42. <div class="icon-server-info"><i class="fas fa-server"></i></div>
  43. <div class="l-unit__servername separate server-info-name"><?=$sys['sysinfo']['HOSTNAME']?></div>
  44. <div class="server-info-data">
  45. <table class="u-text-small">
  46. <tr>
  47. <td>
  48. <div class="l-unit__stat-cols clearfix">
  49. <div class="l-unit__stat-col l-unit__stat-col--left wide"><b><?=_('Hestia Control Panel');?>:</b></div>
  50. <div class="l-unit__stat-col l-unit__stat-col--right">
  51. <?php if ($sys['sysinfo']['RELEASE'] != 'release') { ?>
  52. <i class="fas fa-flask icon-large status-icon red" title="<?=$sys['sysinfo']['RELEASE'];?>"></i>
  53. <?php } ?>
  54. <?php if ($sys['sysinfo']['RELEASE'] == 'release') { ?>
  55. <i class="fas fa-cube icon-large status-icon" title="<?=_('Production release');?>"></i>
  56. <?php } ?>
  57. &nbsp;v<?=$sys['sysinfo']['HESTIA']?></div>
  58. </div>
  59. </td>
  60. <td>
  61. <div class="l-unit__stat-cols clearfix">
  62. <div class="l-unit__stat-col l-unit__stat-col--left wide"><b><?=_('Operating System');?>:</b></div>
  63. <div class="l-unit__stat-col l-unit__stat-col--right"><?=$sys['sysinfo']['OS']?> <?=$sys['sysinfo']['VERSION']?> (<?=$sys['sysinfo']['ARCH']?>)</div>
  64. </div>
  65. </td>
  66. <td>
  67. <div class="l-unit__stat-cols clearfix">
  68. <div class="l-unit__stat-col l-unit__stat-col--left wide"><b><?=_('Load Average');?>:</b></div>
  69. <div class="l-unit__stat-col l-unit__stat-col--right"><?=$sys['sysinfo']['LOADAVERAGE']?></div>
  70. </div>
  71. </td>
  72. <td>
  73. <div class="l-unit__stat-cols clearfix last">
  74. <div class="l-unit__stat-col l-unit__stat-col--left wide"><b><?=_('Uptime');?>:</b></div>
  75. <div class="l-unit__stat-col l-unit__stat-col--right"><?=humanize_time($sys['sysinfo']['UPTIME'])?></div>
  76. </div>
  77. </td>
  78. </tr>
  79. </table>
  80. </div>
  81. </div>
  82. </div>
  83. <div class="table-header">
  84. <div class="l-unit__col l-unit__col--right">
  85. <div class="clearfix l-unit__stat-col--left super-compact">
  86. <input id="toggle-all" type="checkbox" name="toggle-all" value="toggle-all" title="<?=_('Select all');?>" onchange="checkedAll('objects');">
  87. </div>
  88. <div class="clearfix l-unit__stat-col--left wide-2"><b><?=_('Service');?></b></div>
  89. <div class="clearfix l-unit__stat-col--left text-right compact-2">&nbsp;</div>
  90. <div class="clearfix l-unit__stat-col--left wide-3"><b><?=_('Description');?></b></div>
  91. <div class="clearfix l-unit__stat-col--left text-center"><b><?=_('Uptime');?></b></div>
  92. <div class="clearfix l-unit__stat-col--left text-center"><b><?=_('CPU');?></b></div>
  93. <div class="clearfix l-unit__stat-col--left text-center"><b><?=_('Memory');?></b></div>
  94. </div>
  95. </div>
  96. <!-- Begin services status list item loop -->
  97. <?php
  98. foreach ($data as $key => $value) {
  99. ++$i;
  100. if ($data[$key]['STATE'] == 'running') {
  101. $status = 'active';
  102. $action = 'stop';
  103. $spnd_icon = 'fa-stop';
  104. $state_icon = 'fa-circle-check status-icon green';
  105. } else {
  106. $status = 'suspended';
  107. $action = 'start';
  108. $spnd_icon = 'fa-play';
  109. $state_icon = 'fa-circle-minus status-icon red';
  110. }
  111. if(in_array($key, $phpfpm)){
  112. $edit_url="php";
  113. } else {
  114. $edit_url=$key;
  115. }
  116. $cpu = $data[$key]['CPU'] / 10;
  117. $cpu = number_format($cpu, 1);
  118. if ($cpu == '0.0') $cpu = 0;
  119. ?>
  120. <div class="l-unit <?php if ($status == 'suspended') echo 'l-unit--suspended';?> animate__animated animate__fadeIn" sort-name="<?=strtolower($key)?>"
  121. sort-memory="<?=$data[$key]['MEM']?>" sort-cpu="<?=$cpu;?>" sort-uptime="<?=$data[$key]['RTIME']?>">
  122. <div class="l-unit__col l-unit__col--right">
  123. <div class="clearfix l-unit__stat-col--left super-compact">
  124. <input id="check<?=$i ?>" class="ch-toggle" type="checkbox" title="<?=_('Select');?>" name="service[]" value="<?=$key?>">
  125. </div>
  126. <div class="clearfix l-unit__stat-col--left wide-2">
  127. <i class="fas <?=$state_icon;?> icon-pad-right"></i>
  128. <b><a href="/edit/server/<? echo $edit_url ?>/" title="<?=_('edit');?>: <?=$key?>"><?=$key?></a></b>
  129. </div>
  130. <div class="clearfix l-unit__stat-col--left text-center compact-2">
  131. <div class="actions-panel clearfix">
  132. <div class="actions-panel__col actions-panel__edit shortcut-enter" key-action="href">
  133. <a href="/edit/server/<? echo $edit_url ?>/" title="<?=_('edit');?>"><i class="fas fa-pencil status-icon orange status-icon dim icon-large"></i></a>
  134. </div>
  135. <div class="actions-panel__col actions-panel__stop shortcut-s" key-action="js">
  136. <a id="restart_link_<?=$i?>" class="data-controls do_servicerestart" title="<?=_('restart');?>">
  137. <i class="do_servicerestart data-controls fas fa-arrow-rotate-left status-icon highlight status-icon dim icon-large"></i>
  138. <input type="hidden" name="servicerestart_url" value="/restart/service/?srv=<?=$key?>&token=<?=$_SESSION['token']?>">
  139. <div id="restart_link_dialog_<?=$i?>" class="dialog js-confirm-dialog-servicerestart" title="<?=_('Confirmation');?>">
  140. <p><?=sprintf(_('RESTART_CONFIRMATION'),$key); ?></p>
  141. </div>
  142. </a>
  143. </div>
  144. <div class="actions-panel__col actions-panel__delete shortcut-delete" key-action="js">
  145. <a id="delete_link_<?=$i?>" class="data-controls do_servicestop" title="<?=_($action)?>">
  146. <i class="do_servicestop fas <?=$spnd_icon?> status-icon red status-icon dim icon-large"></i>
  147. <input type="hidden" name="servicestop_url" value="/<?=$action ?>/service/?srv=<?=$key?>&token=<?=$_SESSION['token']?>">
  148. <div id="delete_dialog_<?=$i?>" class="dialog js-confirm-dialog-servicestop" title="<?=_('Confirmation');?>">
  149. <p><?php if($action == 'stop'){ echo sprintf(_('Are you sure you want to stop service'),$key); }else{ echo sprintf(_('Are you sure you want to start service'),$key); }?></p>
  150. </div>
  151. </a>
  152. </div>
  153. </div>
  154. </div>
  155. <div class="clearfix l-unit__stat-col--left wide-3"><?=_($data[$key]['SYSTEM'])?></div>
  156. <div class="clearfix l-unit__stat-col--left text-center"><b><?=humanize_time($data[$key]['RTIME'])?></b></div>
  157. <div class="clearfix l-unit__stat-col--left text-center"><b><?=$cpu?></b></div>
  158. <div class="clearfix l-unit__stat-col--left text-center"><b><?=$data[$key]['MEM']?> <?=_('mb');?></b></div>
  159. </div>
  160. </div>
  161. <?php } ?>
  162. </div>
  163. <div id="vstobjects">
  164. <div class="l-separator"></div>
  165. <div class="l-center">
  166. <div class="l-unit-ft">
  167. <div class="l-unit__col l-unit__col--left clearfix"></div>
  168. <div class="l-unit__col l-unit__col--right"></div>
  169. </div>
  170. </div>
  171. </div>