Advertisement
designbymerovingi

myCRED Lottery: Show winning numbers and winners

Nov 10th, 2014
230
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.73 KB | None | 0 0
  1. /**
  2. * lottery_drawn_numbers_ww Shortcode Render
  3. * @since 1.2.1
  4. * @version 1.0
  5. */
  6. add_shortcode( 'lottery_drawn_numbers_ww', 'mycred_lotto_render_picknumber_winners' );
  7. function mycred_lotto_render_picknumber_winners( $atts, $content = NULL ) {
  8. extract( shortcode_atts( array(
  9. 'id' => NULL,
  10. 'user_row' => '%display_name%',
  11. 'order' => 'DESC',
  12. 'number' => '-1',
  13. 'draw_id' => ''
  14. ), $atts ) );
  15.  
  16. // Make sure lottery exists
  17. $lottery_id = $id;
  18. $lottery = new myCRED_Lottery( $lottery_id );
  19. if ( ! $lottery->lottery_exists() )
  20. return __( 'Could not find lottery.', 'mycred_lotto' );
  21.  
  22. $past_winners = $lottery->get_results( $draw_id, $order, $number );
  23.  
  24. ob_start(); ?>
  25.  
  26. <div class="mycred-lotto-results">
  27. <table style="width: 100%;" class="table table-condensed">
  28. <thead>
  29. <tr>
  30. <th id="mycred-lottery-result-date" class="lottery-result-date"><?php _e( 'Date', 'mycred_lotto' ); ?></th>
  31. <th id="mycred-lottery-result-draw" class="lottery-result-drawno"><?php _e( 'Draw', 'mycred_lotto' ); ?></th>
  32. <th id="mycred-lottery-result-numbers" class="lottery-result-numbers"><?php _e( 'Winning Numbers', 'mycred_lotto' ); ?></th>
  33. <th id="mycred-lottery-result-winners" class="lottery-result-winners"><?php _e( 'Winners', 'mycred_lotto' ); ?></th>
  34. </tr>
  35. </thead>
  36. <tbody>
  37. <?php
  38.  
  39. if ( ! empty( $past_winners ) ) {
  40.  
  41. foreach ( $past_winners as $history ) {
  42. $winners = (array) maybe_unserialize( $history->winners );
  43.  
  44. $winning_users = array();
  45. if ( ! empty( $winners ) ) {
  46. $draw = $lottery->get_game_prefs();
  47. foreach ( $winners as $entry ) {
  48. if ( $entry['hits'] != $draw['picks'] ) continue;
  49.  
  50. $row = $lottery->mycred->template_tags_user( $user_row, absint( $entry['user_id'] ) );
  51. if ( ! in_array( $row, $winning_users ) )
  52. $winning_users[] = $row;
  53. }
  54. }
  55.  
  56. $winning_numbers = (array) maybe_unserialize( $history->result );
  57.  
  58. ?>
  59. <tr>
  60. <td class="lottery-result-date"><?php echo $lottery->get_time_formated( $history->time ); ?></td>
  61. <td class="lottery-result-drawno">#<?php echo $history->draw_id; ?></td>
  62. <td class="lottery-result-numbers"><span><?php echo implode( '</span>, <span>', $winning_numbers ); ?></span></td>
  63. <td class="lottery-result-winners"><?php
  64.  
  65. if ( empty( $winning_users ) )
  66. echo 'No winners';
  67. else
  68. echo '<span class="winning-user">' . implode( '</span> <span class="winning-user">', $winning_users ) . '</span>';
  69.  
  70.  
  71. ?></td>
  72. </tr>
  73. <?php
  74.  
  75. }
  76.  
  77. }
  78. else {
  79.  
  80. ?>
  81. <tr>
  82. <td colspan="4">No results yet.</td>
  83. </tr>
  84. <?php
  85.  
  86. }
  87.  
  88. ?>
  89.  
  90. </tbody>
  91. </table>
  92. </div>
  93. <?php
  94.  
  95. $content = ob_get_contents();
  96. ob_end_clean();
  97.  
  98. return $content;
  99. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement