index.php 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112
  1. <?php
  2. if(!file_exists('config.default.json')){
  3. header('Location: install');
  4. die();
  5. }elseif(file_exists('install')){
  6. $files = scandir('install');
  7. if(empty($files)){
  8. @rmdir('install');
  9. }
  10. }
  11. if(!isset($_GET['type'])||!isset($_GET['id'])){
  12. header('Location: page-index');
  13. die();
  14. }
  15. require_once('php/include.php');
  16. $salt = salt();
  17. if(isset($_GET['get'])){
  18. $get = $_GET['get'];
  19. unset($_GET['get']);
  20. if(!isset($_GET['type']) || !isset($_GET['id'])){
  21. $type = 'page';
  22. $id = 'index';
  23. }else{
  24. $type = $_GET['type'];
  25. $id = $_GET['id'];
  26. }
  27. switch($get){
  28. case 'state':
  29. $json = Array();
  30. $json['state'] = Array();
  31. $json['state']['data'] = $_GET;
  32. switch($type){
  33. case 'user':$url='~'.$id;break;
  34. case 'group':$url='+'.$id;break;
  35. case 'issue':$url='!'.$id;break;
  36. case 'page':$url='page-'.$id;break;
  37. default:$url=$type.'-'.$id;
  38. }
  39. $json['state']['url'] = $url;
  40. $json['state']['title'] = ucwords($type.' - '.$id);
  41. die(json_encode($json));
  42. break;
  43. case 'api':
  44. require_once('api.php');
  45. break;
  46. case 'settings':
  47. $settings = Array();
  48. $keys = Array('expire');
  49. foreach($keys as $key){
  50. $settings[$key] = get($key);
  51. }
  52. die(json_encode($settings));
  53. break;
  54. case 'captcha':
  55. generate_captcha();
  56. break;
  57. }
  58. }
  59. ?>
  60. <!doctype html>
  61. <html>
  62. <head>
  63. <meta charset=utf-8>
  64. <meta name="viewport" content="width=device-width, user-scalable=false, initial-scale=1, maximum-scale=1.0, user-scalable=0, user-scalable=no">
  65. <meta name="apple-mobile-web-app-capable" content="yes" />
  66. <link rel="shortcut icon" href="img/favicon.ico" />
  67. <link rel="icon" type="image/png" href="img/favicon.png" />
  68. <link href="http://code.jquery.com/ui/1.10.3/themes/black-tie/jquery-ui.css" rel="stylesheet" type="text/css"/>
  69. <link href="css/style.css" rel="stylesheet" type="text/css"/>
  70. <title>Bugs</title>
  71. <script src="js/modernizr.js"></script>
  72. <script>
  73. (function(window,Modernizr){
  74. Modernizr.mediaquery = Modernizr.mq('only all');
  75. var checks = [
  76. 'csscalc',
  77. 'cookies',
  78. 'localstorage',
  79. 'history',
  80. 'rgba',
  81. 'applicationcache',
  82. 'mediaquery',
  83. 'fontface'
  84. ],i,
  85. msg = '';
  86. for(i in checks){
  87. if(!Modernizr[checks[i]]){
  88. msg += (msg==''?'':', ')+checks[i];
  89. }
  90. }
  91. if(msg != ''){
  92. alert("Your browser is unable to support all the features this site needs.\nChecks failed: "+msg);
  93. }
  94. })(window,Modernizr);
  95. </script>
  96. <script src="http://code.jquery.com/jquery-1.10.1.min.js"></script>
  97. <script src="http://code.jquery.com/ui/1.10.3/jquery-ui.min.js"></script>
  98. <script src="js/handlebars.js"></script>
  99. <script src="js/jquery.history.js"></script>
  100. <script src="js/jquery.storage.js"></script>
  101. <script src="js/jquery.cookie.js"></script>
  102. <script src="js/jquery.nicescroll.js"></script>
  103. <script src="js/shortcut.js"></script>
  104. <script src="js/index.js"></script>
  105. </head>
  106. <body lang="en">
  107. <div id="topbar"></div>
  108. <div id="content" class="container"></div>
  109. <div id="loading"></div>
  110. </body>
  111. </html>