|
@@ -8,53 +8,34 @@ class Info
|
|
{
|
|
{
|
|
private function table($type)
|
|
private function table($type)
|
|
{
|
|
{
|
|
- $table = Dever::db('community/info')->config['type_name'][$type];
|
|
|
|
|
|
+ $table = Dever::db('community/info')->config['set']['table_name'][$type];
|
|
return $table;
|
|
return $table;
|
|
}
|
|
}
|
|
|
|
|
|
- # 获取列表
|
|
|
|
- public function get($id, $type, $uid = false)
|
|
|
|
|
|
+ public function getData($method = 'getAll', $uid, $cate_id = false, $type = false, $type_id = false, $total = false, $id = false)
|
|
{
|
|
{
|
|
|
|
+ # 获取分类下的帖子
|
|
|
|
+ $where['cate_id'] = $cate_id;
|
|
$where['type'] = $type;
|
|
$where['type'] = $type;
|
|
- $where['type_id'] = $id;
|
|
|
|
- $table = $this->table($type);
|
|
|
|
- $data = Dever::db($table)->getAll($where);
|
|
|
|
-
|
|
|
|
- if ($data) {
|
|
|
|
- foreach ($data as $k => $v) {
|
|
|
|
- $user = Dever::load('passport/api')->info($v['uid']);
|
|
|
|
- $data[$k]['time'] = Dever::mdate($v['cdate'], 2);
|
|
|
|
- $data[$k]['username'] = $user['username'];
|
|
|
|
- $data[$k]['avatar'] = $user['avatar'];
|
|
|
|
- $data[$k]['cdate_time'] = date('Y-m-d H:i:s', $v['cdate']);
|
|
|
|
-
|
|
|
|
- # 检查是否点赞
|
|
|
|
- if ($uid > 0) {
|
|
|
|
- $data[$k]['up'] = Dever::load('act/lib/like')->get($uid, $v['id'], 11);
|
|
|
|
- } else {
|
|
|
|
- $data[$k]['up'] = 0;
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
- $data[$k]['content'] = $this->getContent($v['content']);
|
|
|
|
|
|
+ $where['type_id'] = $type_id;
|
|
|
|
+ if ($id > 0) {
|
|
|
|
+ $where['noid'] = $id;
|
|
|
|
+ }
|
|
|
|
+ $data['info'] = Dever::db('community/info')->$method($where);
|
|
|
|
+ if ($total) {
|
|
|
|
+ if ($method == 'getAll') {
|
|
|
|
+ $data['total'] = Dever::total();
|
|
|
|
+ } else {
|
|
|
|
+ $data['total'] = Dever::db('community/info')->getTotal($where);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
- return $data;
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
- # 获取当前用户的信息列表
|
|
|
|
- public function getList($uid)
|
|
|
|
- {
|
|
|
|
- $where['uid'] = $uid;
|
|
|
|
- $where['type'] = '1,2,3';
|
|
|
|
- $info = Dever::db('community/comment')->getAll($where);
|
|
|
|
-
|
|
|
|
- if ($info) {
|
|
|
|
- foreach ($info as $k => $v) {
|
|
|
|
- $info[$k]['content'] = $this->getContent($v['content']);
|
|
|
|
|
|
+ if ($data['info']) {
|
|
|
|
+ foreach ($data['info'] as $k => $v) {
|
|
|
|
+ $data['info'][$k] = $this->one($uid, $v);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
- return $info;
|
|
|
|
|
|
+ return $data;
|
|
}
|
|
}
|
|
|
|
|
|
public function content($content, $id)
|
|
public function content($content, $id)
|
|
@@ -75,14 +56,25 @@ class Info
|
|
}
|
|
}
|
|
|
|
|
|
# 发表信息
|
|
# 发表信息
|
|
- public function submit($uid, $id, $type, $content)
|
|
|
|
|
|
+ public function submit($uid, $cate_id, $id, $type, $pic, $content, $to_id, $to_uid)
|
|
{
|
|
{
|
|
$where['uid'] = $uid;
|
|
$where['uid'] = $uid;
|
|
|
|
+ $where['cate_id'] = $cate_id;
|
|
$where['type_id'] = $id;
|
|
$where['type_id'] = $id;
|
|
$where['type'] = $type;
|
|
$where['type'] = $type;
|
|
- $where['content'] = base64_encode($content) . '_b64';
|
|
|
|
- $table = $this->table($type);
|
|
|
|
- $info = Dever::db($table)->one($where);
|
|
|
|
|
|
+ $where['content'] = $content;
|
|
|
|
+ $table = 'community/info';
|
|
|
|
+ //$info = Dever::db($table)->one($where);
|
|
|
|
+ $info = false;
|
|
|
|
+ if ($pic) {
|
|
|
|
+ $where['pic'] = $pic;
|
|
|
|
+ }
|
|
|
|
+ if ($to_id) {
|
|
|
|
+ $where['to_id'] = $to_id;
|
|
|
|
+ }
|
|
|
|
+ if ($to_uid) {
|
|
|
|
+ $where['to_uid'] = $to_uid;
|
|
|
|
+ }
|
|
$data_table = $this->table($type);
|
|
$data_table = $this->table($type);
|
|
if (!$info) {
|
|
if (!$info) {
|
|
$data = Dever::db($data_table)->one($id);
|
|
$data = Dever::db($data_table)->one($id);
|
|
@@ -91,19 +83,65 @@ class Info
|
|
}
|
|
}
|
|
|
|
|
|
Dever::db($table)->insert($where);
|
|
Dever::db($table)->insert($where);
|
|
- }
|
|
|
|
- Dever::score($uid, 'submit_commit', '发表评论');
|
|
|
|
|
|
|
|
- # 更新评论数
|
|
|
|
- $where = array();
|
|
|
|
- $where['data_id'] = $id;
|
|
|
|
- $where['type'] = $type;
|
|
|
|
- $where['state'] = 1;
|
|
|
|
- $total = Dever::db($table)->total($where);
|
|
|
|
- //Dever::db($data_table)->update(array('where_id' => $id, 'num_comment' => $total));
|
|
|
|
|
|
+ Dever::score($uid, 'submit_community', '发表帖子');
|
|
|
|
|
|
-
|
|
|
|
|
|
+ # 更新评论数
|
|
|
|
+ $where = array();
|
|
|
|
+ $where['type_id'] = $id;
|
|
|
|
+ $where['type'] = $type;
|
|
|
|
+ $where['state'] = 1;
|
|
|
|
+ $total = Dever::db($table)->total($where);
|
|
|
|
+ Dever::db($data_table)->update(array('where_id' => $id, 'num_comment' => $total));
|
|
|
|
+ }
|
|
|
|
|
|
return true;
|
|
return true;
|
|
}
|
|
}
|
|
|
|
+
|
|
|
|
+ private function one($uid, $info)
|
|
|
|
+ {
|
|
|
|
+ $info['pic'] = explode(',', $info['pic']);
|
|
|
|
+ $info['user'] = Dever::load('passport/api')->info($info['uid']);
|
|
|
|
+ $info['cdate_string'] = Dever::mdate($info['cdate'], 2);
|
|
|
|
+
|
|
|
|
+ # 点赞数
|
|
|
|
+ $info['num_up'] = $info['num_up'] + 0;
|
|
|
|
+
|
|
|
|
+ # 反对数
|
|
|
|
+ $info['num_oppose'] = $info['num_oppose'] + 0;
|
|
|
|
+
|
|
|
|
+ $info['is_up'] = $info['is_oppose'] = false;
|
|
|
|
+
|
|
|
|
+ if ($uid) {
|
|
|
|
+ # 是否点赞
|
|
|
|
+ $info['is_up'] = Dever::load('community/lib/up')->get($uid, $info['id'], 20);
|
|
|
|
+
|
|
|
|
+ # 是否反对
|
|
|
|
+ $info['is_oppose'] = Dever::load('community/lib/oppose')->get($uid, $info['id'], 20);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ # 评论数
|
|
|
|
+ $info['num_comment'] = $info['num_comment'] + 0;
|
|
|
|
+
|
|
|
|
+ # 获取引用的数据
|
|
|
|
+ $info['to_user'] = array();
|
|
|
|
+ if ($info['to_uid']) {
|
|
|
|
+ $info['to_user'] = Dever::load('passport/api')->info($info['to_uid']);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ # 获取热门的子信息
|
|
|
|
+ $info['child'] = array();
|
|
|
|
+ if ($info['type'] < 20) {
|
|
|
|
+ $child = $this->getData('getHot', $uid, $info['cate_id'], 20, $info['id'], true, 1);
|
|
|
|
+ if ($child && $child['info']) {
|
|
|
|
+ $info['child'] = $child['info'];
|
|
|
|
+ $info['child_total'] = $child['total'];
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ # 获取最新的服务器时间
|
|
|
|
+ $info['server_time'] = time();
|
|
|
|
+
|
|
|
|
+ return $info;
|
|
|
|
+ }
|
|
}
|
|
}
|