<?php
header("Content-Type:text/html; charset=utf-8");
require_once('../inc/init.php');
require_once('../inc/cache.php');
require_once('inc/adminfun.php');

if(!isAdmin()){
	exit("请登录");
}
if(!hasPopedom("channel")){
	exit("对不起，您没有操作“栏目管理”的权限。");
}

$action=strFilter($_GET['action']);

switch($action){
	case "saveset":
		try{
			$ordernums=$_POST['ordernum'];
			$positions=$_POST['position'];
			$title=$_POST['title'];
			if(is_array($ordernums)) {
				foreach($ordernums as $id => $value) {
					$channel['ordernum'] = intval($value);
					$channel['positions'] = isIntArray($positions[$id])?"|".implode($positions[$id],"|")."|":"";
					$channel['title'] = $title[$id];
					$db->row_update("channels",$channel,"id={$id} and langid={$_SYS['alangid']}");
				}
			}
			writeChannelsCache();
			succeedFlag();
		}catch(Exception $e){
			echo($e);
		}
	break;
	
	case "delchannel":
		try{
			$cid=intval($_GET['cid']);
			if(empty($cid)){
				exit("参数错误");
			}
			$row=$db->row_select_one("channels","id={$cid}");
			if($row['systemtype']>0){
				exit("系统栏目不能删除。");
			}
			$rows=$db->row_select("channels","pid={$cid}");
			if(!empty($rows)){
				exit("该栏目存在下级栏目，不能删除。");
			}

			//删除文章
			$db->row_delete("articles","channelid={$cid}");
			//删除栏目
			$db->row_delete("channels","id={$cid}");
			writeChannelsCache();
			succeedFlag();
		}catch(Exception $e){
			echo($e);
		}
	break;
	
	case "modifychannel":
		try{
			$doaction=strFilter($_POST['doaction']);
			$channel['channeltype']=intval($_POST['channeltype']);
			$channel['alias']=strFilter($_POST['alias']);
			$channel['ishidden']=intval($_POST['ishidden']);
			$channel['positions'] = isIntArray($_POST['positions'])?"|".implode($_POST['positions'],"|")."|":"";
			$channel['pid']=intval($_POST['pid']);
			$channel['langid']=$_SYS['alangid'];
			$channel['title']=strFilter($_POST['title']);
			$channel['metadesc']=strFilter($_POST['metadesc']);
			$channel['metakeywords']=strFilter($_POST['metakeywords']);
			if($doaction=="edit"){
				$id=intval($_POST['id']);
				$db->row_update("channels",$channel,"id={$id}");
			}else{
				$tmprow=$db->row_query_one("SELECT max(ordernum) AS morder FROM `{$db->pre}channels` WHERE langid={$_SYS['alangid']} Limit 1");
				$channel['content']='';
				$channel['ordernum']=++$tmprow['morder'];
				$db->row_insert("channels",$channel);
			}
			writeChannelsCache();
			succeedFlag();
		}catch(Exception $e){
			echo($e);
		}
	break;

	case "sethide":
		$channelid=intval($_GET['channelid']);
		$hide=intval($_GET['hide']);
		$channel['ishidden']=$hide;
		$db->row_update("channels",$channel,"id={$channelid}");
		writeChannelsCache();
		//_header_("location:admin.php?inc=channel&action=set");
		printRes("设置成功，正在跳转到栏目管理页面。<script>setTimeout(function(){reloadTop('admin.php?inc=channel&action=set');},1000);</script>");
		//succeedFlag();
	break;

	case "savepage":
		$channelid=intval($_POST['channelid']);
		$content=strFilter($_POST['content']);
		$channel['content']=$content;
		$db->row_update("channels",$channel,"id={$channelid}");
		writeChannelsCache();
		printRes("栏目编辑成功，正在跳转到栏目管理页面。<script>setTimeout(function(){reloadSelf('admin.php?inc=channel&action=set');},2000);</script>");
		//succeedFlag();
	break;


	case "savelink":
		$channelid=intval($_POST['channelid']);
		$link=strFilter($_POST['link']);
		$target=intval($_POST['target']);
		$channel['link']=$link;
		$channel['target']=$target;
	
		$db->row_update("channels",$channel,"id={$channelid}");
		writeChannelsCache();
		printRes("栏目编辑成功，正在跳转到栏目管理页面。<script>setTimeout(function(){reloadSelf('admin.php?inc=channel&action=set');},2000);</script>");
		//succeedFlag();
	break;



	default:
		echo"No Such Action";
	break;

}
?>
