示例#1
0
文件: deploy.php 项目: linear/linear
    $autoload_path = COMPOSER_DIR . '/vendor/autoload.php';
    $autoload_path = '/' . _get_relative_path($htdocs_dir . '/route.php', $autoload_path);
    $original = COMPOSER_DIR . '/vendor/linear/linear/htdocs/route.php';
    $org_contents = file_get_contents($original);
    $org_contents = str_replace('[SYSDOCS_RELATIVE_PATH]', "realpath(HTDOCS_DIR.'{$sysdocs_path}')", $org_contents);
    $org_contents = str_replace('[AUTOLOAD_RELATIVE_PATH]', $autoload_path, $org_contents);
    file_put_contents($htdocs_dir . '/route.php', $org_contents);
}
/* Setup package */
$linear_packages = $json_data['extra']['linear-package'];
$admin_config_name = '';
foreach ($linear_packages as $linear_package) {
    isset($linear_package['package']) || _output_error('Can not find package');
    $package = $linear_package['package'];
    if (!is_dir(COMPOSER_DIR . '/vendor/linear/' . $package)) {
        _output_error('Can not find package "' . $package . '"');
    }
    echo <<<END_of_TEXT
Install "{$package}"

END_of_TEXT;
    $table_prefix = empty($linear_package['table-prefix']) ? $package : $linear_package['table-prefix'];
    /* Setup controller */
    $original = COMPOSER_DIR . '/vendor/linear/' . $package . '/sysdocs/controller';
    if (is_dir($original)) {
        if (isset($linear_package['controller'])) {
            if (strlen($linear_package['controller'])) {
                $controller_dir = $sysdocs_dir . '/controller/' . $linear_package['controller'];
            } else {
                $controller_dir = $sysdocs_dir . '/controller';
            }
示例#2
0
文件: package.php 项目: linear/linear
<?php

/* Get common configuration */
define('COMPOSER_DIR', realpath(dirname(__FILE__) . '/../../../../'));
is_file(COMPOSER_DIR . '/composer.json') || _output_error('Can not find composer.json');
$json_data = json_decode(file_get_contents(COMPOSER_DIR . '/composer.json'), true);
isset($json_data['extra']['linear-common']) || _output_error('Can not find linear-common');
$linear_common = $json_data['extra']['linear-common'];
isset($linear_common['sysdocs']) || _output_error('Can not find linear-common/sysdocs');
$sysdocs_dir = COMPOSER_DIR . '/' . $linear_common['sysdocs'];
isset($linear_common['htdocs']) || _output_error('Can not find linear-common/htdocs');
$htdocs_dir = COMPOSER_DIR . '/' . $linear_common['htdocs'];
/* Generate package files */
($package = $argv[1]) || _output_error('To input package name');
/* Copy controller */
$controller_dir = COMPOSER_DIR . '/vendor/linear/' . $package . '/sysdocs/controller';
_remove_dir($controller_dir);
$original = $sysdocs_dir . '/controller/' . $package;
if (is_dir($original)) {
    _copy_dir($original, $controller_dir);
    $dir = ($target_dir = realpath($controller_dir)) ? array($target_dir) : array();
    while (count($dir)) {
        $target_dir = array_shift($dir);
        if (!(is_dir($target_dir) && ($dh = opendir($target_dir)))) {
            continue;
        }
        while (($target = readdir($dh)) !== false) {
            if (substr($target, 0, 1) == '.') {
                continue;
            }
            $target = $target_dir . '/' . $target;