<div class="toggle_container">


        <table class="epl_avail_spaces_table">
            <?php 
foreach ($table_data as $date_id => $data) {
    if ($data['date']['timestamp'] <= EPL_DATE && $event_details['_epl_event_status'] != 3) {
        continue;
    }
    $date = $data['date']['disp'];
    $times = $data['time'];
    ?>

                <tr class="epl_date"><td><?php 
    echo $data['date']['disp'];
    echo epl_prefix(' - ', epl_get_element_m($date_id, '_epl_date_note', $event_details, null));
    ?>
</td><td><?php 
    echo $data['date']['avail'];
    ?>
</td></tr>

                <?php 
    if (epl_is_addon_active('_epl_atp')) {
        foreach ($times as $time_id => $time_data) {
            //if ( $time_data['avail'] !== '' ):
            $prices = $time_data['price'];
            if ($time_data['disp'] !== '') {
                ?>

                            <tr class="epl_time"><td><?php 
        echo stripslashes_deep(do_shortcode($event_details['post_content']));
        ?>

                        </div>
                    </div>
                </td>
            </tr>
        <?php 
    }
    ?>

        <?php 
    foreach ($date_data as $date_id => $data) {
        $date = $data['date']['disp'];
        $times = $data['time'];
        $date_note = epl_get_element_m($date_id, '_epl_date_note', $event_details, '');
        ?>

            <tr class="epl_date">
                <td><?php 
        echo $data['date']['disp'];
        echo $date_note;
        ?>
</td>
                <td><?php 
        echo epl_get_element('location', $data['date'], '&nbsp;');
        ?>
</td>
            </tr>

            <?php 
 function thank_you_page($add_to_db = true)
 {
     global $cart_totals, $wpdb;
     if ($this->erm->is_empty_cart()) {
         return $this->epl_util->epl_invoke_error(20, null, false);
     }
     global $event_details;
     $this->erm->_set_relevant_data();
     if (epl_is_waitlist_flow()) {
         $this->erm->add_registration_to_db();
     }
     // echo "<pre class='prettyprint'>" . __LINE__ . "> " . print_r($_SESSION, true). "</pre>";
     $this->ecm->setup_event_details($this->erm->get_current_event_id());
     if (epl_regis_flow() == 2 && $add_to_db) {
         $this->erm->add_registration_to_db();
     }
     if (epl_regis_flow() == 10) {
         if ($this->erm->ok_to_proceed(true) !== true) {
             return $this->erm->ok_to_proceed;
         }
     }
     $post_ID = epl_get_element_m('post_ID', '__epl', $_SESSION, null);
     if (!$post_ID) {
         $regis_key = $_SESSION['__epl']['_regis_id'];
         $post_ID = $wpdb->get_var($wpdb->prepare("SELECT ID FROM {$wpdb->posts}\n                 WHERE post_status ='publish' \n                 AND post_type='epl_registration' \n                 AND post_title=%s\n                        ORDER BY ID DESC\n                        LIMIT 1", $regis_key));
         $_SESSION['__epl']['post_ID'] = $post_ID;
     }
     $this->regis_id = $post_ID;
     $this->ecm->setup_regis_details($post_ID);
     $this->erm->set_mode('overview');
     $_totals = $this->erm->calculate_cart_totals();
     $grand_total = $cart_totals['money_totals']['grand_total'];
     $data['cart_data'] = $this->erm->show_cart();
     $data['regis_form'] = $this->erm->regis_form(null, false, false, false);
     $gateway_info = $this->erm->get_gateway_info();
     $data['post_ID'] = $post_ID;
     $data['_epl_regis_status'] = 1;
     $data['_epl_payment_method'] = epl_is_free_event() || epl_is_zero_total() ? '1' : $gateway_info['_epl_pay_type'];
     $data['payment_instructions'] = '';
     if (!epl_is_waitlist_flow() && (epl_is_free_event() || epl_is_zero_total())) {
         $data['_epl_regis_status'] = 5;
         $data['_epl_grand_total'] = '0';
         $data['_epl_payment_amount'] = '0';
         $data['_epl_payment_date'] = '';
         $data['_epl_payment_method'] = '1';
         $data['_epl_transaction_id'] = '';
         $this->erm->update_payment_data($data);
     } elseif ($this->erm->has_selected_offline_payment() || epl_is_waitlist_flow()) {
         $data['_epl_regis_status'] = epl_is_waitlist_flow() ? 20 : 2;
         $data['_epl_payment_method'] = epl_is_waitlist_flow() ? '' : $gateway_info['_epl_pay_type'];
         $data['_epl_prediscount_total'] = epl_get_element('pre_discount_total', $cart_totals['money_totals'], 0);
         $data['_epl_discount_amount'] = epl_get_element('discount_amount', $cart_totals['money_totals'], 0);
         $data['_epl_grand_total'] = $grand_total;
         $data['_epl_balance_due'] = $grand_total;
         $data['_epl_transaction_id'] = '';
         $data['payment_instructions'] = $this->epl->load_view('front/registration/regis-payment-instr', array('gateway_info' => $gateway_info), true);
         $this->erm->update_payment_data($data);
     }
     $this->ecm->setup_regis_details($post_ID);
     $data['payment_details'] = $this->epl->load_view('front/registration/regis-payment-details', $data, true);
     $data = apply_filters('epl_update_payment_data_thank_you_page', $data);
     if ($this->erm->has_selected_offline_payment()) {
         $data['payment_instructions'] = epl_get_element('_epl_check_instructions', $gateway_info);
     }
     $data['mode'] = 'overview';
     $data['tracking_code'] = 1;
     $data['overview'] = $this->epl->load_view('front/registration/regis-thank-you-page', $data, true);
     $this->epl_util->regis_id = $post_ID;
     if (epl_is_addon_active('ASDFAWEEFADSF')) {
         epl_mailchimp_subscribe();
     }
     do_action('epl_efc__thank_you_page__before_session_destroy', $post_ID);
     $new_user = $this->erm->maybe_add_new_user();
     if ($new_user !== false) {
         $this->erm->assign_event_to_user($post_ID, $new_user);
     }
     $this->epl->load_model('epl-db-model');
     EPL_db_model::get_instance()->reset_table_for_registration($post_ID, get_current_user_id());
     $this->epl_util->send_confirmation_email($data);
     $url = apply_filters('epl_efc__thank_you_page__redirect_url', '');
     $_SESSION['__epl'] = array();
     unset($_SESSION['__epl']);
     @session_destroy();
     $_SESSION = array();
     epl_delete_transient();
     if ($url != '' || $this->epl->locate_template('single-epl_registration.php')) {
         $url = $url != '' ? $url : get_permalink($this->regis_id);
         $url_params = array();
         if (epl_get_regis_setting('epl_tracking_code')) {
             $url_params['cnv_tr'] = 1;
         }
         $url_params['epl_token'] = epl_get_token();
         $url_params = apply_filters('epl_efc__thank_you_page__url_params', $url_params);
         $url = add_query_arg($url_params, $url);
         wp_redirect($url, 301);
         die;
     }
     return $data['overview'];
 }
/**
 * returns value from snapshot based on keys supplied
 *
 * long description
 *
 * @since 1.4
 * @param array $args - array of what the call wants
 * @return string || null
 */
function epl_get_from_snapshot($args = array())
{
    global $event_snapshot;
    switch ($args['section']) {
        case 'date':
            return epl_get_element_m($args['index'], 'date', epl_get_element_m($args['date_id'], $args['event_id'], $event_snapshot), null);
    }
}
 function firstdata_process()
 {
     global $event_details, $cart_totals;
     $event_id = $event_details['ID'];
     $regis_id = $this->erm->get_regis_id();
     $post_ID = $this->erm->get_regis_post_id();
     $this->ecm->setup_event_details($event_id);
     $_totals = $this->erm->calculate_cart_totals(true);
     $gateway_info = $this->erm->get_gateway_info();
     $host = "staging.linkpt.net";
     if ($gateway_info['_epl_sandbox'] == 0) {
         $host = "secure.linkpt.net";
     }
     //$pem_file = get_attached_file( $gateway_info['_epl_pem_file'] );
     $pem_file = epl_upload_dir_path() . "firstdata/{$gateway_info['_epl_user']}.pem";
     $payment_amount = epl_get_element_m('pay_deposit', 'money_totals', $cart_totals) == 1 ? epl_get_element_m('min_deposit', 'money_totals', $cart_totals, $cart_totals['money_totals']['grand_total']) : $cart_totals['money_totals']['grand_total'];
     $this->epl->load_file('libraries/gateways/firstdata/lphp.php');
     $_tolphp = array();
     $lphp = new lphp();
     //$_tolphp["debugging"] = ($gateway_info['_epl_sandbox'] == 10); //set to true to see debug message
     $_tolphp["host"] = $host;
     $_tolphp["port"] = "1129";
     $_tolphp["keyfile"] = $pem_file;
     $_tolphp["configfile"] = $gateway_info['_epl_user'];
     $_tolphp["ordertype"] = "SALE";
     $_tolphp["result"] = "LIVE";
     # LIVE for live, for test set to GOOD, DECLINE, DUPLICATE
     $_tolphp["cardnumber"] = $_POST['_epl_cc_num'];
     $_tolphp["cardexpmonth"] = date('m', strtotime($_POST['_epl_cc_exp_month']));
     $_tolphp["cardexpyear"] = substr($_POST['_epl_cc_exp_year'], 0 - 2);
     $_tolphp["chargetotal"] = epl_get_balance_due();
     $_tolphp["name"] = $_POST['_epl_cc_first_name'] . ' ' . $_POST['_epl_cc_last_name'];
     $_tolphp["address1"] = $_POST['_epl_cc_address'];
     $_tolphp["city"] = $_POST["_epl_cc_city"];
     $_tolphp["state"] = $_POST["_epl_cc_state"];
     $_tolphp["zip"] = $_POST["_epl_cc_zip"];
     $_tolphp["phone"] = epl_get_element('_epl_cc_phone', $_POST, '');
     $_tolphp["email"] = epl_get_element('_epl_cc_email', $_POST, '');
     $addrnum = $_POST['_epl_cc_address'];
     $temp_address = explode(" ", $_POST['_epl_cc_address']);
     if (count($temp_address) > 0) {
         $addrnum = $temp_address[0];
     }
     $_tolphp["addrnum"] = $addrnum;
     $result = $lphp->curl_process($_tolphp);
     if (is_array($result) && $result['r_approved'] == 'APPROVED') {
         // Payment successful
         $data['post_ID'] = $post_ID;
         $data['_epl_grand_total'] = $cart_totals['money_totals']['grand_total'];
         $data['_epl_payment_amount'] = $cart_totals['money_totals']['grand_total'];
         $data['_epl_payment_date'] = current_time('mysql');
         $data['_epl_payment_method'] = $this->erm->get_payment_profile_id();
         $data['_epl_transaction_id'] = $result['r_ref'];
         $data['_epl_prediscount_total'] = epl_get_element('pre_discount_total', $cart_totals['money_totals'], 0);
         $data['_epl_discount_amount'] = epl_get_element('discount_amount', $cart_totals['money_totals'], 0);
         $data = apply_filters('epl_firstdata_response_data', $data, $result);
         $this->erm->update_payment_data($data);
         return true;
     } else {
         return '<div class="epl_error">ERROR: ' . $result['r_error'] . '</div>';
     }
 }
 function get_the_cart_selected_payment()
 {
     global $event_details;
     $p = epl_get_element('_epl_payment_method', $_POST);
     if (!$p) {
         $p = epl_get_element('_epl_payment_method', $this->current_data[$this->regis_id]);
     }
     if (!$p) {
         $p = epl_get_element_m('_epl_payment_method', '_dates', $this->current_data[$this->regis_id]);
     }
     if (!$p) {
         //pre v1.3
         $p = epl_get_element_m('_epl_selected_payment', '_dates', $this->current_data[$this->regis_id]);
     }
     if (!$p) {
         $p = epl_get_element('_epl_default_selected_payment', $event_details, array());
     }
     if (!$p) {
         $p = (int) epl_get_element('_epl_payment_method', $this->full_data);
     }
     return epl_is_empty_array($p) && !is_int($p) ? null : $p;
 }
    <table>
        <?php 
    global $event_details;
    foreach ($events as $event_id => $totals) {
        setup_event_details($event_id);
        ?>

            <tr>
                <td>
                    <?php 
        echo epl_get_element('post_title', $event_details);
        ?>
                </td>
                <td class="epl_ta_r">
                    <?php 
        echo epl_get_formatted_curr(epl_get_element_m('grand_total', 'money_totals', $totals), null, true);
        ?>
                </td>
                <td class="epl_cart_totals_row_delete">
                    <a href="#" class="delete_cart_item" data-caller="summary" id="<?php 
        echo $event_id;
        ?>
">
                        <img src="<?php 
        echo EPL_FULL_URL;
        ?>
/images/cross.png" alt="Delete" />
                    </a>
                </td>
            </tr>
    <?php 
 if (isset($current_att_count['_total_att_' . get_the_ID() . "_date_{$date_id}"])) {
     $num_regis = epl_get_element('_total_att_' . get_the_ID() . "_date_{$date_id}", $current_att_count, 0);
 }
 $avail = $capacity - $num_regis;
 $time_optional = epl_is_time_optonal();
 foreach ($event_details['_epl_start_time'] as $time_id => $time) {
     if (!$time_optional) {
         $num_regis = 0;
         if (isset($current_att_count['_total_att_' . get_the_ID() . "_time_{$date_id}_{$time_id}"])) {
             $num_regis = epl_get_element('_total_att_' . get_the_ID() . "_time_{$date_id}_{$time_id}", $current_att_count, 0);
         }
     }
     if (epl_is_date_level_time() && !epl_is_empty_array($date_specifc_time) && (!isset($date_specifc_time[$time_id]) || !isset($date_specifc_time[$time_id][$date_id]))) {
         continue;
     }
     $weekday_specific = epl_get_element_m($time_id, '_epl_weekday_specific_time', $event_details, array());
     if (!empty($weekday_specific) && !isset($weekday_specific[$weekday])) {
         continue;
     }
     $start_time = strtotime($time, $start_date);
     $signed_in_key = "{$event_id}-{$date_id}-{$start_date}-{$time_id}";
     $signed_in_count = epl_get_element($signed_in_key, $session_signed_in_counts, 0);
     $time_cap = epl_get_element($time_id, $time, '-');
     $display_date = epl_formatted_date($start_date);
     //build the td rows
     $add_regis_link = add_query_arg(array('_date_id' => $date_id, '_time_id' => $time_id, 'event_id' => $event_id), admin_url('post-new.php?post_type=epl_registration'));
     $add_regis_link = '<a href="' . $add_regis_link . '" class="add_att_link" title="+ Att" data-no_action="1" target="_blank">Add Registration</a>';
     $temp_table_row = '<td>' . epl_anchor(admin_url("post.php?post=" . get_the_ID() . "&action=edit"), get_the_title()) . '</td>';
     $temp_table_row .= '<td>' . $display_date . '</td>';
     $temp_table_row .= '<td>' . $time . '-' . $event_details['_epl_end_time'][$time_id] . '</td>';
     $temp_table_row .= "<td class='singed_in_count'>" . $signed_in_count . '</td>';
 function get_session_attendees()
 {
     global $event_details, $wpdb;
     $this->erptm = $this->epl->load_model('epl-report-model');
     $filters = array('event_id' => $_REQUEST['event_id'], 'date_id' => epl_get_element('date_id', $_REQUEST, null), 'time_id' => epl_get_element('time_id', $_REQUEST, null), 'names_only' => epl_get_element('names_only', $_REQUEST, 1));
     setup_event_details($filters['event_id']);
     $data['pack_regis'] = epl_get_element('_epl_pack_regis', $event_details, 0) == 10;
     $_filter = array();
     if ($data['pack_regis']) {
         //find all the registrations for this event
         //for each one, find out if package
         //for each one that is pack, find the pack * X days
         //contstruct array
         $event_date_keys = array_keys($event_details['_epl_start_date']);
         $pack_counts = epl_get_element('_epl_price_pack_size', $event_details, array());
         $regis_packs = $wpdb->get_results("SELECT * FROM {$wpdb->epl_regis_data} WHERE event_id = " . intval($event_details['ID']));
         if ($regis_packs) {
             $attendance_dates = array();
             foreach ($regis_packs as $reg) {
                 if (isset($pack_counts[$reg->price_id])) {
                     $start_date_id = $reg->price_id;
                     $offset = array_search($reg->date_id, $event_date_keys);
                     $attendance_dates[$reg->id] = array_slice($event_details['_epl_start_date'], $offset, $pack_counts[$reg->price_id]);
                     $_filter[$reg->id] = $reg->id;
                     if ($filters['date_id'] && !isset($attendance_dates[$reg->id][$filters['date_id']])) {
                         unset($_filter[$reg->id]);
                         unset($attendance_dates[$reg->id]);
                     }
                 }
             }
         }
     }
     if (!epl_is_empty_array($_filter)) {
         $_filter = implode(',', $_filter);
         $_filter = " AND rd.id IN ({$_filter})";
     }
     if ($filters['names_only'] == 1) {
         $data['list'] = $this->erptm->attendee_form_data($_filter);
     } else {
         $data['list'] = $this->erptm->get_all_data($_filter);
     }
     $data['fields'] = $this->erptm->get_form_fields();
     $data['attendance_dates'] = $attendance_dates;
     $data['event_title'] = $event_details['post_title'];
     $data['event_date'] = isset($_REQUEST['date_id']) ? epl_formatted_date(epl_get_element_m($_REQUEST['date_id'], '_epl_start_date', $event_details), "D, M j") : '';
     $data['event_time'] = isset($_REQUEST['time_id']) ? epl_get_element_m($_REQUEST['time_id'], '_epl_start_time', $event_details) : '';
     $url = admin_url("edit.php?post_type=epl_event&epl_action=view_names&table_view=1&epl_controller=epl_report_manager&print=1");
     $url = add_query_arg($filters, $url);
     $data['filters'] = $filters;
     $r = $this->epl->load_view('user-regis-manager/session-attendees', $data, true);
     return $r;
 }
function epl_get_event_status($raw = false)
{
    global $epl_fields, $event_details;
    $status = epl_get_element('_epl_event_status', $event_details);
    if ($raw) {
        return array($status => epl_get_element_m($status, 'options', epl_get_element('_epl_event_status', $epl_fields['epl_option_fields'])));
    }
    return epl_get_element_m($status, 'options', epl_get_element('_epl_event_status', $epl_fields['epl_option_fields']));
}
        <?php 
        $start_time = epl_get_element($_key, $class_start_times) ? epl_get_element($_key, $class_start_times) : current($event_details['_epl_start_time']);
        ?>
            <td><?php 
        echo $start_time;
        ?>
</td>
<?php 
        $end_time = epl_get_element($_key, $class_end_times) ? epl_get_element($_key, $class_end_times) : current($event_details['_epl_end_time']);
        ?>
            <td><?php 
        echo $end_time;
        ?>
</td>
            <td><?php 
        echo epl_get_element_m($_key, '_epl_class_session_note', $event_details);
        ?>
</td>
            <td>
<?php 
        echo epl_get_element($absentee_key, $absentees) ? epl__('Yes') : ($_date <= EPL_DATE ? epl__('No') : '');
        ?>

            </td>
            <td><?php 
        echo $_date >= EPL_DATE ? '<a href="#" class="epl_reschedule_link">Reschedule</a>' : '';
        ?>
</td>
        </tr>

<?php 
 }
 $go = true;
 if ($_from_date && epl_compare_dates($date, $_from_date, '<')) {
     $go = false;
 }
 if ($_to_date && epl_compare_dates($date, $_to_date, '>')) {
     $go = false;
 }
 if (!$go) {
     continue;
 }
 foreach ($event_details['_epl_start_time'] as $time_id => $time) {
     if (epl_is_date_level_time() && !epl_is_empty_array($date_specifc_time) && (!isset($date_specifc_time[$time_id]) || !isset($date_specifc_time[$time_id][$date_id]))) {
         continue;
     }
     $regis_end_time = epl_get_element_m($time_id, '_epl_regis_endtime', $event_details, null);
     if ($regis_end_time && epl_compare_dates(strtotime($regis_end_time, $date), EPL_TIME, '<')) {
         continue;
     }
     $register_button = get_the_register_button(null, false, $register_button_url + array('_time_id' => $time_id));
     $event_link = '';
     if (isset($event_details['_epl_link']) && $event_details['_epl_link'] != '') {
         $event_link = epl_anchor($event_details['_epl_link'], 'Learn More', '_self', 'class="event_link"') . ' ' . $register_button;
     } else {
         $event_link = $register_button;
     }
     //removed per Jessi
     //if (!$regis_end_time && epl_compare_dates( strtotime($time, $date), EPL_TIME, '<' ))
     //continue;
     $event_id = get_the_ID();
     $event_excerpt = get_the_excerpt();
 function adjust_discountable_amounts($for = 'category', $args = null)
 {
     global $event_totals;
     static $adjusted = false;
     if (epl_is_empty_array($event_totals)) {
         return false;
     }
     $num_events = count($event_totals);
     $pay_profile_ok = 1;
     if ($for == 'pay_profiles') {
         $selected_pay_id = EPL_registration_model::get_instance()->get_payment_profile_id();
         $pay_profile_ok = $selected_pay_id && in_array($selected_pay_id, $args);
     }
     foreach ($event_totals as $event_id => $totals) {
         setup_event_details($event_id);
         //if the taxonomy in question is not assigned to this event
         //then adjust the totals to exclude this event numbers from the discount processes
         //same applies to pay profiles
         if ($for == 'category' && !has_term($args, 'epl_event_categories', $event_id) || !$pay_profile_ok) {
             $this->totals['money_totals']['discountable_total'] -= epl_get_element_m('discountable_total', 'money_totals', $totals, 0);
             $this->totals['money_totals']['non_discountable_total'] += epl_get_element_m('grand_total', 'money_totals', $totals, 0);
             $this->totals['money_totals']['num_discountable_events_in_cart'] -= 1;
         }
     }
     $adjusted = true;
     //return $totals;
 }
 function view_names()
 {
     global $event_details, $wpdb;
     $filters = array('event_id' => $_REQUEST['event_id'], 'date_id' => epl_get_element('date_id', $_REQUEST, null), 'time_id' => epl_get_element('time_id', $_REQUEST, null), 'names_only' => epl_get_element('names_only', $_REQUEST, 0), 'combined' => epl_get_element('combined', $_REQUEST, 0));
     setup_event_details($filters['event_id']);
     $show_second_to_last = apply_filters('epl_erpt__view_names__show_second_to_last', true);
     $data['pack_regis'] = epl_get_element('_epl_pack_regis', $event_details, 0) == 10;
     $data['pack_consecutive'] = epl_get_element('_epl_pack_regis_consecutive', $event_details, 0) == 10;
     $_filter = array();
     $attendance_dates = array();
     //if this is a pack class
     if ($data['pack_regis']) {
         //find all the registrations for this event
         //for each one, find out if package
         //for each one that is pack, find the pack * X days
         //contstruct array
         $event_date_keys = array_keys($event_details['_epl_start_date']);
         $pack_counts = epl_get_element('_epl_price_pack_size', $event_details, array());
         $registrations = $wpdb->get_results("\n                    SELECT rd.* \n                    FROM {$wpdb->epl_regis_data} rd\n                        INNER JOIN {$wpdb->epl_registration} r\n                            ON r.regis_id=rd.regis_id\n                        WHERE 1=1 AND (r.status = 2 OR r.status = 5)\n                        AND event_id = " . intval($event_details['ID']));
         if ($registrations) {
             foreach ($registrations as $regis) {
                 $regis_weekday = date('N', $event_details['_epl_start_date'][$regis->date_id]);
                 if (isset($pack_counts[$regis->price_id])) {
                     $pack_counter = epl_get_element($regis->price_id, $pack_counts, 1);
                     $start = false;
                     foreach ($event_details['_epl_start_date'] as $date_id => $date) {
                         if (!$start && $date_id != $regis->date_id) {
                             continue;
                         }
                         $start = true;
                         $_weekday = date('N', $date);
                         if ($regis_weekday != $_weekday || $pack_counter == 0) {
                             continue;
                         }
                         $pack_counter--;
                         $attendance_dates[$regis->id][$date_id] = $date;
                         $_filter[$regis->id] = $regis->id;
                     }
                     if ($filters['date_id'] && !isset($attendance_dates[$regis->id][$filters['date_id']]) || $filters['time_id'] && $filters['time_id'] != $regis->time_id) {
                         unset($_filter[$regis->id]);
                         unset($attendance_dates[$regis->id]);
                     }
                     //$offset = array_search( $regis->date_id, $event_date_keys );
                     //$attendance_dates[$regis->id] = array_slice( $event_details['_epl_start_date'], $offset, $pack_counts[$regis->price_id] );
                 }
             }
         }
     }
     if (!epl_is_empty_array($_filter)) {
         $_filter = implode(',', $_filter);
         $_filter = " AND rd.id IN ({$_filter})";
     }
     if ($filters['names_only'] == 1) {
         $data['list'] = $this->erptm->attendee_form_data($_filter);
     } else {
         $data['list'] = $this->erptm->get_all_data_2($_filter);
     }
     $data['fields'] = $this->erptm->get_form_fields();
     $data['attendance_dates'] = $attendance_dates;
     $data['event_title'] = $event_details['post_title'];
     $data['event_date'] = isset($_REQUEST['date_id']) ? epl_formatted_date(epl_get_element_m($_REQUEST['date_id'], '_epl_start_date', $event_details), "D, M j") : '';
     $data['event_time'] = isset($_REQUEST['time_id']) ? epl_get_element_m($_REQUEST['time_id'], '_epl_start_time', $event_details) : '';
     $url = admin_url("edit.php?post_type=epl_event&epl_action=view_names&table_view=1&epl_controller=epl_report_manager&print=1");
     $url = add_query_arg($filters, $url);
     $data['print_icon'] = !isset($_REQUEST['print']) ? '<div><a href="' . $url . '" target="_blank"><img src="' . EPL_FULL_URL . 'images/printer.png" /></a></div>' : '';
     $data['filters'] = $filters;
     if ($filters['names_only'] == 1) {
         $r = $this->epl->load_view('admin/reports/view-names', $data, true);
     } elseif ($filters['combined'] == 1) {
         $r = $this->epl->load_view('admin/reports/view-full-combined', $data, true);
     } else {
         $r = $this->epl->load_view('admin/reports/view-full-data', $data, true);
     }
     if ($GLOBALS['epl_ajax']) {
         return $r;
     }
     if (isset($_REQUEST['print'])) {
         $data['content'] = $r;
         $this->epl->load_view('admin/template', $data);
         return;
     }
     echo $r;
 }
       $_a['time'] = $event_details['_epl_start_time'][$row->time_id];
 */
 if ($tmp_regis_id == '' || $tmp_regis_id != $row->regis_id) {
     $tmp_regis_id = $row->regis_id;
     $new_record = true;
     $ticket_buyer_data = array();
     $form_counter = 0;
     if ($has_att_forms) {
         $form_counter++;
     }
 }
 if (!$new_record && !$has_att_forms) {
     continue;
 }
 $payment_amount = $row->payment_amount == 0 ? 0 : $row->payment_amount > $row->event_total && $row->num_events > 1 ? $row->event_total : $row->payment_amount;
 $pack_size = epl_get_element_m($row->price_id, '_epl_price_pack_size', $event_details, 1);
 $_a['paid_per_class'] = $row->price;
 if ($row->total_quantity > 1) {
     $_a['paid_per_class'] = $payment_amount / $row->total_quantity;
 }
 if ($row->event_total == $payment_amount) {
     $_a['paid_per_class'] = $row->price;
 }
 if ($pack_size > 1) {
     $_a['paid_per_class'] = $payment_amount / $row->total_quantity / $pack_size;
 } else {
     if ($row->num_events > 1) {
         if ($payment_amount > $_a['price']) {
             $_a['paid_per_class'] = $_a['price'];
         } else {
             $_a['paid_per_class'] = $payment_amount / $row->num_dates / $row->total_quantity;
Beispiel #16
0
            <div class="epl_discount_label"><?php 
    echo epl_get_setting('epl_registration_options', '_epl_discount_input_label', epl__('Discount Code')) . "&nbsp;";
    ?>
            </div>
            <div class="epl_discount_field">
                <?php 
    echo $cart_data['discount_field'];
    ?>
            </div>

        </div>
    <?php 
}
?>
    <?php 
if ($mode != 'overview' && epl_get_regis_setting('epl_enable_donation') == 10 || $mode == 'overview' && epl_get_element_m('donation_amount', 'money_totals', $cart_data['cart_totals'], 0) > 0) {
    ?>
        <div id="epl_donation_wrapper" class="epl_section epl_ov_a epl_ta_r">

            <?php 
    echo epl__('Donation') . ":&nbsp;" . $cart_data['donation_field'];
    ?>

        </div>
    <?php 
}
?>

    <?php 
if (!epl_is_zero_total()) {
    ?>
        function epl_column_data($column_name, $post_ID)
        {
            global $epl_fields, $event_details, $event_snapshot;
            $this->ecm->setup_event_details($post_ID);
            $this->erm->event_snapshot($post_ID);
            switch ($column_name) {
                case 'id':
                    echo $post_ID;
                    break;
                case 'location':
                    echo get_the_location_name();
                    break;
                case 'status':
                    $s = epl_get_event_status(true);
                    $class = 'status_' . key($s);
                    echo "<span class='status {$class}'>" . current($s) . '</span>';
                    break;
                    /*  case 'epl_categories':
                    
                                      foreach ( wp_get_object_terms( $id, 'epl_categories' ) as $tax )
                                      $r[] = $tax->name;
                    
                                      echo!is_array( $r ) ? '' : implode( ", ", $r );
                    
                                      break; */
                /*  case 'epl_categories':
                
                                  foreach ( wp_get_object_terms( $id, 'epl_categories' ) as $tax )
                                  $r[] = $tax->name;
                
                                  echo!is_array( $r ) ? '' : implode( ", ", $r );
                
                                  break; */
                case 'start_date':
                    $base_url = epl_get_url();
                    $event_regis_data = current($event_snapshot);
                    $table_link_arr = array('epl_action' => 'view_names', 'epl_download_trigger' => 1, 'table_view' => 1, 'epl_controller' => 'epl_report_manager', 'event_id' => $event_id);
                    $csv_link_arr = array('epl_action' => 'epl_attendee_list', 'epl_download_trigger' => 1, 'epl_controller' => 'epl_registration', 'event_id' => $event_id);
                    if (epl_is_empty_array($event_regis_data)) {
                        break;
                    }
                    $counter = 1;
                    foreach ($event_regis_data as $date_id => $date_data) {
                        $last_day = end($event_details['_epl_start_date']);
                        if ($last_day > EPL_DATE && ($event_details['_epl_event_status'] == 1 && $date_data['date']['timestamp'] < EPL_DATE) || $counter > 1) {
                            continue;
                        }
                        $counter++;
                        $date = $date_data['date']['disp'];
                        $date_capacity = epl_get_element_m($date_id, '_epl_date_capacity', $event_details);
                        $times = $date_data['time'];
                        ?>

                        <table id="event_snapshot_table" class="event_snapshot_sorting">
                            <thead>
                                <tr>
                                    <th><?php 
                        epl_e('Date');
                        ?>
</th>
                                    <th><?php 
                        epl_e('Time');
                        ?>
</th>
                                    <th><?php 
                        epl_e('Attendees');
                        ?>
</th>
                                    <th></th>
                                </tr>

                            </thead>

                            <?php 
                        foreach ($times as $time_id => $time_data) {
                            if (epl_is_date_level_time() && !epl_is_empty_array($date_specifc_time) && (!isset($date_specifc_time[$time_id]) || !isset($date_specifc_time[$time_id][$date_id]))) {
                                continue;
                            }
                            $time_capacity = epl_get_element_m($time_id, '_epl_time_capacity', $event_details);
                            $capacity = $time_capacity ? $time_capacity : ($date_capacity ? $date_capacity : epl_get_element_m($date_id, '_epl_date_per_time_capacity', $event_details));
                            $dt_array = array('date_id' => $date_id, 'time_id' => $time_id, 'event_id' => $post_ID);
                            $table_link_arr = array_merge($table_link_arr, $dt_array);
                            $csv_link_arr += $dt_array;
                            ?>

                                <tr class="epl_date_time">

                                    <td><?php 
                            echo date_i18n('D M d, Y', epl_get_date_timestamp(epl_get_element($date_id, $event_details['_epl_start_date'])));
                            ?>
</td>

                                    <?php 
                            if (epl_is_time_optonal()) {
                                ?>
                                        <td colspan="1"> - </td>
                                    <?php 
                            } else {
                                ?>
                                        <td><?php 
                                echo $time_data['disp'];
                                ?>
</td>

                                    <?php 
                            }
                            ?>

                                    <td><?php 
                            echo $time_data['regis'];
                            ?>
 / <?php 
                            echo $capacity ? $capacity : '&#8734;';
                            ?>
</td>


                                    <td>
                                        <?php 
                            echo epl_anchor(add_query_arg(array_merge($table_link_arr, $dt_array) + array('names_only' => 1), $base_url), epl__('View Attendees'), null, 'class="epl_view_attendee_list_table button-secondary"');
                            $table_link_arr['epl_action'] = 'epl_attendee_list';
                            $table_link_arr['epl_controller'] = 'epl_registration';
                            echo epl_anchor(add_query_arg($table_link_arr, $base_url), epl__('View Full Data'), null, 'class="epl_view_attendee_list_table button-secondary"');
                            echo epl_anchor(add_query_arg(array_merge($csv_link_arr, $dt_array), $base_url), epl__('Export CSV'), null, 'class="button-secondary"');
                            //echo  epl_anchor( $_SERVER['PHP_SELF'] . '&epl_action=epl_event_snapshot&event_id=' . $post->ID, epl__( 'Snapshot' ), '_blank', "class='epl_event_snapshot' data-event_id = '" . $post->ID . "'" );
                            ?>


                                    </td>

                                </tr>

                                <?php 
                        }
                    }
                    ?>


                    </table>
                    <?php 
                    break;
                default:
                    break;
                case 'actions':
                    $url_vars = array('epl_action' => 'duplicate_event', 'event_id' => $post_ID);
                    $url = add_query_arg($url_vars, epl_get_url());
                    echo " <a href='epl_action=duplicate_event&event_id={$post_ID}'><img src='" . EPL_FULL_URL . "images/status_online.png' title='" . epl__('Attendees') . "' alt='" . epl__('Attendees') . "' /></a>";
                    echo " <a href='epl_action=duplicate_event&event_id={$post_ID}'><img src='" . EPL_FULL_URL . "images/doc_excel_csv.png' title='" . epl__('Attendees') . "' alt='" . epl__('Attendees') . "' /></a>";
                    break;
            }
            // end switch
        }
 function column_data($column_name, $post_ID)
 {
     global $epl_fields, $event_details, $regis_details;
     $this->regis_meta = $this->ecm->setup_regis_details($post_ID);
     $regis_id = $this->regis_meta['__epl']['_regis_id'];
     $event_id = '';
     $event_name = '';
     $num_attendees = '';
     if (isset($this->regis_meta['_epl_events']) && !empty($this->regis_meta['_epl_events'])) {
         $event_id = key($this->regis_meta['_epl_events']);
         $this->ecm->setup_event_details($event_id);
         //$event_name = get_post( $event_id )->post_title;
         $event_name = $event_details['post_title'];
         $href = add_query_arg(array('epl_action' => 'epl_attendee_list', 'epl_download_trigger' => 1, 'event_id' => $event_id), epl_get_url());
         $xl_href = add_query_arg(array('epl_action' => 'epl_excel_attendee_list', 'epl_download_trigger' => 1, 'post_ID' => $post_ID, 'event_id' => $event_id), epl_get_url());
         //$event_name = '<a href="' . $href . '"><img src="' . EPL_FULL_URL . 'images/doc_excel_csv.png" /></a> <a data-post_id = "' . $post_ID . '" data-event_id="' . $event_id . '" class="epl_event_snapshot" href="#"><img id = "' . $event_id . '"  src="' . EPL_FULL_URL . 'images/application_view_list.png" /> </a><span class="">' . $event_name . '</span>';
         //$xevent_name = '<a href="' . $xl_href . '"><img src="' . EPL_FULL_URL . 'images/doc_excel_csv.png" /></a>';
         //$event_name = $xevent_name . '<a href="' . $href . '"><img src="' . EPL_FULL_URL . 'images/doc_excel_csv.png" /></a><span class="event_name">' . $event_name . '</span>';
         $xevent_name = '<span class="event_name1">' . $event_name . '</span><br />';
         //<a href="' . $xl_href . '">Excel</a>, ';
         $event_name = $xevent_name . '<a href="' . $href . '">CSV</a>';
     }
     switch ($column_name) {
         case 'attendees':
             if (is_array($this->regis_meta['__epl'][$regis_id]['_attendee_info']) && is_array($this->personal_field_ids)) {
                 $d = array_intersect_key($this->regis_meta['__epl'][$regis_id]['_attendee_info'], $this->personal_field_ids);
                 $r = array();
                 $fn = epl_array_flatten(current($d));
                 $ln = epl_array_flatten(next($d));
                 foreach ((array) $fn as $k => $v) {
                     $r[] = $v . ' ' . stripslashes_deep(html_entity_decode(htmlspecialchars_decode(epl_get_element($k, $ln)), ENT_QUOTES, 'UTF-8'));
                 }
                 echo implode('<br>', array_unique($r));
             }
             break;
         case 'id':
             echo $post_ID;
             break;
         case 'event':
             //TODO move to view
             $data = array();
             echo '<table class="epl_regis_list_regis_details">';
             foreach ((array) $this->regis_meta['__epl'][$regis_id]['_events'] as $event_id => $totals) {
                 setup_event_details($event_id);
                 $data['event_name'] = $event_details['post_title'];
                 $data['quantity'] = epl_get_element($event_id, epl_get_element_m('total', '_att_quantity', $totals), 0);
                 if ($data['quantity'] == 0) {
                     //1.3 fix
                     foreach ($this->regis_meta['__epl'][$regis_id]['_dates']['_att_quantity'][$event_id] as $pr => $q) {
                         $data['quantity'] += array_sum($q);
                     }
                 }
                 $link = epl_anchor(admin_url('post.php?post=' . $event_details['ID'] . '&action=edit'), $event_details['post_title']);
                 echo "<tr><td>{$link}</td><td class='qty'>{$data['quantity']}</td></tr>";
             }
             echo '</table>';
             break;
         case 'num_attendees':
             /*
              $this->get_values( $post_ID );
              $data['event_id'] = $event_id;
             
              //events, dates, times, prices, quantities
              $data['cart_data'] = $this->earm->__in( $this->event_meta + $this->regis_meta )->show_cart();
              echo $this->epl->load_view( 'admin/registration/regis-list-cart-section', $data, true );
             */
             $num_attendees = $this->regis_meta['_total_att_' . $event_id];
             if (epl_is_waitlist_record()) {
                 foreach ($this->regis_meta as $key => $value) {
                     if (strpos($key, "_total_waitlist_att_") !== false) {
                         $num_attendees = $value . ' (' . epl__('waitlist') . ')';
                         break;
                     }
                 }
             }
             echo "<span class='num_attendees'>{$num_attendees}</span> ";
             if ($num_attendees > 0) {
                 $href = add_query_arg(array('epl_action' => 'epl_regis_snapshot', 'post_ID' => $post_ID, 'event_id' => $event_id), epl_get_url());
                 echo ' <a data-post_id = "' . $post_ID . '" data-event_id="' . $event_id . '" class="epl_regis_snapshot" href="#"><img src="' . EPL_FULL_URL . 'images/application_view_list.png" /> </a>';
             }
             echo epl_get_send_email_button($post_ID, $event_id, true);
             break;
         case 'payment_status':
             $payment_info = $this->payment_info_box($post_ID);
             echo $payment_info;
             $notes = epl_get_element('_epl_regis_note', $this->regis_meta, null);
             if ($notes) {
                 $notes = get_post_meta($post_ID, '_epl_regis_note', false);
                 foreach ($notes as $note) {
                     $d = date_i18n('Y-m-d H:i', $note['timestamp']);
                     echo "<p>{$note['action']}<span style='float:right'>{$d}</span></p>";
                 }
             }
             break;
         case 'payment':
             echo "Payment Info";
             break;
         default:
             break;
     }
     // end switch
 }
" href="<?php 
        echo $event['register_link'];
        ?>
">
                            <?php 
        echo $event['title'];
        ?>
                        </a>
                        <span style="display:none;" class="event_details_hidden"><?php 
        echo strip_tags($event['description'], '<img>');
        ?>
</span>
                    </div>

                    <?php 
        if (!is_null($loc_id = epl_get_element_m($event['date_id'], '_epl_date_location', $event_details, epl_get_event_property('_epl_event_location', true) > 0))) {
            ?>
                        <div class="location_details" style="text-align: right;">
                            <div class="event_location">
                                <?php 
            the_location_details($loc_id);
            echo get_the_location_name();
            ?>
                                <br />
                                <?php 
            echo get_the_location_address();
            ?>
<br />
                                <?php 
            echo get_the_location_address2() != '' ? get_the_location_address2() . '<br />' : '';
            ?>
 function get_event_money_totals($event_id = null, $all_statuses = false, $refresh = true)
 {
     global $event_details, $wpdb;
     if (!$refresh && false !== ($money_totals = get_transient('_epl_transient__regis_money_totals__' . $event_id))) {
         return $money_totals;
     }
     $WHERE = '';
     $event_id = is_null($event_id) ? epl_get_element('ID', $event_details, null) : $event_id;
     $debug = false;
     // if ( $event_id == 11145 )
     //   $debug = true;
     $dates = $event_details['_epl_start_date'];
     $event_date_keys = array_keys($dates);
     if (epl_is_empty_array($event_date_keys)) {
         return null;
     }
     $times = $event_details['_epl_start_time'];
     $pack_regis = epl_get_element('_epl_pack_regis', $event_details, 0) == 10;
     $date_specifc_time = epl_get_element('_epl_date_specific_time', $event_details, false);
     if (!is_null($event_id)) {
         $WHERE .= " AND rd.event_id = {$event_id}";
     }
     if (!$all_statuses) {
         $WHERE .= " AND (r.status >= 2 AND r.status <= 5) ";
     }
     $registrations = $wpdb->get_results("\r\n        SELECT \r\n          r.*,\r\n          rd.id as rd_id, rd.event_id,rd.date_id,rd.time_id,rd.price_id,rd.price,rd.quantity,rd.total_quantity,\r\n          rp.payment_amount,\r\n          re.grand_total as event_total,\r\n          re.num_dates\r\n        \r\n        FROM {$wpdb->epl_regis_data} rd \r\n        INNER JOIN {$wpdb->epl_registration} r\r\n            ON r.regis_id = rd.regis_id\r\n        INNER JOIN {$wpdb->epl_regis_events} re\r\n            ON (rd.regis_id = re.regis_id AND rd.event_id = re.event_id)\r\n        LEFT JOIN {$wpdb->epl_regis_payment} rp\r\n            ON r.regis_id = rp.regis_id\r\n        WHERE 1=1\r\n             {$WHERE}\r\n        GROUP BY rd.id\r\n        ORDER BY rd.id");
     if ($debug) {
         echo "<pre class='prettyprint'>" . __LINE__ . "> " . print_r($wpdb->last_query, true) . "</pre>";
     }
     $money_totals = array();
     if ($debug) {
         echo "<pre class='prettyprint'>" . __LINE__ . "> " . print_r($event_date_keys, true) . "</pre>";
     }
     foreach ($registrations as $row) {
         $true_discount = 0;
         if ($row->discount_amount > 0) {
             $true_discount = $row->discount_amount / $row->total_tickets;
         }
         $donation = 0;
         if ($row->donation_amount != 0) {
             $donation = $row->donation_amount / $row->total_tickets;
         }
         $payment_amount = $row->payment_amount == 0 ? 0 : $row->payment_amount > $row->event_total && $row->num_events > 1 ? $row->event_total : $row->payment_amount;
         $money = $row->price;
         if ($row->total_quantity > 1) {
             $money = $payment_amount / $row->total_quantity;
         }
         if ($row->event_total == $payment_amount) {
             $money = $row->price;
         }
         if ($pack_size > 1) {
             $money = $payment_amount / $row->total_quantity;
         } else {
             if ($row->num_events > 1) {
                 if ($payment_amount > $row->price) {
                     $money = $row->price;
                 } elseif ($row->num_dates > 0) {
                     $money = $payment_amount / $row->num_dates / $row->total_quantity;
                 }
             }
             $money -= $true_discount;
             $money += $donation;
             if ($row->total_quantity >= 1 && $payment_amount < $row->price * $row->total_quantity * $row->num_dates) {
                 $money = $payment_amount / $row->num_dates / $row->total_quantity;
             }
             if ($row->total_quantity == 1 && $payment_amount < $row->price) {
                 $money = $payment_amount;
             }
         }
         if (!$pack_regis) {
             if ($debug) {
                 echo "<pre class='prettyprint'>" . __LINE__ . ">{$row->regis_key} " . basename(__FILE__) . " > " . print_r($money, true) . "</pre>";
             }
             $money_totals["_money_total_{$event_id}_date_{$row->date_id}"] += $money;
             $money_totals["_money_total_{$event_id}_time_{$row->date_id}_{$row->time_id}"] += $money;
         } else {
             $regis_weekday = date('N', $event_details['_epl_start_date'][$row->date_id]);
             $pack_decrement_conter = $pack_size = epl_get_element_m($row->price_id, '_epl_price_pack_size', $event_details, 1);
             $start = false;
             foreach ($event_details['_epl_start_date'] as $date_id => $date) {
                 //find the first date of the pack
                 if (!$start && $date_id != $row->date_id) {
                     continue;
                 }
                 $start = true;
                 $_weekday = date('N', $date);
                 if ($regis_weekday != $_weekday || $pack_decrement_conter == 0) {
                     continue;
                 }
                 $pack_decrement_conter--;
                 if (isset($money_totals["_money_total_{$event_id}_date_{$date_id}"])) {
                     $money_totals["_money_total_{$event_id}_date_{$date_id}"] += $money / $pack_size;
                 } else {
                     $money_totals["_money_total_{$event_id}_date_{$date_id}"] = $money / $pack_size;
                 }
                 if (isset($money_totals["_money_total_{$event_id}_time_{$date_id}_{$row->time_id}"])) {
                     $money_totals["_money_total_{$event_id}_time_{$date_id}_{$row->time_id}"] += $money / $pack_size;
                 } else {
                     $money_totals["_money_total_{$event_id}_time_{$date_id}_{$row->time_id}"] = $money / $pack_size;
                 }
             }
         }
     }
     if ($debug) {
         echo "<pre class='prettyprint'>" . __LINE__ . "> " . print_r($money_totals, true) . "</pre>";
     }
     set_transient('_epl_transient__regis_money_totals__' . $event_id, $money_totals, 60 * 60);
     return $money_totals;
 }
</td>
                                                    <td>
                                                        <input type="text" name="_epl_override[<?php 
                    echo $field_slug;
                    ?>
][label]" value="<?php 
                    echo $label;
                    ?>
" size="80" />
                                                        <?php 
                    if (isset($field_info['options'])) {
                        ?>
                                                            <div style="margin-left: 15px;"><b>Option Labels</b>
                                                                <?php 
                        foreach ($field_info['options'] as $option_key => $option) {
                            $option = epl_get_element_m($option_key, 'options', $override_values[$field_slug], $option);
                            ?>
                                                                    <br /> <textarea name="_epl_override[<?php 
                            echo $field_slug;
                            ?>
][options][<?php 
                            echo $option_key;
                            ?>
]" rows="1" cols="80"><?php 
                            echo $option;
                            ?>
</textarea>
                                                            <?php 
                        }
                        ?>
                                                            </div>
 function get_purchased_tickets($regis_id, $event_id)
 {
     global $event_details, $regis_details;
     $purchased_tickets = $regis_details['__epl'][$regis_id]['_dates']['_att_quantity'][$event_id];
     $r = array();
     foreach ($event_details['_epl_price_name'] as $price_id => $price_name) {
         if ($purchased_tickets[$price_id][0] > 0) {
             $exp = '';
             if (epl_get_element_m($price_id, '_epl_price_pack_type', $event_details) == 'time') {
                 $mem_l = epl_get_element_m($price_id, '_epl_price_pack_time_length', $event_details);
                 $mem_lt = epl_get_element_m($price_id, '_epl_price_pack_time_length_type', $event_details);
                 $start = !epl_is_empty_array($regis_details) ? strtotime($regis_details['post_date']) : EPL_DATE;
                 $exp = ' (' . epl_formatted_date(strtotime("+ {$mem_l} {$mem_lt}", $start)) . ')';
             }
             $r[$price_id] = array('ticket_name' => $price_name . $exp, 'qty' => $purchased_tickets[$price_id][0]);
         }
     }
     return $r;
 }
 $session_time_id = $time_optional ? epl_get_element('time_id', $_POST, '') : $row->time_id;
 $_r = array();
 $_r['regis_key'] = epl_anchor(admin_url('post.php?post=' . $row->regis_id . '&action=edit'), $row->regis_key);
 $_r['status'] = get_the_regis_status($row->status);
 $_r['ticket'] = $event_details['_epl_price_name'][$row->price_id];
 $_r['package'] = '-';
 $user_ticket_use_count_key = "{$row->regis_id}-{$row->event_id}-{$row->date_id}-{$time_id}-{$row->price_id}-{$row->user_id}";
 $_r['use_count'] = epl_get_element($user_ticket_use_count_key, $user_ticket_use_counts, 0);
 $user_session_use_count_key = "{$row->regis_id}-{$row->event_id}-{$row->date_id}-{$_POST['date_ts']}-{$_POST['time_id']}-{$row->price_id}-{$row->user_id}";
 $user_alredy_checked_in = epl_get_element($user_session_use_count_key, $user_session_signed_in_counts, false);
 if (epl_is_pack_regis()) {
     $pack_size = epl_get_element_m($row->price_id, '_epl_price_pack_size', $event_details, 1);
     $exp = '';
     if (epl_get_element_m($row->price_id, '_epl_price_pack_type', $event_details) == 'time') {
         $mem_l = epl_get_element_m($row->price_id, '_epl_price_pack_time_length', $event_details);
         $mem_lt = epl_get_element_m($row->price_id, '_epl_price_pack_time_length_type', $event_details);
         $start = strtotime($row->regis_date);
         $until = strtotime("+ {$mem_l} {$mem_lt}", $start);
         if ($until < EPL_DATE) {
             $exp = epl_wrap(epl__("Expired"), '<span class="epl_font_red"> - ', '</span>');
         }
         $_r['package'] = epl__('Until') . ' ' . epl_formatted_date($until) . $exp;
     } else {
         $remaining = $pack_size - $_r['use_count'];
         if ($remaining <= 0) {
             $exp = epl_wrap(epl__("Credits used up"), ' <span class="epl_font_red">', '</span>');
         }
         $_r['package'] = $pack_size . $exp;
         $_r['use_count'] = "{$_r['use_count']}/{$_r['package']}";
     }
 }

            </tr>

        </thead>    
        <tbody>
            <?php 
    global $event_details;
    $base_url = epl_get_url();
    foreach ($user_bookings as $regis) {
        $event_id = $regis->event_id;
        setup_event_details($event_id);
        //date capacity
        $date_capacity = epl_get_element_m($regis->date_id, '_epl_date_capacity', $event_details, '&infin;');
        //if there is time capacity, grab that or default to date capacity
        $capacity = epl_get_element_m($regis->time_id, '_epl_time_capacity', $event_details, $date_capacity);
        //get counts for this event, cached
        $counts = $erptm->get_attendee_counts($event_id);
        //count date specific key
        $counts_day_key = $event_id . "_time_{$regis->date_id}";
        //counts time specific key
        $counts_time_key = $event_id . "_time_{$regis->date_id}_{$regis->time_id}";
        //if count for that time exists, get num regis, defaults to 0
        $num_regis = epl_get_element('_total_att_' . $counts_time_key, $counts, 0);
        $url_params['epl_token'] = epl_get_token($regis->regis_id . $regis->regis_date);
        $regis_summary_url = add_query_arg($url_params, get_permalink($regis->regis_id));
        $pdf_url = array('epl_action' => 'invoice', 'regis_id' => $regis->regis_id, 'epl_token' => epl_get_token($regis->regis_id . $regis->regis_date));
        $pdf_url = add_query_arg($pdf_url, home_url());
        $arr = array($regis->regis_key, epl_formatted_date($regis->regis_date), epl_formatted_date($event_details['_epl_start_date'][$regis->date_id], 'D'), epl_formatted_date($event_details['_epl_start_date'][$regis->date_id]), $event_details['_epl_start_time'][$regis->time_id], $event_details['post_title'], $regis->ticket_count, get_the_regis_status($regis->status), epl_anchor($regis_summary_url, epl__('Details')) . ' ' . (!$attach_pdf || epl_get_element('_epl_attach_invoice', $event_details, 10) == 0 ? '' : epl_anchor($pdf_url, epl__('PDF'))));
        echo '<tr><td>' . implode('</td><td>', $arr) . '</td></tr>';
    }
 function form_data($regis_id, $_regis_key, $event_id, $tickets_to_show = null)
 {
     global $event_details, $regis_details, $wpdb;
     $attendee_info = $regis_details['__epl'][$_regis_key]['_attendee_info'];
     if ($this->debug) {
         echo "<pre class='prettyprint'>" . __LINE__ . "> " . basename(__FILE__) . " > " . print_r($attendee_info, true) . "</pre>";
     }
     $event_ticket_buyer_forms = array_flip(epl_get_element('_epl_primary_regis_forms', $event_details, array()));
     $event_addit_forms = epl_get_element('_epl_addit_regis_forms', $event_details) ? array_flip($event_details['_epl_addit_regis_forms']) : array();
     if (version_compare(epl_regis_plugin_version(), '1.4', '>=') && epl_sc_is_enabled() && epl_get_setting('epl_sc_options', 'epl_sc_forms_to_use') == 1) {
         $sc_event_ticket_buyer_forms = array_flip(epl_get_setting('epl_sc_options', 'epl_sc_primary_regis_forms', array()));
         $event_ticket_buyer_forms = $sc_event_ticket_buyer_forms;
         // + $event_ticket_buyer_forms;
         $event_addit_forms = array_flip(epl_get_setting('epl_sc_options', 'epl_sc_addit_regis_forms', array()));
     }
     if (empty($event_ticket_buyer_forms)) {
         $event_ticket_buyer_forms = array('4e8b3920c839b' => 1);
     }
     /*
      * find price forms if any.
      */
     $price_forms = epl_get_element('_epl_price_forms', $event_details, array());
     $_price_forms = array();
     foreach ($price_forms as $k => $v) {
         $_price_forms += $v;
     }
     //find the list of all forms
     $available_forms = $this->ecm->get_list_of_available_forms();
     $available_fields = $this->ecm->get_list_of_available_fields();
     //isolate the ticket buyer forms that are selected inside the event
     $ticket_buyer_forms = array_intersect_key($available_forms, $event_ticket_buyer_forms);
     //isolate the additional forms for attendees.
     $addit_forms = array_intersect_key($available_forms, array_merge($event_addit_forms, $_price_forms));
     //This will combine all the fields in all the forms so that we can construct a header row.
     $tickey_buyer_fields = array();
     foreach ($ticket_buyer_forms as $_form_id => $_form_info) {
         $tickey_buyer_fields = array_merge($tickey_buyer_fields, $_form_info['epl_form_fields']);
     }
     //combine all the fields from the attendee forms
     $event_addit_fields = array();
     foreach ($addit_forms as $_form_id => $_form_info) {
         //$event_addit_fields += $_form_info['epl_form_fields'];
         $event_addit_fields = array_merge($event_addit_fields, $_form_info['epl_form_fields']);
     }
     $epl_fields_inside_form = array_flip($tickey_buyer_fields);
     //get the field ids inside the form
     $epl_addit_fields_inside_form = array_flip($event_addit_fields);
     //get the field ids inside the form
     //when creating a form in form manager, the user may rearrange fields.  Find their desired order
     $epl_fields_to_display = $this->epl_util->sort_array_by_array($available_fields, $epl_fields_inside_form);
     $epl_addit_fields_to_display = $this->epl_util->sort_array_by_array($available_fields, $epl_addit_fields_inside_form);
     //final list of all the fields to display
     //$epl_fields_to_display = $epl_fields_to_display + $epl_addit_fields_to_display;
     $ins = array();
     $ins['regis_id'] = $regis_id;
     $ins['event_id'] = $event_id;
     $ins['field_id'] = array();
     $ins['input_slug'] = array();
     $ins['value'] = array();
     if (!$this->primary_pulled) {
         //################################### Ticket buyer form data ############################################
         if ($this->debug) {
             echo "<pre class='prettyprint'>" . __LINE__ . "> " . basename(__FILE__) . " > " . print_r($epl_fields_to_display, true) . "</pre>";
         }
         $form_data_array_tmp = array();
         foreach ($epl_fields_to_display as $field_id => $field_atts) {
             //1.3 stores in [field id][event id][0]
             //2.0 stores in [field id][0]
             //if ( epl_sc_is_enabled() && isset( $attendee_info[$field_id][0] ) ) {
             if (isset($attendee_info[$field_id][0])) {
                 $value = epl_get_element(0, $attendee_info[$field_id]);
             } else {
                 $value = isset($attendee_info[$field_id]) ? epl_get_element(0, $attendee_info[$field_id][$event_id]) : '';
             }
             $raw_value = $value;
             if ($field_atts['input_slug'] == 'email') {
                 $email_list[$regis_post_id] = $value;
                 if ($regis_post_id && $regis_post_id != $this_regis_post_id) {
                     unset($email_list[$regis_post_id]);
                 }
             }
             if ($field_atts['input_type'] == 'select' || $field_atts['input_type'] == 'radio') {
                 $value = $raw_value;
                 //(isset( $field_atts['epl_field_choice_text'][$value] ) && $field_atts['epl_field_choice_text'][$value] !== '') ? $field_atts['epl_field_choice_text'][$value] : $value;
             } elseif ($field_atts['input_type'] == 'checkbox') {
                 if (!epl_is_empty_array($field_atts['epl_field_choice_value'])) {
                     $value = implode(',', (array) $raw_value);
                 } elseif (is_array($value)) {
                     $value = implode(',', $raw_value);
                 }
             }
             //if ( $value != '' ) {
             $ins['field_id'][] = $field_id;
             $ins['input_slug'][] = $field_atts['input_slug'];
             $ins['form_no'] = $this->form_no;
             $ins['value'][] = str_replace($this->delim, " ", $value);
             //$wpdb->insert( $wpdb->epl_regis_form_data, $ins );
             //}
         }
         $ins['field_id'] = implode($this->delim, $ins['field_id']);
         $ins['input_slug'] = implode($this->delim, $ins['input_slug']);
         $ins['form_no'] = $this->form_no;
         $ins['value'] = implode($this->delim, $ins['value']);
         if ($this->debug) {
             echo "<pre class='prettyprint'>" . __LINE__ . "> " . basename(__FILE__) . " > " . print_r($ins, true) . "</pre>";
         }
         $wpdb->insert($wpdb->epl_regis_form_data, $ins);
         //###################  End Ticket Buyer Data #########################################
     }
     //$this->primary_pulled = true;
     $ins['event_id'] = $event_id;
     $ins['field_id'] = array();
     $ins['input_slug'] = array();
     $ins['value'] = array();
     $counter = 0;
     $att_counter = 1;
     foreach ($tickets_to_show as $ticket_id => $ticket_quantities) {
         if (is_array($ticket_quantities)) {
             $tmp_price_inner_keys = array_keys($ticket_quantities);
             $ticket_qty = array_sum($ticket_quantities);
         }
         if ($ticket_qty == 0) {
             continue;
         }
         if (epl_is_empty_array($price_forms)) {
         }
         if ($this->debug) {
             echo "<pre class='prettyprint'>" . __LINE__ . "> " . basename(__FILE__) . " > " . print_r($epl_addit_fields_to_display, true) . "</pre>";
         }
         foreach ($ticket_quantities as $ticket_qty_id => $quantities) {
             if (version_compare($version, '1.2.9', '<')) {
                 $counter = 1;
             }
             for ($i = 0; $i < $quantities; $i++) {
                 $this->form_no++;
                 //not good, runs every time in the loop
                 /* if ( $pack_regis && $attendance_dates = epl_get_element( "_pack_attendance_dates_{$event_id}_{$ticket_id}_" . ($i + 1), $regis_data, null ) ) {
                 
                                       $pack_count = count( $attendance_dates );
                                       $attendance_date_number = array_search( $date_id, array_keys( $attendance_dates ) ) + 1;
                                       }
                 
                                       if ( $pack_regis && $date_id && !isset( $attendance_dates[$date_id] ) ) {
                                       break;
                                       continue;
                                       } */
                 $ticket_label = epl_escape_csv_val(epl_get_element($ticket_id, $event_details['_epl_price_name']));
                 if (epl_is_date_level_price()) {
                     $reserved_date_key = $ticket_qty_id;
                     $reserved_dates = epl_get_element_m($ticket_qty_id, '_epl_start_date', $event_details);
                 }
                 if (epl_is_date_level_time()) {
                     $reserved_time_key = $reserved_times[$ticket_qty_id];
                     $reserved_times_display = epl_get_element_m($reserved_time_key, '_epl_start_time', $event_details);
                 }
                 $ins['field_id'] = array();
                 $ins['input_slug'] = array();
                 $ins['value'] = array();
                 foreach ($epl_addit_fields_to_display as $field_id => $field_atts) {
                     $value = '';
                     //if ( $this->debug )
                     //  echo "<pre class='prettyprint'>" . __LINE__ . "> " . basename( __FILE__ ) . " > " . print_r( epl_get_num_events_in_cart(), true ) . "</pre>";
                     //new v1.2.b9+
                     //if ( epl_sc_is_enabled() || isset( $attendee_info[$field_id][0] ) ) { //if this, price specific forms will get the primary form vals also
                     if (epl_sc_is_enabled()) {
                         $value = epl_get_element(0, $attendee_info[$field_id]);
                     } else {
                         $value = isset($attendee_info[$field_id]) ? epl_get_element(0, $attendee_info[$field_id][$event_id]) : '';
                     }
                     if (isset($attendee_info[$field_id][$event_id][$ticket_id])) {
                         $value = epl_get_element($counter, $attendee_info[$field_id][$event_id][$ticket_id]);
                     } elseif (isset($attendee_info[$field_id][$event_id][$counter])) {
                         $value = $attendee_info[$field_id][$event_id][$counter];
                     }
                     $raw_value = $value;
                     if ($field_atts['input_type'] == 'select' || $field_atts['input_type'] == 'radio') {
                         $value = $raw_value;
                         //(isset( $field_atts['epl_field_choice_text'][$value] ) && $field_atts['epl_field_choice_text'][$value] !== '') ? $field_atts['epl_field_choice_text'][$value] : $value;
                     } elseif ($field_atts['input_type'] == 'checkbox') {
                         if (!epl_is_empty_array($field_atts['epl_field_choice_value'])) {
                             $value = implode(',', (array) $raw_value);
                         } elseif (!epl_is_empty_array($value)) {
                             $value = implode(',', $raw_value);
                         } else {
                             $value = html_entity_decode(htmlspecialchars_decode($value));
                         }
                     }
                     /* else {
                     
                                               $value = html_entity_decode( htmlspecialchars_decode( $value ) );
                                               } */
                     // if ( $value != '' ) { //FOR NOW, WILL ENTER EMPTY ROW IN THE TABLE, WILL HELP TRACK COUNTS
                     $ins['field_id'][] = $field_id;
                     $ins['input_slug'][] = $field_atts['input_slug'];
                     $ins['form_no'] = $this->form_no;
                     $ins['value'][] = str_replace($this->delim, " ", $value);
                     //$wpdb->insert( $wpdb->epl_regis_form_data, $ins );
                     //}
                 }
                 //if ( !epl_is_empty_array( $ins['field_id'] ) ) {
                 // echo "<pre class='prettyprint'>" . __LINE__ . "> " . print_r($ins, true). "</pre>";
                 $ins['field_id'] = implode($this->delim, $ins['field_id']);
                 $ins['input_slug'] = implode($this->delim, $ins['input_slug']);
                 $ins['form_no'] = $this->form_no;
                 $ins['value'] = implode($this->delim, $ins['value']);
                 if ($this->debug) {
                     echo "<pre class='prettyprint'>" . __LINE__ . "> " . basename(__FILE__) . " >counter:{$counter} , ticket_id: {$ticket_id} " . print_r($ins, true) . "</pre>";
                 }
                 $wpdb->insert($wpdb->epl_regis_form_data, $ins);
                 //}
                 $counter++;
                 $att_counter++;
             }
         }
     }
 }
                    echo $time_data['disp'] . epl_prefix(' - ', $event_details['_epl_end_time'][$time_id]) . epl_prefix(' - ', epl_get_element_m($time_id, '_epl_time_note', $event_details));
                    ?>
</td>
                                <td></td>
                                <td><?php 
                    echo $show_avail_spaces ? $time_data['avail'] : '';
                    ?>
</td>
                            </tr>
                            <?php 
                }
                foreach ($prices as $price_id => $price_data) {
                    if (epl_is_time_specific_price($price_id) && !epl_get_element_m($time_id, $price_id, epl_get_element('_epl_time_specific_price', $event_details))) {
                        continue;
                    }
                    if (epl_is_date_specific_price($price_id) && !epl_get_element_m($date_id, $price_id, epl_get_element('_epl_date_specific_price', $event_details))) {
                        continue;
                    }
                    if (epl_get_element($price_id, epl_get_element('_epl_price_hide', $event_details)) == 0) {
                        ?>

                                <tr class="epl_price">
                                    <td><?php 
                        echo $price_data['disp'];
                        ?>
</td>
                                    <td><?php 
                        echo epl_get_formatted_curr($event_details['_epl_price'][$price_id], null, true);
                        ?>
</td>
                                    <td><?php 
    <?php 
$date_specifc_time = epl_get_element('_epl_date_specific_time', $event_details, array());
//echo "<pre class='prettyprint'>" . __LINE__ . "> " . print_r($event_regis_data, true). "</pre>";
foreach ($event_regis_data as $date_id => $date_data) {
    if ($date_data['date']['timestamp'] < 1364083200) {
        continue;
    }
    $date = $date_data['date']['disp'];
    $date_capacity = epl_get_element_m($date_id, '_epl_date_capacity', $event_details);
    $times = $date_data['time'];
    foreach ($times as $time_id => $time_data) {
        if (epl_is_date_level_time() && !epl_is_empty_array($date_specifc_time) && (!isset($date_specifc_time[$time_id]) || !isset($date_specifc_time[$time_id][$date_id]))) {
            continue;
        }
        $time_capacity = epl_get_element_m($time_id, '_epl_time_capacity', $event_details);
        $capacity = $time_capacity ? $time_capacity : ($date_capacity ? $date_capacity : epl_get_element_m($date_id, '_epl_date_per_time_capacity', $event_details));
        ?>

                        <tr class="epl_date_time">
                            <td style="padding-left:38px;"><?php 
        echo date_i18n('D', epl_get_element($date_id, $event_details['_epl_start_date']));
        ?>
</td>
                            <td><?php 
        echo date_i18n('M d, Y', epl_get_element($date_id, $event_details['_epl_start_date']));
        ?>
</td>

<?php 
        if (epl_is_time_optonal()) {
            ?>
 function get_days_for_fc($args = array())
 {
     global $post;
     //page specific caching
     if (!epl_user_is_admin() && epl_get_setting('epl_fullcalendar_options', 'epl_fullcalendar_enable_cache', 10) == 10 && false !== ($fc_dates = get_transient('epl_transient__get_days_for_fc__' . $post->ID))) {
         // return $fc_dates;
     }
     $show_att_counts = intval(epl_get_setting('epl_fullcalendar_options', 'epl_fullcalendar_show_att_count', 0));
     if ($show_att_counts === 0) {
         $show_att_counts = epl_get_element('show_att_counts', $args) === true ? true : $show_att_counts;
     }
     if ($show_att_counts === 1 && !epl_user_is_admin()) {
         $show_att_counts = false;
     }
     if ($show_att_counts === 2 && !is_user_logged_in()) {
         $show_att_counts = false;
     }
     global $event_details;
     $events = $this->get_days_for_widget(3, $args);
     $show_first_date_only = apply_filters('epl__get_days_for_fc__', false);
     $event_bcg_color = epl_get_setting('epl_fullcalendar_options', 'epl_fullcalendar_tax_bcg_color');
     $event_font_color = epl_get_setting('epl_fullcalendar_options', 'epl_fullcalendar_tax_font_color');
     $r = array();
     $counter = 0;
     $date_sel_mode = false;
     //(epl_get_element( 'date_selector', $args, 0 ) == 1);
     foreach ($events as $date => $event_data) {
         $data['_event'] = $event_data;
         setup_event_details($event_data['event_id']);
         $c = $this->epl->load_view('front/tooltip/template-1', $data, true);
         $_t = explode(',', $event_data['term_list']);
         $bc = epl_get_element(current($_t), $event_bcg_color, '#ffffff');
         $tc = epl_get_element(current($_t), $event_font_color, 'blue');
         $_r = array('title' => $date_sel_mode ? 'Select' : $event_data['title'], 'raw_title' => $event_data['title'], 'description' => $date_sel_mode ? $this->erm->get_the_dates($event_data['date_id']) : $c, 'term_list' => $event_data['term_list'], 'start_timestamp' => $event_data['date'], 'start' => epl_formatted_date($event_data['date'], 'Y-m-d'), 'end_timestamp' => $event_data['end'], 'end' => epl_formatted_date($event_data['end'], 'Y-m-d'), 'url' => $date_sel_mode ? '' : $event_data['register_link'], 'edit_url' => get_edit_post_link(), 'backgroundColor' => $bc, 'borderColor' => $bc, 'textColor' => $tc, 'className' => $event_data['register_link_type'] == 1 ? 'epl-no-modal' : '', 'id' => $event_data['event_id']);
         $weekday = date('N', $event_data['date']);
         //if multiple times, display the event for each time.
         if (count($event_data['times']['start']) > 1 && !$date_sel_mode) {
             $_tmp_title = $_r['title'];
             $_tmp_url = $_r['url'];
             foreach ($event_data['times']['start'] as $time_id => $time) {
                 if ($time == '') {
                     continue;
                 }
                 if (epl_is_date_level_time()) {
                     if (epl_is_date_specific_time($time_id) && !isset($event_details['_epl_date_specific_time'][$time_id][$event_data['date_id']])) {
                         continue;
                     }
                 }
                 $weekday_specific = epl_get_element_m($time_id, '_epl_weekday_specific_time', $event_details, array());
                 if (!epl_is_empty_array($weekday_specific) && !isset($weekday_specific[$weekday])) {
                     continue;
                 }
                 //$_r['title'] = '<span class="epl_fc_title_time"> ' . $time . '</span>' . $_tmp_title;
                 $_r['title'] = $_tmp_title;
                 $_r['raw_title'] = $_tmp_title;
                 if ($show_att_counts) {
                     $_r['title'] .= ' ' . '<span style="background-color:red;color:#fff;padding:0 4px;white-space: nowrap;"> ' . epl_get_att_count(array('for' => 'time', 'date_id' => $event_data['date_id'], 'time_id' => $time_id, 'default' => 0));
                     $_r['title'] .= (epl_get_time_capacity($time_id) != '' ? ' / ' . epl_get_time_capacity($time_id) : '') . '</span>';
                     $_r['att_counts'] = epl_get_att_count(array('for' => 'time', 'date_id' => $event_data['date_id'], 'time_id' => $time_id, 'default' => 0));
                     $_r['att_counts'] .= epl_get_time_capacity($time_id) != '' ? ' / ' . epl_get_time_capacity($time_id) : '';
                 }
                 $_r['url'] = $date_sel_mode ? '' : add_query_arg(array('_time_id' => $time_id), $event_data['register_link']);
                 $tmp_key_for_sorting = strtotime($time, $event_data['date']);
                 if (isset($r[$tmp_key_for_sorting])) {
                     $tmp_key_for_sorting .= '.' . $counter;
                     $counter++;
                 }
                 $_r['start'] = epl_formatted_date(strtotime($time, $event_data['date']), 'Y-m-d H:i:s');
                 $_r['end'] = epl_formatted_date(strtotime($event_data['times']['end'][$time_id], $show_first_date_only ? $event_data['start'] : $event_data['end']), 'Y-m-d H:i:s');
                 //$_r['allDay'] = false;
                 $r[$tmp_key_for_sorting] = $_r;
                 //$r[] = $_r;
                 $counter++;
             }
             continue;
         } else {
             $time = current($event_data['times']['start']);
             //$_r['title'] = ($time != '' ? '<span class="epl_fc_title_time"> ' . $time . '</span>' : '') . $_r['title'];
             $_r['title'] = $_r['title'];
             if (epl_is_empty_array($event_data['times']['start'])) {
                 $_r['start'] = epl_formatted_date($event_data['date'] + 25200, 'Y-m-d H:i:s');
             } else {
                 $_r['start'] = epl_formatted_date(strtotime(current($event_data['times']['start']) . ' ', $event_data['date']), 'Y-m-d H:i:s');
             }
             if (epl_is_empty_array($event_data['times']['end'])) {
                 $_r['end'] = epl_formatted_date($event_data['end'] + 86399, 'Y-m-d H:i:s');
             } else {
                 $_r['end'] = epl_formatted_date(strtotime(current($event_data['times']['end']) . ' ', $show_first_date_only ? $event_data['start'] : $event_data['end']), 'Y-m-d H:i:s');
             }
             if ($show_att_counts) {
                 $_r['title'] .= ' ' . '<span style="background-color:red;color:#fff;padding:0 4px;white-space: nowrap;"> ' . epl_get_att_count(array('for' => 'date', 'date_id' => $event_data['date_id'], 'default' => 0));
                 $_r['title'] .= (epl_get_date_capacity($event_data['date_id']) != '' ? ' / ' . epl_get_date_capacity($event_data['date_id']) : '') . '</span>';
                 $_r['att_counts'] = epl_get_att_count(array('for' => 'date', 'date_id' => $event_data['date_id'], 'default' => 0));
                 $_r['att_counts'] .= epl_get_date_capacity($event_data['date_id']) != '' ? ' / ' . epl_get_date_capacity($event_data['date_id']) : '';
             }
         }
         $tmp_key_for_sorting = strtotime(current($event_data['times']['start']) . ' ', $event_data['date']);
         if (isset($r[$tmp_key_for_sorting])) {
             $tmp_key_for_sorting .= '.' . $counter;
             $counter++;
         }
         $_r['sort_time'] = $tmp_key_for_sorting;
         $r[$tmp_key_for_sorting] = $_r;
         //$_r = apply_filters( 'epl_get_cal_dates_response_loop', $r );
         $counter++;
     }
     $raw = apply_filters('epl_get_cal_dates_response', $r);
     ksort($raw);
     //@TODO - temp solution for showing cal in the month of first avail. event
     global $first_event_date;
     $first_event_date = key($raw);
     if (isset($args['raw'])) {
         return $raw;
     }
     //using array_values to get rid of temp keys, fullcalendar doesn't seem to like them :)
     $r = json_encode(array_values($r));
     if (!epl_user_is_admin()) {
         set_transient('epl_transient__get_days_for_fc__' . $post->ID, base64_encode($r), 60 * 60 * 4);
     }
     return $r;
 }