You've already forked postfixadmin
mirror of
https://github.com/postfixadmin/postfixadmin.git
synced 2025-07-29 22:41:11 +03:00
postfixadmin-cli: drop (undocumented) -webroot etc.
Dropping the -webroot parameter (which basically means hardcoding that ../common.php has to exist) allows to do quite some cleanup. Also unconditionally require_once('../common.php') to ensure that everything we expect in the global namespace (like the 'Conf' class) is there. This allows even more cleanup. We get rid of __bootstrap() and some constants, and can simplify parameter handling.
This commit is contained in:
@ -1,10 +1,6 @@
|
|||||||
#!/usr/bin/php
|
#!/usr/bin/php
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
if(file_exists(dirname(__FILE__) . '/../common.php')) {
|
|
||||||
require_once(dirname(__FILE__) . '/../common.php');
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Command-line code generation utility to automate administrator tasks.
|
* Command-line code generation utility to automate administrator tasks.
|
||||||
*
|
*
|
||||||
@ -132,11 +128,6 @@ class PostfixAdmin {
|
|||||||
|
|
||||||
define('DS', DIRECTORY_SEPARATOR);
|
define('DS', DIRECTORY_SEPARATOR);
|
||||||
define('CORE_INCLUDE_PATH', dirname(__FILE__));
|
define('CORE_INCLUDE_PATH', dirname(__FILE__));
|
||||||
define('CORE_PATH', dirname(CORE_INCLUDE_PATH)); # CORE_INCLUDE_PATH/../
|
|
||||||
|
|
||||||
if (!defined('POSTFIXADMIN')) { # already defined if called from setup.php
|
|
||||||
define('POSTFIXADMIN', 1); # checked in included files
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -147,14 +138,6 @@ class PostfixAdmin {
|
|||||||
$this->stdout = fopen('php://stdout', 'w');
|
$this->stdout = fopen('php://stdout', 'w');
|
||||||
$this->stderr = fopen('php://stderr', 'w');
|
$this->stderr = fopen('php://stderr', 'w');
|
||||||
|
|
||||||
if (!$this->__bootstrap()) {
|
|
||||||
$this->stderr("");
|
|
||||||
$this->stderr("Unable to load.");
|
|
||||||
$this->stderr("\tMake sure /config.inc.php exists in " . PATH);
|
|
||||||
exit(1);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
if (basename(__FILE__) != basename($this->args[0])) {
|
if (basename(__FILE__) != basename($this->args[0])) {
|
||||||
$this->stderr('Warning: the dispatcher may have been loaded incorrectly, which could lead to unexpected results...');
|
$this->stderr('Warning: the dispatcher may have been loaded incorrectly, which could lead to unexpected results...');
|
||||||
if ($this->getInput('Continue anyway?', array('y', 'n'), 'y') == 'n') {
|
if ($this->getInput('Continue anyway?', array('y', 'n'), 'y') == 'n') {
|
||||||
@ -165,33 +148,6 @@ class PostfixAdmin {
|
|||||||
$this->shiftArgs();
|
$this->shiftArgs();
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* Initializes the environment and loads the Cake core.
|
|
||||||
*
|
|
||||||
* @return boolean Success.
|
|
||||||
*/
|
|
||||||
private function __bootstrap() {
|
|
||||||
if ($this->params['webroot'] != '') {
|
|
||||||
define('PATH', $this->params['webroot']);
|
|
||||||
} else {
|
|
||||||
define('PATH', CORE_PATH);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!file_exists(PATH)) {
|
|
||||||
$this->stderr(PATH . " don't exists");
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
# make sure global variables fron functions.inc.php end up in the global namespace, instead of being local to this function
|
|
||||||
global $version, $min_db_version;
|
|
||||||
|
|
||||||
if (!require_once(PATH . '/common.php')) {
|
|
||||||
$this->stderr("Failed to load " . PATH . '/common.php');
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Dispatches a CLI request
|
* Dispatches a CLI request
|
||||||
*/
|
*/
|
||||||
@ -374,10 +330,6 @@ class PostfixAdmin {
|
|||||||
public function parseParams($params) {
|
public function parseParams($params) {
|
||||||
$this->__parseParams($params);
|
$this->__parseParams($params);
|
||||||
|
|
||||||
$defaults = array('webroot' => CORE_PATH);
|
|
||||||
|
|
||||||
$params = array_merge($defaults, array_intersect_key($this->params, $defaults));
|
|
||||||
|
|
||||||
$isWin = array_filter(array_map('strpos', $params, array('\\')));
|
$isWin = array_filter(array_map('strpos', $params, array('\\')));
|
||||||
|
|
||||||
$params = str_replace('\\', '/', $params);
|
$params = str_replace('\\', '/', $params);
|
||||||
@ -476,6 +428,8 @@ class PostfixAdmin {
|
|||||||
|
|
||||||
define("POSTFIXADMIN_CLI", 1);
|
define("POSTFIXADMIN_CLI", 1);
|
||||||
|
|
||||||
|
require_once(dirname(__FILE__) . '/../common.php');
|
||||||
|
|
||||||
$dispatcher = new PostfixAdmin($argv);
|
$dispatcher = new PostfixAdmin($argv);
|
||||||
$dispatcher->dispatch();
|
$dispatcher->dispatch();
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user