$param[] = $uid; } $list = array(); if ($count = DB::result_first("SELECT COUNT(*) FROM %t WHERE {$sql}", $param)) { foreach (DB::fetch_all("SELECT * FROM %t WHERE {$sql} {$orderby} limit {$start},{$perpage}", $param) as $value) { if ($value['dateline']) { $value['fdateline'] = dgmdate($value['dateline']); } if ($value['password']) { $value['password'] = dzzdecode($value['password']); } if ($value['endtime']) { $value['fendtime'] = dgmdate($value['endtime'], 'Y-m-d'); } $value['fsize'] = formatsize($value['size']); $value['ftype'] = getFileTypeName($value['type'], $value['ext']); if ($value['type'] == 'folder') { $value['img'] = 'dzz/images/extimg/folder.png'; } if ($value['img']) { $value['img'] = str_replace('dzz/images/extimg/', 'dzz/images/extimg_small/', $value['img']); } if ($value['type'] == 'image' && $value['status'] == -3) { $value['img'] = ''; } $value['fstatus'] = $sharestatus[$value['status']]; if (is_file($_G['setting']['attachdir'] . './qrcode/' . $value['sid'][0] . '/' . $value['sid'] . '.png')) { $value['qrcode'] = $_G['setting']['attachurl'] . './qrcode/' . $value['sid'][0] . '/' . $value['sid'] . '.png'; } $value['shareurl'] = $_G['siteurl'] . 's.php?sid=' . $value['sid']; $list[$value['sid']] = $value;
function _formatMeta($meta, $bz) { global $_G, $documentexts, $imageexts; //判断是否为根目录 $root = $bz . $this->_root; $icosdata = array(); $bzarr = explode(':', $bz); if ($meta['isdir']) { $icoarr = array('icoid' => md5($bz . $meta['path']), 'path' => $bz . $meta['path'], 'dpath' => dzzencode($bz . $meta['path']), 'bz' => $bz, 'gid' => 0, 'name' => substr(strrchr($meta['path'], '/'), 1), 'username' => $_G['username'], 'uid' => $_G['uid'], 'oid' => md5($bz . $meta['path']), 'img' => 'dzz/images/default/system/folder.png', 'type' => 'folder', 'ext' => '', 'pfid' => md5(str_replace(strrchr($meta['path'], '/'), '', $bz . $meta['path'])), 'size' => 0, 'dateline' => intval($meta['mtime']), 'flag' => ''); if ($icoarr['path'] == $root) { $icoarr['name'] = $this->_rootname; $icoarr['flag'] = self::BZ; $icoarr['pfid'] = 0; } $icoarr['fsize'] = formatsize($icoarr['size']); $icoarr['ftype'] = getFileTypeName($icoarr['type'], $icoarr['ext']); $icoarr['fdateline'] = dgmdate($icoarr['dateline']); $icosdata = $icoarr; } else { $ext = strtoupper(substr(strrchr($meta['path'], '.'), 1)); if (in_array($ext, $imageexts)) { $type = 'image'; } elseif (in_array($ext, $documentexts)) { $type = 'document'; } else { $type = 'attach'; } if ($type == 'image') { $img = $_G['siteurl'] . DZZSCRIPT . '?mod=io&op=thumbnail&width=256&height=256&path=' . dzzencode($bz . $meta['path']); $url = $_G['siteurl'] . DZZSCRIPT . '?mod=io&op=thumbnail&width=1440&height=900&path=' . dzzencode($bz . $meta['path']); } else { $img = geticonfromext($ext, $type); $url = $_G['siteurl'] . DZZSCRIPT . '?mod=io&op=getStream&path=' . rawurlencode($bz . $meta['path']); } $icoarr = array('icoid' => md5($bz . $meta['path']), 'path' => $bz . $meta['path'], 'dpath' => dzzencode($bz . $meta['path']), 'bz' => $bz, 'gid' => 0, 'name' => substr(strrchr($meta['path'], '/'), 1), 'username' => $_G['username'], 'uid' => $_G['uid'], 'oid' => md5($bz . $meta['path']), 'img' => $img, 'url' => $url, 'type' => $type, 'ext' => strtolower($ext), 'pfid' => md5(str_replace(strrchr($meta['path'], '/'), '', $bz . $meta['path'])), 'size' => $meta['size'], 'dateline' => intval($meta['mtime']), 'flag' => ''); $icoarr['fsize'] = formatsize($icoarr['size']); $icoarr['ftype'] = getFileTypeName($icoarr['type'], $icoarr['ext']); $icoarr['fdateline'] = dgmdate($icoarr['dateline']); $icosdata = $icoarr; } return $icosdata; }
$icoarr['fdateline'] = dgmdate($icoarr['dateline']); echo json_encode($icoarr); exit; } $cloud = DB::fetch_first("select * from %t where bz=%s", array('connect', $bz)); if (!($item = C::t($cloud['dname'])->fetch_by_id($id))) { echo json_encode(array('error' => '对象不存在或已被删除')); exit; } $pfid = DB::result_first("select fid from " . DB::table('folder') . " where uid='{$_G[uid]}' and flag='desktop'"); $icoarr = array('uid' => $_G['uid'], 'username' => $_G['username'], 'oid' => $item['id'], 'name' => $item['fname'], 'type' => $cloud['type'], 'flag' => $cloud['bz'], 'dateline' => $_G['timestamp'], 'pfid' => $pfid, 'size' => 0, 'gid' => 0, 'ext' => '', 'isdelete' => 0); if ($icoid = DB::result_first("select icoid from %t where oid=%d and uid=%d and type=%s", array('icos', $item['id'], $_G['uid'], $icoarr['type']))) { C::t('icos')->update($icoid, $icoarr); $icoarr['oid'] = $item['fid']; $icoarr['icoid'] = $icoid; } elseif ($icoarr['icoid'] = DB::insert('icos', $icoarr, 1, 1)) { addtoconfig($icoarr); } else { echo json_encode(array('error' => '添加到桌面失败')); exit; } $icoarr['oid'] = $item['fid']; $icoarr['bz'] = ''; $icoarr['img'] = $item['ficon']; $icoarr['fsize'] = formatsize($icoarr['size']); $icoarr['ftype'] = getFileTypeName($icoarr['type'], $icoarr['ext']); $icoarr['fdateline'] = dgmdate($icoarr['dateline']); echo json_encode($icoarr); exit; } include template("addcloud");
public function fetch_by_icoid($icoid) { //返回一条数据同时加载资源表数据 global $_G; $icoid = intval($icoid); $data = $icodata = $soucedata = array(); //if($force_from_db || ($data = $this->fetch_cache('parse_'.$icoid)) === false) { if (!($icodata = self::fetch($icoid))) { return array(); } if (!($sourcedata = self::getsourcedata($icodata['type'], $icodata['oid']))) { return array(); } if ($icodata['type'] == 'pan' || $icodata['type'] == 'storage') { $icodata['oid'] = $sourcedata['fid']; } $data = array_merge($sourcedata, $icodata); $data['size'] = isset($sourcedata['filesize']) ? $sourcedata['filesize'] : 0; if ($data['type'] == 'image') { $data['img'] = DZZSCRIPT . '?mod=io&op=thumbnail&width=256&height=256&path=' . dzzencode($data['icoid']); $data['url'] = DZZSCRIPT . '?mod=io&op=thumbnail&width=1440&height=900&original=1&path=' . dzzencode($data['icoid']); } elseif ($data['type'] == 'attach' || $data['type'] == 'document') { $data['img'] = geticonfromext($data['ext'], $data['type']); $data['url'] = DZZSCRIPT . '?mod=io&op=getStream&path=' . dzzencode($data['icoid']); } elseif ($data['type'] == 'shortcut') { $data['img'] = isset($data['tdata']['img']) ? $data['tdata']['img'] : geticonfromext($data['tdata']['ext'], $data['tdata']['type']); $data['ttype'] = $data['tdata']['type']; $data['ext'] = $data['tdata']['ext']; } elseif ($data['type'] == 'dzzdoc') { $data['url'] = DZZSCRIPT . '?mod=document&icoid=' . dzzencode($data['icoid']); $data['img'] = isset($data['icon']) ? $data['icon'] : geticonfromext($data['ext'], $data['type']); } else { $data['img'] = isset($data['icon']) ? $data['icon'] : geticonfromext($data['ext'], $data['type']); } if (empty($data['name'])) { $data['name'] = $data['title']; } $data['url'] = isset($data['url']) ? replace_canshu($data['url']) : ''; $data['ftype'] = getFileTypeName($data['type'], $data['ext']); $data['fdateline'] = dgmdate($data['dateline']); $data['fsize'] = formatsize($data['size']); $data['path'] = $data['icoid']; $data['bz'] = ''; if ($data['remote'] > 1) { $data['rbz'] = io_remote::getBzByRemoteid($data['remote']); } //增加安全相关的路径 $data['dpath'] = dzzencode($data['path']); $data['apath'] = $data['aid'] ? dzzencode('attach::' . $data['aid']) : $data['dpath']; //$data['like']=C::t('icos_like')->fetch_by_icoid_uid($icoid,$data['uid']); //获取sperm if (!$data['sperm']) { $data['sperm'] = perm_FileSPerm::typePower($data['type'], $data['ext']); } //if(!empty($data)) $this->store_cache('parse_'.$icoid, $data); //} return $data; }
function _formatMeta($meta, $arr) { global $_G, $documentexts, $imageexts; $icosdata = array(); //print_r($meta);print_r($arr); if (strrpos($meta['key'], '/') == strlen($meta['key']) - 1) { $meta['isdir'] = true; } if ($meta['isdir']) { if (!$meta['key']) { if ($this->bucket) { $name = $this->bucket; $pfid = 0; $pf = ''; $flag = ''; } elseif ($arr['bucket']) { $name = $arr['bucket']; $pfid = md5($arr['bz']); $pf = ''; $flag = ''; } else { $name = $this->_rootname; $pfid = 0; $pf = ''; $flag = self::BZ; } if ($arr['bucket']) { $arr['bucket'] .= '/'; } } else { if ($arr['bucket']) { $arr['bucket'] .= '/'; } $namearr = explode('/', $meta['key']); $name = $namearr[count($namearr) - 2]; $pf = ''; for ($i = 0; $i < count($namearr) - 2; $i++) { $pf .= $namearr[$i] . '/'; } $pf = $arr['bucket'] . $pf; $pfid = md5($arr['bz'] . $pf); $flag = ''; } //print_r($namearr); $icoarr = array('icoid' => md5($arr['bz'] . $arr['bucket'] . $meta['key']), 'path' => $arr['bz'] . $arr['bucket'] . $meta['key'], 'dpath' => dzzencode($arr['bz'] . $arr['bucket'] . $meta['key']), 'bz' => $arr['bz'], 'gid' => 0, 'name' => $name, 'username' => $_G['username'], 'uid' => $_G['uid'], 'oid' => md5($arr['bz'] . $arr['bucket'] . $meta['key']), 'img' => 'dzz/images/default/system/folder.png', 'type' => 'folder', 'ext' => '', 'pfid' => $pfid, 'ppath' => $arr['bz'] . $pf, 'size' => 0, 'dateline' => strtotime($meta['last_modified']), 'flag' => $flag, 'nextMarker' => $meta['nextMarker'], 'IsTruncated' => $meta['IsTruncated']); $icoarr['fsize'] = formatsize($icoarr['size']); $icoarr['ftype'] = getFileTypeName($icoarr['type'], $icoarr['ext']); $icoarr['fdateline'] = dgmdate($icoarr['dateline']); $icosdata = $icoarr; //print_r($icosdata); //exit($meta['Key']); } else { if ($arr['bucket']) { $arr['bucket'] .= '/'; } $namearr = explode('/', $meta['key']); $name = $namearr[count($namearr) - 1]; $pf = ''; for ($i = 0; $i < count($namearr) - 1; $i++) { $pf .= $namearr[$i] . '/'; } $ext = strtoupper(substr(strrchr($meta['key'], '.'), 1)); if (in_array($ext, $imageexts)) { $type = 'image'; } elseif (in_array($ext, $documentexts)) { $type = 'document'; } else { $type = 'attach'; } if ($type == 'image') { $img = $_G['siteurl'] . DZZSCRIPT . '?mod=io&op=thumbnail&width=256&height=256&path=' . dzzencode($arr['bz'] . $arr['bucket'] . $meta['key']); $url = $_G['siteurl'] . DZZSCRIPT . '?mod=io&op=thumbnail&width=1440&height=900&path=' . dzzencode($arr['bz'] . $arr['bucket'] . $meta['key']); } else { $img = geticonfromext($ext, $type); $url = $_G['siteurl'] . DZZSCRIPT . '?mod=io&op=getStream&path=' . dzzencode($arr['bz'] . $arr['bucket'] . $meta['key']); } $icoarr = array('icoid' => md5($arr['bz'] . $arr['bucket'] . $meta['key']), 'path' => $arr['bz'] . $arr['bucket'] . $meta['key'], 'dpath' => dzzencode($arr['bz'] . $arr['bucket'] . $meta['key']), 'bz' => $arr['bz'], 'gid' => 0, 'name' => $name, 'username' => $_G['username'], 'uid' => $_G['uid'], 'oid' => md5($arr['bz'] . $arr['bucket'] . $meta['key']), 'img' => $img, 'url' => $url, 'type' => $type, 'ext' => strtolower($ext), 'pfid' => md5($arr['bz'] . $arr['bucket'] . $pf), 'ppath' => $arr['bz'] . $arr['bucket'] . $pf, 'size' => $meta['size'], 'dateline' => strtotime($meta['last_modified']), 'flag' => ''); $icoarr['fsize'] = formatsize($icoarr['size']); $icoarr['ftype'] = getFileTypeName($icoarr['type'], $icoarr['ext']); $icoarr['fdateline'] = dgmdate($icoarr['dateline']); $icosdata = $icoarr; } return $icosdata; }
public function linktourl($link, $pfid) { global $_G; $fid = $pfid; $gid = DB::result_first("select gid from %t where fid =%d", array('folder', $pfid)); $clink = array(); if (!($clink = DB::fetch_first("select * from " . DB::table("cai_link") . " where url='{$link}'"))) { $arr = array(); require_once dzz_libfile('class/caiji'); $caiji = new caiji($link); $arr['title'] = $caiji->getTitle(); $arr['description'] = $caiji->getDescription(); if ($arr['title']) { $clink = array('url' => $link, 'img' => '', 'desc' => $arr['description'], 'title' => $arr['title'], 'copys' => 0, 'dateline' => $_G['timestamp']); $clink['cid'] = DB::insert('cai_link', $clink, 1); } } $parseurl = parse_url($link); $clink['title'] = self::getFileName($clink['title'] ? $clink['title'] : $parseurl['host'], $fid); $icondata = getUrlIcon($link); $sourcedata = array('uid' => $_G['uid'], 'username' => $_G['username'], 'url' => $link, 'desc' => $clink['desc'], 'title' => $clink['title'], 'cid' => $clink['cid'], 'did' => $icondata['did'], 'icon' => $icondata['img'], 'dateline' => $_G['timestamp'], 'gid' => $gid, 'ext' => $icondata['ext']); if ($sourcedata['lid'] = DB::insert('source_link', $sourcedata, 1)) { if ($sourcedata['did']) { C::t('icon')->update_copys_by_did($sourcedata['did'], 1); } if ($sourcedata['cid']) { C::t('cai_link')->update($clink['cid'], array('copys' => $clink['copys'] + 1)); } $icoarr = array('uid' => $_G['uid'], 'username' => $_G['username'], 'oid' => $sourcedata['lid'], 'name' => $sourcedata['title'], 'flag' => '', 'type' => 'link', 'dateline' => $_G['timestamp'], 'pfid' => $fid, 'opuid' => $_G['uid'], 'gid' => $gid, 'ext' => $sourcedata['ext'], 'size' => 0); if ($icoarr['icoid'] = DB::insert('icos', $icoarr, 1)) { //$icoarr=array_merge($sourcedata,$icoarr); $icoarr['url'] = $sourcedata['url']; $icoarr['img'] = $sourcedata['icon']; $icoarr['bz'] = ''; $icoarr['path'] = $icoarr['icoid']; $icoarr['dpath'] = dzzencode($icoarr['icoid']); addtoconfig($icoarr); $icoarr['container'] = $container; $icoarr['fsize'] = formatsize($icoarr['size']); $icoarr['ftype'] = getFileTypeName($icoarr['type'], $icoarr['ext']); $icoarr['fdateline'] = dgmdate($icoarr['dateline']); //if($gid) C::t('group_log')->setLog($gid,$_G['uid'],'addlink',lang('message','xiezuo_log_addlink',array('username'=>$_G['username'],'position'=>getPositionName($fid),'name'=>$icoarr['name']))); } else { C::t('soouce_link')->delete($sourcedata['lid']); } } if ($icoarr['icoid']) { return $icoarr; } else { return array('error' => lang('message', 'linktourl_error')); } }