本文整理汇总了PHP中CMS_grandFather::_raiseError方法的典型用法代码示例。如果您正苦于以下问题:PHP CMS_grandFather::_raiseError方法的具体用法?PHP CMS_grandFather::_raiseError怎么用?PHP CMS_grandFather::_raiseError使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CMS_grandFather
的用法示例。
在下文中一共展示了CMS_grandFather::_raiseError方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: PHPErrorHandler
/**
* PHP error handler
*
* @return true
* @access public
*/
static function PHPErrorHandler($errno, $errstr, $errfile, $errline, $errcontext)
{
//if errno is not in the error_reporting scope, skip it
//read it like this : "if errno bit is not in error_reporting"
if ($errno & ~error_reporting()) {
return true;
}
//define errors type table
$errortype = array(E_ERROR => 'Error', E_WARNING => 'Warning', E_PARSE => 'Parse error', E_NOTICE => 'Notice', E_CORE_ERROR => 'Core Error', E_CORE_WARNING => 'Core Warning', E_COMPILE_ERROR => 'Compile Error', E_COMPILE_WARNING => 'Compile Warning', E_STRICT => 'Runtime Notice', E_RECOVERABLE_ERROR => 'Catchable Fatal Error', 8192 => 'Deprecated', 16384 => 'User deprecated');
$errorLabel = isset($errortype[$errno]) ? $errortype[$errno] : 'Error ' . $errno;
CMS_grandFather::_raiseError('PHP ' . $errorLabel . ' : ' . $errstr . ' line ' . $errline . ' of file ' . $errfile);
return true;
}
示例2: getAll
/**
* Returns all the profile users, sorted by last name + first name.
* Static function.
*
* @param boolean activeOnly : return only active users (default : false)
* @param boolean withDeleted : return deleted users also (default false)
* @param boolean returnObjects : return CMS_profile_user objects (default) or array of userId
* @param array attrs : filter for search : array($attrName => $attrValue)
* @return array(CMS_profile_user)
* @access public
*/
static function getAll($activeOnly = false, $withDeleted = false, $returnObjects = true, $attrs = array())
{
$attrWhere = '';
$from = '';
if ($attrs and is_array($attrs)) {
$availableAttrs = array('id_pru', 'login_pru', 'firstName_pru', 'lastName_pru', 'contactData_pru', 'profile_pru', 'language_pru', 'textEditor_pru', 'email_cd');
foreach ($attrs as $attrName => $attrValue) {
// Check $attrName is available
if (in_array($attrName, $availableAttrs)) {
$and = $attrWhere || !$attrWhere && (!$withDeleted || $activeOnly) ? " and " : "";
// Sanitize value and set operator
if (!is_array($attrValue)) {
if ($attrName == 'email_cd') {
// Special case : parameter is contactData email
$attrValue = sensitiveIO::sanitizeSQLString($attrValue);
if (SensitiveIO::isValidEmail($attrValue)) {
$attrWhere .= $and . " " . $attrName . " = '" . $attrValue . "' and contactData_pru=id_cd";
$from .= ',contactDatas';
}
} else {
$attrValue = sensitiveIO::sanitizeSQLString($attrValue);
$attrWhere .= $and . " " . $attrName . " = '" . $attrValue . "'";
}
} elseif (is_array($attrValue)) {
$attrValue = array_map(array('sensitiveIO', 'sanitizeSQLString'), $attrValue);
foreach ($attrValue as $key => $value) {
$attrValue[$key] = "'" . $value . "'";
}
$attrWhere .= $and . " " . $attrName . " in (" . implode(',', $attrValue) . ")";
}
} else {
CMS_grandFather::_raiseError(__CLASS__ . ' : ' . __FUNCTION__ . ' : attrName must be in availableAttrs array');
}
}
}
$sql = "\n\t\t\tselect\n\t\t\t\tid_pru\n\t\t\tfrom\n\t\t\t\tprofilesUsers \n\t\t\t\t" . $from . "\n\t\t\t" . (!$withDeleted || $activeOnly || $attrWhere ? " where " : '') . "\n\t\t\t" . (!$withDeleted ? " deleted_pru='0'" : '') . "\n\t\t\t" . (!$withDeleted && $activeOnly ? " and " : '') . "\n\t\t\t" . ($activeOnly ? " active_pru='1' " : '') . "\n\t\t\t" . $attrWhere . "\n\t\t\torder by\n\t\t\t\tlastName_pru,\n\t\t\t\tfirstName_pru\n\t\t";
$q = new CMS_query($sql);
$users = array();
while ($id = $q->getValue("id_pru")) {
if ($returnObjects) {
$usr = CMS_profile_usersCatalog::getByID($id);
if (is_object($usr)) {
if ($activeOnly && $usr->isActive() || !$activeOnly) {
$users[] = $usr;
}
}
} else {
$users[] = $id;
}
}
return $users;
}
示例3: startScript
/**
* Start the scripts process queue.
* Remove the lock file then relaunch the script if force is true
*
* @param boolean $force Set to true if you wish to remove the lock file before launch
* @return void
* @access public
* @static
*/
static function startScript($force = false)
{
if (USE_BACKGROUND_REGENERATOR) {
$forceRestart = '';
if ($force) {
$forceRestart = ' -F';
} elseif (processManager::hasRunningScript()) {
return false;
}
//test if we're on windows or linux, for the output redirection
if (APPLICATION_IS_WINDOWS) {
if (realpath(PATH_PHP_CLI_WINDOWS) === false) {
CMS_grandFather::raiseError("Unknown CLI location : " . PATH_PHP_CLI_WINDOWS . ", please check your configuration.");
return false;
}
// Create the BAT file
$command = '@echo off' . "\r\n" . 'start /B /LOW ' . realpath(PATH_PHP_CLI_WINDOWS) . ' ' . realpath(PATH_PACKAGES_FS . '\\scripts\\script.php') . ' -m ' . REGENERATION_THREADS . $forceRestart;
$replace = array('program files (x86)' => 'progra~2', 'program files' => 'progra~1', 'documents and settings' => 'docume~1');
$command = str_ireplace(array_keys($replace), $replace, $command);
if (!@touch(PATH_WINDOWS_BIN_FS . "/script.bat")) {
CMS_grandFather::_raiseError("CMS_scriptsManager : startScript : Create file error : " . PATH_WINDOWS_BIN_FS . "/script.bat");
return false;
}
$fh = @fopen(PATH_WINDOWS_BIN_FS . "/script.bat", "wb");
if (is_resource($fh)) {
if (!@fwrite($fh, $command, io::strlen($command))) {
CMS_grandFather::raiseError("Save file error : script.bat");
}
@fclose($fh);
}
$WshShell = new COM("WScript.Shell");
$oExec = $WshShell->Run(str_ireplace(array_keys($replace), $replace, realpath(PATH_WINDOWS_BIN_FS . '\\script.bat')), 0, false);
} else {
$error = '';
if (!defined('PATH_PHP_CLI_UNIX') || !PATH_PHP_CLI_UNIX) {
$return = CMS_patch::executeCommand('which php 2>&1', $error);
if ($error) {
CMS_grandFather::raiseError('Error when finding php CLI with command "which php", please check your configuration : ' . $error);
return false;
}
if (io::substr($return, 0, 1) != '/') {
CMS_grandFather::raiseError('Can\'t find php CLI with command "which php", please check your configuration.');
return false;
}
$return = CMS_patch::executeCommand("cd " . PATH_REALROOT_FS . "; php " . PATH_PACKAGES_FS . "/scripts/script.php -m " . REGENERATION_THREADS . $forceRestart . " > /dev/null 2>&1 &", $error);
if ($error) {
CMS_grandFather::raiseError('Error during execution of script command (cd ' . PATH_REALROOT_FS . '; php ' . PATH_PACKAGES_FS . '/scripts/script.php -m ' . REGENERATION_THREADS . $forceRestart . '), please check your configuration : ' . $error);
return false;
}
} else {
$return = CMS_patch::executeCommand(PATH_PHP_CLI_UNIX . ' -v 2>&1', $error);
if ($error) {
CMS_grandFather::raiseError('Error when testing php CLI with command "' . PATH_PHP_CLI_UNIX . ' -v", please check your configuration : ' . $error);
return false;
}
if (io::strpos(io::strtolower($return), '(cli)') === false) {
CMS_grandFather::raiseError(PATH_PHP_CLI_UNIX . ' is not the CLI version');
return false;
}
$return = CMS_patch::executeCommand("cd " . PATH_REALROOT_FS . "; " . PATH_PHP_CLI_UNIX . " " . PATH_PACKAGES_FS . "/scripts/script.php -m " . REGENERATION_THREADS . $forceRestart . " > /dev/null 2>&1 &", $error);
if ($error) {
CMS_grandFather::raiseError('Error during execution of script command (cd ' . PATH_REALROOT_FS . '; ' . PATH_PHP_CLI_UNIX . ' ' . PATH_PACKAGES_FS . '/scripts/script.php -m ' . REGENERATION_THREADS . $forceRestart . '), please check your configuration : ' . $error);
return false;
}
}
//CMS_grandFather::log($return);
//CMS_grandFather::log("cd ".PATH_REALROOT_FS."; php ".PATH_PACKAGES_FS."/scripts/script.php -m ".REGENERATION_THREADS.$forceRestart." > /dev/null 2>&1 &");
//@system("cd ".PATH_REALROOT_FS."; php ".PATH_PACKAGES_FS."/scripts/script.php -m ".REGENERATION_THREADS.$forceRestart." > /dev/null 2>&1 &");
}
} else {
CMS_session::setSessionVar('start_script', true);
}
}
示例4: movePage
/**
* Move a page in the tree structure
* Static function.
*
* @param CMS_page $page The page to move
* @param CMS_page $newFather The new father of the page
* @param array of CMS_page id $newSiblingOrder The sibling pages to move in the good order
* @param CMS_profile_user $user The user operating the change.
* @return string The error string (abbreviated) or false if no error
* @access public
*/
static function movePage(&$page, &$newFather, $newSiblingOrder, &$user)
{
//check arguments are pages
if (!is_a($page, "CMS_page") || !is_a($newFather, "CMS_page")) {
CMS_grandFather::_raiseError("CMS_tree : movePage : ancestor and page must be instances of CMS_page");
return false;
}
//get page current father
$father = CMS_tree::getAncestor($page, 1);
//can't move page to the same father (useless...)
if (is_object($father) && $newFather->getID() == $father->getID()) {
CMS_grandFather::_raiseError("CMS_tree : movePage : can't move page under the same father (use changePagesOrder instead)");
return false;
}
//check that the page to move ain't the root.
$root = CMS_tree::getRoot();
if ($root->getID() == $page->getID()) {
CMS_grandFather::_raiseError("CMS_tree : movePage : can't move root");
return false;
}
//check that the page to move ain't an ancestor of new father.
$lineage = CMS_tree::getLineage($page, $newFather);
if ($lineage) {
CMS_grandFather::_raiseError("CMS_tree : movePage : can't move a page to a descendant of it");
return false;
}
//detach the page from the edited tree
CMS_tree::detachPageFromTree($page, false);
//attach the page to the edited tree under the new father
CMS_tree::attachPageToTree($page, $newFather, false);
//set new pages order
foreach ($newSiblingOrder as $newOrder => $sibling) {
$newOrder += 1;
//because array keys start to 0 and sibling number to 1
//move the siblings order
$sql = "\n\t\t\t\tupdate\n\t\t\t\t\tlinx_tree_edited\n\t\t\t\tset\n\t\t\t\t\torder_ltr='" . $newOrder . "'\n\t\t\t\twhere\n\t\t\t\t\tsibling_ltr='" . $sibling . "'\n\t\t\t";
$q = new CMS_query($sql);
}
//set the page status editions
$page->addEdition(RESOURCE_EDITION_MOVE, $user);
$page->writeToPersistence();
return true;
}