index.php 5.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157
  1. <?php
  2. /**
  3. * cms首页
  4. *
  5. *
  6. *
  7. */
  8. use bonus\activity_bonus;
  9. defined('InShopNC') or exit('Access Invalid!');
  10. require_once(BASE_ROOT_PATH . '/helper/goods_helper.php');
  11. require_once(BASE_ROOT_PATH . '/helper/special_helper.php');
  12. require_once(BASE_ROOT_PATH . '/helper/index_tab.php');
  13. require_once(BASE_ROOT_PATH . '/helper/util_helper.php');
  14. require_once(BASE_ROOT_PATH . '/helper/third_author/wxauthor.php');
  15. require_once(BASE_ROOT_PATH . '/mobile/control/special.php');
  16. require_once(BASE_ROOT_PATH . '/helper/third_author/wxauthor.php');
  17. require_once(BASE_ROOT_PATH . '/helper/session_helper.php');
  18. require_once(BASE_ROOT_PATH . '/helper/url_helper.php');
  19. require_once(BASE_ROOT_PATH . '/helper/room/tpl_group_home.php');
  20. require_once(BASE_ROOT_PATH . '/helper/room/tpl_chatwo_home.php');
  21. class indexControl extends specialControl
  22. {
  23. const HomeSpecialID = 0;
  24. public function __construct()
  25. {
  26. parent::__construct();
  27. }
  28. public function tabsOp()
  29. {
  30. if(session_helper::client_type() == session_helper::device_mini) {
  31. $tabs = [];
  32. $tabs[] = ['special_id' => 1383,'name' => '推荐'];
  33. $tabs[] = ['special_id' => 1122,'name' => '品牌'];
  34. $tabs[] = ['special_id' => 1025,'name' => '护肤'];
  35. $tabs[] = ['special_id' => 1035,'name' => '彩妆'];
  36. $tabs[] = ['special_id' => 1036,'name' => '洗护'];
  37. $tabs[] = ['special_id' => 1019,'name' => '男士'];
  38. }
  39. else {
  40. $tabs = index_tab::instance()->tabs();
  41. }
  42. $daliy_bonus = activity_bonus::daliy_bonus_url();
  43. return self::outsuccess(array('tabs' => $tabs,'daliy_bonus' =>$daliy_bonus));
  44. }
  45. public function splashOp()
  46. {
  47. $sig = $_GET['sig'];
  48. $ret = $this->pub_special($this->splash_id());
  49. if(empty($ret['special_list'])) {
  50. return self::outsuccess(null);
  51. }
  52. $block = $ret['special_list'][0];
  53. if(empty($block) || empty($block['items'])) {
  54. return self::outsuccess(null);
  55. }
  56. $image = $block['items'][0]['image'];
  57. if(empty($sig) || $sig != md5($image)) {
  58. return self::outsuccess(array('sig' => md5($image),'url' => $image));
  59. } else {
  60. return self::outsuccess(null);
  61. }
  62. }
  63. private function splash_id()
  64. {
  65. global $config;
  66. $special_id = $config['splash_page']['special_id'];
  67. return $special_id;
  68. }
  69. public function inoherbOp()
  70. {
  71. return self::outsuccess(['direct_uri' => BASE_SITE_URL . '/hfive/inoherb/index.html?2'],"redirect");
  72. }
  73. /**
  74. * 会话详情页 talk_type:room/chatwo talk_id:room_id/user
  75. * 回话详情@ app打开
  76. * 群详情@ 微信扫码进入
  77. */
  78. public function room_indexOp()
  79. {
  80. $talk_type = trim($_GET['talk_type']);
  81. $talk_id = intval($_GET['talk_id']);
  82. $relay_id = intval($_GET['relay_id']);
  83. if($talk_id <= 0) {
  84. return self::outerr(errcode::ErrParamter);
  85. }
  86. $is_app = intval(session_helper::isapp());
  87. $from_wechat = util::from_wechat();
  88. $user = session_helper::memberid();
  89. $param = ["talk_type" => $talk_type, "talk_id" => $talk_id , "member_id" => $user,"room_name"=>"","room_avatar"=>"","relay_id"=>$relay_id,"is_app"=>$is_app];
  90. //app内打开请求授权登录
  91. if(($is_app || !$from_wechat) && $user<= 0)
  92. {
  93. if($talk_type == "room") {
  94. return self::outsuccess(['tpl' => null,"param" => $param],'talk/homepage_room');
  95. }elseif($talk_type == 'chatwo') {
  96. return self::outsuccess(['tpl' => null,"param" => $param],'talk/homepage_chatwo');
  97. }else {
  98. }
  99. }
  100. //微信内打开使用授权判断
  101. if(session_helper::need_wechat_author()) {
  102. $author = new thrid_author\wxauthor();
  103. $url = url_helper::room_detail_url($talk_type,$talk_id,$relay_id);
  104. $url = $author->enter($url);
  105. return self::outsuccess(['direct_uri' => $url],"redirect");
  106. }
  107. if($talk_type == "room")
  108. {
  109. $room_id = $talk_id;
  110. try {
  111. $tpl = new room\tpl_group_home($user,$talk_id,$relay_id);
  112. $param["room_name"] = $tpl->get_room_info()->name();
  113. $param["room_avatar"] = $tpl->get_room_info()->avatar();
  114. return self::outsuccess(['tpl' => $tpl,"param" => $param],'talk/homepage_room');
  115. } catch (Exception $ex) {
  116. Log::record("member_talk.room_detail error: room_id={$room_id} user={$user}",Log::ERR);
  117. return self::outerr(errcode::ErrParamter);
  118. }
  119. }
  120. elseif($talk_type == 'chatwo')
  121. {
  122. $other = $talk_id;
  123. try {
  124. $tpl = new room\tpl_chatwo_home($user,$other);
  125. return self::outsuccess(['tpl' => $tpl,"param"=>$param],'talk/homepage_chatwo');
  126. } catch (Exception $ex) {
  127. Log::record("member_talk.room_detail error: other={$other} user={$user}",Log::ERR);
  128. return self::outerr(errcode::ErrParamter);
  129. }
  130. }
  131. else
  132. {
  133. return self::outerr(errcode::ErrParamter);
  134. }
  135. }
  136. }