Display staff in event performance section
This commit is contained in:
@@ -4,7 +4,7 @@
|
||||
*
|
||||
* @author ThemeBoy
|
||||
* @package SportsPress/Templates
|
||||
* @version 0.8
|
||||
* @version 1.1
|
||||
*/
|
||||
|
||||
if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
|
||||
@@ -12,35 +12,39 @@ if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
|
||||
if ( ! isset( $id ) )
|
||||
$id = get_the_ID();
|
||||
|
||||
$defaults = array(
|
||||
'show_outcomes' => get_option( 'sportspress_event_show_outcomes', 'yes' ) == 'yes' ? true : false,
|
||||
);
|
||||
$event = new SP_Event( $id );
|
||||
$status = $event->status();
|
||||
|
||||
extract( $defaults, EXTR_SKIP );
|
||||
if ( 'results' != $status ) return;
|
||||
|
||||
$teams = (array)get_post_meta( $id, 'sp_team', false );
|
||||
$results = array_filter( sp_array_combine( $teams, (array)get_post_meta( $id, 'sp_results', true ) ), 'array_filter' );
|
||||
$result_labels = sp_get_var_labels( 'sp_result' );
|
||||
// Get event result data
|
||||
$data = $event->results();
|
||||
|
||||
$output = '';
|
||||
// The first row should be column labels
|
||||
$labels = $data[0];
|
||||
|
||||
// Initialize and check
|
||||
$table_rows = '';
|
||||
// Remove the first row to leave us with the actual data
|
||||
unset( $data[0] );
|
||||
|
||||
$i = 0;
|
||||
$data = array_filter( $data );
|
||||
|
||||
if ( empty( $results ) )
|
||||
if ( empty( $data ) )
|
||||
return false;
|
||||
|
||||
foreach( $results as $team_id => $result ):
|
||||
if ( count( array_filter( $results ) ) ):
|
||||
$show_outcomes = array_key_exists( 'outcome', $labels );
|
||||
|
||||
if ( $show_outcomes ):
|
||||
$outcomes = array();
|
||||
$result_outcome = $result['outcome'];
|
||||
if ( ! is_array( $result_outcome ) ):
|
||||
$result_outcome = (array) $result_outcome;
|
||||
endif;
|
||||
// Initialize
|
||||
$output = '';
|
||||
$table_rows = '';
|
||||
$i = 0;
|
||||
|
||||
foreach( $data as $team_id => $result ):
|
||||
if ( $show_outcomes ):
|
||||
$outcomes = array();
|
||||
$result_outcome = sp_array_value( $result, 'outcome' );
|
||||
if ( ! is_array( $result_outcome ) ):
|
||||
$outcomes = array( '—' );
|
||||
else:
|
||||
foreach( $result_outcome as $outcome ):
|
||||
$the_outcome = get_page_by_path( $outcome, OBJECT, 'sp_outcome' );
|
||||
if ( is_object( $the_outcome ) ):
|
||||
@@ -48,33 +52,32 @@ foreach( $results as $team_id => $result ):
|
||||
endif;
|
||||
endforeach;
|
||||
endif;
|
||||
|
||||
unset( $result['outcome'] );
|
||||
|
||||
$table_rows .= '<tr class="' . ( $i % 2 == 0 ? 'odd' : 'even' ) . '">';
|
||||
|
||||
$table_rows .= '<td class="data-name">' . get_the_title( $team_id ) . '</td>';
|
||||
|
||||
foreach( $result_labels as $key => $label ):
|
||||
if ( $key == 'name' )
|
||||
continue;
|
||||
if ( array_key_exists( $key, $result ) && $result[ $key ] != '' ):
|
||||
$value = $result[ $key ];
|
||||
else:
|
||||
$value = '—';
|
||||
endif;
|
||||
$table_rows .= '<td class="data-' . $key . '">' . $value . '</td>';
|
||||
endforeach;
|
||||
|
||||
if ( $show_outcomes ):
|
||||
$table_rows .= '<td class="data-outcome">' . implode( ', ', $outcomes ) . '</td>';
|
||||
endif;
|
||||
|
||||
$table_rows .= '</tr>';
|
||||
|
||||
$i++;
|
||||
|
||||
endif;
|
||||
|
||||
unset( $result['outcome'] );
|
||||
|
||||
$table_rows .= '<tr class="' . ( $i % 2 == 0 ? 'odd' : 'even' ) . '">';
|
||||
|
||||
$table_rows .= '<td class="data-name">' . get_the_title( $team_id ) . '</td>';
|
||||
|
||||
foreach( $labels as $key => $label ):
|
||||
if ( in_array( $key, array( 'name', 'outcome' ) ) )
|
||||
continue;
|
||||
if ( array_key_exists( $key, $result ) && $result[ $key ] != '' ):
|
||||
$value = $result[ $key ];
|
||||
else:
|
||||
$value = '—';
|
||||
endif;
|
||||
$table_rows .= '<td class="data-' . $key . '">' . $value . '</td>';
|
||||
endforeach;
|
||||
|
||||
if ( $show_outcomes ):
|
||||
$table_rows .= '<td class="data-outcome">' . implode( ', ', $outcomes ) . '</td>';
|
||||
endif;
|
||||
|
||||
$table_rows .= '</tr>';
|
||||
|
||||
$i++;
|
||||
endforeach;
|
||||
|
||||
if ( empty( $table_rows ) ):
|
||||
@@ -88,12 +91,9 @@ else:
|
||||
$output .= '<div class="sp-table-wrapper sp-scrollable-table-wrapper">' .
|
||||
'<table class="sp-event-results sp-data-table sp-responsive-table"><thead>' .
|
||||
'<th class="data-name">' . __( 'Team', 'sportspress' ) . '</th>';
|
||||
foreach( $result_labels as $key => $label ):
|
||||
foreach( $labels as $key => $label ):
|
||||
$output .= '<th class="data-' . $key . '">' . $label . '</th>';
|
||||
endforeach;
|
||||
if ( $show_outcomes ):
|
||||
$output .= '<th class="data-outcome">' . __( 'Outcome', 'sportspress' ) . '</th>';
|
||||
endif;
|
||||
$output .= '</tr>' . '</thead>' . '<tbody>';
|
||||
$output .= $table_rows;
|
||||
$output .= '</tbody>' . '</table>' . '</div>';
|
||||
|
||||
Reference in New Issue
Block a user