public function performance($admin = false) { $teams = get_post_meta($this->ID, 'sp_team', false); $performance = (array) get_post_meta($this->ID, 'sp_players', true); $labels = sp_get_var_labels('sp_performance'); $columns = get_post_meta($this->ID, 'sp_columns', true); if (is_array($teams)) { foreach ($teams as $i => $team_id) { $players = sp_array_between((array) get_post_meta($this->ID, 'sp_player', false), 0, $i); $data = sp_array_combine($players, sp_array_value($performance, $team_id, array())); $totals = array(); foreach ($labels as $key => $label) { $totals[$key] = 0; } foreach ($data as $player_id => $player_performance) { foreach ($labels as $key => $label) { if (array_key_exists($key, $totals)) { $totals[$key] += sp_array_value($player_performance, $key, 0); } } if (!array_key_exists('number', $player_performance)) { $performance[$team_id][$player_id]['number'] = get_post_meta($player_id, 'sp_number', true); } if (!array_key_exists('position', $player_performance) || $player_performance['position'] == null) { $performance[$team_id][$player_id]['position'] = get_post_meta($player_id, 'sp_position', true); } } foreach ($totals as $key => $value) { $manual_total = sp_array_value(sp_array_value($performance, 0, array()), $key, null); if ($manual_total != null) { $totals[$key] = $manual_total; } } } } if ($admin) { return array($labels, $columns, $performance, $teams); } else { // Add position to performance labels $labels = array_merge(array('position' => __('Position', 'prosports')), $labels); if (is_array($columns)) { foreach ($labels as $key => $label) { if (!in_array($key, $columns)) { unset($labels[$key]); } } } // Move individual players to top level of array if (array_key_exists(0, $performance)) { foreach ($performance[0] as $player_id => $player_performance) { $performance[$player_id] = array($player_id => $player_performance); } } $performance[0] = $labels; return $performance; } }
public function performance($admin = false) { $teams = get_post_meta($this->ID, 'sp_team', false); $performance = (array) get_post_meta($this->ID, 'sp_players', true); $labels = apply_filters('sportspress_event_performance_labels', sp_get_var_labels('sp_performance'), $this); $columns = get_post_meta($this->ID, 'sp_columns', true); if (is_array($teams)) { foreach ($teams as $i => $team_id) { $players = sp_array_between((array) get_post_meta($this->ID, 'sp_player', false), 0, $i); $data = sp_array_combine($players, sp_array_value($performance, $team_id, array())); $totals = array(); foreach ($labels as $key => $label) { $totals[$key] = 0; } foreach ($data as $player_id => $player_performance) { foreach ($labels as $key => $label) { if (array_key_exists($key, $totals)) { $totals[$key] += sp_array_value($player_performance, $key, 0); } } if (!array_key_exists('number', $player_performance)) { $performance[$team_id][$player_id]['number'] = get_post_meta($player_id, 'sp_number', true); } if (!array_key_exists('position', $player_performance) || $player_performance['position'] == null) { $performance[$team_id][$player_id]['position'] = sp_get_the_term_id($player_id, 'sp_position', null); } } foreach ($totals as $key => $value) { $manual_total = sp_array_value(sp_array_value($performance, 0, array()), $key, null); if ($manual_total != null) { $totals[$key] = $manual_total; } } } } if ($admin) { return array($labels, $columns, $performance, $teams); } else { // Add position to performance labels if (taxonomy_exists('sp_position')) { $labels = array_merge(array('position' => __('Position', 'sportspress')), $labels); } if ('manual' == get_option('sportspress_event_performance_columns', 'auto') && is_array($columns)) { foreach ($labels as $key => $label) { if (!in_array($key, $columns)) { unset($labels[$key]); } } } if ('no' == get_option('sportspress_event_show_position', 'yes')) { unset($labels['position']); } $performance[0] = $labels; return $performance; } }
/** * Output the metabox */ public static function output($post) { $event = new SP_Event($post); list($labels, $columns, $stats, $teams) = $event->performance(true); $i = 0; foreach ($teams as $key => $team_id) { if (-1 == $team_id) { continue; } // Get results for players in the team $players = sp_array_between((array) get_post_meta($post->ID, 'sp_player', false), 0, $key); $players[] = -1; $data = sp_array_combine($players, sp_array_value($stats, $team_id, array())); // Determine if we need checkboxes if ('manual' == get_option('sportspress_event_performance_columns', 'auto') && $i == 0) { $has_checkboxes = true; } else { $has_checkboxes = false; } // Determine if we need extras if ('yes' == get_option('sportspress_event_show_extras', 'no')) { $show_extras = true; } else { $show_extras = false; } // Determine if we are splitting positions if ('yes' == get_option('sportspress_event_split_players_by_position', 'no')) { $split_positions = true; } else { $split_positions = false; } ?> <div> <?php if ($team_id) { ?> <p><strong><?php echo get_the_title($team_id); ?> </strong></p> <?php } elseif ($i) { ?> <br> <?php } ?> <?php self::table($labels, $columns, $data, $team_id, $has_checkboxes, $show_extras, $split_positions); ?> </div> <?php $i++; } }
/** * Output the metabox */ public static function output($post) { $event = new SP_Event($post); list($labels, $columns, $stats, $teams) = $event->performance(true); $i = 0; foreach ($teams as $key => $team_id) { if (-1 == $team_id) { continue; } // Get results for players in the team $players = sp_array_between((array) get_post_meta($post->ID, 'sp_player', false), 0, $key); $data = sp_array_combine($players, sp_array_value($stats, $team_id, array())); ?> <div> <?php if ($team_id) { ?> <p><strong><?php echo get_the_title($team_id); ?> </strong></p> <?php } elseif ($i) { ?> <br> <?php } ?> <?php self::table($labels, $columns, $data, $team_id, $i == 0); ?> </div> <?php $i++; } }
/** * Ajax checklist. */ public function checklist($post_id = null, $post_type = 'post', $display = 'block', $team = null, $index = null, $slug = null) { if (!isset($slug)) { $slug = $post_type; } $selected = (array) get_post_meta($post_id, $slug, false); if (sizeof($selected)) { $selected = sp_array_between($selected, 0, $index); } else { $selected = sp_array_between((array) get_post_meta($post_id, $post_type, false), 0, $index); } if ('yes' == get_option('sportspress_event_filter_teams_by_league', 'no')) { $leagues = get_the_terms($post_id, 'sp_league'); } else { $leagues = false; } if ('yes' == get_option('sportspress_event_filter_teams_by_season', 'no')) { $seasons = get_the_terms($post_id, 'sp_season'); } else { $seasons = false; } $args = array('orderby' => 'menu_order'); if ('sp_player' == $post_type) { $args['meta_key'] = 'sp_number'; $args['orderby'] = 'meta_value_num'; $args['order'] = 'ASC'; } $args['meta_query'] = array(array('key' => 'sp_current_team', 'value' => $team)); if ($leagues || $seasons) { $args['tax_query'] = array('relation' => 'AND'); if ($leagues) { $args['tax_query'][] = array('taxonomy' => 'sp_league', 'field' => 'id', 'terms' => wp_list_pluck($leagues, 'term_id')); } if ($seasons) { $args['tax_query'][] = array('taxonomy' => 'sp_season', 'field' => 'id', 'terms' => wp_list_pluck($seasons, 'term_id')); } } $posts = sp_get_posts($post_type, $args); $post_ids = wp_list_pluck($posts, 'ID'); $diff = array_diff($post_ids, $selected); $selected = array_flip($selected); ?> <div id="<?php echo $slug; ?> -all" class="posttypediv wp-tab-panel sp-tab-panel sp-ajax-checklist sp-select-all-range" style="display: <?php echo $display; ?> ;"> <input type="hidden" value="0" name="<?php echo $slug; if (isset($index)) { echo '[' . $index . ']'; } ?> []" /> <ul class="categorychecklist form-no-clear"> <?php if (is_array($posts) && sizeof($posts)) { ?> <li class="sp-select-all-container"> <label class="selectit"> <input type="checkbox" class="sp-select-all" <?php checked(empty($diff)); ?> > <strong><?php _e('Select All', 'sportspress'); ?> </strong> </label> </li> <?php foreach ($posts as $post) { ?> <li> <label class="selectit"> <input type="checkbox" value="<?php echo $post->ID; ?> " name="<?php echo $slug; if (isset($index)) { echo '[' . $index . ']'; } ?> []" <?php checked(array_key_exists($post->ID, $selected)); ?> > <?php echo sp_get_player_name_with_number($post->ID); ?> </label> </li> <?php unset($selected[$post->ID]); ?> <?php } ?> <?php if (is_array($selected) && sizeof($selected)) { foreach ($selected as $post_id => $post) { ?> <?php if (!$post_id) { continue; } ?> <li> <label class="selectit"> <input type="checkbox" value="<?php echo $post_id; ?> " name="<?php echo $slug; if (isset($index)) { echo '[' . $index . ']'; } ?> []" <?php checked(true); ?> > <?php echo sp_get_player_name_with_number($post_id); ?> </label> </li> <?php } } ?> <li class="sp-ajax-show-all-container"><a class="sp-ajax-show-all" href="#show-all-<?php echo $slug; ?> s"><?php _e('Show all', 'sportspress'); ?> </a></li> <?php } else { ?> <li class="sp-ajax-show-all-container"><?php _e('No results found.', 'sportspress'); ?> <a class="sp-ajax-show-all" href="#show-all-<?php echo $slug; ?> s"><?php _e('Show all', 'sportspress'); ?> </a></li> <?php } ?> </ul> </div> <?php }
function sp_post_checklist($post_id = null, $meta = 'post', $display = 'block', $filters = null, $index = null, $slug = null) { if (!isset($post_id)) { global $post_id; } if (!isset($slug)) { $slug = $meta; } ?> <div id="<?php echo $slug; ?> -all" class="posttypediv tabs-panel wp-tab-panel sp-tab-panel sp-tab-filter-panel sp-select-all-range" style="display: <?php echo $display; ?> ;"> <input type="hidden" value="0" name="<?php echo $slug; if (isset($index)) { echo '[' . $index . ']'; } ?> []" /> <ul class="categorychecklist form-no-clear"> <li class="sp-select-all-container"><label class="selectit"><input type="checkbox" class="sp-select-all"> <strong><?php _e('Select All', 'sportspress'); ?> </strong></label></li> <?php $selected = (array) get_post_meta($post_id, $slug, false); if (!sizeof($selected)) { $selected = (array) get_post_meta($post_id, $meta, false); } $selected = sp_array_between($selected, 0, $index); if (empty($posts)) { $query = array('post_type' => $meta, 'numberposts' => -1, 'post_per_page' => -1, 'orderby' => 'menu_order'); if ($meta == 'sp_player') { $query['meta_key'] = 'sp_number'; $query['orderby'] = 'meta_value_num'; $query['order'] = 'ASC'; } $posts = get_posts($query); } foreach ($posts as $post) { $parents = get_post_ancestors($post); if ($filters) { if (is_array($filters)) { $filter_values = array(); foreach ($filters as $filter) { if (get_taxonomy($filter)) { $terms = (array) get_the_terms($post->ID, $filter); foreach ($terms as $term) { if (is_object($term) && property_exists($term, 'term_id')) { $filter_values[] = $term->term_id; } } } else { $filter_values = array_merge($filter_values, (array) get_post_meta($post->ID, $filter, false)); } } } else { $filter = $filters; if (get_taxonomy($filter)) { $terms = (array) get_the_terms($post->ID, $filter); foreach ($terms as $term) { if (is_object($term) && property_exists($term, 'term_id')) { $filter_values[] = $term->term_id; } } } else { $filter_values = (array) get_post_meta($post->ID, $filter, false); } } } ?> <li class="sp-post sp-filter-0<?php if ($filters) { foreach ($filter_values as $filter_value) { echo ' sp-filter-' . $filter_value; } } ?> "> <?php echo str_repeat('<ul><li>', sizeof($parents)); ?> <label class="selectit"> <input type="checkbox" value="<?php echo $post->ID; ?> " name="<?php echo $slug; if (isset($index)) { echo '[' . $index . ']'; } ?> []"<?php if (in_array($post->ID, $selected)) { echo ' checked="checked"'; } ?> > <?php echo sp_get_player_name_with_number($post->ID); ?> </label> <?php echo str_repeat('</li></ul>', sizeof($parents)); ?> </li> <?php } ?> <li class="sp-not-found-container"> <?php _e('No results found.', 'sportspress'); ?> <?php if (sizeof($posts)) { ?> <a class="sp-show-all" href="#show-all-<?php echo $slug; ?> s"><?php _e('Show all', 'sportspress'); ?> </a><?php } ?> </li> <?php if (sizeof($posts)) { ?> <li class="sp-show-all-container"><a class="sp-show-all" href="#show-all-<?php echo $slug; ?> s"><?php _e('Show all', 'sportspress'); ?> </a></li> <?php } ?> </ul> </div> <?php }
function prosports_array_between($array = array(), $delimiter = 0, $index = 0) { return sp_array_between($array, $delimiter, $index); }
<?php /** * Event Staff * * @author ProSports * @package ProSports/Templates * @version 1.1 */ if (!defined('ABSPATH')) { exit; } // Exit if accessed directly $defaults = array('id' => get_the_ID(), 'index' => 0, 'link_posts' => get_option('prosports_link_staff', 'yes') == 'yes' ? true : false); $staffs = array_filter(sp_array_between((array) get_post_meta($id, 'sp_staff', false), 0, $index)); if (!$staffs) { return; } extract($defaults, EXTR_SKIP); ?> <p class="sp-event-staff"> <?php foreach ($staffs as $staff_id) { if (!$staff_id) { continue; } $name = get_the_title($staff_id); if (!$name) { continue; } $staff = new SP_Staff($staff_id);
$performance_posts = get_posts(array('posts_per_page' => -1, 'post_type' => 'sp_performance')); foreach ($performance_posts as $post) { $performance_ids[$post->post_name] = $post->ID; } } if ($reverse_teams) { $teams = array_reverse($teams, true); } if ($split_teams) { // Split tables foreach ($teams as $index => $team_id) { if (-1 == $team_id) { continue; } // Get results for players in the team $players = sp_array_between((array) get_post_meta($id, 'sp_player', false), 0, $index); $has_players = sizeof($players) > 1; $players = apply_filters('sportspress_event_performance_split_team_players', $players); $show_team_players = $show_players && $has_players; if (0 < $team_id) { $data = sp_array_combine($players, sp_array_value($performance, $team_id, array())); } elseif (0 == $team_id) { $data = array(); foreach ($players as $player_id) { if (isset($performance[$player_id][$player_id])) { $data[$player_id] = $performance[$player_id][$player_id]; } } } else { $data = sp_array_value(array_values($performance), $index); }
/** * Admin edit tables */ public static function tables($post_id, $stats = array(), $labels = array(), $columns = array(), $teams = array(), $has_checkboxes = false, $split_positions = false, $split_teams = true, $positions = array(), $status = true) { $i = 0; if ($split_teams) { foreach ($teams as $key => $team_id) { if (-1 == $team_id) { continue; } // Get results for players in the team $players = sp_array_between((array) get_post_meta($post_id, 'sp_player', false), 0, $key); $players[] = -1; $data = sp_array_combine($players, sp_array_value($stats, $team_id, array())); ?> <div> <?php if ($team_id) { ?> <p><strong><?php echo get_the_title($team_id); ?> </strong></p> <?php } elseif ($i) { ?> <br> <?php } ?> <?php self::table($labels, $columns, $data, $team_id, $has_checkboxes, $split_positions, $positions, $status); ?> </div> <?php $i++; } } else { ?> <div class="sp-data-table-container"> <table class="widefat sp-data-table sp-performance-table sp-sortable-table"> <?php self::header($columns, $labels, $positions, $labels, $has_checkboxes, $status, false, false); ?> <?php self::footer(sp_array_value($stats, -1), $labels, 0, $positions, $labels, $split_positions, $status, false, false); ?> <tbody> <?php foreach ($teams as $key => $team_id) { if (-1 == $team_id) { continue; } // Get results for players in the team $players = sp_array_between((array) get_post_meta($post_id, 'sp_player', false), 0, $key); $players[] = -1; $data = sp_array_combine($players, sp_array_value($stats, $team_id, array())); foreach ($data as $player_id => $player_performance) { self::row($labels, $player_id, $player_performance, $team_id, $data, !empty($positions), $status, false, false); } } ?> </tbody> </table> </div> <?php } }
/** * Admin edit tables */ public static function tables($post_id, $stats = array(), $labels = array(), $columns = array(), $teams = array(), $has_checkboxes = false, $positions = array(), $status = true, $formats = array(), $order = array(), $numbers = true, $is_individual = false, $timeline = array()) { $sections = get_option('sportspress_event_performance_sections', -1); if ($is_individual) { ?> <div class="sp-data-table-container"> <table class="widefat sp-data-table sp-performance-table sp-sortable-table"> <?php self::header($columns, $labels, $positions, $has_checkboxes, $status, false, $numbers, -1, $formats); ?> <?php self::footer(sp_array_value($stats, -1), $labels, 0, $positions, $status, false, $numbers, -1, $formats); ?> <tbody> <?php foreach ($teams as $key => $team_id) { if (-1 == $team_id) { continue; } // Get results for players in the team $players = sp_array_between((array) get_post_meta($post_id, 'sp_player', false), 0, $key); $players[] = -1; $data = sp_array_combine($players, sp_array_value($stats, $team_id, array())); // Get team timeline if (is_array($timeline)) { $team_timeline = (array) sp_array_value($timeline, $team_id, array()); } else { $team_timeline = false; } foreach ($data as $player_id => $player_performance) { // Get player timeline if (is_array($team_timeline)) { $player_timeline = (array) sp_array_value($team_timeline, $player_id, array()); } else { $player_timeline = false; } self::row($labels, $player_id, $player_performance, $team_id, $data, !empty($positions), $status, false, $numbers, -1, $formats, $player_timeline); } } ?> </tbody> </table> </div> <?php } else { $i = 0; foreach ($teams as $key => $team_id) { if (-1 == $team_id) { continue; } if (-1 == $sections) { // Get results for players in the team $players = sp_array_between((array) get_post_meta($post_id, 'sp_player', false), 0, $key); $players[] = -1; $data = sp_array_combine($players, sp_array_value($stats, $team_id, array())); // Get team timeline if (is_array($timeline)) { $team_timeline = (array) sp_array_value($timeline, $team_id, array()); } else { $team_timeline = false; } ?> <div> <p><strong><?php echo get_the_title($team_id); ?> </strong></p> <?php self::table($labels, $columns, $data, $team_id, $has_checkboxes, $positions, $status, -1, $formats, $order, $numbers, $team_timeline); ?> <?php do_action('sportspress_after_event_performance_table_admin', $labels, $columns, $data, $team_id); ?> </div> <?php } else { ?> <?php // Get labels by section $args = array('post_type' => 'sp_performance', 'numberposts' => 100, 'posts_per_page' => 100, 'orderby' => 'menu_order', 'order' => 'ASC'); $performances = get_posts($args); $labels = array(array(), array()); foreach ($performances as $performance) { $section = get_post_meta($performance->ID, 'sp_section', true); if ('' === $section) { $section = -1; } switch ($section) { case 1: $labels[1][$performance->post_name] = $performance->post_title; break; default: $labels[0][$performance->post_name] = $performance->post_title; } } $offense = (array) get_post_meta($post_id, 'sp_offense', false); $defense = (array) get_post_meta($post_id, 'sp_defense', false); $data = array(); if (sizeof($offense) || sizeof($defense)) { // Get results for offensive players in the team $offense = sp_array_between($offense, 0, $key); $offense[] = -1; $data[0] = sp_array_combine($offense, sp_array_value($stats, $team_id, array())); // Get results for defensive players in the team $defense = sp_array_between($defense, 0, $key); $defense[] = -1; $data[1] = sp_array_combine($defense, sp_array_value($stats, $team_id, array())); } else { // Get results for all players in the team $players = sp_array_between((array) get_post_meta($post_id, 'sp_player', false), 0, $key); $players[] = -1; $data[0] = $data[1] = sp_array_combine($players, sp_array_value($stats, $team_id, array())); } // Get team timeline if (is_array($timeline)) { $team_timeline = (array) sp_array_value($timeline, $team_id, array()); } else { $team_timeline = false; } // Determine order of sections if (1 == $sections) { $section_order = array(1 => __('Defense', 'sportspress'), 0 => __('Offense', 'sportspress')); } else { $section_order = array(__('Offense', 'sportspress'), __('Defense', 'sportspress')); } foreach ($section_order as $section_id => $section_label) { ?> <div> <p><strong><?php echo get_the_title($team_id); ?> — <?php echo $section_label; ?> </strong></p> <?php self::table($labels[$section_id], $columns, $data[$section_id], $team_id, $has_checkboxes && 0 === $i, $positions, $status, $section_id, $formats, $order, $numbers, $team_timeline); ?> <?php do_action('sportspress_after_event_performance_table_admin', $labels[$section_id], $columns, $data[$section_id], $team_id); ?> </div> <?php } } $i++; } } }
/** * Admin edit tables */ public static function tables($post_id, $stats = array(), $labels = array(), $columns = array(), $teams = array(), $has_checkboxes = false, $split_positions = false, $split_teams = true, $positions = array(), $status = true) { $i = 0; if ($split_teams) { foreach ($teams as $key => $team_id) { if (-1 == $team_id) { continue; } // Get results for players in the team $players = sp_array_between((array) get_post_meta($post_id, 'sp_player', false), 0, $key); $players[] = -1; $data = sp_array_combine($players, sp_array_value($stats, $team_id, array())); $tabs = array(); if ($team_id) { $tabs['values'] = get_the_title($team_id); } elseif ($i) { echo '<br>'; } $tabs = apply_filters('sportspress_event_performance_tabs_admin', $tabs); ?> <div> <?php if (sizeof($tabs)) { ?> <?php if (sizeof($tabs) > 1) { ?> <ul class="subsubsub sp-performance-table-bar"> <?php $t = 0; ?> <?php foreach ($tabs as $key => $label) { ?> <li> <a href="#"<?php if (0 == $t) { ?> class="current"<?php } ?> > <?php echo $label; ?> </a> </li> <?php if (sizeof($tabs) > $t + 1) { ?> | <?php } ?> <?php $t++; ?> <?php } ?> </ul> <?php } else { ?> <?php $label = reset($tabs); ?> <p><strong><?php echo $label; ?> </strong></p> <?php } ?> <?php } ?> <?php self::table($labels, $columns, $data, $team_id, $has_checkboxes, $split_positions, $positions, $status); ?> <?php do_action('sportspress_after_event_performance_table_admin', $labels, $columns, $data, $team_id); ?> </div> <?php $i++; } } else { ?> <div class="sp-data-table-container"> <table class="widefat sp-data-table sp-performance-table sp-sortable-table"> <?php self::header($columns, $labels, $positions, $has_checkboxes, $status, false, false); ?> <?php self::footer(sp_array_value($stats, -1), $labels, 0, $positions, $split_positions, $status, false, false); ?> <tbody> <?php foreach ($teams as $key => $team_id) { if (-1 == $team_id) { continue; } // Get results for players in the team $players = sp_array_between((array) get_post_meta($post_id, 'sp_player', false), 0, $key); $players[] = -1; $data = sp_array_combine($players, sp_array_value($stats, $team_id, array())); foreach ($data as $player_id => $player_performance) { self::row($labels, $player_id, $player_performance, $team_id, $data, !empty($positions), $status, false, false); } } ?> </tbody> </table> </div> <?php } }
public function performance($admin = false) { $teams = get_post_meta($this->ID, 'sp_team', false); $performance = (array) get_post_meta($this->ID, 'sp_players', true); $args = array('post_type' => 'sp_performance', 'numberposts' => 100, 'posts_per_page' => 100, 'orderby' => 'menu_order', 'order' => 'ASC'); $vars = get_posts($args); $labels = array(); foreach ($vars as $var) { $labels[$var->post_name] = $var->post_title; $format = get_post_meta($var->ID, 'sp_format', true); if ('' === $format) { $format = 'number'; } $formats[$var->post_name] = $format; } $order = (array) get_post_meta($this->ID, 'sp_order', true); $labels = apply_filters('sportspress_event_performance_labels', $labels, $this); $columns = get_post_meta($this->ID, 'sp_columns', true); if (is_array($teams)) { foreach ($teams as $i => $team_id) { $players = sp_array_between((array) get_post_meta($this->ID, 'sp_player', false), 0, $i); $data = sp_array_combine($players, sp_array_value($performance, $team_id, array())); $totals = array(); foreach ($labels as $key => $label) { $totals[$key] = 0; } foreach ($data as $player_id => $player_performance) { foreach ($labels as $key => $label) { if (array_key_exists($key, $totals)) { $totals[$key] += sp_array_value($player_performance, $key, 0); } } if (!array_key_exists('number', $player_performance)) { $performance[$team_id][$player_id]['number'] = apply_filters('sportspress_event_performance_default_squad_number', get_post_meta($player_id, 'sp_number', true)); } if (!array_key_exists('position', $player_performance) || $player_performance['position'] == null) { $performance[$team_id][$player_id]['position'] = sp_get_the_term_id($player_id, 'sp_position', null); } } foreach ($totals as $key => $value) { $manual_total = sp_array_value(sp_array_value($performance, 0, array()), $key, null); if ($manual_total != null) { $totals[$key] = $manual_total; } } } } if ($admin) { return array($labels, $columns, $performance, $teams, $formats, $order); } else { // Add position to performance labels if (taxonomy_exists('sp_position')) { $labels = array_merge(array('position' => __('Position', 'sportspress')), $labels); } if ('manual' == get_option('sportspress_event_performance_columns', 'auto') && is_array($columns)) { foreach ($labels as $key => $label) { if (!in_array($key, $columns)) { unset($labels[$key]); } } } if ('no' == get_option('sportspress_event_show_position', 'yes')) { unset($labels['position']); } if ('no' == get_option('sportspress_event_show_player_numbers', 'yes')) { unset($labels['number']); } $performance[0] = $labels; return apply_filters('sportspress_get_event_performance', $performance); } }