fetch_all($chatpmmember['member']); foreach(C::t('common_member_field_home')->fetch_all($chatpmmember['member']) as $uid => $member) { $chatpmmemberlist[$uid] = array_merge($member, $chatpmmemberlist[$uid]); } } require_once libfile('function/friend'); $friendgrouplist = friend_group_list(); $actives = array('chatpmmember'=>' class="a"'); } else { if($touid) { $ols = array(); if(defined('IN_MOBILE')) { $perpage = 5; } else { $perpage = 10; } $perpage = mob_perpage($perpage); if(!$daterange) { $member = getuserbyuid($touid); $tousername = $member['username']; unset($member); $count = uc_pm_view_num($_G['uid'], $touid, 0); if(!$page) { $page = ceil($count/$perpage); } $list = uc_pm_view($_G['uid'], 0, $touid, 5, ceil($count/$perpage)-$page+1, $perpage, 0, 0); $multi = pmmulti($count, $perpage, $page, "home.php?mod=space&do=pm&subop=view&touid=$touid"); } else { showmessage('parameters_error'); } } else { if(defined('IN_MOBILE')) { $perpage = 10; } else { $perpage = 50; } $perpage = mob_perpage($perpage); $count = uc_pm_view_num($_G['uid'], $plid, 1); if(!$daterange) { if(!$page) { $page = ceil($count/$perpage); } $list = uc_pm_view($_G['uid'], 0, $plid, 5, ceil($count/$perpage)-$page+1, $perpage, $type, 1); $multi = pmmulti($count, $perpage, $page, "home.php?mod=space&do=pm&subop=view&plid=$plid&type=$type"); } else { $list = uc_pm_view($_G['uid'], 0, $plid, 5, ceil($count/$perpage)-$page+1, $perpage, $type, 1); $chatpmmember = uc_pm_chatpmmemberlist($_G['uid'], $plid); if(!empty($chatpmmember)) { $authorid = $founderuid = $chatpmmember['author']; $chatpmmemberlist = C::t('common_member')->fetch_all($chatpmmember['member']); foreach(C::t('common_member_field_home')->fetch_all($chatpmmember['member']) as $uid => $member) { $chatpmmemberlist[$uid] = array_merge($member, $chatpmmemberlist[$uid]); } foreach(C::app()->session->fetch_all_by_uid($chatpmmember['member']) as $value) { if(!$value['invisible']) { $ols[$value['uid']] = $value['lastactivity']; } } } $membernum = count($chatpmmemberlist); $subject = $list[0]['subject']; $refreshtime = $_G['setting']['chatpmrefreshtime']; } } $founderuid = empty($list)?0:$list[0]['founderuid']; $pmid = empty($list)?0:$list[0]['pmid']; } $actives['privatepm'] = ' class="a"'; } elseif($_GET['subop'] == 'viewg') { $grouppm = C::t('common_grouppm')->fetch($_GET['pmid']); if(!$grouppm) { $grouppm = array_merge((array)C::t('common_member_grouppm')->fetch($_G['uid'], $_GET['pmid']), $grouppm); } if($grouppm) { $grouppm['numbers'] = $grouppm['numbers'] - 1; } if(!$grouppm['status']) { C::t('common_member_grouppm')->update($_G['uid'], $_GET['pmid'], array('status' => 1, 'dateline' => TIMESTAMP)); } $actives['announcepm'] = ' class="a"'; } elseif($_GET['subop'] == 'ignore') { $ignorelist = uc_pm_blackls_get($_G['uid']); $actives = array('ignore'=>' class="a"'); } elseif($_GET['subop'] == 'setting') { $actives = array('setting'=>' class="a"'); $acceptfriendpmstatus = $_G['member']['onlyacceptfriendpm'] ? $_G['member']['onlyacceptfriendpm'] : ($_G['setting']['onlyacceptfriendpm'] ? 1 : 2); $ignorelist = uc_pm_blackls_get($_G['uid']); } else { $filter = in_array($_GET['filter'], array('newpm', 'privatepm', 'announcepm')) ? $_GET['filter'] : 'privatepm'; $perpage = 15; $perpage = mob_perpage($perpage); $page = empty($_GET['page'])?0:intval($_GET['page']); if($page<1) $page = 1; $grouppms = $gpmids = $gpmstatus = array(); $newpm = $newpmcount = 0; if($filter == 'privatepm' && $page == 1 || $filter == 'announcepm' || $filter == 'newpm') { $announcepm = 0; foreach(C::t('common_member_grouppm')->fetch_all_by_uid($_G['uid'], $filter == 'announcepm' ? 1 : 0) as $gpmid => $gpuser) { $gpmstatus[$gpmid] = $gpuser['status']; if($gpuser['status'] == 0) { $announcepm ++; } } $gpmids = array_keys($gpmstatus); if($gpmids) { foreach(C::t('common_grouppm')->fetch_all_by_id_authorid($gpmids) as $grouppm) { $grouppm['message'] = cutstr(strip_tags($grouppm['message']), 100, ''); $grouppms[] = $grouppm; } } } if($filter == 'privatepm' || $filter == 'newpm') { $result = uc_pm_list($_G['uid'], $page, $perpage, 'inbox', $filter, 200); $count = $result['count']; $list = $result['data']; } if($filter == 'privatepm' && $page == 1 || $filter == 'newpm') { $newpmarr = uc_pm_checknew($_G['uid'], 1); $newpm = $newpmarr['newpm']; } $newpmcount = $newpm + $announcepm; if($_G['member']['newpm']) { if($newpm && $_G['setting']['cloud_status']) { $msgService = Cloud::loadClass('Cloud_Service_Client_Message'); $msgService->setMsgFlag($_G['uid'], $_G['timestamp']); } C::t('common_member')->update($_G['uid'], array('newpm' => 0)); uc_pm_ignore($_G['uid']); } $multi = multi($count, $perpage, $page, "home.php?mod=space&do=pm&filter=$filter", 0, 5); $actives = array($filter=>' class="a"'); } if(!empty($list)) { $today = $_G['timestamp'] - ($_G['timestamp'] + $_G['setting']['timeoffset'] * 3600) % 86400; foreach ($list as $key => $value) { $value['lastsummary'] = str_replace('&', '&', $value['lastsummary']); $value['lastsummary'] = preg_replace("/&[a-z]+\;/i", '', $value['lastsummary']); $value['daterange'] = 5; if($value['lastdateline'] >= $today) { $value['daterange'] = 1; } elseif($value['lastdateline'] >= $today - 86400) { $value['daterange'] = 2; } elseif($value['lastdateline'] >= $today - 172800) { $value['daterange'] = 3; } elseif($value['lastdateline'] >= $today - 604800) { $value['daterange'] = 4; } $list[$key] = $value; } } include_once template("diy:home/space_pm"); function pmmulti($count, $perpage, $curpage, $mpurl) { $return = ''; $lang['next'] = lang('core', 'nextpage'); $lang['prev'] = lang('core', 'prevpage'); $next = $curpage < ceil($count/$perpage) ? ''.$lang['next'].'' : ''; $prev = $curpage > 1 ? ''.$lang['prev'].'' : ''; if($next || $prev) { $return = '
'.$prev.$next.'
'; } return $return; } ?>