serviceInformation_components.tpl 9.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168
  1. <script type="text/x-template" id="t-mg-serviceInformationDataTable-{$elementId|strtolower}"
  2. :component_id="component_id"
  3. :component_namespace="component_namespace"
  4. :component_index="component_index"
  5. >
  6. <div class="lu-row lu-row--eq-height {$rawObject->getClasses()}" id="{$rawObject->getId()}" namespace="{$namespace}"
  7. index="{$rawObject->getIndex()}" actionid="{$rawObject->getIndex()}">
  8. <div class="lu-col-lg-12">
  9. <div class="lu-widget">
  10. <div class="lu-widget__header" style="border-bottom: none;">
  11. <div class="lu-widget__top lu-top">
  12. <div class="lu-top__title">
  13. {$MGLANG->absoluteT($title)}
  14. </div>
  15. {if $rawObject->hasButtons()}
  16. <div class="lu-top__toolbar">
  17. {$rawObject->insertButton('updateeButton')}
  18. </div>
  19. {/if}
  20. </div>
  21. </div>
  22. <div class="lu-widget__body">
  23. <div class="no-footer">
  24. <div>
  25. <table role="grid" class="lu-table lu-table--mob-collapsible no-footer dtr-column"
  26. width="100%" v-if="data.status">
  27. <tbody>
  28. <tr>
  29. <td>{$MGLANG->tr('Status')}</td>
  30. <td v-html="data.status.status"></td>
  31. </tr>
  32. <tr v-if="data.node">
  33. <td>{$MGLANG->tr('Node')}</td>
  34. <td>{literal}{{ data.node }}{/literal}</td>
  35. </tr>
  36. <tr v-if="data.config.name ">
  37. <td>{$MGLANG->tr('Hostname')}</td>
  38. <td>
  39. <span>{literal}{{ data.config.name }} {/literal} </span>
  40. </td>
  41. </tr>
  42. <tr v-if="data.status.uptime">
  43. <td>{$MGLANG->tr('Uptime')}</td>
  44. <td>
  45. {literal} {{ data.status.uptime }} {/literal}
  46. </td>
  47. </tr>
  48. <tr v-if="data.status.cpu">
  49. <td>{$MGLANG->tr('CPU Usage')}</td>
  50. <td>
  51. {literal} {{ data.status.cpu }} {/literal} % {$MGLANG->tr('of')} {literal} {{ data.status.cpus }} {/literal}
  52. {$MGLANG->tr('Cores')}
  53. <span v-if="data.status.cpuunit"> {$MGLANG->tr('CPU Units')} {literal} {{ data.status.cpuunit }}{/literal}</span>
  54. </td>
  55. </tr>
  56. <tr v-if="data.status.mem">
  57. <td>{$MGLANG->tr('Memory')}</td>
  58. <td v-if="data.virtualization == 'qemu' && data.status.balloon_min">
  59. {$MGLANG->tr('Total')}: {literal}{{ data.status.maxmem }}{/literal}
  60. {$MGLANG->tr('Usage')}: {literal}{{ data.status.mem }}{/literal}
  61. </td>
  62. <td v-else>
  63. {literal} {{ data.status.mem }} / {{ data.status.maxmem }} {/literal}
  64. </td>
  65. </tr>
  66. <tr v-if="data.virtualization == 'lxc'">
  67. <td>{$MGLANG->tr('SWAP')}</td>
  68. <td>
  69. {literal} {{ data.status.swap }} / {{ data.status.maxswap }} {/literal}
  70. </td>
  71. </tr>
  72. <tr v-if="data.virtualization == 'lxc'">
  73. <td>{$MGLANG->tr('Boot Disk')}</td>
  74. <td>
  75. {literal} {{ data.status.disk }} / {{ data.status.maxdisk }} {/literal}
  76. </td>
  77. </tr>
  78. <tr v-if="data.backupsFilesLimit">
  79. <td>{$MGLANG->tr('Backups Files Limit')}</td>
  80. <td>
  81. {literal} {{ data.backupsFilesLimit }} {/literal}
  82. </td>
  83. </tr>
  84. <tr v-if="data.networkRate">
  85. <td>{$MGLANG->tr('Network Rate')}</td>
  86. <td v-if="data.networkRate">
  87. {literal} {{ data.networkRate }} {/literal}
  88. </td>
  89. <td v-else>
  90. {$MGLANG->tr('Unlimited')}
  91. </td>
  92. </tr>
  93. <tr v-if="data.ipAddresses">
  94. <td>{$MGLANG->tr('IP Addresses')}</td>
  95. <td>
  96. {literal} {{ data.ipAddresses }} {/literal}
  97. </td>
  98. </tr>
  99. <tr v-if="data.cdrom">
  100. <td>{$MGLANG->tr('CD/DVD Disc Image File')}</td>
  101. <td>
  102. <span>{literal} {{ data.cdrom.iso }} {/literal} </span>
  103. </td>
  104. </tr>
  105. <tr v-if="data.sshkeysName">
  106. <td>{$MGLANG->tr('SSH Public Key')}</td>
  107. <td>
  108. <span>{literal} {{ data.sshkeysName }} {/literal} </span>
  109. </td>
  110. </tr>
  111. <tr v-if="data.keyPairs && data.keyPairs.public">
  112. <td>{$MGLANG->tr('SSH Public Key')}</td>
  113. <td>
  114. {$rawObject->insertButton('sshPublicKeyDownloadButton')}
  115. </td>
  116. </tr>
  117. <tr v-if="data.keyPairs && data.keyPairs.private">
  118. <td>{$MGLANG->tr('SSH Private Key')}</td>
  119. <td>
  120. {$rawObject->insertButton('sshPrivateKeyDownloadButton')}
  121. </td>
  122. </tr>
  123. <tr v-if="data.osinfo">
  124. <td>{$MGLANG->tr('OS Info')}</td>
  125. <td>
  126. {literal} {{ data.osinfo.name }} {{ data.osinfo.version }} {{ data.osinfo.machine }} {/literal}
  127. </td>
  128. </tr>
  129. <tr v-if="data.quemuAgent">
  130. <td>{$MGLANG->tr('Quemu Agent')}</td>
  131. <td style="color: red">
  132. {literal} {{ data.quemuAgent }} {/literal}
  133. </td>
  134. </tr>
  135. <tr v-if="data.osinfo">
  136. <td>{$MGLANG->tr('Kernel Release')}</td>
  137. <td>
  138. {literal} {{ data.osinfo.kernelrelease }} {/literal}
  139. </td>
  140. </tr>
  141. <tr v-if="data.hostname">
  142. <td>{$MGLANG->tr('Hostname')}</td>
  143. <td>
  144. {literal} {{ data.hostname }} {/literal}
  145. </td>
  146. </tr>
  147. <tr v-if="data.features">
  148. <td>{$MGLANG->tr('Features')}</td>
  149. <td>
  150. {{ data.features }}
  151. </td>
  152. </tr>
  153. </tbody>
  154. </table>
  155. <div v-else style="padding: 15px; text-align: center; border-top: 1px solid #e9ebf0;">
  156. {$MGLANG->absoluteT('noDataAvalible')}
  157. </div>
  158. </div>
  159. </div>
  160. </div>
  161. <div class="lu-preloader-container lu-preloader-container--full-screen lu-preloader-container--overlay"
  162. v-show="loading_state">
  163. <div class="lu-preloader lu-preloader--sm"></div>
  164. </div>
  165. </div>
  166. </div>
  167. </div>
  168. </script>