function set_options()
 {
     if (function_exists('wp_enqueue_media')) {
         wp_enqueue_media();
     }
     //in WP 3.5
     if (!empty($_POST) && check_admin_referer('epl_form_nonce', '_epl_nonce')) {
         if (!empty($_POST['feature-override'])) {
             update_option('_epl_override', $_POST['_epl_override']);
         } else {
             foreach ($this->fields as $section => $epl_fields) {
                 $epl_settings_fields = array_flip(array_keys($epl_fields));
                 $epl_settings_meta = array_intersect_key($_POST, $epl_settings_fields);
                 //We are only interested in the posted fields that pertain to events planner
                 if (!epl_is_empty_array($epl_settings_meta)) {
                     update_option($section, $epl_settings_meta);
                 }
                 //update_option( 'epl_date_options', $epl_settings );
             }
         }
         $this->settings_updated = true;
         if (function_exists('__epl_pr_api_key')) {
             __epl_pr_api_key(true);
         }
     }
 }
 function send_confirmation_email($data)
 {
     global $organization_details, $customer_email, $event_details;
     $data['eb'] = '';
     $default_email_body = $this->epl->load_view('front/registration/regis-confirm-email', $data, true);
     $_notif = epl_get_element('_epl_event_notification', $event_details);
     $_notif_data = array();
     if ($_notif && (!epl_is_empty_array($_notif) || $_notif != '')) {
         $id = is_array($_notif) ? current($_notif) : $_notif;
         $_notif_data = get_post($id, ARRAY_A) + (array) $this->ecm->get_post_meta_all($id);
         $data['eb'] = nl2br($this->notif_tags(stripslashes_deep(html_entity_decode($_notif_data['post_content'], ENT_QUOTES))));
     }
     if (epl_is_empty_array($_notif) || $_notif == '' || epl_get_element('_epl_notification_replace', $event_details, 0) == 0) {
         $email_body = $this->epl->load_view('front/registration/regis-confirm-email', $data, true);
     } else {
         $email_body = $data['eb'];
     }
     $email_body = preg_replace('/<div class=\'epl_(.*?)_message\'>(.*?)<\\/div>/', '', $email_body);
     $from_name = html_entity_decode(epl_get_element('_epl_email_from_name', $_notif_data, get_bloginfo('name')), ENT_QUOTES);
     $from_email = epl_get_element('_epl_from_email', $_notif_data, get_bloginfo('admin_email'));
     $subject = html_entity_decode(epl_get_element('_epl_email_subject', $_notif_data, epl__('Registration Confirmation')), ENT_QUOTES);
     $headers = "From: \"" . $from_name . "\" <{$from_email}> \r\n";
     $headers .= 'Reply-To: ' . $from_email . "\r\n";
     $headers .= 'X-Mailer: PHP/' . phpversion();
     $headers .= "MIME-Version: 1.0\r\n";
     $headers .= "Content-Type: text/html; charset=UTF-8\r\n";
     if (isset($customer_email) && $customer_email != '') {
         @wp_mail($customer_email, $subject, $email_body, $headers);
     }
     //admin email
     $_email = epl_get_event_property('_epl_alt_admin_email');
     if ($_email == '') {
         $_email = epl_nz(epl_get_event_option('epl_default_notification_email'), get_bloginfo('admin_email'));
     }
     @wp_mail($_email, epl__('New Registration') . ': ' . get_the_event_title(), $default_email_body, $headers);
 }
    echo $date . epl_prefix(' - ', $_note) . epl_prefix(' - ', $_location);
    ?>
</td>
                <td></td>
                <td><?php 
    echo $show_avail_spaces ? $data['date']['avail'] : '';
    ?>
</td>

            </tr>

            <?php 
    foreach ($times as $time_id => $time_data) {
        //if ( $time_data['avail'] !== '' ):
        if (epl_get_element($time_id, epl_get_element('_epl_time_hide', $event_details)) == 0) {
            if (!epl_is_date_level_time() || epl_is_date_level_time() && !epl_is_empty_array($date_specifc_time) && (array_key_exists($time_id, $date_specifc_time) && array_key_exists($date_id, $date_specifc_time[$time_id]))) {
                $prices = $time_data['price'];
                if (!epl_is_time_optonal()) {
                    ?>
                            <tr class="epl_time">
                                <td><?php 
                    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 
 function _setup_payment_type($gateway_info)
 {
     if (epl_is_empty_array($gateway_info)) {
         $gateway_info = $this->erm->get_gateway_info();
     }
     $this->pay_type = $gateway_info['_epl_pay_type'];
     $this->is_cc = $this->erm->has_selected_cc_payment();
 }
 function make_cal_dates_array($dates = array())
 {
     if (epl_is_empty_array($dates)) {
         return array();
     }
     $_temp = array();
     foreach ($dates as $date) {
         $date_parts = getdate($date);
         //formatted new date
         $new_date = date_i18n('Y-m-d', $date);
         //grab the year of the new date
         $newdate_year = $date_parts['year'];
         //grab month of the new date
         $newdate_month = $date_parts['mon'];
         //grab the day of the month
         $j = $date_parts['mday'];
         //put the new date in the array
         $_temp[$newdate_year][$newdate_month][$j] = $new_date;
     }
     return $_temp;
     for ($i = 0; $i <= $this->difference; $i = $i + $this->interval) {
         //formula for determining the next date in the seried
         $new_date = '+ ' . $i . " {$this->type}";
         $new_unix_time = strtotime($new_date, $this->date_to_time);
         //Get the date information for later use.
         $date_parts = getdate($new_unix_time);
         //formatted new date
         $new_date = date_i18n('Y-m-d', $new_unix_time);
         //grab the year of the new date
         $newdate_year = $date_parts['year'];
         //grab month of the new date
         $newdate_month = $date_parts['mon'];
         //grab the day of the month
         $j = $date_parts['mday'];
         //put the new date in the array
         $this->dates[$newdate_year][$newdate_month][$j] = $new_date;
         //For daily and weekly, give the user the ability to select on which days of the week the event occurs
         if (is_array($this->weekdays) && !empty($this->weekdays) && $this->type != 'month') {
             if ($this->type == 'day') {
                 //get the week number of the new date
                 $new_weekday = $date_parts['wday'];
                 //if the weeknumber of the new date is not in the weekdays that the user wants, unset the new date
                 if (!in_array($new_weekday, $this->weekdays)) {
                     unset($this->dates[$newdate_year][$newdate_month][$j]);
                 }
             } elseif ($this->type == 'week') {
                 /*
                  * For weekly, we need to find all the days of the week of the new date
                  * and then determine if they are in the array.  $this->get_days_of_a_week takes
                  * care of it.
                  * NOTICE the $dates passed by reference
                  */
                 //$this->get_days_of_a_week( $new_date, $this->rec_start_date, $this->recurrence_end_date, $this->weekdays );
             }
         } elseif ($this->type == 'month' && $_POST['_epl_recurrence_repeat_by'] == 10) {
             /*
              * If it is monthly and repeats on a specific day of week (e.g. third Wednesday of each month),
              * we need to find which weekday the start date belongs to and go from there.
              */
         }
     }
     //epl_log( "debug", "<pre>" . __LINE__ . '> ' . print_r($this->dates, true ) . "</pre>" );
     //return $this->dates;
 }
 private function _get_credentials($gateway_id = null, $credentials = array())
 {
     $default_credentials = array('_epl_user', '_epl_pwd');
     if (!epl_is_empty_array($credentials)) {
         $credentials = wp_parse_args($credentials, $default_credentials);
     } else {
         $credentials = $default_credentials;
     }
     $gateway_info = $this->erm->get_gateway_info($gateway_id);
     $r = array();
     foreach ($credentials as $cred) {
         $r[$cred] = epl_get_element($cred, $gateway_info);
     }
     return $r;
 }
 function setup_checked_in_counts($user_also = false)
 {
     static $processed = false;
     if ($processed) {
         return null;
     }
     global $wpdb, $session_signed_in_counts, $user_session_signed_in_counts, $user_ticket_use_counts;
     $WHERE = '';
     if (!epl_is_empty_array($this->active_event_ids)) {
         $WHERE = ' AND ra.event_id IN (' . implode(',', $this->active_event_ids) . ")";
     } elseif (isset($_POST['event_id'])) {
         $WHERE = ' AND ra.event_id =' . $wpdb->escape($_POST['event_id']);
     }
     $checked_in_counts = $wpdb->get_results("SELECT ra.regis_id,ra.event_id,ra.date_id,ra.date_ts,ra.time_id,ra.user_id,ra.price_id,ra.regis_data_id  FROM\n                        {$wpdb->epl_attendance} ra\n                            INNER JOIN {$wpdb->posts} p\n                                ON ra.regis_id = p.ID \n                               WHERE 1=1 AND\n                               p.post_status = 'publish'\n                               {$WHERE}\n                               GROUP BY ra.regis_id, ra.event_id, ra.date_id,ra.date_id,ra.date_ts,ra.time_id,ra.user_id,ra.regis_data_id\n                ");
     $session_signed_in_counts = array();
     $user_session_signed_in_counts = array();
     $start = true;
     foreach ($checked_in_counts as $c) {
         setup_event_details($c->event_id);
         $time_id = epl_is_time_optonal() ? '' : $c->time_id;
         if ($start) {
             $session_signed_in_counts["{$c->event_id}-{$c->date_id}-{$c->date_ts}-{$c->time_id}"] = 1;
             $user_session_signed_in_counts["{$c->regis_id}-{$c->event_id}-{$c->regis_data_id}-{$c->date_id}-{$c->date_ts}-{$c->time_id}-{$c->price_id}-{$c->user_id}"] = 1;
             $user_ticket_use_counts["{$c->regis_id}-{$c->event_id}-{$c->regis_data_id}-{$c->date_id}-{$time_id}-{$c->price_id}-{$c->user_id}"] = 1;
         } else {
             $session_signed_in_counts["{$c->event_id}-{$c->date_id}-{$c->date_ts}-{$c->time_id}"]++;
             $user_session_signed_in_counts["{$c->regis_id}-{$c->event_id}-{$c->regis_data_id}-{$c->date_id}-{$c->date_ts}-{$c->time_id}-{$c->price_id}-{$c->user_id}"]++;
             $user_ticket_use_counts["{$c->regis_id}-{$c->event_id}-{$c->regis_data_id}-{$c->date_id}-{$time_id}-{$c->price_id}-{$c->user_id}"]++;
         }
         $start = false;
     }
     $processed = true;
 }
 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;
 }
<h3> <?php 
epl_e('Registered On');
?>
: <?php 
echo $regis_date;
?>
</h3>

<!--<div style="float:right;width:200px;">
    <?php 
echo $regis_dates_cal;
?>
</div>-->
<?php 
if (!epl_is_empty_array($class_dates)) {
    ?>
<table class="epl_user_schedule_table" cellspacing="0" style="">
    <thead>
        <tr>
            <th>Date</th>
            <th>Start Time</th>
            <th>End Time</th>
            <th>Notes</th>
            <th>Absent</th>
            <th></th>
        </tr>
    </thead>
    <tbody>
<?php 
    foreach ($class_dates as $_key => $_date) {
function get_ticket_buyer_name($regis_id = null)
{
    global $epl_fields, $event_details, $regis_details;
    if (epl_is_empty_array($regis_details)) {
        epl_setup_regis_details(!is_null($regis_id) ? $regis_id : get_the_ID());
    }
    $regis_attendee_info = $regis_details['_epl_attendee_info'];
    $first_name = current(epl_get_element('4e794a9a6b04f', $regis_attendee_info));
    $last_name = current(epl_get_element('4e794ab9c1731', $regis_attendee_info));
    return $first_name[0] . ' ' . $last_name[0];
}
 function get_event_auto_discounts($global = false)
 {
     global $event_details;
     foreach ($this->all_discount_configs as $disc_source_id => $discount_data) {
         $_epl_discount_method = epl_get_element('_epl_discount_method', $discount_data, null);
         if (epl_is_empty_array($_epl_discount_method)) {
             continue;
         }
         foreach ($_epl_discount_method as $disc_id => $method) {
             if ($method != 10) {
                 //if not auto
                 continue;
             }
             if (epl_get_element($disc_id, epl_get_element('_epl_discount_active', $discount_data)) == 0) {
                 //if not active
                 continue;
             }
             if (!isset($this->auto_discounts[$disc_source_id])) {
                 $this->auto_discounts[$disc_source_id] = array();
             }
             $this->auto_discount_source[$disc_source_id] = isset($discount_data['_epl_start_date']) ? 'e' : 'g';
             $this->auto_discounts[$disc_source_id][$disc_id] = isset($discount_data['_epl_start_date']) ? 'e' : 'g';
         }
     }
 }
?>
</th>
                <th><?php 
epl_e('Transaction ID');
?>
</th>
                <th><?php 
epl_e('Note');
?>
</th>
                <th></th>
            </tr>
        </thead>
        <tbody>
            <?php 
if (epl_is_empty_array($payment_data)) {
    ?>

                <tr>
                    <td colspan="6"><?php 
    epl_e('No Payments Records Found');
    ?>
</td>
                </tr>

            <?php 
} else {
    ?>

                <?php 
    foreach ($payment_data as $k => $p) {
 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;
 }
<h1><?php 
echo $event_title;
?>
 <?php 
epl_e('attendees');
?>
</h1>

<?php 
echo get_the_register_button();
if (epl_is_empty_array($header_row)) {
    epl_e("No Attendees");
    return;
}
$colspan = count($header_row);
?>

<table id="epl_attendee_list_table">
    <thead>
        <tr><th><?php 
echo implode('</th><th>', $header_row);
?>
</th></tr>
    </thead>
    <tbody>
        <?php 
foreach ($list as $regis_id => $info) {
    echo "<tr>";
    echo "<td colspan='{$colspan}' class='att_count'>" . epl__('Attendees') . ": {$info['att_count']}</td></tr>";
    foreach ($info['attendees'] as $att) {
        $v = implode('</td><td>', $att);
<?php

if (epl_is_empty_array($registrations)) {
    echo "No record found";
    return;
}
global $event_details;
$event_id = $event_details['ID'];
$class_session_dates = epl_get_element('_epl_class_session_date', $event_details);
echo "<pre class='prettyprint'>" . __LINE__ . "> " . print_r($registrations, true) . "</pre>";
?>



<table class="epl_plain_table epl_w600" cellspacing="0">
    <thead>
        <tr>
            <th></th>
            <th></th>
        </tr>
    </thead>
    <tbody>
        <tr><td></td>
            <?php 
foreach ($class_session_dates as $_date_id => $_date) {
    ?>



                <td><?php 
    echo epl_formatted_date($_date);
        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 user_schedule_old()
 {
     global $wpdb, $event_details, $epl_fields;
     if (!is_user_logged_in()) {
         return login_with_ajax();
     }
     $event_type = epl_get_element('_epl_event_type', $event_details);
     $registrations = $this->get_current_registrations($this->user_id);
     $r = array();
     $data['absentees'] = $this->get_user_absentee_data();
     //echo "<pre class='prettyprint'>" . __LINE__ . "> " . print_r($registrations, true). "</pre>";
     foreach ($registrations as $registration) {
         $r_id = str_replace('_epl_regis_post_id_', '', $registration->meta_key);
         $regis_data = $this->ecm->setup_regis_details($r_id);
         if (epl_is_empty_array($regis_data) || !($d = epl_get_element('__epl', $regis_data, false))) {
             continue;
         }
         if ($regis_data['_epl_regis_status'] < 1) {
             continue;
         }
         $data['regis_id'] = esc_attr($regis_data['post_title']);
         $data['regis_date'] = epl_formatted_date($regis_data['post_date']);
         //echo "<pre class='prettyprint'>" . __LINE__ . "> " . print_r( $regis_data, true ) . "</pre>";
         $_regis_id = $d['_regis_id'];
         $_events = $d[$_regis_id]['_events'];
         $_dates = $d[$_regis_id]['_dates']['_epl_start_date'];
         $event_id = key($_events);
         $this->ecm->setup_event_details($event_id);
         $data['event_id'] = $event_id;
         $data['event_title'] = esc_attr($event_details['post_title']);
         $data['event_start_date'] = $event_details['_epl_start_date'];
         $data['event_end_date'] = $event_details['_epl_end_date'];
         $data['class_dates'] = $event_details['_epl_class_session_date'];
         $data['class_start_times'] = $event_details['_epl_class_session_start_time'];
         $class_end_times = $event_details['_epl_class_session_end_time'];
         $class_session_name = $event_details['_epl_class_session_name'];
         $class_session_note = $event_details['_epl_class_session_note'];
         $data['fc_event_dates'] = $this->epl->epl_util->get_sess_days_for_fc();
         $data['class_end_times'] = $class_end_times;
         $data['regis_status'] = get_the_regis_status();
         $data['regis_dates_cal'] = $this->eutil->construct_calendar($this->ercm->make_cal_dates_array($data['class_dates']));
         $data['list'][$_regis_id] = $this->epl->load_view('front/user-regis-manager/user-regis-dates', $data, true);
     }
     return $this->epl->load_view('front/user-regis-manager/user-regis-list-page', $data, true);
 }
                $fields = explode(EPL_PLUGIN_DB_DELIM, $f->field_id);
                $values = explode(EPL_PLUGIN_DB_DELIM, $f->value);
            } else {
                $fields = array($f->field_id);
                $values = array($f->value);
            }
            $full = array_combine($fields, $values);
            if (!$limited) {
                $_row = array_merge($default_row, $full);
            } else {
                $_row = array_intersect_key($full, $default_row);
            }
            $_f += epl_process_fields_for_display($_row);
        }
    }
    if (epl_is_empty_array($_f)) {
        $_f = $default_row;
    }
    $this->epl->epl_table->add_row(array_values($_combned + $_a + $_f));
    $new_record = false;
    $form_counter++;
}
//construct header row
$header = array(epl__('Regis ID'), epl__('Regis Date'), epl__('Status'), epl__('Event'), epl__('Purchase'), epl__('Discount Code'), epl__('Grand Total'), epl__('Paid'), epl__('Date'), epl__('Time'));
$header = array_merge($header, epl_get_field_labels(array_intersect_key($avail_fields, $default_row)));
$this->epl->epl_table->set_heading($header);
echo $this->epl->epl_table->generate();
?>

<script type="text/javascript">
$avail_fields = epl_get_list_of_available_fields();
$default_row = array_fill_keys(array_keys($avail_fields), null);
$tmp_regis_id = '';
$table_row = "";
foreach ($form_list as $form) {
    if (strpos($form->field_id, EPL_PLUGIN_DB_DELIM)) {
        $fields = explode(EPL_PLUGIN_DB_DELIM, $form->field_id);
        $values = explode(EPL_PLUGIN_DB_DELIM, $form->value);
    } else {
        $fields = array($form->field_id);
        $values = array($form->value);
    }
    $full = array_combine($fields, $values);
    $_row = array_merge($default_row, $full);
    $_r = epl_process_fields_for_display($_row);
    if (!epl_is_empty_array($_r)) {
        $table_row[] = "<tr><td>" . implode('</td><td>', $_r) . "</td></tr>";
    }
    $new_record = false;
    $form_counter++;
}
//construct header row
$header = epl_get_field_labels($avail_fields);
$header = "<tr><td>" . implode('</td><td>', $header) . "</td></tr>";
$table_id = 'd' . uniqid();
echo <<<EOT
<table id="{$table_id}" class="epl_report_table">
\t\t<thead>
\t\t{$header}
\t\t</thead>
EOT;
<?php

if (!epl_is_empty_array($events)) {
    ?>
    <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" />
 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;
 }
function epl_process_fields_for_display($fields, $avail_fields = null)
{
    if (is_null($avail_fields)) {
        $avail_fields = epl_get_list_of_available_fields();
    }
    foreach ($fields as $field_id => &$value) {
        if ($avail_fields[$field_id]['input_type'] == 'select' || $avail_fields[$field_id]['input_type'] == 'radio') {
            $value = isset($avail_fields[$field_id]['epl_field_choice_text'][$value]) && $avail_fields[$field_id]['epl_field_choice_text'][$value] !== '' ? $avail_fields[$field_id]['epl_field_choice_text'][$value] : $value;
        } elseif ($avail_fields[$field_id]['input_type'] == 'checkbox') {
            $value = epl_make_array_from_string($value);
            if (!epl_is_empty_array($value)) {
                if (!epl_is_empty_array($avail_fields[$field_id]['epl_field_choice_value'])) {
                    $value = implode(',', array_intersect_key($avail_fields[$field_id]['epl_field_choice_value'], array_flip($value)));
                } else {
                    $value = implode(',', array_intersect_key($avail_fields[$field_id]['epl_field_choice_text'], array_flip($value)));
                }
            }
        } else {
            $value = html_entity_decode(htmlspecialchars_decode($value));
        }
    }
    return $fields;
}
 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;
 }
 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++;
             }
         }
     }
 }
 $num_regis = 0;
 $avail = '';
 if (isset($current_att_count['_total_att_' . $event_id . "_date_{$date_id}"])) {
     $num_regis = epl_get_element('_total_att_' . $event_id . "_date_{$date_id}", $current_att_count, 0);
     $avail = $date_capacity - $num_regis;
 }
 $date_note = epl_prefix(' - ', epl_get_element_m($date_id, '_epl_date_note', $event_details, ''));
 foreach ($event_details['_epl_start_time'] as $time_id => $time) {
     if ($event_details['_epl_time_hide'][$time_id] == 10) {
         continue;
     }
     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 (!epl_is_empty_array($weekday_specific) && !isset($weekday_specific[$weekday])) {
         continue;
     }
     $unix_time = $time != '' ? strtotime($time, $date) : $date;
     if (!$show_all && $unix_time < EPL_DATE) {
         continue;
     }
     $event_tooltip = '';
     if ($event_excerpt !== '') {
         $event_tooltip = " <span class='tip event_tooltip' title='" . $event_excerpt . "'>i</span>";
     }
     $event_title = "<a href =" . get_the_register_button($event_id, true) . ' title="' . get_the_title() . '">' . get_the_title() . "</a>";
     if ($event_details['_epl_title_link_destination'] == 0) {
         $event_title = '<a href =' . get_permalink() . ' title="' . get_the_title() . '">' . get_the_title() . '</a>';
     }
     $event_categories = strip_tags(get_the_term_list($event_id, 'epl_event_categories', '', ',', ''));
        </tr>

    </thead>

    <?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>
示例#27
0
 function send_confirmation_email($data)
 {
     global $organization_details, $customer_email, $event_details, $email_regis_form;
     //$data['email_body'] = '';
     $attach_pdf = epl_get_setting('epl_api_option_fields', 'epl_invoice_attach_to_conf', 0) == 10 && epl_is_addon_active('_epl_atp');
     $attach_pdf = apply_filters('epl_attach_invoice_to_conf_email', $attach_pdf);
     $defaults = array('admin_subject' => epl__('New Registration'), 'subject' => epl__('Registration Confirmation'));
     $default_email_body = $this->epl->load_view('email/default/template-no-custom', $data, true);
     $_notif = epl_get_element('_epl_event_notification', $event_details);
     if (epl_is_waitlist_flow()) {
         $_notif = epl_get_element('_epl_waitlist_notification', $event_details);
         $defaults['admin_subject'] = epl__('New Waitlist Addition');
     }
     $_notif_data = array();
     if (epl_sc_is_enabled() && !epl_is_waitlist_flow()) {
         $_notif = epl_get_setting('epl_sc_options', 'epl_sc_notification');
     }
     if ($_notif && (!epl_is_empty_array($_notif) || $_notif != '')) {
         $id = is_array($_notif) ? current($_notif) : $_notif;
         $_notif_data = get_post($id, ARRAY_A) + (array) $this->ecm->get_post_meta_all($id);
         $data['email_body'] = $this->notif_tags($_notif_data['post_content'], $data);
     }
     if (epl_is_empty_array($_notif) || $_notif == '') {
         $email_template = 'email/default/template-no-custom';
         $email_template_name = epl_get_element('_epl_email_template', $_notif_data);
         $email_template = $email_template_name ? 'email/' . $email_template_name . '/template.php' : $email_template;
         $data['base_url'] = EPL_EMAIL_TEMPLATES_URL . $email_template_name . '/';
         $email_body = $this->epl->load_view($email_template, $data, true);
     } else {
         $email_body = $data['email_body'];
     }
     $email_body = preg_replace('/<div class=\'epl_(.*?)_message\'>(.*?)<\\/div>/', '', $email_body);
     $from_name = stripslashes_deep(html_entity_decode(epl_get_element('_epl_email_from_name', $_notif_data, get_bloginfo('name')), ENT_QUOTES));
     $from_email = epl_get_element('_epl_from_email', $_notif_data, get_bloginfo('admin_email'));
     $subject = stripslashes_deep(html_entity_decode(epl_get_element('_epl_email_subject', $_notif_data, $defaults['subject']), ENT_QUOTES));
     $headers = "From: \"" . $from_name . "\" <{$from_email}> \r\n";
     $headers .= 'Reply-To: ' . $from_email . "\r\n";
     $headers .= 'X-Mailer: PHP/' . phpversion();
     $headers .= "MIME-Version: 1.0\r\n";
     $headers .= "Content-Type: text/html; charset=UTF-8\r\n";
     if ($attach_pdf) {
         $invoice = $this->erptm->invoice($data['post_ID']);
         $data['attachment'] = $this->make_pdf($invoice, true, true);
     }
     if (isset($customer_email) && count($customer_email) > 0) {
         $to = implode(',', $customer_email);
         @wp_mail($to, $subject, $email_body, $headers, epl_get_element('attachment', $data, null));
     }
     //admin email
     $_email = epl_get_event_property('_epl_alt_admin_email');
     if ($_email == '') {
         $_email = epl_nz(epl_get_event_option('epl_default_notification_email'), get_bloginfo('admin_email'));
     }
     $admin_email = array('email' => $_email, 'title' => $defaults['admin_subject'] . ': ' . get_the_event_title(), 'email_body' => $email_body, 'headers' => $headers, 'data' => $data);
     $admin_email = apply_filters('epl_admin_send_confirmation_email_args', $admin_email);
     @wp_mail($admin_email['email'], $admin_email['title'], $admin_email['email_body'], $admin_email['headers'], epl_get_element('attachment', $admin_email['data'], null));
     if ($attach_pdf) {
         $this->delete_file($data['attachment']);
     }
 }