updateNewpm($winduid, 'add'); Showmsg('msg_unread_success'); } else { Showmsg('msg_error'); } } elseif ($action == 'delmessage') { PostCheck(); InitGP(array('delid', 'type')); !$delid && Showmsg('del_error'); if ($type == 'personal' || $type == 'system') { $newdelid = ''; $newdelid = $db->get_value("SELECT mid FROM pw_msg WHERE mid=" . pwEscape($delid) . " AND type='rebox' AND touid=" . pwEscape($winduid)); if ($newdelid) { $db->update("DELETE FROM pw_msg WHERE mid=" . pwEscape($newdelid)); require_once R_P . 'require/msg.php'; delete_msgc($newdelid); } } elseif ($type == 'public') { $delmsg = $db->get_value('SELECT delmsg FROM pw_memberinfo WHERE uid=' . pwEscape($winduid)); if ($delmsg) { $delmsg = ',' . $delmsg . ',' . $delid . ','; $delmsg = substr($delmsg, 1, -1); $temp_delmsg = explode(',', $delmsg); arsort($temp_delmsg); $delmsg = implode(',', $temp_delmsg); $db->update("UPDATE pw_memberinfo SET delmsg=" . pwEscape($delmsg) . " WHERE uid=" . pwEscape($winduid)); } else { $db->pw_update("SELECT * FROM pw_memberinfo WHERE uid=" . pwEscape($winduid), "UPDATE pw_memberinfo SET delmsg=" . pwEscape($delid) . " WHERE uid=" . pwEscape($winduid), "INSERT INTO pw_memberinfo SET " . pwSqlSingle(array('uid' => $winduid, 'delmsg' => $delid))); } } else { Showmsg('del_error');
} else { S::gp(array('pwuser', 'title', 'content'), 'P'); $userService = L::loadClass('UserService', 'user'); /* @var $userService PW_UserService */ $rt = $userService->getByUserName($pwuser); if (!$rt) { wap_msg('user_not_exists'); } if ($rt['msggroups'] && strpos($rt['msggroups'], ",{$groupid},") === false || strpos($rt['banpm'], ",{$windid},") !== false) { wap_msg('msg_refuse'); } $title = wap_cv($title); $content = wap_cv($content); $db->update("INSERT INTO pw_msg" . " SET " . S::sqlSingle(array('touid' => $rt['uid'], 'fromuid' => $winduid, 'username' => $windid, 'type' => 'rebox', 'ifnew' => 1, 'mdate' => $timestamp))); $mid = $db->insert_id(); $db->update("REPLACE INTO pw_msgc" . " SET " . S::sqlSingle(array('mid' => $mid, 'title' => $title, 'content' => $content))); $userService->updateByIncrement($rt['uid'], array('newpm' => 1)); wap_msg('msg_success', 'index.php?m=msg'); } } elseif ($action == 'delete') { S::gp(array('mid'), 'GP', 2); $db->update("DELETE FROM pw_msg WHERE mid=" . S::sqlEscape($mid) . " AND type='rebox' AND touid=" . S::sqlEscape($winduid)); $userService = L::loadClass('UserService', 'user'); /* @var $userService PW_UserService */ $userService->updateByIncrement($winduid, array('newpm' => -1)); if ($db->affected_rows() > 0) { require_once R_P . 'require/msg.php'; delete_msgc($mid); } wap_msg('msg_delete', 'index.php?m=msg'); }
} $lines < 1 && ($lines = 100); $delids = array(); $query = $db->query("SELECT DISTINCT mid FROM pw_msglog WHERE {$sql} LIMIT {$lines}"); while ($rt = $db->fetch_array($query)) { $delids[] = $rt['mid']; } require_once R_P . 'require/msg.php'; if ($delids) { $delids = pwImplode($delids); $db->update("DELETE FROM pw_msglog WHERE mid IN({$delids})"); $delnum += $db->affected_rows(); delete_msgc($delids); adminmsg('msglog_delete_step', EncodeUrl("{$basename}&action={$action}&msgdate={$msgdate}&lines={$lines}&delnum={$delnum}")); } else { delete_msgc(); adminmsg('operate_success'); } } } function numofpage_t($count, $page, $numofpage, $url, $max = null, $ajaxurl = '') { global $tablecolor; $total = $numofpage; if (!empty($max)) { $max = (int) $max; $numofpage > $max && ($numofpage = $max); } if ($numofpage <= 1 || !is_numeric($page)) { return ''; } else {
foreach ($selid as $value) { is_numeric($value) && ($selids[] = $value); } $selids && ($selids = pwImplode($selids)); } !$selids && Showmsg('sel_error'); $newdelids = array(); $query = $db->query("SELECT mid FROM pw_msglog WHERE mid IN({$selids}) AND uid=" . pwEscape($winduid) . ' AND withuid=' . pwEscape($withuid)); while ($rt = $db->fetch_array($query)) { $newdelids[] = $rt['mid']; } if ($newdelids) { $newdelids = pwImplode($newdelids); require_once R_P . 'require/msg.php'; $db->update("DELETE FROM pw_msglog WHERE mid IN ({$newdelids}) AND uid=" . pwEscape($winduid)); delete_msgc($newdelids); } refreshto("message.php?action=chatlog&withuid={$withuid}", 'operate_success'); } require_once PrintEot('message'); footer(); function autourl($message) { global $db_autoimg; if ($db_autoimg == 1) { $message = preg_replace(array("/(?<=[^\\]a-z0-9-=\"'\\/])((https?|ftp):\\/\\/|www\\.)([a-z0-9\\/\\-_+=.~!%@?#%&;:\$\\│]+\\.gif)/i", "/(?<=[^\\]a-z0-9-=\"'\\/])((https?|ftp):\\/\\/|www\\.)([a-z0-9\\/\\-_+=.~!%@?#%&;:\$\\│]+\\.jpg)/i"), array("[img]\\1\\3[/img]", "[img]\\1\\3[/img]"), ' ' . $message); } $message = preg_replace(array("/(?<=[^\\]a-z0-9-=\"'\\/])((https?|ftp|gopher|news|telnet|mms|rtsp):\\/\\/|www\\.)([a-z0-9\\/\\-_+=.~!%@?#%&;:\$\\│]+)/i", "/(?<=[^\\]a-z0-9\\/\\-_.~?=:.])([_a-z0-9-]+(\\.[_a-z0-9-]+)*@[a-z0-9-]+(\\.[a-z0-9-]+)*(\\.[a-z]{2,4}))/i"), array("[url]\\1\\3[/url]", "[email]\\0[/email]"), ' ' . $message); return $message; } /**