www.gusucode.com > 08CMS空白站群系统 3.3 繁体 UTF-8 > upload/admina/userfiles.inc.php
<? (!defined('M_COM') || !defined('M_ADMIN')) && exit('No Permission'); aheader(); if($action == 'userfilesedit'){ $page = !empty($page) ? max(1, intval($page)) : 1; submitcheck('bfilter') && $page = 1; $viewdetail = empty($viewdetail) ? '' : $viewdetail; $type = empty($type) ? '' : $type; $thumbed = !isset($thumbed) ? '-1' : $thumbed; $aids = empty($aids) ? '' : $aids; $mnames = empty($mnames) ? '' : $mnames; $indays = empty($indays) ? 0 : max(0,intval($indays)); $outdays = empty($outdays) ? 0 : max(0,intval($outdays)); $wheresql = ''; if(!empty($type)){ $wheresql .= ($wheresql ? " AND " : "")."type='$type'"; } if(!empty($aids)){ $aidsarr = array_filter(explode(',',$aids)); $wheresql .= ($wheresql ? " AND " : "")."aid IN (".mimplode($aidsarr).")"; } if($thumbed != '-1'){ $wheresql .= ($wheresql ? " AND " : "")."thumbed='$thumbed'"; } if(!empty($mnames)){ $mnamesarr = array_filter(explode(',',$mnames)); $wheresql .= ($wheresql ? " AND " : "")."mname IN (".mimplode($mnamesarr).")"; } if(!empty($indays)){ $wheresql .= ($wheresql ? " AND " : "")."createdate>'".($timestamp - 86400 * $indays)."'"; } if(!empty($outdays)){ $wheresql .= ($wheresql ? " AND " : "")."createdate<'".($timestamp - 86400 * $outdays)."'"; } $filterstr = ''; foreach(array('viewdetail','aids','type','thumbed','mnames','indays','outdays') as $k){ $filterstr .= "&$k=".urlencode($$k); } $wheresql = $wheresql ? ("WHERE $wheresql") : ""; if(!submitcheck('buserfilesedit')){ $typearr = array('0' => lang('all type'),'image' => lang('image'),'flash' => lang('flash'),'media' => lang('media'),'file' => lang('other'),); $thumbedarr = array('-1' => lang('nolimit'),'0' => lang('none thumb'),'1' => lang('have thumb')); tabheader(lang('filter0 attachment')." <input class=\"checkbox\" type=\"checkbox\" name=\"viewdetail\" value=\"1\" onclick=\"alterview('tbodyfilter')\"".(empty($viewdetail) ? '' : ' checked').">".lang('viewdetail'),'userfilesedit',"?entry=userfiles&action=userfilesedit&page=$page"); trbasic(lang('attachment type'),'type',makeoption($typearr,$type),'select'); trbasic(lang('aidstxt'),'aids',$aids); echo "<tbody id=\"tbodyfilter\" style=\"display: ".(empty($viewdetail) ? 'none' : '')."\">"; trbasic(lang('weather have thumb'),'thumbed',makeoption($thumbedarr,$thumbed),'select'); trbasic(lang('mnamestxt'),'mnames',$mnames); trrange(lang('add date'),array('outdays',empty($outdays) ? '' : $outdays,'',' '.lang('day before').' - ',5),array('indays',empty($indays) ? '' : $indays,'',' '.lang('day in'),5)); echo "</tbody>"; tabfooter(); echo "<input class=\"button\" type=\"submit\" name=\"bfilter\" value=\"".lang('filter0')."\">"; $pagetmp = $page; do{ $query = $db->query("SELECT * FROM {$tblprefix}userfiles $wheresql ORDER BY ufid DESC LIMIT ".(($pagetmp - 1) * $atpp).",$atpp"); $pagetmp--; } while(!$db->num_rows($query) && $pagetmp); $itemstr = ''; while($item = $db->fetch_array($query)) { $item['createdate'] = date("$dateformat", $item['createdate']); $item['preview'] = ($item['type'] == 'image') ? "<a href=\"".view_atmurl($item['url'])."\" target=\"_blank\">".lang('preview')."</a>" : "-"; $item['type'] = $typearr[$item['type']]; $item['thumbedstr'] = $item['thumbed'] ? 'Y' : '-'; $item['size'] = ceil($item['size'] / 1024); $item['source'] = $item['aid'] ? "<a href=\"".$cms_abs."archive.php?aid=$item[aid]\" target=\"_blank\">".lang('look')."</a>" : "-"; $itemstr .= "<tr><td align=\"center\" class=\"item1\" width=\"40\"><input class=\"checkbox\" type=\"checkbox\" name=\"selectid['$item[ufid]']\" value=\"$item[ufid]\">\n". "<td class=\"item2\">$item[filename]</td>\n". "<td align=\"center\" class=\"item1\" width=\"40\">$item[type]</td>\n". "<td align=\"center\" class=\"item2\" width=\"50\">$item[size]</td>\n". "<td align=\"center\" class=\"item1\" width=\"40\">$item[preview]</td>\n". "<td align=\"center\" class=\"item2\" width=\"40\">$item[thumbedstr]</td>\n". "<td align=\"center\" class=\"item1\" width=\"80\">$item[mname]</td>\n". "<td align=\"center\" class=\"item2\" width=\"80\">$item[createdate]</td>\n". "<td align=\"center\" class=\"item1\" width=\"40\">$item[source]</td></tr>\n"; } $itemcount = $db->result_one("SELECT count(*) FROM {$tblprefix}userfiles $wheresql"); $multi = multi($itemcount, $atpp, $page, "?entry=userfiles&action=userfilesedit$filterstr"); tabheader(lang('attachment list')." <input class=\"checkbox\" type=\"checkbox\" name=\"select_all\" value=\"1\"> ".lang('selectallpage'),'','',9); trcategory(array("<input class=\"checkbox\" type=\"checkbox\" name=\"chkall\" class=\"category\" onclick=\"checkall(this.form, 'selectid', 'chkall')\">".lang('del'),lang('cname'),lang('type'),lang('size (k)'),lang('preview'),lang('thumb'),lang('member'),lang('upload date'),lang('source'))); echo $itemstr; tabfooter(); echo $multi; echo "<br><input class=\"button\" type=\"submit\" name=\"buserfilesedit\" value=\"".lang('submit')."\"></form>"; }else{ !checkapermission('userfilesedit') && amessage(lang('no_apermission')); if(empty($selectid) && empty($select_all)){ amessage(lang('confirmselect archive'),"?entry=userfiles&action=userfilesedit&page=$page$filterstr"); } $items = array(); if(!empty($select_all)){ $selectid = array(); $npage = empty($npage) ? 1 : $npage; if(empty($pages)){ $itemcount = $db->result_one("SELECT count(*) FROM {$tblprefix}userfiles $wheresql"); $pages = @ceil($itemcount / $atpp); } if($npage <= $pages){ $fromstr = empty($fromid) ? "" : "ufid<$fromid"; $nwheresql = !$wheresql ? ($fromstr ? "WHERE $fromstr" : "") : ($wheresql.($fromstr ? " AND " : "").$fromstr); $query = $db->query("SELECT * FROM {$tblprefix}userfiles $nwheresql ORDER BY ufid DESC LIMIT 0,$atpp"); } }else{ $query = $db->query("SELECT * FROM {$tblprefix}userfiles WHERE ufid IN (".mimplode($selectid).") ORDER BY ufid"); } while($item = $db->fetch_array($query)){ $items[$item['ufid']] = $item; } $actuser = new cls_userinfo; foreach($items as $item){ $actuser->activeuser($item['mid']); if($item['thumbed']){ $actuser->updateuptotal(ceil(@filesize(local_file($item['url']).'.s.jpg') / 1024),'reduce'); @unlink(local_file($item['url']).'.s.jpg'); } $actuser->updateuptotal(ceil($item['size'] / 1024),'reduce','1'); @unlink(local_file($item['url'])); $actuser->init(); } $db->query("DELETE FROM {$tblprefix}userfiles WHERE ufid IN (".mimplode(array_keys($items)).")",'UNBUFFERED'); unset($actuser); if(!empty($select_all)){ $npage ++; if($npage <= $pages){ $fromid = min(array_keys($items)); $transtr = ''; $transtr .= "&select_all=1"; $transtr .= "&pages=$pages"; $transtr .= "&npage=$npage"; $transtr .= "&buserfilesedit=1"; $transtr .= "&fromid=$fromid"; amessage(lang('operating')."<br> ".lang('all')." $pages ".lang('page0').",".lang('dealing')." $npage ".lang('page0')."<br><br> <a href=\"?entry=userfiles&action=userfilesedit&page=$page$filterstr\">>>".lang('pause')."</a>", "?entry=userfiles&action=userfilesedit&page=$page$filterstr$transtr", 500); } } adminlog(lang('upload attachment admin'),lang('attachment list delete operate')); amessage(lang('attachment operate finish'),"?entry=userfiles&action=userfilesedit&page=$page$filterstr",500); } } ?>