View difference between Paste ID: BBP4XDEG and 7BERbGat
SHOW: | | - or go back to the newest paste.
1
<?php 
2
global $woocommerce;
3
global $wootickets_no_show;
4
global $wootickets_pricing;
5
6
$wootickets_pricing = array();
7
 ?>
8
9
<form action="<?php echo esc_url( add_query_arg( 'wootickets_process', 1, $woocommerce->cart->get_cart_url() ) ); ?>"
10
      class="cart" method="post"
11
      enctype='multipart/form-data'>
12
		<table width="100%" class="tribe-events-tickets">
13
			<?php
14
15
			$is_there_any_product         = false;
16
			$is_there_any_product_to_sell = false;
17
18
			$gmt_offset = ( get_option( 'gmt_offset' ) >= '0' ) ? ' +' . get_option( 'gmt_offset' ) : " " . get_option( 'gmt_offset' );
19
			$gmt_offset = str_replace( array( '.25', '.5', '.75' ), array( ':15', ':30', ':45' ), $gmt_offset );
20
				
21
			ob_start();
22
			foreach ( $tickets as $ticket ) {
23
24
				global $product;
25
26
				if ( class_exists( 'WC_Product_Simple' ) ) {
27
					$product = new WC_Product_Simple( $ticket->ID );
28
				} else {
29
					$product = new WC_Product( $ticket->ID );
30
				}
31
32
				$end_date = $ticket->end_date;
33
				if ( empty( $ticket->end_date ) ) {
34
35
					$event_end_date = tribe_get_end_date();
36
37
					if ( tribe_get_all_day( get_the_ID() ) )
38
						$event_end_date = date( get_option( 'date_format' ) . ' ' . get_option( 'time_format' ), strtotime( TribeDateUtils::endOfDay( $event_end_date ) ) );
39
40
					$end_date = apply_filters( 'wootickets_default_end_date', $event_end_date, $ticket->ID );
41
42
					if ( method_exists( 'DateTime', 'createFromFormat' ) ) {
43
						$end_date = DateTime::createFromFormat( get_option( 'date_format' ) . ' ' . get_option( 'time_format' ), $end_date );
44
					} else {
45
						$end_date = new DateTime( date( get_option( 'date_format' ) . ' ' . get_option( 'time_format' ), strtotime( $end_date ) ) );
46
					}
47
48
					if ( !empty( $end_date ) )
49
						$end_date = $end_date->format( 'Y-m-d g:i a' );
50
				}
51
				$end_date = strtotime( $end_date . $gmt_offset );
52
53
				$start_date = null;
54
				if ( !empty( $ticket->start_date ) )
55
					$start_date = strtotime( $ticket->start_date . $gmt_offset );
56
//				if ( !empty( $ticket->start_date ) ) {
57
//					$start_date = DateTime::createFromFormat( get_option( 'date_format' ), $ticket->start_date );
58
//					$start_date = strtotime( $start_date->format( 'Y-m-d' ) . $gmt_offset );
59
//				}
60
61
62
				if ( ( !$product->is_in_stock() ) || ( empty( $start_date ) || time() > $start_date ) && ( time() < $end_date ) ) {
63
64
					$is_there_any_product = true;
65
66
					echo sprintf( "<input type='hidden' name='product_id[]' value='%d'>", $ticket->ID );
67
68
					echo "<tr>";
69
					echo "<td width='75' class='woocommerce'>";
70
71
72
					if ( $product->is_in_stock() ) {
73
74
						woocommerce_quantity_input( array( 'input_name'  => 'quantity_' . $ticket->ID,
75
						                                   'input_value' => 0,
76
						                                   'min_value'   => 0,
77
						                                   'max_value'   => $product->backorders_allowed() ? '' : $product->get_stock_quantity(), ) );
78
79
						$is_there_any_product_to_sell = true;
80
81
					} else {
82
						echo "<span class='tickets_nostock'>" . esc_html__( 'Out of stock!', 'tribe-wootickets' ) . "</span>";
83
					}
84
					echo "</td>";
85
86
					echo "<td nowrap='nowrap' class='tickets_name'>";
87
					echo $ticket->name;
88
					echo "</td>";
89
90
					echo "<td class='tickets_price'>";
91
					echo $product->get_price_html();
92
					echo "</td>";
93
94
					echo "<td class='tickets_description'>";
95
					echo $ticket->description;
96
					echo "</td>";
97
98
					echo "</tr>";
99
100
                                        $wootickets_pricing[] = $product->get_price();
101
				}
102
103
			}
104
			$contents = ob_get_clean();
105
			if ( $is_there_any_product ) {
106
				?>
107
				<h2 class="tribe-events-tickets-title"><?php _e( 'Tickets', 'tribe-wootickets' );?></h2>
108
				<?php echo $contents; ?>
109
				<?php if ( $is_there_any_product_to_sell ) { ?>
110
					<tr>
111
						<td colspan="4" class='woocommerce'>
112
113
							<button type="submit"
114
							        class="button alt"><?php esc_html_e( 'Add to cart', 'tribe-wootickets' );?></button>
115
						</td>
116
					</tr>
117
					<?php
118
				}
119
			}
120
			?>
121
122
		</table>
123
124
</form>