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; }
$patharr1 = array(); while ($arr1) { $patharr1[] = array_pop($arr1); } $info['path'] = implode('/', $patharr1) . '/' . $icoarr['tdata']['name']; } $info['size'] = '-'; if ($icoarr['tdata']['type'] == 'folder') { $info['icon'] = 'dzz/images/default/system/folder.png'; } break; case 'folder': if ($icoarr['gid'] > 0 && ($pfolder = C::t('folder')->fetch_by_fid($icoarr['pfid'])) && perm_binPerm::havePower('read2', $pfolder['perm1']) && (C::t('organization_admin')->ismoderator_by_uid_orgid($icoarr['gid'], $_G['uid']) || $_G['adminid'] == 1)) { $folder = C::t('folder')->fetch($icoarr['oid']); $ismoderator = 1; $permtitle = perm_binPerm::getGroupTitleByPower($icoarr['perm1']); $permarr = perm_binPerm::groupPowerPack(); } $info['icon'] = $icoarr['img'] ? $icoarr['img'] : 'dzz/images/default/system/folder.png'; $contains = getContainsByFid($icoarr['oid']); $info['size'] = lang('template', 'property_info_size', array('fsize' => formatsize($contains['size']), 'size' => $contains['size'])); $info['contain'] = lang('template', 'property_info_contain', array('filenum' => $contains['contain'][0], 'foldernum' => $contains['contain'][1])); break; case 'dzzdoc': $info['path'] = implode('/', $patharr) . '/' . $icoarr['name']; $info['size'] = lang('template', 'property_info_size', array('fsize' => formatsize($icoarr['size']), 'size' => $icoarr['size'])); break; case 'link': $info['path'] = implode('/', $patharr) . '/' . $icoarr['name']; $info['size'] = '-'; break;
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; }