public function fetch_by_fid($fid) { //返回一条数据同时加载附件表数据 global $_G; $fid = intval($fid); if (!($data = self::fetch($fid))) { return false; } //$data['icon']=($data['ficon']?$data['ficon']:geticonfromext('','folder')); $data['title'] = $data['fname']; if ($data['flag'] == 'recycle') { $data['iconum'] = DB::result_first("select COUNT(*) from " . DB::table('icos') . " where isdelete>0 and uid='{$_G['uid']}'"); } elseif ($data['uid'] < 1) { $data['iconum'] = DB::result_first("select COUNT(*) from " . DB::table('icos') . " where pfid='{$fid}' and uid='{$_G['uid']}' and isdelete<1"); } else { $data['iconum'] = DB::result_first("select COUNT(*) from " . DB::table('icos') . " where pfid='{$fid}' and isdelete<1"); } $data['perm'] = perm_check::getPerm($fid); $data['perm1'] = perm_check::getPerm1($fid); //print_r($data); if ($data['gid'] > 0) { $data['ismoderator'] = C::t('organization_admin')->ismoderator_by_uid_orgid($data['gid'], $_G['uid']); $permtitle = perm_binPerm::getGroupTitleByPower($data['perm1']); if (file_exists('dzz/images/default/system/folder-' . $permtitle['flag'] . '.png')) { $data['icon'] = 'dzz/images/default/system/folder-' . $permtitle['flag'] . '.png'; } else { $data['icon'] = 'dzz/images/default/system/folder-read.png'; } } $data['path'] = $data['fid']; $data['oid'] = $data['fid']; $data['bz'] = ''; return $data; }
public function CreateFolder($pfid, $fname, $perm, $ondup = 'newcopy') { global $_G, $_GET; $fname = self::name_filter($fname); if (!($folder = DB::fetch_first("select fid,pfid,iconview,disp,gid from %t where fid=%d", array('folder', $pfid)))) { return array('error' => '父目录不存在'); } if (!perm_check::checkperm_Container($pfid, 'folder')) { return array('error' => lang('message', 'no_privilege')); } if ($ondup == 'overwrite' && ($icoid = self::getRepeatIDByName($fname, $pfid, true))) { //如果目录下有同名目录 $data = array(); $data['icoarr'] = C::t('icos')->fetch_by_icoid($icoid); $data['folderarr'] = self::getFolderByIcosdata($data['icoarr']); return $data; } else { $fname = self::getFolderName($fname, $pfid); } //重命名 $setarr = array('fname' => $fname, 'uid' => $_G['uid'], 'username' => $_G['username'], 'pfid' => $folder['fid'], 'iconview' => $folder['iconview'], 'disp' => $folder['disp'], 'perm' => $perm, 'flag' => 'folder', 'dateline' => $_G['timestamp'], 'gid' => $folder['gid']); if ($setarr['fid'] = C::t('folder')->insert($setarr, true)) { $setarr['path'] = $setarr['fid']; $setarr['perm'] = perm_check::getPerm($setarr['fid']); $setarr['perm1'] = perm_check::getPerm1($setarr['fid']); $setarr['title'] = $setarr['fname']; $setarr['ext'] = ''; $setarr['size'] = 0; $setarr1 = array('uid' => $_G['uid'], 'username' => $_G['username'], 'oid' => $setarr['fid'], 'name' => $setarr['fname'], 'type' => 'folder', 'flag' => '', 'dateline' => $_G['timestamp'], 'pfid' => $folder['fid'], 'gid' => $folder['gid'], 'ext' => '', 'size' => 0); if ($setarr1['icoid'] = DB::insert('icos', $setarr1, 1)) { $setarr1['path'] = $setarr1['icoid']; $setarr1['dpath'] = dzzencode($setarr1['icoid']); $setarr1['bz'] = ''; addtoconfig($setarr1); $setarr1['fsize'] = formatsize($setarr1['size']); $setarr1['ftype'] = getFileTypeName($setarr1['type'], $setarr1['ext']); $setarr1['fdateline'] = dgmdate($setarr1['dateline']); if ($setarr['gid']) { $permtitle = perm_binPerm::getGroupTitleByPower($setarr['perm1']); if (file_exists('dzz/images/default/system/folder-' . $permtitle['flag'] . '.png')) { $setarr['icon'] = $setarr1['img'] = 'dzz/images/default/system/folder-' . $permtitle['flag'] . '.png'; } else { $setarr['icon'] = $setarr1['img'] = 'dzz/images/default/system/folder-read.png'; } } return array('icoarr' => $setarr1, 'folderarr' => $setarr); } } return false; }