www.gusucode.com > 08CMS空白站群系统 3.3 繁体 UTF-8 > upload/admina/userurls.inc.php

    <?php
(!defined('M_COM') || !defined('M_ADMIN')) && exit('No Permission');
aheader();
!checkapermission(170) && amessage(lang('no_apermission'));
if($sid && $sid_self) amessage(lang('msite admin item !'));
$ismc = empty($ismc) ? 0 : 1;
$mc_suffix = !$ismc ? '' : '&ismc=1';
$mc_str = $ismc ? 'member center1' : 'admin backarea';
if($action == 'utypeadd'){
	if(!submitcheck('butypeadd')){
		a_guide('utypeadd');
		$pid = empty($pid) ? 0 : max(0,intval($pid));
		tabheader(lang("add $mc_str coclass"),'utypeadd',"?entry=userurls&action=utypeadd$mc_suffix");
		$utidsarr = array('0' => lang('topic coclass'));
		$query = $db->query("SELECT * FROM {$tblprefix}utypes WHERE pid=0 AND ismc=$ismc ORDER BY vieworder,utid");
		while($row = $db->fetch_array($query)){
			$utidsarr[$row['utid']] = $row['title'];
		}
		trbasic(lang('uplevel coclass'),'utypenew[pid]',makeoption($utidsarr,$pid),'select');
		trbasic(lang('coclass cname'),'utypenew[title]','','text');
		trbasic(lang('coclass order'),'utypenew[vieworder]','','text');
		tabfooter('butypeadd');
	}else{
		$utypenew['title'] = trim(strip_tags($utypenew['title']));
		!$utypenew['title'] && amessage(lang('please input userurl coclass title !'));
		$utypenew['vieworder'] = max(0,intval($utypenew['vieworder']));
		$db->query("INSERT INTO {$tblprefix}utypes SET 
					title='$utypenew[title]', 
					pid='$utypenew[pid]', 
					ismc='$ismc', 
					vieworder='$utypenew[vieworder]'
					");
	
		adminlog(lang('add userurl coclass'));
		updatecache('userurls');
		amessage(lang('userurl coclass add finish'), "?entry=userurls&action=userurlsedit$mc_suffix");
	}
}elseif($action == 'userurladd' && $utid){
	$utid = max(0,intval($utid));
	$utidsarr = array();
	$query = $db->query("SELECT * FROM {$tblprefix}utypes WHERE pid!=0 AND ismc=$ismc ORDER BY pid,vieworder,utid");
	while($row = $db->fetch_array($query)){
		$utidsarr[$row['utid']] = $row['title'];
	}
	if(!submitcheck('buserurladd')){
		a_guide('userurladd');
		tabheader(lang('add '.$mc_str.' userurl'),'userurladd',"?entry=userurls&action=userurladd&utid=$utid$mc_suffix");
		trbasic(lang('belong coclass'),'userurlnew[utid]',makeoption($utidsarr,$utid),'select');
		trbasic(lang('userurl cname'),'userurlnew[title]','','text');
		trbasic(lang('userurl'),'userurlnew[url]','','btext');
		trbasic(lang('userurl order'),'userurlnew[vieworder]','','text');
		tabfooter('buserurladd');
	}else{
		$userurlnew['title'] = trim(strip_tags($userurlnew['title']));
		$userurlnew['url'] = trim(strip_tags($userurlnew['url']));
		$userurlnew['vieworder'] = max(0,intval($userurlnew['vieworder']));
		(!$userurlnew['title'] || !$userurlnew['url']) && amessage(lang('please input userurl title and url !'));
		!$userurlnew['utid'] && amessage(lang('please point userurl belong coclass !'));
		$db->query("INSERT INTO {$tblprefix}userurls SET 
					title='$userurlnew[title]', 
					url='$userurlnew[url]', 
					utid='$userurlnew[utid]', 
					vieworder='$userurlnew[vieworder]'
					");
	
		adminlog(lang('add userurl'));
		updatecache('userurls');
		amessage(lang('userurl add finish'), "?entry=userurls&action=userurlsedit$mc_suffix");
	}
}elseif($action == 'userurlsedit'){
	if(!submitcheck('buserurlsedit')){
		a_guide('userurlsedit');
		tabheader(lang('choose userurl type'),'','',2);
		echo "<tr>\n";
		echo "<td class=\"item".($ismc?'2':'1')."\">>><a href=\"?entry=userurls&action=userurlsedit\">".lang('admin backarea userurl')."</a></td>\n";
		echo "<td class=\"item".($ismc?'1':'2')."\">>><a href=\"?entry=userurls&action=userurlsedit&ismc=1\">".lang('member center1 userurl')."</a></td>\n";
		echo "</tr>\n";
		tabfooter();
		tabheader(lang($mc_str.' userurl manager')."&nbsp; &nbsp; >><a href=\"?entry=userurls&action=utypeadd$mc_suffix\">".lang('add url coclass').'</a>','userurlsedit',"?entry=userurls&action=userurlsedit$mc_suffix",'8');
		trcategory(array(lang('sn'),lang('id'),lang('title'),lang('enable'),lang('order'),lang('add'),lang('edit'),lang('delete')));
		$query = $db->query("SELECT * FROM {$tblprefix}utypes WHERE pid=0 AND ismc=$ismc ORDER BY vieworder,utid");
		$i = 0;
		while($utype0 = $db->fetch_array($query)){
			$utid = $utype0['utid'];
			$i ++;
			echo "<tr>\n".
				"<td class=\"item1\" align=\"center\" width=\"30\">$i</td>\n".
				"<td class=\"item2\" align=\"center\" width=\"30\">$utid</td>\n".
				"<td class=\"item1\"><input type=\"text\" name=\"utypesnew[$utid][title]\" value=\"$utype0[title]\" size=\"30\"></td>\n".
				"<td class=\"item2\" align=\"center\" width=\"30\"></td>\n".
				"<td class=\"item1\" align=\"center\" width=\"40\"><input type=\"text\" name=\"utypesnew[$utid][vieworder]\" value=\"$utype0[vieworder]\" size=\"4\"></td>\n".
				"<td class=\"item2\" align=\"center\" width=\"40\"><a href=\"?entry=userurls&action=utypeadd&pid=$utid$mc_suffix\">+".lang('coclass')."</a></td>\n".
				"<td class=\"item1\" align=\"center\" width=\"40\"><a href=\"?entry=userurls&action=utypedetail&utid=$utid$mc_suffix\">".lang('detail')."</a></td>\n".
				"<td class=\"item2\" align=\"center\" width=\"40\"><a href=\"?entry=userurls&action=utypedel&utid=$utid$mc_suffix\">".lang('delete')."</a></td>\n".
				"</tr>";
			$query1 = $db->query("SELECT * FROM {$tblprefix}utypes WHERE pid='$utid' AND ismc=$ismc ORDER BY vieworder,utid");
			while($utype1 = $db->fetch_array($query1)){
				$utid = $utype1['utid'];
				$i ++;
				echo "<tr>\n".
					"<td class=\"item1\" align=\"center\" width=\"30\">$i</td>\n".
					"<td class=\"item2\" align=\"center\" width=\"30\">$utid</td>\n".
					"<td class=\"item1\">&nbsp; &nbsp; &nbsp; &nbsp; <input type=\"text\" name=\"utypesnew[$utid][title]\" value=\"$utype1[title]\" size=\"30\"></td>\n".
					"<td class=\"item2\" align=\"center\" width=\"30\"></td>\n".
					"<td class=\"item1\" align=\"center\" width=\"40\"><input type=\"text\" name=\"utypesnew[$utid][vieworder]\" value=\"$utype1[vieworder]\" size=\"4\"></td>\n".
					"<td class=\"item2\" align=\"center\" width=\"40\"><a href=\"?entry=userurls&action=userurladd&utid=$utid$mc_suffix\">+".lang('url')."</a></td>\n".
					"<td class=\"item1\" align=\"center\" width=\"40\"><a href=\"?entry=userurls&action=utypedetail&utid=$utid$mc_suffix\">".lang('detail')."</a></td>\n".
					"<td class=\"item2\" align=\"center\" width=\"40\"><a href=\"?entry=userurls&action=utypedel&utid=$utid$mc_suffix\">".lang('delete')."</a></td>\n".
					"</tr>";
				$query2 = $db->query("SELECT * FROM {$tblprefix}userurls WHERE utid='$utid' ORDER BY vieworder,uid");
				while($row = $db->fetch_array($query2)){
					$uid = $row['uid'];
					$i ++;
					echo "<tr>\n".
						"<td class=\"item1\" align=\"center\" width=\"30\">$i</td>\n".
						"<td class=\"item2\" align=\"center\" width=\"30\">$uid</td>\n".
						"<td class=\"item1\">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <input type=\"text\" name=\"userurlsnew[$uid][title]\" value=\"$row[title]\" size=\"30\"></td>\n".
						"<td class=\"item2\" align=\"center\" width=\"30\"><input class=\"checkbox\" type=\"checkbox\" name=\"userurlsnew[$uid][available]\" value=\"1\"".($row['available'] ? " checked" : "")."></td>\n".
						"<td class=\"item1\" align=\"center\" width=\"40\"><input type=\"text\" name=\"userurlsnew[$uid][vieworder]\" value=\"$row[vieworder]\" size=\"4\"></td>\n".
						"<td class=\"item2\" align=\"center\" width=\"40\">-</td>\n".
						"<td class=\"item1\" align=\"center\" width=\"40\"><a href=\"?entry=userurls&action=userurldetail&uid=$uid$mc_suffix\">".lang('detail')."</a></td>\n".
						"<td class=\"item2\" align=\"center\" width=\"40\"><a href=\"?entry=userurls&action=userurldel&uid=$uid$mc_suffix\">".lang('delete')."</a></td>\n".
						"</tr>";
				}
			}
		}
		tabfooter('buserurlsedit');
	}else{
		if(!empty($utypesnew)){
			foreach($utypesnew as $k => $v){
				$v['title'] = trim(strip_tags($v['title']));
				$v['vieworder'] = empty($v['vieworder']) ? 0 : max(0,intval($v['vieworder']));
				$sqlstr = "vieworder='$v[vieworder]'";
				$v['title'] && $sqlstr .= ",title='$v[title]'";
				$db->query("UPDATE {$tblprefix}utypes SET $sqlstr WHERE utid='$k'");
			}
		}
		if(!empty($userurlsnew)){
			foreach($userurlsnew as $k => $v){
				$v['title'] = trim(strip_tags($v['title']));
				$v['vieworder'] = max(0,intval($v['vieworder']));
				$v['available'] = empty($v['available']) ? 0 : 1;
				$sqlstr = "vieworder='$v[vieworder]',available='$v[available]'";
				$v['title'] && $sqlstr .= ",title='$v[title]'";
				$db->query("UPDATE {$tblprefix}userurls SET $sqlstr WHERE uid='$k'");
			}
		}
		adminlog(lang('edit userurl list'));
		updatecache('userurls');
		amessage(lang('userurl edit finish'), "?entry=userurls&action=userurlsedit$mc_suffix");
	}
}elseif($action == 'utypedetail' && $utid){
	if(!($utype = $db->fetch_one("SELECT * FROM {$tblprefix}utypes WHERE utid='$utid'"))) amessage(lang('confirmchoose userurl coclass'));
	if(!submitcheck('butypedetail')){
		a_guide('utypedetail');
		tabheader(lang('edit '.$mc_str.' userurl coclass'),'utypedetail',"?entry=userurls&action=utypedetail&utid=$utid$mc_suffix");
		trbasic(lang('coclass cname'),'utypenew[title]',$utype['title'],'text');
		if($utype['pid']){
			$utidsarr = array();
			$query = $db->query("SELECT * FROM {$tblprefix}utypes WHERE pid=0 AND ismc=$ismc ORDER BY vieworder,utid");
			while($row = $db->fetch_array($query)){
				$utidsarr[$row['utid']] = $row['title'];
			}
			trbasic(lang('uplevel coclass'),'utypenew[pid]',makeoption($utidsarr,$utype['pid']),'select');
		}else{
			trbasic(lang('coclass pick url'),'',!$utype['ismc'] ? "?entry=userlinks&utid=$utid" : "?action=userlinks&utid=$utid",'');
		}
		trbasic(lang('coclass order'),'utypenew[vieworder]',$utype['vieworder'],'text');
		$sidsarr = array(0 => lang('msite')) + sidsarr(1);
		trbasic(lang('below site forbid use'),'',makecheckbox('sidsnew[]',$sidsarr,$utype['sids'] === '' ? array() : explode(',',$utype['sids']),5),'');
		//trbasic(lang('below site forbid use'),'',makecheckbox('sidsnew[]',$sidsarr,empty($utype['sids']) ? array() : explode(',',$utype['sids']),5),'');
		ugids_table(lang('permission setting'),'nofooter',empty($utype['ugids']) ? array() : explode(',',$utype['ugids']),0);
		tabfooter('butypedetail');
	}else{
		$utypenew['title'] = trim(strip_tags($utypenew['title']));
		$utypenew['vieworder'] = max(0,intval($utypenew['vieworder']));
		$utypenew['pid'] = empty($utypenew['pid']) ? 0 : max(0,intval($utypenew['pid']));
		!$utypenew['title'] && amessage(lang('please input userurl coclass title !'));
/*
		$utypenew['sids'] = '';
		if(!empty($sidsnew)){
			foreach($sidsnew as $k) $utypenew['sids'] .= $k.',';
		}

*/
		$utypenew['sids'] = !empty($sidsnew) ? implode(',',$sidsnew) : '';
		$utypenew['ugids'] = !empty($ugidsnew) ? implode(',',$ugidsnew) : '';
		$db->query("UPDATE {$tblprefix}utypes SET 
					title='$utypenew[title]', 
					pid='$utypenew[pid]', 
					sids='$utypenew[sids]', 
					ugids='$utypenew[ugids]', 
					vieworder='$utypenew[vieworder]'
					WHERE utid='$utid'");
	
		adminlog(lang('edit userurl coclass detail'));
		updatecache('userurls');
		amessage(lang('userurl coclass modify finish'), "?entry=userurls&action=userurlsedit$mc_suffix");
	}

}elseif($action == 'userurldetail' && $uid){
	if(!($userurl = $db->fetch_one("SELECT * FROM {$tblprefix}userurls WHERE uid='$uid'"))) amessage(lang('confirmchoose userurl'));
	if(!submitcheck('buserurldetail')){
		a_guide('userurldetail');
		tabheader(lang('edit '.$mc_str.' userurl'),'userurldetail',"?entry=userurls&action=userurldetail&uid=$uid$mc_suffix");
		$utidsarr = array();
		$query = $db->query("SELECT * FROM {$tblprefix}utypes WHERE pid!=0 AND ismc=$ismc ORDER BY pid,vieworder,utid");
		while($row = $db->fetch_array($query)){
			$utidsarr[$row['utid']] = $row['title'];
		}
		trbasic(lang('belong coclass'),'userurlnew[utid]',makeoption($utidsarr,$userurl['utid']),'select');
		trbasic(lang('userurl cname'),'userurlnew[title]',$userurl['title'],'text');
		trbasic(lang('userurl'),'userurlnew[url]',$userurl['url'],'btext');
		$sidsarr = array('m' => lang('msite')) + sidsarr(1);
		trbasic(lang('below site forbid use'),'',makecheckbox('sidsnew[]',$sidsarr,$userurl['sids'] === '' ? array() : explode(',',$userurl['sids']),5),'');
//		trbasic(lang('below site forbid use'),'',makecheckbox('sidsnew[]',$sidsarr,empty($userurl['sids']) ? array() : explode(',',$userurl['sids']),5),'');
		trbasic(lang('userurl order'),'userurlnew[vieworder]',$userurl['vieworder'],'text');
		trbasic(lang('newwin'),'userurlnew[newwin]',$userurl['newwin'],'radio');
		trbasic(lang('inherit site attr'),'userurlnew[actsid]',$userurl['actsid'],'radio');
		ugids_table(lang('permission setting'),'nofooter',empty($userurl['ugids']) ? array() : explode(',',$userurl['ugids']),0);
		tabfooter('buserurldetail');
	}else{
		$userurlnew['title'] = trim(strip_tags($userurlnew['title']));
		$userurlnew['url'] = trim(strip_tags($userurlnew['url']));
		$userurlnew['vieworder'] = max(0,intval($userurlnew['vieworder']));
		$userurlnew['sids'] = !empty($sidsnew) ? implode(',',$sidsnew) : '';
		$userurlnew['utid'] = empty($userurlnew['utid']) ? 0 : max(0,intval($userurlnew['utid']));
		(!$userurlnew['title'] || !$userurlnew['url']) && amessage(lang('please input userurl title and url !'));
		!$userurlnew['utid'] && amessage(lang('please point userurl belong coclass !'));
/*
		$userurlnew['sids'] = '';
		if(!empty($sidsnew)){
			foreach($sidsnew as $k) $userurlnew['sids'] .= $k.',';
		}

*/
		$userurlnew['sids'] = !empty($sidsnew) ? implode(',',$sidsnew) : '';
		$userurlnew['ugids'] = !empty($ugidsnew) ? implode(',',$ugidsnew) : '';
		$db->query("UPDATE {$tblprefix}userurls SET 
					title='$userurlnew[title]', 
					url='$userurlnew[url]', 
					utid='$userurlnew[utid]', 
					ugids='$userurlnew[ugids]', 
					sids='$userurlnew[sids]', 
					newwin='$userurlnew[newwin]',
					actsid='$userurlnew[actsid]',
					vieworder='$userurlnew[vieworder]'
					WHERE uid='$uid'");
		adminlog(lang('edit userurl detail'));
		updatecache('userurls');
		amessage(lang('userurl modify finish'), "?entry=userurls&action=userurlsedit$mc_suffix");
	}
}elseif($action == 'utypedel' && $utid){
	if($db->result_one("SELECT COUNT(*) FROM {$tblprefix}utypes WHERE pid='$utid'")){
		amessage(lang('userurl coclass without son coclass can delete'), "?entry=userurls&action=userurlsedit$mc_suffix");
	}
	if($db->result_one("SELECT COUNT(*) FROM {$tblprefix}userurls WHERE utid='$utid'")){
		amessage(lang('userurl coclass without userurl can delete'), "?entry=userurls&action=userurlsedit$mc_suffix");
	}
	$db->query("DELETE FROM {$tblprefix}utypes WHERE utid='$utid'");
	adminlog(lang('delete userurl coclass'));
	updatecache('userurls');
	amessage(lang('userurl coclass delete finish'), "?entry=userurls&action=userurlsedit$mc_suffix");
}elseif($action == 'userurldel' && $uid){
	$db->query("DELETE FROM {$tblprefix}userurls WHERE uid='$uid'");
	adminlog(lang('delete userurl'));
	updatecache('userurls');
	amessage(lang('userurl delete finish'), "?entry=userurls&action=userurlsedit$mc_suffix");
}
?>