Если вы не вносили никаких изменений в Private Message Mod 1.2.2 то следуйте инструкции
#
#1. BACKUP!!!
#
#
#2.-----------[ OPEN ]--------------------------------------------------------
#
/include/pms/header_new_messages.php
#
#3.-----------[ REPLACE ALL ]--------------------------------------------------------
#
<? $result = $db->query('SELECT popup_enable, messages_enable FROM '.$db->prefix.'users WHERE id='. $pun_user['id']) or error('Unable to fetch user info for Private Messsage options', __FILE__, __LINE__, $db->error());
if (!$db->num_rows($result)) message($lang_common['Bad request']);
$message_option = $db->fetch_assoc($result);
$testmessageopt=$message_option['messages_enable'];
if ($message_option['messages_enable'] == 1 )
{
if(!$pun_user['is_guest'] && $pun_user['g_pm'] == 1 && $pun_config['o_pms_enabled'] ){
require PUN_ROOT.'lang/'.$pun_user['language'].'/pms.php';
// Check for new messages
$result_messages = $db->query('SELECT COUNT(id) FROM '.$db->prefix.'messages WHERE showed=0 AND owner='.$pun_user['id']) or error('Unable to check for new messages', __FILE__, __LINE__, $db->error());
if ($db->result($result_messages, 0)){
$tpl_temp .= "\n\t\t\t\t".'<li class="pmlink"><strong><a href="message_list.php">'.$lang_pms['New messages'].'</a></strong></li>';
if ($message_option['popup_enable'] == 1 )
{
$result_messages = $db->query('SELECT COUNT(*) FROM '.$db->prefix.'messages WHERE popup=0 AND owner='.$pun_user['id']) or error('Unable update popup status', __FILE__, __LINE__, $db->error());
if ($db->result($result_messages, 0)) {
$tpl_temp .="\n\t\t\t\t".'<script language="JavaScript" type="text/javascript">
<!--
window.open("message_popup.php","NewPM","width=500,height=250,resizable=yes,scrollbars=yes");
//-->
</script>';
$db->query('UPDATE '.$db->prefix.'messages SET popup="1" WHERE popup="0" AND owner='.$pun_user['id']) or error('Unable to update popup status', __FILE__, __LINE__, $db->error());
}
}
}
// Check if the inbox is full
if($pun_config['o_pms_messages'] != 0 && $pun_user['g_id'] > PUN_GUEST){
$result = $db->query('SELECT count(*) FROM '.$db->prefix.'messages WHERE owner='.$pun_user['id']) or error('Unable to test if the message-box is full', __FILE__, __LINE__, $db->error());
list($count) = $db->fetch_row($result);
// Display error message
if($count >= $pun_user['g_pm_limit'])
$tpl_temp .= "\n\t\t\t\t".'<li class="pmlink"><strong><a href="message_list.php">'.$lang_pms['Full inbox'].'</a></strong></li>';
}
}
}
?>
#
#4.-----------[ OPEN ]--------------------------------------------------------
#
/lang/Russian/pms.php
#
#5.-----------[ FIND ]--------------------------------------------------------
#
'Flood end' => 'секунд после отправки предыдущего сообщения.'
#
#6.-----------[ AFTER ADD ]--------------------------------------------------------
#
,
'Options' => 'Настройка',
'Options PM' => 'Настройка службы личных сообщений',
'Use popup' => 'Использовать поп-ап если есть новые сообщения',
'Instructions' => 'После обновления настроек, вы будете перенаправлены назад на эту страницу.',
'Use messages' => 'Использовать службу приватных сообщений',
'Disable options' => 'отключил использование службы личных сообщений',
'PM disabled' => 'Cлужба сообщений отключена.'
#
#7.-----------[ OPEN ]--------------------------------------------------------
#
/message_list.php
#
#8.-----------[ FIND ]--------------------------------------------------------
#
$box != 1 ? $box = 0 : $box = 1;
$box != 1 ? $status = 0 : null;
$box == 0 ? $name = $lang_pms['Inbox'] : $name = $lang_pms['Outbox'];
#
#9.-----------[ REPLACE ]--------------------------------------------------------
#
if ( ($box != 1) && ($box != 2) ) {$box = 0;}
$box < 1 ? $status = 0 : null;
switch ($box)
{
case 0:
$name = $lang_pms['Inbox'];
break;
case 1:
$name = $lang_pms['Outbox'];
break;
case 2:
$name = $lang_pms['Options'];
break;
}
#
#10.-----------[ FIND (line 102) ]--------------------------------------------------------
#
$page_title = pun_htmlspecialchars($pun_config['o_board_title']).' / '.$lang_pms['Private Messages'].' - '.$name;
#
#11.-----------[ AFTER ADD ]--------------------------------------------------------
#
if ( $box<2)
{
#
#12.-----------[ FIND (line 112) ]--------------------------------------------------------
#
$limit = $start_from.','.$pun_config['o_pms_mess_per_page'];
#
#12.-----------[ AFTER ADD ]--------------------------------------------------------
#
}
#
#13.-----------[ FIND (line 128) <div class="block2col"> может быть со стилями!!! ]-----------------------
#
<div class="block2col">
<div class="blockmenu">
<h2><span><?php echo $lang_pms['Private Messages'] ?></span></h2>
<div class="box">
<div class="inbox">
<ul>
<li <?php if ($box == 0) echo 'class="isactive"' ?>><a href="message_list.php?box=0"><?php echo $lang_pms['Inbox'] ?></a></li>
<li <?php if ($box == 1) echo 'class="isactive"' ?>><a href="message_list.php?box=1"><?php echo $lang_pms['Outbox'] ?></a></li>
</ul>
</div>
</div>
</div>
<div class="linkst">
<div class="inbox">
<p class="pagelink conl"><?php echo $lang_common['Pages'].': '.paginate($num_pages, $p, 'message_list.php?box='.$box) ?></p>
<p class="postlink conr"><a href="message_send.php"><?php echo $lang_pms['New message']; ?></a></p>
<ul><li><a href="index.php"><?php echo pun_htmlspecialchars($pun_config['o_board_title']) ?></a> </li><li>» <?php echo $lang_pms['Private Messages'] ?> </li><li>» <?php echo $page_name ?></li></ul>
</div>
</div>
#
#14.-----------[REPLACE WITH ]--------------------------------------------------------
#
<div class="block2col">
<div class="blockmenu">
<h2><span><?php echo $lang_pms['Private Messages'] ?></span></h2>
<div class="box">
<div class="inbox">
<ul>
<li <?php if ($box == 0) echo 'class="isactive"' ?>><a href="message_list.php?box=0"><?php echo $lang_pms['Inbox'] ?></a></li>
<li <?php if ($box == 1) echo 'class="isactive"' ?>><a href="message_list.php?box=1"><?php echo $lang_pms['Outbox'] ?></a></li>
<li <?php if ($box == 2) echo 'class="isactive"' ?>><a href="message_list.php?box=2"><?php echo $lang_pms['Options'] ?></a></li>
</ul>
</div>
</div>
</div>
<?
if ( $box<2)
{
#
#15.-----------[ FIND (line 401) ]--------------------------------------------------------
#
$footer_style = 'message_list';
#
#16.-----------[ BEFORE ADD ]--------------------------------------------------------
#
}
else
{
if (isset($_POST['update']))
{
isset($_POST['popup_enable']) ? $popup=1 : $popup=0;
isset($_POST['messages_enable']) ? $msg_enable=1 : $msg_enable=0;
$db->query('UPDATE '.$db->prefix.'users SET popup_enable='. $popup . ', messages_enable='. $msg_enable.' WHERE id='. $pun_user['id']) or error('Unable to update Private Messsage options', __FILE__, __LINE__, $db->error());
}
$result = $db->query('SELECT popup_enable, messages_enable FROM '.$db->prefix.'users WHERE id='. $pun_user['id']) or error('Unable to fetch user info for Private Messsage options', __FILE__, __LINE__, $db->error());
if (!$db->num_rows($result))
message($lang_common['Bad request']);
$user = $db->fetch_assoc($result);
?>
<div class="blockform">
<h2><span><?php echo $name ?></span></h2>
<div class="box">
<form id="messages" method="post" action="message_list.php?box=2">
<div><input type="hidden" name="form_sent" value="1" /></div>
<div class="inform">
<fieldset id="profileavatar">
<legend><?php echo $lang_pms['Options PM'] ?></legend>
<div class="infldset">
<div class="rbox">
<label><input type="checkbox" name="popup_enable" value="1"<?php if ($user['popup_enable'] == '1') echo ' checked="checked"' ?> /><?php echo $lang_pms['Use popup'] ?><br /></label>
<label><input type="checkbox" name="messages_enable" value="1"<?php if ($user['messages_enable'] == '1') echo ' checked="checked"' ?> /><?php echo $lang_pms['Use messages'] ?><br /></label>
</div>
</div>
</fieldset>
</div>
<p><input type="submit" name="update" value="<?php echo $lang_pms['Send'] ?>" /><?php echo $lang_pms['Instructions'] ?></p>
</form>
</div>
</div>
<div class="clearer"></div>
</div>
<?
}
#
#17.-----------[ OPEN ]--------------------------------------------------------
#
message_send.php
#
#18.-----------[ FIND (line 106) ]--------------------------------------------------------
#
$db->query('INSERT INTO '.$db->prefix.'messages (owner, subject, message, sender, sender_id, sender_ip, smileys, showed, status, posted) VALUES(
\''.$id.'\',
\''.addslashes($subject).'\',
\''.addslashes($message).'\',
\''.addslashes($pun_user['username']).'\',
\''.$pun_user['id'].'\',
\''.get_remote_address().'\',
\''.$smilies.'\',
\'0\',
\'0\',
\''.time().'\'
)') or error('Unable to send message', __FILE__, __LINE__, $db->error());
// Save an own copy of the message
if(isset($_POST['savemessage'])){
$db->query('INSERT INTO '.$db->prefix.'messages (owner, subject, message, sender, sender_id, sender_ip, smileys, showed, status, posted) VALUES(
\''.$pun_user['id'].'\',
\''.addslashes($subject).'\',
\''.addslashes($message).'\',
\''.addslashes($user).'\',
\''.$id.'\',
\''.get_remote_address().'\',
\''.$smilies.'\',
\'1\',
\'1\',
\''.time().'\'
)') or error('Unable to send message', __FILE__, __LINE__, $db->error());
#
#19.-----------[ REPLACE WITH ]--------------------------------------------------------
#
$db->query('INSERT INTO '.$db->prefix.'messages (owner, subject, message, sender, sender_id, sender_ip, smileys, showed, status, posted, popup) VALUES(
\''.$id.'\',
\''.addslashes($subject).'\',
\''.addslashes($message).'\',
\''.addslashes($pun_user['username']).'\',
\''.$pun_user['id'].'\',
\''.get_remote_address().'\',
\''.$smilies.'\',
\'0\',
\'0\',
\''.time().'\',
\'0\'
)') or error('Unable to send message', __FILE__, __LINE__, $db->error());
// Save an own copy of the message
if(isset($_POST['savemessage'])){
$db->query('INSERT INTO '.$db->prefix.'messages (owner, subject, message, sender, sender_id, sender_ip, smileys, showed, status, posted, popup) VALUES(
\''.$pun_user['id'].'\',
\''.addslashes($subject).'\',
\''.addslashes($message).'\',
\''.addslashes($user).'\',
\''.$id.'\',
\''.get_remote_address().'\',
\''.$smilies.'\',
\'1\',
\'1\',
\''.time().'\',
\'1\'
)') or error('Unable to send message', __FILE__, __LINE__, $db->error());
#
#20.-----------[ FIND (line 194) ]--------------------------------------------------------
#
require PUN_ROOT.'header.php';
#
#21.-----------[ AFTER ADD ]--------------------------------------------------------
#
if ($testmessageopt != 1 )
{
message($lang_pms['PM disabled'] . ' <a href="message_list.php?&box=2">'. $lang_pms['Options PM'] .'</a>');
}
#
#22.-----------[ CREATE FILE ]--------------------------------------------------------
#
message_popup.php
#
#23.-----------[ ADD TO FILE ]--------------------------------------------------------
#
<?php
define('PUN_ROOT', './');
require PUN_ROOT.'include/common.php';
require PUN_ROOT.'include/parser.php';
if(!$pun_config['o_pms_enabled'] || $pun_user['g_pm'] == 0)
message($lang_common['No permission']);
if ($pun_user['is_guest'])
message($lang_common['Login required']);
// Load the message.php language file
require PUN_ROOT.'lang/'.$pun_user['language'].'/pms.php';
require PUN_ROOT.'lang/'.$pun_user['language'].'/topic.php';
require PUN_ROOT.'lang/'.$pun_user['language'].'/misc.php';
?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html dir="ltr">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title><?php echo $mod_title ?> installation</title>
<link rel="stylesheet" type="text/css" href="style/<?php echo $pun_config['o_default_style'].'.css' ?>" />
</head>
<body>
<div id="punwrap">
<div id="puninstall" class="pun" style="margin: 10% 20% auto 20%">
<div class="block">
<h2><span>Restore successful</span></h2>
<div class="box">
<div class="inbox">
<p>Тут должна быть ссылка на новое сообщение...</p>
</div>
</div>
</div>
</div>
</div>
</body>
</html>
#
#24.-----------[ EXECUTE QUERIES ]--------------------------------------------------------
#
ALTER TABLE users ADD popup_enable TINYINT DEFAULT '1';
ALTER TABLE users ADD messages_enable TINYINT DEFAULT '1';
ALTER TABLE messages ADD popup TINYINT DEFAULT '0';