public function delete_by_uid($uid) { $user = parent::fetch($uid); if (self::checkfounder($user)) { //创始人不能删除 return false; } if (parent::delete($uid)) { C::t('user_field')->delete($uid); C::t('user_profile1')->delete($uid); C::t('user_status')->delete($uid); C::t('organization_user')->delete_by_uid($uid, 0); DB::delete('user_thame', "uid='{$uid}'"); //删除用户主题 DB::delete('user_playlist', "uid='{$uid}'"); //删除播放列表 //删除用户文件 foreach (DB::fetch_all("select fid from %t where uid=%d and gid<1 ", array('folder', $uid)) as $value) { C::t('folder')->delete_by_fid($value['fid'], true); } //删除用户云链接 foreach (DB::fetch_all("select * from %t where 1", array('connect')) as $cloud) { if ($cloud['dname']) { C::t($cloud['dname'])->delete_by_uid($uid); } } wx_deleteUser($uid); return true; } return false; }
function fetch_by_jobid($jobid) { include_once libfile('function/organization'); $data = parent::fetch($jobid); $data['orgtree'] = getTreeByOrgid($data['orgid']); return $data; }
public function setUnrun_by_aid($aid, $r) { //设置允许运行,如果文件在本地同时修改实际文件名,增加无法运行的后缀; $data = parent::fetch($aid); if ($data['remote'] == 0 || $data['remote'] == 1) { //文件在本地,修改文件名 if ($r > 0) { $earr = explode('.', $data['attachment']); foreach ($earr as $key => $ext) { if (in_array(strtolower($ext), array($data['filetype'], 'dzz'))) { unset($earr[$key]); } } $tattachment = implode('.', $earr) . '.dzz'; if ($is_file(getglobal('setting/attachdir') . './' . $data['attachment']) && @rename(getglobal('setting/attachdir') . './' . $data['attachment'], getglobal('setting/attachdir') . './' . $tattachment)) { return parent::update($aid, array('unrun' => $r, 'attachment' => $tattachment)); } } else { $earr = explode('.', $data['attachment']); foreach ($earr as $key => $ext) { if (in_array(strtolower($ext), array($data['filetype'], 'dzz'))) { unset($earr[$key]); } } $tattachment = implode('.', $earr) . '.' . $data['filetype']; if ($is_file(getglobal('setting/attachdir') . './' . $data['attachment']) && @rename(getglobal('setting/attachdir') . './' . $data['attachment'], getglobal('setting/attachdir') . './' . $tattachment)) { return parent::update($aid, array('unrun' => $r, 'attachment' => $tattachment)); } } } return false; }
public function delete_by_itemid($itemid) { $data = parent::fetch($itemid); if ($data['aid']) { C::t('attachment')->delete_by_aid($data['aid']); } return parent::delete($itemid); }
public function delete_by_picid($picid) { if (!($data = parent::fetch($picid))) { return 0; } $ret = 0; if ($ret = parent::delete($picid)) { if ($data['aid']) { C::t('attachment')->delete_by_aid($data['aid']); } } return $ret; }
public function fetch($id, $force_from_db = false, $fetch_archive = 0) { $data = array(); if (!empty($id)) { if ($fetch_archive < 2) { $data = parent::fetch($id, $force_from_db); if ($fetch_archive && empty($data)) { $data = C::t($this->_table . '_archive')->fetch($id); } } else { $data = C::t($this->_table . '_archive')->fetch($id); } } return $data; }
public function fetch($sid, $ip = false, $uid = false) { if (empty($sid)) { return array(); } $this->checkpk(); $session = parent::fetch($sid); if ($session && $ip !== false && $ip != "{$session['ip1']}.{$session['ip2']}.{$session['ip3']}.{$session['ip4']}") { $session = array(); } if ($session && $uid !== false && $uid != $session['uid']) { $session = array(); } return $session; }
public function delete_by_catid($catid) { //同时删除所有下级分类,分类下的信息失去分类,如果是唯一的顶级分类,不允许删除 //判断是否为唯一的顶级分类; if ($data = parent::fetch($catid) && $data['pid'] == 0) { if (DB::result_first("select COUNT(*) from %t where pid='0'", array($this->_table)) < 2) { return 0; } } $catids = self::getSonByCatid($catid); $ret = 0; if ($catids) { $ret = parent::delete($catids); DB::update('news', array('catid' => 0), "catid IN (" . dimplode($catids) . ")"); } return $ret; }
public function fetch_by_cutid($cutid) { //返回一条数据同时加载附件表数据 $cutid = intval($cutid); if (!($cut = parent::fetch($cutid))) { return array(); } $data = array(); //print_r($cut); if ($cut['data']) { $data = unserialize($cut['data']); } else { $data = self::getDataByPath($cut['path']); self::update($cutid, array('data' => serialize($data))); } //print_r($data); return array('tdata' => $data); }
public function update_by_tpid($tpid, $setarr) { if (!($data = parent::fetch($tpid))) { return 0; } if (isset($setarr['body'])) { //含有body字段,处理附件 $oaids = $data['attachs'] ? explode(',', $data['attachs']) : array(); $attachs = self::getAidsByMessage($setarr['body']); $aids = $attachs ? implode(',', $attachs) : array(); if ($oaids) { C::t('attachment')->addcopy_by_aid($oaids, -1); } if ($aids) { C::t('attachment')->addcopy_by_aid($aids); } $setting['attachs'] = $attachs ? implode(',', $attachs) : ''; } return parent::update($tpid, $setarr); }
public function update_by_cid($cid, $arr) { $data = parent::fetch($cid); if ($return = parent::update($cid, $arr)) { if ($arr['aid'] != $data['aid']) { C::t('attachment')->addcopy_by_aid($arr['aid']); $aids = C::t('corpus_setting')->getCoverAids(); if (!in_array($data['aid'], $aids)) { //用户自定义的封面删除 C::t('attachment')->delete_by_aid($data['aid']); } } } return $return; }
public function getParentByFid($fid) { static $fids = array(); if ($class = parent::fetch($fid)) { $fids[] = $fid; if ($class['pfid'] > 0) { self::getParentByFid($class['pfid']); } } return $fids; }
public function fetch_by_path($path) { $sid = self::getSid($path); return parent::fetch($sid); }
public function getPathByOrgid($orgid) { $ret = array(); if ($org = parent::fetch($orgid)) { $ids = explode('-', str_replace('_', '', $org['pathkey'])); $arr = parent::fetch_all($ids); foreach ($ids as $id) { if ($arr[$id]) { $ret[] = $arr[$id]['orgname']; } } } return $ret ? implode('-', $ret) : ''; }
public function delete($revid) { $data = parent::fetch($revid); $attachs = array(); if ($data['attachs']) { $attachs = explode(',', $data['attachs']); } $attachs[] = $data['aid']; foreach ($attachs as $aid) { C::t('attachment')->delete_by_aid($aid); } return parent::delete($revid); }
public function update_by_newid($arr) { $data = parent::fetch($arr['newid']); if ($return = parent::update($arr['newid'], $arr)) { if ($data['attachs']) { $attachs = explode(',', $data['attachs']); C::t('attachment')->addcopy_by_aid($attachs, -1); } if (isset($arr['attachs'])) { $attachs = explode(',', $arr['attachs']); C::t('attachment')->addcopy_by_aid($attachs, 1); } //新添加的范围重新发送通知 $orgids = $uids = array(); if ($arr['orgids'] != $data['orgids']) { $norgids = $arr['orgids'] ? explode(',', $arr['orgids']) : array(); $oorgids = $data['orgids'] ? explode(',', $data['orgids']) : array(); $orgids = array_diff($norgids, $oorigids); } if ($arr['uids'] != $data['uids']) { $nuids = $arr['uids'] ? explode(',', $arr['uids']) : array(); $ouids = $data['uids'] ? explode(',', $data['uids']) : array(); $uids = array_diff($nuids, $ouids); } $new_uids = getUidsByOrgid($orgids, $uids); $appid = C::t('app_market')->fetch_appid_by_mod('{dzzscript}?mod=news', 0); foreach ($new_uids as $uid) { if ($uid != getglobal('uid')) { //发送通知 $notevars = array('from_id' => $appid, 'from_idtype' => 'app', 'url' => DZZSCRIPT . '?mod=news&op=view&newid=' . $data['newid'], 'author' => getglobal('username'), 'authorid' => getglobal('uid'), 'subject' => $data['subject'], 'dataline' => dgmdate(TIMESTAMP)); $action = 'news_publish'; $type = 'news_publish_' . $uid; dzz_notification::notification_add($uid, $type, $action, $notevars, 0, 'dzz/news'); } } } return $return; }
public function fetch_all_by_pcid($pcid, $limit, $iscount = false) { $limitsql = ''; if ($limit) { $limit = explode('-', $limit); if (count($limit) > 1) { $limitsql .= " limit " . intval($limit[0]) . "," . intval($limit[1]); } else { $limitsql .= " limit " . intval($limit[0]); } } if ($iscount) { return DB::result_first("select COUNT(*) from %t where pcid=%d ", array($this->_table, $pcid)); } $data = array(); foreach (DB::fetch_all("select * from %t where pcid=%d order by dateline DESC {$limitsql}", array($this->_table, $pcid)) as $value) { $value['message'] = dzzcode($value['message']); $value['dateline'] = dgmdate($value['dateline'], 'u'); $value['attachs'] = C::t('comment_attach')->fetch_all_by_cid($value['cid']); if ($value['rcid']) { $value['rpost'] = parent::fetch($value['rcid']); } $data[] = $value; } return $data; }