GetOne($query);
$gurl = $row['editcon'];
if($gurl=='') $gurl='article_edit.php';
header("location:{$gurl}?aid=$aid");
exit();
}
/*--------------------------
//浏览文档
function viewArchives(){ }
---------------------------*/
else if($dopost=="viewArchives")
{
$aid = preg_replace("#[^0-9]#", '', $aid);
//获取主表信息
$query = "SELECT arc.*,ch.maintable,ch.addtable,ch.issystem,ch.editcon,
tp.typedir,tp.typename,tp.corank,tp.namerule,tp.namerule2,tp.ispart,tp.moresite,tp.sitepath,tp.siteurl
FROM `#@__arctiny` arc
LEFT JOIN `#@__arctype` tp ON tp.id=arc.typeid
LEFT JOIN `#@__channeltype` ch ON ch.id=tp.channeltype
WHERE arc.id='$aid' ";
$trow = $dsql->GetOne($query);
$trow['maintable'] = ( trim($trow['maintable'])=='' ? '#@__archives' : trim($trow['maintable']) );
if($trow['issystem'] != -1)
{
$arcQuery = "SELECT arc.*,tp.typedir,tp.typename,tp.corank,tp.namerule,tp.namerule2,tp.ispart,tp.moresite,tp.sitepath,tp.siteurl
FROM `{$trow['maintable']}` arc LEFT JOIN `#@__arctype` tp on arc.typeid=tp.id
LEFT JOIN `#@__channeltype` ch on ch.id=arc.channel WHERE arc.id='$aid' ";
$arcRow = $dsql->GetOne($arcQuery);
PutCookie('DedeUserID',$arcRow['mid'],1800);
PutCookie('DedeLoginTime',time(),1800);
if($arcRow['ismake']==-1 || $arcRow['corank']!=0 || $arcRow['arcrank']!=0 || ($arcRow['typeid']==0 && $arcRow['channel']!=-1) || $arcRow['money']>0)
{
echo "";
exit();
}
}
else
{
$arcRow['id'] = $aid;
$arcRow['typeid'] = $trow['typeid'];
$arcRow['senddate'] = $trow['senddate'];
$arcRow['title'] = '';
$arcRow['ismake'] = 1;
$arcRow['arcrank'] = $trow['corank'];
$arcRow['namerule'] = $trow['namerule'];
$arcRow['typedir'] = $trow['typedir'];
$arcRow['money'] = 0;
$arcRow['filename'] = '';
$arcRow['moresite'] = $trow['moresite'];
$arcRow['siteurl'] = $trow['siteurl'];
$arcRow['sitepath'] = $trow['sitepath'];
}
$arcurl = GetFileUrl($arcRow['id'],$arcRow['typeid'],$arcRow['senddate'],$arcRow['title'],$arcRow['ismake'],$arcRow['arcrank'],
$arcRow['namerule'],$arcRow['typedir'],$arcRow['money'],$arcRow['filename'],$arcRow['moresite'],$arcRow['siteurl'],$arcRow['sitepath']);
$arcfile = GetFileUrl($arcRow['id'],$arcRow['typeid'],$arcRow['senddate'],$arcRow['title'],
$arcRow['ismake'],$arcRow['arcrank'],$arcRow['namerule'],$arcRow['typedir'],$arcRow['money'],$arcRow['filename']);
if(preg_match("#^http:#", $arcfile))
{
$arcfile = preg_replace("#^http:\/\/([^\/]*)\/#i", '/', $arcfile);
}
$truefile = GetTruePath().$arcfile;
if(!file_exists($truefile))
{
MakeArt($aid,TRUE);
}
echo "";
exit();
}
/*--------------------------
//异步上传缩略图
function uploadLitpic(){ }
---------------------------*/
else if($dopost=="uploadLitpic")
{
$upfile = AdminUpload('litpic', 'imagelit', 0, false );
if($upfile=='-1')
{
$msg = "";
}
else if($upfile=='-2')
{
$msg = "";
}
else if($upfile=='0')
{
$msg = "";
}
else
{
if(!empty($cfg_uplitpic_cut) && $cfg_uplitpic_cut=='N')
{
$msg = "";
}
else
{
$msg = "";
}
}
echo $msg;
exit();
}
/*--------------------------
//推荐文档
function commendArchives(){ }
---------------------------*/
else if($dopost=="commendArchives")
{
CheckPurview('a_Commend,sys_ArcBatch');
if( !empty($aid) && empty($qstr) )
{
$qstr = $aid;
}
if($qstr=='')
{
ShowMsg("参数无效!",$ENV_GOBACK_URL);
exit();
}
$arcids = preg_replace("#[^0-9,]#", '', preg_replace("#`#", ',', $qstr));
$query = "SELECT arc.id,arc.typeid,ch.issystem,ch.maintable,ch.addtable FROM `#@__arctiny` arc
LEFT JOIN `#@__arctype` tp on tp.id=arc.typeid
LEFT JOIN `#@__channeltype` ch on ch.id=tp.channeltype
WHERE arc.id in($arcids) ";
$dsql->SetQuery($query);
$dsql->Execute();
while($row = $dsql->GetArray())
{
$aid = $row['id'];
if($row['issystem']!=-1)
{
$maintable = ( trim($row['maintable'])=='' ? '#@__archives' : trim($row['maintable']) );
$arr = $dsql->GetOne("SELECT flag FROM `{$maintable}` WHERE id='$aid' ");
$flag = ($arr['flag']=='' ? 'c' : $arr['flag'].',c');
$dsql->ExecuteNoneQuery(" UPDATE `{$maintable}` SET `flag`='$flag' WHERE id='{$aid}' ");
}
else
{
$maintable = trim($row['addtable']);
$arr = $dsql->GetOne("SELECT flag From `{$maintable}` where aid='$aid' ");
$flag = ($arr['flag']=='' ? 'c' : $arr['flag'].',c');
$dsql->ExecuteNoneQuery(" UPDATE `{$maintable}` SET `flag`='$flag' WHERE aid='{$aid}' ");
}
}
ShowMsg("成功把所选的文档设为推荐!",$ENV_GOBACK_URL);
exit();
}
/*--------------------------
//生成HTML
function makeArchives();
---------------------------*/
else if($dopost=="makeArchives")
{
CheckPurview('sys_MakeHtml,sys_ArcBatch');
if( !empty($aid) && empty($qstr) ) $qstr = $aid;
if($qstr=='')
{
ShowMsg('参数无效!',$ENV_GOBACK_URL);
exit();
}
require_once(DEDEADMIN.'/inc/inc_archives_functions.php');
$qstrs = explode('`',$qstr);
$i = 0;
foreach($qstrs as $aid)
{
$i++;
$pageurl = MakeArt($aid,false);
}
ShowMsg("成功更新指定 $i 个文件...",$ENV_GOBACK_URL);
exit();
}
/*--------------------------
//审核文档
function checkArchives() { }
---------------------------*/
else if($dopost=="checkArchives")
{
CheckPurview('a_Check,a_AccCheck,sys_ArcBatch');
require_once(DEDEADMIN."/inc/inc_archives_functions.php");
if( !empty($aid) && empty($qstr) ) $qstr = $aid;
if($qstr=='')
{
ShowMsg("参数无效!",$ENV_GOBACK_URL);
exit();
}
$arcids = preg_replace("#[^0-9,]#", '', preg_replace("#`#", ',', $qstr));
$query = "SELECT arc.id,arc.typeid,ch.issystem,ch.maintable,ch.addtable FROM `#@__arctiny` arc
LEFT JOIN `#@__arctype` tp ON tp.id=arc.typeid
LEFT JOIN `#@__channeltype` ch ON ch.id=tp.channeltype
WHERE arc.id in($arcids) ";
$dsql->SetQuery($query);
$dsql->Execute('ckall');
while($row = $dsql->GetArray('ckall'))
{
$aid = $row['id'];
$maintable = ( trim($row['maintable'])=='' ? '#@__archives' : trim($row['maintable']) );
$dsql->ExecuteNoneQuery("UPDATE `#@__arctiny` SET arcrank='0' WHERE id='$aid' ");
if($row['issystem']==-1)
{
$dsql->ExecuteNoneQuery("UPDATE `".trim($row['addtable'])."` SET arcrank='0' WHERE aid='$aid' ");
}
else
{
$dsql->ExecuteNoneQuery("UPDATE `$maintable` SET arcrank='0', dutyadmin='".$cuserLogin->getUserID()."' WHERE id='$aid' ");
}
$dsql->ExecuteNoneQuery("UPDATE `#@__taglist` SET arcrank='0' WHERE aid='$aid' ");
$pageurl = MakeArt($aid,false);
}
ShowMsg("成功审核指定的文档!",$ENV_GOBACK_URL);
exit();
}
/*--------------------------
//删除文档
function delArchives(){ }
---------------------------*/
else if($dopost=="delArchives")
{
CheckPurview('a_Del,a_AccDel,a_MyDel,sys_ArcBatch');
require_once(DEDEINC."/oxwindow.class.php");
if(empty($fmdo)) $fmdo = '';
if($fmdo=='yes')
{
if( !empty($aid) && empty($qstr) )
{
$qstr = $aid;
}
if($qstr=='')
{
ShowMsg("参数无效!",$ENV_GOBACK_URL);
exit();
}
$qstrs = explode("`",$qstr);
$okaids = Array();
foreach($qstrs as $aid)
{
if(!isset($okaids[$aid]))
{
DelArc($aid);
}
else
{
$okaids[$aid] = 1;
}
}
ShowMsg("成功删除指定的文档!",$ENV_GOBACK_URL);
exit();
}
else
{
$wintitle = "文档管理-删除文档";
$wecome_info = "文档管理::删除文档";
$win = new OxWindow();
$win->Init("archives_do.php","js/blank.js","POST");
$win->AddHidden("fmdo","yes");
$win->AddHidden("dopost",$dopost);
$win->AddHidden("qstr",$qstr);
$win->AddHidden("aid",$aid);
$win->AddTitle("你确实要删除“ $qstr 和 $aid ”这些文档?");
$winform = $win->GetWindow("ok");
$win->Display();
}
}
/*-----------------------------
function moveArchives(){ }
------------------------------*/
else if($dopost=='moveArchives')
{
CheckPurview('sys_ArcBatch');
if(empty($totype))
{
require_once(DEDEINC.'/typelink.class.php');
if( !empty($aid) && empty($qstr) ) $qstr = $aid;
AjaxHead();
$channelid = empty($channelid) ? 0 : $channelid;
$tl = new TypeLink($aid);
$typeOptions = $tl->GetOptionArray(0, $admin_catalogs, $channelid);
$typeOptions = "";
//输出AJAX可移动窗体
$divname = 'moveArchives';
echo "
\r\n";
echo "
移动文档
\r\n";
echo "
\r\n";
echo "
\r\n";
echo "
GetOne("SELECT tp.channeltype,tp.ispart,tp.channeltype,ch.maintable,ch.addtable,ch.issystem FROM `#@__arctype` tp LEFT JOIN `#@__channeltype` ch on ch.id=tp.channeltype WHERE tp.id='$totype' ");
$idtype = "id";
if(!is_array($typeInfos))
{
ShowMsg('参数错误!','-1');
exit();
}
if($typeInfos['ispart']!=0)
{
ShowMsg('文档保存的栏目必须为最终列表栏目!','-1');
exit();
}
if(empty($typeInfos['addtable']))
{
$typeInfos['maintable'] = '#@__archives';
}
//增加单表模型判断
if($typeInfos['issystem'] == -1)
{
$typeInfos['maintable'] = $typeInfos['addtable'];
$idtype = "aid";
}
$arcids = preg_replace("#[^0-9,]#", '', preg_replace("#`#", ',', $qstr));
$arc = '';
$j = 0;
$okids = array();
$dsql->SetQuery("SELECT {$idtype},typeid FROM `{$typeInfos['maintable']}` WHERE {$idtype} in($arcids) AND channel='{$typeInfos['channeltype']}' ");
$dsql->Execute();
while($row = $dsql->GetArray())
{
if($row['typeid']!=$totype)
{
$dsql->ExecuteNoneQuery("UPDATE `#@__arctiny` SET typeid='$totype' WHERE id='{$row[$idtype]}' ");
$dsql->ExecuteNoneQuery("UPDATE `{$typeInfos['maintable']}` SET typeid='$totype' WHERE id='{$row[$idtype]}' ");
$dsql->ExecuteNoneQuery("UPDATE `{$typeInfos['addtable']}` SET typeid='$totype' WHERE aid='{$row[$idtype]}' ");
$okids[] = $row[$idtype];
$j++;
}
}
//更新HTML
foreach($okids as $aid)
{
$arc = new Archives($aid);
$arc->MakeHtml();
}
ShowMsg("成功移动 $j 个文档!", $ENV_GOBACK_URL);
exit();
}
}
/*-----------------------------
//还原文档
function RbReturnArchives(){ }
------------------------------*/
else if($dopost=='return')
{
CheckPurview('a_Del,a_AccDel,a_MyDel,sys_ArcBatch');
require_once(DEDEINC."/oxwindow.class.php");
if( !empty($aid) && empty($qstr) ) $qstr = $aid;
if($qstr=='')
{
ShowMsg("参数无效!","recycling.php");
exit();
}
$qstrs = explode("`", $qstr);
foreach($qstrs as $aid)
{
$dsql->ExecuteNoneQuery("UPDATE `#@__archives` SET arcrank='-1',ismake='0' WHERE id='$aid'");
$dsql->ExecuteNoneQuery("UPDATE `#@__arctiny` SET `arcrank` = '-1' WHERE id = '$aid'; ");
}
ShowMsg("成功还原指定的文档!","recycling.php");
exit();
}
/*-----------------------------
//清空文档
function RbClearArchives(){ }
------------------------------*/
else if($dopost=='clear')
{
CheckPurview('a_Del,a_AccDel,a_MyDel,sys_ArcBatch');
require_once(DEDEINC."/oxwindow.class.php");
if(empty($fmdo)) $fmdo = '';
$recycle = empty($recycle)? "" : $recycle;
if($fmdo=='yes')
{
if( !empty($aid) && empty($qstr) ) $qstr = $aid;
if($qstr=='')
{
ShowMsg("参数无效!","recycling.php");
exit();
}
$qstrs = explode(",", $qstr);
$okaids = Array();
foreach($qstrs as $qstr)
{
if(!isset($okaids[$qstr]))
{
DelArc($qstr, "OK", FALSE, $recycle);
$okaids[$qstr] = $qstr;
}
else
{
$okaids[$qstr] = 1;
}
}
ShowMsg("成功删除指定的文档!","recycling.php");
exit();
}
else
{
$dsql->SetQuery("SELECT id FROM `#@__archives` WHERE `arcrank` = '-2'");
$dsql->Execute();
$qstr = '';
while($row = $dsql->GetArray())
{
$qstr .= $row['id'].",";
$aid = $row['id'];
}
$num = $dsql->GetTotalRow();
if(empty($num))
{
ShowMsg("对不起,未发现相关文档!","recycling.php");
exit();
}
$wintitle = "文档管理-清空所有文档";
$wecome_info = "文档回收站::清空所有文档";
$win = new OxWindow();
$win->Init("archives_do.php","js/blank.js","POST");
$win->AddHidden("fmdo","yes");
$win->AddHidden("dopost",$dopost);
$win->AddHidden("qstr",$qstr);
$win->AddHidden("aid",$aid);
$win->AddHidden("recycle",$recycle);
$win->AddTitle("本次操作将清空回收站所有共 $num 篇文档
你确实要永久删除“ $qstr ”这些文档?");
$winform = $win->GetWindow("ok");
$win->Display();
}
}
/*-----------------------------
//清除文档
function RbDelArchives(){ }
------------------------------*/
else if($dopost=='del')
{
CheckPurview('a_Del,a_AccDel,a_MyDel,sys_ArcBatch');
require_once(DEDEINC."/oxwindow.class.php");
if(empty($fmdo)) $fmdo = '';
$recycle = empty($recycle)? "" : $recycle;
if($fmdo=='yes')
{
if( !empty($aid) && empty($qstr) ) $qstr = $aid;
if($qstr=='')
{
ShowMsg("参数无效!","recycling.php");
exit();
}
$qstrs = explode("`", $qstr);
$okaids = Array();
foreach($qstrs as $aid)
{
if(!isset($okaids[$aid]))
{
DelArc($aid,"OK","",$recycle);
}
else
{
$okaids[$aid] = 1;
}
}
ShowMsg("成功删除指定的文档!","recycling.php");
exit();
}
else
{
$wintitle = "文档管理-删除文档";
$wecome_info = "文档管理::删除文档";
$win = new OxWindow();
$win->Init("archives_do.php","js/blank.js","POST");
$win->AddHidden("fmdo","yes");
$win->AddHidden("dopost",$dopost);
$win->AddHidden("qstr",$qstr);
$win->AddHidden("aid",$aid);
$win->AddHidden("recycle",$recycle);
$win->AddTitle("你确实要永久删除“ $qstr 和 $aid ”这些文档?");
$winform = $win->GetWindow("ok");
$win->Display();
}
}
/*-----------------------------
//快速编辑
function quickEdit(){ }
------------------------------*/
else if($dopost=='quickEdit')
{
require_once(DEDEADMIN."/inc/inc_catalog_options.php");
AjaxHead();
$query = "SELECT ch.typename as channelname,ch.addtable,ar.membername as rankname,arc.*
FROM `#@__archives` arc
LEFT JOIN `#@__channeltype` ch ON ch.id=arc.channel
LEFT JOIN `#@__arcrank` ar ON ar.rank=arc.arcrank WHERE arc.id='$aid' ";
$arcRow = $dsql->GetOne($query);
$divname = 'quickEdit';
echo "\r\n";
echo "
快速属性编辑
\r\n";
echo "
\r\n";
echo "
\r\n";
echo "
getUserID());
}
}
$title = dede_htmlspecialchars(cn_substrR($title, $cfg_title_maxlen));
$shorttitle = cn_substrR($shorttitle, 36);
$keywords = trim(cn_substrR($keywords, 60));
if(!TestPurview('a_Check,a_AccCheck,a_MyCheck')) $arcrank = -1;
$adminid = $cuserLogin->getUserID();
//属性处理
$flag = isset($flags) ? join(',', $flags) : '';
if(!empty($flag))
{
if(preg_match("#p#", $oldflag)) $flag .= ',p';
if(preg_match("#j#", $oldflag)) $flag .= ',j';
}
/*
else
{
$flag = $oldflag;
}
*/
$query = "UPDATE `#@__archives` SET
typeid = '$typeid',
flag = '$flag',
arcrank = '$arcrank',
money = '$money',
title = '$title',
shorttitle = '$shorttitle',
keywords = '$keywords',
dutyadmin = '$adminid'
WHERE id = '$aid'; ";
//更新主表
$dsql->ExecuteNoneQuery($query);
//更新微表
$dsql->ExecuteNoneQuery(" UPDATE `#@__arctiny` SET typeid='$typeid',arcrank='$arcrank' WHERE id='$aid' ");
//更新附加表
if($typeid != $oldtypeid)
{
$addtable = trim($addtable);
if(empty($addtable)) $addtable = '#@__addonarticle';
else $addtable = preg_replace("#[^a-z0-9__#@-]#i", "", $addtable);
$dsql->ExecuteNoneQuery(" UPDATE `$addtable` SET typeid='$typeid' WHERE aid='$aid' ");
}
//更新HTML
$artUrl = MakeArt($aid, TRUE, TRUE);
$backurl = !empty($_COOKIE['ENV_GOBACK_URL']) ? $_COOKIE['ENV_GOBACK_URL'] : '-1';
ShowMsg('成功更新一篇文档的基本信息!', $backurl);
exit();
}
/*--------------------------
分析并自动获取文档关键词
function makekw(){ }
--------------------------*/
else if($dopost=="makekw")
{
CheckPurview('a_Commend,sys_ArcBatch');
if( !empty($aid) && empty($qstr) ) $qstr = $aid;
if($qstr=='')
{
ShowMsg("参数无效!", $ENV_GOBACK_URL);
exit();
}
$arcids = preg_replace("#[^0-9,]#", '', preg_replace("#`#", ',', $qstr));
$query = "SELECT arc.*, addt.* From `#@__archives` arc LEFT JOIN `#@__addonarticle` addt ON addt.aid=arc.id WHERE arc.id in($arcids) AND arc.channel=1 ";
$dsql->SetQuery($query);
$dsql->Execute();
if (!empty($cfg_bizcore_appid) && !empty($cfg_bizcore_key)) {
$client = new DedeBizClient($cfg_bizcore_hostname, $cfg_bizcore_port);
$client->appid = $cfg_bizcore_appid;
$client->key = $cfg_bizcore_key;
while($row = $dsql->GetArray())
{
//跳过已经有关键字的内容
if(trim($row['keywords']) !='' ) continue;
$aid = $row['id'];
$keywords = '';
$title = $row['title'];
$description = $row['description'];
$body = cn_substr($row['body'], 5000);
$data = $client->Spliteword($title.Html2Text($body));
$keywords = $data->data;
$description = str_replace(' ', ' ', trim($description));
$description = str_replace('[', ' ', $description);
$description = str_replace(']', ' ', $description);
$description = preg_replace("#[ \r\n\t]{1,}#is", ' ', $description);
$description = str_replace('关键字', '', $description);
$description = str_replace('关键词', '', $description);
$description = addslashes($description);
$dsql->ExecuteNoneQuery(" UPDATE `#@__archives` SET `keywords`='$keywords',`description`='$description' WHERE id='{$aid}' ");
}
$client->Close();
} else {
include_once(DEDEINC.'/splitword.class.php');
$sp = new SplitWord($cfg_soft_lang, $cfg_soft_lang);
while($row = $dsql->GetArray())
{
//跳过已经有关键字的内容
if(trim($row['keywords']) !='' ) continue;
$aid = $row['id'];
$keywords = '';
$title = $row['title'];
$description = $row['description'];
$body = cn_substr($row['body'], 5000);
$sp->SetSource($title, $cfg_soft_lang, $cfg_soft_lang);
$sp->StartAnalysis();
$titleindexs = preg_replace("/#p#|#e#/",'',$sp->GetFinallyIndex());
$sp->SetSource(Html2Text($body), $cfg_soft_lang, $cfg_soft_lang);
$sp->StartAnalysis();
$allindexs = preg_replace("/#p#|#e#/",'',$sp->GetFinallyIndex());
if(is_array($allindexs) && is_array($titleindexs))
{
foreach($titleindexs as $k => $v)
{
if(strlen($keywords.$k)>=60)
{
break;
}
else
{
if(strlen($k) <= 2) continue;
$keywords .= $k.',';
}
}
foreach($allindexs as $k => $v)
{
if(strlen($keywords.$k)>=60)
{
break;
}
else if(!in_array($k,$titleindexs))
{
if(strlen($k) <= 2) continue;
$keywords .= $k.',';
}
}
}
$description = str_replace(' ', ' ', trim($description));
$description = str_replace('[', ' ', $description);
$description = str_replace(']', ' ', $description);
$description = preg_replace("#[ \r\n\t]{1,}#is", ' ', $description);
$description = str_replace('关键字', '', $description);
$description = str_replace('关键词', '', $description);
$description = addslashes($description);
$dsql->ExecuteNoneQuery(" UPDATE `#@__archives` SET `keywords`='$keywords',`description`='$description' WHERE id='{$aid}' ");
}
$sp = null;
}
ShowMsg("成功分析指定文档的关键词!", $ENV_GOBACK_URL);
exit();
}
/*--------------------------
//批量增加属性
function attsAdd(){ }
---------------------------*/
else if($dopost=='attsAdd')
{
CheckPurview('a_Commend,sys_ArcBatch');
if( !empty($aid) && empty($qstr) ) $qstr = $aid;
if($qstr=='')
{
ShowMsg("参数无效!",$ENV_GOBACK_URL);
exit();
}
if(empty($flagname))
{
ShowMsg("必须指定要添加的属性!",$ENV_GOBACK_URL);
exit();
}
$arcids = preg_replace("#[^0-9,]#", '', preg_replace("#`#", ',', $qstr));
$query = "SELECT arc.id,arc.typeid,ch.issystem,ch.maintable,ch.addtable FROM `#@__arctiny` arc
LEFT JOIN `#@__arctype` tp ON tp.id=arc.typeid
LEFT JOIN `#@__channeltype` ch ON ch.id=tp.channeltype
WHERE arc.id in($arcids) ";
$dsql->SetQuery($query);
$dsql->Execute();
while($row = $dsql->GetArray())
{
$aid = $row['id'];
if($row['issystem'] != -1)
{
$maintable = ( trim($row['maintable'])=='' ? '#@__archives' : trim($row['maintable']) );
$arr = $dsql->GetOne("SELECT flag FROM `{$maintable}` WHERE id='$aid' ");
$flag = ($arr['flag']=='' ? $flagname : $arr['flag'].','.$flagname);
$dsql->ExecuteNoneQuery(" UPDATE `{$maintable}` SET `flag`='$flag' WHERE id='{$aid}' ");
}
else
{
$maintable = trim($row['addtable']);
$arr = $dsql->GetOne("SELECT flag FROM `{$maintable}` WHERE aid='$aid' ");
$flag = ($arr['flag']=='' ? $flagname : $arr['flag'].','.$flagname);
$dsql->ExecuteNoneQuery(" UPDATE `{$maintable}` SET `flag`='$flag' WHERE aid='{$aid}' ");
}
}
ShowMsg("成功对选中文档增加指定的属性!",$ENV_GOBACK_URL);
exit();
}
/*--------------------------
//批量删除属性
function attsDel(){ }
---------------------------*/
else if($dopost=='attsDel')
{
CheckPurview('a_Commend,sys_ArcBatch');
if( !empty($aid) && empty($qstr) ) $qstr = $aid;
if($qstr=='')
{
ShowMsg("参数无效!", $ENV_GOBACK_URL);
exit();
}
if(empty($flagname))
{
ShowMsg("必须指定要删除的属性!", $ENV_GOBACK_URL);
exit();
}
$arcids = preg_replace("#[^0-9,]#", '', preg_replace("#`#", ',', $qstr));
$query = "SELECT arc.id,arc.typeid,ch.issystem,ch.maintable,ch.addtable FROM `#@__arctiny` arc
LEFT JOIN `#@__arctype` tp ON tp.id=arc.typeid
LEFT JOIN `#@__channeltype` ch ON ch.id=tp.channeltype
WHERE arc.id in($arcids) ";
$dsql->SetQuery($query);
$dsql->Execute();
while($row = $dsql->GetArray())
{
$aid = $row['id'];
if($row['issystem'] != -1)
{
$idname = 'id';
$maintable = ( trim($row['maintable'])=='' ? '#@__archives' : trim($row['maintable']) );
$arr = $dsql->GetOne("SELECT flag FROM `{$maintable}` WHERE id='$aid' ");
}
else
{
$idname = 'aid';
$maintable = trim($row['addtable']);
$arr = $dsql->GetOne("SELECT flag FROM `{$maintable}` WHERE aid='$aid' ");
}
$flag = $arr['flag'];
if(trim($flag)=='' || !preg_match("#".$flagname."#", $flag) )
{
continue;
}
else
{
$flags = explode(',', $flag);
$okflags = array();
foreach($flags as $f)
{
if($f != $flagname) $okflags[] = $f;
}
}
$flag = trim(join(',', $okflags));
$dsql->ExecuteNoneQuery(" UPDATE `{$maintable}` SET `flag`='$flag' WHERE {$idname}='{$aid}' ");
}
ShowMsg("成功对选中文档删除指定的属性!", $ENV_GOBACK_URL);
exit();
}
/*--------------------------
//获得批量属性处理的AJAX窗体
function attsDlg(){ }
---------------------------*/
else if($dopost=='attsDlg')
{
if( !empty($aid) && empty($qstr) ) $qstr = $aid;
$dojobname = ($dojob=='attsDel' ? '批量删除属性' : '批量增加属性');
AjaxHead();
//输出AJAX可移动窗体
$divname = 'attsDlg';
echo "\r\n";
echo "
{$dojobname}
\r\n";
echo "
\r\n";
echo "
\r\n";
echo "
\r\n";
echo " 栏目快速选择器
\r\n";
echo " \r\n";
echo "\r\n";
$tus = new TypeUnitSelector();
?>