Exemplo n.º 1
0
<?php

PicCLI::initGetopt(array("add", "remove", "user", "group"));
$io = PicCLI::getIO();
if (PicCLI::getGetopt("--add")) {
    $mode = "add";
} elseif (PicCLI::getGetopt("--remove")) {
    $mode = "remove";
} else {
    $io->errln("No mode specified.");
    exit(PicCLI::EXIT_USAGE);
}
if (!($pathID = PicCLI::getGetopt(1))) {
    $io->errln("No path ID specified.");
    exit(PicCLI::EXIT_USAGE);
}
if (!is_numeric($pathID)) {
    $io->errln("Invalid path ID supplied.");
    exit(PicCLI::EXIT_INPUT);
}
$pathID = (int) $pathID;
loadPicFile("classes/db.php");
PicDB::initDB();
if (!loadPicFile("helpers/id/path.php", array("id" => $pathID))) {
    $io->errln(sprintf("Path %d does not exist.", $pathID));
    exit(PicCLI::EXIT_INPUT);
}
if (PicCLI::getGetopt("--user")) {
    if (!($username = PicCLI::getGetopt(2))) {
        $username = PicCLI::prompt("Username");
        if (!$username) {
Exemplo n.º 2
0
<?php

PicCLI::initGetopt(array());
$io = PicCLI::getIO();
if (!($name = PicCLI::getGetopt(1))) {
    $name = PicCLI::prompt("Name");
    if (!$name) {
        $io->errln("No name specified.");
        exit(PicCLI::EXIT_INPUT);
    }
}
loadPicFile("classes/db.php");
PicDB::initDB();
$insert = PicDB::newInsert();
$insert->into("groups")->cols(array("name" => $name));
PicDB::crud($insert);
PicCLI::success();
Exemplo n.º 3
0
<?php

define("BASE_PATH", dirname(__DIR__) . "/");
if (file_exists(BASE_PATH . "conf/app.json")) {
    fwrite(STDERR, "Pictorials is already installed.\n");
    exit(1);
}
require BASE_PATH . "main/bootstrap-base.php";
loadPicFile("classes/cli.php");
PicCLI::initCLI();
PicCLI::initGetopt(array("dbtype:", "appname:", "cachedir:", "asset-baseurl:", "script-baseurl:", "webroot:"));
$io = PicCLI::getIO();
if (!is_writeable(BASE_PATH . "/conf")) {
    $io->errln("Current user must have permission to write to conf directory.");
    exit(PicCLI::EXIT_FAIL);
}
$dbType = PicCLI::getGetopt("--dbtype");
if (!file_exists(BASE_PATH . "helpers/install/db.{$dbType}.php")) {
    $io->errln("You must specify a supported database type.");
    exit(PicCLI::EXIT_USAGE);
}
$appConf = loadPicFile("helpers/install/appconf.php");
loadPicFile("helpers/install/db.{$dbType}.php");
$dbConf = array("type" => $dbType, "config" => PicDBInstall::configure());
$webroot = loadPicFile("helpers/install/webroot.php");
$webEntryTemplate = '<?php
define("BASE_PATH", "%s");
require(BASE_PATH . "entry/web.php");';
file_put_contents(BASE_PATH . "/conf/app.json", json_encode($appConf, JSON_PRETTY_PRINT));
file_put_contents(BASE_PATH . "/conf/db.json", json_encode($dbConf, JSON_PRETTY_PRINT));
if ($webroot) {
Exemplo n.º 4
0
<?php

PicCLI::initGetopt(array("sort::"));
$io = PicCLI::getIO();
loadPicFile("classes/db.php");
PicDB::initDB();
$select = PicDB::newSelect();
$select->cols(array("id", "name", "path"))->from("paths");
$sortOption = PicCLI::getGetopt("--sort");
if ($sortOption === true || $sortOption === "sortorder") {
    $select->orderBy(array("sort_order ASC"));
} elseif ($sortOption === "name") {
    $select->orderBy(array("name ASC"));
}
$select->orderBy(array("id ASC"));
$rows = PicDB::fetch($select, "assoc");
if (empty($rows)) {
    $io->outln("No paths have been created.");
} else {
    $highestId = max(array_keys($rows));
    $idWidth = strlen((string) $highestId);
    foreach ($rows as $id => $data) {
        $io->out(sprintf("<<blue>>%s<<reset>> ", str_pad($id, $idWidth)));
        $io->outln(sprintf('%1$s - %2$s', $data["name"], $data["path"]));
    }
}
Exemplo n.º 5
0
<?php

PicCLI::initGetopt(array("add", "remove"));
$io = PicCLI::getIO();
if (PicCLI::getGetopt("--add")) {
    $mode = "add";
} elseif (PicCLI::getGetopt("--remove")) {
    $mode = "remove";
} else {
    $io->errln("No mode specified.");
    exit(PicCLI::EXIT_USAGE);
}
if (!($pathID = PicCLI::getGetopt(1))) {
    $io->errln("No path ID specified.");
    exit(PicCLI::EXIT_USAGE);
}
if (!is_numeric($pathID)) {
    $io->errln("Invalid path ID specified.");
    exit(PicCLI::EXIT_INPUT);
}
$pathID = (int) $pathID;
loadPicFile("classes/db.php");
PicDB::initDB();
if (!loadPicFile("helpers/id/path.php", array("id" => $pathID))) {
    $io->errln(sprintf("Path %d does not exist.", $pathID));
    exit(PicCLI::EXIT_INPUT);
}
if (!($permission = PicCLI::getGetopt(2))) {
    $permission = PicCLI::prompt("Permission");
    if (!$permission) {
        $io->errln("No permission specified.");
Exemplo n.º 6
0
<?php

PicCLI::initGetopt(array("sortorder:"));
$io = PicCLI::getIO();
if (!($name = PicCLI::getGetopt(1))) {
    $name = PicCLI::prompt("Name");
    if (!$name) {
        $io->errln("No name specified.");
        exit(PicCLI::EXIT_INPUT);
    }
}
if (!($path = PicCLI::getGetopt(2))) {
    $path = PicCLI::prompt("Path");
    if (!$path) {
        $io->errln("No path specified.");
        exit(PicCLI::EXIT_INPUT);
    }
}
if ($path[0] !== "/") {
    $io->errln("Paths must be absolute, not relative.");
    exit(PicCLI::EXIT_INPUT);
}
$path = rtrim($path, "/") . "/";
loadPicFile("classes/db.php");
PicDB::initDB();
if ($sortOrder = PicCLI::getGetopt("--sortorder")) {
    $sortOrder = (int) $sortOrder;
    if ($sortOrder <= 0) {
        $io->errln("Sort orders must be above zero.");
        exit(PicCLI::EXIT_INPUT);
    }