SHOW:
|
|
- or go back to the newest paste.
| 1 | <?php | |
| 2 | ||
| 3 | ||
| 4 | class customDonations {
| |
| 5 | ||
| 6 | private $db_connection = null; | |
| 7 | public $debugging = 1; | |
| 8 | public $auctionmessages = array(); | |
| 9 | ||
| 10 | public function __construct(){
| |
| 11 | $this->databaseConnection(); | |
| 12 | } | |
| 13 | ||
| 14 | private function databaseConnection(){ //database connection
| |
| 15 | if ($this->db_connection != null) {
| |
| 16 | return true; | |
| 17 | } else {
| |
| 18 | try {
| |
| 19 | $this->db_connection = new PDO('mysql:host='. DB_HOST .';dbname='. DB_NAME . ';charset='.DB_CHARSET, DB_USER, DB_PASSWORD);
| |
| 20 | if($this->debugging == 1){
| |
| 21 | $this->db_connection->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); | |
| 22 | $this->db_connection->setAttribute(PDO::ATTR_EMULATE_PREPARES, false); //debugging | |
| 23 | } | |
| 24 | return true; | |
| 25 | } catch (PDOException $e) {
| |
| 26 | $this->auctionmessages[] = $e->getMessage(); | |
| 27 | } | |
| 28 | } | |
| 29 | return false; | |
| 30 | } | |
| 31 | ||
| 32 | - | private function checkList($fulldata = 0){ //check if there are any active auctions
|
| 32 | + | private function checkList(){ //check if there are any active auctions
|
| 33 | - | if($fulldata == 1){
|
| 33 | + | $check_list = $this->db_connection->prepare("SELECT * FROM crstube_posts
|
| 34 | - | $check_list = $this->db_connection->prepare("SELECT * FROM crstube_posts
|
| 34 | + | INNER JOIN crstube_postmeta ON crstube_posts.ID = crstube_postmeta.post_id |
| 35 | - | INNER JOIN crstube_postmeta ON crstube_posts.ID = crstube_postmeta.post_id |
| 35 | + | WHERE meta_key = 'wdm_listing_ends' |
| 36 | - | WHERE meta_key = 'wdm_listing_ends' |
| 36 | + | AND meta_value < DATE_ADD(NOW(), INTERVAL 60 HOUR) AND meta_value > NOW() |
| 37 | - | AND meta_value < DATE_ADD(NOW(), INTERVAL 60 HOUR) AND meta_value > NOW() |
| 37 | + | OR meta_key = 'wdm_listing_ends' |
| 38 | - | OR meta_key = 'wdm_listing_ends' |
| 38 | + | AND NOW() < DATE_ADD(meta_value, INTERVAL 5 HOUR) AND meta_value < NOW() |
| 39 | - | AND NOW() < DATE_ADD(meta_value, INTERVAL 5 HOUR) AND meta_value < NOW() |
| 39 | + | ORDER BY meta_value ASC"); |
| 40 | - | ORDER BY meta_value ASC"); |
| 40 | + | |
| 41 | - | }else{
|
| 41 | + | |
| 42 | - | $check_list = $this->db_connection->prepare("SELECT ID FROM crstube_posts
|
| 42 | + | |
| 43 | - | INNER JOIN crstube_postmeta ON crstube_posts.ID = crstube_postmeta.post_id |
| 43 | + | |
| 44 | - | WHERE meta_key = 'wdm_listing_ends' |
| 44 | + | |
| 45 | - | AND meta_value <= DATE_ADD(NOW(), INTERVAL 60 HOUR) |
| 45 | + | |
| 46 | - | AND meta_value > now() ORDER BY meta_value ASC"); |
| 46 | + | |
| 47 | ||
| 48 | private function getData($id, $text){
| |
| 49 | $check_list = $this->db_connection->prepare("SELECT * FROM crstube_postmeta WHERE post_id = :postid AND meta_key = :metavalue");
| |
| 50 | $check_list->bindValue(':postid', $id, PDO::PARAM_INT);
| |
| 51 | $check_list->bindValue(':metavalue', $text, PDO::PARAM_STR);
| |
| 52 | $check_list->execute(); | |
| 53 | if($check_list->rowcount() != 0){
| |
| 54 | $data = $check_list->fetchAll(PDO::FETCH_ASSOC); | |
| 55 | return $data[0]['meta_value']; | |
| 56 | } | |
| 57 | return false;//there is no active auctions, return false | |
| 58 | } | |
| 59 | ||
| 60 | public function createDonationPage(){
| |
| 61 | if($this->checkList() != false){
| |
| 62 | $auction_list = $this->checkList();?> | |
| 63 | <?php | |
| 64 | $timercounter = 1; | |
| 65 | $returndata = array(); | |
| 66 | foreach($auction_list as $single_auction): | |
| 67 | $image1 = $this->getData($single_auction['ID'], 'wdm-image-1'); | |
| 68 | $description = $single_auction['post_excerpt']; // content <!-- <?php echo $description; | |
| 69 | - | if($this->checkList(0) != false){
|
| 69 | + | |
| 70 | - | $auction_list = $this->checkList(1);?> |
| 70 | + | |
| 71 | ||
| 72 | $get_bids = $this->db_connection->prepare("SELECT * FROM crstube_wdm_bidders
| |
| 73 | WHERE auction_id = :idvar ORDER BY bid DESC"); | |
| 74 | $get_bids->bindValue(':idvar', $single_auction['ID'], PDO::PARAM_INT);
| |
| 75 | $get_bids->execute(); | |
| 76 | $get_bid = $get_bids->fetchAll(PDO::FETCH_ASSOC); | |
| 77 | ||
| 78 | if(count($get_bid) == 0){
| |
| 79 | $price = $this->getData($single_auction['ID'], 'wdm_opening_bid'); | |
| 80 | }else{
| |
| 81 | $price = number_format($get_bid[0]['bid']); | |
| 82 | } | |
| 83 | ?> | |
| 84 | <a class="auctions" href='<?php echo $link; ?>'> | |
| 85 | <fieldset> | |
| 86 | <legend><b><?php echo $title; ?></b> <?php echo $price; ?>$</legend> | |
| 87 | <img src=<?php echo $image1; ?>> </br> | |
| 88 | <div id="padZeroes<?php echo $timercounter; ?>"></div> | |
| 89 | </fieldset></a> | |
| 90 | ||
| 91 | <script type="text/javascript"> | |
| 92 | var t<?php echo $timercounter; ?> = "<?php echo $single_auction['meta_value']; ?>".split(/[- :]/); | |
| 93 | var liftoffTime<?php echo $timercounter; ?> = new Date(t<?php echo $timercounter; ?>[0], t<?php echo $timercounter; ?>[1]-1, t<?php echo $timercounter; ?>[2], t<?php echo $timercounter; ?>[3], t<?php echo $timercounter; ?>[4], t<?php echo $timercounter; ?>[5]); | |
| 94 | $(document).ready(function(){
| |
| 95 | <?php echo "$('#padZeroes".$timercounter."').countdown({until: $.countdown.UTCDate(-5, liftoffTime". $timercounter."), padZeroes: true, compact: true});"; ?>
| |
| 96 | }); | |
| 97 | </script> | |
| 98 | <?php $timercounter++; | |
| 99 | endforeach; | |
| 100 | } | |
| 101 | } | |
| 102 | } |