rank_list.php 4.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133
  1. <?php
  2. /**
  3. * Created by PhpStorm.
  4. * User: stanley-king
  5. * Date: 16/7/26
  6. * Time: 上午11:00
  7. */
  8. class rank_listControl extends mobileControl
  9. {
  10. public function __construct() {
  11. parent::__construct();
  12. }
  13. public function indexOp()
  14. {
  15. $list_sn = $_GET['list_sn'];
  16. if(!isset($list_sn) || empty($list_sn)) {
  17. return self::outerr(errcode::ErrParamter,'请输入排行榜序列号.');
  18. }
  19. $items = ranklist_helper::gen_ranklist($list_sn,$userid,$err);
  20. if($items == false) {
  21. return self::outerr($err['code'],$err['msg']);
  22. }
  23. $mids = array();
  24. $list_infos = array();
  25. $rank_num = 1;
  26. $mine = null;
  27. foreach ($items as $item) {
  28. $rank = ranklist::create_by_store($item);
  29. $item = array();
  30. $item['supported'] = $this->supported($rank->list_sn());
  31. $item['list_sn'] = $rank->list_sn();
  32. $item['supports'] = $rank->supports();
  33. $item['list_value'] = $rank->money();
  34. $item['member_id'] = $rank->member_id();
  35. $item['rank'] = $rank_num;
  36. array_push($list_infos,$item);
  37. array_push($mids,$rank->member_id());
  38. if($userid == $rank->member_id()) {
  39. $mine = $item;
  40. }
  41. ++$rank_num;
  42. }
  43. $mem_desc = array();
  44. $members = Model('member')->getMemberList(array('member_id' => array('in',$mids)));
  45. foreach ($members as $val) {
  46. $info = new member_info($val);
  47. array_push($mem_desc,$info->filter());
  48. }
  49. return self::outsuccess(array('mine' => $mine,'list_infos' => $list_infos,'mem_desc' => $mem_desc),"bonus/ranklist");
  50. }
  51. public function supportOp()
  52. {
  53. $list_sn = $_GET['list_sn'];
  54. if(!isset($list_sn) || empty($list_sn)) {
  55. return self::outerr(errcode::ErrParamter,'请输入排行榜序列号.');
  56. }
  57. $rank = ranklist::create_by_sn($list_sn);
  58. if($rank == false) {
  59. return self::outerr(errcode::ErrParamter,'该排行榜不存在或者已经过期~');
  60. }
  61. if($this->supported($list_sn)) {
  62. $rank->unsupport();
  63. $_SESSION['rank_list'][$list_sn]['supported'] = false;
  64. } else {
  65. $rank->support();
  66. $_SESSION['rank_list'][$list_sn]['supported'] = true;
  67. }
  68. return self::outsuccess(array('supports' => $rank->supports(),'list_sn' => $rank->list_sn()));
  69. }
  70. private function supported($list_sn)
  71. {
  72. if(!isset($_SESSION['rank_list'])) {
  73. $_SESSION['rank_list'] = array();
  74. }
  75. if(array_key_exists($list_sn,$_SESSION['rank_list']) == false) {
  76. $_SESSION['rank_list'][$list_sn] = array();
  77. $_SESSION['rank_list'][$list_sn]['supported'] = false;
  78. }
  79. return boolval($_SESSION['rank_list'][$list_sn]['supported']);
  80. }
  81. }
  82. function bonus_output_meminfo($mid,$mdescs)
  83. {
  84. foreach ($mdescs as $info) {
  85. if($info['member_id'] == $mid) {
  86. return $info;
  87. }
  88. }
  89. return false;
  90. }
  91. function bonus_output_rankitem($item,$mdescs)
  92. {
  93. $mid = $item['member_id'];
  94. $minfo = bonus_output_meminfo($mid,$mdescs);
  95. echo '<div class="list_li overflow">';
  96. echo '<div class="index float_l w-8">' .$item['rank']. '</div>';
  97. echo '<div class="icon_header float_l w-12 margin-r-1">';
  98. echo '<img src="' . $minfo['avatar'] .'" alt=""/>';
  99. echo '</div>';
  100. echo '<div class="msg float_l w-80 relative_li">';
  101. echo '<div class="name text_l w-45 float_l overflow">' . $minfo['nickname'] . '</div>';
  102. echo '<div class="number text_r w-35 float_l">' . $item['list_value'] .'元</div>';
  103. if($item['supported'] == true) {
  104. echo '<div class="float_l w-20 concern_box concern_box_active">';
  105. } else {
  106. echo '<div class="float_l w-20 concern_box">';
  107. }
  108. echo '<div class="concern">' . $item['supports'] .'</div>';
  109. echo '</div>';
  110. echo '<input type="hidden" class="list_sn" value="' . $item['list_sn'] .'"/>';
  111. echo '</div>';
  112. echo '</div>';
  113. }