���� JFIF �� � ( %"1"%)+...383,7(-.-
![]() 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/vidoe.top/admin_new/mod/ |
<?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){ 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 gtdesign_menu ".$where)); $total = $t['total']; $totalPage = ceil($total / $pageSize); $query = $DB->query("SELECT * FROM gtdesign_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='.$_SESSION['fkeyword']); $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 gtdesign_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 gtdesign_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 gtdesign_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 gtdesign_menu WHERE ftitle='$ftitle' AND id<>'$id'")); }else{ $row_check = $DB->fetch_row($DB->query("SELECT id FROM gtdesign_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 `gtdesign_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 `gtdesign_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 `gtdesign_menu` SET `icon`='".$image1."' WHERE `id`='".$id."'"); } if($result['id']!=$parent_id){ $DB->query("UPDATE `gtdesign_menu` SET `parent_id` = '$parent_id' WHERE `id` ='$id';"); } $DB->query("UPDATE `gtdesign_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 gtdesign_menu SET status='1' WHERE id='".$val."'"); break; case 'deactive': $DB->query("UPDATE gtdesign_menu SET status='0' WHERE id='".$val."'"); break; case 'hot': $DB->query("UPDATE gtdesign_menu SET noibat='1' WHERE id='".$val."'"); break; case 'dehot': $DB->query("UPDATE gtdesign_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 gtdesign_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 gtdesign_menu_pages WHERE pages_id='$id'"); $DB->query("DELETE FROM gtdesign_pages WHERE id='".$id."'"); } function goDelPagesImg($id){ global $CORE, $DB, $print, $func; $query = $DB->query("SELECT path_img,img FROM gtdesign_pagesimg WHERE id='".$id."'"); $result = $DB->fetch_row($query); $q_check = $DB->query("SELECT * FROM gtdesign_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 gtdesign_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 gtdesign_menu_pagesimg WHERE pagesimg_id='$id'"); $DB->query("DELETE FROM gtdesign_pagesimg WHERE id='".$id."'"); } function deleteSub($menu_id) { global $DB; $q_main_pages = $DB->query( "SELECT pages_id FROM gtdesign_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 gtdesign_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 gtdesign_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 gtdesign_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 gtdesign_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 gtdesign_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 gtdesign_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(); ?>