_table = 'common_block_item_data'; $this->_pk = 'dataid'; parent::__construct(); } public function fetch_all_by_bid($bid, $isverified = 1, $start = 0, $limit = 0, $bannedids = array(), $format = true) { $data = array(); if(($bid = dintval($bid, true))) { $addsql = $bannedids = dintval($bannedids, true) ? ' AND id NOT IN ('.dimplode($bannedids).')' : ''; $query = DB::query('SELECT * FROM %t WHERE '.DB::field('bid', $bid).' AND isverified=%d'.$addsql.' ORDER BY stickgrade DESC, displayorder DESC, verifiedtime DESC, dataid DESC '.DB::limit($start, $limit), array($this->_table, $isverified)); while($value = DB::fetch($query)) { if($format) { $value['fields'] = unserialize($value['fields']); $value['fields']['timestamp'] = $value['fields']['dateline']; $value['fields']['dateline'] = dgmdate($value['fields']['dateline']); $value['pic'] = $value['pic'] !== STATICURL.'image/common/nophoto.gif' ? $value['pic'] : ''; if($value['pic'] && $value['picflag'] == '1') { $value['pic'] = getglobal('setting/attachurl').$value['pic']; } elseif ($value['picflag'] == '2') { $value['pic'] = getglobal('setting/ftp/attachurl').$value['pic']; } $value['dateline'] = dgmdate($value['dateline'], 'u'); $value['verifiedtime'] = dgmdate($value['verifiedtime'], 'u'); } $data[$value['id']] = $value; } } return $data; } public function count_by_bid($bid, $isverified = 1) { return ($bid = dintval($bid, true)) ? DB::result_first('SELECT COUNT(*) FROM %t WHERE '.DB::field('bid', $bid).' AND isverified=%d', array($this->_table, $isverified)) : 0; } public function delete_by_bid($bid) { if(($bid = dintval($bid, true))) { DB::delete($this->_table, DB::field('bid', $bid)); } } public function delete_by_dataid_bid($dataids, $bid) { if(($dataids = dintval($dataids, true)) && ($dataids = DB::fetch_all('SELECT dataid FROM %t WHERE dataid IN (%n) AND bid=%d', array($this->_table, $dataids, $bid), $this->_pk))) { $this->delete(array_keys($dataids)); } } public function fetch_by_bid_id_idtype($bid, $id, $idtype) { return $bid && $id && $idtype ? DB::fetch_first('SELECT * FROM %t WHERE bid=%d AND id=%d AND idtype=%s', array($this->_table, $bid, $id, $idtype)) : array(); } } ?>