bonusex.php 23 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634
  1. <?php
  2. /**
  3. * Created by PhpStorm.
  4. * User: stanley-king
  5. * Date: 16/4/11
  6. * Time: 上午12:49
  7. */
  8. defined('InShopNC') or exit('Access Invalid!');
  9. require_once (BASE_ROOT_PATH . '/helper/bonus_helper.php');
  10. require_once (BASE_ROOT_PATH . '/helper/predeposit_helper.php');
  11. require_once (BASE_ROOT_PATH . '/helper/session_helper.php');
  12. require_once (BASE_ROOT_PATH . '/helper/sms_helper.php');
  13. require_once (BASE_MOBILE_PATH . "/control/login.php");
  14. class bonusexControl extends mobileControl
  15. {
  16. public function __construct() {
  17. parent::__construct();
  18. }
  19. private function fileter_typeinfos($type_infos,&$type_info,&$binded_info)
  20. {
  21. $type_info = bonus_helper::filter_type($type_infos['type_info']);
  22. $binded_info = array();
  23. $binded_infos = $type_infos['binded_info'];
  24. if(is_array($binded_infos))
  25. {
  26. foreach($binded_infos as $val)
  27. {
  28. $user_info = bonus_helper::filter_bonus($val);
  29. if(isset($val['user_mobile'])) {
  30. unset($val['user_mobile']);
  31. }
  32. array_push($binded_info,$user_info);
  33. }
  34. }
  35. }
  36. private function isMineType(bonus\type $type)
  37. {
  38. return ($type->sender_id() == $_SESSION['member_id'] || $type->relayer_id() == $_SESSION['member_id']);
  39. }
  40. public function openOp()
  41. {
  42. if(!isset($_GET['type_sn']) || empty($_GET['type_sn'])) {
  43. return self::outerr(errcode::ErrParamter,"需要红包 type_sn 参数.");
  44. }
  45. $type_sn = $_GET['type_sn'];
  46. $type_infos = bonus_helper::get_typeinfo($type_sn);
  47. if(empty($type_infos)) {
  48. return self::outerr(errcode::ErrBonus,"无此红包.");
  49. }
  50. $this->fileter_typeinfos($type_infos,$type_info,$binded_info);
  51. $type = \bonus\type::crate_by_paramer($type_infos['type_info']);
  52. $isMineType = $this->isMineType($type);
  53. if($type->isStart() == false) {
  54. return self::outsuccess(array('type_info' => $type_info),"bonus/unstart");
  55. }
  56. $mine_bonus = bonus_helper::get_mine_by_typesn($type_sn);
  57. if($mine_bonus != false)
  58. { //显示我抢到的红包,按照状态进行判断
  59. $bonus = \bonus\user_bonus::create_by_param($mine_bonus);
  60. $mine_bonus = bonus_helper::filter_bonus($mine_bonus);
  61. if($bonus->isBinded() == false && session_helper::isVerfiyMobile())
  62. {
  63. $ret = bonus_helper::bind_bonus($bonus->bonus_sn(),$_SESSION['MPHPSESSID'],session_helper::cur_mobile(),$new_sn);
  64. if($ret == true) {
  65. $mine_bonus = bonus_helper::get_mine_by_bonussn($new_sn);
  66. }
  67. }
  68. $data = array('type_info' => $type_info, 'mine_bonus' => $mine_bonus,'binded_info' => $binded_info);
  69. if($bonus->isBinded() || $isMineType) {
  70. return self::outsuccess($data,"bonus/content");
  71. }
  72. else
  73. {
  74. if($type->isEnd()) {
  75. return self::outsuccess(array('type_info' => $type_info),"bonus/end");
  76. } else {
  77. return self::outsuccess($data,"bonus/bind");
  78. }
  79. }
  80. }
  81. else
  82. { //我没有抢过的情况
  83. if($isMineType == false)
  84. {
  85. if($type->isEnd()) {
  86. return self::outsuccess(array('type_info' => $type_info),"bonus/end");
  87. }
  88. else if($type->binded_over()) {
  89. return self::outsuccess(array('type_info' => $type_info,'msg' => "手慢了,红包派完了"),"bonus/over");
  90. } else {
  91. return self::outsuccess(array('type_info' => $type_info),"bonus/open");
  92. }
  93. }
  94. else
  95. {
  96. if($type->isEnd() || $type->binded_over()) {
  97. return self::outsuccess(array('type_info' => $type_info,'binded_info' => $binded_info),'bonus/detail');
  98. }
  99. else {
  100. return self::outsuccess(array('type_info' => $type_info),"bonus/open");
  101. }
  102. }
  103. }
  104. }
  105. public function detailOp()
  106. {
  107. if(!isset($_GET['type_sn']) || empty($_GET['type_sn'])) {
  108. return self::outerr(errcode::ErrParamter,"需要红包 type_sn 参数.");
  109. }
  110. $type_sn = $_GET['type_sn'];
  111. $type_infos = bonus_helper::get_typeinfo($type_sn);
  112. if(empty($type_infos)) {
  113. return self::outerr(errcode::ErrBonus,"无此红包.");
  114. }
  115. $this->fileter_typeinfos($type_infos,$type_info,$binded_info);
  116. $type = \bonus\type::crate_by_paramer($type_infos['type_info']);
  117. if($type->isStart() == false) {
  118. return self::outsuccess(array('type_info' => $type_info),"bonus/unstart");
  119. }
  120. $mine_bonus = bonus_helper::get_mine_by_typesn($type_sn);
  121. if($mine_bonus != false) { //显示我抢到的红包,按照状态进行判断
  122. $mine_bonus = bonus_helper::filter_bonus($mine_bonus);
  123. }
  124. return self::outsuccess(array('type_info' => $type_info, 'mine_bonus' => $mine_bonus,'binded_info' => $binded_info),'bonus/detail');
  125. }
  126. public function grabOp()
  127. {
  128. if(!isset($_GET['type_sn']) || empty($_GET['type_sn'])) {
  129. return self::outerr(errcode::ErrParamter,"需要红包 type_sn 参数.");
  130. }
  131. $type_sn = $_GET['type_sn'];
  132. $type_infos = bonus_helper::get_typeinfo($type_sn);
  133. if(empty($type_infos)) {
  134. return self::outerr(errcode::ErrBonus,"无此红包.");
  135. }
  136. $this->fileter_typeinfos($type_infos,$type_info,$binded_info);
  137. $type = \bonus\type::crate_by_paramer($type_infos['type_info']);
  138. if($type->isStart() == false) {
  139. return self::outsuccess(array('type_info' => $type_info),"bonus/unstart");
  140. }
  141. $mine_bonus = bonus_helper::get_mine_by_typesn($type_sn);
  142. if($mine_bonus != false)
  143. { //显示我抢到的红包,按照状态进行判断
  144. $bonus_obj = \bonus\user_bonus::create_by_param($mine_bonus);
  145. $mine_bonus = bonus_helper::filter_bonus($mine_bonus);
  146. if($bonus_obj->isBinded()) {
  147. return self::outsuccess(array('type_info' => $type_info, 'mine_bonus' => $mine_bonus,'binded_info' => $binded_info),"bonus/content");
  148. }
  149. elseif($type->isEnd()) {
  150. return self::outsuccess(array('type_info' => $type_info),"bonus/end");
  151. }
  152. else
  153. {
  154. if(session_helper::isVerfiyMobile())
  155. {
  156. $ret = bonus_helper::bind_bonus($bonus_obj->bonus_sn(),$_SESSION['MPHPSESSID'],session_helper::cur_mobile(),$new_sn);
  157. if($ret == true) {
  158. $mine_bonus = bonus_helper::get_mine_by_bonussn($new_sn);
  159. return self::outsuccess(array('type_info' => $type_info, 'mine_bonus' => $mine_bonus,'binded_info' => $binded_info),"bonus/content");
  160. } else { //todo 此处是绑定错误...
  161. return self::outsuccess(array('type_info' => $type_info, 'mine_bonus' => $mine_bonus,'binded_info' => $binded_info),"bonus/bind");
  162. }
  163. } else {
  164. return self::outsuccess(array('type_info' => $type_info, 'mine_bonus' => $mine_bonus,'binded_info' => $binded_info),"bonus/bind");
  165. }
  166. }
  167. }
  168. else
  169. {
  170. if($type->isEnd()) {
  171. return self::outsuccess(array('type_info' => $type_info),"bonus/end");
  172. }
  173. elseif($type->binded_over()) {
  174. return self::outsuccess(array('type_info' => $type_info,'msg' => "手慢了,红包派完了"),"bonus/over");
  175. }
  176. else
  177. {
  178. $bonus = bonus_helper::grab_bonus($type_sn);
  179. if($bonus == false) {
  180. return self::outsuccess(array('type_info' => $type_info,'msg' => "手慢了,红包派完了"),"bonus/over");
  181. }
  182. else
  183. {
  184. $bonus_obj = \bonus\user_bonus::create_by_param($bonus);
  185. $mine_bonus = bonus_helper::filter_bonus($bonus);
  186. if($bonus_obj->isBinded())
  187. {
  188. $type_infos = bonus_helper::get_typeinfo($bonus_obj->type_sn());
  189. if(empty($type_infos)) {
  190. return self::outerr(errcode::ErrBonus,"无此红包.");
  191. }
  192. $this->fileter_typeinfos($type_infos,$type_info,$binded_info);
  193. $data = array('type_info' => $type_info, 'mine_bonus' => $mine_bonus,'binded_info' => $binded_info);
  194. return self::outsuccess($data,"bonus/content");
  195. } else {
  196. $data = array('type_info' => $type_info, 'mine_bonus' => $mine_bonus,'binded_info' => $binded_info);
  197. return self::outsuccess($data,"bonus/bind");
  198. }
  199. }
  200. }
  201. }
  202. }
  203. public function bindOp()
  204. {
  205. if(!isset($_GET['bonus_sn']) || empty($_GET['bonus_sn'])) {
  206. return self::outerr(errcode::ErrParamter,"请输入红包序列号.");
  207. }
  208. $bonus_sn = $_GET['bonus_sn'];
  209. $mine_bonus = bonus_helper::get_mine_by_bonussn($bonus_sn);
  210. if($mine_bonus == false) {
  211. return self::outerr(errcode::ErrParamter, "您不能领没有抢到的红包.");
  212. }
  213. $bonus_obj = \bonus\user_bonus::create_by_param($mine_bonus);
  214. if($bonus_obj->isBinded()) {
  215. $type_sn = $bonus_obj->type_sn();
  216. $type_infos = bonus_helper::get_typeinfo($type_sn);
  217. $this->fileter_typeinfos($type_infos,$type_info,$binded_info);
  218. $mine_bonus = bonus_helper::filter_bonus($mine_bonus);
  219. return self::outsuccess(array('type_info' => $type_info, 'mine_bonus' => $mine_bonus,'binded_info' => $binded_info),"bonus/content");
  220. }
  221. $type_sn = $bonus_obj->type_sn();
  222. $type_infos = bonus_helper::get_typeinfo($type_sn);
  223. $type = \bonus\type::crate_by_paramer($type_infos['type_info']);
  224. if($type->isEnd()) {
  225. return self::outsuccess(array('type_info' => $type_infos['type_info']),"bonus/end");
  226. }
  227. elseif(session_helper::isVerfiyMobile()) {
  228. $mobile = session_helper::cur_mobile();
  229. }
  230. else
  231. {
  232. $mobile = $_GET['mobile'];
  233. $validator = new Validate();
  234. $validator->setValidate(Validate::verify_mobile($mobile));
  235. $err = $validator->validate();
  236. if ($err != '') {
  237. return self::outerr(errcode::ErrParamter, $err);
  238. }
  239. if(!isset($_GET['code']) || empty($_GET['code'])) {
  240. return self::outerr(errcode::ErrParamter, "请输入验证码.");
  241. }
  242. $code = $_GET['code'];
  243. $ret = sms_helper::check_code(Sms::getbonus_code,$code,$mobile);
  244. if(is_array($ret)) {
  245. return self::outerr($ret['code'], $ret['msg']);
  246. }
  247. else
  248. {
  249. $_SESSION['member_mobile'] = $mobile;
  250. $password = $code . substr($mobile, -4);
  251. session_helper::register_login($mobile,$password,$type);
  252. }
  253. }
  254. $ret = bonus_helper::bind_bonus($bonus_sn,$_SESSION['MPHPSESSID'],$mobile,$new_bonus_sn);
  255. if($ret == true) {
  256. $mine_bonus = bonus_helper::get_mine_by_bonussn($new_bonus_sn);
  257. $bonus_obj = \bonus\user_bonus::create_by_param($mine_bonus);
  258. $type_infos = bonus_helper::get_typeinfo($bonus_obj->type_sn());
  259. $this->fileter_typeinfos($type_infos,$type_info,$binded_info);
  260. return self::outsuccess(array('type_info' => $type_info, 'mine_bonus' => $mine_bonus,'binded_info' => $binded_info));
  261. } else {
  262. return self::outerr($ret['code'],$ret['msg']);
  263. }
  264. }
  265. ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  266. public function shakeOp()
  267. {
  268. if(!isset($_GET['bonus_sn']) || empty($_GET['bonus_sn'])) {
  269. return self::outerr(errcode::ErrParamter,"请输入红包序列号.");
  270. }
  271. $bonus_sn = $_GET['bonus_sn'];
  272. $mine_bonus = bonus_helper::get_mine_by_bonussn($bonus_sn);
  273. if($mine_bonus == false) {
  274. return self::outerr(errcode::ErrParamter, "领到红包后才可以摇.");
  275. }
  276. if(!isset($_POST['strength']) || empty($_POST['strength'])) {
  277. $strength = intval($_POST['strength']);
  278. } else {
  279. $strength = 3;
  280. }
  281. $bonus_obj = \bonus\user_bonus::create_by_param($mine_bonus);
  282. if($bonus_obj->can_shake())
  283. {
  284. $type_sn = $bonus_obj->type_sn();
  285. $type_infos = bonus_helper::get_typeinfo($type_sn);
  286. $type = \bonus\type::crate_by_paramer($type_infos['type_info']);
  287. if($type->isEnd()) {
  288. return self::outsuccess(errcode::ErrBonus,"该红包已经过期,不能再摇啦~");
  289. }
  290. elseif($type->binded_over()) {
  291. return self::outsuccess(errcode::ErrBonus,"该红包已经被领光,摇不出更多啦~");
  292. }
  293. elseif($type->isFixedAmount()) {
  294. return self::outsuccess(errcode::ErrBonus,"只有拼收起红包才可以摇哦~");
  295. }
  296. else
  297. {
  298. $ret = bonus_helper::check_shake($bonus_sn,$first);
  299. if($ret != true) {
  300. return self::outerr($ret['code'], $ret['msg']);
  301. }
  302. $direction = bonus_helper::get_direction($first);
  303. $ret = bonus_helper::shake($bonus_obj->bonus_sn(),$strength,$direction);
  304. if($ret == true)
  305. {
  306. $bonus = bonus_helper::get_mine_by_bonussn($bonus_obj->bonus_sn());
  307. $type_infos = bonus_helper::get_typeinfo($bonus_obj->type_sn());
  308. $this->fileter_typeinfos($type_infos,$type_info,$binded_info);
  309. return self::outsuccess(array('type_info' => $type_info,'mine_bonus' => $bonus,'binded_info' => $binded_info),"bonus/content");
  310. } else {
  311. return self::outsuccess(errcode::ErrBonus,"只有拼收起红包才可以摇哦~");
  312. }
  313. }
  314. }
  315. else {
  316. return self::outerr(errcode::ErrParamter, "抢到或者领到红包后才可以摇.");
  317. }
  318. }
  319. //红包留言
  320. public function commentOp()
  321. {
  322. if(!isset($_GET['bonus_sn']) || empty($_GET['bonus_sn'])) {
  323. return self::outerr(errcode::ErrParamter,"请输入红包序列号.");
  324. }
  325. $bonus_sn = $_GET['bonus_sn'];
  326. if(!isset($_GET['comment']) || empty($_GET['comment'])) {
  327. return self::outerr(errcode::ErrParamter,"请输入留言.");
  328. }
  329. $comment = urldecode($_GET['comment']);
  330. if(bonus_helper::comment($bonus_sn,urldecode($comment)) == true) {
  331. return self::outsuccess(array());
  332. } else {
  333. return self::outerr(errcode::ErrBonusComment,"留言失败.");
  334. }
  335. }
  336. }
  337. function bonus_output_unstart($output)
  338. {
  339. $type_info = $output['type_info'];
  340. $type = \bonus\type::crate_by_paramer($type_info);
  341. $local_tm = time();
  342. $start_tm = $type->get_start_time();
  343. $str_localtime = "<input type=\"hidden\" id=\"server_local_time\" value=\"{$local_tm}\"/>";
  344. $str_starttime = "<input type=\"hidden\" id=\"server_start_time\" value=\"{$start_tm}\"/>";
  345. echo($str_localtime);
  346. echo($str_starttime);
  347. }
  348. function bonus_output_end($output)
  349. {
  350. $type_info = $output['type_info'];
  351. $type = \bonus\type::crate_by_paramer($type_info);
  352. $start_tm = $type->get_start_time();
  353. $end_time = $type->get_end_time();
  354. $day_secs = 24 * 60 * 60;
  355. if(($end_time - $start_tm) == $day_secs) {
  356. return "该红包已超过24小时。";
  357. } else {
  358. return "该红包已过期。";
  359. }
  360. }
  361. function bonus_output_grabinfo($output)
  362. {
  363. $type_info = $output['type_info'];
  364. $type = \bonus\type::crate_by_paramer($type_info);
  365. if($type->binded_over()) {
  366. echo("<p>手慢了,红包被领完了</p>");
  367. }
  368. else if($type->grabed_over())
  369. {
  370. echo ("<p>手慢了,红包被抢完了</p>");
  371. $last_time = $type->grab_lastime();
  372. if($last_time)
  373. {
  374. $wait_sec = $last_time + 600 - time();
  375. $wait_min = intval($wait_sec / 60);
  376. $wait_sec = $wait_sec % 60;
  377. if($wait_min > 0) {
  378. echo("<p style=\"font-size:1rem;margin-top:2rem\">{$wait_min}分钟后,您可以尝试抢一个未及时领取的红包.</p>");
  379. } else {
  380. echo("<p style=\"font-size:1rem;margin-top:2rem\">{$wait_sec}秒后,您可以尝试抢一个未及时领取的红包.</p>");
  381. }
  382. }
  383. }
  384. }
  385. function bonus_output_sender($output)
  386. {
  387. $type_info = $output['type_info'];
  388. if(!empty($type_info)) {
  389. $type = \bonus\type::crate_by_paramer($type_info);
  390. echo($type->sender_name());
  391. } else {
  392. echo("");
  393. }
  394. }
  395. function bonus_output_openurl($output)
  396. {
  397. $type_info = $output['type_info'];
  398. $type = \bonus\type::crate_by_paramer($type_info);
  399. $type_sn = $type->getType_sn();
  400. $url = BASE_SITE_URL . "/mobile/index.php?act=bonusex&op=open&type_sn={$type_sn}";
  401. return $url;
  402. }
  403. function bonus_output_detailurl($output)
  404. {
  405. $type_info = $output['type_info'];
  406. $type = \bonus\type::crate_by_paramer($type_info);
  407. $type_sn = $type->getType_sn();
  408. $url = BASE_SITE_URL . "/mobile/index.php?act=bonusex&op=detail&type_sn={$type_sn}&client_type=wap";
  409. return $url;
  410. }
  411. function bonus_output_graburl($output)
  412. {
  413. $type_info = $output['type_info'];
  414. $type = \bonus\type::crate_by_paramer($type_info);
  415. $type_sn = $type->getType_sn();
  416. $url = BASE_SITE_URL . "/mobile/index.php?act=bonusex&op=grab&client_type=wap&type_sn={$type_sn}";
  417. return $url;
  418. }
  419. function bonus_output_type($output)
  420. {
  421. echo '<p class="p p_name" style="color:#454545">';
  422. $type_info = $output['type_info'];
  423. $type = \bonus\type::crate_by_paramer($type_info);
  424. echo($type_info['sender_name'] . "的红包");
  425. if($type->isRandomAmount()) {
  426. echo '<s class="icon_pin"></s>';
  427. }
  428. echo '</p>';
  429. echo '<p class="prompt">' . $type_info['type_bless'] . '</p>';
  430. }
  431. function bonus_output_mine($output)
  432. {
  433. $mine_bonus = $output['mine_bonus'];
  434. if(!empty($mine_bonus)) {
  435. $bonus = \bonus\user_bonus::create_by_param($mine_bonus);
  436. echo('<div class="price">');
  437. echo('<p><span>' . $bonus->bonus_value() . '</span>元</p>');
  438. echo('</div>');
  439. echo('<input type="hidden" id="mine_bonus" value=' ."{$bonus->bonus_sn()}>");
  440. if($bonus->isBinded()) {
  441. echo('<div class="link" id="links">');
  442. echo('<p style="margin: 20px 0"><a href="javascript:void(0)">请下载熊猫美妆APP,享用红包</a></p>');
  443. echo('</div>');
  444. }
  445. }
  446. else {
  447. echo('<div class="link">');
  448. echo('<p style="margin: 20px 0><a href="javascript:void(0)">请下载熊猫美妆APP</a></p>');
  449. echo('</div>');
  450. }
  451. }
  452. function bonus_out_bindtimeout($output)
  453. {
  454. $mine_bonus = $output['mine_bonus'];
  455. if(!empty($mine_bonus))
  456. {
  457. $bonus = \bonus\user_bonus::create_by_param($mine_bonus);
  458. $grab_time = $bonus->grab_time();
  459. $time_out = 600;
  460. if($grab_time > 0)
  461. {
  462. if($grab_time + $time_out <= time() - 60) {
  463. return '您的红包随时可能被抢走,抓紧领啊~';
  464. } else {
  465. $left_time = $grab_time + $time_out - time();
  466. $mins = $left_time / 60;
  467. return "请{$mins}分钟内,输入手机号领取红包";
  468. }
  469. }
  470. }
  471. return '';
  472. }
  473. function bonus_out_bindedtime($period)
  474. {
  475. $min = 60;
  476. $hour = 3600;
  477. $day = 24 * 3600;
  478. $days = intval($period / $day);
  479. $period = $period % $day;
  480. $houres = intval($period / $hour);
  481. $period = $period % $hour;
  482. $mins = intval($period / $min);
  483. $period = $period % $min;
  484. if($period > 0) {
  485. $mins += 1;
  486. }
  487. $time_str = '';
  488. if($days > 0) {
  489. $time_str .= "{$days}天";
  490. }
  491. if($houres > 0) {
  492. $time_str .= "{$houres}小时";
  493. }
  494. if($mins > 0) {
  495. $time_str .= "{$mins}分钟";
  496. }
  497. $time_str .= "领完.";
  498. return $time_str;
  499. }
  500. function bonus_output_bindedinfo($output)
  501. {
  502. $type_info = $output['type_info'];
  503. $type = \bonus\type::crate_by_paramer($type_info);
  504. echo('<div class="prompt text_left">');
  505. if($type->binded_over()) {
  506. $prompt = "{$type->getTotal_num()}个红包";
  507. $prompt .= ",";
  508. $period = $type_info['binded_period'];
  509. $prompt .= bonus_out_bindedtime($period);
  510. } else {
  511. $prompt = "领取 {$type->binded_num()}/{$type->getTotal_num()}";
  512. }
  513. echo('<p class="prompt pro">' .$prompt. '</p>');
  514. echo('</div>');
  515. $bined_info = $output['binded_info'];
  516. if(empty($bined_info)) return;
  517. foreach($bined_info as $val)
  518. {
  519. $bonus = \bonus\user_bonus::create_by_param($val);
  520. echo('<div class="li">');
  521. echo('<div class="li_left">');
  522. echo('<p class="p">' . $bonus->user_name() .'</p>');
  523. if(empty($bonus->user_comment()))
  524. {
  525. if($bonus->user_mobile() == $_SESSION['member_mobile']) {
  526. echo ('<p class="prompt" id="my_prompt">');
  527. echo ('<a href="javascript:void(0)" id="message" style="color: #1927D1">留言</a>');
  528. echo ('</p>');
  529. echo('<p class="prompt">' . $bonus->get_time_format() . '</p>');
  530. } else {
  531. echo('<p class="prompt">' . $bonus->get_time_format() . '</p>');
  532. echo('<p class="prompt"></p>');
  533. }
  534. } else {
  535. echo('<p class="prompt">' . $bonus->user_comment() . '</p>');
  536. echo('<p class="prompt">' . $bonus->get_time_format() . '</p>');
  537. }
  538. echo('</div>');
  539. echo('<div class="li_right">');
  540. echo('<p class="p">' . $bonus->bonus_value() . '元</p>');
  541. if($type->binded_over() && $type->isMaxAmount($bonus->bonus_value()) && $type->isRandomAmount()) {
  542. echo('<p class="king_box"><s class="king"></s>手气最佳</p>');
  543. }
  544. echo('</div>');
  545. echo('</div>');
  546. }
  547. }
  548. function android_downpath()
  549. {
  550. $url = BASE_SITE_URL . '/data/upload/package/xmmz_release.apk';
  551. return $url;
  552. }
  553. function share_title()
  554. {
  555. return "丽人丽妆公司特权红包,内购正品行货美妆.";
  556. }
  557. function share_image()
  558. {
  559. return BASE_SITE_URL + "/panda.png";
  560. }