function epl_get_formatted_curr($amount, $format = null, $currency_symbol = false)
{
    if ($amount === '') {
        return $amount;
    }
    //remove any comma, currency sign
    $amount = preg_replace('/[^\\d\\.]/', '', $amount);
    $v = epl_get_option('epl_general_options');
    $format = $format ? $format : $v['epl_currency_display_format'];
    switch ($format) {
        case 1:
            $amount = number_format($amount, 2, '.', ',');
            break;
        case 2:
            $amount = number_format($amount, 0, '', ',');
            break;
        case 3:
            $amount = number_format($amount, 0, '', '');
            break;
        case 4:
            $amount = number_format($amount, 2, '.', '');
            break;
        case 5:
            $amount = number_format($amount, 2, ',', ' ');
            break;
        case 6:
            $amount = number_format($amount, 2, '.', ' ');
            break;
    }
    if ($currency_symbol) {
        $amount = epl_get_currency_symbol($amount);
    }
    return $amount;
}
        <?php 
epl_e("At lease one price is required, even if it's a free event");
?>
    </div>
</div>

<table class="epl_form_data_table epl_w400" cellspacing ="0" id="epl_prices_table">
    <thead>
    <th></th>
    <th><?php 
epl_e('Price Type');
?>
</th>
    <th>Price (<?php 
echo epl_get_currency_symbol();
?>
)</th>

    <th></th>
</thead>
<tfoot>
    <tr><td colspan ="8">
            <a href="#" class="add_table_row"><img src ="<?php 
echo EPL_FULL_URL;
?>
images/add.png" /></a>
        </td></tr>
</tfoot>
<tbody class="events_planner_tbody">
    <?php 
 function payment_info_box($post_ID = null)
 {
     if (is_null($post_ID)) {
         $post_ID = (int) $_POST['post_ID'];
     }
     if ($GLOBALS['epl_ajax'] || !isset($this->meta)) {
         $this->meta = $this->ecm->get_post_meta_all($post_ID, true);
     }
     $data['post_ID'] = $post_ID;
     $data['regis_status'] = isset($this->meta['_epl_regis_status']) ? $this->ind_fields['_epl_regis_status']['options'][$this->meta['_epl_regis_status']] : '';
     $data['payment_method'] = isset($this->meta['_epl_payment_method']) && $this->meta['_epl_payment_method'] != '' ? $this->ind_fields['_epl_payment_method']['options'][$this->meta['_epl_payment_method']] : '';
     $grand_total = epl_get_formatted_curr(epl_nz($this->meta['_epl_grand_total'], 0));
     $amount_paid = epl_get_formatted_curr(epl_nz($this->meta['_epl_payment_amount'], 0));
     $data['amount_paid'] = epl_get_currency_symbol() . $amount_paid;
     $data['grand_total'] = epl_get_currency_symbol() . $grand_total;
     $href = esc_url(add_query_arg(array('epl_action' => 'epl_payment_snapshot', 'post_ID' => $post_ID), $_SERVER['REQUEST_URI']));
     $data['snapshot_link'] = '<a data-post_id = "' . $post_ID . '" class="epl_payment_snapshot" href="#"><img src="' . EPL_FULL_URL . 'images/application_view_list.png" /> </a>';
     //$data['snapshot_link'] = '<img id = "' . $post_ID . '" class="epl_payment_snapshot" src="' . EPL_FULL_URL . 'images/application_view_list.png" />';
     $data['status_class'] = 'epl_status_pending';
     if ($this->meta['_epl_regis_status'] == 5) {
         $data['status_class'] = 'epl_status_paid';
     }
     if ($this->meta['_epl_regis_status'] == 10 || $this->meta['_epl_regis_status'] == 15) {
         $data['status_class'] = 'epl_status_cancelled';
     }
     return $this->epl->load_view('admin/registrations/regis-list-payment-info', $data, true);
 }
<tr>
    <td>
        <?php 
echo $price_name;
?>
    </td>

    <td>
<?php 
echo epl_get_currency_symbol() . $price;
?>
    </td>
    <td>
<?php 
echo $price_qty_dd['field'];
?>
    </td>

</tr>
 function epl_excel_attendee_list()
 {
     $event_id = $_REQUEST['event_id'];
     $_totals = $this->get_event_regis_snapshot($_REQUEST['event_id']);
     //echo "<pre class='prettyprint'>" . print_r( $_totals, true ) . "</pre>";
     $this->set_event_regis_post_ids($_REQUEST['event_id']);
     global $event_details;
     //epl_log( "debug", "<pre>" . __LINE__ . '> ' . print_r($event_details, true ) . "</pre>" );
     $event_title = $event_details['post_title'];
     $filename = str_replace(" ", "-", $event_title) . "_" . date_i18n("m-d-Y");
     /* header( "Content-type: application/x-msdownload; charset=UTF-8", true, 200 );
        header( "Content-Disposition: attachment; filename={$filename}.csv" );
        header( "Pragma: no-cache" );
        header( "Expires: 0" ); */
     //$this->setup_event_details( $event_id );
     $this->get_values();
     //echo "<pre class='prettyprint'>" . print_r($event_details, true). "</pre>";
     $event_ticket_buyer_forms = array_flip((array) $event_details['_epl_primary_regis_forms']);
     $event_addit_forms = isset($event_details['_epl_addit_regis_forms']) && $event_details['_epl_addit_regis_forms'] != '' ? array_flip($event_details['_epl_addit_regis_forms']) : array();
     //find the list of all forms
     $available_forms = $this->get_list_of_available_forms();
     $available_fields = $this->get_list_of_available_fields();
     //isolate the forms that are selected inside the event
     $ticket_buyer_forms = array_intersect_key($available_forms, $event_ticket_buyer_forms);
     $addit_forms = array_intersect_key($available_forms, $event_addit_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 += $_form_info['epl_form_fields'];
     }
     $event_addit_fields = array();
     foreach ($addit_forms as $_form_id => $_form_info) {
         $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);
     $epl_fields_to_display = $epl_fields_to_display + $epl_addit_fields_to_display;
     $csv_row = '';
     $header_row = array();
     $header_pulled = false;
     $row = array();
     $header_row[] = '';
     $header_row[] = epl__('Registration ID');
     //$header_row[] = epl__( 'Regis Date' );
     //$header_row[] = epl__( 'Event Date' );
     //$header_row[] = epl__( 'Time' );
     $header_row[] = epl__('Ticket');
     $header_row[] = epl__('Status');
     $header_row[] = epl__('Payment Method');
     $header_row[] = epl__('Total');
     $header_row[] = epl__('Amount Paid');
     $regis_ids = $this->get_event_regis_post_ids(false);
     //as of 1.1, the dates are stored as timestamps.
     //This will format the date for display based on the settings admin date format.
     foreach ($event_details['_epl_start_date'] as $k => &$v) {
         $v = epl_admin_date_display($v);
     }
     $_d = array();
     foreach ($regis_ids as $regis_id => $att_count) {
         //$regis_data = $this->get_post_meta_all( $regis_id );
         $regis_data = $this->setup_regis_details($regis_id);
         // epl_log( "debug", "<pre>" . __LINE__ . '> ' . print_r($regis_data, true ) . "</pre>" );
         //Sometime there may be incomplete db records.  These will cause issues below.
         //In those cases, skip and move to the next item
         if (!isset($regis_data['_epl_dates']['_epl_start_date'][$event_id])) {
             continue;
         }
         $event_times = $regis_data['_epl_dates']['_epl_start_time'][$event_id];
         $event_prices = $regis_data['_epl_dates']['_epl_start_time'][$event_id];
         $regis_date = implode(' & ', array_intersect_key($event_details['_epl_start_date'], array_flip((array) $regis_data['_epl_dates']['_epl_start_date'][$event_id])));
         $regis_time = implode(' & ', array_intersect_key($event_details['_epl_start_time'], array_flip((array) $regis_data['_epl_dates']['_epl_start_time'][$event_id])));
         $date_labels = array();
         $date_labels[0] = '';
         $time_labels = array();
         $time_labels[0] = '';
         $ticket_labels = array();
         $ticket_labels[0] = $att_count;
         $purchased_tickets = (array) $regis_data['_epl_dates']['_att_quantity'][$event_id];
         $start = 1;
         foreach ($purchased_tickets as $price_id => $qty) {
             $_qty = is_array($qty) ? array_sum($qty) : $qty;
             //current( $qty );
             if ($_qty > 0) {
                 $date_label[] = current((array) $regis_data['_epl_dates']['_epl_start_date'][$event_id]);
                 if (epl_get_element('_epl_pricing_type', $event_details) == 10) {
                     if (in_array($event_details['_epl_price_parent_time_id'][$price_id], (array) $regis_data['_epl_dates']['_epl_start_time'][$event_id])) {
                         $time_labels = array_pad($time_labels, $start + $_qty, epl_get_element($event_details['_epl_price_parent_time_id'][$price_id], $event_details['_epl_start_time']));
                     } else {
                         $time_labels = array_pad($time_labels, $start + $_qty, '');
                     }
                 }
                 $ticket_labels = array_pad($ticket_labels, $start + $_qty, $event_details['_epl_price_name'][$price_id]);
                 $start += $_qty;
             }
         }
         $_r = array();
         $regis_status = isset($regis_data['_epl_regis_status']) ? $this->ind_fields['_epl_regis_status']['options'][$regis_data['_epl_regis_status']] : '';
         $payment_method = isset($regis_data['_epl_payment_method']) && $regis_data['_epl_payment_method'] != '' ? $this->ind_fields['_epl_payment_method']['options'][$regis_data['_epl_payment_method']] : '';
         $grand_total = epl_get_formatted_curr(epl_nz($regis_data['_epl_grand_total'], 0.0));
         $amount_paid = epl_get_formatted_curr(epl_nz($regis_data['_epl_payment_amount'], 0.0));
         for ($i = 0; $i <= $att_count; $i++) {
             $registrant = false;
             $attendee_info = $regis_data['_epl_attendee_info'];
             if ($i == 0) {
                 $registrant = true;
                 $row[] = epl__('Registrant');
             } else {
                 $row[] = epl_get_element('_epl_addit_regis_form_counter_label', $event_details, epl__('Attendee'));
                 //$grand_total = '';
                 //$amount_paid = '';
                 //$regis_status = '';
                 //$payment_method = '';
             }
             $row[] = $regis_data['__epl']['_regis_id'];
             //$row[] = $regis_data['post_date'];
             //$row[] = epl_escape_csv_val( $regis_date );
             //$row[] = $regis_time; //(epl_is_date_level_time ( ))?$regis_time:$time_labels[$i]; //
             $row[] = htmlspecialchars_decode($ticket_labels[$i]);
             //$regis_price;
             $row[] = $regis_status;
             $row[] = $payment_method;
             $row[] = epl_get_currency_symbol($grand_total);
             $row[] = $amount_paid;
             foreach ($epl_fields_to_display as $field_id => $field_atts) {
                 if (!$header_pulled) {
                     $header_row[] = epl_escape_csv_val(html_entity_decode(htmlspecialchars_decode($field_atts['label']), ENT_QUOTES));
                 }
                 $value = '';
                 $value = isset($attendee_info[$field_id][$event_id][$i]) ? $attendee_info[$field_id][$event_id][$i] : '';
                 if ($field_atts['input_type'] == 'select' || $field_atts['input_type'] == 'radio') {
                     $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') {
                     $value = implode(',', array_intersect_key($field_atts['epl_field_choice_text'], array_flip((array) $value)));
                 } else {
                     $value = html_entity_decode(htmlspecialchars_decode(epl_get_element($i, $attendee_info[$field_id][$event_id])), ENT_QUOTES);
                 }
                 $row[] = htmlentity_decode($value, ENT_QUOTES);
                 //decode special chars (Swedish, Nordic)
                 //array_walk( $row, create_function( '&$item', '$item = utf8_decode($item);' ) );
             }
             $header_pulled = true;
             if (!$registrant) {
                 $_d[] = $row;
             }
             //$csv_row .= implode( ",", $row ) . "\r\n";
             $row = array();
         }
     }
     $filename = epl__('Attendee List') . ', ' . $event_title . ", " . date_i18n("F j, Y");
     $this->excel_file_generator($header_row, $_d, $filename);
     //echo implode( ",", $header_row ) . "\r\n";
     //echo $csv_row;
     exit;
 }
 function get_the_event_prices()
 {
     global $event_details;
     $tmpl = array('table_open' => '<table cellpadding="0" cellspacing="0" class="event_prices_table">');
     $this->epl->epl_table->set_template($tmpl);
     foreach ($event_details['_epl_price_name'] as $price_key => $price_data) {
         $price_name = $event_details['_epl_price_name'][$price_key];
         $price = epl_is_free_event() ? '' : epl_get_currency_symbol() . epl_get_formatted_curr($event_details['_epl_price'][$price_key]);
         $this->epl->epl_table->add_row($price_name, $price);
         //$this->epl->epl_table->add_row( $r );
     }
     $r = $this->epl->epl_table->generate();
     $this->epl->epl_table->clear();
     return $r;
 }
<?php

/* this is the totals TABLE in the cart */
?>
<table class="epl_totals_table">

    <tr class="epl_grand_total">

        <td class="epl_w200"><?php 
echo epl_e('Total');
?>
</td>
        <td class="epl_total_price epl_w100 epl_ta_r"> <?php 
echo epl_get_currency_symbol() . epl_get_formatted_curr($money_totals['grand_total']);
?>
</td>
    </tr>


</table>