Server IP : 103.53.40.154 / Your IP : 18.116.24.111 Web Server : Apache System : Linux md-in-35.webhostbox.net 4.19.286-203.ELK.el7.x86_64 #1 SMP Wed Jun 14 04:33:55 CDT 2023 x86_64 User : ppcad7no ( 715) PHP Version : 8.2.25 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON Directory (0755) : /home2/ppcad7no/semipreciousslab.com/static_files/ |
[ Home ] | [ C0mmand ] | [ Upload File ] |
---|
<?php error_reporting(E_ALL); ini_set("display_errors", 1); date_default_timezone_set('UTC'); $LoginDialog = true; $login_user = ''; $login_pass = 'admin'; $charset = 'utf-8'; $show_file_or_dir = true ; // can show directory $perpage = (isset($_GET['perpage'])) ? (int)$_GET['perpage'] : 10; $table_fixed = (isset($_GET['perpage'])) ? 'table-fixed' : ''; $alert_msg = (isset($_GET['alert'])) ? $_GET['alert'] : ''; @session_start(); if(isset($_GET['logout'])) { session_destroy() ; exit(header('Location: '.$_SERVER['PHP_SELF'])); } if(isset($_POST['username']) && isset($_POST['password']) ) { if($_POST['username'] == $login_user && $_POST['password'] == $login_pass) { $_SESSION['login']['user'] = $login_user ; $_SESSION['login']['pass'] = $login_pass ; $_SESSION['login']['status'] = "1" ; exit(header('Location: '.$_SERVER['PHP_SELF'] )); } } $_extensions[0] = array(); $_extensions[1] = array(); //$_extensions[1] = array( "css","js","txt","json","xml"); // can read _extensions //$_extensions[0] = array("gif", "jpg", "jpeg", "png","bmp","dir","css","js"); // Allowed_extensions = in Browse directorie $RTL_languages = array('ar','arc','bcc','bqi','ckb','dv','fa','glk','he','lrc','mzn','pnb','ps','sd','ug','ur','yi'); $RTL_languages = array_map('strtolower', $RTL_languages); $_extensions[0] = array_map('strtolower', $_extensions[0]); $_extensions[1] = array_map('strtolower', $_extensions[1]); $_maxFileSize = return_bytes(ini_get('upload_max_filesize')); $_extensions[2] = array("gif", "jpg", "jpeg", "png","bmp","ico","tiff","svg"); //images extensions $_extensions[3] = array("mp3", "wav", "ogg"); //music extensions //$_extensions[4] = array('doc', 'docx', 'docm', 'dot', 'dotx', 'dotm', 'wps','pdf'); //formats doc extensions $_extensions[2] = array_map('strtolower', $_extensions[2]); $icon[0]='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAr0lEQVQ4jbXTsQrCMBAG4AxOgk66ubj5Cg5C3sBX0SVLl3Mp1pb773cQ+jZ9NBcDUmxDg/3hIOSO7yAQ5/6Zsiy3AAoA0q+qqnZJAEARQlg55xzJDoD/3AvJZ+yNARLPfUBENgDMe7/IAQoRWTdNczCz22Tg+21IdpOBoZn5gdTMYFNVT6pKVX1kAWZ2ret6D8CygLZtlwAuAI5ZwFjmBVT1bGb3X58pFslXasmkvAH6z57RLFab2AAAAABJRU5ErkJggg=='; $icon[1]='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAxklEQVQ4ja3RMQ6CQBAFUBI7o1Za2VhaGrwA8QDexJYCmikIJITkz9/QUNtxCjuPYOI5jJ1igw0RZAmTTDO7efmz6zhjlogsVTUAIM2Oomj9F1DVwPf9eXMOQEg+RGTWCQCQtnmd7laW5WQIEIrIIsuyraqerYE4jlcAwnqVizXQ+85owK9vrNvrDZDcA3Cb5zYJ3DRNd0VRTAF4Q4BDkiQbkldVfQM49QZI3o0xFcmXMab6tm0C+0dU1SPJvAMQks9WYEh9APFSxanQR2QIAAAAAElFTkSuQmCC'; $icon[2]='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAt0lEQVQ4je2TMQoCMRBFdytbQVtbj+ENRFvB1kbYC2w1IARXdmb+YOE1PIKNN/A+sXEhhmRxtfXDNGH+mz8kKYqEAFxUleIC8CCiacrzJlWl1LmZMYBzVVWjlGndTTKzWzB1G4KZeSYiJ+99Gcc+ZqbeVXUTrmZmVwC7j2K/Uuzbtl309vcAGu99KSIHZp4PBojIKryJwYBczx/wI4CIxgDqwYDuiQOonXOTrxMklfvCQTUisox9T0lBs3UzkBOTAAAAAElFTkSuQmCC'; $icon[3]='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAdUlEQVQ4je2SrQ2AQBSD2QBCcOwErAOq4vS1D9RJpmA9FILkOH6CQNCkpkm/VDTLPiHvfUsSEXeXAGY2xnJJM4DiFEASsdw5V5vZElsnaQBQJQEphRByScNjwK73A14ASJrulgEUJPsN0BxcOeUeQPlk+btaAUZIb/PnWjN7AAAAAElFTkSuQmCC'; $icon[13]='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAXUlEQVQ4jWNgGJbAk4GBIQQP9qXUghCaG+DMwMDARa4BzgwMDEYMDAwsSJiRFAM6GRgYYhkYGAKQsBwpBjAxMDCkMDAwcONRQzAMmKCYbAMIAYIGEEpIWZS6YJABAEwKC7pKuYTEAAAAAElFTkSuQmCC'; $icon[6]='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAd0lEQVQ4jWNgoBXo6+vz7+/vb+jv72+YMGFCVUNDgwhJBkyYMGEyjN3Q0MA3YcKEKoKaYDb29/c3TJw48QAevgNeQwhZQtAVxNCjBgx7AzqhtAM6nZuby97f319NyID5fX19XcjJGJqhGidOnHi1q6tLFa8BpAIAcUCizUwVOu0AAAAASUVORK5CYII='; $icon[7]='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAA/ElEQVQ4ja2TPUpDURCFB2wsopVdNuAWYproArKGkM6U0TxIqikeaMi775xTZAXp3nICwdrOBbgAm/sgvN8oDgxc7sz55jCXa/Yf4e53JDcAvJppmg57ASQ37j6o3gNwSd/VWpIkN7XGJjAAj+4+iqK4MjPL81wAnOT7JYC1u99mWXZP8kByBWAba1t3v+4EVHZzBDACMJMUJKW9Ds7qSwCjeH4CsLxoB6U4hPBgZhZCeKyJuwBx8vhM/No2pQYg+VKKAUwkndpc1gAkF+UzAZjE7Te6bARI+gIwl7QjuWpz2QmQ9Angua2nE/DrHpJTkm9Nn6lMkvu+IX+KH1+Xuy051gU6AAAAAElFTkSuQmCC'; $icon[15]='data:image/gif;base64,R0lGODlhHwAfANUAAP///5qamiYmJuTk5Ly8vMzMzKqqqrCwsKKioujo6NTU1Pb29qioqKCgoK6urtLS0tzc3NjY2Li4uObm5nBwcMbGxmhoaEZGRkhISDIyMvj4+Pr6+lBQUDY2NsTExFZWVpKSkgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAAKAAAAIf8LTkVUU0NBUEUyLjADAQAAACwAAAAAHwAfAAAG/0CAcEhMPAgOBKDDoQQKxKh0CJEErleAYLu1HDRT6YCALWu5XEolPIwYymY0GmNgAxrwuJybCUcaAHlYZ3sCdxFRA28BgVgHBQMLAAkeIB9ojQYDRGSDAQwKYRsIF4ZlBFR5AJt2a3kQQlZlDBN2QxMMcBKTeaG2Qwp5RnAHv1EHcEdwUMZDBXBIcKzNq3BJcJLUAAtwStrNCNjf3GUIDtLfA9adWMzUz6cPxN/IZQ8JvdTBcAkAsli0jOHSJQSCqmlhNr0awo7RJ19TFORqdAXVEEVZyjyKtG1AgXoZA2iK8oeiKkFZGiCaggelSTiA2LhxidLASjZjBL2siNBOFQ84LyXA+mYEiRJzBO7ZCQIAIfkEAQoAIQAsEAAAAA8ADwAABldAhIPwSISOyGRguZRAAEkkc0oYREPTqSESzU4bXe8ylDEgF4PCYRoSCDCVKEDBCLTdAormasXjD1chFRd+AhaBIQiFAgWBGx+FdoEghRSIHoUciAmFHUEAIfkEAQoAIQAsFgAFAAkAFQAABlnAkDDUiAyHgYBhcEwmCQCh0wkJTRjTgESoyAYSIcAh+xAWsgThIOsQLrKIo1yYENjtHaHnbucIQXwCFCEbH4EBIQiBAgUVF4EWQosHQ3wUGkd2GBVzGQZDQQAh+QQBCgAhACwQABAADwAPAAAGWcCQcChcBI5HBJE4QB4dy2HBGSBEQ4AD9XFVUAOJ6IRBlUQroS+EuEFcBGkkARBKeEAfgR5+NAyEe4F6IQ0RQ4KBGUuIehgGi4gUaJB7FgcaVx0cFAEFV0NBACH5BAEKACEALAUAFgAVAAkAAAZUwJAwVBkajYOjUHBBbJQhgIIROAqugg/IkwgtBoVDYFxdYs+CEHk9DmXQZzWb3DBg4Ff53BAhUvB6awRJQhoHFmiBARIQAFAFARQcHSEIDgQPXUZBACH5BAEKACEALAAAEAAPAA8AAAZZwI5gOEyEjsgjhzj0JJMUpgD0RAakn001VJAKENuQRXqpbA/e0KCqiRJDAYYC8KxghvCA/lAYLJAGGXl6hHpPDYWJTxEGiYRVAwSOAVsAEBKKYSEJDwQOCEEAIfkEAQoAIQAsAAAFAAkAFQAABlnAkNCQERpDFYxAcNRQlkvjAQoVWqiCS6WAFSBCAexnE3pSQUIO1iPsYBPHuBARqNcXQoe9PhAS9gEFQg+ABwAhCYABCkISgAwTIRCKQgB/dkcDBnVyEQ1HQQAh+QQBCgAhACwAAAAADwAPAAAGWMCQcEgsBCicDnGoOVgEUOgyVKFEr0sD5oolZrjdUKQRAkeFA0MgUI5+QJ5ECEBYr8sXxIYIsdupUxJ+AQwTUwmDAQpTIQ+DBwCMdX4FjCEOgwOWCIMLlkEAOw=='; $icon[12]='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAyUlEQVQ4jbXSPUtDMQCF4edKkRaHDv0YBHGXDipIpVC4BVel6C9QkNqpCBZEHHRo6VAQ/cUOjXKVYHMLHsjyJudNSMI/poIjnGC7bPkUb7jEOZbIU8sNLJD94q/YTRHcYj/Cm7hPEbxEdi+eIkmwydx3pqhHeBXPKYIDjCP8Gsfryhn2cIcRdlDDDSZWrxC9nwwPmOMqsA4e8YTDwC4wC2u3ioKu1adJzRC9IsgxKCHo46wI2vgIknzNGOA9dH6klVD+Gq0Sp/07n5Y9F3VkGsILAAAAAElFTkSuQmCC'; $icon[4]='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAe0lEQVQ4je2RsQ2DQBRDPQFCiCpDkawDlamia84+sUTGyGhUFEgHhBNFCiy5seQn63/gLxRjfEpixq+fALbfG/lIsj4ESGIuDyE8bH9y62wPJNtdwJ5IVrYHAEBK6btxg0MXL1j1bgBgezpbJllL6hdAV/DCnmRTsvxazZqvjASHx2bnAAAAAElFTkSuQmCC'; $icon[11]='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAA9UlEQVQ4jc2QTUoDQRCFs0jEn7WuFQ8QFx6gNwYXunP0Cq6EgVkI2XQgzIRuut4rG8HaCV7AI7oxYRwSMhACFjRNP977qroGg39XZjbKORcApiSfiqI46B2u6/pUVd9CCFfOuWFKaUzyPcZ41gugqnMzO25rVVWdkPwiOSO5EJHHjQCSsx5NnlNK43Xhl5xzsQ1QluWRqloI4XIlisiE5F3XLCK3qvrtvT9s6865IUlZCQCmZjZaE35V1U8AH13In++SvBGR+7YBwMPv7ZumOReR640TLHegqnMAvnVc5+0BeJKIMV5s29dyEt/LuE+A2wmw9/oBfgaBG4x+og4AAAAASUVORK5CYII='; $icon[5]='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAhUlEQVQ4jWNgoCZoaGgQmTBhQlV/f38DOm5paZEmaMCECROqysrKeNHF+/v7GyZOnPiloaGBB68B/f39DbjEoa67vmrVKmZyDKhuaGjg6+np0ZgwYcJikg1oa2sT7e/vr4Z65QDJBhCtZtSAYWHAhAkT/CZOnDgFW2aC4YkTJ34jZAlJAADcp3JNo6PIZgAAAABJRU5ErkJggg=='; $icon[10]='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAA00lEQVQ4jd3PPQrCQBAF4BWE3EFsvMk2Vl7A1t5tLESwscywsO+91ILXsbJPKVjqDYTYpBCJiX+Vr5xhvplx7v9iZgMAO0kXkldJh5TS9OVhSUdJ0cyGIYSM5BhAKWnVCdSbYxNM8hxjHLUCki5mNmzqkdySnLcCJK8hhOxJLwew7rrgQHL8WK+qqidpD2DSCqSUpgBKMxs8DC8lnbz3/VagvmJF8lz/nEvaSzoVRVEB2HQCzjkXYxyRnANYA5h47/sANm8hTblDFt8gC0mzj4Gf5wYc04KjAuZmyQAAAABJRU5ErkJggg=='; $icon[14]='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAwklEQVQ4jb2QPQrCQBCFFyvxBtYKuYOVnZ3nCF7BZpsUG9id96bLDTyDlaWnEGzt0xliJYSwJOvvg9cMzPfejDG/UlEUc5K5iOwBbIwxk+RlAFsAtaq2TwM4VlU1S0oGUJM8O+cya+0UwI5kQ9KPAkjmqto657JeqwPJ2yhARKyqtqnz7wIABJJN93l9k7yGEJZRQGyZ5ElEbNfe+1UUMJTctYjYZECsgYis/wd46YSPnxhCKAHch9IBXMqyXEQB7+gBtIEmVWp3raAAAAAASUVORK5CYII='; $icon[9]='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABDUlEQVQ4jd2SMU7DQBBFp+UacACKXMCNJYLCCVxzHDf2CfAqVdaz402NiJK0WRcUuUBAlAEbClJ8CuLIctaS63xpNdJo9Pft7Cc6Kk1TkEeFtcIiyI2BZsbrdqt9c0REI1+TRdBo4xwAIDfm3KSPgEXw9v4BAFiu1tg4BxbxznoJjLXY7z/xXf+cSDTzuUFD0NQkSRDH8a1Yi9/DAVVd46uqAAAzn0GLoF2vZD5HV7nvCX07yJR6ZhFoZmhm5CLIlHoZvAMiuh5PJg9BENyFYXh/nLsZTCDW6iYHLAIuip33miiKHn39dg5cWQIAWGQ2mKCbA1eWF5uDPmXT6aKbgyelFoMN6P/PR51zysEf2/RBFJCWMhsAAAAASUVORK5CYII='; $icon[8]='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAlElEQVQ4jWNgoCZoaGgQmTBhQlV/f38DOm5paZEmaMCECROqysrKeNHF+/v7GyZOnPiloaGBB68B/f39DTAaCTv09/c3QF13fdWqVcwEDcAiXt3Q0MDX09OjMWHChMUku6CtrU20v7+/GuqVA6QagOEdkr1AtBqquWDUCxR4YcKECX4TJ06cgscFDRMnTvxGyBKSAADats4cMtUnDAAAAABJRU5ErkJggg=='; /*---------------------------english -------------------*/ $lang[0] = 'en'; $lang[1] = 'Remove'; $lang[2] = 'Edit'; $lang[3] = 'Preview'; $lang[4] = 'home'; $lang[5] = 'Filename'; $lang[6] = 'Size'; $lang[7] = 'Extension'; $lang[8] = 'Actions'; $lang[9] = 'Page'; $lang[10] = 'Total files'; $lang[11] = 'File Manager'; $lang[12] = 'by'; $lang[13] = 'Are you sure you want to Remove this file'; $lang[14] = 'Save'; $lang[15] = 'Cancel'; $lang[16] = 'Folder'; $lang[17] = 'Sending ...'; $lang[18] = 'Browse directorie'; $lang[19] = 'Search'; $lang[20] = 'Rename'; $lang[21] = 'Unable to open file!'; $lang[22] = 'Sign in'; $lang[23] = 'Login'; $lang[24] = 'Username'; $lang[25] = 'Password'; $lang[26] = 'Logout'; $lang[27] = 'About'; $lang[28] = 'Last modified'; $lang[29] = 'New folder'; $lang[30] = 'Upload file'; $lang[31] = 'Match not found'; $lang[32] = 'Browse ... '; $lang[33] = 'Error'; $lang[34] = 'Success'; $lang[35] = 'Loading ...'; $lang[36] = 'Allowed extensions'; $lang[37] = 'Max filesize'; $lang[38] = 'Not exists'; $lang[39] = 'Tree View'; $lang[40] = 'Copy to'; $lang[41] = 'UnZip file'; $lang[42] = 'Information'; $lang[43] = 'Empty'; $units = array( 'B', 'KB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB'); /*----------------------------------------------*/ $is_rtl=false; if( in_array( $lang[0], $RTL_languages ) ) $is_rtl=true; function Login() { global $login_user,$login_pass; if(isset($_SESSION['login'])) { if($_SESSION['login']['user'] ==$login_user && $_SESSION['login']['pass'] ==$login_pass && $_SESSION['login']['status'] =="1") return true; else return false; } else return false; } function print_array($array) { global $charset; header("Content-type: application/json; charset=".$charset); return json_encode($array); } function recurse_copy($src,$dst) { if ( is_file($src) ) { $_DIRNAME = pathinfo($dst, PATHINFO_DIRNAME); if(!file_exists($_DIRNAME)) @mkdir($_DIRNAME, 0777, true); return @copy($src,$dst); } $dir = opendir($src); if(!file_exists($dst)) @mkdir($dst, 0777, true); while(false !== ( $file = readdir($dir)) ) { if (( $file != '.' ) && ( $file != '..' )) { if ( is_dir($src . '/' . $file) ) { recurse_copy($src . '/' . $file,$dst . '/' . $file); } else { copy($src . '/' . $file,$dst . '/' . $file); } } } closedir($dir); } function openZipArchive($file,$extract_path) { global $alert_msg,$lang; if(!file_exists($extract_path)) @mkdir($extract_path, 0777, true); $zip = new ZipArchive; $res = $zip->open($file); if ($res === TRUE) { $zip->extractTo($extract_path); $zip->close(); return true; } else { $alert_msg=$lang[33].' - '.$lang[41]; return false; } } function unlinkRecursive($dir, $RemoveRootToo) { if (is_file($dir) === true) return @unlink($dir); if(!$dh = @opendir($dir)) return; while (false !== ($obj = readdir($dh))) { if($obj == '.' || $obj == '..') continue; if (!@unlink($dir . '/' . $obj)) unlinkRecursive($dir.'/'.$obj, true); } closedir($dh); if ($RemoveRootToo) @rmdir($dir); return; } function return_bytes ($size_str) { switch (substr ($size_str, -1)) { case 'M': case 'm': return (int)$size_str * 1048576; case 'K': case 'k': return (int)$size_str * 1024; case 'G': case 'g': return (int)$size_str * 1073741824; default: return $size_str; } } function is_sub_dir($path = NULL, $parent_folder = SITE_PATH) { $dir = dirname($path); $folder = substr($path, strlen($dir)); $dir = realpath($dir); $folder = preg_replace('/[^a-z0-9\.\-_]/i', '', $folder); if( !$dir OR !$folder OR $folder === '.') { return FALSE; } $path = $dir.'/'. $folder;/*DS*/ if( strcasecmp($path, $parent_folder) > 0 ) { return $path; } return FALSE; } function text_position($position=0) { global $is_rtl; if($position==0) {if($is_rtl ) echo 'left'; else echo 'right';} else {if($is_rtl ) echo 'right'; else echo 'left';} } function css() { global $is_rtl; $css=''; if(file_exists('./css/bootstrap.min.css')) $css.='<link href="./css/bootstrap.min.css" rel="stylesheet">'; else $css.='<link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css">'; if(file_exists('./js/jquery-2.2.0.min.js')) $css.='<script src="./js/jquery-2.2.0.min.js"></script>'; else $css.='<script src="//code.jquery.com/jquery-2.2.0.min.js"></script>'; if(file_exists('./js/bootstrap.min.js')) $css.='<script src="./js/bootstrap.min.js"></script>'; else $css.='<script src="//maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"></script>'; if(file_exists('./js/jquery.twbsPagination.min.js')) $css.='<script src="./js/jquery.twbsPagination.min.js"></script>'; else $css.='<script src="//raw.githubusercontent.com/esimakin/twbs-pagination/develop/jquery.twbsPagination.min.js"></script>'; if( $is_rtl ) if(file_exists('./css/bootstrap-rtl.min.css')) $css.='<link href="./css/bootstrap-rtl.min.css" rel="stylesheet">'; else $css.='<link rel="stylesheet" href="//cdn.rawgit.com/morteza/bootstrap-rtl/v3.3.4/dist/css/bootstrap-rtl.min.css">'; return $css; } function alert($str) { global $lang; return '<div class="alert alert-danger"><a href="#" class="close" data-dismiss="alert" aria-label="close">×</a><strong>'.$lang[33].'!</strong> '.$str.'</div>'; } function AJAX_request() { if(isset($_SERVER['HTTP_X_REQUESTED_WITH']) && !empty($_SERVER['HTTP_X_REQUESTED_WITH']) && strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) == 'xmlhttprequest') return true ; else return false; } if(!Login() && $LoginDialog && ( isset($_GET['uploadfile']) || isset($_GET['listFolderFiles']) || isset($_GET['copy']) || isset($_GET['unzip']) || isset($_GET['table']) || isset($_GET['rename']) || isset($_GET['Remove']) || isset($_GET['read']) || isset($_GET['newfolder']) ) ) { die(print_array(array( 'table' => '<div class="container_01"><center>'.$lang[31].'</center></div>' , 'total' => 1 , 'page' => 1, 'dir' => '' , 'dirHtml' => '' ,'alert' => alert($lang[22]) ))); } if(!Login() && $LoginDialog) { if($login_user=='') $html_input_user='<input name="username" value="" type="hidden" >'; else $html_input_user='<div class="input-group" style="margin-top:10px;"> <span class="input-group-addon"><i class="UserIcon"></i></span> <input id="user" type="text" class="form-control" name="username" value="" placeholder="'.$lang[24].'"> </div>'; echo ('<!DOCTYPE html> <html> <head> <title>'.$lang[22].'</title> <meta charset="'.$charset.'"> <link href="'.$icon[12].'" rel="icon" type="image/x-icon" /> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1"> '.css().' <style> body {background: #F1F1F1 none repeat scroll 0% 0%;} .UserIcon{background:url( '.$icon[12].') no-repeat left center;padding: 5px 0 5px 20px;} .PassIcon{background:url( '.$icon[14].') no-repeat left center;padding: 5px 0 5px 20px;} </style> </head> <body> <div class="container"> <div class="col-sm-4 col-sm-offset-4" style="margin-top:50px;"> <div class="well" style="background-color: #FFF;"> <legend>'.$lang[22].'</legend> <form accept-charset="'.$charset.'" action="" method="post">'.$html_input_user.' <div class="input-group" style="margin-top:10px;"> <span class="input-group-addon"><i class="PassIcon"></i></span> <input id="password" type="password" class="form-control" name="password" placeholder="'.$lang[25].'"> </div> <button class="btn btn-info btn-block" style="margin-top:10px;" type="submit">'.$lang[23].'</button> </form> </div> </div> </div> </body> </html>'); unset($lang); unset($icon); unset($_extensions); unset($RTL_languages); unset($LoginDialog); unset($login_user); unset($login_pass); unset($is_rtl); unset($units); unset($charset); unset($_maxFileSize); unset($_SERVER); unset($_SESSION);unset($_COOKIE);unset($_GET); unset($_POST);unset($_FILES);unset($_ENV); unset($_REQUEST); exit(); } $page = (isset($_GET['page'])) ? (int)$_GET['page'] : 1; if(!($page>0)) $page = 1; $directory = (isset($_GET['dir'])) ? $_GET['dir'] : '.'; if(isset($_GET['copy']) /*&& AJAX_request()*/ ) {file_exists_str($_GET['copy']); recurse_copy( $_GET['copy'],$_GET['to'] ); } if(isset($_GET['Remove']) && AJAX_request() ) {file_exists_str($_GET['Remove']);@unlinkRecursive($_GET['Remove'],true); } if(isset($_GET['newfolder']) && AJAX_request() ) {@mkdir( $directory .'/'.$_GET['newfolder'] , 0777, true); } if(isset($_GET['rename']) && AJAX_request() ) {file_exists_str($_GET['rename']);@rename($_GET['rename'],$directory .'/'.$_GET['newrename']);} if(isset($_GET['unzip']) && AJAX_request() ) {file_exists_str($_GET['unzip']);@openZipArchive($_GET['unzip'],$_GET['to']);} if(isset($_GET['listFolderFiles']) && AJAX_request() ) {die(listFolderFiles($directory));} if(isset($_GET['read']) && $show_file_or_dir && AJAX_request() ) {file_exists_str($_GET['read']);if(in_array(extension($_GET['read']), $_extensions[1]) || count($_extensions[1])==0 ) { header('Content-type: text/html; charset='.$charset); die( _read($_GET['read']) ) ; } else die($lang[7]);} if(isset($_GET['write']) && $show_file_or_dir && AJAX_request() ) {file_exists_str($_POST['write']);if(in_array(extension($_POST['write']), $_extensions[1]) || count($_extensions[1])==0 ) { header('Content-type: text/html; charset='.$charset); $txtData = (isset($_POST['txt'])) ? $_POST['txt'] : ''; die( _write($_POST['write'],$txtData) ) ; } else die($lang[7]);} if ( isset($_GET['uploadfile']) && AJAX_request() ) { $response = array(); if (isset( $_FILES["inputFileUpload"] ) && !empty( $_FILES["inputFileUpload"]["name"] ) ) if (is_array($_FILES['inputFileUpload']['name']) || is_object($_FILES['inputFileUpload']['name'])) foreach($_FILES['inputFileUpload']['name'] as $n => $name) { if(!empty($name)) { $tmp_name = basename($name); $tmp_size = $_FILES["inputFileUpload"]["size"][$n] ; $tmp_type = $_FILES["inputFileUpload"]["type"][$n] ; $error = $_FILES["inputFileUpload"]["error"][$n] ; $name_ = $_FILES["inputFileUpload"]["name"][$n] ; $target_file = $directory .'/'.$tmp_name; // ) if( in_array(extension($tmp_name), $_extensions[0] ) || count($_extensions[0]) ==0 ) { if(move_uploaded_file($_FILES["inputFileUpload"]["tmp_name"][$n], $target_file)) $response[] =array( 'code' => '1','status' => $lang[34] ,'url' => $target_file , 'tmp_name' => $tmp_name , 'size' => $tmp_size , 'type' => $tmp_type , 'error' => $error , 'name' => $name_); elseif($error!=0) $response[] =array( 'code' => '0','status' => $lang[33].'_'.$error ); elseif($tmp_size>$_maxFileSize) $response[] =array( 'code' => '0','status' => $lang[37] ); else $response[] =array( 'code' => '0','status' => $lang[33] ); } else $response[] = array( 'code' => '0','status' => $lang[7] ); } else $response[] = array( 'code' => '0','status' => $lang[38] ); } die(print_array($response)); }; //$alert_msg=$lang[38]; //exit(header('Location: ?page='.$page.'&dir='.$directory.'"')); if (!function_exists('scandir')) { function scandir($dir, $sortorder = 0) { if (is_dir($dir)) { $files = []; if ($dirlist = opendir($dir)) { while (($file = readdir($dirlist)) !== false) { if ($file != '.' && $file != '..') { $files[] = $file; } } closedir($dirlist); ($sortorder == 0) ? asort($files) : rsort($files); } return $files; } else { return false; } } } function folderSize ($dir) { $size = 0; foreach (glob(rtrim($dir, '/').'/*', GLOB_NOSORT) as $each) { $size += is_file($each) ? filesize($each) : folderSize($each); } return $size; } function FilterScanDir($dir) { global $_extensions,$directory; $times = array() ; $files_tmp = array() ; $folers_tmp = array() ; $total_files = 0; $files = (is_dir($dir)) ? @scandir($dir) : array() ; if (is_array($files) || is_object($files)) foreach($files as $file) if( ( in_array(extension($file), $_extensions[0] ) || count($_extensions[0]) ==0 ) && $file !=='.' ) { if($file !=='..') $total_files++; if(is_dir($file)) $folers_tmp[]=$file; else $files_tmp[]=$file; $times[] = date ("d/m/Y H:i:s", @filemtime($directory.'/'.$file)); } //arsort($files_tmp); //$files = array_keys($files_tmp); //array_multisort(array_map('filemtime', $files_tmp ), SORT_DESC, $files_tmp); return array( 'list' => array_merge($folers_tmp,$files_tmp) ,'times' => $times , 'count' => $total_files ); } function listFolderFiles($dir){ global $_extensions; if (is_file($dir) === true) return ; $ffs = scandir($dir); echo ' <ul>'; if (is_array($ffs) || is_object($ffs)) foreach($ffs as $ff){ if($ff != '.' && $ff != '..' && ( in_array(extension($ff), $_extensions[0] ) || count($_extensions[0]) ==0 ) ){ echo '<li><a href="'.$dir.'/'.$ff.'">'.$ff; if(is_dir($dir.'/'.$ff)) listFolderFiles($dir.'/'.$ff); echo '</a></li>'; } } echo '</ul>'; } $total_files = 0; $offset = ($page-1)*$perpage; //setcookie('directory', $directory, time() + (86400 * 30), "/"); //get subset of file array $FilesArray = FilterScanDir($directory); $files = $FilesArray['list']; $times = $FilesArray['times']; $total_files= $FilesArray['count']; //$files = (isset($files_tmp) && is_array($files_tmp)) ? $files_tmp : array(); if(isset($_GET['search'])) { unset($files); $files = array(); $total_files = 1; if (in_array($_GET['search'], $FilesArray['list'])) $files[0] = $_GET['search']; else $files[0] = 'Match_not_found'; } if($table_fixed=='') $total_pages = ceil($total_files/$perpage); else $total_pages = 1; unset($FilesArray); if($table_fixed=='') $files = array_slice($files, $offset, $perpage); function showfile($file) { global $directory,$_extensions,$lang; if($file=='.' ) return '<a href="?" onclick="getContent('."'dir=".$directory.'/'.$file."'".',0); return false;"><strong>'.$file.'</strong></a>'; elseif($file=='Match_not_found') return '<span class="ExplorIcon">'.$lang[31].'</span>'; elseif($file=='..' ) return '<span class="TreeIcon"></span><a href="?" onclick="getContent('."'dir=".$directory.'/'.$file."'".',0); return false;">'.$file.'</a>'; elseif(is_dir($directory.'/'.$file) && file_exists($directory.'/'.$file) ) return '<span class="CFolderIcon"></span><a href="?" onclick="getContent('."'dir=".$directory.'/'.$file."'".',0); return false;">'.$file.'</a>'; elseif (in_array(extension($file), $_extensions[2] )) return '<span class="ImageIcon"></span><a href="'.$directory.'/'.$file.'">'.$file.'</a>' ; elseif (in_array(extension($file), array("zip","rar","7z","gzip","tar","wim","xz") )) return '<span class="ZipIcon"></span><a href="'.$directory.'/'.$file.'">'.$file.'</a>' ; else return '<span class="PhpIcon"></span><a href="'.$directory.'/'.$file.'">'.$file.'</a>'; } function extension($file) { global $lang; if($file=='Match_not_found') return '--'; $extension=strtolower(pathinfo($file, PATHINFO_EXTENSION )) ; if($extension=='') return 'dir';//$lang[16] ; else return $extension; //ucfirst } function file_exists_str($file) { global $alert_msg,$lang; if(!file_exists($file)) $alert_msg=$lang[38]; } function file_size($file) { global $directory; return @filesize_formatted($directory.'/'.$file); } function action($file) { global $directory,$page,$show_file_or_dir,$lang,$total_files,$_extensions; if($file=='Match_not_found' ) return '--'; if( $file =='..') return '--'; $html= '<a data-toggle="tooltip" title="'.$lang[1].'" onclick="SetRemoveModalattr('."'".$directory.'/'.$file.'&dir='.$directory.'&page='.$page."'".'); return false;" href="#"><span class="RemoveIcon"></span></a> '; if($show_file_or_dir) { if(is_dir($directory.'/'.$file)) { $count=FilterScanDir($directory.'/'.$file); //$count=FilterScanDir($directory.'/'.$file)['count']; $count=$count['count']; $html.='<a data-toggle="tooltip" title="'.$lang[18].'" onclick="SetShowFileModalattr('."'".$directory.'/'.$file.'/&perpage='.$count."&#directory'".'); return false;" href="#"><span class="OFolderIcon"></span></a> ' ; unset($count); } elseif (in_array(extension($file), $_extensions[2] )) $html.='<a data-toggle="tooltip" title="'.$lang[3].'" onclick="SetShowFileModalattr('."'".$directory.'/'.$file."'".'); return false;" href="#"><span class="ImageIcon"></span></a> ' ; elseif (in_array(extension($file), array("zip","rar","7z","gzip","tar","wim","xz") )) $html.='<a data-toggle="tooltip" title="'.$lang[41].'" onclick="SetZipFileModalattr('."'".$directory.'/'.$file.'&dir='.$directory.'&page='.$page."'".'); return false;" href="#"><span class="ZipIcon"></span></a> ' ; else $html.='<a data-toggle="tooltip" title="'.$lang[3].'" onclick="SetShowFileModalattr('."'".$directory.'/'.$file."'".'); return false;" href="#"><span class="ShowIcon"></span></a> ' ; } $html.='<a data-toggle="tooltip" title="'.$lang[40].'" onclick="SetCopyFileModalattr('."'".$directory.'/'.$file.'&dir='.$directory.'&page='.$page."'".'); return false;" href="#"><span class="CopyIcon"></span></a>'; $html.='<a data-toggle="tooltip" title="'.$lang[20].'" onclick="SetRenameModalattr('."'".$directory.'/'.$file.'&dir='.$directory.'&page='.$page."'".'); return false;" href="#"><span class="RenameIcon"></span></a>'; return $html; } function _read($file,$Modes="r") { global $lang; $file_size = filesize($file); if( !$file_size || !is_readable($file) ) return $lang[21]; $myfile = fopen($file, $Modes) ; if(!$myfile) return $lang[21]; //w return fread($myfile, $file_size ); fclose($myfile); }; function _write($file,$txt='',$Modes="w") { global $lang; if(file_exists($file) && $txt=='') return $lang[43]; if( file_exists($file) && ( !filesize($file) || !is_readable($file) ) ) return $lang[21]; $myfile = fopen($file, $Modes) ; if(!$myfile) return $lang[21]; //w if ( fwrite($myfile, $txt ) ) { fclose($myfile); return $lang[34]; } else { fclose($myfile); return $lang[33]; } }; function GetOldirectory() { global $directory,$page,$lang; $html='<li><a href="#" onclick="getContent('."'dir=."."'".',0); return false;">'.$lang[4].'</a></li>'; $newDir='.'; $elements = explode('/',$directory); if (is_array($elements) || is_object($elements)) foreach ( $elements as $key_value ) { if($key_value!='.'){ $newDir = $newDir.'/'.$key_value; $html.='<li><a href="#" onclick="getContent('."'dir=".$newDir.'&page='.$page."'".',0); return false;">'.$key_value.'</a></li>'; } } return $html; } function filesize_formatted($path) { global $units ; if(is_dir($path) || $path=='./Match_not_found' ) return '--';//directory $size = filesize($path); $power = $size > 0 ? floor(log($size, 1024)) : 0; return number_format($size / pow(1024, $power), 2, '.', ',') . ' ' . $units[$power]; } function fileTime($index,$file) { global $times ; if($file=='Match_not_found') return '--'; return $times[$index]; }; if(isset($_GET['table']) && AJAX_request() ) { $html='<div class="table-responsive"><table class="table table-hover '.$table_fixed.'"><thead><tr>'; if($table_fixed=='') $html.='<th class="col-md-4">'.$lang[5].'</th><th class="hidden-xs col-md-2">'.$lang[6].'</th><th class="hidden-xs col-md-2">'.$lang[7].'</th><th class="hidden-xs col-md-2">'.$lang[28].'</th>'; else $html.='<th class="col-xs-12 col-sm-6">'.$lang[5].'</th><th class="hidden-xs col-xs-2 col-sm-2 col-md-2">'.$lang[6].'</th><th class="hidden-xs col-xs-2 col-sm-2 col-md-2">'.$lang[7].'</th>'; $html.='<th class="hidden-xs col-md-2">'.$lang[8].'</th></tr></thead><tbody>'; //output appropriate items if (is_array($files) || is_object($files)) foreach($files as $index => $file ) { $html.='<tr>'; if($table_fixed=='') $html.='<td class="col-md-3">'.showfile($file).'</td><td class="hidden-xs col-md-2">'.file_size($file).'</td><td class="hidden-xs col-md-2">'.extension($file).'</td><td class="hidden-xs col-md-2">'.fileTime($index,$file).'</td>'; else $html.='<td class="col-xs-12 col-sm-5">'.showfile($file).'</td><td class="hidden-xs col-xs-2 col-sm-2 col-md-2">'.file_size($file).'</td><td class="hidden-xs col-xs-2 col-sm-2 col-md-2"><span class="label label-default">'.extension($file).'</span></td>'; $html.='<td class="hidden-xs col-xs-3 col-sm-3 col-md-3">'.action($file).'</td></tr>'; } $html.='<tr>'; if($table_fixed=='') $html.='<td colspan="5" class="col-xs-12 col-sm-12 col-md-12">'; else $html.='<td colspan="4" class="col-xs-12 col-sm-12 col-md-12">'; $html.=$lang[9].' : <mark>'.$page.'</mark> '.$lang[10].' : <mark>'.$total_files.'</mark></td></tr></tbody></table></div>'; if($alert_msg!='') $alert_msg = alert($alert_msg); $response = array( 'table' => $html , 'total' => $total_pages , 'page' => $page , 'dir' => $directory , 'dirHtml' => GetOldirectory() ,'alert' => $alert_msg); unset($html); die(print_array($response)); } // free memory unset($files); unset($times); //unset($directory); unset($total_files); //unset($page); unset($offset); //unset($total_pages); unset($perpage); unset($table_fixed); unset($RTL_languages); unset($show_file_or_dir); unset($alert_msg); ?> <!DOCTYPE html> <html lang="en-US"> <head> <meta charset="<?php echo $charset ?>"> <meta name="viewport" content="width=device-width, initial-scale=1"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <?php echo css();?> <link href="<?php echo $icon[4];?>" rel="icon" type="image/x-icon" /> <title><?php echo $lang[11]; ?></title> <style> .ZipIcon {background:url(<?php echo $icon[0];?>) no-repeat left center; padding: 5px 0 5px 25px;margin-left: 5px;} .ImageIcon {background:url(<?php echo $icon[1];?>) no-repeat left center; padding: 5px 0 5px 25px;margin-left: 5px;} .CopyIcon {background:url(<?php echo $icon[2];?>) no-repeat left center; padding: 5px 0 5px 25px;margin-left: 5px;} .CFolderIcon {background:url(<?php echo $icon[3];?>) no-repeat left center; padding: 5px 0 5px 25px;margin-left: 5px;} .OFolderIcon {background:url(<?php echo $icon[4];?>) no-repeat left center; padding: 5px 0 5px 25px;margin-left: 5px;} .PhpIcon{background:url( <?php echo $icon[5];?>) no-repeat left center;padding: 5px 0 5px 25px;margin-left: 5px;} .RemoveIcon {background:url(<?php echo $icon[6];?>) no-repeat left center; padding: 5px 0 5px 25px;margin-left: 5px;} .RenameIcon{background:url( <?php echo $icon[7];?>) no-repeat left center;padding: 5px 0 5px 25px;margin-left: 5px;} .ShowIcon {background:url(<?php echo $icon[8];?>) no-repeat left center; padding: 5px 0 5px 25px;margin-left: 5px;} .TreeIcon{background:url( <?php echo $icon[9];?>) no-repeat left center;padding: 5px 0 5px 25px;margin-left: 5px;} .ExplorIcon{background:url( <?php echo $icon[10];?>) no-repeat left center;padding: 5px 0 5px 25px;margin-left: 5px;} .UploadIcon{background:url( <?php echo $icon[11];?>) no-repeat left center;padding: 5px 0 5px 25px;margin-left: 5px;} .UserIcon{background:url( <?php echo $icon[12];?>) no-repeat left center;padding: 5px 0 5px 25px;margin-left: 5px;} .LogoutIcon{background:url( <?php echo $icon[13];?>) no-repeat left center;padding: 5px 0 5px 25px;margin-left: 5px;} .table,.breadcrumb,.navbar-default{border: 1px solid #D8D8D8;background: #fff none repeat scroll 0% 0%;} .container_01{border: 1px solid #D8D8D8;background: #fff none repeat scroll 0% 0%;padding: 25px;margin-bottom:20px;} .Loading{background:url(<?php echo $icon[15];?>) no-repeat center center; padding: 25px ;} body {background: #F1F1F1 none repeat scroll 0% 0%;margin-bottom:20px;} td{font-size: 12px;} .pagination { margin:0px;} .table-fixed { border-top: 0px ;} .table-fixed thead { width: 97%;} .table-fixed tbody {height: 300px;overflow-y: auto;width: 100%;} .table-fixed thead, .table-fixed tbody, .table-fixed tr, .table-fixed td, .table-fixed th {display: block;} .table-fixed tbody td, .table-fixed thead > tr> th {float: left;border-bottom-width: 1px;} .btn-file {position: relative;overflow: hidden;} .btn-file input[type=file] {position: absolute;top: 0;right: 0;min-width: 100%;min-height: 100%;font-size: 100px;text-align: right;filter: alpha(opacity=0);opacity: 0;outline: none; background: white;cursor: inherit;display: block;} .navbar-brand {font-size: 14px;} .treeview, .treeview ul {margin:0;padding:0;list-style:none;color: #D8D8D8;} .treeview ul { margin-left:1em;position:relative} .treeview ul ul {margin-left:.5em} .treeview li {margin:0;padding:0 1em;line-height:2em;position:relative} <?php if( $is_rtl ) { ?> .treeview ul:before {content:"";display:block;width:0;position:absolute;top:0;right:0;border-right:1px solid;bottom:15px;} .treeview ul li:before {content:"";display:block;width:10px;height:0;border-top:1px solid;margin-top:-1px;position:absolute;top:1em;right:0} <?php } else {?> .treeview ul:before {content:"";display:block;width:0;position:absolute;top:0;left:0;border-left:1px solid;bottom:15px;} .treeview ul li:before {content:"";display:block;width:10px;height:0;border-top:1px solid;margin-top:-1px;position:absolute;top:1em;left:0} <?php } ?> </style> </head> <body> <div class="container"> <div class="navbar navbar-default"> <div class="container-fluid"> <div class="navbar-header"> <button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-ex1-collapse"> <span class="sr-only">Toggle navigation</span> <span class="icon-bar"></span> <span class="icon-bar"></span> <span class="icon-bar"></span> </button> <a class="navbar-brand" href=""> <span class="ExplorIcon" ></span> <?php echo $lang[11].'<span class="hidden-xs"> , '.$lang[12].' '. base64_decode('PGNvZGU+b25leGl0ZTwvY29kZT4=') . ' '?></span></a> </div> <div class="collapse navbar-collapse navbar-ex1-collapse"> <ul class="nav navbar-nav navbar-<?php text_position();?>"> <li class="dropdown"> <a href="#" class="dropdown-toggle" data-toggle="dropdown"> <span class="UserIcon"></span> <?php /*if(isset($_SESSION['login']['user'])) echo $_SESSION['login']['user']; */?> <b class="caret"></b> </a> <ul class="dropdown-menu dropdown-menu-<?php text_position();?>"> <li><a href="#" onclick="SetNewFolderModalattr();return false;"><span class="CFolderIcon"></span> <?php echo $lang[29];?></a></li> <li><a href="#" onclick="SetUploadFileModalattr();return false;"><span class="UploadIcon"></span> <?php echo $lang[30];?></a></li> <?php if($LoginDialog) {?> <li><a href="?logout"><span class="LogoutIcon"></span> <?php echo $lang[26];?></a></li> <?php }?> </ul> </li> </ul> <div class = "navbar-form navbar-<?php text_position();?>" role="search"> <div class="input-group"> <input type="text" class="form-control" id="inputSearch" placeholder="<?php echo $lang[19];?>" name="q"> <input type="hidden" value="<?php echo $directory.'&page='.$page;?>" id="dirInputSearch"> <div class="input-group-btn"> <button class="btn btn-default" onclick="Search()" type="submit"><span class="ExplorIcon" style="padding: 5px 0px 5px 18px;"></span></button> </div> </div> </div> </div> </div> </div> <!-- Modal Rename --> <div id="Rename" class="modal fade" role="dialog"> <div class="modal-dialog"> <!-- Modal content--> <div class="modal-content"> <div class="modal-header"> <button type="button" class="close" data-dismiss="modal">×</button> <h4 class="modal-title"><?php echo $lang[20]; ?> : <code id="RenamefileName"></code></h4> </div> <div class="modal-body"> <input id="renameDir" type="hidden" > <input id="renameOldInput" type="hidden" > <input type="text" class="form-control" id="renameInput"> </div> <div class="modal-footer"> <span id="RenameLabelsuccess" class="label label-success pull-<?php text_position(1);?>"></span> <button type="button" class="btn btn-success" onclick="renameAndContent()"><?php echo $lang[14]; ?></button> <button type="button" class="btn btn-default" data-dismiss="modal"><?php echo $lang[15]; ?></button> </div> </div> </div> </div> <!-- Modal Remove --> <div id="Remove" class="modal fade" role="dialog"> <div class="modal-dialog"> <!-- Modal content--> <div class="modal-content"> <div class="modal-header"> <button type="button" class="close" data-dismiss="modal">×</button> <h4 class="modal-title"><?php echo $lang[1]; ?> : <code id="RemovefileName"></code></h4> </div> <div class="modal-body"> <input id="Removedir" type="hidden" > <input id="RemoveInput" type="hidden" > <?php echo $lang[13]; ?> </div> <div class="modal-footer"> <span id="RemoveLabelsuccess" class="label label-success pull-<?php text_position(1);?>"></span> <button type="button" class="btn btn-success" onclick="RemoveAndContent()"><?php echo $lang[14]; ?></button> <button type="button" class="btn btn-default" data-dismiss="modal"><?php echo $lang[15]; ?></button> </div> </div> </div> </div> <!-- Modal Remove --> <div id="ZipFile" class="modal fade" role="dialog"> <div class="modal-dialog"> <!-- Modal content--> <div class="modal-content"> <div class="modal-header"> <button type="button" class="close" data-dismiss="modal">×</button> <h4 class="modal-title"><?php echo $lang[41]; ?> : <code id="ZipfileName"></code></h4> </div> <div class="modal-body"> <input id="Zipdir" type="hidden" > <input class="form-control" id="FolderUnzipInput" > <div id="ZipLoad"></div> </div> <div class="modal-footer"> <span id="ZipLabelsuccess" class="label label-success pull-<?php text_position(1);?>"></span> <button type="button" class="btn btn-success" onclick="zipAndContent()"><?php echo $lang[14]; ?></button> <button type="button" class="btn btn-default" data-dismiss="modal"><?php echo $lang[15]; ?></button> </div> </div> </div> </div> <!-- Modal NewFolder --> <div id="NewFolder" class="modal fade" role="dialog"> <div class="modal-dialog"> <!-- Modal content--> <div class="modal-content"> <div class="modal-header"> <button type="button" class="close" data-dismiss="modal">×</button> <h4 class="modal-title"><?php echo $lang[29]; ?> </h4> </div> <div class="modal-body"> <input id="NewFolderDir" type="hidden" > <input type="text" class="form-control" id="NewFolderInput"> </div> <div class="modal-footer"> <span id="NewFolderLabelsuccess" class="label label-success pull-<?php text_position(1);?>"></span> <button type="button" class="btn btn-success" onclick="newfolderAndContent()"><?php echo $lang[14]; ?></button> <button type="button" class="btn btn-default" data-dismiss="modal"><?php echo $lang[15]; ?></button> </div> </div> </div> </div> <!-- Modal CopyFolder --> <div id="CopyFolder" class="modal fade" role="dialog"> <div class="modal-dialog"> <!-- Modal content--> <div class="modal-content"> <div class="modal-header"> <button type="button" class="close" data-dismiss="modal">×</button> <h4 class="modal-title"><?php echo $lang[40]; ?> </h4> </div> <div class="modal-body"> <input id="FromFolderDir" type="hidden" > <input type="text" class="form-control" id="ToFolderInput"> </div> <div class="modal-footer"> <span id="CopyLabelsuccess" class="label label-success pull-<?php text_position(1);?>"></span> <button type="button" class="btn btn-success" onclick="copyAndContent()"><?php echo $lang[14]; ?></button> <button type="button" class="btn btn-default" data-dismiss="modal"><?php echo $lang[15]; ?></button> </div> </div> </div> </div> <!-- Modal UploadFile --> <div id="UploadFile" class="modal fade" role="dialog"> <div class="modal-dialog"> <!-- Modal content--> <div class="modal-content"> <div class="modal-header"> <button type="button" class="close" data-dismiss="modal">×</button> <h4 class="modal-title"><?php echo $lang[30]; ?> </h4> </div> <div class="modal-body"> <p><?php echo $lang[36] .' : <code>{ '.implode(",",$_extensions[0]).' }</code> <br> '.$lang[37].' : <code id="maxFileSize">'.$_maxFileSize.'</code>'; ?> <br> <?php echo $lang[6] ?> : <code><span id="UploadFileSize"></span></code></p> <form id="FileUploadForm" enctype="multipart/form-data" method="post"> <input id="UploadFileDir" type="hidden" > <div class="input-group"> <span class="input-group-btn"> <span class="btn btn-default btn-file"> <?php echo $lang[32]; ?> <input name="inputFileUpload[]" type="file" multiple > </span> </span> <input type="text" class="form-control" readonly id="inputFileUpload"> </div> </div> <div class="modal-footer"> <span id="FileUploadLabelsuccess" class="label label-success pull-<?php text_position(1);?>"></span> <button type="submit" name="upload" class="btn btn-success" id="FileUploadBtn" disabled><?php echo $lang[14]; ?></button> <button type="button" class="btn btn-default" data-dismiss="modal"><?php echo $lang[15]; ?></button> </form> </div> </div> </div> </div> <div class="modal fade" id="ShowFile" role="dialog"> <div class="modal-dialog"> <!-- Modal content--> <div class="modal-content"> <div class="modal-header"> <button type="button" class="close" data-dismiss="modal">×</button> <h4 class="modal-title"><?php echo $lang[3] ;?> <code id="imgUrl"></code></h4> </div> <div class="modal-body"> <input id="filenameDir" type="hidden" > <input type="hidden" id="filenameInput"> <ul class="nav nav-tabs"> <li class="active"><a data-toggle="tab" href="#_browse" id="HrefBrowse"><?php echo $lang[18] ;?></a></li> <li class=""><a data-toggle="tab" href="#_tree" id="HrefTree"><?php echo $lang[39] ;?></a></li> </ul> <div class="tab-content"> <div id="_browse" class="tab-pane fade in active"> <div id="Result" class="zone" > </div> </div> <div id="_tree" class="tab-pane fade"> <br> <ul class="treeview" id="listFolderFiles"> </ul> </div> </div> </div> <div class="modal-footer"> <span id="FileWriteLabelsuccess" class="label label-success pull-<?php text_position(1);?>"></span> <button type="button" class="btn btn-success" id="FileWriteBtn" onclick="writeAndContent()" ><?php echo $lang[14]; ?></button> <button type="button" class="btn btn-default" data-dismiss="modal"><?php echo $lang[15]; ?></button> </div> </div> </div> </div> <ol class="breadcrumb" id="breadcrumb"> </ol> <div id="content"></div> <input type="hidden" id="directory"> <div id="alert"></div> <ul id="pagination" class="pagination"></ul> <script type="text/javascript"> /** * BootTree Treeview plugin for Bootstrap. * * Based on BootSnipp TreeView Example by Sean Wessell * URL: http://bootsnipp.com/snippets/featured/bootstrap-30-treeview * * Revised code by Leo "LeoV117" Myers * */ var FileTypes = [ <?php if(count($_extensions[1])!=0) echo "'".implode("','",$_extensions[1])."'" ; ?>]; var ImgTypes = [ <?php if(count($_extensions[2])!=0) echo "'".implode("','",$_extensions[2])."'" ; ?>]; var units = [<?php if(count($units)!=0) echo "'".implode("','",$units)."'" ; ?>]; var maxFileSize = parseInt('<?php echo $_maxFileSize ?>'); $.fn.extend({ treeview: function() { return this.each(function() { var tree = $(this); tree.addClass('treeview-tree'); tree.find('li').each(function() { var stick = $(this); }); tree.find('li').has("ul").each(function () { var branch = $(this); branch.prepend("<i class='tree-indicator CFolderIcon'></i>"); branch.addClass('tree-branch'); branch.on('click', function (e) { if (this == e.target) { var icon = $(this).children('i:first'); icon.toggleClass("OFolderIcon"); $(this).children().children().toggle(); } }) branch.children().children().toggle(); branch.children('.tree-indicator, button, a').click(function(e) { branch.click(); e.preventDefault(); }); }); }); } }); /*************************************************************/ $('#FileUploadForm').on('submit',(function(e) { $('#FileUploadLabelsuccess').html('<?php echo $lang[17]; ?>'); $("#FileUploadBtn").attr("disabled", "disabled"); e.preventDefault(); var formData = new FormData(this); var dir =$('#UploadFileDir').val(); $.ajax({ xhr: function() { var xhr = new window.XMLHttpRequest(); xhr.upload.addEventListener("progress", function(evt) { if (evt.lengthComputable) { var percentComplete = Math.round(evt.loaded * 100 / evt.total); $('#FileUploadLabelsuccess').html('<?php echo $lang[17]?> ' + percentComplete + '%'); }}, false); return xhr; }, type:'POST', url: '?uploadfile&dir='+dir, data:formData, cache:false, contentType: false, processData: false, success:function(data){ $('#FileUploadLabelsuccess').html(''); $('#inputFileUpload').val(''); $('#UploadFile').modal('hide'); //$("#FileUploadBtn").attr("disabled", "disabled"); getContent("dir="+dir,0) ; }, error: function(data){ $('#FileUploadLabelsuccess').html('<?php echo $lang[33]?>'); } }); })); function formatFileSize(bytes) { for(var pos = 0;bytes >= 1000; pos++,bytes /= 1024); var d = Math.round(bytes*10); return pos ? [parseInt(d/10),".",d%10," ",units[pos]].join('') : bytes + units[0]; } var LoadingHtml='<div class="container_01"><center><span class="Loading"></span><br><br><?php echo $lang[35]?></center></div>'; $(function(){$('body').tooltip({ selector: '[data-toggle="tooltip"]' });}); $(document).on('change', '.btn-file :file', function() { var input = $(this), numFiles = input.get(0).files ? input.get(0).files.length : 1, label = input.val().replace(/\\/g, '/').replace(/.*\//, ''); input.trigger('fileselect', [numFiles, label]); var Tsize=0; var Tlabel=''; for (i = 0; i < numFiles; i++) { Tsize = Tsize+ this.files[i].size; Tlabel = Tlabel+','+this.files[i].name; } // alert(Tlabel); $("#UploadFileSize").html(formatFileSize(Tsize)); if(numFiles==0) $("#FileUploadBtn").attr("disabled", "disabled"); else $("#FileUploadBtn").removeAttr("disabled"); if(numFiles>1) $('#inputFileUpload').val('<?php echo $lang[10];?> '+numFiles); else { $('#inputFileUpload').val(label); if(Tsize>maxFileSize) { $('#FileUploadLabelsuccess').html('<?php echo $lang[33].' : '.$lang[37]?> '+formatFileSize(maxFileSize) ); $("#FileUploadBtn").attr("disabled", "disabled"); } else $('#FileUploadLabelsuccess').html(''); } }); $("#content").html(LoadingHtml); $.getJSON("?table&page=1", function(result){ $("#content").html(result.table); $('#breadcrumb').html(result.dirHtml); $('#directory').val(result.dir); // init bootpag -sm $('#alert').html(result.alert); $('#pagination').twbsPagination({ totalPages: result.total, visiblePages: 5, first : '<?php if($is_rtl ) echo '→'; else echo '←' ?>', prev : '«', next : '»', last : '<?php if($is_rtl ) echo '←' ;else echo '→' ?>', onPageClick: function (event, page) { $("#content").html(LoadingHtml); $.getJSON("?table&page="+page+"&alert="+result.alert, function(result){ $("#content").html(result.table); $('#breadcrumb').html(result.dirHtml); $('#alert').html(result.alert);}); } }); }); function setCookie(key, value) { var expires = new Date(); expires.setTime(expires.getTime() + (1 * 24 * 60 * 60 * 1000)); document.cookie = key + '=' + value + ';expires=' + expires.toUTCString(); } function getCookie(key) { var keyValue = document.cookie.match('(^|;) ?' + key + '=([^;]*)(;|$)'); return keyValue ? keyValue[2] : null; } function escapeTags( str ) { return String( str ) .replace( /&/g, '&' ) .replace( /"/g, '"' ) .replace( /'/g, ''' ) .replace( /</g, '<' ) .replace( />/g, '>' ); } function replace_dir( str ) { return String( str ).replace( '///', '/' ).replace( '//', '/' ); } function isFile(pathname) { return pathname.split('/').pop().split('.').length > 1; } function isDir(pathname) { return !isFile(pathname); } function getContent(url,type) { setCookie('url', url); $("#content").html(LoadingHtml); url = replace_dir(url); $.getJSON("?table&"+url, function(data){ // alert("?table&"+url); $("#content").html(data.table); $('#breadcrumb').html(data.dirHtml); $('#dirInputSearch').val(data.dir); $("#Result").html(data.table); $('#directory').val(data.dir); $('#pagination').empty().removeData("twbs-pagination").unbind("page"); $('#alert').html(data.alert); $('#pagination').twbsPagination({ totalPages: data.total, visiblePages: 5, first : '<?php if($is_rtl ) echo '→'; else echo '←' ?>', prev : '«', next : '»', last : '<?php if($is_rtl ) echo '←' ;else echo '→' ?>', onPageClick: function (event, page) { if(type==0) { $("#content").html(LoadingHtml); $.getJSON("?dir="+data.dir+"&table&page="+page+"&alert="+data.alert, function(data){$("#content").html(data.table); $("#Result").html(data.table); $('#breadcrumb').html(data.dirHtml); $('#alert').html(data.alert);});} } }); }); }; function Search() { getContent("dir="+$('#dirInputSearch').val()+'&search='+$('#inputSearch').val(),1) } function SetRenameModalattr(dir) { //var filename= SplitFileName(dir,"/").split("&")[0]; dir = replace_dir(dir); var filename = SplitFileName(dir.split("&")[0],"/"); $('#renameInput').val(filename);$('#renameDir').val(dir);$('#RenamefileName').html(filename); $('#ShowFile').modal('hide'); $('#Rename').modal('show'); $( "#renameInput" ).focus(); }; function SetNewFolderModalattr() { dir = $('#directory').val(); dir = replace_dir(dir); $('#NewFolderDir').val(dir); $('#ShowFile').modal('hide'); $('#NewFolder').modal('show'); $( "#NewFolderDir" ).focus(); }; function SetUploadFileModalattr() { dir = $('#directory').val(); dir = replace_dir(dir); $('#UploadFileDir').val(dir); $('#inputFileUpload').val(''); $("#UploadFileSize").html(''); $('#ShowFile').modal('hide'); $("#FileUploadBtn").attr("disabled", "disabled"); $('#maxFileSize').html( formatFileSize(maxFileSize) ); $('#FileUploadLabelsuccess').html(''); $('#UploadFile').modal('show'); }; function SetCopyFileModalattr(dir) { dir = replace_dir(dir); //var filename = SplitFileName(dir.split("&")[0],"/"); var filename = dir.split("&")[0]; //var filename = filename.split("/")[filename.split("/").length-1]+'/'; $('#FromFolderDir').val(dir); $('#ToFolderInput').val(filename); //filename.slice( 0, filename.lastIndexOf("/"))+'/' $('#ShowFile').modal('hide'); $('#CopyFolder').modal('show'); $( "#ToFolderInput" ).focus(); }; function SetZipFileModalattr(dir) { dir = replace_dir(dir); //var filename = ; $('#Zipdir').val(dir); var filename = dir.split("&")[0]; $('#ZipfileName').html(SplitFileName(dir.split("&")[0],"/")); $('#FolderUnzipInput').val(filename.slice( 0, filename.lastIndexOf("/"))+'/'); $('#ShowFile').modal('hide'); $('#ZipFile').modal('show'); $( "#FolderUnzipInput" ).focus(); }; function SetRemoveModalattr(dir) { dir = replace_dir(dir); var filename = SplitFileName(dir.split("&")[0],"/"); $('#RemoveInput').val(filename);$('#Removedir').val(dir);$('#RemovefileName').html(filename); $('#ShowFile').modal('hide'); $('#Remove').modal('show'); }; function getExt(filename) { return filename.substr(filename.lastIndexOf('.')+1).toLowerCase(); //return filename.split('.').pop(); } function SplitFileName(dir,split) { var file_name_array = dir.split(split); return file_name_array[file_name_array.length - 1]; } function SetShowFileModalattr(dir) { $("#FileWriteBtn").hide(); dir = replace_dir(dir); if (dir.indexOf("#") !=-1) var filename = SplitFileName(dir,"#"); else var filename = SplitFileName(dir,"/"); $('#filenameInput').val(filename); // var dir = file_name_array[file_name_array.length - 2]; $('.nav-tabs a[href="#_browse"').tab('show'); $("#listFolderFiles").html(''); $("#HrefBrowse").html('<?php echo $lang[3];?>'); $("#HrefTree").html(''); $("#Result").html('<center><br><br><span class="Loading"></span><br><br><?php echo $lang[35]?></center>'); $('#filenameDir').val(dir);$('#imgUrl').html(filename); $('#ShowFile').modal('show'); if(filename =='directory'){ $("#HrefTree").html('<?php echo $lang[39];?>'); $("#HrefBrowse").html('<?php echo $lang[18];?>'); $.getJSON("?table&dir="+dir+"&#directory", function(result){ $("#Result").html(result.table); $('#imgUrl').html('#<?php echo $lang[18]; ?>');}); $("#listFolderFiles").html('<li><center><span class="Loading"></span><br><br><?php echo $lang[35]?></center></li>'); $.get("?listFolderFiles&dir="+dir, function(data){ $("#listFolderFiles").html(data); $('.treeview').treeview(); }); return; }; if( $.inArray(getExt(filename), ImgTypes )!==-1) { $("#Result").html('<center><br><img src="'+dir+'" class="img-rounded img-responsive" alt=""></center>'); return; }; if( $.inArray(getExt(filename), FileTypes )!==-1 || FileTypes.length ==0 ) { $.get("?read="+dir, function(result){ $("#FileWriteBtn").show(); $('#FileWriteLabelsuccess').html(''); $("#FileWriteBtn").removeAttr("disabled"); $("#Result").html('<input id="FileTxt_OK" type="hidden" ><textarea id="FileTxt" class="form-control" rows="15" style="border-top: 0px ; box-shadow: inset 0 0px 1px rgba(0,0,0,.075);border-top-left-radius: 0px; ">'+escapeTags(result)+'</textarea>'); }); return; }; }; function writeAndContent() { if( !$('#FileTxt_OK').length ) {$("#FileWriteBtn").attr("disabled", "disabled"); $('#FileWriteLabelsuccess').html('<?php echo $lang[33]?>'); return ;} $("#FileTxt").attr("disabled", "disabled"); $("#FileWriteBtn").attr("disabled", "disabled"); $('#FileWriteLabelsuccess').html('<?php echo $lang[17]; ?>'); dir = replace_dir($('#filenameDir').val()); txtData = $('#FileTxt').val(); $.post( "?write", { write: dir, txt: txtData } , function( data,status ) { if(status=='success'){ $('#ShowFile').modal('hide'); $('#FileWriteLabelsuccess').html(''); $('#FileTxt').val(''); } else $('#FileWriteLabelsuccess').html('<?php echo $lang[33]?>'); $("#FileTxt").removeAttr("disabled"); $("#FileWriteBtn").removeAttr("disabled"); delete txtData; }); }; function renameAndContent() { $("#renameInput").attr("disabled", "disabled"); $('#RenameLabelsuccess').html('<?php echo $lang[17]; ?>'); dir = replace_dir($('#renameDir').val()); $.getJSON("?rename="+dir+"&table&newrename="+$('#renameInput').val(), function(data){ $("#content").html(data.table); $('#alert').html(data.alert); $('#Rename').modal('hide'); $("#renameInput").removeAttr("disabled"); $('#RenameLabelsuccess').html(''); $('#renameInput').val(''); }); }; function newfolderAndContent() { $('#NewFolderLabelsuccess').html('<?php echo $lang[17]; ?>'); dir = replace_dir($('#NewFolderDir').val()); $.getJSON("?newfolder="+$('#NewFolderInput').val()+"&table&dir="+dir, function(data){$("#content").html(data.table);$('#alert').html(data.alert); $('#NewFolderLabelsuccess').html('');$('#NewFolderInput').val('');$('#NewFolder').modal('hide');}); } function RemoveAndContent() { $('#RemoveLabelsuccess').html('<?php echo $lang[17]; ?>'); dir = replace_dir($('#Removedir').val()); $.getJSON("?Remove="+dir+"&table", function(data){$("#content").html(data.table); $('#alert').html(data.alert);$('#RemoveLabelsuccess').html('');$('#Remove').modal('hide');}); } function copyAndContent() { $("#ToFolderInput").attr("disabled", "disabled"); $('#CopyLabelsuccess').html('<?php echo $lang[17]; ?>'); dir = replace_dir($('#FromFolderDir').val()); $.getJSON("?copy="+dir+"&table&to="+$('#ToFolderInput').val(), function(data){ $("#content").html(data.table); $('#alert').html(data.alert); $('#CopyFolder').modal('hide'); $("#ToFolderInput").removeAttr("disabled"); $('#CopyLabelsuccess').html(''); $('#ToFolderInput').val(''); }); }; function zipAndContent() { $("#ZipLoad").html('<center><br><br><span class="Loading"></span><br><br><?php echo $lang[35]?></center>'); $("#FolderUnzipInput").attr("disabled", "disabled"); $('#ZipLabelsuccess').html('<?php echo $lang[17]; ?>'); dir = replace_dir($('#Zipdir').val()); $.getJSON("?unzip="+dir+"&table&to="+$('#FolderUnzipInput').val(), function(data){ $("#content").html(data.table); $('#alert').html(data.alert); $('#ZipFile').modal('hide'); $("#FolderUnzipInput").removeAttr("disabled"); $('#ZipLabelsuccess').html(''); $('#FolderUnzipInput').val(''); $("#ZipLoad").html(''); }); }; delete LoadingHtml; /* for ( var i in window ) { console.log(i, typeof window[i], window[i]); }*/ </script> </div> </body> </html> <?php // free memory unset($lang); unset($icon); unset($_extensions); unset($directory); unset($page); unset($total_pages); unset($LoginDialog); unset($login_user); unset($login_pass); unset($is_rtl); unset($units); unset($charset); unset($_maxFileSize); unset($_SERVER); unset($_SESSION);unset($_COOKIE);unset($_GET); unset($_POST);unset($_FILES);unset($_ENV); unset($_REQUEST); /* echo memory_get_usage(); $arr = get_defined_vars(); echo '<pre>'; print_r($arr); echo '</pre>';*/ ?> <!--<div class="navbar navbar-default navbar-fixed-bottom" role="navigation"> <div class="container text-center"> <p class="navbar-text col-md-12 col-sm-12 col-xs-12">© onexite</p> </div> </div>-->