InfoController.class.php
1.29 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
<?php
/**
* InfoController.class.php
* 同事圈话题详情
* Date:2018.6.27
*/
namespace Api\Controller\Topic;
use Common\Common\Constant;
use Common\Service\CircleService;
class InfoController extends \Api\Controller\AbstractController
{
protected $_require_login = false;
/**
* 主方法
* @return boolean
*/
public function Index_get()
{
$cid = I('get.id');
// 话题ID不存在
if (!$cid) {
E('_EMPTY_CIRCLE_ID');
}
// 实例化话题表
$service = new CircleService();
// 获取话题详情
$info = $service->get_by_conds(
array(
'id' => $cid,
'pid' => Constant::CIRCLE_PID,
'type' => Constant::CIRCLE_TOPIC_TYPE,
)
);
// 如果话题详情不存在
if (empty($info)) {
E('_EMPTY_CIRCLE_INFO');
}
// 如果不是发布人员则验证权限
if($this->uid!=$info['uid']){
if(!$this->is_look_topic_auth($this->_login->user,$info)){
E('_ERR_NOT_LOOK_TOPIC_AUTH');
}
}
// 获取详情格式化后的数据
$this->_result = $service->format_info_topic($info, $this->uid);
return true;
}
}