From ab3efd80240c0f765e6d53b55da5a497346e8d2b Mon Sep 17 00:00:00 2001 From: Brian Miyaji Date: Wed, 7 Oct 2015 19:08:41 +1100 Subject: [PATCH] Prevent automatic results from calculating when no performance --- .../class-sp-meta-box-event-results.php | 28 +++++++++++-------- 1 file changed, 16 insertions(+), 12 deletions(-) diff --git a/includes/admin/post-types/meta-boxes/class-sp-meta-box-event-results.php b/includes/admin/post-types/meta-boxes/class-sp-meta-box-event-results.php index 80e14684..38a7fd60 100644 --- a/includes/admin/post-types/meta-boxes/class-sp-meta-box-event-results.php +++ b/includes/admin/post-types/meta-boxes/class-sp-meta-box-event-results.php @@ -44,13 +44,11 @@ class SP_Meta_Box_Event_Results { $finished = false; // Check if any results are recorded - if ( ! $finished ) { - foreach ( $results as $team => $team_results ) { - foreach ( $team_results as $result ) { - if ( '' !== $result ) { - $finished = true; - break; - } + foreach ( $results as $team => $team_results ) { + foreach ( $team_results as $result ) { + if ( '' !== $result ) { + $finished = true; + break; } } } @@ -60,11 +58,17 @@ class SP_Meta_Box_Event_Results { foreach ( $performance as $team => $players ) { foreach ( $players as $player => $pp ) { if ( 0 >= $player ) continue; - foreach ( $pp as $pv ) { - if ( '' !== trim( $pv ) ) { - $finished = true; - break; - } + foreach ( $pp as $pk => $pv ) { + if ( in_array( $pk, apply_filters( 'sportspress_event_auto_result_bypass_keys', array( 'number', 'status', 'sub' ) ) ) ) continue; + + if ( is_array( $pv ) ) continue; + + $pv = trim( $pv ); + if ( '' == $pv ) continue; + if ( ! ctype_digit( $pv ) ) continue; + + $finished = true; + break; } } }