⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ps.php

📁 极限OA开源系统
💻 PHP
字号:
<?
/********************************************************************************/
/* 极限办公自动化系统 (极限OA)													*/
/* ========================      												*/
/* 欢迎使用 极限OA,在您开始使用之前,请务必完整阅读本软件附带的全部说明档				*/
/********************************************************************************/
/* Welcome to http://www.xsp.cn & http://oa.xsp.cn								*/
/* 技术支持论坛 http://www.1119.net												*/
/********************************************************************************/
/* 商业购买请联系 临海市极限网络有限公司											*/
/* 联系电话: (0576) 5131349	邮件: mkt@xsp.cn	QQ: 562873							*/
/********************************************************************************/
if(!defined('KIN_UNION')){die("Hacking attempt");}
$pre_s = true;

if($selectmem == 'yes') {
	
	$query = $db->query("select * from $table_parts where fig='1' order by id ASC");
	$num = $db->num_rows($query);
	while($list = $db->fetch_array($query)) {
		$part_list[$list[id]] = $list;
	}

	$perpage = 20;
	if(!$page) {
		$page = 1;
	}
	$offset = ($page - 1) * $perpage;
	$query = $db->query("SELECT COUNT(*) FROM $table_members");
	$num = $total = $db->result($query, 0);
	$multipage = pages($num, $perpage, $page, "communion.php?action=ps&selectmem=yes");

	$query = $db->query("select * from $table_members order by uid ASC LIMIT $offset, $perpage");
	while($list = $db->fetch_array($query)) {
		$list[part] = $part_list[$list[part]][name];
		$list[des] = $list[des]?$list[des]:'空';
		$member_list[$list[uid]] = $list;
	}
}else {

	$query = $db->query("SELECT COUNT(*) FROM $table_ps WHERE messageread=0 && deleteyes=0 && folderid=1 && (public=1 || (touser='$union_user' && deleteyes=0))");
	$newnum = $db->result($query, 0);


	if(!$sysaction || $sysaction == 'inbox') {
		if($update) {
			if(is_array($delete)) {
				$ids = $comma = '';
				foreach($delete as $id) {
					$ids .= "$comma'$id'";
					$comma = ', ';
				}
				$db->query("UPDATE $table_ps SET deleteyes=1 WHERE public=0 && folderid=1 && (fromuser='$union_user' || touser='$union_user') && id IN ($ids)");
				showmessage('更新成功','communion.php?action=ps&sysaction=inbox');
			}
		}
		$perpage = 10;

		if(!$page) {
			$page = 1;
		}
		$offset = ($page - 1) * $perpage;
	
		$query = $db->query("SELECT COUNT(*) FROM $table_ps WHERE deleteyes=0 && folderid=1 && (public=1 || (touser='$union_user' && deleteyes=0))");
		$num = $db->result($query, 0);
		
		$multipage = pages($num, $perpage, $page, "communion.php?action=ps&sysaction=inbox");

		$query = $db->query("SELECT * FROM $table_ps WHERE deleteyes=0 && folderid=1 && (public=1 || (touser='$union_user' && deleteyes=0)) ORDER BY public DESC, dateline DESC LIMIT $offset, $perpage");
		while($ps = $db->fetch_array($query)) {	
			$ps['dateline'] = date('Y-m-d H:i:s',$ps['dateline']);
			$ps['title'] = wordscut($ps['title'],100);
			$ps['fromuser'] = $ps['fromuser'];
			$ps_list[$ps[id]] = $ps;		
		}
		$ug_maxps_ = $ug_maxps - 1;
		$delps = $db->fetch_array($db->query("SELECT id,dateline FROM $table_ps WHERE public=0 && ((folderid = 2 && fromuser='$union_user') || (folderid = 1 && touser='$union_user')) order by dateline DESC limit $ug_maxps_,1"));
		if($delps['dateline']) {
			$db->query("DELETE FROM $table_ps WHERE public=0 && ((folderid = 2 && fromuser='$union_user') || (folderid = 1 && touser='$union_user')) && dateline<'$delps[dateline]'");
		}
	}elseif($sysaction == 'send') {
		if($sendsubmit) {
			if($public==0) {
				if(empty($psto)) {
					showmessage('请返回填写收件人');
				}else {
					$query = $db->query("SELECT username FROM $table_members WHERE username='$psto'");
					if(!$member = $db->fetch_array($query)) {
						showmessage('对不起 无此用户 请返回确认');
					}
				}
			}

			$psto = ($public==1)?'':$psto;
		
			if(!trim($subject)) {
				showmessage('对不起 请返回填写标题!');
			}

			$trackoff = $trackoff?0:1;
			$replyoff = $replyoff?1:0;
			if($trackoff == 0 && empty($ug_usertrack))
				showmessage("对不起,你没有权限使用消息跟踪。");

			include_once'includes/bbcode.php';
			$subject = union_htmlspecialchars(trim($subject));
			$message = trim(parseurl($message));

			$folderarr = array(1=>'inbox',2=>'outbox',3=>'recycle_bin');

			$db->query("INSERT INTO $table_ps (id, public, folderid, touser, fromuser, title, message, dateline, trackoff, replyoff) 
				VALUES (NULL, '$public', 1, '$psto', '$union_user', '$subject', '$message', '$timestamp', '$trackoff', '$replyoff')");
		
			$db->query("UPDATE $table_members SET newps='1' WHERE username='$psto'");

			if($saveoutbox) {
				$db->query("INSERT INTO $table_ps (id, public, folderid, touser, fromuser, title, message, dateline, trackoff, replyoff) 
					VALUES (NULL, '$public', 2, '$psto', '$union_user', '$subject', '$message', '$timestamp', '$trackoff', '$replyoff')");		
			}
			showmessage('短信发送成功 正在返回', 'communion.php?action=ps&sysaction=inbox');
		}
		if($replyid) {
			$query = $db->query("SELECT * FROM $table_ps WHERE id='$replyid'");
			$ps = $db->fetch_array($query);
			if($ps[replyoff] == 1) {
				showmessage('对不起 此信息禁止回复! 请返回');
			}
			if($ps[public] == 1) {
				showmessage('对不起 此信息为公共信息 禁止回复! 请返回');
			}
			$psto = $ps[fromuser];
			$subject = "Re:$ps[title]";
			$ps[message] = wordscut($ps[message],100);
			$message = "[QUOTE]\n$ps[message]\n[/QUOTE]\n";
		}
	}elseif($sysaction == 'neglect') {
		if($sendsubmit) {
			$db->query("UPDATE $table_members SET neglectps='$neglects' WHERE uid='$union_uid'");
			showmessage('忽略列表编辑成功', 'communion.php?action=ps&sysaction=neglect');
		}
		$query = $db->query("SELECT neglectps FROM $table_members WHERE uid='$union_uid'");
		$neglectps = $db->fetch_array($query);
	}elseif($sysaction == 'outbox') {
		if($update) {
			if(is_array($delete)) {
				$ids = $comma = '';
				foreach($delete as $id) {
					$ids .= "$comma'$id'";
					$comma = ', ';
				}
				$db->query("UPDATE $table_ps SET deleteyes=1 WHERE public=0 && folderid=2 && fromuser='$union_user' && id IN ($ids)");
				showmessage('更新成功','communion.php?action=ps&sysaction=outbox');
			}
		}
		
		$perpage = 10;

		if(!$page) {
			$page = 1;
		}
		$offset = ($page - 1) * $perpage;
	
		$query = $db->query("SELECT COUNT(*) FROM $table_ps WHERE deleteyes=0 && public=0 && folderid=2 && fromuser='$union_user'");
		$num = $db->result($query, 0);
		
		$multipage = pages($num, $perpage, $page, "communion.php?action=ps&sysaction=inbox");

		$query = $db->query("SELECT * FROM $table_ps WHERE deleteyes=0 && public=0 && folderid=2 && fromuser='$union_user' ORDER BY dateline DESC LIMIT $offset, $perpage");
		while($ps = $db->fetch_array($query)) {	
			$ps['dateline'] = date('Y-m-d',$ps['dateline']);
			$ps['title'] = wordscut($ps['title'],100);
			$ps['fromuser'] = $ps['fromuser'];
			$ps_list[$ps[id]] = $ps;		
		}
	}elseif($sysaction == 'recycle_bin') {
		if($update) {
			if(is_array($delete)) {
				$ids = $comma = '';
				foreach($delete as $id) {
					$ids .= "$comma'$id'";
					$comma = ', ';
				}
				$db->query("DELETE FROM $table_ps WHERE public=0 && (fromuser='$union_user' || touser='$union_user') && id IN ($ids)");
				showmessage('删除成功','communion.php?action=ps&sysaction=inbox');
			}
		}
		
		$perpage = 10;

		if(!$page) {
			$page = 1;
		}
		$offset = ($page - 1) * $perpage;
	
		$query = $db->query("SELECT COUNT(*) FROM $table_ps WHERE deleteyes=1 && public=0 && ((folderid=2 && fromuser='$union_user') || (folderid=1 && touser='$union_user'))");
		$num = $db->result($query, 0);
		
		$multipage = pages($num, $perpage, $page, "communion.php?action=ps&sysaction=inbox");

		$query = $db->query("SELECT * FROM $table_ps WHERE deleteyes=1 && public=0 && ((folderid=2 && fromuser='$union_user') || (folderid=1 && touser='$union_user')) ORDER BY dateline DESC LIMIT $offset, $perpage");
		while($ps = $db->fetch_array($query)) {	
			$ps['dateline'] = date('Y-m-d',$ps['dateline']);
			$ps['title'] = wordscut($ps['title'],100);
			$ps['fromuser'] = $ps['fromuser'];
			$ps_list[] = $ps;		
		}
	}elseif($sysaction == 'track') {
		if($update) {
			if(is_array($delete)) {
				$ids = $comma = '';
				foreach($delete as $id) {
					$ids .= "$comma'$id'";
					$comma = ', ';
				}
				$db->query("UPDATE $table_ps SET trackoff=1 WHERE public=0 && id IN ($ids)");
				showmessage('更新成功','communion.php?action=ps&sysaction=track');
			}
		}
		
		$perpage = 10;

		if(!$page) {
			$page = 1;
		}
		$offset = ($page - 1) * $perpage;
	
		$query = $db->query("SELECT COUNT(*) FROM $table_ps WHERE deleteyes=0 && public=0 && folderid=2 && fromuser='$union_user'");
		$num = $db->result($query, 0);
		
		$multipage = pages($num, $perpage, $page, "communion.php?action=ps&sysaction=inbox");

		$query = $db->query("SELECT * FROM $table_ps WHERE public=0 && folderid=1 && fromuser='$union_user' && trackoff=0 ORDER BY dateline DESC LIMIT $offset, $perpage");
		while($ps = $db->fetch_array($query)) {
			$ps['dateline'] = date('Y-m-d',$ps['dateline']);
			$ps['readtime'] ? $ps['readtime'] = date('Y-m-d',$ps['readtime']) : NULL;
			$ps['title'] = wordscut($ps['title'],100);
			$ps_list[$ps[id]] = $ps;		
		}
	}elseif($sysaction == 'view') {
		$codecount = 0;

		$query = $db->query("SELECT * FROM $table_ps WHERE id='$psid' AND (public=1 OR touser='$union_user' OR fromuser='$union_user')");
		if(!$ps = $db->fetch_array($query)) {
			showmessage('对不起 此短信不存在 请返回');
		}

		if(!$ps['messageread'] && !($ps['fromuser'] == $union_user && $ps['touser'] != $union_user && $ps['folderid'] == 1 && $ps['public'] == 0)) {
			$db->query("UPDATE $table_ps SET messageread='1',readtime='$timestamp' WHERE id='$psid'");
		}

		$ps['dateline'] = date("Y-m-d H:i:s", $ps['dateline']);
		include_once $union_root.'./includes/bbcode.php';
		$ps['message'] = parsecode($ps['message'],0,0,1,1,1);
		
		$query = $db->query("SELECT COUNT(*) FROM $table_ps WHERE folderid=1 && touser='$union_user' && messageread=0");
		$num = $db->result($query, 0);
		if(!$num)
			$db->query("UPDATE $table_members SET newps='0' WHERE username='$union_user'");
	}elseif($sysaction == 'del') {
		if(!$psid)
			showmessage('无id 非法操作');
		$db->query("UPDATE $table_ps SET deleteyes=1 WHERE public=0 && (fromuser='$union_user' || touser='$union_user') && id='$psid'");
		showmessage('消息已经放入回收站','communion.php?action=ps&sysaction=inbox');
	}
}

include getData('communion_ps');

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -