index.php 7.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234
  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. $relay_id = intval($_GET["relay_id"]);
  97. if(session_helper::need_wechat_author())
  98. {
  99. $_SESSION['client_type'] = 'wap';
  100. $author = new thrid_author\wxauthor();
  101. $url = author_url::room_invite_url($room_id,$relay_id);
  102. $url = $author->enter($url);
  103. Log::record("url:$url",Log::DEBUG);
  104. return self::outsuccess(['direct_uri' => $url],"redirect");
  105. }
  106. $result = room\factory_client::instance()->invite($room_id,$relay_id,[session_helper::memberid()]);
  107. if(session_helper::isapp())
  108. {
  109. $_SESSION['client_type'] = 'ajax';
  110. if($result === false) {
  111. return self::outerr(errcode::ErrRoom,"进入失败");
  112. } else {
  113. $members = member_info::get_members($result['newusers']);
  114. $result['invitees'] = $members;
  115. $result["url"] = BASE_SITE_URL.'/mobile/index.php?act=member_talk&op=room_detail&talk_type=room&talk_id='.$result['room'];
  116. return self::outsuccess($result);
  117. }
  118. }
  119. else {
  120. $_SESSION['client_type'] = 'wap';
  121. return self::outsuccess(null,"talk/share_bonus");
  122. }
  123. }
  124. public function room_detailOp(){
  125. $talk_type = trim($_GET['talk_type']);
  126. $talk_id = intval($_GET["talk_id"]);
  127. if(session_helper::need_wechat_author())
  128. {
  129. $author = new thrid_author\wxauthor();
  130. $url = author_url::room_detail_url($talk_type,$talk_id);
  131. $url = $author->enter($url);
  132. Log::record("url:$url",Log::DEBUG);
  133. return self::outsuccess(['direct_uri' => $url],"redirect");
  134. }
  135. $url = url_helper::room_detail_url($talk_type,$talk_id);
  136. return self::outsuccess(['direct_uri' => $url],"redirect");
  137. }
  138. }
  139. class tpl_member
  140. {
  141. private $mOutput;
  142. private $mInfo;
  143. private $mIsFriend;
  144. private $mPred;
  145. public function __construct($output)
  146. {
  147. $this->mOutput = $output;
  148. $this->mInfo = $this->mOutput['info'];
  149. $this->mIsFriend = $this->mOutput['is_friend'];
  150. $userid = $this->mInfo->member_id();
  151. $this->mPred = new predeposit_helper($userid);
  152. }
  153. public function output_group()
  154. {
  155. $amount = $this->mPred->total_bonus();
  156. $amount = intval($amount * 100 + 0.5) / 100;
  157. $discount = $this->mInfo->discount_self();
  158. $discount = intval($discount * 100 + 0.5) / 100;
  159. $result = "<div class=\"cell\">
  160. <span class=\"cell_label\">红包余额</span><span class=\"cell_content\"><span class=\"letter_pro\">$amount</span>元</span>
  161. </div>
  162. <div class=\"cell\">
  163. <span class=\"cell_label\">累计节省</span><span class=\"cell_content\"><span class=\"letter_pro\">$discount</span>元</span>
  164. </div>";
  165. if(!session_helper::isapp()) {
  166. $from = '<div class="cell">
  167. <span class="cell_label">信息来源</span><span class="cell_content">来自扫一扫</span>
  168. </div>';
  169. $result .= $from;
  170. }
  171. return $result;
  172. }
  173. public function output_btn()
  174. {
  175. $is_friend = $this->mOutput['is_friend'];
  176. if(!session_helper::isapp())
  177. {
  178. $result = '<div class="submit">';
  179. if($is_friend) {
  180. $result .= '<p class="cell_label">你已经是他的粉丝了</p>';
  181. } else {
  182. $result .= '<button type="button" id="btn_add_friend" class="add_friend_btn">关注</button>';
  183. }
  184. $result .= '</div>';
  185. }
  186. else
  187. {
  188. $result = '<div class="submit">
  189. <button type="button" id="btn_thief_bonus" class="add_friend_btn">偷一点</button>
  190. </div>
  191. <div class="submit">
  192. <button type="button" id="btn_send_bonus" class="send_bonus_btn">发红包</button>
  193. </div>';
  194. if(!$is_friend) {
  195. $result .= '<div class="submit">';
  196. $result .= '<button type="button" id="btn_add_friend" class="add_friend_btn">关注</button>';
  197. $result .= '</div>';
  198. }
  199. }
  200. return $result;
  201. }
  202. }