Plugin Directory

Changeset 2055657


Ignore:
Timestamp:
03/22/2019 09:13:35 PM (7 years ago)
Author:
danillonunes
Message:

Use a single parameter for all attributes display

File:
1 edited

Legend:

Unmodified
Added
Removed
  • makemydonation-imo/trunk/template.php

    r2055656 r2055657  
    193193}
    194194
    195 function get_the_mmdimo_donations_list( $post = 0, $content = NULL, $display_amount = FALSE, $display_charity = TRUE, $display_donor_name = TRUE, $display_destination = TRUE, $display_honoree = FALSE, $display_deceased = FALSE, $display_total_amount = FALSE, $display_date = FALSE ) {
     195function get_the_mmdimo_donations_list( $post = 0, $content = NULL, $display_attributes = array() ) {
    196196  $post = get_post( $post );
    197197  $id = isset( $post->ID ) ? $post->ID : 0;
     
    201201  $donations = mmdimo_api_case_donations_load($mmdimo_case['id']);
    202202
     203  $default_display_attributes = array(
     204    'amount' => FALSE,
     205    'charity' => TRUE,
     206    'donor_name' => TRUE,
     207    'destination' => TRUE,
     208    'honoree' => FALSE,
     209    'deceased' => FALSE,
     210    'total_amount' => FALSE,
     211    'date' => FALSE
     212  );
     213
     214  $display_attributes = array_merge($default_display_attributes, $display_attributes);
     215
    203216  if ( $post->ID && $donations['total'] ) {
    204217    $list = '<ul class="mmdimo-donations-list">';
     
    209222      $item .= '<dl>';
    210223
    211       if ( $display_date ) {
     224      if ( $display_attributes['date'] ) {
    212225        $item .= '<dt class="mmdimo-donations-list-date">' . __('Date:', 'mmdimo') . '</dt>';
    213226        $item .= '<dd class="mmdimo-donations-list-date"><span class="mmdimo-donations-list-date">' . date(get_option( 'date_format' ), $donation->created) . '</span></dd>';
    214227      }
    215228
    216       if ( $display_amount ) {
     229      if ( $display_attributes['amount'] ) {
    217230        $item .= '<dt class="mmdimo-donations-list-amount">' . __('Amount:', 'mmdimo') . '</dt>';
    218231        $item .= '<dd class="mmdimo-donations-list-amount"><span class="mmdimo-donations-list-amount-sep">$</span> <span class="mmdimo-donations-list-amount">' . sprintf('%0.2f', $donation->amount / 100) . '</span></dd>';
    219232      }
    220233
    221       if ( $display_donor_name ) {
     234      if ( $display_attributes['donor_name'] ) {
    222235        $item .= '<dt class="mmdimo-donations-list-donor-name">' . __('Donor:', 'mmdimo') . '</dt>';
    223236        $item .= '<dd class="mmdimo-donations-list-donor-name"><span class="mmdimo-donations-list-donor-first-name">' . $donation->donor->first_name . '</span> <span class="mmdimo-donations-list-donor-last-name">' . $donation->donor->last_name . '</span></dd>';
    224237      }
    225238
    226       if ( $display_charity && $donation->charities[0] ) {
     239      if ( $display_attributes['charity'] && $donation->charities[0] ) {
    227240        $item .= '<dt class="mmdimo-donations-list-charity">' . __('Charity:', 'mmdimo') . '</dt>';
    228241        $item .= '<dd class="mmdimo-donations-list-charity">' . ucwords(strtolower($donation->charities[0]->charityName)) . '</dd>';
    229242      }
    230243
    231       if ( $display_destination && $donation->program->destination ) {
     244      if ( $display_attributes['destination'] && $donation->program->destination ) {
    232245        $item .= '<dt class="mmdimo-donations-list-program-destination">' . __('Destination:', 'mmdimo') . '</dt>';
    233246        $item .= ' <dd class="mmdimo-donations-list-program-destination">' . $donation->program->destination . '</dd> ';
    234247      }
    235248
    236       if ( $display_honoree && $donation->dedicate->dedicate_honoree ) {
     249      if ( $display_attributes['honoree'] && $donation->dedicate->dedicate_honoree ) {
    237250        $item .= '<dt class="mmdimo-donations-list-dedicate-honoree">' . __('In the name of:', 'mmdimo') . '</dt>';
    238251        $item .= ' <dd class="mmdimo-donations-list-dedicate-honoree">' . $donation->dedicate->dedicate_honoree . '</dd> ';
    239252      }
    240       if ( $display_deceased && $donation->dedicate->dedicate_deceased ) {
     253      if ( $display_attributes['deceased'] && $donation->dedicate->dedicate_deceased ) {
    241254        $item .= '<dt class="mmdimo-donations-list-dedicate-deceased">' . __('In memory of:', 'mmdimo') . '</dt>';
    242255        $item .= ' <dd class="mmdimo-donations-list-dedicate-deceased">' . $donation->dedicate->dedicate_deceased . '</dd> ';
     
    253266
    254267    $total_amount = '';
    255     if ($display_total_amount) {
     268    if ($display_attributes['total_amount']) {
    256269      $total_amount = '<div class="mmdimo-donations-list-total-amount"><strong>' . __('Total:', 'mmdimo') . '</strong> $' . sprintf('%0.2f', $donations['total_amount'] / 100) . '</div>';
    257270      $total_amount = apply_filters( 'get_the_mmdimo_donations_list_total_amount', $total_amount, $post, $donations['total_amount'] );
     
    267280
    268281function shortcode_mmdimo_donations_list( $attr = array(), $content = NULL ) {
    269   $display_amount = isset($attr['display_amount'] ) ? $attr['display_amount'] : FALSE;
    270   $display_charity = isset($attr['display_charity'] ) ? $attr['display_charity'] : TRUE;
    271   $display_donor_name = isset($attr['display_donor_name'] ) ? $attr['display_donor_name'] : TRUE;
    272   $display_destination = isset($attr['display_destination'] ) ? $attr['display_destination'] : TRUE;
    273   $display_honoree = isset($attr['display_honoree'] ) ? $attr['display_honoree'] : FALSE;
    274   $display_deceased = isset($attr['display_deceased'] ) ? $attr['display_deceased'] : FALSE;
    275   $display_total_amount = isset($attr['display_total_amount'] ) ? $attr['display_total_amount'] : FALSE;
     282  $display_attributes = array(
     283    'amount',
     284    'charity',
     285    'donor_name',
     286    'destination',
     287    'honoree',
     288    'deceased',
     289    'total_amount',
     290    'date'
     291  );
     292  $display_attributes_values = array();
     293
     294  foreach ($display_attributes as $display_attribute) {
     295    if (isset($attr['display_' . $display_attribute])) {
     296      $display_attributes_values[$display_attribute] = $attr['display_' . $display_attribute];
     297    }
     298  }
    276299
    277300  if (!$content) {
     
    279302  }
    280303
    281   return get_the_mmdimo_donations_list(0, $content, $display_amount, $display_charity, $display_donor_name, $display_destination, $display_honoree, $display_deceased, $display_total_amount);
     304  return get_the_mmdimo_donations_list(0, $content, $display_attributes_values);
    282305}
    283306
Note: See TracChangeset for help on using the changeset viewer.