$file) { $size+=$file->getSize(); } return $size; } function convert_size($size) //velikost v bytech { $affix = array("B","kB","MB","GB","TB"); $degree = floor(log($size)/log(1024)); $size = $size/pow(1024, $degree); return round($size,1)." ".$affix[$degree]; } function extract_path_links($dir,$getText) { while (strpos($dir,"/") != "") { $pozice = strpos($dir,"/"); $slozka = substr($dir,0,$pozice); $cesta = $cesta.$slozka; echo "$slozka ► "; $dir = substr($dir,($pozice+1),(strlen($dir)-1)); $cesta = $cesta."/"; } echo $dir; } error_reporting(E_NONE); //E_ALL, E_ERROR function obsluha_chyb($errno, $errmsg, $filename, $linenum, $vars) { if (error_reporting()) { echo "$filename :: line: $linenum :: $errmsg
"; } } set_error_handler("obsluha_chyb"); $radku = 2; //neměnit, +2 popisky a adresa, +3 pro rozdělovníky obsahu - součást funkce $sloupcu = 6; $getText = "dir"; $isdir = array(); $nazev = array(); $velikost = array(); $zmeneno = array(); if ($_GET[$getText] == "" ) { $dir = "."; } else $dir = $_GET[$getText]; $slozka = opendir($dir); while($soubor=ReadDir($slozka)) { if ($soubor != "." && $soubor != "..") { ++$i; $nazev[$i] = $soubor; $zmeneno[$i] = FileMTime($dir."/".$soubor); if (is_dir($dir."/".$soubor) == TRUE) { // zjišťování složek $isdir[$i] = TRUE; $velikost[$i] = dirSize($dir."/".$soubor); ++$ispocet[složky]; $isvelikost[složky] += $velikost[$i]; } else { // zjišťování souborů $isdir[$i] = FALSE; $velikost[$i] = fileSize($dir."/".$soubor); ++$ispocet[soubory]; $isvelikost[soubory] += $velikost[$i]; }; }; }; $radku += $i; $div_typ = array('horizontal rule','title','title'); $div_oddil = array('0','1','0'); $div_razeni = array('#1','#1','#2'); $div_nazev = array('#special','#složky','#soubory'); foreach ($div_nazev as $value) { ++$radku; }; //musí být na konci, zvyšuje počet řádků $isdir = array_merge($isdir, $div_oddil); $nazev = array_merge($nazev, $div_razeni); $velikost = array_merge($velikost, $div_typ); $zmeneno = array_merge($zmeneno, $div_nazev); array_multisort($isdir, SORT_DESC, $nazev, $zmeneno, $velikost); //font-weight: bold; //echo ''."\n"; ?>
array("jpg","png","gif","bmp")); foreach ($isdir as $key => $value) { if ($zmeneno[$key][0] != "#") //rozlišení obsahu složky od rozdělovníků {//akce nastavené pro soubory a složky echo "\n\n\n"; if ($isdir[$key] == "") //pouze pro soubory (ne složky) - Notification Area { // zjistí příponu podle tří posledních písmen v řetězci a otestuje její výskyt v poli přípon, pak zvýší hodnotu v upozorněních o 1 if (in_array(strtolower(substr($nazev[$key],(strlen($nazev[$key])-3),strlen($nazev[$key]))),$extensions["images"])) ++$notices["images"]; switch ($nazev[$key]) { case "index.php": $notices["index"] = true; break; } }; } else {//akce nastavené pro rozdělovníky echo "\n\n"; echo '\n"; }; }; ?>
Adresa:
" font=3>◄┐ název velikost změněno
"; } else { echo "index.php?$getText=$dir/$nazev[$key]>"; }; // if ($isdir[$key] == 1) { echo "└ "; } else echo "   "; echo "$nazev[$key] ".convert_size($velikost[$key])." ".StrFTime("%d/%m/%Y %H:%M",$zmeneno[$key])."
"; break; case 'title' : echo 'colspan="2">'.substr($zmeneno[$key],1,strlen($zmeneno[$key])-1)." ".$ispocet[substr($zmeneno[$key],1,strlen($zmeneno[$key])-1)]."
'.convert_size($isvelikost[substr($zmeneno[$key],1,strlen($zmeneno[$key])-1)]).""; break; } echo "
foreach(array($promenna) as $value)... $notice = array("typ" => array("info"), "msg" => array('Věděli jste, že v "Notification Area" se zobrazují užitečné informace o obsahu složky?'), "link" => array("index.php?$getText=$dir#")); $notification = array_merge_recursive($notification, $notice); ++$notices["info"]; if ($notices["index"] != false) { $notice = array("typ" => "info", "msg" => "Ve složce se nachází interaktivní obsah (index.php), pro jeho spuštění klikněte zde.", "link" => "$dir/index.php"); $notification = array_merge_recursive($notification, $notice); ++$notices["info"]; } if ($notices["images"] != false) { $notice = array("typ" => "image", "msg" => "Pro spuštění prezentace ".$notices["images"]." obrázků klikněte zde.
*Aleš musí zapracovat :)", "link" => "index.php?$getText=$dir"); $notification = array_merge_recursive($notification, $notice); } array_multisort($notification["typ"], SORT_ASC, $notification["msg"], $notification["link"]); // výpis Notification Area ------------------------------------------------- ?>



'; foreach ($notification["typ"] as $key => $value) { if ($value == "info" && $switch_info == 0) { $switch_info = 1; echo ' '; }; if ($value == "image" && $switch_image == 0) { $switch_image = 1; echo ' '; }; echo ''.$notification["msg"][$key].'

'; // ukončovací tagy - bude fungovat pouze když je každý dílčí typ stejně ukončen - jinak nutno upravit if ($value == "info" && $notification["typ"][$key+1] != "info") { echo ""; }; if ($value == "image" && $notification["typ"][$key+1] != "image") { echo ""; }; }; echo ""; //-------- Debug area ---------------------------------------------------------- echo '
'; echo "Debug area:

"; // print_r($notification); echo ''; foreach ($isdir as $key => $value) { echo ""; //echo ""; }; echo "
$isdir$nazev$velikost$zmeneno
$value$nazev[$key]$velikost[$key]$zmeneno[$key]
$value$nazev[$key]$velikost[$key]$zmeneno[$key]
"; echo '
'; closedir($slozka); ?>