Пример #1
0
}
$total = count($_FILES['files']['tmp_name']);
setlocale(LC_CTYPE, "ko_KR.UTF-8");
$root = $repo->getRepositoryPath();
$result = array();
$file_names = array();
for ($i = 0; $i < $total; $i++) {
    $name = $_FILES['files']['name'][$i];
    $tmp_name = $_FILES['files']['tmp_name'][$i];
    $error = $_FILES['files']['error'][$i];
    $filename = $root . '/' . $name;
    $filename = file_numbering($filename);
    $is_uploaded = false;
    if ($error == UPLOAD_ERR_OK) {
        $is_uploaded = @move_uploaded_file($tmp_name, $filename);
        if ($is_uploaded) {
            $name = end(explode('/', $filename));
            // git add
            $repo->addFile($name);
            // 권한 넣기
            chmod($name, 0666);
        } else {
        }
    }
    $result[$i] = array('created_filename' => $filename, 'name' => $name, 'uploaded' => $is_uploaded, 'error' => $error);
    $file_names[] = $name;
}
// commit 하기
$commit_message = "upload files : " . implode(",", $file_names);
$repo->commit($commit_message);
die(json_encode(array('result' => $result)));
Пример #2
0
$dir = REPOSITORY . '/' . $id . '/';
$repo = new GitRepository($dir);
// create a new file in repo
$filename = $dir . $_POST['filename'];
if (file_exists($filename)) {
    echo json_encode(array('result' => false, 'message' => 'already file is exists'));
    return;
}
$arr = array_map('trim', explode("/", $filename));
$is_dir = array_pop($arr) == '';
setlocale(LC_CTYPE, "ko_KR.UTF-8");
$repo->setConfig($_SESSION['username']);
$repo->setConfigExt('core.quotepath false');
if ($is_dir) {
    mkdir($filename, 0777, true);
    $repo->addFile($filename);
    echo json_encode(array('result' => true, 'message' => 'directory is success'));
    exit;
} else {
    if (!is_support_type($filename)) {
        echo json_encode(array('result' => false, 'message' => 'file type is not supported type'));
        return;
    }
    mkdir(dirname($filename), 0777, true);
    file_put_contents($filename, "");
    $repo->addFile($filename);
    // 권한 넣기
    chmod($filename, 0666);
    $repo->commit("add " . $filename, "-a");
    echo json_encode(array('result' => true, 'message' => 'file is success'));
    exit;