Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php do_action('em_template_my_bookings_header'); ?>
- <?php
- global $wpdb, $current_user, $EM_Notices, $EM_Person;
- if( is_user_logged_in() ):
- $EM_Person = new EM_Person( get_current_user_id() );
- $EM_Bookings = $EM_Person->get_bookings();
- $bookings_count = count($EM_Bookings->bookings);
- if($bookings_count > 0){
- //Get events here in one query to speed things up
- $event_ids = array();
- foreach($EM_Bookings as $EM_Booking){
- $event_ids[] = $EM_Booking->event_id;
- }
- }
- $limit = ( !empty($_GET['limit']) ) ? $_GET['limit'] : 20;//Default limit
- $page = ( !empty($_GET['pno']) ) ? $_GET['pno']:1;
- $offset = ( $page > 1 ) ? ($page-1)*$limit : 0;
- echo $EM_Notices;
- ?>
- <div class='em-my-bookings'>
- <?php if ( $bookings_count >= $limit ) : ?>
- <div class='tablenav'>
- <?php
- if ( $bookings_count >= $limit ) {
- $link = em_add_get_params($_SERVER['REQUEST_URI'], array('pno'=>'%PAGE%'), false); //don't html encode, so em_paginate does its thing
- $bookings_nav = em_paginate( $link, $bookings_count, $limit, $page);
- echo $bookings_nav;
- }
- ?>
- <div class="clear"></div>
- </div>
- <?php endif; ?>
- <div class="clear"></div>
- <?php if( $bookings_count > 0 ): ?>
- <div class='table-wrap'>
- <table id='dbem-bookings-table' class='widefat post fixed'>
- <thead>
- <tr>
- <th class='manage-column' scope='col'><?php _e('Event', 'dbem'); ?></th>
- <th class='manage-column' scope='col'><?php _e('Date', 'dbem'); ?></th>
- <th class='manage-column' scope='col'><?php _e('Spaces', 'dbem'); ?></th>
- <th class='manage-column' scope='col'><?php _e('Status', 'dbem'); ?></th>
- <th class='manage-column' scope='col'> </th>
- </tr>
- </thead>
- <tbody>
- <?php
- $rowno = 0;
- $event_count = 0;
- $nonce = wp_create_nonce('booking_cancel');
- foreach ($EM_Bookings as $EM_Booking) {
- /* @var $EM_Booking EM_Booking */
- $EM_Event = $EM_Booking->get_event();
- $todays_date = date("Y-m-d");
- $today = strtotime($todays_date);
- if( ($rowno < $limit || empty($limit)) && ($event_count >= $offset || $offset === 0) && ($EM_Event->start <= $today) ) {
- $rowno++;
- ?>
- <tr>
- <td><?php echo $EM_Event->output("#_EVENTLINK"); ?></td>
- <td><?php echo date_i18n( get_option('dbem_date_format'), $EM_Event->start ); ?></td>
- <td><?php echo $EM_Booking->get_spaces() ?></td>
- <td>
- <?php echo $EM_Booking->get_status(); ?>
- </td>
- <td>
- <?php
- /*
- $cancel_link = '';
- if( !in_array($EM_Booking->status, array(2,3)) && get_option('dbem_bookings_user_cancellation') && $EM_Event->get_bookings()->has_open_time() ){
- $cancel_url = em_add_get_params($_SERVER['REQUEST_URI'], array('action'=>'booking_cancel', 'booking_id'=>$EM_Booking->booking_id, '_wpnonce'=>$nonce));
- $cancel_link = '<a class="em-bookings-cancel" href="'.$cancel_url.'" onclick="if( !confirm(EM.booking_warning_cancel) ){ return false; }">'.__('Cancel','dbem').'</a>';
- }
- echo apply_filters('em_my_bookings_booking_actions', $cancel_link, $EM_Booking);
- */
- ?>
- </td>
- <td>
- <a href="#" target="_blank" class="new-window">Print
- <div class="ticket" style="display:none">
- <table border="0">
- <tr>
- <td><strong><span>Name: </span></strong><?php echo $EM_Event->output("#_EVENTNAME"); ?></td>
- </tr>
- <tr>
- <td><strong><span>Date/Time: </span></strong><?php echo $EM_Event->output("#_EVENTDATES").' '.$EM_Event->output("#_EVENTTIMES"); ?></td>
- </tr>
- <tr><td></td></tr>
- <tr><td></td></tr>
- <tr>
- <td><h4>Personal Details</h4></td>
- </tr>
- <tr>
- <td><strong><span>Name: </span><?php echo $EM_Booking->get_person()->get_name(); ?></td>
- </tr>
- <tr>
- <td><strong><span>Email: </span><?php echo $EM_Booking->get_person()->user_email; ?></td>
- </tr>
- <tr>
- <td><strong><span>Address: </span><?php echo wp_kses_data(get_metadata('user', $EM_Booking->get_person()->ID, 'dbem_address', true)); ?></td>
- </tr>
- <tr>
- <td><strong><span>Address 2: </span><?php echo wp_kses_data(get_metadata('user', $EM_Booking->get_person()->ID, 'dbem_address_2', true)); ?></td>
- </tr>
- <tr>
- <td><strong><span>City: </span><?php echo wp_kses_data(get_metadata('user', $EM_Booking->get_person()->ID, 'dbem_city', true)); ?></td>
- </tr>
- <tr>
- <td><strong><span>State: </span><?php echo wp_kses_data(get_metadata('user', $EM_Booking->get_person()->ID, 'dbem_state', true)); ?></td>
- </tr>
- <tr>
- <td><strong><span>Zip/Post Code: </span><?php echo wp_kses_data(get_metadata('user', $EM_Booking->get_person()->ID, 'dbem_zip', true)); ?></td>
- </tr>
- <tr>
- <td><strong><span>Country: </span><?php echo wp_kses_data(get_metadata('user', $EM_Booking->get_person()->ID, 'dbem_country', true)); ?></td>
- </tr>
- <tr><td></td></tr>
- <tr><td></td></tr>
- <tr>
- <td><h4>Booking Details</h4></td>
- </tr>
- <tr>
- <td>
- <?php if ( is_array($EM_Booking->booking_meta['booking']) ){ ?>
- <?php foreach( $EM_Booking->booking_meta['booking'] as $key => $value) { ?>
- <span><strong><?php echo $key; ?></strong></span>
- <?php //print_r($value); ?>
- <?php if ( is_array($value) ){ ?>
- <?php foreach( $value as $key1 => $value1) { ?>
- <label><?php echo $value1; ?></label>
- <?php } ?>
- <?php }else{ ?>
- <label><?php echo $value; ?></label>
- <?php } ?>
- <br/>
- <?php } ?>
- <?php } ?>
- </td>
- </tr>
- </table>
- </div></a>
- </td>
- </tr>
- <?php
- }
- do_action('em_my_bookings_booking_loop',$EM_Booking);
- $event_count++;
- }
- ?>
- </tbody>
- </table>
- </div>
- <?php else: ?>
- <?php _e('You do not have any bookings.', 'dbem'); ?>
- <?php endif; ?>
- <?php if( !empty($bookings_nav) && $EM_Bookings >= $limit ) : ?>
- <div class='tablenav'>
- <?php echo $bookings_nav; ?>
- <div class="clear"></div>
- </div>
- <?php endif; ?>
- </div>
- <?php else: ?>
- <p><?php echo sprintf(__('Please <a href="%s">Log In</a> to view your bookings.','dbem'),site_url('wp-login.php?redirect_to=' . urlencode(get_permalink()), 'login'))?></p>
- <?php endif; ?>
- <?php do_action('em_template_my_bookings_footer', $EM_Bookings); ?>
- <script>
- jQuery(function ($) {
- $('a.new-window').click(function () {
- var btn = $(this),
- ticket = btn.find('.ticket').html(),
- recipe = window.open('','PrintWindow','width=600,height=600'),
- html = '<html><head><title>Print Your Ticket</title></head><body><div id="myprintticket">' + ticket + '</div></body></html>';
- recipe.document.open();
- recipe.document.write(html);
- recipe.document.close();
- return false;
- });
- });
- </script>
Add Comment
Please, Sign In to add comment