예제 #1
0
파일: media.php 프로젝트: gr4v3/dnw
function folder($path = NULL)
{
    if (empty($path)) {
        return FALSE;
    }
    $content = new stdClass();
    $content->folders = array();
    $content->files = array();
    $content->info = new stdClass();
    $content->info->description = '';
    $content->info->files = array();
    $content->info->deleted = FALSE;
    if ($handle = opendir($path)) {
        /* This is the correct way to loop over the directory. */
        while (false !== ($entry = readdir($handle))) {
            if (!in_array($entry, array('..', '.', 'index.html'))) {
                if (is_dir($path . '/' . $entry)) {
                    $content->folders[$entry] = folder($path . '/' . $entry);
                } else {
                    if (is_file($path . '/' . $entry)) {
                        if (preg_match('/\\.(png|jpg|gif|jpeg|tif)/i', $entry)) {
                            $content->files[] = $entry;
                        } else {
                            $content->files[$entry] = file_get_contents($path . '/' . $entry);
                        }
                    }
                }
            }
        }
        if (!isset($content->files['.info'])) {
            file_put_contents($path . '/.info', json_encode($content->info));
        } else {
            if (!empty($content->files['.info'])) {
                $content->info = json_decode($content->files['.info']);
                unset($content->files['.info']);
            }
        }
    }
    return $content;
}
예제 #2
0
파일: stat.php 프로젝트: dw4dev/Phalanger
    $handle = opendir($folder);
    while (false !== ($file = readdir($handle))) {
        $rv[] = $folder . $file;
    }
    closedir($handle);
    sort($rv);
    return $rv;
}
$statfields = array("dev", "ino", "uid", "gid", "rdev", "size", "mtime", "ctime", "blksize", "blocks");
function getstat($f)
{
    global $statfields;
    $a = stat($f);
    $rv = "!!{$f}";
    foreach ($statfields as $key) {
        $rv .= "\n    {$key} => " . $a[$key];
    }
    //  $rv .= "\n    MODE => " . decbin($a['mode']);
    return $rv;
}
function printdir($a, $n)
{
    echo "<hr><p>" . realpath($n) . "\n";
    foreach ($a as $k => $v) {
        echo "  [{$k}] => stat({$v})\n  (" . getstat($v) . "\n  )\n";
    }
}
printdir(folder("C:\\"), "C:\\");
//printdir(folder("./"), "./");
?>
</pre>
function process($file)
{
    global $TVDIR, $MVDIR, $RMBIN, $autoDelete, $verbose, $moveCount;
    if (strpos($file, '/') !== 0) {
        $value = realpath(getcwd() . '/' . $file);
    } else {
        $value = realpath($file);
    }
    if (!$value) {
        return;
    }
    if ($verbose) {
        echo "Processing: {$value}\n";
    }
    chdir(dirname($value));
    $extensions = 'avi|mkv|mp4';
    if (is_dir($value)) {
        $moveCount[$value] = 0;
        processDir($value);
        if ($autoDelete && $moveCount[$value]) {
            $f = escapeshellarg($value);
            `{$RMBIN} -rf {$f}`;
            echo "Deleted: {$value}\n";
        }
        return;
    } else {
        if (preg_match('/.*\\.part[0]+1\\.rar/i', $value, $m) || !preg_match('/.*\\.part[0-9]+\\.rar/i', $value) && preg_match('/.*\\.rar/i', $value, $m)) {
            if ($verbose) {
                echo "Extract: {$value}\n";
            }
            $files = extractRar($value);
            if ($verbose) {
                echo "\n";
                print_r($files);
                echo "\n";
            }
            foreach ($files as $f) {
                if ($verbose) {
                    echo "Process Extracted: {$f}\n";
                }
                process("{$f}");
            }
        } else {
            if (stripos($value, 'sample') !== false) {
                // TV in format: name.S01E01.tag.avi
            } else {
                if (preg_match('#(/)([a-z0-9\\- \\._]+)[\\. -](s[0-9]{2}e[0-9]{2})[^/]*\\.(avi|mkv)$#i', $value, $m)) {
                    moveto($value, $TVDIR . '/' . folder($m[2]) . '/' . filename($m[2], $m[3]) . '.' . $m[4]);
                    // TV in format: name 1x14 episode title.avi
                } else {
                    if (preg_match('#(/)([a-z0-9\\- \\._]+)[\\. -]([0-9]{1,2}x[0-9]{2})[^/]*\\.(avi|mkv)$#i', $value, $m)) {
                        moveto($value, $TVDIR . '/' . folder($m[2]) . '/' . filename($m[2], $m[3]) . '.' . $m[4]);
                        // TV in format: name.2010.10.06.tag.avi
                    } else {
                        if (preg_match('#(/)([a-z0-9\\- \\._]+)[\\. -](20[0-9]{2}[\\.\\-][0-9]{2}[\\.\\-][0-9]{2})[^/]*\\.(avi|mkv)$#i', $value, $m)) {
                            moveto($value, $TVDIR . '/' . folder($m[2]) . '/' . filename($m[2], $m[3]) . '.' . $m[4]);
                            // TV with path in form /name.S01E01.tag/name...avi
                        } else {
                            if (preg_match('#/([a-z0-9\\- \\._]+)[\\. \\-](s[0-9]{2}e[0-9]{2})[^/]*/[^/]*\\.(avi|mkv)$#i', $value, $m)) {
                                moveto($value, $TVDIR . '/' . folder($m[1]) . '/' . filename($m[1], $m[2]) . '.' . $m[3]);
                                // Movie parent in format: Movie.2010.dvd/CD1/tag-snom.avi
                            } else {
                                if (preg_match('#(/)([a-z0-9\\- \\._]+)[\\ .-\\[\\(]((19|20)[0-9]{2})[^/]*/CD(1|2)/[^/]*\\.(avi|mkv)$#i', $value, $m)) {
                                    moveto($value, $MVDIR . '/' . movie($m[2]) . ".{$m[3]}.part{$m[5]}.{$m[6]}");
                                    // Movie in format: movie.2010.dvd.avi (1900-2099) I don't have old movies
                                } else {
                                    if (preg_match("#(/)([a-z0-9\\- \\._]+)[\\ .-\\[\\(]((19|20)[0-9]{2})[^/]*\\.({$extensions})\$#i", $value, $m)) {
                                        moveto($value, $MVDIR . '/' . movie($m[2]) . ".{$m[3]}.{$m[5]}");
                                        // Movie parent in format: Movie.2010.dvd/tag-snom.avi
                                    } else {
                                        if (preg_match('#(/)([a-z0-9\\- \\._]+)[\\ .-\\[\\(]((19|20)[0-9]{2})[^/]*/[^/]*\\.(avi|mkv)$#i', $value, $m)) {
                                            moveto($value, $MVDIR . '/' . movie($m[2]) . ".{$m[3]}.{$m[5]}");
                                            // Movie in format: movie.dvdrip.tag.avi (1900-2099) I don't have old movies
                                        } else {
                                            if (preg_match('#(/)([a-z0-9\\- \\._]+)[\\ .-\\[\\(](dvdrip|bdrip)[^/]*\\.(avi|mkv)$#i', $value, $m)) {
                                                moveto($value, $MVDIR . '/' . movie($m[2]) . ".{$m[4]}");
                                                // Movie parent in format: Movie.dvdrip.tag/tag-snom.avi
                                            } else {
                                                if (preg_match('#(/)([a-z0-9\\- \\._]+)[\\ .-\\[\\(](dvdrip|bdrip)[^/]*/[^/]*\\.(avi|mkv)$#i', $value, $m)) {
                                                    moveto($value, $MVDIR . '/' . movie($m[2]) . ".{$m[4]}");
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
예제 #4
0
<?php

session_start();
$priv = $_SESSION['priv'];
include 'conf/db_connect.php';
include 'conf/misc.php';
connect();
$id = $_GET['id'];
query("DELETE FROM account WHERE acct_no='{$id}'");
folder($priv);
예제 #5
0
파일: reviews.php 프로젝트: gr4v3/dnw
<?php

include_once '../utilities.php';
$reviews = folder('../../reviews');
예제 #6
0
<?php

session_start();
$no = $_SESSION['priv'];
include 'conf/db_connect.php';
include 'conf/misc.php';
connect();
$id1 = $_POST['1'];
$id2 = $_POST['2'];
$id3 = $_POST['3'];
query("UPDATE percent SET value='{$id1}' WHERE id='1'");
query("UPDATE percent SET value='{$id2}' WHERE id='2'");
query("UPDATE percent SET value='{$id3}' WHERE id='3'");
folder($no);
예제 #7
0
파일: media.php 프로젝트: gr4v3/dnw
<?php

include_once '../utilities.php';
$gallery = folder('../../gallery');
?>
<div class="container-fluid">
    <div class="col-md-6">
        <form data-target="article" data-href="/admin/pages/media.php" method="post" enctype="multipart/form-data">
                <div class="col-md-5">
                    <label class="col-md-4" for="album">Novo album</label>
                    <input class="col-md-8" type="file" id="album" name="files[]" multiple/>
                </div>
                <div class="col-md-7">
                    <input class="col-md-4 pull-left" type="submit" value="upload"/>
                </div>
        </form>
    </div>
    <div class="col-md-12">
    <?php 
foreach ($gallery->folders as $name => $album) {
    if (isset($album->files)) {
        ?>
        <div class="col-md-3 album">
            <?php 
        $src = current($album->files);
        ?>
            <div class="col-md-8 big" style="background-image: url(../../img-auto-150/gallery/<?php 
        echo $name;
        ?>
/<?php 
        echo $src;
예제 #8
0
파일: album.php 프로젝트: gr4v3/dnw
<?php

include_once '../utilities.php';
$album = filter_input(INPUT_GET, 'index');
$mode = filter_input(INPUT_GET, 'mode');
$file = filter_input(INPUT_GET, 'file');
if ($mode === 'erase') {
    if (empty($file)) {
        rrmdir('../../gallery/' . $album);
        header('location: /admin/pages/media.php');
    } else {
        unlink('../../gallery/' . $album . '/' . $file);
    }
}
$gallery = folder('../../gallery/' . $album);
?>
<div class="container-fluid">
    <form method="post" enctype="multipart/form-data" data-target="article" data-href="/admin/pages/album.php?index=<?php 
echo $album;
?>
&mode=edit">
        <h1><?php 
echo $album;
?>
</h1>
        <input type="hidden" name="album[name]" value="<?php 
echo $album;
?>
"/>
        <div class="col-md-12">
            <label class="col-md-4" for="description">Descrição</label>
예제 #9
0
[expect php]
[file]
<?php 
function folder($folder)
{
    unset($rv);
    $handle = opendir($folder);
    while (false !== ($file = readdir($handle))) {
        $rv[] = $file;
    }
    closedir($handle);
    sort($rv);
    return $rv;
}
function printme($a)
{
    foreach ($a as $k => $v) {
        echo "[{$k}] => {$v}\n";
    }
}
printme(folder("C:\\"));
printme(folder("."));
예제 #10
0
    if ($_POST['port_folder'] == 'no') {
        $folder = $_POST['folder'];
        if (strlen($_POST['newfolder']) > 2) {
            $folder = $_POST['newfolder'];
        }
    }
    if ($_POST['port_folder'] == 'yes') {
        $folder = $_POST['port_folder_selection'];
        if (strlen($_POST['new_port_folder']) > 2) {
            $folder = $_POST['new_port_folder'];
            $folder = "Portfolio/" . $folder;
        }
    }
    uploadImg($_FILES['img_upload'], $folder);
    getPhotosBlog();
    folder();
    portFolder();
    getPhotos();
}
if (isset($_POST['editabout']) && isset($_POST['mission'])) {
    $name = $_POST['editabout'];
    $ins = $_POST['mission'];
    $ins = escape($ins);
    if (strlen($ins) > 5) {
        doQuery("UPDATE info SET text = '{$ins}' WHERE (subsection ='name_content' OR subsection ='a_statement') AND title='{$name}'");
    }
    if (strlen($_POST['team_img']) > 3) {
        $img = $_POST['team_img'];
        doQuery("UPDATE info SET img = '{$img}' WHERE (subsection ='name_content' OR subsection ='a_statement') AND title='{$name}'");
    }
    getAboutText();