. * */ // Init owncloud require_once('../lib/base.php'); // Check if we are a user OC_Util::checkLoggedIn(); // Load the files we need OC_Util::addStyle( "files", "files" ); OC_Util::addScript( "files", "files" ); OC_Util::addScript( 'files', 'filelist' ); OC_Util::addScript( 'files', 'fileactions' ); if(!isset($_SESSION['timezone'])){ OC_Util::addScript( 'files', 'timezone' ); } OC_App::setActiveNavigationEntry( "files_index" ); // Load the files $dir = isset( $_GET['dir'] ) ? stripslashes($_GET['dir']) : ''; // Redirect if directory does not exist if(!OC_Filesystem::is_dir($dir)) { header("Location: ".$_SERVER['PHP_SELF'].""); } $files = array(); foreach( OC_Files::getdirectorycontent( $dir ) as $i ){ $i["date"] = OC_Util::formatDate($i["mtime"] ); if($i['type']=='file'){ $fileinfo=pathinfo($i['name']); $i['basename']=$fileinfo['filename']; if (!empty($fileinfo['extension'])) { $i['extention']='.' . $fileinfo['extension']; } else { $i['extention']=''; } } if($i['directory']=='/'){ $i['directory']=''; } $files[] = $i; } // Make breadcrumb $breadcrumb = array(); $pathtohere = ""; foreach( explode( "/", $dir ) as $i ){ if( $i != "" ){ $pathtohere .= "/".str_replace('+','%20', urlencode($i)); $breadcrumb[] = array( "dir" => $pathtohere, "name" => $i ); } } // make breadcrumb und filelist markup $list = new OC_Template( "files", "part.list", "" ); $list->assign( "files", $files ); $list->assign( "baseURL", OC_Helper::linkTo("files", "index.php")."?dir="); $list->assign( "downloadURL", OC_Helper::linkTo("files", "download.php")."?file="); $breadcrumbNav = new OC_Template( "files", "part.breadcrumb", "" ); $breadcrumbNav->assign( "breadcrumb", $breadcrumb ); $breadcrumbNav->assign( "baseURL", OC_Helper::linkTo("files", "index.php")."?dir="); $upload_max_filesize = OC_Helper::computerFileSize(ini_get('upload_max_filesize')); $post_max_size = OC_Helper::computerFileSize(ini_get('post_max_size')); $maxUploadFilesize = min($upload_max_filesize, $post_max_size); $freeSpace=OC_Filesystem::free_space('/'); $freeSpace=max($freeSpace,0); $maxUploadFilesize = min($maxUploadFilesize ,$freeSpace); $tmpl = new OC_Template( "files", "index", "user" ); $tmpl->assign( "fileList", $list->fetchPage() ); $tmpl->assign( "breadcrumb", $breadcrumbNav->fetchPage() ); $tmpl->assign( 'dir', $dir); $tmpl->assign( 'readonly', !OC_Filesystem::is_writable($dir)); $tmpl->assign( "files", $files ); $tmpl->assign( 'uploadMaxFilesize', $maxUploadFilesize); $tmpl->assign( 'uploadMaxHumanFilesize', OC_Helper::humanFileSize($maxUploadFilesize)); $tmpl->printPage(); ?>