Esempio n. 1
0
function Ebak_DelBakpath($path)
{
    global $bakpath;
    if (strstr($path, "..")) {
        printerror("NotChangeDelPath", "history.go(-1)");
    }
    if (!trim($path)) {
        printerror("NotChangeDelPath", "history.go(-1)");
    }
    $delpath = $bakpath . "/" . $path;
    if (!file_exists($delpath)) {
        printerror("DelPathNotExists", "history.go(-1)");
    }
    $delpath = DelPath($delpath);
    printerror("DelPathSuccess", "ChangePath.php?change=" . $_GET['change']);
}
Esempio n. 2
0
function DelClass1($classid)
{
    global $empire, $class_r, $dbtbpre;
    $r = $empire->fetch1("select * from {$dbtbpre}enewsclass where classid='{$classid}'");
    //外部栏目
    if ($r[wburl]) {
        $sql = $empire->query("delete from {$dbtbpre}enewsclass where classid='{$classid}'");
        $empire->query("delete from {$dbtbpre}enewsclassadd where classid='{$classid}'");
        //删除缓存
        DelListEnews();
        return "";
    }
    //删除终极栏目
    if ($r[islast]) {
        //删除附件
        DelClassTranFile($classid);
        $filepath = "../../d/file/" . $r[classpath];
        $delf = DelPath($filepath);
        $usql = $empire->query("delete from {$dbtbpre}enewsfile where classid='{$classid}'");
        //删除信息
        $sql = $empire->query("delete from {$dbtbpre}ecms_" . $r[tbname] . " where classid='{$classid}'");
        DelClassTbDataInfo($classid);
        //删除信息附加表
        $delsql = $empire->query("delete from {$dbtbpre}enewswfinfo where classid='{$classid}'");
        $delsql = $empire->query("delete from {$dbtbpre}enewswfinfolog where classid='{$classid}'");
        $delsql = $empire->query("delete from {$dbtbpre}enewsinfovote where classid='{$classid}'");
        $delsql = $empire->query("delete from {$dbtbpre}enewsdiggips where classid='{$classid}'");
        //删除栏目本身
        $sql1 = $empire->query("delete from {$dbtbpre}enewsclass where classid='{$classid}'");
        $empire->query("delete from {$dbtbpre}enewsclassadd where classid='{$classid}'");
        $delpath = "../../" . $r[classpath];
        $del = DelPath($delpath);
        //更新大栏目的子栏目
        $where = ReturnClass($r[featherclass]);
        if (empty($where)) {
            $where = "classid=0";
        }
        $bsql = $empire->query("select sonclass,classid from {$dbtbpre}enewsclass where " . $where);
        while ($br = $empire->fetch($bsql)) {
            $newsonclass = str_replace("|" . $classid . "|", "|", $br[sonclass]);
            $usql = $empire->query("update {$dbtbpre}enewsclass set sonclass='{$newsonclass}' where classid='{$br['classid']}'");
        }
    } else {
        //删除栏目
        $where = ReturnClass($r[sonclass]);
        if (empty($where)) {
            $where = "classid=0";
        }
        $delcr = explode("|", $r[sonclass]);
        $count = count($delcr);
        for ($i = 1; $i < $count - 1; $i++) {
            $delcid = $delcr[$i];
            //删除附件
            DelClassTranFile($delcid);
            $sql = $empire->query("delete from {$dbtbpre}ecms_" . $class_r[$delcid][tbname] . " where classid='{$delcid}'");
            DelClassTbDataInfo($delcid);
            //删除信息附加表
            $delsql = $empire->query("delete from {$dbtbpre}enewswfinfo where classid='{$delcid}'");
            $delsql = $empire->query("delete from {$dbtbpre}enewswfinfolog where classid='{$delcid}'");
            $delsql = $empire->query("delete from {$dbtbpre}enewsinfovote where classid='{$delcid}'");
            $delsql = $empire->query("delete from {$dbtbpre}enewsdiggips where classid='{$delcid}'");
        }
        //删除附件
        $filepath = "../../d/file/" . $r[classpath];
        $delf = DelPath($filepath);
        if ($where != 'classid=0') {
            $usql = $empire->query("delete from {$dbtbpre}enewsfile where " . $where);
        }
        //删除子栏目副表
        $fcsql = $empire->query("select classid from {$dbtbpre}enewsclass where featherclass like '%|" . $classid . "|%'");
        while ($fcr = $empire->fetch($fcsql)) {
            $empire->query("delete from {$dbtbpre}enewsclassadd where classid='{$fcr['classid']}'");
        }
        //删除子栏目
        $sql1 = $empire->query("delete from {$dbtbpre}enewsclass where featherclass like '%|" . $classid . "|%'");
        //改变父栏目的子类
        $where = ReturnClass($r[featherclass]);
        if (empty($where)) {
            $where = "classid=0";
        }
        $bbsql = $empire->query("select classid,sonclass from {$dbtbpre}enewsclass where " . $where);
        while ($bbr = $empire->fetch($bbsql)) {
            $newsonclass = str_replace($r[sonclass], "|", $bbr[sonclass]);
            $usql = $empire->query("update {$dbtbpre}enewsclass set sonclass='{$newsonclass}' where classid='{$bbr['classid']}'");
        }
        //删除栏目本身
        $sql2 = $empire->query("delete from {$dbtbpre}enewsclass where classid='{$classid}'");
        $empire->query("delete from {$dbtbpre}enewsclassadd where classid='{$classid}'");
        $delpath = "../../" . $r[classpath];
        $del = DelPath($delpath);
    }
    //删除缓存
    DelListEnews();
}
Esempio n. 3
0
function DelInfoType($add,$userid,$username){
	global $empire,$dbtbpre;
	$typeid=(int)$add[typeid];
	if(!$typeid)
	{
		printerror("NotDelInfoTypeid","");
	}
	CheckLevel($userid,$username,$classid,"infotype");
	$r=$empire->fetch1("select * from {$dbtbpre}enewsinfotype where typeid='$typeid'");
	if(empty($r[typeid]))
	{
		printerror("NotDelInfoTypeid","history.go(-1)");
	}
	//删除专题
	$sql=$empire->query("delete from {$dbtbpre}enewsinfotype where typeid='$typeid'");
	$delpath=ECMS_PATH.$r[tpath];
	$del=DelPath($delpath);
	//改变信息分类值
	$usql=$empire->query("update {$dbtbpre}ecms_".$r[tbname]." set ttid=0 where ttid='$typeid'");
	$usql=$empire->query("update {$dbtbpre}ecms_".$r[tbname]."_check set ttid=0 where ttid='$typeid'");
	$usql=$empire->query("update {$dbtbpre}ecms_".$r[tbname]."_doc set ttid=0 where ttid='$typeid'");
	GetClass();//更新缓存
	if($sql)
	{
		insert_dolog("typeid=".$typeid."<br>tname=".$r[tname]);//操作日志
		printerror("DelInfoTypeSuccess","InfoType.php?mid=$add[fmid]".hReturnEcmsHashStrHref2(0));
	}
	else
	{
		printerror("DbError","");
	}
}
Esempio n. 4
0
function MovePath($oldpath, $newpath)
{
    //复制
    CopyPath($oldpath, $newpath);
    //删除
    DelPath($oldpath);
}
Esempio n. 5
0
function DelClass1($classid)
{
    global $empire, $class_r, $dbtbpre;
    $r = $empire->fetch1("select * from {$dbtbpre}enewsclass where classid='{$classid}'");
    //外部栏目
    if ($r[wburl]) {
        $sql = $empire->query("delete from {$dbtbpre}enewsclass where classid='{$classid}'");
        $empire->query("delete from {$dbtbpre}enewsclassadd where classid='{$classid}'");
        $empire->query("delete from {$dbtbpre}enewsclass_stats where classid='{$classid}'");
        //删除栏目附件
        DelFileOtherTable("modtype=1 and id='{$classid}'");
        //删除缓存
        DelListEnews();
        return "";
    }
    //删除终极栏目
    if ($r[islast]) {
        //删除主表信息
        $indexsql = $empire->query("delete from {$dbtbpre}ecms_" . $r[tbname] . "_index where classid='{$classid}'");
        $sql = $empire->query("delete from {$dbtbpre}ecms_" . $r[tbname] . " where classid='{$classid}'");
        $empire->query("delete from {$dbtbpre}ecms_" . $r[tbname] . "_check where classid='{$classid}'");
        $empire->query("delete from {$dbtbpre}ecms_" . $r[tbname] . "_doc where classid='{$classid}'");
        //删除副表信息
        DelAllDataTbInfo($r['tbname'], "classid='{$classid}'", 1, 1);
        //删除存文本文件
        DelInfoSaveTxtfile($r['modid'], $r['tbname'], "classid='{$classid}'");
        //删除信息附加表与附件
        DelMoreInfoOtherData($classid, 0, 0);
        $filepath = "../../data/" . $r[classpath];
        $delf = DelPath($filepath);
        DelFileOtherTable("modtype=1 and id='{$classid}'");
        //删除栏目本身
        $sql1 = $empire->query("delete from {$dbtbpre}enewsclass where classid='{$classid}'");
        $empire->query("delete from {$dbtbpre}enewsclassadd where classid='{$classid}'");
        $empire->query("delete from {$dbtbpre}enewsclass_stats where classid='{$classid}'");
        $delpath = "../../" . $r[classpath];
        $del = DelPath($delpath);
        //更新大栏目的子栏目
        $where = ReturnClass($r[featherclass]);
        if (empty($where)) {
            $where = "classid=0";
        }
        $bsql = $empire->query("select sonclass,classid from {$dbtbpre}enewsclass where " . $where);
        while ($br = $empire->fetch($bsql)) {
            $newsonclass = str_replace("|" . $classid . "|", "|", $br[sonclass]);
            $usql = $empire->query("update {$dbtbpre}enewsclass set sonclass='{$newsonclass}' where classid='{$br['classid']}'");
        }
    } else {
        //删除栏目
        $where = ReturnClass($r[sonclass]);
        if (empty($where)) {
            $where = "classid=0";
        }
        $delcr = explode("|", $r[sonclass]);
        $count = count($delcr);
        for ($i = 1; $i < $count - 1; $i++) {
            $delcid = $delcr[$i];
            //删除主表信息
            $indexsql = $empire->query("delete from {$dbtbpre}ecms_" . $class_r[$delcid][tbname] . "_index where classid='{$delcid}'");
            $sql = $empire->query("delete from {$dbtbpre}ecms_" . $class_r[$delcid][tbname] . " where classid='{$delcid}'");
            $empire->query("delete from {$dbtbpre}ecms_" . $class_r[$delcid][tbname] . "_check where classid='{$delcid}'");
            $empire->query("delete from {$dbtbpre}ecms_" . $class_r[$delcid][tbname] . "_doc where classid='{$delcid}'");
            //删除副表信息
            DelAllDataTbInfo($class_r[$delcid][tbname], "classid='{$delcid}'", 1, 1);
            //删除存文本文件
            DelInfoSaveTxtfile($class_r[$delcid][modid], $class_r[$delcid][tbname], "classid='{$delcid}'");
            //删除信息附加表与附件
            DelMoreInfoOtherData($delcid, 0, 0);
        }
        //删除附件
        $filepath = "../../data/" . $r[classpath];
        $delf = DelPath($filepath);
        if ($where != 'classid=0') {
            DelFileOtherTable("modtype=1 and (" . str_replace('classid', 'id', $where) . ")");
        }
        //删除子栏目副表
        $fcsql = $empire->query("select classid from {$dbtbpre}enewsclass where featherclass like '%|" . $classid . "|%'");
        while ($fcr = $empire->fetch($fcsql)) {
            $empire->query("delete from {$dbtbpre}enewsclassadd where classid='{$fcr['classid']}'");
            $empire->query("delete from {$dbtbpre}enewsclass_stats where classid='{$fcr['classid']}'");
        }
        //删除子栏目
        $sql1 = $empire->query("delete from {$dbtbpre}enewsclass where featherclass like '%|" . $classid . "|%'");
        //改变父栏目的子类
        $where = ReturnClass($r[featherclass]);
        if (empty($where)) {
            $where = "classid=0";
        }
        $bbsql = $empire->query("select classid,sonclass from {$dbtbpre}enewsclass where " . $where);
        while ($bbr = $empire->fetch($bbsql)) {
            $newsonclass = str_replace($r[sonclass], "|", $bbr[sonclass]);
            $usql = $empire->query("update {$dbtbpre}enewsclass set sonclass='{$newsonclass}' where classid='{$bbr['classid']}'");
        }
        //删除栏目本身
        $sql2 = $empire->query("delete from {$dbtbpre}enewsclass where classid='{$classid}'");
        $empire->query("delete from {$dbtbpre}enewsclassadd where classid='{$classid}'");
        $empire->query("delete from {$dbtbpre}enewsclass_stats where classid='{$classid}'");
        //删除栏目附件
        DelFileOtherTable("modtype=1 and id='{$classid}'");
        $delpath = "../../" . $r[classpath];
        $del = DelPath($delpath);
    }
    //删除缓存
    DelListEnews();
}
Esempio n. 6
0
function MoveClassNews($add, $userid, $username)
{
    global $empire, $class_r, $dbtbpre, $emod_r;
    $add[classid] = (int) $add[classid];
    $add[toclassid] = (int) $add[toclassid];
    if (empty($add[classid]) || empty($add[toclassid])) {
        printerror("EmptyMovetoClassid", "history.go(-1)");
    }
    if ($class_r[$add[classid]][modid] != $class_r[$add[toclassid]][modid]) {
        printerror("DefModid", "history.go(-1)");
    }
    //验证权限
    CheckLevel($userid, $username, $classid, "movenews");
    //终极栏目
    if (!$class_r[$add[classid]][islast] || !$class_r[$add[toclassid]][islast]) {
        printerror("MovetoClassidMustLastid", "history.go(-1)");
    }
    if ($add[classid] == $add[toclassid]) {
        printerror("MoveClassidsame", "history.go(-1)");
    }
    $mid = $class_r[$add[classid]][modid];
    $tbname = $class_r[$add[classid]][tbname];
    //主表
    $indexsql = $empire->query("update {$dbtbpre}ecms_" . $tbname . "_index set classid={$add['toclassid']} where classid='{$add['classid']}'");
    $sql = $empire->query("update {$dbtbpre}ecms_" . $tbname . " set classid={$add['toclassid']} where classid='{$add['classid']}'");
    $empire->query("update {$dbtbpre}ecms_" . $tbname . "_check set classid={$add['toclassid']} where classid='{$add['classid']}'");
    $empire->query("update {$dbtbpre}ecms_" . $tbname . "_doc set classid={$add['toclassid']} where classid='{$add['classid']}'");
    //副表
    UpdateAllDataTbField($tbname, "classid='{$add['toclassid']}'", " where classid='{$add['classid']}'", 1, 1);
    //更新栏目信息数
    $cr = $empire->fetch1("select classid,allinfos,infos from {$dbtbpre}enewsclass where classid='{$add['classid']}'");
    AddClassInfos($add[classid], '-' . $cr[allinfos], '-' . $cr[infos]);
    $tocr = $empire->fetch1("select classid,allinfos,infos from {$dbtbpre}enewsclass where classid='{$add['toclassid']}'");
    AddClassInfos($add[toclassid], '+' . $cr[allinfos], '+' . $cr[infos]);
    //更新信息附加表与附件表
    UpdateMoreInfoOtherData($add[classid], $add[toclassid], 0, 0);
    //生成信息列表
    ListHtml($add[toclassid], $ret_r, 0);
    //移动数据
    $opath = ECMS_PATH . $class_r[$add[classid]][classpath];
    DelPath($opath);
    //删除旧的栏目目录
    $mk = DoMkdir($opath);
    if ($sql) {
        //操作日志
        insert_dolog("classid=" . $add[classid] . "&nbsp;(" . $class_r[$add[classid]][classname] . ")<br>toclassid=" . $add[toclassid] . "(" . $class_r[$add[toclassid]][classname] . ")");
        printerror("MoveClassNewsSuccess", "MoveClassNews.php" . hReturnEcmsHashStrHref2(1));
    } else {
        printerror("DbError", "history.go(-1)");
    }
}
Esempio n. 7
0
function MoveClassNews($add, $userid, $username)
{
    global $empire, $class_r, $dbtbpre, $emod_r;
    $add[classid] = (int) $add[classid];
    $add[toclassid] = (int) $add[toclassid];
    if (empty($add[classid]) || empty($add[toclassid])) {
        printerror("EmptyMovetoClassid", "history.go(-1)");
    }
    if ($class_r[$add[classid]][modid] != $class_r[$add[toclassid]][modid]) {
        printerror("DefModid", "history.go(-1)");
    }
    //验证权限
    CheckLevel($userid, $username, $classid, "movenews");
    //终极栏目
    if (!$class_r[$add[classid]][islast] || !$class_r[$add[toclassid]][islast]) {
        printerror("MovetoClassidMustLastid", "history.go(-1)");
    }
    if ($add[classid] == $add[toclassid]) {
        printerror("MoveClassidsame", "history.go(-1)");
    }
    $mid = $class_r[$add[classid]][modid];
    $tbname = $class_r[$add[classid]][tbname];
    $sql = $empire->query("update {$dbtbpre}ecms_" . $tbname . " set classid={$add['toclassid']} where classid='{$add['classid']}'");
    //副表
    $dtbr = explode(',', $emod_r[$mid][datatbs]);
    $tbcount = count($dtbr);
    for ($i = 1; $i < $tbcount - 1; $i++) {
        $empire->query("update {$dbtbpre}ecms_" . $tbname . "_data_" . $dtbr[$i] . " set classid={$add['toclassid']} where classid='{$add['classid']}'");
    }
    //评论转换
    $uplsql = $empire->query("update {$dbtbpre}enewspl set classid={$add['toclassid']} where classid='{$add['classid']}'");
    $upltbr = $empire->fetch1("select pldatatbs from {$dbtbpre}enewspublic limit 1");
    if ($upltbr['pldatatbs']) {
        $pldtbr = explode(',', $upltbr['pldatatbs']);
        $count = count($pldtbr) - 1;
        for ($i = 1; $i < $count; $i++) {
            $empire->query("update {$dbtbpre}enewspl_data_" . $pldtbr[$i] . " set classid={$add['toclassid']} where classid='{$add['classid']}'");
        }
    }
    //签发转换
    $uqfsql = $empire->query("update {$dbtbpre}enewswfinfo set classid={$add['toclassid']} where classid='{$add['classid']}'");
    $uqfsql = $empire->query("update {$dbtbpre}enewswfinfolog set classid={$add['toclassid']} where classid='{$add['classid']}'");
    //投票
    $uvotesql = $empire->query("update {$dbtbpre}enewsinfovote set classid={$add['toclassid']} where classid='{$add['classid']}'");
    //digg
    $empire->query("update {$dbtbpre}enewsdiggips set classid={$add['toclassid']} where classid='{$add['classid']}'");
    //生成信息列表
    ListHtml($add[toclassid], $ret_r, 0);
    //移动数据
    $opath = ECMS_PATH . $class_r[$add[classid]][classpath];
    DelPath($opath);
    //删除旧的栏目目录
    $mk = DoMkdir($opath);
    if ($sql) {
        //操作日志
        insert_dolog("classid=" . $add[classid] . "&nbsp;(" . $class_r[$add[classid]][classname] . ")<br>toclassid=" . $add[toclassid] . "(" . $class_r[$add[toclassid]][classname] . ")");
        printerror("MoveClassNewsSuccess", "MoveClassNews.php");
    } else {
        printerror("DbError", "history.go(-1)");
    }
}
Esempio n. 8
0
function Ebak_DelBakpath($path,$userid,$username){
	global $public_r;
	//验证权限
	CheckLevel($userid,$username,$classid,"dbdata");
	$path=RepPostStr($path,1);
	if(strstr($path,".."))
	{printerror("NotChangeDelPath","history.go(-1)");}
	if(!trim($path))
	{printerror("NotChangeDelPath","history.go(-1)");}
	$bakpath=$public_r['bakdbpath'];
	$delpath=$bakpath."/".$path;
	if(!file_exists($delpath))
	{
		printerror("ThisPathNotExist","history.go(-1)");
    }
	@include_once("../../class/delpath.php");
	$delpath=DelPath($delpath);
	//操作日志
	insert_dolog("path=".$path);
	printerror("DelPathSuccess","ChangePath.php?change=".RepPostStr($_GET['change'],1).hReturnEcmsHashStrHref2(0));
}