<?php

$this->attendees_table->prepare_items();
$event_id = $this->attendees_table->event->ID;
$event = $this->attendees_table->event;
$tickets = Tribe__Tickets__Tickets::get_event_tickets($event_id);
?>

<div class="wrap tribe-attendees-page">
	<h1><?php 
esc_html_e('Attendees', 'event-tickets');
?>
</h1>
	<div id="tribe-attendees-summary" class="welcome-panel">
		<div class="welcome-panel-content">
			<div class="welcome-panel-column-container">

				<?php 
/**
 * Fires before the individual panels within the attendee screen summary
 * are rendered.
 *
 * @param int $event_id
 */
do_action('tribe_events_tickets_attendees_event_details_top', $event_id);
?>

				<div class="welcome-panel-column welcome-panel-first">
					<h3><?php 
echo '<a href="' . get_edit_post_link($event_id) . '" title="' . esc_attr__('Edit Event', 'event-tickets') . '">' . wp_kses(apply_filters('tribe_events_tickets_attendees_event_title', $event->post_title, $event->ID), array()) . '</a>';
?>
 /**
  * Includes the tickets metabox inside the Event edit screen
  *
  * @param WP_Post $post
  */
 public function do_meta_box($post)
 {
     $startMinuteOptions = Tribe__View_Helpers::getMinuteOptions(null);
     $endMinuteOptions = Tribe__View_Helpers::getMinuteOptions(null);
     $startHourOptions = Tribe__View_Helpers::getHourOptions(null, true);
     $endHourOptions = Tribe__View_Helpers::getHourOptions(null, false);
     $startMeridianOptions = Tribe__View_Helpers::getMeridianOptions(null, true);
     $endMeridianOptions = Tribe__View_Helpers::getMeridianOptions(null);
     $show_global_stock = Tribe__Tickets__Tickets::global_stock_available();
     $tickets = Tribe__Tickets__Tickets::get_event_tickets($post->ID);
     $global_stock = new Tribe__Tickets__Global_Stock($post->ID);
     include $this->path . 'src/admin-views/meta-box.php';
 }
示例#3
0
 /**
  * Includes the tickets metabox inside the Event edit screen
  *
  * @param $post_id
  */
 public function do_meta_box($post_id)
 {
     $startMinuteOptions = Tribe__View_Helpers::getMinuteOptions(null);
     $endMinuteOptions = Tribe__View_Helpers::getMinuteOptions(null);
     $startHourOptions = Tribe__View_Helpers::getHourOptions(null, true);
     $endHourOptions = Tribe__View_Helpers::getHourOptions(null, false);
     $startMeridianOptions = Tribe__View_Helpers::getMeridianOptions(null, true);
     $endMeridianOptions = Tribe__View_Helpers::getMeridianOptions(null);
     $tickets = Tribe__Tickets__Tickets::get_event_tickets($post_id);
     include $this->path . 'src/admin-views/meta-box.php';
 }
 /**
  * Builds a list of ticket types in the designated post and belonging to
  * the specified provider.
  *
  * @param int    $target_post_id
  * @param string $provider
  * @param array $ticket_ids
  *
  * @return array
  */
 protected function get_ticket_type_matches($target_post_id, $provider, $ticket_ids = array())
 {
     $ticket_types = array();
     $ticket_ids = array_map('absint', array_filter($ticket_ids, 'is_numeric'));
     foreach (Tribe__Tickets__Tickets::get_event_tickets($target_post_id) as $ticket) {
         if ($provider !== $ticket->provider_class) {
             continue;
         }
         if (in_array($ticket->ID, $ticket_ids)) {
             continue;
         }
         $ticket_types[absint($ticket->ID)] = esc_html($ticket->name);
     }
     return $ticket_types;
 }
示例#5
0
 /**
  * Renders the Orders page
  */
 public function orders_page_inside()
 {
     $this->orders_table->prepare_items();
     $event_id = isset($_GET['event_id']) ? intval($_GET['event_id']) : 0;
     $event = get_post($event_id);
     $tickets = Tribe__Tickets__Tickets::get_event_tickets($event_id);
     /**
      * Filters whether or not fees are being passed to the end user (purchaser)
      *
      * @var boolean $pass_fees Whether or not to pass fees to user
      * @var int $event_id Event post ID
      */
     Tribe__Tickets_Plus__Commerce__WooCommerce__Orders__Table::$pass_fees_to_user = apply_filters('tribe_tickets_pass_fees_to_user', true, $event_id);
     /**
      * Filters the fee percentage to apply to a ticket/order
      *
      * @var float $fee_percent Fee percentage
      */
     Tribe__Tickets_Plus__Commerce__WooCommerce__Orders__Table::$fee_percent = apply_filters('tribe_tickets_fee_percent', 0, $event_id);
     /**
      * Filters the flat fee to apply to a ticket/order
      *
      * @var float $fee_flat Flat fee
      */
     Tribe__Tickets_Plus__Commerce__WooCommerce__Orders__Table::$fee_flat = apply_filters('tribe_tickets_fee_flat', 0, $event_id);
     ob_start();
     $this->orders_table->display();
     $table = ob_get_clean();
     $organizer = get_user_by('id', $event->post_author);
     $event_revenue = Tribe__Tickets_Plus__Commerce__WooCommerce__Orders__Table::event_revenue($event_id);
     $event_sales = Tribe__Tickets_Plus__Commerce__WooCommerce__Orders__Table::event_sales($event_id);
     $event_fees = Tribe__Tickets_Plus__Commerce__WooCommerce__Orders__Table::event_fees($event_id);
     $tickets_sold = array();
     $total_sold = 0;
     $total_pending = 0;
     $total_profit = 0;
     $total_completed = 0;
     foreach ($tickets as $ticket) {
         if (empty($tickets_sold[$ticket->name])) {
             $tickets_sold[$ticket->name] = array('ticket' => $ticket, 'has_stock' => !$ticket->stock(), 'sku' => get_post_meta($ticket->ID, '_sku', true), 'sold' => 0, 'pending' => 0, 'completed' => 0);
         }
         $stock = $ticket->stock();
         $sold = $ticket->qty_sold();
         $cancelled = $ticket->qty_cancelled();
         $net_sold = $sold - $cancelled;
         if ($net_sold < 0) {
             $net_sold = 0;
         }
         $tickets_sold[$ticket->name]['sold'] += $net_sold;
         $tickets_sold[$ticket->name]['pending'] += absint($ticket->qty_pending());
         $tickets_sold[$ticket->name]['completed'] += absint($tickets_sold[$ticket->name]['sold']) - absint($tickets_sold[$ticket->name]['pending']);
         $total_sold += $net_sold;
         $total_pending += absint($ticket->qty_pending());
     }
     $total_completed += absint($total_sold) - absint($total_pending);
     include Tribe__Tickets_Plus__Main::instance()->plugin_path . 'src/admin-views/woocommerce-orders.php';
 }
示例#6
0
文件: Meta.php 项目: TakenCdosG/chefs
 /**
  * Retrieves the meta fields for all tickets associated with the specified event.
  *
  * @param $event_id
  *
  * @return array
  */
 public function get_meta_fields_by_event($event_id)
 {
     $fields = array();
     foreach (Tribe__Tickets__Tickets::get_event_tickets($event_id) as $ticket) {
         $meta_fields = $this->get_meta_fields_by_ticket($ticket->ID);
         if (is_array($meta_fields) && !empty($meta_fields)) {
             $fields = array_merge($fields, $meta_fields);
         }
     }
     /**
      * Returns a list of meta fields in use with various tickets associated with
      * a specific event.
      *
      * @var array $fields
      * @var int   $event_id
      */
     return apply_filters('tribe_tickets_plus_get_meta_fields_by_event', $fields, $event_id);
 }