PageRenderTime 39ms CodeModel.GetById 8ms RepoModel.GetById 0ms app.codeStats 0ms

/v1.1/puslapiai/dievai/narsykle.php

http://mightmedia.googlecode.com/
PHP | 135 lines | 112 code | 14 blank | 9 comment | 37 complexity | 7060085e3f6b015c9f652cfcf8313bb4 MD5 | raw file
Possible License(s): AGPL-1.0, LGPL-2.0, GPL-2.0
  1. <?php
  2. if (!defined("LEVEL") || LEVEL < 30 || !defined("OK")) { header('location: ?home'); }
  3. // biski kintamuju
  4. $host = "?id,46;a,8"; // pagrindinis
  5. $denny = "conf.php|localhost.php";
  6. // knopkes
  7. $img_back="images/admin/back.gif";
  8. $img_folder="images/admin/folder.gif";
  9. $img_file="images/admin/file.gif";
  10. $img_home="images/admin/home.gif";
  11. $img_surce="images/icons/page_white_code_red.png";
  12. if (isset($url['v'])) {
  13. $denny = explode("|", $denny);
  14. if (!in_array($url['v'], $denny) && is_file($url['d'].$url['v'])) {
  15. $h = "<table bgcolor=#EEEEEE><tr><td width=30 valign='top'><code>";
  16. for ($i = 1; $i <= count(file($url['d'].$url['v'])); $i++) $h .= $i.".<br>";
  17. $h .= "</code></td><td>";
  18. $h .= highlight_file($url['d'].$url['v'], true);
  19. $h .= "</td></tr></table>";
  20. hide($url['v']." - failo turinys",$h);
  21. unset($h);
  22. }
  23. else { klaida("Draudziama!","Konfidenciali informacija!"); }
  24. }
  25. function s($arr, $str) {
  26. if (is_array($arr)) {
  27. $ilgis = strlen($str); $return = '';
  28. foreach ($arr as $key => $val) {
  29. $tmp = substr($val, 0, $ilgis);
  30. if ($str == $tmp) {
  31. $return .= $val."\n";
  32. }
  33. }
  34. return $return;
  35. }
  36. return false;
  37. }
  38. // grazina failo pletini
  39. function strip_ext($name,$ext='') {
  40. $ext = substr($name, strlen($ext)-4, 4);
  41. if(strpos($ext,'.') === false) // jeigu tai folderis
  42. {
  43. return " "; // grazinam biski tarpu kad rusiavimas butu ciki,
  44. // susirusiuoja - folderiai virsuje
  45. }
  46. return $ext; // jei tai failas grazinam jo pletini
  47. }
  48. // grazina failus is nurodytos direktorijos ir sukisa i masyva
  49. function getFiles($path) {
  50. $files = array();
  51. $fileNames = array();
  52. $i = 0;
  53. if (is_dir($path)) {
  54. if ($dh = opendir($path)) {
  55. while (($file = readdir($dh)) !== false) {
  56. if (($file == ".") || ($file == "..")) continue;
  57. $fullpath = $path . "/" . $file;
  58. //$fkey = strtolower($file);
  59. $fkey = $file;
  60. while (array_key_exists($fkey,$fileNames)) $fkey .= " ";
  61. $a = stat($fullpath);
  62. $files[$fkey]['size'] = $a['size'];
  63. if ($a['size'] == 0) $files[$fkey]['sizetext'] = "-";
  64. else if ($a['size'] > 1024 && $a['size'] <= 1024*1024) $files[$fkey]['sizetext'] = (ceil($a['size']/1024*100)/100) . " K"; //patvarkom failo dydziu atvaizdavima
  65. else if ($a['size'] > 1024*1024) $files[$fkey]['sizetext'] = (ceil($a['size']/(1024*1024)*100)/100) . " Mb";
  66. else $files[$fkey]['sizetext'] = $a['size'] . " bytes";
  67. $files[$fkey]['name'] = $file;
  68. $e = strip_ext($file); // $e failo pletinys - pvz: .gif
  69. $files[$fkey]['type'] = filetype($fullpath); // failo tipas, dir, file ir pan
  70. $k=$e.$file; // kad butu lengvau rusiuoti;
  71. $fileNames[$i++] = $k;
  72. }
  73. closedir($dh);
  74. }
  75. else die (klaida("KLAIDA","Negalime nuskaityti direktorijos: $path"));
  76. }
  77. else die (klaida("KLAIDA","Tai ne direktorija: $path"));
  78. sort($fileNames,SORT_STRING); // surusiuojam
  79. $sortedFiles = array();
  80. $i = 0;
  81. foreach($fileNames as $f) {
  82. $f = substr($f, 4, strlen($f)-4); //sutvarko failo pletinius
  83. if($files[$f]['name'] !='') $sortedFiles[$i++] = $files[$f];
  84. }
  85. return $sortedFiles;
  86. }
  87. // Navigacija
  88. $startdir = "./";
  89. if(isset($url['d'])) {
  90. $prev = $url['d'];
  91. $folder = $url['d'];
  92. }
  93. else { $folder = $startdir; $prev='';}
  94. // END navigacija
  95. $files = getFiles($folder);
  96. $return = '';
  97. foreach ($files as $file) {
  98. //if(strip_ext($file['name'])!='htaccess') {
  99. if($file['name']!='.htaccess') { //Jeigu tai nera htaccess failas
  100. $image = $img_file;
  101. $extra = "<a href=\"".url('v,'.$file['name'].'')."\"><img src=\"$img_surce\" border=\"0\"/></a>";
  102. if($file['type']=='dir') { //jeigu direktorija
  103. $image = $img_folder;
  104. $extra = "";
  105. $cmd='?id,46;a,8;d,'.$prev.$file['name'].'/';
  106. }
  107. else $cmd=$prev.$file['name'];
  108. $return .= "$extra <a href=\"$cmd\" title=\"".$file['type'].", ".$file['sizetext']."\"><img src=\"$image\" border=\"0\" /> ".$file['name']."</a> <br/>";
  109. }
  110. }
  111. if (isset($url['d'])) {
  112. $folder = explode("/",$url['d']);
  113. $link = ''; $dir = '';
  114. foreach ($folder as $fname) {
  115. $dir .= $fname."/";
  116. $link .= " <a href=\"?id,46;a,8;d,$dir\"\">$fname</a>";
  117. }
  118. }
  119. lentele("<a href=\"?id,46;a,8\">Failai</a>: ".((!empty($link))?$link:'')."", $return);
  120. ?>