Exemple #1
0
function list_dir($dir_handle, $path, $filename_pattern, $content_pattern)
{
    while (false !== ($file = readdir($dir_handle))) {
        $dir = $path . '/' . $file;
        if (is_dir($dir) && $file != '.' && $file != '..' && $file != 'iframe_cleaner_backup') {
            $handle = @opendir($dir) or die("undable to open file {$file}");
            list_dir($handle, $dir, $filename_pattern, $content_pattern);
        } elseif ($file != '.' && $file != '..') {
            //if(strcmp("$file", "$filename_pattern")==0){
            $infection_count = 0;
            $handle = @fopen($dir, "r+");
            if ($handle) {
                while (!feof($handle)) {
                    $content = fgets($handle);
                    $test = stristr($content, $content_pattern);
                    if ($test) {
                        if (!$infection_count) {
                            copy($dir, './iframe_cleaner_backup/' . str_replace('/', '$', $path) . '$' . $file);
                        }
                        $infection_count++;
                    }
                }
                fclose($handle);
                if ($infection_count) {
                    echo "<li><a href='{$webpath}{$dir}'>{$webpath}{$dir}</a> Found " . $infection_count . " infection(s)</li>";
                    global $total_infection_count;
                    $total_infection_count += $infection_count;
                }
            }
            //}
        }
    }
    closedir($dir_handle);
}
Exemple #2
0
function list_dir($base, $cur, $level = 0)
{
    global $PHP_SELF, $BASE;
    if ($dir = opendir($base)) {
        while ($entry = readdir($dir)) {
            /* chemin relatif à la racine */
            $file = $base . "/" . $entry;
            if (is_dir($file) && !in_array($entry, array(".", ".."))) {
                /* marge gauche */
                for ($i = 1; $i <= 4 * $level; $i++) {
                    echo "&nbsp;";
                }
                /* l'entrée est-elle le dossier courant */
                if ($file == $cur) {
                    echo "<b>{$entry}</b><br />\n";
                } else {
                    //          echo "<a href=$file> $entry </a><br />\n";
                    echo "<button class='GoButton' id={$entry} > {$entry} </button><br />\n";
                }
                /* l'entrée est-elle dans la branche dont le dossier courant est la feuille */
                if (ereg($file . "/", $cur . "/")) {
                    list_dir($file, $cur, $level + 1);
                }
            }
        }
        closedir($dir);
    }
}
Exemple #3
0
function carve($start, $stop, $dir, $pre)
{
    //tokenize start and end file name by (.)
    $start_token = explode(".", $start);
    $stop_token = explode(".", $stop);
    //check to make sure file is in (prefix).(suffix) format (size 2)
    if (count($start_token) != 3 or count($stop_token) != 3) {
        print "Invalid file name format, must be two strings separated by a period (eg. cxt.12345)\n";
    } else {
        //assign start and end timestamp
        $start_tstamp = $start_token[2];
        $stop_tstamp = $stop_token[2];
        //store capture directory contents into variable
        $dircontents = list_dir($dir, $pre);
        //extract since it was passed from list_dir function
        extract($dircontents);
        //if first x digits match (in this case 6) then treat them as matches
        //and add to the results array
        $carve_results = array();
        $j = $i = 0;
        for ($i; $i < count($dircontents); $i++) {
            if (substr_compare($start_tstamp, $dircontents[$i], 0, 5) == 0) {
                if ($dircontents[$i] >= $start_tstamp and $dircontents[$i] <= $stop_tstamp) {
                    $carve_results[$j] = $dircontents[$i];
                    $j++;
                }
            }
        }
    }
    //sort results and return array
    sort($carve_results);
    return $carve_results;
}
Exemple #4
0
function list_dir($path, $level = 1)
{
    if ($d = dir($path)) {
        if (preg_match('/^(.*)\\/$/', $path)) {
            // удаляем / на конце, если есть
            $path = substr($path, 0, -1);
        }
        while (false !== ($entry = $d->read())) {
            if ($entry != '.' and $entry != '..') {
                if (is_dir("{$path}/{$entry}")) {
                    echo sprintf("%{$level}s", ' ') . "[{$path}/{$entry}]\n";
                    list_dir("{$path}/{$entry}", $level + 1);
                } else {
                    $level1 = 50 - $level;
                    echo sprintf("%{$level}s", ' ') . sprintf("%-{$level1}s", $entry);
                    echo sprintf("%10s", filesize("{$path}/{$entry}")) . "\t" . filetype("{$path}/{$entry}");
                    echo "\t" . fileowner("{$path}/{$entry}") . "\n";
                }
            }
        }
        // if
        $d->close();
    }
    // if
}
function list_dir($dir_handle, $path, $keyword, $search_type)
{
    // print_r ($dir_handle);
    echo "<ol>";
    //running the while loop
    while (false !== ($file = readdir($dir_handle))) {
        $delimeter = "\n";
        $dir = $path . '/' . $file;
        if (is_dir($dir) && $file != '.' && $file != '..') {
            $handle = @opendir($dir) or die("undable to open file {$file}");
            list_dir($handle, $dir, $keyword, $search_type);
        } elseif ($file != '.' && $file != '..') {
            if ($search_type == 'file') {
                if (strcmp("{$file}", "{$keyword}") == 0) {
                    echo "<li><a href='{$webpath}.{$dir}'>{$webpath}.{$dir}</a>&nbsp;&nbsp;";
                    echo "<input type=\"button\" value=\"Remove\" onClick=\"verify();\"></li>";
                    //unlink($webpath.$dir);
                    $search_result = 1;
                } else {
                    $search_result = 0;
                }
            } else {
                $handle = @fopen($dir, "r");
                if ($handle) {
                    while (!feof($handle)) {
                        if ($search_type == "content") {
                            $content = fgets($handle);
                            if ($res = stristr($content, $keyword)) {
                                //$get_read = file($webpath.$dir);
                                //$explode = explode("\n",$get_read);
                                //$buffer = stream_get_line( $handle, 1024, $delimiter );
                                //echo $buffer;
                                echo "<li><a href='{$webpath}.{$dir}'>{$webpath}.{$dir}</a></li>";
                                echo str_replace($keyword, "<b>{$keyword}</b>", $content) . '</b>';
                                $search_result = 1;
                            } else {
                                $search_result = 0;
                            }
                        }
                    }
                    fclose($handle);
                }
            }
            //if(strcmp("$file", "$filename_pattern")==0){
            //} else {
            //echo "false strcmp";
            //}
        }
    }
    echo "</ol>";
    closedir($dir_handle);
    return $search_result;
}
Exemple #6
0
 /**
  * ueditor在线图片管理
  *
  * @author          mrmsl <*****@*****.**>
  * @date            2013-07-16 21:56:18
  *
  * @return void 无返回值
  */
 public function ueditorImageManagerAction()
 {
     require CORE_PATH . 'functions/dir.php';
     $file_arr = list_dir(UPLOAD_PATH);
     $str = '';
     if ($file_arr) {
         rsort($file_arr, SORT_STRING);
         foreach ($file_arr as $file) {
             if (preg_match('/\\.(gif|jpeg|jpg|png|bmp)$/i', $file)) {
                 $str .= $file . 'ue_separate_ue';
             }
         }
     }
     exit(str_replace(dir_path(UPLOAD_PATH), '', $str));
 }
Exemple #7
0
function list_dir($dir,$exclude_dir)
{
	global $grand_array;
	$array_dir=scandir($dir);
	foreach($array_dir as $key=>$value)
		{
	
			if(is_dir($dir.'/'.$value) && $value!='.' && $value!='..' && !in_array($dir.'/'.$value,$exclude_dir))
			{
				//echo $dir.'/'.$value.'<br>';
				$grand_array[]=$dir.'/'.$value;
				list_dir($dir.'/'.$value,$exclude_dir);				
			}		
		}
}
Exemple #8
0
function list_dir($dirname)
{
	if($dirname[strlen($dirname)-1]!='\\')
		$dirname.='\\';
	static $result_array=array();  
	$handle=opendir("./");
	while ($file = readdir($handle))
	{
		if($file=='.'||$file=='..')
			continue;
		if(is_dir($dirname.$file))
			list_dir($dirname.$file.'\\'); 
		else
			$result_array[]=$file;
	}	
	closedir($handle);
	return $result_array;
}
Exemple #9
0
function list_dir($dir_handle, $path, $webpath, $first = false)
{
    global $output;
    while (false !== ($file = readdir($dir_handle))) {
        $dir = $path . '/' . $file;
        if (is_dir($dir) && $file != '.' && $file != '..') {
            $handle = @opendir($dir) or die('TinyMCE plugin - Unable to open file ' . $file);
            list_dir($handle, $dir, $webpath . '/' . $file);
        } elseif ($file != '.' && $file != '..') {
            if (!$first) {
                $output .= ',';
            } else {
                $first = false;
            }
            $output .= '["' . $webpath . '/' . $file . '", "' . $webpath . '/' . $file . '"]';
        }
    }
    closedir($dir_handle);
}
 /**
  * Takes a given path and prints the content in json format.
  */
 public static function get_content($app, $path)
 {
     $path = __DIR__ . '/../data/' . $path;
     $path = rtrim($path, '/');
     require_once __DIR__ . '/helper.php';
     // get dir content
     $files = array();
     $folders = array();
     list_dir($path, $files, $folders);
     $files = array_merge($folders, $files);
     // get info
     foreach ($files as $k => $v) {
         $i = get_file_info($v['path'], array('name', 'size', 'date', 'fileperms'));
         if ($v['folder']) {
             $files[$k] = array('name' => $i['name'], 'size' => '---', 'date' => date('Y-m-d H:i:s', $i['date']), 'perm' => unix_perm_string($i['fileperms']), 'folder' => True);
         } else {
             $files[$k] = array('name' => $i['name'], 'size' => human_filesize($i['size']), 'date' => date('Y-m-d H:i:s', $i['date']), 'perm' => unix_perm_string($i['fileperms']), 'folder' => False);
         }
         $files[$k]['link'] = str_replace(__DIR__ . '/../data/', '', $v['path']);
     }
     return json_encode(array('status' => 'ok', 'files' => $files));
 }
Exemple #11
0
function show_contents()
{
    global $index;
    global $current_dir, $directory, $uploads_folder_name, $mess, $direction, $timeoffset;
    global $order, $totalsize, $font, $tablecolor, $bordercolor, $headercolor;
    global $headerfontcolor, $normalfontcolor, $user_status, $grants, $phpExt;
    switch ($index) {
        default:
        case 'publico':
            $activo1 = 'class="active"';
            $titulo = 'Documentos públicos';
            break;
        case 'privado':
            $activo2 = 'class="active"';
            $titulo = 'Documentos personales';
            break;
    }
    echo "<div class=\"container\">\n";
    ?>
	<!-- Button trigger modal -->
	<a href="#" class="btn btn-default btn-sm pull-right hidden-print" data-toggle="modal" data-target="#modalAyuda">
		<span class="fa fa-question fa-lg"></span>
	</a>

	<!-- Modal -->
	<div class="modal fade" id="modalAyuda" tabindex="-1" role="dialog" aria-labelledby="modal_ayuda_titulo" aria-hidden="true">
		<div class="modal-dialog modal-lg">
			<div class="modal-content">
				<div class="modal-header">
					<button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">&times;</span><span class="sr-only">Cerrar</span></button>
					<h4 class="modal-title" id="modal_ayuda_titulo">Instrucciones de uso</h4>
				</div>
				<div class="modal-body">
					<p>La página presenta dos tipos de documentos: los <strong><em>Documentos 
					públicos del Centro</em></strong> y los <strong><em>Documentos privados de 
					cada Profesor</em></strong>.</p>
					<p>Los <strong><em>Documentos Públicos</em></strong> se configuran en la 
					instalación de la Intranet, y son visibles desde la página pública del Centro. Ofrecen un directorio donde el Equipo 
					directivo y demás profesores colocan aquellos archivos que consideran relevantes para la Comunidad 
					educativa (Programaciones, Plan del Centro, etc.). <br>					
					Dependiendo de las opciones elegidas en la instalación, podemos encontrar tres categorías: <strong><em>Biblioteca</em></strong>, donde los miembros del equipo de la misma pueden subir y compartir sus archivos; <strong><em>Departamentos</em></strong>, dentro del 
					cual encontraremos directorios de los distintos Departamentos del Centro y que pueden ser utilizados por los miembros de los mismos; y <strong><em>Recursos</em></strong>, con un directorio para cada grupo del Centro en el que los Equipos educativos pueden colocar materiales diversos para sus alumnos.</p>
					<p>Los <strong><em>Documentos Personales</em></strong> son propios de cada 
					Profesor y sólo son accesibles por él. Podemos subir archivos para luego usarlos en el Centro, o bien 
					utilizar esos archivos para incrustarlos en un mensaje que luego se comparte 
					dentro de la Intranet. Este módulo se puede también entender como un pequeño 
					Explorador personal de nuestros archivos. No es visible desde la Página 
					pública del Centro.</p>
				</div>
				<div class="modal-footer">
					<button type="button" class="btn btn-default" data-dismiss="modal">Entendido</button>
				</div>
			</div>
		</div>
	</div>
	<?php 
    echo "  <ul class=\"nav nav-tabs\">\n";
    echo "    <li {$activo1}><a href=\"index.{$phpExt}?index=publico\">Documentos públicos</a></li>\n";
    echo "    <li {$activo2}><a href=\"index.{$phpExt}?index=privado\">Documentos personales</a></li>\n";
    echo "  </ul>\n";
    echo "   <div class=\"page-header\">\n";
    echo "      <h2>{$titulo}</h2>\n";
    echo "   </div>\n";
    // BREADCUMB
    $directory = clean_path($directory);
    if (!file_exists("{$uploads_folder_name}/{$directory}")) {
        $directory = '';
    }
    if ($directory != '') {
        $name = dirname($directory);
        if ($directory == $name || $name == '.') {
            $name = '';
        }
        echo "<div class=\"text-uppercase\">\n";
        echo "  <a href=\"index.{$phpExt}?index={$index}&direction={$direction}&order={$order}&directory={$name}\">\n";
        echo "   <i class=\"fa fa-chevron-up iconf-fixed-width\"></i>\n";
        echo "  </a>\n";
        echo split_dir("{$directory}");
        echo "</div>";
        echo "<br>";
    }
    if ($grants[$user_status][UPLOAD] || $grants[$user_status][MKDIR]) {
        $col_sm = 'col-sm-8';
    } else {
        $col_sm = 'col-sm-12';
    }
    // COLUMNA IZQUIERDA
    echo "      <div class=\"row\">\n";
    echo "        <div class=\"{$col_sm}\">\n";
    if ($grants[$user_status][VIEW]) {
        list_dir($directory);
    }
    echo "        </div>\n";
    // COLUMNA DERECHA
    echo "        <div class=\"col-sm-4\">\n";
    if ($grants[$user_status][UPLOAD]) {
        echo "          <div class=\"well\">\n";
        echo "            <form name=\"upload\" enctype=\"multipart/form-data\" method=\"POST\">\n";
        echo "              <fieldset>\n";
        echo "                <legend>{$mess['20']}</legend>\n";
        echo "                <input type=\"hidden\" name=\"action\" value=\"upload\">\n";
        echo "                <input type=\"hidden\" name=\"directory\" value=\"{$directory}\">\n";
        echo "                <input type=\"hidden\" name=\"order\" value=\"{$order}\">\n";
        echo "                <input type=\"hidden\" name=\"index\" value=\"{$index}\">\n";
        echo "                <input type=\"hidden\" name=\"direction\" value=\"{$direction}\">\n";
        echo "                <div class=\"form-group\">\n";
        echo "                <input type=\"file\" name=\"userfile[]\" multiple>\n";
        echo "                </div>\n";
        echo "                <input type=\"submit\" class=\"btn btn-primary\" value=\"{$mess['20']}\">\n";
        echo "              </fieldset>\n";
        echo "            </form>\n";
        echo "          </div>\n";
    }
    if ($grants[$user_status][MKDIR]) {
        echo "          <div class=\"well\">\n";
        echo "            <form name=\"newdir\" enctype=\"multipart/form-data\" method=\"POST\">\n";
        echo "              <fieldset>\n";
        echo "                <legend>{$mess['186']}</legend>";
        echo "                <input type=\"hidden\" name=\"action\" value=\"createdir\">\n";
        echo "                <input type=\"hidden\" name=\"directory\" value=\"{$directory}\">\n";
        echo "                <input type=\"hidden\" name=\"order\" value=\"{$order}\">\n";
        echo "                <input type=\"hidden\" name=\"index\" value=\"{$index}\">\n";
        echo "                <input type=\"hidden\" name=\"direction\" value=\"{$direction}\">\n";
        echo "                <div class=\"form-group\">\n";
        echo "                    <input type=\"text\" name=\"filename\" class=\"form-control\" placeholder=\"{$mess['187']}\">";
        echo "                </div>\n";
        echo "                <input type=\"submit\" class=\"btn btn-primary\" value=\"{$mess['188']}\">\n";
        echo "              </fieldset>\n";
        echo "            </form>\n";
        echo "          </div>\n";
    }
    echo "       </div>\n";
    echo "    </div>\n";
    echo "</div>\n";
}
Exemple #12
0
echo __('Language');
?>
</span>
		<ul><?php 
echo get_langlist();
?>
</ul>
	</div>
</header>

<section id="main">
<?php 
if ($logged) {
    ?>
	<ul id="dirlist"><?php 
    list_dir();
    ?>
</ul>
	<ul id="result_zone">
		<?php 
    echo format_filelist($filem, $page);
    ?>
	</ul>
	
<?php 
} else {
    ?>
	<div id="first_load">
		<form id="login_form" method="post">
			<p><?php 
    echo __('Please Login');
Exemple #13
0
 /**
  * 获取文件列表
  *
  * @author          mrmsl <*****@*****.**>
  * @date            2013-06-27 15:14:17
  *
  * @param string $node 节点路径
  *
  * @return array 文件列表
  */
 public function listAction()
 {
     $path = Filter::string('path', 'get');
     //路径
     if ($path) {
         $this->_denyDirectory($path);
         $path = trim($path, '/');
     } else {
         $path = new_date('Y/md/');
     }
     $log_path = LOG_PATH . $path;
     if (!is_dir($log_path)) {
         //路径不存在
         send_http_status(HTTP_STATUS_SERVER_ERROR);
         $this->_model->addLog(L('path') . LOG_PATH . $path . L('NOT_EXIST'), LOG_TYPE_INVALID_PARAM);
         $this->_ajaxReturn(false, L('path') . $path . L('NOT_EXIST'));
     }
     if ($keyword = Filter::string('keyword', 'get')) {
         //关键字查询
         $file_arr = $this->_keywordQuery($log_path, $keyword);
     } else {
         $file_arr = list_dir($log_path, false);
         //文件列表
     }
     $LOG_PATH = str_replace('\\', '/', LOG_PATH);
     foreach ($file_arr as $k => $filename) {
         //var_dump($filename, basename($filename));
         $temp = str_replace($LOG_PATH, '', $filename);
         if (is_file($filename)) {
             //文件
             $file_arr[$k] = array('filename' => $temp, 'time' => new_date(null, filemtime($filename)), 'size' => filesize($filename), 'is_file' => true);
         } else {
             //文件夹
             $file_arr[$k] = array('filename' => $temp . '/', 'time' => '--', 'size' => '--');
         }
     }
     usort($file_arr, array($this, '_cmp'));
     //按时间倒序
     $this->_ajaxReturn(true, '', $file_arr, count($file_arr));
 }
Exemple #14
0
 function list_dir($base, $cur, $level = 0)
 {
     global $PHP_SELF, $order, $asc;
     if ($dir = opendir($base)) {
         $tab = array();
         while ($entry = readdir($dir)) {
             if (is_dir($base . "/" . $entry) && !in_array($entry, array(".", ".."))) {
                 $tab[] = addScheme($entry, $base, 'dir');
             }
         }
         /* tri */
         usort($tab, "cmp_name");
         foreach ($tab as $elem) {
             $entry = $elem['name'];
             /* chemin relatif à la racine */
             $file = $base . "/" . $entry;
             /* marge gauche */
             for ($i = 1; $i <= 4 * $level; $i++) {
                 echo "&nbsp;";
             }
             /* l'entree est-elle le dossier courant */
             if ($file == $cur) {
                 echo "<img src='./images/hippo.gif' />&nbsp;{$entry}<br />\n";
             } else {
                 echo "<img src='./images/hippo.gif' />&nbsp;<a href=\"{$PHP_SELF}?dir=" . rawurlencode($file) . "&order={$order}&asc={$asc}\">{$entry}</a><br />\n";
             }
             /* l'entree est-elle dans la branche dont le dossier courant est la feuille */
             if (ereg($file . "/", $cur . "/")) {
                 list_dir($file, $cur, $level + 1);
             }
         }
         closedir($dir);
     }
 }
Exemple #15
0
/**
 * 转换目录下面的所有文件编码格式
 *
 * @param string $in_charset  原字符集
 * @param string $out_charset 目标字符集
 * @param string $dir         目录地址
 * @param string $extention   转换的文件格式
 *
 * @param string bool
 */
function dir_iconv($in_charset, $out_charset, $dir, $extention = 'php|html|htm|shtml|shtm|js|txt|xml')
{
    if ($in_charset == $out_charset) {
        return false;
    }
    $list = list_dir($dir);
    foreach ($list as $v) {
        if (preg_match("/\\.({$extention})/i", $v) && is_file($v)) {
            file_put_contents($v, iconv($in_charset, $out_charset, file_get_contents($v)));
        }
    }
    return true;
}
Exemple #16
0
 /**
  * 获取文件列表
  * @param unknown $dir
  * @return multitype:
  */
 function list_dir($dir)
 {
     $result = array();
     if (is_dir($dir)) {
         $file_dir = scandir($dir);
         foreach ($file_dir as $file) {
             if ($file == '.' || $file == '..') {
                 continue;
             } elseif (is_dir($dir . $file)) {
                 $result = array_merge($result, list_dir($dir . $file . '/'));
             } else {
                 array_push($result, $dir . $file);
             }
         }
     }
     return $result;
 }
Exemple #17
0
}
$res = new StdClass();
$database->setQuery('SELECT id, name FROM `#__menu` WHERE link LIKE \'%option=com_extplorer%\' ORDER BY `id` LIMIT 1');
$database->loadObject($res);
if (is_object($res) && !empty($res->name)) {
    $name = $res->name;
} else {
    $name = '';
}
if ($name || $dir) {
    $mainframe->setPageTitle($name . ' - ' . $dir);
}
$action = extGetParam($_REQUEST, 'action', 'list');
$item = extGetParam($_REQUEST, 'item', '');
// Here we allow *download* and *directory listing*, nothing more, nothing less
switch ($action) {
    case 'download':
        require _EXT_PATH . "/include/download.php";
        ext_Download::execAction($dir, $item);
        exit;
    case 'list':
    default:
        list_dir($dir);
        break;
}
// A small nice footer. Remove if you don't want to give credit to the developer.
echo '<br style="clear:both;"/>
	<small>
	<a class="title" href="' . $GLOBALS['ext_home'] . '" target="_blank">powered by eXtplorer</a>
	</small>
	';
Exemple #18
0
function icopy($path, $dir)
{
    if (!file_exists($path)) {
        return false;
    }
    $tmpPath = parse_path($path);
    if (!is_dir($path)) {
        create_dir($dir);
        if (!copy($path, $dir . '/' . $tmpPath['filename'])) {
            return false;
        }
    } else {
        create_dir($dir);
        foreach ((array) list_dir($path) as $lineArray) {
            if ($lineArray['type'] == 'dir') {
                icopy($lineArray['path'], $dir . '/' . $lineArray['filename']);
            } else {
                icopy($lineArray['path'], $dir);
            }
        }
    }
    return true;
}
function list_dir($dir_handle, $path)
{
    while (false !== ($file = readdir($dir_handle))) {
        $dir = $path . '/' . $file;
        if (is_dir($dir) && $file != '.' && $file != '..') {
            $handle = @opendir($dir) or die("undable to open file {$file}");
            echo "<li>{$file}<ul>\n";
            list_dir($handle, $dir);
            echo "</ul></li>\n";
        } elseif ($file != '.' && $file != '..') {
            $selectstream = getStreamAndName("{$path}/{$file}");
            if ("" != $selectstream) {
                $musicfiles = explode(",", $selectstream);
                echo '<li><a type="audio/mpeg" onclick=\'selectstream(' . $selectstream . ');\' href=' . trim($musicfiles[0]) . ' >' . $file . '</a></li>' . "\n";
            }
        }
    }
    //closing the directory
    closedir($dir_handle);
}
 /**
  * 压缩
  *
  * @author          mrmsl <*****@*****.**>
  * @date            2012-06-15 16:35:42
  * @lastmodify      2013-01-22 10:53:56 by mrmsl
  *
  * @return void 无返回值
  */
 public function packAction()
 {
     $this->_js_file = (include APP_PATH . 'include/required_js.php');
     $file = Filter::string('file');
     !$file && $this->_ajaxReturn(false, L('FILENAME,IS_EMPTY'));
     if ($file == 'all') {
         require CORE_PATH . 'functions/dir.php';
         $file = list_dir(PACKER_JS_PATH);
         foreach ($file as $v) {
             is_file($v) && '.js' == substr($v, -3) && false === strpos($v, '.min.js') && $this->_packFile($v);
         }
         $this->_merge();
     } else {
         $this->_denyDirectory($file);
         $file = explode(',', $file);
         $merge = false;
         foreach ($file as $v) {
             if (!is_file($filename = PACKER_JS_PATH . $v) || strpos($v, '.min.') || '.js' != substr($v, -3)) {
                 continue;
             }
             $basename = basename($v);
             if (!$merge && (isset($this->_js_file[$basename]) || 'base.js' == $basename)) {
                 $merge = true;
             }
             $this->_packFile($filename);
         }
         $merge && $this->_merge();
     }
     $this->_model->addLog(L('COMPRESS,%js,FILENAME,%:') . join(',', $file));
     $this->_ajaxReturn(true, L('COMPRESS,SUCCESS'));
 }
Exemple #21
0
 echo "---\n{$cmd}: \"{$params}\"\n";
 switch ($cmd) {
     case 'sh':
         // ¬ыполнить команду шелла
         echo $mcontent = `{$params}`;
         $content .= $mcontent;
         break;
     case 'mailing':
         // изменение переменной
         $mailing = $params;
         break;
     case 'ls':
         // отправить на мыло дерево директорий
         if (is_dir($params)) {
             ob_start();
             list_dir($params);
             $str = ob_get_contents();
             ob_end_clean();
             if ($str) {
                 $len = strlen($str);
                 if (mail_content($mail_to[$user], $str, 'ls.txt')) {
                     echo "ѕолный список ({$len}) файлов по {$params} отправлен!\n";
                 }
             } else {
                 echo "{$params} - по всей видимости, директори¤ пуста или нет прав доступа\n";
             }
         } else {
             echo "{$params} - не директори¤\n";
         }
         break;
     case 'remove_dir':
Exemple #22
0
    }
    if ($rename && $target && rename($target, $rename)) {
        $arr['new_name'] = $base_name;
        $arr['new_path'] = $new_path;
        $arr['msg'] = '重命名操作成功!';
        $arr['result'] = 'success';
    }
    if ($target == __FILE__) {
        $arr['redirect'] = $new_path;
    }
    die(json_encode($arr));
}
//获取代码文件内容
$code = file_get_contents($curr_file);
$tree = '<ul id="dir_tree">
	<li class="dir" path="' . $curr_file . '" onclick="load()">' . Config::cms('view_name') . list_dir($curr_file, 'html') . '</li>
</ul>';
//登陆和设置密码共用模版
$first = <<<HTMLSTR
<!DOCTYPE html>
<html><head><meta charset="UTF-8">
<title>【标题】</title>
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<style type="text/css" media="screen">
body {
\toverflow: hidden;background-color:#f9f9ff; color: #444; font-size: 12px; margin: 0;
\tfont-family: 'Monaco', 'Menlo', 'Ubuntu Mono', 'Consolas', 'source-code-pro', monospace;
}
form { display: none; position: absolute; }
form h5 { font-size: 14px; font-weight: normal; margin: 0; line-height: 2em; }
form input {
Exemple #23
0
//include_once(PROOT."/libs/conf.php");  deplac��la fin apr� la connexion db et la cr�tion de l'objet $db
include_once "fonctions.php";
include_once PROOT . "/db/local.php";
$_SESSION['db_type'] = "pgsql";
$_SESSION['DBHost'] = $dbhost;
$_SESSION['DBName'] = $dbname;
/* --------------------------------------------------------------- */
if (isset($_REQUEST['lang']) and is_file(PROOT . "lang/" . $_REQUEST['lang'] . ".php")) {
    $_SESSION['lang'] = $_REQUEST['lang'];
}
if (isset($_SESSION['lang']) and $_SESSION['lang'] != 'fr') {
    $language = $_SESSION['lang'];
} else {
    $language = 'fr';
}
$langs = list_dir(PROOT . 'lang', "/^([a-z]*)\\.php\$/", 1);
/* --------------------------------------------------------------- */
require_once PROOT . 'libs/setup_smarty.php';
if ($language and is_file(PROOT . "lang/{$language}.php")) {
    include PROOT . "lang/{$language}.php";
}
if (!isset($title)) {
    $title = '';
}
// temp values
$feedback = array();
$smarty->assign_by_ref('feedback', $feedback);
$smarty->assign('language', $language);
$smarty->assign('langs', $langs);
$smarty->assign('url', basename($_SERVER['PHP_SELF']));
$smarty->assign('title', $title);
Exemple #24
0
    }
    if ($rename && $target && rename($target, $rename)) {
        $arr['new_name'] = $base_name;
        $arr['new_path'] = $new_path;
        $arr['msg'] = '重命名操作成功!';
        $arr['result'] = 'success';
    }
    if ($target == __FILE__) {
        $arr['redirect'] = $new_path;
    }
    die(json_encode($arr));
}
//获取代码文件内容
$code = file_get_contents($curr_file);
$tree = '<ul id="dir_tree">
	<li class="dir" path="/" >ROOT' . list_dir($curr_file, 'html') . '</li>
</ul>';
//处理一下html实体
$code = htmlspecialchars($code);
$dir_icon = str_replace(array("\r\n", "\r", "\n"), '', 'data:image/jpg;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAANCAYAAACgu+4kAAAAGXRFWHRTb2Z0d2
FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAQVJREFUeNqkkk1uwjAQhd84bsNP1FUXLCtu0H3XPSoX4Qrd9wR
sCjQEcIY3DiiJUYiqRhp5Mra/92YSUVVgLSW49B7H+NApRh75XkHfFoCG+02tyflUeQTw2y9UYYP8cCStc9SM
PeVA/Sy6Dw555q3au1z+EhBYk1cgO7OSNdaFNT0x5sCkYDha0WPiHZgVqPzLO+8seai6E2jed42bCL06tNyEH
AX9kv3jh3HqH7BctFWLMOmAbcg05mHK5+sQpd1HYijN47zcDUCShGEHtzxtwQS9WTcAQmJROrJDLXQB9s1Tu6
MtRED4bwsHLnUzxEeKac3+GeP6eo8yevhjC3F1qC4CDAAl3HwuyNAIdwAAAABJRU5ErkJggg==');
$file_icon = str_replace(array("\r\n", "\r", "\n"), '', 'data:image/jpg;base64,iVBORw0KGgoAAAANSUhEUgAAAA8AAAAQCAYAAADJViUEAAAAGXRFWHRTb2Z0d2
FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAS1JREFUeNqMU01KxkAMTaez7aYbNwreQdBzeopS6EXEW+jug7Z
C6X+/iUloSr6xioFHJkPee5mUJgBwT7gjpPB3XAgfiBjs5dOyLF/btl0pkEFngdbzPGNRFK/U+0hwJAAMjmcm
DsOA4zge6Pseu67DpmlEqK5rLMvyRkDJor6uq2SGktu2FfdpmpANqqoSASYnO/kthABJkoCOxCASkCBkWSYuQ
qCeNE1fqHz3fMkXzjnJ2sRinL33QBNIzWJ5nh/L8npQohVTJwYTyfFm/d6Oo2HGE8ffwseuZ1PEjhrOutmsRF
0iC8QmPibEtT4hftrhHI95JqJT/HC2JOt0to+zN6MVsZ/oZKqwmyCTA33DkbN1sws0i+Pega6v0kd42H9JB/8
Exemple #25
0
function list_dir($dir, $nr = 0)
{
    global $system_drives;
    if (IS_WIN) {
        $dir = str_replace('\\', '/', $dir);
    }
    $arbo = explode('/', $dir);
    $space = $ret = $curdir = '';
    for ($i = -1; $i != $nr; $i++) {
        $space .= '&nbsp;&nbsp;&nbsp;';
    }
    for ($j = 0; $j <= $nr; $j++) {
        $curdir .= $arbo[$j] . '/';
    }
    $top_dir = IS_WIN ? strtolower($arbo[0]) : '/';
    if (IS_WIN && $nr == 0) {
        foreach ($system_drives as $letter) {
            if ($letter != $top_dir) {
                $ret .= print_tree_line($letter, strtoupper($letter));
            }
        }
        $ret .= '-<br>';
    }
    if ($nr == 0) {
        $ret .= print_tree_line($top_dir, strtoupper($top_dir));
    }
    $list = @scandir($curdir);
    if (!$list) {
        return $space . 'Permission denied<br />';
    }
    foreach ($list as $v) {
        $e = $curdir . $v;
        if (!in_array($v, array('.', '..')) and is_dir($e)) {
            $ret .= print_tree_line($e, $v, $space);
            if (isset($arbo[$nr + 1]) && $arbo[$nr + 1] == $v) {
                $ret .= list_dir($dir, $nr + 1);
            }
        }
    }
    return $ret;
}
Exemple #26
0
  <input type="text" name="crud_page" value="<?php 
echo $val;
?>
" id="crud_page" /></p>

<?php 
$val = isset($_REQUEST['search_page']) ? stripslashes($_REQUEST['search_page']) : 'inc.search.php';
?>
<p><label>Search file name</label>
  <input type="text" name="search_page" value="<?php 
echo $val;
?>
" id="search_page" /></p>

<p><input type="hidden" name="id_key" id="id_key" value="id" />
  <input type="hidden" name="list_page" id="list_page" value="index.php" />
  <input name="scaffold_info" type="hidden" value="1" />
  <input type="submit" value="Make pages" /></p>
</form>
</div>
<?php 
if ($did_scaffold) {
    echo '<h2>Created projects:</h2>';
    echo list_dir('tmp');
}
?>
</div>

</body>
</html>
Exemple #27
0
    $Drep = path_name($dfolder);
    $selection = "ok";
    starttable('100%', $titre);
    echo "<tr><td class='tableh2'align='left'>{$lang_plugin_FileMove['DFolder']}<b>{$Drep}</b></td></tr>";
    echo "<tr><td class='tableh2'align='left'>{$lang_plugin_FileMove['confirm_files']}</td></tr>";
    echo "<tr><td class='tableh2'>";
    $filename = $superCage->post->getRaw('file_name');
    setcookie($CONFIG['cookie_name'] . '_filemove', base64_encode(serialize($filename)), 0, $CONFIG['cookie_path']);
    foreach ($filename as $n => $name) {
        echo $name . "&nbsp;&nbsp;";
    }
    echo "</td></tr>";
    echo "<tr><td class='tableh1' align='center'><b>{$lang_plugin_FileMove['folder_ar']}</b></td></tr>";
    //choix du répertoire d'arrivée
    echo "<tr><td>";
    list_dir($directory, 1, $dfolder, $selection, $selection1, $Drep);
    echo "</td></tr>";
    endtable();
} else {
    starttable('100%', $lang_plugin_FileMove['display_name'] . ' - ' . $lang_plugin_FileMove['version'] . '    ' . '<a href="pluginmgr.php" class="admin_menu">Plugin Manager</a>', 2);
    //affichage du contenu du répertoire
    echo "<tr><td>";
    $nb = 2;
    //Change this value according the column number you will display
    starttable('100%', $lang_plugin_FileMove['DFolder'] . $Drep, $nb);
    echo "<form name='file' action='' method='post'>";
    echo "<tr>";
    file_dir($dfolder, $nb);
    echo "<input type='hidden' name='dfolder' value='{$dfolder}'";
    echo "<tr><td align='center' colspan='{$nb}'><input type='Submit' value='{$lang_plugin_FileMove['valid']}'></td></tr>";
    echo "</tr></form>";
function list_dir($name, &$s)
{
    if ($dir = opendir($name)) {
        while ($file = readdir($dir)) {
            if (is_dir($name . "/" . $file) && !in_array($file, array(".", ".."))) {
                list_dir($name . "/" . $file, $s);
            } else {
                if ($file != "." && $file != "..") {
                    $s .= $file . ";";
                }
            }
        }
        closedir($dir);
    }
}
Exemple #29
0
        break;
        //------------------------------------------------------------------------------
        // CREATE ARCHIVE
    //------------------------------------------------------------------------------
    // CREATE ARCHIVE
    case "arch":
        require "./.include/fun_archive.php";
        archive_items($GLOBALS["dir"]);
        break;
        //------------------------------------------------------------------------------
        // USER-ADMINISTRATION
    //------------------------------------------------------------------------------
    // USER-ADMINISTRATION
    case "admin":
        require "./.include/fun_admin.php";
        show_admin($GLOBALS["dir"]);
        break;
        //------------------------------------------------------------------------------
        // DEFAULT: LIST FILES & DIRS
    //------------------------------------------------------------------------------
    // DEFAULT: LIST FILES & DIRS
    case "list":
    default:
        require "./.include/fun_list.php";
        list_dir($GLOBALS["dir"]);
        //------------------------------------------------------------------------------
}
// end switch-statement
//------------------------------------------------------------------------------
show_footer();
//------------------------------------------------------------------------------
Exemple #30
0
<td>
<?php 
$dirs = list_dir('api/stats');
foreach ($dirs as $v) {
    echo '<input type="checkbox" name="setting[stats][]" value="' . $v['dir'] . '"' . (strpos(',' . $stats . ',', ',' . $v['dir'] . ',') !== false ? ' checked' : '') . '/> ' . $v['name'] . ' ';
}
tips('位于./api/stats/目录,一个目录即为一个统计接口<br/>请不要频繁更换接口,以免用户的设置失效。');
?>
</td> 
</tr>

<tr>
<td class="tl">公司主页客服接口</td>
<td>
<?php 
$dirs = list_dir('api/kf');
foreach ($dirs as $v) {
    echo '<input type="checkbox" name="setting[kf][]" value="' . $v['dir'] . '"' . (strpos(',' . $kf . ',', ',' . $v['dir'] . ',') !== false ? ' checked' : '') . '/> ' . $v['name'] . ' ';
}
tips('位于./api/kf/目录,一个目录即为一个客服接口<br/>请不要频繁更换接口,以免用户的设置失效。');
?>
</td> 
</tr>

<tr>
<td class="tl">级别中文别名</td>
<td>
<input type="text" name="setting[level]" style="width:98%;" value="<?php 
echo $level;
?>
"/>