Esempio n. 1
0
function lmb_get_project_dir()
{
    if (!($project_dir = get_cfg_var('limb.project_dir'))) {
        $project_dir = lmb_cli_ask_for_option('Project directory', lmb_cli_find_project_dir(getcwd()));
    } else {
        echo "Project directory loaded from PHP config: {$project_dir}\n";
    }
    return $project_dir;
}
Esempio n. 2
0
/**
 *@todo must be "always", but always dont receive args by default
 */
function task_entity_parse_table_argument($args)
{
    lmb_package_require('dbal');
    $database_info = lmbToolkit::instance()->getDefaultDbConnection()->getDatabaseInfo();
    taskman_msg('DATABASE: ' . $database_info->getName() . PHP_EOL);
    $table_name = lmb_cli_ask_for_option("Table name (could be 'all')");
    if ('all' !== $table_name) {
        $tables = array($database_info->getTable($table_name));
    } else {
        $tables = _filter_tables($database_info->getTables(), 'lmb_');
    }
    if (!count($tables)) {
        taskman_sysmsg('No tables found in ' . $table_name);
        exit(1);
    }
    taskman_propset('TABLES', $tables);
}
Esempio n. 3
0
/**
 *@desc Init db config by given DSN param
 *@example project.php init_db_config -D DSN=sqlite:///www/skel/db/database.sqlite
 */
function task_project_db_init_config()
{
    lmb_package_require('dbal');
    $config_file = taskman_prop('PROJECT_DIR') . '/settings/db.conf.php';
    if (file_exists($config_file)) {
        return;
    }
    taskman_msg("Database config does not exists...\n");
    if (!($dsn_str = taskman_propor('DSN', ''))) {
        $dsn_str = lmb_cli_ask_for_option('Dsn (example: mysqli://root:test@localhost/limb_app?charset=utf8)');
    }
    lmb_require('limb/dbal/src/lmbDbDSN.class.php');
    $dsn = new lmbDbDSN($dsn_str);
    $config_text = "<?php\n\n \$conf = array('dsn' => '{$dsn_str}');";
    file_put_contents($config_file, $config_text);
    taskman_msg("DB config ({$config_file}) writed...Done\n");
}