diff --git a/admin-functions.php b/admin-functions.php
deleted file mode 100644
index c24613fe..00000000
--- a/admin-functions.php
+++ /dev/null
@@ -1,2005 +0,0 @@
-';
- }
-}
-
-if ( !function_exists( 'sportspress_array_between' ) ) {
- function sportspress_array_between ( $array = array(), $delimiter = 0, $index = 0 ) {
- $keys = array_keys( $array, $delimiter );
- if ( array_key_exists( $index, $keys ) ):
- $offset = $keys[ $index ];
- $end = sizeof( $array );
- if ( array_key_exists( $index + 1, $keys ) )
- $end = $keys[ $index + 1 ];
- $length = $end - $offset;
- $array = array_slice( $array, $offset, $length );
- endif;
- return $array;
- }
-}
-
-if ( !function_exists( 'sportspress_array_value' ) ) {
- function sportspress_array_value( $arr = array(), $key = 0, $default = null ) {
- if ( is_array( $arr ) && array_key_exists( $key, $arr ) )
- $subset = $arr[ $key ];
- else
- $subset = $default;
- return $subset;
- }
-}
-
-if ( !function_exists( 'sportspress_array_combine' ) ) {
- function sportspress_array_combine( $keys = array(), $values = array() ) {
- $output = array();
- foreach ( $keys as $key ):
- if ( is_array( $values ) && array_key_exists( $key, $values ) )
- $output[ $key ] = $values[ $key ];
- else
- $output[ $key ] = array();
- endforeach;
- return $output;
- }
-}
-
-if ( !function_exists( 'sportspress_numbers_to_words' ) ) {
- function sportspress_numbers_to_words( $str ) {
- $output = str_replace( array( '1st', '2nd', '3rd', '5th', '8th', '9th', '10', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9' ), array( 'first', 'second', 'third', 'fifth', 'eight', 'ninth', 'ten', 'zero', 'one', 'two', 'three', 'four', 'five', 'six', 'seven', 'eight', 'nine' ), $str );
- return $output;
- }
-}
-
-if ( !function_exists( 'sportspress_get_post_labels' ) ) {
- function sportspress_get_post_labels( $name, $singular_name, $lowercase_name = null ) {
- if ( !$lowercase_name ) $lowercase_name = $name;
- $labels = array(
- 'name' => $name,
- 'singular_name' => $singular_name,
- 'all_items' => $name,
- 'add_new' => sprintf( __( 'Add %s', 'sportspress' ), $singular_name ),
- 'add_new_item' => sprintf( __( 'Add New %s', 'sportspress' ), $singular_name ),
- 'edit_item' => sprintf( __( 'Edit %s', 'sportspress' ), $singular_name ),
- 'new_item' => sprintf( __( 'New %s', 'sportspress' ), $singular_name ),
- 'view_item' => sprintf( __( 'View %s', 'sportspress' ), $singular_name ),
- 'search_items' => sprintf( __( 'Search %s', 'sportspress' ), $name ),
- 'not_found' => sprintf( __( 'No %s found.', 'sportspress' ), $lowercase_name ),
- 'not_found_in_trash' => sprintf( __( 'No %s found in trash.', 'sportspress' ), $lowercase_name ),
- 'parent_item_colon' => sprintf( __( 'Parent %s', 'sportspress' ), $singular_name ) . ':'
- );
- return $labels;
- }
-}
-
-if ( !function_exists( 'sportspress_get_term_labels' ) ) {
- function sportspress_get_term_labels( $name, $singular_name, $lowercase_name = null ) {
- if ( !$lowercase_name ) $lowercase_name = $name;
- $labels = array(
- 'name' => $name,
- 'singular_name' => $singular_name,
- 'all_items' => sprintf( __( 'All %s', 'sportspress' ), $name ),
- 'edit_item' => sprintf( __( 'Edit %s', 'sportspress' ), $singular_name ),
- 'view_item' => sprintf( __( 'View %s', 'sportspress' ), $singular_name ),
- 'update_item' => sprintf( __( 'Update %s', 'sportspress' ), $singular_name ),
- 'add_new_item' => sprintf( __( 'Add New %s', 'sportspress' ), $singular_name ),
- 'new_item_name' => sprintf( __( 'New %s Name', 'sportspress' ), $singular_name ),
- 'parent_item' => sprintf( __( 'Parent %s', 'sportspress' ), $singular_name ),
- 'parent_item_colon' => sprintf( __( 'Parent %s', 'sportspress' ), $singular_name ) . ':',
- 'search_items' => sprintf( __( 'Search %s', 'sportspress' ), $name ),
- 'not_found' => sprintf( __( 'No %s found.', 'sportspress' ), $lowercase_name )
- );
- return $labels;
- }
-}
-
-if ( !function_exists( 'sportspress_get_the_term_id' ) ) {
- function sportspress_get_the_term_id( $post_id, $taxonomy, $index ) {
- $terms = get_the_terms( $post_id, $taxonomy );
- if ( is_array( $terms ) && array_key_exists( $index, $terms ) ):
- $term = $terms[0];
- if ( is_object( $term ) && property_exists( $term, 'term_id' ) )
- return $term->term_id;
- else
- return 0;
- else:
- return 0;
- endif;
- }
-}
-
-if ( !function_exists( 'sportspress_get_post_format' ) ) {
- function sportspress_get_post_format( $post_id ) {
- $format = get_post_meta ( $post_id, 'sp_format', true );
- if ( $format ):
- $formats = sportspress_get_config_formats();
- $format_str = sportspress_array_value( $formats, $format, '—' );
- if ( in_array( $format, array( 'decimal', 'time' ) ) ):
- return $format_str . ' (' . sportspress_get_post_precision( $post_id ) . ')';
- else:
- return $format_str;
- endif;
- else:
- return '—';
- endif;
- }
-}
-
-if ( !function_exists( 'sportspress_get_post_precision' ) ) {
- function sportspress_get_post_precision( $post_id ) {
- $precision = get_post_meta ( $post_id, 'sp_precision', true );
- if ( $precision ):
- return $precision;
- else:
- return '1';
- endif;
- }
-}
-
-if ( !function_exists( 'sportspress_get_post_equation' ) ) {
- function sportspress_get_post_equation( $post_id ) {
- $equation = get_post_meta ( $post_id, 'sp_equation', true );
- if ( $equation ):
- return str_replace(
- array( '$', '+', '-', '*', '/' ),
- array( 'Σ ', '+', '−', '×', '÷' ),
- $equation
- );
- else:
- return '—';
- endif;
- }
-}
-
-if ( !function_exists( 'sportspress_get_post_order' ) ) {
- function sportspress_get_post_order( $post_id ) {
- $priority = get_post_meta ( $post_id, 'sp_priority', true );
- if ( $priority ):
- return $priority . ' ' . str_replace(
- array( 'DESC', 'ASC' ),
- array( '↓', '↑' ),
- get_post_meta ( $post_id, 'sp_order', true )
- );
- else:
- return '—';
- endif;
- }
-}
-
-if ( !function_exists( 'sportspress_get_config_formats' ) ) {
- function sportspress_get_config_formats() {
- $arr = array(
- 'integer' => __( 'Integer', 'sportspress' ),
- 'decimal' => __( 'Decimal', 'sportspress' ),
- 'time' => __( 'Time', 'sportspress' ),
- 'custom' => __( 'Custom Field', 'sportspress' ),
- );
- return $arr;
- }
-}
-
-if ( !function_exists( 'sportspress_dropdown_taxonomies' ) ) {
- function sportspress_dropdown_taxonomies( $args = array() ) {
- $defaults = array(
- 'show_option_all' => false,
- 'show_option_none' => false,
- 'taxonomy' => null,
- 'name' => null,
- 'selected' => null,
- 'hide_empty' => false,
- 'value' => 'slug',
- );
- $args = array_merge( $defaults, $args );
- $terms = get_terms( $args['taxonomy'], $args );
- $name = ( $args['name'] ) ? $args['name'] : $args['taxonomy'];
- if ( $terms ) {
- printf( '' );
- }
- }
-}
-
-if ( !function_exists( 'sportspress_dropdown_pages' ) ) {
- function sportspress_dropdown_pages( $args = array() ) {
- $defaults = array(
- 'show_option_all' => false,
- 'show_option_none' => false,
- 'name' => 'page_id',
- 'selected' => null,
- 'numberposts' => -1,
- 'posts_per_page' => -1,
- 'child_of' => 0,
- 'sort_order' => 'ASC',
- 'sort_column' => 'post_title',
- 'hierarchical' => 1,
- 'exclude' => null,
- 'include' => null,
- 'meta_key' => null,
- 'meta_value' => null,
- 'authors' => null,
- 'exclude_tree' => null,
- 'post_type' => 'page',
- 'values' => 'post_name',
- );
- $args = array_merge( $defaults, $args );
- $name = $args['name'];
- unset( $args['name'] );
- $values = $args['values'];
- unset( $args['values'] );
- $posts = get_posts( $args );
- if ( $posts ) {
- printf( '' );
- }
- }
-}
-
-if ( !function_exists( 'sportspress_the_posts' ) ) {
- function sportspress_the_posts( $post_id = null, $meta = 'post' ) {
- if ( ! isset( $post_id ) )
- global $post_id;
- $ids = get_post_meta( $post_id, $meta, false );
- if ( ( $key = array_search( 0, $ids ) ) !== false )
- unset( $ids[ $key ] );
- $i = 0;
- $count = count( $ids );
- if ( isset( $ids ) && $ids && is_array( $ids ) && !empty( $ids ) ):
- foreach ( $ids as $id ):
- if ( !$id ) continue;
- $parents = get_post_ancestors( $id );
- $keys = array_keys( $parents );
- $values = array_reverse( array_values( $parents ) );
- if ( ! empty( $keys ) && ! empty( $values ) ):
- $parents = array_combine( $keys, $values );
- foreach ( $parents as $parent ):
- if ( !in_array( $parent, $ids ) )
- edit_post_link( get_the_title( $parent ), '', '', $parent );
- echo ' - ';
- endforeach;
- endif;
- $title = get_the_title( $id );
- if ( empty( $title ) )
- $title = __( '(no title)', 'sportspress' );
- edit_post_link( $title, '', '', $id );
- if ( ++$i !== $count )
- echo ', ';
- endforeach;
- endif;
- }
-}
-
-if ( !function_exists( 'sportspress_post_checklist' ) ) {
- function sportspress_post_checklist( $post_id = null, $meta = 'post', $display = 'block', $filter = null, $index = null ) {
- if ( ! isset( $post_id ) )
- global $post_id;
- ?>
-
-
-
', sizeof( $parents ) ); ?>
-
-
-
-
- $type,
- 'numberposts' => -1,
- 'posts_per_page' => -1,
- 'orderby' => 'menu_order',
- 'order' => 'ASC',
- 'exclude' => $postid
- );
- $vars = get_posts( $args );
-
- // Add extra vars to the array
- if ( isset( $defaults ) && is_array( $defaults ) ):
- foreach ( $defaults as $key => $value ):
- $arr[ $key ] = $value;
- endforeach;
- endif;
-
- // Add vars to the array
- if ( isset( $variations ) && is_array( $variations ) ):
- foreach ( $vars as $var ):
- if ( $totals ) $arr[ '$' . $var->post_name ] = $var->post_title;
- foreach ( $variations as $key => $value ):
- $arr[ '$' . $var->post_name . $key ] = $var->post_title . ' ' . $value;
- endforeach;
- endforeach;
- else:
- foreach ( $vars as $var ):
- '$' . $arr[ $var->post_name ] = $var->post_title;
- endforeach;
- endif;
-
- return (array) $arr;
- }
-}
-
-if ( !function_exists( 'sportspress_get_equation_selector' ) ) {
- function sportspress_get_equation_selector( $postid, $selected = null, $groups = array() ) {
-
- if ( ! isset( $postid ) )
- return;
-
- // Initialize options array
- $options = array();
-
- // Add groups to options
- foreach ( $groups as $group ):
- switch ( $group ):
- case 'player_event':
- $options[ __( 'Events', 'sportspress' ) ] = array( '$eventsattended' => __( 'Attended', 'sportspress' ), '$eventsplayed' => __( 'Played', 'sportspress' ) );
- break;
- case 'team_event':
- $options[ __( 'Events', 'sportspress' ) ] = array( '$eventsplayed' => __( 'Played', 'sportspress' ) );
- break;
- case 'result':
- $options[ __( 'Results', 'sportspress' ) ] = sportspress_get_equation_optgroup_array( $postid, 'sp_result', array( 'for' => '→', 'against' => '←' ), null, false );
- break;
- case 'outcome':
- $options[ __( 'Outcomes', 'sportspress' ) ] = sportspress_get_equation_optgroup_array( $postid, 'sp_outcome', array( 'max' => '↑', 'min' => '↓' ) );
- $options[ __( 'Outcomes', 'sportspress' ) ]['$streak'] = __( 'Streak', 'sportspress' );
- $options[ __( 'Outcomes', 'sportspress' ) ]['$last10'] = __( 'Last 10', 'sportspress' );
- break;
- case 'column':
- $options[ __( 'Columns', 'sportspress' ) ] = sportspress_get_equation_optgroup_array( $postid, 'sp_column' );
- break;
- case 'statistic':
- $options[ __( 'Player Statistics', 'sportspress' ) ] = sportspress_get_equation_optgroup_array( $postid, 'sp_statistic' );
- break;
- endswitch;
- endforeach;
-
- // Create array of operators
- $operators = array( '+' => '+', '-' => '−', '*' => '×', '/' => '÷', '(' => '(', ')' => ')' );
-
- // Add operators to options
- $options[ __( 'Operators', 'sportspress' ) ] = $operators;
-
- // Create array of constants
- $max = 10;
- $constants = array();
- for ( $i = 1; $i <= $max; $i ++ ):
- $constants[$i] = $i;
- endfor;
-
- // Add constants to options
- $options[ __( 'Constants', 'sportspress' ) ] = (array) $constants;
-
- ?>
-
- $post_type,
- 'numberposts' => -1,
- 'posts_per_page' => -1,
- 'orderby' => 'menu_order',
- 'order' => 'ASC',
- );
-
- $vars = get_posts( $args );
-
- $output = array();
- foreach ( $vars as $var ):
- $output[ $var->post_name ] = $var->post_title;
- endforeach;
-
- return $output;
- }
-}
-
-if ( !function_exists( 'sportspress_get_var_equations' ) ) {
- function sportspress_get_var_equations( $post_type ) {
- $args = array(
- 'post_type' => $post_type,
- 'numberposts' => -1,
- 'posts_per_page' => -1,
- 'orderby' => 'menu_order',
- 'order' => 'ASC'
- );
-
- $vars = get_posts( $args );
-
- $output = array();
- foreach ( $vars as $var ):
- $equation = get_post_meta( $var->ID, 'sp_equation', true );
- $output[ $var->post_name ] = $equation;
- endforeach;
-
- return $output;
- }
-}
-
-if ( !function_exists( 'sportspress_edit_calendar_table' ) ) {
- function sportspress_edit_calendar_table( $data = array() ) {
- if ( empty( $data ) ):
- printf( __( 'No %s found.', 'sportspress' ), __( 'events', 'sportspress' ) );
- return false;
- endif;
- ?>
-
-
-
-
- |
- |
- |
-
-
-
-
-
- |
- post_title; ?>
- |
-
- ID ); ?>
- |
-
- ID ); ?>
- |
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- |
- |
-
- |
-
-
-
-
- $div_stats ):
- if ( !$div_id || $div_id == 'statistics' ) continue;
- $div = get_term( $div_id, 'sp_season' );
- ?>
-
- |
- name; ?>
- |
-
- 'sp_team',
- 'name' => 'sp_leagues[' . $league_id . '][' . $div_id . ']',
- 'show_option_none' => __( '-- Select --', 'sportspress' ),
- 'sort_order' => 'ASC',
- 'sort_column' => 'menu_order',
- 'selected' => $value,
- 'values' => 'ID',
- 'tax_query' => array(
- 'relation' => 'AND',
- array(
- 'taxonomy' => 'sp_league',
- 'terms' => $league_id,
- 'field' => 'id',
- ),
- array(
- 'taxonomy' => 'sp_season',
- 'terms' => $div_id,
- 'field' => 'id',
- ),
- ),
- );
- sportspress_dropdown_pages( $args );
- ?>
- |
- $label ):
- ?>
- ';
- ?> |
-
-
-
-
-
-
-
-
- __( 'Starting Lineup', 'sportspress' ),
- 'sub' => __( 'Substitute', 'sportspress' ),
- );
-
- $output = '';
-
- return $output;
-
- }
-}
-
-if ( !function_exists( 'sportspress_event_player_sub_selector' ) ) {
- function sportspress_event_player_sub_selector( $team_id, $player_id, $value, $data = array() ) {
-
- if ( ! $team_id || ! $player_id )
- return '—';
-
- $output = '';
-
- return $output;
-
- }
-}
-
-if ( !function_exists( 'sportspress_edit_event_players_table' ) ) {
- function sportspress_edit_event_players_table( $columns = array(), $data = array(), $team_id ) {
- ?>
-
- __( 'Starting Lineup', 'sportspress' ),
- 'sub' => __( 'Substitute', 'sportspress' ),
- );
-
- $output = '';
-
- return $output;
-
- }
-}
-
-if ( !function_exists( 'sportspress_post_adder' ) ) {
- function sportspress_post_adder( $meta = 'post' ) {
- $obj = get_post_type_object( $meta );
- ?>
-
- ' . $value . '';
- break;
- case 'checkbox':
- echo '';
- break;
- default:
- echo '';
- break;
- endswitch;
-
- }
-}
-
-if ( !function_exists( 'sportspress_get_eos_safe_slug' ) ) {
- function sportspress_get_eos_safe_slug( $title, $post_id = 'var' ) {
-
- // String to lowercase
- $title = strtolower( $title );
-
- // Replace all numbers with words
- $title = sportspress_numbers_to_words( $title );
-
- // Remove all other non-alphabet characters
- $title = preg_replace( "/[^a-z]/", '', $title );
-
- // Convert post ID to words if title is empty
- if ( $title == '' ):
-
- $title = sportspress_numbers_to_words( $post_id );
-
- endif;
-
- return $title;
-
- }
-}
-
-if ( !function_exists( 'sportspress_solve' ) ) {
- function sportspress_solve( $equation, $vars ) {
-
- if ( str_replace( ' ', '', $equation ) == '$streak' ):
-
- // Return direct value
- return sportspress_array_value( $vars, 'streak', 0 );
-
- elseif ( str_replace( ' ', '', $equation ) == '$last10' ):
-
- // Return imploded string
- $last10 = sportspress_array_value( $vars, 'last10', array( 0 ) );
- if ( array_sum( $last10 ) > 0 ):
- return implode( '-', $last10 );
- else:
- return '—';
- endif;
-
- else:
-
- // Remove unnecessary variables from vars before calculating
- unset( $vars['streak'] );
- unset( $vars['last10'] );
-
- endif;
-
- // Clearance to begin calculating remains true if all equation variables are in vars
- $clearance = true;
-
- // Check if each variable part is in vars
- $parts = explode( ' ', $equation );
- foreach( $parts as $key => $value ):
- if ( substr( $value, 0, 1 ) == '$' ):
- if ( ! array_key_exists( preg_replace( "/[^a-z]/", '', $value ), $vars ) )
- $clearance = false;
- endif;
- endforeach;
-
- if ( $clearance ):
- // Equation Operating System
- $eos = new eqEOS();
-
- // Solve using EOS
- return round( $eos->solveIF( str_replace( ' ', '', $equation ), $vars ), 3 ); // TODO: add precision setting to each column with default set to 3
- else:
- return 0;
- endif;
-
- }
-
-}
-
-if ( !function_exists( 'sportspress_get_calendar_data' ) ) {
- function sportspress_get_calendar_data( $post_id ) {
- $leagues = get_the_terms( $post_id, 'sp_league' );
- $seasons = get_the_terms( $post_id, 'sp_season' );
- $venues = get_the_terms( $post_id, 'sp_venue' );
-
- if ( ! $leagues || ! $seasons || ! $venues )
- return array();
-
- $league_ids = array();
- foreach( $leagues as $league ):
- $league_ids[] = $league->term_id;
- endforeach;
-
- $season_ids = array();
- foreach( $seasons as $season ):
- $season_ids[] = $season->term_id;
- endforeach;
-
- $venue_ids = array();
- foreach( $venues as $venue ):
- $venue_ids[] = $venue->term_id;
- endforeach;
-
- $args = array(
- 'post_type' => 'sp_event',
- 'numberposts' => -1,
- 'posts_per_page' => -1,
- 'orderby' => 'post_date',
- 'order' => 'ASC',
- 'post_status' => 'any',
- 'tax_query' => array(
- 'relation' => 'AND',
- array(
- 'taxonomy' => 'sp_league',
- 'field' => 'id',
- 'terms' => $league_ids
- ),
- array(
- 'taxonomy' => 'sp_season',
- 'field' => 'id',
- 'terms' => $season_ids
- ),
- array(
- 'taxonomy' => 'sp_venue',
- 'field' => 'id',
- 'terms' => $venue_ids
- ),
- ),
- );
- $events = get_posts( $args );
-
- return $events;
-
- }
-}
-
-if ( !function_exists( 'sportspress_get_team_columns_data' ) ) {
- function sportspress_get_team_columns_data( $post_id, $league_id, $admin = false ) {
-
- $seasons = (array)get_the_terms( $post_id, 'sp_season' );
- $columns = (array)get_post_meta( $post_id, 'sp_columns', true );
- $leagues_seasons = sportspress_array_value( (array)get_post_meta( $post_id, 'sp_leagues_seasons', true ), $league_id, array() );
-
- // Get labels from result variables
- $result_labels = (array)sportspress_get_var_labels( 'sp_result' );
-
- // Get labels from outcome variables
- $outcome_labels = (array)sportspress_get_var_labels( 'sp_outcome' );
-
- // Generate array of all season ids and season names
- $div_ids = array();
- $season_names = array();
- foreach ( $seasons as $season ):
- if ( is_object( $season ) && property_exists( $season, 'term_id' ) && property_exists( $season, 'name' ) ):
- $div_ids[] = $season->term_id;
- $season_names[ $season->term_id ] = $season->name;
- endif;
- endforeach;
-
- $data = array();
-
- // Get all seasons populated with data where available
- $data = sportspress_array_combine( $div_ids, sportspress_array_value( $columns, $league_id, array() ) );
-
- // Get equations from column variables
- $equations = sportspress_get_var_equations( 'sp_column' );
-
- // Initialize placeholders array
- $placeholders = array();
-
- foreach ( $div_ids as $div_id ):
-
- $totals = array( 'eventsplayed' => 0, 'streak' => 0, 'last10' => null );
-
- foreach ( $result_labels as $key => $value ):
- $totals[ $key . 'for' ] = 0;
- $totals[ $key . 'against' ] = 0;
- endforeach;
-
- foreach ( $outcome_labels as $key => $value ):
- $totals[ $key ] = 0;
- endforeach;
-
- // Initialize streaks counter
- $streak = array( 'name' => '', 'count' => 0, 'fire' => 1 );
-
- // Initialize last 10 counter
- $last10 = array();
-
- // Add outcome types to last 10 counter
- foreach( $outcome_labels as $key => $value ):
- $last10[ $key ] = 0;
- endforeach;
-
- // Get all events involving the team in current season
- $args = array(
- 'post_type' => 'sp_event',
- 'numberposts' => -1,
- 'posts_per_page' => -1,
- 'order' => 'ASC',
- 'meta_query' => array(
- array(
- 'key' => 'sp_team',
- 'value' => $post_id
- )
- ),
- 'tax_query' => array(
- 'relation' => 'AND',
- array(
- 'taxonomy' => 'sp_league',
- 'field' => 'id',
- 'terms' => $league_id
- ),
- array(
- 'taxonomy' => 'sp_season',
- 'field' => 'id',
- 'terms' => $div_id
- )
- )
- );
- $events = get_posts( $args );
-
- foreach( $events as $event ):
- $results = (array)get_post_meta( $event->ID, 'sp_results', true );
- foreach ( $results as $team_id => $team_result ):
- foreach ( $team_result as $key => $value ):
- if ( $team_id == $post_id ):
- if ( $key == 'outcome' ):
-
- // Increment events played and outcome count
- if ( array_key_exists( $value, $totals ) ):
- $totals['eventsplayed']++;
- $totals[ $value ]++;
- endif;
-
- if ( $value && $value != '-1' ):
-
- // Add to streak counter
- if ( $streak['fire'] && ( $streak['name'] == '' || $streak['name'] == $value ) ):
- $streak['name'] = $value;
- $streak['count'] ++;
- else:
- $streak['fire'] = 0;
- endif;
-
- // Add to last 10 counter if sum is less than 10
- if ( array_key_exists( $value, $last10 ) && array_sum( $last10 ) < 10 ):
- $last10[ $value ] ++;
- endif;
-
- endif;
-
- else:
- if ( array_key_exists( $key . 'for', $totals ) ):
- $totals[ $key . 'for' ] += $value;
- endif;
- endif;
- else:
- if ( $key != 'outcome' ):
- if ( array_key_exists( $key . 'against', $totals ) ):
- $totals[ $key . 'against' ] += $value;
- endif;
- endif;
- endif;
- endforeach;
- endforeach;
- endforeach;
-
- // Compile streaks counter and add to totals
- $args=array(
- 'name' => $streak['name'],
- 'post_type' => 'sp_outcome',
- 'post_status' => 'publish',
- 'posts_per_page' => 1
- );
- $outcomes = get_posts( $args );
-
- if ( $outcomes ):
- $outcome = $outcomes[0];
- $totals['streak'] = $outcome->post_title . $streak['count'];
- endif;
-
- // Add last 10 to totals
- $totals['last10'] = $last10;
-
- // Generate array of placeholder values for each league
- $placeholders[ $div_id ] = array();
- foreach ( $equations as $key => $value ):
- if ( $totals['eventsplayed'] > 0 ):
- $placeholders[ $div_id ][ $key ] = sportspress_solve( $value, $totals );
- else:
- $placeholders[ $div_id ][ $key ] = 0;
- endif;
- endforeach;
-
- endforeach;
-
- // Get columns from column variables
- $columns = sportspress_get_var_labels( 'sp_column' );
-
- // Merge the data and placeholders arrays
- $merged = array();
-
- foreach( $placeholders as $season_id => $season_data ):
-
- if ( ! sportspress_array_value( $leagues_seasons, $season_id, 0 ) )
- continue;
-
- $season_name = sportspress_array_value( $season_names, $season_id, ' ' );
-
- // Add season name to row
- $merged[ $season_id ] = array(
- 'name' => $season_name
- );
-
- foreach( $season_data as $key => $value ):
-
- // Use static data if key exists and value is not empty, else use placeholder
- if ( array_key_exists( $season_id, $data ) && array_key_exists( $key, $data[ $season_id ] ) && $data[ $season_id ][ $key ] != '' ):
- $merged[ $season_id ][ $key ] = $data[ $season_id ][ $key ];
- else:
- $merged[ $season_id ][ $key ] = $value;
- endif;
-
- endforeach;
-
- endforeach;
-
- if ( $admin ):
- return array( $columns, $data, $placeholders, $merged, $leagues_seasons );
- else:
- $labels = array_merge( array( 'name' => __( 'Season', 'sportspress' ) ), $columns );
- $merged[0] = $labels;
- return $merged;
- endif;
-
- }
-
-}
-
-if ( !function_exists( 'sportspress_get_league_table_data' ) ) {
- function sportspress_get_league_table_data( $post_id, $breakdown = false ) {
- $league_id = sportspress_get_the_term_id( $post_id, 'sp_league', 0 );
- $div_id = sportspress_get_the_term_id( $post_id, 'sp_season', 0 );
- $team_ids = (array)get_post_meta( $post_id, 'sp_team', false );
- $table_stats = (array)get_post_meta( $post_id, 'sp_teams', true );
-
- // Get labels from result variables
- $result_labels = (array)sportspress_get_var_labels( 'sp_result' );
-
- // Get labels from outcome variables
- $outcome_labels = (array)sportspress_get_var_labels( 'sp_outcome' );
-
- // Get all leagues populated with stats where available
- $tempdata = sportspress_array_combine( $team_ids, $table_stats );
-
- // Create entry for each team in totals
- $totals = array();
- $placeholders = array();
-
- // Initialize streaks counter
- $streaks = array();
-
- // Initialize last 10s counter
- $last10s = array();
-
- foreach ( $team_ids as $team_id ):
- if ( ! $team_id )
- continue;
-
- // Initialize team streaks counter
- $streaks[ $team_id ] = array( 'name' => '', 'count' => 0, 'fire' => 1 );
-
- // Initialize team last 10 counter
- $last10s[ $team_id ] = array();
-
- // Add outcome types to team last 10 counter
- foreach( $outcome_labels as $key => $value ):
- $last10s[ $team_id ][ $key ] = 0;
- endforeach;
-
- // Initialize team totals
- $totals[ $team_id ] = array( 'eventsplayed' => 0, 'streak' => 0 );
-
- foreach ( $result_labels as $key => $value ):
- $totals[ $team_id ][ $key . 'for' ] = 0;
- $totals[ $team_id ][ $key . 'against' ] = 0;
- endforeach;
-
- foreach ( $outcome_labels as $key => $value ):
- $totals[ $team_id ][ $key ] = 0;
- endforeach;
-
- // Get static stats
- $static = get_post_meta( $team_id, 'sp_columns', true );
-
- // Add static stats to placeholders
- $placeholders[ $team_id ] = sportspress_array_value( $static, $div_id, array() );
-
- endforeach;
-
- $args = array(
- 'post_type' => 'sp_event',
- 'numberposts' => -1,
- 'posts_per_page' => -1,
- 'order' => 'ASC',
- 'tax_query' => array(
- 'relation' => 'AND',
- array(
- 'taxonomy' => 'sp_league',
- 'field' => 'id',
- 'terms' => $league_id
- ),
- array(
- 'taxonomy' => 'sp_season',
- 'field' => 'id',
- 'terms' => $div_id
- )
- )
- );
- $events = get_posts( $args );
-
- // Event loop
- foreach ( $events as $event ):
-
- $results = (array)get_post_meta( $event->ID, 'sp_results', true );
-
- foreach ( $results as $team_id => $team_result ):
-
- if ( ! in_array( $team_id, $team_ids ) )
- continue;
-
- foreach ( $team_result as $key => $value ):
-
- if ( $key == 'outcome' ):
-
- // Increment events played and outcome count
- if ( array_key_exists( $team_id, $totals ) && is_array( $totals[ $team_id ] ) && array_key_exists( $value, $totals[ $team_id ] ) ):
- $totals[ $team_id ]['eventsplayed']++;
- $totals[ $team_id ][ $value ]++;
- endif;
-
- if ( $value && $value != '-1' ):
-
- // Add to streak counter
- if ( $streaks[ $team_id ]['fire'] && ( $streaks[ $team_id ]['name'] == '' || $streaks[ $team_id ]['name'] == $value ) ):
- $streaks[ $team_id ]['name'] = $value;
- $streaks[ $team_id ]['count'] ++;
- else:
- $streaks[ $team_id ]['fire'] = 0;
- endif;
-
- // Add to last 10 counter if sum is less than 10
- if ( array_key_exists( $team_id, $last10s ) && array_key_exists( $value, $last10s[ $team_id ] ) && array_sum( $last10s[ $team_id ] ) < 10 ):
- $last10s[ $team_id ][ $value ] ++;
- endif;
-
- endif;
-
- else:
- if ( array_key_exists( $team_id, $totals ) && is_array( $totals[ $team_id ] ) && array_key_exists( $key . 'for', $totals[ $team_id ] ) ):
- $totals[ $team_id ][ $key . 'for' ] += $value;
- foreach( $results as $other_team_id => $other_result ):
- if ( $other_team_id != $team_id && array_key_exists( $key . 'against', $totals[ $team_id ] ) ):
- $totals[ $team_id ][ $key . 'against' ] += sportspress_array_value( $other_result, $key, 0 );
- endif;
- endforeach;
- endif;
- endif;
-
- endforeach;
-
- endforeach;
-
- endforeach;
-
- foreach ( $streaks as $team_id => $streak ):
- // Compile streaks counter and add to totals
- if ( $streak['name'] ):
- $args = array(
- 'name' => $streak['name'],
- 'post_type' => 'sp_outcome',
- 'post_status' => 'publish',
- 'posts_per_page' => 1
- );
- $outcomes = get_posts( $args );
-
- if ( $outcomes ):
- $outcome = $outcomes[0];
- $totals[ $team_id ]['streak'] = $outcome->post_title . $streak['count'];
- else:
- $totals[ $team_id ]['streak'] = '—';
- endif;
- else:
- $totals[ $team_id ]['streak'] = '—';
- endif;
- endforeach;
-
- foreach ( $last10s as $team_id => $last10 ):
- // Add last 10 to totals
- $totals[ $team_id ]['last10'] = $last10;
- endforeach;
-
- $args = array(
- 'post_type' => 'sp_column',
- 'numberposts' => -1,
- 'posts_per_page' => -1,
- 'orderby' => 'menu_order',
- 'order' => 'ASC'
- );
- $stats = get_posts( $args );
-
- $columns = array();
- $priorities = array();
-
- foreach ( $stats as $stat ):
-
- // Get post meta
- $meta = get_post_meta( $stat->ID );
-
- // Add equation to object
- $stat->equation = sportspress_array_value( sportspress_array_value( $meta, 'sp_equation', array() ), 0, 0 );
-
- // Add column name to columns
- $columns[ $stat->post_name ] = $stat->post_title;
-
- // Add order to priorities if priority is set and does not exist in array already
- $priority = sportspress_array_value( sportspress_array_value( $meta, 'sp_priority', array() ), 0, 0 );
- if ( $priority && ! array_key_exists( $priority, $priorities ) ):
- $priorities[ $priority ] = array(
- 'column' => $stat->post_name,
- 'order' => sportspress_array_value( sportspress_array_value( $meta, 'sp_order', array() ), 0, 'DESC' )
- );
- endif;
-
- endforeach;
-
- // Sort priorities in descending order
- ksort( $priorities );
-
- // Fill in empty placeholder values for each team
- foreach ( $team_ids as $team_id ):
- if ( ! $team_id )
- continue;
-
- foreach ( $stats as $stat ):
- if ( sportspress_array_value( $placeholders[ $team_id ], $stat->post_name, '' ) == '' ):
- if ( sizeof( $events ) > 0 ):
- $placeholders[ $team_id ][ $stat->post_name ] = sportspress_solve( $stat->equation, sportspress_array_value( $totals, $team_id, array() ) );
- else:
- $placeholders[ $team_id ][ $stat->post_name ] = 0;
- endif;
- endif;
- endforeach;
- endforeach;
-
- // Merge the data and placeholders arrays
- $merged = array();
-
- foreach( $placeholders as $team_id => $team_data ):
-
- // Add team name to row
- $merged[ $team_id ] = array();
-
- $team_data['name'] = get_the_title( $team_id );
-
- foreach( $team_data as $key => $value ):
-
- // Use static data if key exists and value is not empty, else use placeholder
- if ( array_key_exists( $team_id, $tempdata ) && array_key_exists( $key, $tempdata[ $team_id ] ) && $tempdata[ $team_id ][ $key ] != '' ):
- $merged[ $team_id ][ $key ] = $tempdata[ $team_id ][ $key ];
- else:
- $merged[ $team_id ][ $key ] = $value;
- endif;
-
- endforeach;
- endforeach;
-
- uasort( $merged, function( $a, $b ) use ( $priorities ) {
-
- // Loop through priorities
- foreach( $priorities as $priority ):
-
- // Proceed if columns are not equal
- if ( sportspress_array_value( $a, $priority['column'], 0 ) != sportspress_array_value( $b, $priority['column'], 0 ) ):
-
- // Compare column values
- $output = sportspress_array_value( $a, $priority['column'], 0 ) - sportspress_array_value( $b, $priority['column'], 0 );
-
- // Flip value if descending order
- if ( $priority['order'] == 'DESC' ) $output = 0 - $output;
-
- return $output;
-
- endif;
-
- endforeach;
-
- // Default sort by alphabetical
- return strcmp( sportspress_array_value( $a, 'name', '' ), sportspress_array_value( $b, 'name', '' ) );
- });
-
- // Rearrange data array to reflect statistics
- $data = array();
- foreach( $merged as $key => $value ):
- $data[ $key ] = $tempdata[ $key ];
- endforeach;
-
- if ( $breakdown ):
- return array( $columns, $data, $placeholders, $merged );
- else:
- $labels = array_merge( array( 'name' => __( 'Team', 'sportspress' ) ), $columns );
- $merged[0] = $labels;
- return $merged;
- endif;
- }
-}
-
-if ( !function_exists( 'sportspress_get_player_list_data' ) ) {
- function sportspress_get_player_list_data( $post_id, $admin = false ) {
- $league_id = sportspress_get_the_term_id( $post_id, 'sp_league', 0 );
- $div_id = sportspress_get_the_term_id( $post_id, 'sp_season', 0 );
- $team_id = get_post_meta( $post_id, 'sp_team', true );
- $player_ids = (array)get_post_meta( $post_id, 'sp_player', false );
- $stats = (array)get_post_meta( $post_id, 'sp_players', true );
-
- // Get labels from result variables
- $columns = (array)sportspress_get_var_labels( 'sp_statistic' );
-
- // Get all leagues populated with stats where available
- $tempdata = sportspress_array_combine( $player_ids, $stats );
-
- // Get equations from statistics variables
- $equations = sportspress_get_var_equations( 'sp_statistic' );
-
- // Create entry for each player in totals
- $totals = array();
- $placeholders = array();
-
- foreach ( $player_ids as $player_id ):
- if ( ! $player_id )
- continue;
-
- $totals[ $player_id ] = array( 'eventsattended' => 0, 'eventsplayed' => 0 );
-
- foreach ( $columns as $key => $value ):
- $totals[ $player_id ][ $key ] = 0;
- endforeach;
-
- // Get static statistics
- $static = get_post_meta( $player_id, 'sp_statistics', true );
-
- // Create placeholders entry for the player
- $placeholders[ $player_id ] = array();
-
- // Add static statistics to placeholders
- if ( array_key_exists( $league_id, $static ) && array_key_exists( $div_id, $static[ $league_id ] ) ):
- $placeholders[ $player_id ] = $static[ $league_id ][ $div_id ];
- endif;
- endforeach;
-
- $args = array(
- 'post_type' => 'sp_event',
- 'numberposts' => -1,
- 'posts_per_page' => -1,
- 'tax_query' => array(
- 'relation' => 'AND',
- array(
- 'taxonomy' => 'sp_league',
- 'field' => 'id',
- 'terms' => $league_id
- ),
- array(
- 'taxonomy' => 'sp_season',
- 'field' => 'id',
- 'terms' => $div_id
- )
- ),
- 'meta_query' => array(
- array(
- 'key' => 'sp_team',
- 'value' => $team_id,
- )
- )
- );
- $events = get_posts( $args );
-
- // Event loop
- foreach( $events as $event ):
-
- $teams = (array)get_post_meta( $event->ID, 'sp_players', true );
-
- if ( ! array_key_exists( $team_id, $teams ) )
- continue;
-
- $players = sportspress_array_value( $teams, $team_id, array() );
-
- foreach ( $players as $player_id => $player_statistics ):
-
- if ( ! $player_id || ! in_array( $player_id, $player_ids ) )
- continue;
-
- // Increment events played
- $totals[ $player_id ]['eventsplayed']++;
-
- foreach ( $player_statistics as $key => $value ):
-
- if ( array_key_exists( $key, $totals[ $player_id ] ) ):
- $totals[ $player_id ][ $key ] += $value;
- endif;
-
- endforeach;
-
- endforeach;
-
- endforeach;
-
- $args = array(
- 'post_type' => 'sp_statistic',
- 'numberposts' => -1,
- 'posts_per_page' => -1,
- 'orderby' => 'menu_order',
- 'order' => 'ASC',
- );
- $statistics = get_posts( $args );
-
- $columns = array();
- $priorities = array();
-
- foreach ( $statistics as $statistic ):
-
- // Get post meta
- $meta = get_post_meta( $statistic->ID );
-
- // Add equation to object
- $statistic->equation = sportspress_array_value( sportspress_array_value( $meta, 'sp_equation', array() ), 0, 0 );
-
- // Add column name to columns
- $columns[ $statistic->post_name ] = $statistic->post_title;
-
- // Add order to priorities if priority is set and does not exist in array already
- $priority = sportspress_array_value( sportspress_array_value( $meta, 'sp_priority', array() ), 0, 0 );
- if ( $priority && ! array_key_exists( $priority, $priorities ) ):
- $priorities[ $priority ] = array(
- 'column' => $statistic->post_name,
- 'order' => sportspress_array_value( sportspress_array_value( $meta, 'sp_order', array() ), 0, 'DESC' )
- );
- endif;
-
- endforeach;
-
- // Sort priorities in descending order
- ksort( $priorities );
-
- // Fill in empty placeholder values for each player
- foreach ( $player_ids as $player_id ):
-
- if ( ! $player_id )
- continue;
-
- foreach ( $statistics as $statistic ):
- if ( sportspress_array_value( $placeholders[ $player_id ], $statistic->post_name, '' ) == '' ):
-
- // Reflect totals
- $placeholders[ $player_id ][ $statistic->post_name ] = sportspress_array_value( sportspress_array_value( $totals, $player_id, array() ), $statistic->post_name, 0 );
-
- endif;
- endforeach;
- endforeach;
-
- // Merge the data and placeholders arrays
- $merged = array();
-
- foreach( $placeholders as $player_id => $player_data ):
-
- // Add player name to row
- $merged[ $player_id ] = array( 'name' => get_the_title( $player_id ) );
-
- foreach( $player_data as $key => $value ):
-
- // Use static data if key exists and value is not empty, else use placeholder
- if ( array_key_exists( $player_id, $tempdata ) && array_key_exists( $key, $tempdata[ $player_id ] ) && $tempdata[ $player_id ][ $key ] != '' ):
- $merged[ $player_id ][ $key ] = $tempdata[ $player_id ][ $key ];
- else:
- $merged[ $player_id ][ $key ] = $value;
- endif;
-
- endforeach;
- endforeach;
-
- uasort( $merged, function( $a, $b ) use ( $priorities ) {
-
- // Loop through priorities
- foreach( $priorities as $priority ):
-
- // Proceed if columns are not equal
- if ( sportspress_array_value( $a, $priority['column'], 0 ) != sportspress_array_value( $b, $priority['column'], 0 ) ):
-
- // Compare column values
- $output = sportspress_array_value( $a, $priority['column'], 0 ) - sportspress_array_value( $b, $priority['column'], 0 );
-
- // Flip value if descending order
- if ( $priority['order'] == 'DESC' ) $output = 0 - $output;
-
- return $output;
-
- endif;
-
- endforeach;
-
- // Default sort by alphabetical
- return strcmp( sportspress_array_value( $a, 'name', '' ), sportspress_array_value( $b, 'name', '' ) );
- });
-
- // Rearrange data array to reflect statistics
- $data = array();
- foreach( $merged as $key => $value ):
- $data[ $key ] = $tempdata[ $key ];
- endforeach;
-
- if ( $admin ):
- return array( $columns, $tempdata, $placeholders, $merged );
- else:
- $labels = array_merge( array( 'name' => __( 'Player', 'sportspress' ) ), $columns );
- $merged[0] = $labels;
- return $merged;
- endif;
- }
-}
-
-if ( !function_exists( 'sportspress_get_player_metrics_data' ) ) {
- function sportspress_get_player_metrics_data( $post_id ) {
-
- $metrics = (array)get_post_meta( $post_id, 'sp_metrics', true );
-
- // Get labels from metric variables
- $metric_labels = (array)sportspress_get_var_labels( 'sp_metric' );
-
- $data = array();
-
- foreach( $metric_labels as $key => $value ):
-
- $data[ $value ] = sportspress_array_value( $metrics, $key, ' ' );
-
- endforeach;
-
- return $data;
-
- }
-}
-
-if ( !function_exists( 'sportspress_get_player_statistics_data' ) ) {
- function sportspress_get_player_statistics_data( $post_id, $league_id, $admin = false ) {
-
- $seasons = (array)get_the_terms( $post_id, 'sp_season' );
- $stats = (array)get_post_meta( $post_id, 'sp_statistics', true );
- $seasons_teams = sportspress_array_value( (array)get_post_meta( $post_id, 'sp_leagues', true ), $league_id, array() );
-
- // Get labels from statistic variables
- $statistic_labels = (array)sportspress_get_var_labels( 'sp_statistic' );
-
- // Generate array of all season ids and season names
- $div_ids = array();
- $season_names = array();
- foreach ( $seasons as $season ):
- if ( is_object( $season ) && property_exists( $season, 'term_id' ) && property_exists( $season, 'name' ) ):
- $div_ids[] = $season->term_id;
- $season_names[ $season->term_id ] = $season->name;
- endif;
- endforeach;
-
- $tempdata = array();
-
- // Get all seasons populated with stats where available
- $tempdata = sportspress_array_combine( $div_ids, sportspress_array_value( $stats, $league_id, array() ) );
-
- // Get equations from statistics variables
- $equations = sportspress_get_var_equations( 'sp_statistic' );
-
- foreach ( $div_ids as $div_id ):
-
- $team_id = sportspress_array_value( $seasons_teams, $div_id, '-1' );
-
- $totals = array( 'eventsattended' => 0, 'eventsplayed' => 0 );
-
- foreach ( $statistic_labels as $key => $value ):
- $totals[ $key ] = 0;
- endforeach;
-
- $args = array(
- 'post_type' => 'sp_event',
- 'numberposts' => -1,
- 'posts_per_page' => -1,
- 'meta_query' => array(
- 'relation' => 'AND',
- array(
- 'key' => 'sp_team',
- 'value' => $team_id
- ),
- array(
- 'key' => 'sp_player',
- 'value' => $post_id
- )
- ),
- 'tax_query' => array(
- 'relation' => 'AND',
- array(
- 'taxonomy' => 'sp_league',
- 'field' => 'id',
- 'terms' => $league_id
- ),
- array(
- 'taxonomy' => 'sp_season',
- 'field' => 'id',
- 'terms' => $div_id
- )
- )
- );
- $events = get_posts( $args );
-
- foreach( $events as $event ):
- $totals['eventsattended']++;
- $totals['eventsplayed']++;
- $team_statistics = (array)get_post_meta( $event->ID, 'sp_players', true );
- if ( array_key_exists( $team_id, $team_statistics ) ):
- $players = sportspress_array_value( $team_statistics, $team_id, array() );
- if ( array_key_exists( $post_id, $players ) ):
- $player_statistics = sportspress_array_value( $players, $post_id, array() );
- foreach ( $player_statistics as $key => $value ):
- if ( array_key_exists( $key, $totals ) ):
- $totals[ $key ] += $value;
- endif;
- endforeach;
- endif;
- endif;
- endforeach;
-
- // Generate array of placeholder values for each league
- $placeholders[ $div_id ] = array();
- foreach ( $equations as $key => $value ):
-
- if ( empty( $value ) ):
-
- // Reflect totals
- $placeholders[ $div_id ][ $key ] = sportspress_array_value( $totals, $key, 0 );
-
- else:
-
- // Calculate value
- if ( sizeof( $events ) > 0 ):
- $placeholders[ $div_id ][ $key ] = sportspress_solve( $value, $totals );
- else:
- $placeholders[ $div_id ][ $key ] = 0;
- endif;
-
- endif;
-
- endforeach;
-
- endforeach;
-
- // Get columns from statistics variables
- $columns = sportspress_get_var_labels( 'sp_statistic' );
-
- // Merge the data and placeholders arrays
- $merged = array();
-
- foreach( $placeholders as $season_id => $season_data ):
-
- $team_id = sportspress_array_value( $seasons_teams, $season_id, array() );
-
- if ( ! $team_id || $team_id == '-1' )
- continue;
-
- $team_name = get_the_title( $team_id );
-
- $season_name = sportspress_array_value( $season_names, $season_id, ' ' );
-
- // Add season name to row
- $merged[ $season_id ] = array(
- 'name' => $season_name,
- 'team' => $team_name
- );
-
- foreach( $season_data as $key => $value ):
-
- // Use static data if key exists and value is not empty, else use placeholder
- if ( array_key_exists( $season_id, $tempdata ) && array_key_exists( $key, $tempdata[ $season_id ] ) && $tempdata[ $season_id ][ $key ] != '' ):
- $merged[ $season_id ][ $key ] = $tempdata[ $season_id ][ $key ];
- else:
- $merged[ $season_id ][ $key ] = $value;
- endif;
-
- endforeach;
-
- endforeach;
-
- if ( $admin ):
- return array( $columns, $tempdata, $placeholders, $merged, $seasons_teams );
- else:
- $labels = array_merge( array( 'name' => __( 'Season', 'sportspress' ), 'team' => __( 'Team', 'sportspress' ) ), $columns );
- $merged[0] = $labels;
- return $merged;
- endif;
-
- }
-}
-
-if ( !function_exists( 'sportspress_highlight_admin_menu' ) ) {
- function sportspress_highlight_admin_menu() {
- global $parent_file, $submenu_file;
- $parent_file = 'options-general.php';
- $submenu_file = 'sportspress';
- }
-}
diff --git a/admin/hooks/admin-head.php b/admin/hooks/admin-head.php
index 3da39558..3bda120b 100644
--- a/admin/hooks/admin-head.php
+++ b/admin/hooks/admin-head.php
@@ -2,7 +2,7 @@
function sportspress_admin_head() {
global $typenow;
- if ( in_array( $typenow, array( 'sp_result', 'sp_outcome', 'sp_column', 'sp_statistic' ) ) ):
+ if ( in_array( $typenow, array( 'sp_result', 'sp_outcome', 'sp_column', 'sp_statistic', 'sp_metric' ) ) ):
sportspress_highlight_admin_menu();
endif;
}
diff --git a/admin/hooks/gettext.php b/admin/hooks/gettext.php
index 7d68fc25..48d0538f 100644
--- a/admin/hooks/gettext.php
+++ b/admin/hooks/gettext.php
@@ -23,7 +23,7 @@ function sportspress_gettext( $translated_text, $untranslated_text, $domain ) {
case 'sp_event':
switch ( $untranslated_text ):
case 'Enter title here':
- $translated_text = __( '(no title)', 'sportspress' );
+ $translated_text = __( '(auto)', 'sportspress' );
break;
case 'Scheduled for: %1$s':
$translated_text = __( 'Date/Time: %1$s', 'sportspress' );
diff --git a/admin/hooks/manage-posts-custom-column.php b/admin/hooks/manage-posts-custom-column.php
index 6dda282e..1955bd3d 100644
--- a/admin/hooks/manage-posts-custom-column.php
+++ b/admin/hooks/manage-posts-custom-column.php
@@ -6,7 +6,10 @@ function sportspress_manage_posts_custom_column( $column, $post_id ) {
edit_post_link( get_the_post_thumbnail( $post_id, 'sportspress-icon' ), '', '', $post_id );
break;
case 'sp_position':
- echo get_the_terms ( $post_id, 'sp_position' ) ? the_terms( $post_id, 'sp_position' ) : '—';
+ echo get_the_terms( $post_id, 'sp_position' ) ? the_terms( $post_id, 'sp_position' ) : '—';
+ break;
+ case 'sp_positions':
+ echo get_the_terms ( $post_id, 'sp_position' ) ? the_terms( $post_id, 'sp_position' ) : sprintf( __( 'All %s', 'sportspress' ), __( 'positions', 'sportspress' ) );
break;
case 'sp_team':
$post_type = get_post_type( $post );
@@ -60,8 +63,8 @@ function sportspress_manage_posts_custom_column( $column, $post_id ) {
case 'sp_key':
echo $post->post_name;
break;
- case 'sp_format':
- echo sportspress_get_post_format( $post_id );
+ case 'sp_precision':
+ echo sportspress_get_post_precision( $post_id );
break;
case 'sp_player':
echo sportspress_the_posts( $post_id, 'sp_player' );
diff --git a/admin/hooks/post-updated-messages.php b/admin/hooks/post-updated-messages.php
new file mode 100644
index 00000000..b846e904
--- /dev/null
+++ b/admin/hooks/post-updated-messages.php
@@ -0,0 +1,45 @@
+labels->singular_name ) .
+ ' ' .
+ sprintf( __( 'Edit %s', 'sportspress' ), $obj->labels->name ) . '';
+
+ elseif ( in_array( $typenow, array( 'sp_event', 'sp_calendar', 'sp_team', 'sp_table', 'sp_player', 'sp_list', 'sp_staff' ) ) ):
+ $obj = get_post_type_object( $typenow );
+
+ $messages['post'][1] = sprintf( __( '%s updated.', 'sportspress' ), $obj->labels->singular_name ) .
+ ' ' . $obj->labels->view_item . '';
+
+ $messages['post'][4] = sprintf( __( '%s updated.', 'sportspress' ), $obj->labels->singular_name );
+
+ $messages['post'][6] = sprintf( __( '%s published.', 'sportspress' ), $obj->labels->singular_name ) .
+ ' ' . $obj->labels->view_item . '';
+
+ $messages['post'][7] = sprintf( __( '%s saved.'), $obj->labels->singular_name );
+
+ $messages['post'][8] = sprintf( __( '%s submitted.', 'sportspress' ), $obj->labels->singular_name ) .
+ ' ' .
+ sprintf( __( 'Preview %s', 'sportspress' ), $obj->labels->singular_name ) . '';
+
+ $messages['post'][9] = sprintf(
+ __( '%s scheduled for: %s.', 'sportspress' ),
+ date_i18n( __( 'M j, Y @ G:i' ), strtotime( $post->post_date ) ), esc_url( get_permalink($post->ID) ) ) .
+ ' ' .
+ sprintf( __( 'Preview %s', 'sportspress' ), $obj->labels->singular_name ) . '';
+
+ $messages['post'][8] = sprintf( __( '%s draft updated.', 'sportspress' ), $obj->labels->singular_name ) .
+ ' ' .
+ sprintf( __( 'Preview %s', 'sportspress' ), $obj->labels->singular_name ) . '';
+
+ endif;
+
+ return $messages;
+}
+
+add_filter('post_updated_messages', 'sportspress_post_updated_messages');
+?>
\ No newline at end of file
diff --git a/admin/hooks/save-post.php b/admin/hooks/save-post.php
index 57a1ddff..3aa859c7 100644
--- a/admin/hooks/save-post.php
+++ b/admin/hooks/save-post.php
@@ -48,15 +48,12 @@ function sportspress_save_post( $post_id ) {
break;
case ( 'sp_column' ):
-
- // Update format as string
- update_post_meta( $post_id, 'sp_format', sportspress_array_value( $_POST, 'sp_format', 'integer' ) );
-
- // Update precision as integer
- update_post_meta( $post_id, 'sp_precision', (int) sportspress_array_value( $_POST, 'sp_precision', 1 ) );
-
+
// Update equation as string
update_post_meta( $post_id, 'sp_equation', implode( ' ', sportspress_array_value( $_POST, 'sp_equation', array() ) ) );
+
+ // Update precision as integer
+ update_post_meta( $post_id, 'sp_precision', (int) sportspress_array_value( $_POST, 'sp_precision', 1 ) );
// Update sort order as string
update_post_meta( $post_id, 'sp_priority', sportspress_array_value( $_POST, 'sp_priority', '0' ) );
@@ -68,43 +65,8 @@ function sportspress_save_post( $post_id ) {
case ( 'sp_statistic' ):
- // Update format as string
- update_post_meta( $post_id, 'sp_format', sportspress_array_value( $_POST, 'sp_format', 'integer' ) );
-
- // Update precision as integer
- update_post_meta( $post_id, 'sp_precision', (int) sportspress_array_value( $_POST, 'sp_precision', 1 ) );
-
- // Update sort order as string
- update_post_meta( $post_id, 'sp_priority', sportspress_array_value( $_POST, 'sp_priority', '0' ) );
-
- // Update sort order as string
- update_post_meta( $post_id, 'sp_order', sportspress_array_value( $_POST, 'sp_order', 'DESC' ) );
-
- break;
-
- case ( 'sp_metric' ):
-
- // Update format as string
- update_post_meta( $post_id, 'sp_format', sportspress_array_value( $_POST, 'sp_format', 'integer' ) );
-
- // Update precision as integer
- update_post_meta( $post_id, 'sp_precision', (int) sportspress_array_value( $_POST, 'sp_precision', 1 ) );
-
// Update equation as string
update_post_meta( $post_id, 'sp_equation', implode( ' ', sportspress_array_value( $_POST, 'sp_equation', array() ) ) );
-
- // Update sort order as string
- update_post_meta( $post_id, 'sp_priority', sportspress_array_value( $_POST, 'sp_priority', '0' ) );
-
- // Update sort order as string
- update_post_meta( $post_id, 'sp_order', sportspress_array_value( $_POST, 'sp_order', 'DESC' ) );
-
- break;
-
- case ( 'sp_result' ):
-
- // Update format as string
- update_post_meta( $post_id, 'sp_format', sportspress_array_value( $_POST, 'sp_format', 'integer' ) );
break;
diff --git a/admin/post-types/column.php b/admin/post-types/column.php
index ffefd110..b3c9c85a 100644
--- a/admin/post-types/column.php
+++ b/admin/post-types/column.php
@@ -1,8 +1,8 @@
$name,
@@ -24,8 +24,8 @@ function sportspress_column_edit_columns() {
'cb' => '',
'title' => __( 'Label', 'sportspress' ),
'sp_key' => __( 'Key', 'sportspress' ),
- 'sp_format' => __( 'Format', 'sportspress' ),
'sp_equation' => __( 'Equation', 'sportspress' ),
+ 'sp_precision' => __( 'Precision', 'sportspress' ),
'sp_order' => __( 'Sort Order', 'sportspress' ),
);
return $columns;
@@ -37,8 +37,6 @@ function sportspress_column_meta_init() {
}
function sportspress_column_details_meta( $post ) {
- $formats = sportspress_get_config_formats();
-
$equation = explode( ' ', get_post_meta( $post->ID, 'sp_equation', true ) );
$order = get_post_meta( $post->ID, 'sp_order', true );
$priority = get_post_meta( $post->ID, 'sp_priority', true );
@@ -51,20 +49,6 @@ function sportspress_column_details_meta( $post ) {
-
-
-
-
-
-
-
-
+
+
+
+