本文整理汇总了PHP中IPSSetUp::addLogMessage方法的典型用法代码示例。如果您正苦于以下问题:PHP IPSSetUp::addLogMessage方法的具体用法?PHP IPSSetUp::addLogMessage怎么用?PHP IPSSetUp::addLogMessage使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类IPSSetUp
的用法示例。
在下文中一共展示了IPSSetUp::addLogMessage方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: install_sql
/**
* Installs SQL schematic
*
* @return void
*/
public function install_sql()
{
/* Lets grab that SQL! */
$SQL = array();
$count = 0;
$output = '';
$message = array();
$sourceFile = '';
$warnings = 0;
/* Reset Errors */
$this->_resetErrors();
/* SQL */
$file = IPSLib::getAppDir($this->_currentApp) . '/setup/versions/upg_' . $this->_uipLong . '/' . $this->_dbDriver . '_updates.php';
/* Get file */
if (is_file($file)) {
require $file;
/*noLibHook*/
if (is_array($SQL) and count($SQL) > 0) {
/* Loop */
foreach ($SQL as $q) {
/* Set DB driver to return any errors */
$this->DB->return_die = 1;
$this->DB->allow_sub_select = 1;
$this->DB->error = '';
$q = str_replace("<%time%>", time(), $q);
$q = IPSSetUp::addPrefixToQuery($q, $this->registry->dbFunctions()->getPrefix());
if ($this->settings['mysql_tbl_type']) {
if (preg_match("/^create table(.+?)/i", $q)) {
$q = preg_replace("/^(.+?)\\);\$/is", "\\1) ENGINE={$this->settings['mysql_tbl_type']};", $q);
}
}
if (IPSSetUp::getSavedData('man')) {
$q = trim($q);
/* Ensure the last character is a semi-colon */
if (substr($q, -1) != ';') {
$q .= ';';
}
$output .= $q . "\n\n";
} else {
$this->DB->query($q);
if ($this->DB->error) {
/* Log but do not fail on certain error logs */
$msg = $this->DB->error;
if (preg_match("#table.*already exists#i", $msg) or preg_match("#Duplicate column name#i", $msg) or preg_match("#Duplicate entry.*for#i", $msg)) {
$warnings++;
IPSSetUp::addLogMessage("SQL Error: " . $q . "\n" . $msg, $this->_uipLong, $this->_currentApp);
} else {
$this->registry->output->addError(nl2br($q) . "<br /><br />" . $this->DB->error);
}
} else {
$count++;
}
}
}
$message[] = $count . " запросов выполнено ({$warnings} не критичных ошибок)";
}
} else {
/* No SQL */
//$this->registry->output->addMessage("Нет SQL запросов для выполнения.");
$this->install_appclass();
return;
}
/* Got queries to show? */
if (IPSSetUp::getSavedData('man') and $output) {
/* Create source file */
if ($this->_dbDriver == 'mysql') {
$sourceFile = IPSSetUp::createSqlSourceFile($output, $this->_uipLong);
}
$this->registry->output->setTitle("Обновление: База Данных");
$this->registry->output->setNextAction('upgrade&do=appclass');
$this->registry->output->addContent($this->registry->output->template()->upgrade_manual_queries($output, $sourceFile));
$this->registry->output->sendOutput();
} else {
//-----------------------------------------
// Next...
//-----------------------------------------
$output = (is_array($message) and count($message)) ? $message : array(0 => "Обновление Базы Данных завершено");
$this->_finishStep($output, "Обновление: База Данных", 'upgrade&do=appclass');
}
}
示例2: permsAndBbcode
//.........这里部分代码省略.........
foreach ($bbcodeOld as $tag => $row) {
if (!$bbcodeCurrent[$row['bbcode_tag']]) {
$bbcodeNew[$row['bbcode_tag']] = $row;
}
}
}
$this->registry->output->addMessage("BB-коды обновлены....");
/* Now see if there's anything we need to move back over */
if (count($bbcodeNew)) {
foreach ($bbcodeNew as $tag => $data) {
$bbarray = array('bbcode_title' => $data['bbcode_title'], 'bbcode_desc' => $data['bbcode_desc'], 'bbcode_tag' => $data['bbcode_tag'], 'bbcode_replace' => IPSText::safeslashes($data['bbcode_replace']), 'bbcode_useoption' => $data['bbcode_useoption'], 'bbcode_example' => $data['bbcode_example'], 'bbcode_switch_option' => $data['bbcode_switch_option'], 'bbcode_menu_option_text' => $data['bbcode_menu_option_text'], 'bbcode_menu_content_text' => $data['bbcode_menu_content_text'], 'bbcode_groups' => 'all', 'bbcode_sections' => 'all', 'bbcode_php_plugin' => '', 'bbcode_parse' => 2, 'bbcode_no_parsing' => 0, 'bbcode_optional_option' => 0, 'bbcode_aliases' => '', 'bbcode_image' => '');
$this->DB->insert('custom_bbcode', $bbarray);
}
}
/* OK, now onto permissions... */
/* Insert basic perms for profiles and help */
$this->DB->insert('permission_index', array('app' => 'members', 'perm_type' => 'profile_view', 'perm_type_id' => 1, 'perm_view' => '*', 'perm_2' => '', 'perm_3' => '', 'perm_4' => '', 'perm_5' => '', 'perm_6' => '', 'perm_7' => ''));
$this->DB->insert('permission_index', array('app' => 'core', 'perm_type' => 'help', 'perm_type_id' => 1, 'perm_view' => '*', 'perm_2' => '', 'perm_3' => '', 'perm_4' => '', 'perm_5' => '', 'perm_6' => '', 'perm_7' => ''));
/* And now calendars */
$this->DB->build(array('select' => '*', 'from' => 'cal_calendars'));
$o = $this->DB->execute();
while ($row = $this->DB->fetch($o)) {
if (strstr($row['cal_permissions'], 'a:')) {
$_perms = unserialize(stripslashes($row['cal_permissions']));
if (is_array($_perms)) {
$_view = $_perms['perm_read'] ? ',' . implode(',', explode(',', $_perms['perm_read'])) . ',' : '';
$_start = $_perms['perm_post'] ? ',' . implode(',', explode(',', $_perms['perm_post'])) . ',' : '';
$_nomod = $_perms['perm_nomod'] ? ',' . implode(',', explode(',', $_perms['perm_nomod'])) . ',' : '';
$this->DB->insert('permission_index', array('app' => 'calendar', 'perm_type' => 'calendar', 'perm_type_id' => $row['cal_id'], 'perm_view' => str_replace(',*,', '*', $_view), 'perm_2' => str_replace(',*,', '*', $_start), 'perm_3' => str_replace(',*,', '*', $_nomod), 'perm_4' => '', 'perm_5' => '', 'perm_6' => '', 'perm_7' => ''));
} else {
$this->DB->insert('permission_index', array('app' => 'calendar', 'perm_type' => 'calendar', 'perm_type_id' => $row['cal_id'], 'perm_view' => '', 'perm_2' => '', 'perm_3' => '', 'perm_4' => '', 'perm_5' => '', 'perm_6' => '', 'perm_7' => ''));
}
} else {
$this->DB->insert('permission_index', array('app' => 'calendar', 'perm_type' => 'calendar', 'perm_type_id' => $row['cal_id'], 'perm_view' => '', 'perm_2' => '', 'perm_3' => '', 'perm_4' => '', 'perm_5' => '', 'perm_6' => '', 'perm_7' => ''));
}
}
/* And now forums */
$this->DB->build(array('select' => '*', 'from' => 'forums'));
$o = $this->DB->execute();
while ($row = $this->DB->fetch($o)) {
/* Do we need to tidy up the title? */
if (strstr($row['name'], '&')) {
$row['name'] = preg_replace("#& #", "& ", $row['name']);
$this->DB->update('forums', array('name' => $row['name']), 'id=' . $row['id']);
}
if (strstr($row['permission_array'], 'a:')) {
$_perms = unserialize(stripslashes($row['permission_array']));
if (is_array($_perms)) {
$_view = $_perms['show_perms'] ? ',' . implode(',', explode(',', $_perms['show_perms'])) . ',' : '';
$_read = $_perms['read_perms'] ? ',' . implode(',', explode(',', $_perms['read_perms'])) . ',' : '';
$_reply = $_perms['reply_perms'] ? ',' . implode(',', explode(',', $_perms['reply_perms'])) . ',' : '';
$_start = $_perms['start_perms'] ? ',' . implode(',', explode(',', $_perms['start_perms'])) . ',' : '';
$_upload = $_perms['upload_perms'] ? ',' . implode(',', explode(',', $_perms['upload_perms'])) . ',' : '';
$_download = $_perms['download_perms'] ? ',' . implode(',', explode(',', $_perms['download_perms'])) . ',' : '';
$this->DB->insert('permission_index', array('app' => 'forums', 'perm_type' => 'forum', 'perm_type_id' => $row['id'], 'perm_view' => str_replace(',*,', '*', $_view), 'perm_2' => str_replace(',*,', '*', $_read), 'perm_3' => str_replace(',*,', '*', $_reply), 'perm_4' => str_replace(',*,', '*', $_start), 'perm_5' => str_replace(',*,', '*', $_upload), 'perm_6' => str_replace(',*,', '*', $_download), 'perm_7' => ''));
} else {
$this->DB->insert('permission_index', array('app' => 'forums', 'perm_type' => 'forum', 'perm_type_id' => $row['id'], 'perm_view' => '', 'perm_2' => '', 'perm_3' => '', 'perm_4' => '', 'perm_5' => '', 'perm_6' => '', 'perm_7' => ''));
IPSSetUp::addLogMessage("Пропущены права доступа для форума ID: " . $row['id'], '30001', 'core');
}
} else {
$this->DB->insert('permission_index', array('app' => 'forums', 'perm_type' => 'forum', 'perm_type_id' => $row['id'], 'perm_view' => '', 'perm_2' => '', 'perm_3' => '', 'perm_4' => '', 'perm_5' => '', 'perm_6' => '', 'perm_7' => ''));
IPSSetUp::addLogMessage("Пропущены права доступа для форума ID: " . $row['id'], '30001', 'core');
}
}
$this->registry->output->addMessage("Права доступа обновлены....");
/* Fix up forum moderators */
$this->DB->build(array('select' => '*', 'from' => 'moderators'));
$o = $this->DB->execute();
while ($r = $this->DB->fetch($o)) {
$this->DB->update('moderators', array('forum_id' => ',' . IPSText::cleanPermString($r['forum_id']) . ','), 'mid=' . $r['mid']);
}
$this->registry->output->addMessage("Модераторы форумов обновлены....");
/* Root admin reset? */
if ($rootAdmins) {
/* Find all admin groups */
$this->DB->build(array('select' => '*', 'from' => 'groups', 'where' => 'g_id != ' . $this->settings['admin_group'] . ' AND g_access_cp=1'));
$o = $this->DB->execute();
while ($row = $this->DB->fetch($o)) {
/* Insert blank perm row */
$this->DB->insert('admin_permission_rows', array('row_id' => $row['g_id'], 'row_id_type' => 'group', 'row_perm_cache' => serialize(array()), 'row_updated' => time()));
}
$this->registry->output->addMessage("Удалены вторичные группы администраторов....");
}
/* Report center reset */
$canReport = array();
$canView = array();
$this->DB->build(array('select' => 'g_id, g_view_board, g_access_cp, g_is_supmod', 'from' => 'groups'));
$o = $this->DB->execute();
while ($r = $this->DB->fetch($o)) {
if ($r['g_access_cp'] or $r['g_is_supmod']) {
$canView[] = $r['g_id'];
}
if ($r['g_view_board'] and $r['g_id'] != $this->settings['guest_group']) {
$canReport[] = $r['g_id'];
}
}
$this->DB->update('rc_classes', array('group_can_report' => ',' . implode(',', $canReport) . ',', 'mod_group_perm' => ',' . implode(',', $canView) . ','));
/* Next Page */
$this->request['workact'] = 'skinlang';
}
示例3: doExecute
//.........这里部分代码省略.........
/* Set Up */
IPSSetUp::setSavedData('man', intval($this->request['man']) ? intval($this->request['man']) : IPSSetUp::getSavedData('man'));
IPSSetUp::setSavedData('appdir', $this->request['appdir'] ? $this->request['appdir'] : IPSSetUp::getSavedData('appdir'));
IPSSetUp::setSavedData('helpfile', intval($this->request['helpfile']) ? intval($this->request['helpfile']) : IPSSetUp::getSavedData('helpfile'));
/* Do we have a current application? */
if (!IPSSetUp::getSavedData('appdir')) {
$_app = IPSSetUp::fetchNextApplication();
IPSSetUp::setSavedData('appdir', $_app['key']);
}
/* Set current app */
$this->_currentApp = IPSSetUp::getSavedData('appdir');
/* Fetch numbers */
$numbers = IPSSetUp::fetchAppVersionNumbers($this->_currentApp);
/* Set numbers */
$this->_currentLong = $numbers['current'][0];
$this->_currentHuman = $numbers['current'][1];
$this->_uipLong = $numbers['next'][0];
$this->_uipHuman = $numbers['next'][1];
$this->_latestLong = $numbers['latest'][0];
$this->_latestHuman = $numbers['latest'][1];
$this->_dbDriver = strtolower($this->settings['sql_driver']);
if ($this->_currentApp) {
$this->_appData = IPSSetUp::fetchXmlAppInformation($this->_currentApp);
if ($this->_currentApp == 'core') {
$this->_appData['name'] = 'IP.Board';
}
}
/* Fail safe */
if (!$this->_currentApp) {
print "No app";
exit;
}
$this->registry->output->setVersionAndApp($this->_uipHuman, $this->_appData);
/* Switch */
switch ($this->request['do']) {
case 'sql':
$this->_stepCount = 1;
$this->install_sql();
break;
case 'appclass':
$this->_stepCount = 2;
$this->install_appclass();
break;
case 'checkdb':
$this->_stepCount = 3;
$this->install_checkdb();
break;
case 'modules':
$this->_stepCount = 4;
$this->install_modules();
break;
case 'settings':
$this->_stepCount = 5;
$this->install_settings();
break;
case 'templates':
$this->_stepCount = 6;
$this->install_templates();
break;
case 'tasks':
$this->_stepCount = 7;
$this->install_tasks();
break;
case 'languages':
$this->_stepCount = 8;
$this->install_languages();
break;
case 'clientlanguages':
$this->_stepCount = 9;
$this->install_client_languages();
break;
case 'bbcode':
$this->_stepCount = 10;
$this->install_bbcode();
break;
case 'acphelp':
$this->_stepCount = 11;
$this->install_acphelp();
break;
case 'other':
$this->_stepCount = 12;
$this->install_other();
break;
case 'caches':
$this->_stepCount = 13;
$this->install_caches();
break;
case 'templatecache':
$this->_stepCount = 14;
$this->install_template_caches();
break;
default:
$this->_splash();
break;
}
/* Log errors for support */
if (count($this->_errorMsg) > 0) {
IPSSetUp::addLogMessage(implode("\n", $this->_errorMsg), $this->_uipHuman, $this->_currentApp);
}
}