index.php 4.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114
  1. <?php
  2. require('functions.php');
  3. ?>
  4. <!DOCTYPE html>
  5. <html lang="de">
  6. <head>
  7. <meta charset="utf-8">
  8. <meta http-equiv="X-UA-Compatible" content="IE=edge">
  9. <meta name="viewport" content="width=device-width, initial-scale=1">
  10. <title>WebVideoViewer</title>
  11. <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css" integrity="sha512-dTfge/zgoMYpP7QbHy4gWMEGsbsdZeCXz7irItjcC3sPUFtf0kuFbDz/ixG7ArTxmDjLXDmezHubeNikyKGVyQ==" crossorigin="anonymous">
  12. <style>
  13. .col-sm-3 > a > img {
  14. width: 100%;
  15. }
  16. .col-sm-3 {
  17. padding-bottom: 15px;
  18. }
  19. </style>
  20. </head>
  21. <body>
  22. <div class="container-fluid">
  23. <?php
  24. $CONFIG = array(
  25. "paths" => array(
  26. "/media/Serien",
  27. "/media/Filme"
  28. )
  29. );
  30. if(!isset($_GET['path']) || !$_GET['path']) {
  31. foreach($CONFIG['paths'] as $path) {
  32. $folderName = split('/', $path);
  33. echo "<h1>" . $folderName[sizeof($folderName) - 1] . "</h1>";
  34. $list = scandir($path);
  35. $list = array_diff($list, array('.', '..'));
  36. echo "<div class=\"row\">";
  37. foreach($list as $object) {
  38. echo "<div class=\"col-sm-3\">";
  39. echo "<a href=\"?path=" . $path . "/" . $object . "\">" . "<img src=\"" . getImageByName($object) . "\" alt=\"" . $object . "\">" . "</a><br>";
  40. echo "</div>";
  41. }
  42. echo "</div>";
  43. }
  44. } else {
  45. $_GET['path'] = str_replace('/..', '', $_GET['path']);
  46. $_GET['path'] = str_replace('../', '', $_GET['path']);
  47. $_GET['path'] = str_replace('..', '', $_GET['path']);
  48. echo "<h1>" . $_GET['path'] . "</h1>";
  49. if(is_dir($_GET['path'])) {
  50. $list = scandir($_GET['path']);
  51. $list = array_diff($list, array('.'));
  52. foreach($list as $object) {
  53. if($object == "..") {
  54. if(in_array($_GET['path'], $CONFIG['paths'])) {
  55. echo "<a href=\"?path=\">Home</a><br>";
  56. } else {
  57. $paths = explode('/', $_GET['path']);
  58. $paths = array_diff($paths, array($paths[sizeof($paths) - 1]));
  59. $pathv = "";
  60. foreach($paths as $key => $path) {
  61. if($key == sizeof($paths) - 1) {
  62. $pathv .= $path;
  63. } else {
  64. $pathv .= $path . "/";
  65. }
  66. }
  67. echo "<a href=\"?path=" . $pathv . "\">" . $object . "</a><br>";
  68. }
  69. } else {
  70. echo "<a href=\"?path=" . $_GET['path'] . "/" . $object . "\">" . $object . "</a><br>";
  71. }
  72. }
  73. } else {
  74. $paths = explode('/', $_GET['path']);
  75. $paths = array_diff($paths, array($paths[sizeof($paths) - 1]));
  76. $pathv = "";
  77. foreach($paths as $key => $path) {
  78. if($key == sizeof($paths) - 1) {
  79. $pathv .= $path;
  80. } else {
  81. $pathv .= $path . "/";
  82. }
  83. }
  84. $mime = explode(';', finfo_file(finfo_open(FILEINFO_MIME), $_GET['path']));
  85. echo "<a href=\"?path=" . $pathv . "\">Back</a> | <a href=\"readfile.php?file=" . $_GET['path'] . "\">Download</a><br>";
  86. echo "<video width=\"auto\" height=\"auto\" controls>";
  87. echo "<source src=\"readfile.php?file=" . $_GET['path'] . "\" type=\"" . $mime[0] . "\">";
  88. echo "Your browser does not support the video tag.";
  89. echo "</video>";
  90. }
  91. }
  92. ?>
  93. </div>
  94. <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
  95. <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/js/bootstrap.min.js" integrity="sha512-K1qjQ+NcF2TYO/eI3M6v8EiNYZfA95pQumfvcVrTHtwQVDG+aHRqLi/ETn2uB+1JqwYqVG3LIvdm9lj6imS/pQ==" crossorigin="anonymous"></script>
  96. </body>
  97. </html>