index.php 7.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222
  1. <?php
  2. /**
  3. * cms首页
  4. *
  5. *
  6. *
  7. */
  8. defined('InShopNC') or exit('Access Invalid!');
  9. require_once(BASE_ROOT_PATH . '/helper/goods_helper.php');
  10. require_once(BASE_ROOT_PATH . '/helper/special_helper.php');
  11. require_once(BASE_ROOT_PATH . '/helper/index_tab.php');
  12. require_once(BASE_ROOT_PATH . '/helper/util_helper.php');
  13. require_once(BASE_ROOT_PATH . '/helper/third_author/wxauthor.php');
  14. require_once(BASE_ROOT_PATH . '/mobile/control/special.php');
  15. require_once(BASE_ROOT_PATH . '/helper/third_author/wxauthor.php');
  16. require_once(BASE_ROOT_PATH . '/helper/session_helper.php');
  17. require_once(BASE_ROOT_PATH . '/helper/url_helper.php');
  18. class indexControl extends specialControl
  19. {
  20. const HomeSpecialID = 0;
  21. public function __construct()
  22. {
  23. parent::__construct();
  24. }
  25. public function tabsOp()
  26. {
  27. $tabs = index_tab::instance()->tabs();
  28. return self::outsuccess(array('tabs' => $tabs));
  29. }
  30. public function splashOp()
  31. {
  32. $sig = $_GET['sig'];
  33. $ret = $this->pub_special($this->splash_id());
  34. if(empty($ret['special_list'])) {
  35. return self::outsuccess(null);
  36. }
  37. $block = $ret['special_list'][0];
  38. if(empty($block) || empty($block['items'])) {
  39. return self::outsuccess(null);
  40. }
  41. $image = $block['items'][0]['image'];
  42. if(empty($sig) || $sig != md5($image)) {
  43. return self::outsuccess(array('sig' => md5($image),'url' => $image));
  44. } else {
  45. return self::outsuccess(null);
  46. }
  47. }
  48. private function splash_id()
  49. {
  50. global $config;
  51. $special_id = $config['splash_page']['special_id'];
  52. return $special_id;
  53. }
  54. public function inoherbOp()
  55. {
  56. return self::outsuccess(['direct_uri' => BASE_SITE_URL . '/hfive/inoherb/index.html?2'],"redirect");
  57. }
  58. public function memberOp()
  59. {
  60. $idol = $_GET['member_id'];
  61. if(empty($idol)) {
  62. return self::outerr(errcode::ErrParamter);
  63. }
  64. $memkey = urldecode($idol);
  65. $relay_id = intval(util::decrypt_data($memkey));
  66. if(session_helper::need_wechat_author()) {
  67. $author = new thrid_author\wxauthor();
  68. $url = BASE_SITE_URL . "/mobile/index.php?act=index&op=member&member_id={$idol}&relay_id={$relay_id}";
  69. $url = $author->enter($url);
  70. return self::outsuccess(['direct_uri' => $url],"redirect");
  71. }
  72. if(session_helper::logined() == false || wechat_helper::invite_bonus_tag())
  73. {
  74. if(wechat_helper::invite_bonus_tag()) {
  75. wechat_helper::clear_invite_bonus();
  76. }
  77. $type_sn = account_helper::invite_bonus($relay_id);
  78. if($type_sn == false) {
  79. return self::outerr(errcode::ErrBonus,"生成邀请红包失败.");
  80. }
  81. else {
  82. $ref_url = url_helper::bonus_open_url($type_sn);
  83. return self::outsuccess(['direct_uri' => $ref_url],"redirect");
  84. }
  85. }
  86. else {
  87. $myself = session_helper::memberid();
  88. $relateion = new \relation\mem_relation($myself);
  89. $isfriend = $relateion->is_follower($relay_id);
  90. return self::outsuccess(array('info' => new member_info($relay_id),'is_friend' => $isfriend),"member/index",'wap');
  91. }
  92. }
  93. public function room_inviteOp()
  94. {
  95. $room_id = intval($_GET['room_id']);
  96. $inviter = intval($_GET["inviter"]);
  97. // if(session_helper::need_wechat_author())
  98. // {
  99. // $_SESSION['client_type'] = 'wap';
  100. //// define('SERVER_TYPE','panda');
  101. // $author = new thrid_author\wxauthor();
  102. // $url = author_url::room_invite_url($room_id,$inviter);
  103. // $url = $author->enter($url);
  104. // Log::record("url:$url",Log::DEBUG);
  105. // return self::outsuccess(['direct_uri' => $url],"redirect");
  106. // }
  107. // $invitee = [session_helper::memberid()];
  108. $invitee = [39682];
  109. $result = room\factory_client::instance()->invite($room_id,$inviter,$invitee);
  110. if(util::from_wechat() == false){
  111. $_SESSION['client_type'] = 'ajax';
  112. if($result === false) {
  113. return self::outerr(errcode::ErrRoom,"进入失败");
  114. }
  115. else
  116. {
  117. $members = member_info::get_members($result['newusers']);
  118. $result['invitees'] = $members;
  119. $result["url"] = BASE_SITE_URL.'/mobile/index.php?act=member_talk&op=room_detail&talk_type=room&talk_id='.$result['room'];
  120. return self::outsuccess($result);
  121. }
  122. }else{
  123. //todo 修改成同时兼容APP请求返回打开回话和微信返回打开小程序
  124. $_SESSION['client_type'] = 'wap';
  125. return self::outsuccess(null,"talk/share_bonus");
  126. }
  127. }
  128. }
  129. class tpl_member
  130. {
  131. private $mOutput;
  132. private $mInfo;
  133. private $mIsFriend;
  134. private $mPred;
  135. public function __construct($output)
  136. {
  137. $this->mOutput = $output;
  138. $this->mInfo = $this->mOutput['info'];
  139. $this->mIsFriend = $this->mOutput['is_friend'];
  140. $userid = $this->mInfo->member_id();
  141. $this->mPred = new predeposit_helper($userid);
  142. }
  143. public function output_group()
  144. {
  145. $amount = $this->mPred->total_bonus();
  146. $amount = intval($amount * 100 + 0.5) / 100;
  147. $discount = $this->mInfo->discount_self();
  148. $discount = intval($discount * 100 + 0.5) / 100;
  149. $result = "<div class=\"cell\">
  150. <span class=\"cell_label\">红包余额</span><span class=\"cell_content\"><span class=\"letter_pro\">$amount</span>元</span>
  151. </div>
  152. <div class=\"cell\">
  153. <span class=\"cell_label\">累计节省</span><span class=\"cell_content\"><span class=\"letter_pro\">$discount</span>元</span>
  154. </div>";
  155. if(!session_helper::isapp()) {
  156. $from = '<div class="cell">
  157. <span class="cell_label">信息来源</span><span class="cell_content">来自扫一扫</span>
  158. </div>';
  159. $result .= $from;
  160. }
  161. return $result;
  162. }
  163. public function output_btn()
  164. {
  165. $is_friend = $this->mOutput['is_friend'];
  166. if(!session_helper::isapp())
  167. {
  168. $result = '<div class="submit">';
  169. if($is_friend) {
  170. $result .= '<p class="cell_label">你已经是他的粉丝了</p>';
  171. } else {
  172. $result .= '<button type="button" id="btn_add_friend" class="add_friend_btn">关注</button>';
  173. }
  174. $result .= '</div>';
  175. }
  176. else
  177. {
  178. $result = '<div class="submit">
  179. <button type="button" id="btn_thief_bonus" class="add_friend_btn">偷一点</button>
  180. </div>
  181. <div class="submit">
  182. <button type="button" id="btn_send_bonus" class="send_bonus_btn">发红包</button>
  183. </div>';
  184. if(!$is_friend) {
  185. $result .= '<div class="submit">';
  186. $result .= '<button type="button" id="btn_add_friend" class="add_friend_btn">关注</button>';
  187. $result .= '</div>';
  188. }
  189. }
  190. return $result;
  191. }
  192. }