/app/check.php

https://github.com/back2arie/Panada · PHP · 226 lines · 198 code · 19 blank · 9 comment · 11 complexity · 74d6fecd01650d636623426e10feca41 MD5 · raw file

  1. <?php
  2. /**
  3. * Panada Installation Check
  4. *
  5. * Checking all minimum requirements
  6. *
  7. * @since Version 0.4.1
  8. * @author Mulia Arifandy Nasution <https://github.com/mul14>
  9. */
  10. define('INDEX_FILE', basename(__FILE__));
  11. define('GEAR', '../panada/');
  12. define('DS', DIRECTORY_SEPARATOR);
  13. define('THISPATH', dirname(__FILE__));
  14. require_once THISPATH . DS . 'config/main.php';
  15. //require_once THISPATH . DS . '../panada' . DS . 'variable' . DS . 'version.php';
  16. ?>
  17. <!DOCTYPE html>
  18. <html>
  19. <head>
  20. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  21. <title>Panada Installation Check</title>
  22. <link rel="stylesheet" href="assets/css/main.css" type="text/css" media="screen" />
  23. <style type="text/css">
  24. .pass {
  25. color: #191;
  26. font-weight: bold;
  27. }
  28. .pass:before {
  29. content: '✔ ';
  30. }
  31. .fail {
  32. color: #911;
  33. font-weight: bold;
  34. }
  35. .fail:before {
  36. content: '✘ ';
  37. }
  38. table {
  39. width: 100%;
  40. border-collapse: collapse;
  41. }
  42. tr:nth-child(odd) {
  43. background: #dfdfdf;
  44. }
  45. tr:nth-child(even) {
  46. background: #fcfcfc;
  47. }
  48. td {
  49. padding: 4px 8px;
  50. font-we
  51. }
  52. td {
  53. width: 25%;
  54. }
  55. td+td{
  56. width: 65%;
  57. }
  58. td+td+td{
  59. width: 10%;
  60. }
  61. .monospace {
  62. font: 14px Consolas,Courier New,Verdana;
  63. }
  64. .box {
  65. font-size: 16px;
  66. text-align: center;
  67. background: #191;
  68. padding: 8px 0;
  69. color: #fff;
  70. text-shadow: 1px 1px 0 #333;
  71. }
  72. </style>
  73. </head>
  74. <body>
  75. <h1 class="logo"><img alt="Logo" src="assets/img/logo.png" /></h1>
  76. <h1>Installation Check</h1>
  77. <h2>Minimum Requirements</h2>
  78. <?php $failed = FALSE ?>
  79. <table>
  80. <tr>
  81. <td>
  82. PHP Version
  83. </td>
  84. <td>
  85. <?php echo PHP_VERSION ?>
  86. </td>
  87. <td>
  88. <?php if (version_compare(PHP_VERSION, '5.3.0', '>=')): ?>
  89. <span class="pass">PASS</span>
  90. <?php else: $failed = TRUE ?>
  91. <span class="fail">FAIL</span>
  92. <?php endif ?>
  93. </td>
  94. </tr>
  95. <tr>
  96. <td>
  97. System Directory
  98. </td>
  99. <?php if (is_dir(THISPATH . DS . '../panada') AND is_file(THISPATH . DS . '../panada' . DS . 'Gear.php')): ?>
  100. <td><span class="monospace"><?php echo THISPATH . DS . 'panada' ?></span></td>
  101. <td><span class="pass">PASS</span></td>
  102. <?php else: $failed = TRUE ?>
  103. <td>&nbsp;</td>
  104. <td><span class="fail">FAIL</span></td>
  105. <?php endif ?>
  106. </tr>
  107. <tr>
  108. <td>
  109. Application Directory
  110. </td>
  111. <?php if (is_dir(THISPATH . DS) AND is_file(THISPATH . DS . 'config' . DS . 'main.php')): ?>
  112. <td><span class="monospace"><?php echo THISPATH . DS ?></td>
  113. <td><span class="pass">PASS</span></td>
  114. <?php else: $failed = TRUE ?>
  115. <td>&nbsp;</td>
  116. <td><span class="fail">FAIL</span></td>
  117. <?php endif ?>
  118. </tr>
  119. </table>
  120. <?php if ($failed === TRUE): ?>
  121. <p class="box fail">Panada may not work correctly with your environment</p>
  122. <?php else: ?>
  123. <p class="box pass">Your environment passed all requirements</p>
  124. <?php endif ?>
  125. <h2>Optional</h2>
  126. <h3>Database</h3>
  127. <table>
  128. <tr>
  129. <td>
  130. MySQL
  131. </td>
  132. <?php if (function_exists('mysql_connect')): ?>
  133. <td><?php echo mysql_get_client_info() ?></td>
  134. <td><span class="pass">PASS</span></td>
  135. <?php else: ?>
  136. <td>&nbsp;</td>
  137. <td><span class="fail">FAIL</span></td>
  138. <?php endif ?>
  139. </tr>
  140. <tr>
  141. <td>
  142. PostgreSQL
  143. </td>
  144. <?php if (function_exists('pg_connect')): ?>
  145. <td>&nbsp;</td>
  146. <td><span class="pass">PASS</span></td>
  147. <?php else: ?>
  148. <td>&nbsp;</td>
  149. <td><span class="fail">FAIL</span></td>
  150. <?php endif ?>
  151. </tr>
  152. <tr>
  153. <td>SQLite</td>
  154. <?php if (function_exists('sqlite_open')): ?>
  155. <td><?php echo sqlite_libversion(); ?></td>
  156. <td><span class="pass">PASS</span></td>
  157. <?php else: ?>
  158. <td>&nbsp;</td>
  159. <td><span class="fail">FAIL</span></td>
  160. <?php endif ?>
  161. </tr>
  162. <tr>
  163. <td>MongoDB</td>
  164. <?php if (class_exists('Mongo')): ?>
  165. <td>&nbsp;</td>
  166. <td><span class="pass">PASS</span></td>
  167. <?php else: ?>
  168. <td>&nbsp;</td>
  169. <td><span class="fail">FAIL</span></td>
  170. <?php endif ?>
  171. </tr>
  172. </table>
  173. <h3>Cache</h3>
  174. <table>
  175. <tr>
  176. <td>APC</td>
  177. <?php if (extension_loaded('apc')): ?>
  178. <td>&nbsp;</td>
  179. <td><span class="pass">PASS</span></td>
  180. <?php else: ?>
  181. <td>&nbsp;</td>
  182. <td><span class="fail">FAIL</span></td>
  183. <?php endif ?>
  184. </tr>
  185. <tr>
  186. <td>Memcache</td>
  187. <?php if (extension_loaded('memcache')): ?>
  188. <td>&nbsp;</td>
  189. <td><span class="pass">PASS</span></td>
  190. <?php else: ?>
  191. <td>&nbsp;</td>
  192. <td><span class="fail">FAIL</span></td>
  193. <?php endif ?>
  194. </tr>
  195. <tr>
  196. <td>Memcached</td>
  197. <?php if (extension_loaded('memcached')): ?>
  198. <td>&nbsp;</td>
  199. <td><span class="pass">PASS</span></td>
  200. <?php else: ?>
  201. <td>&nbsp;</td>
  202. <td><span class="fail">FAIL</span></td>
  203. <?php endif ?>
  204. </tr>
  205. </table>
  206. </body>
  207. </html>