From dabedf7d416a29e6a72dd10440e9ad02f585be2d Mon Sep 17 00:00:00 2001 From: Brian Miyaji Date: Tue, 1 Nov 2016 13:42:31 +1100 Subject: [PATCH] Add equation-based box score performance values --- assets/js/admin/sportspress-admin.js | 8 ++--- includes/admin/class-sp-admin-assets.php | 4 +-- includes/admin/class-sp-admin-sports.php | 2 ++ .../post-types/class-sp-admin-meta-boxes.php | 7 ++++ .../meta-boxes/class-sp-meta-box-equation.php | 7 ++++ .../class-sp-meta-box-event-performance.php | 10 ++++++ .../class-sp-meta-box-performance-details.php | 8 ++++- ...class-sp-meta-box-performance-equation.php | 29 +++++++++++++++ includes/class-sp-event.php | 36 +++++++++++++++++++ includes/sp-core-functions.php | 2 +- .../event-performance-table-combined.php | 2 +- templates/event-performance-table.php | 20 +++++++++-- templates/event-performance.php | 21 +++++++++-- 13 files changed, 143 insertions(+), 13 deletions(-) create mode 100644 includes/admin/post-types/meta-boxes/class-sp-meta-box-performance-equation.php diff --git a/assets/js/admin/sportspress-admin.js b/assets/js/admin/sportspress-admin.js index 192b47c0..3772c516 100644 --- a/assets/js/admin/sportspress-admin.js +++ b/assets/js/admin/sportspress-admin.js @@ -365,7 +365,7 @@ jQuery(document).ready(function($){ $(".sp-format-selector select:first").change(function() { $precisionselector = $(".sp-precision-selector input:first"); - $equationselector = $(".sp-equation-selector select"); + $equationdiv = $("#sp_equationdiv"); // Precision settings if($(this).val() == "decimal" || $(this).val() == "time") { @@ -375,10 +375,10 @@ jQuery(document).ready(function($){ } // Equation settings - if($(this).val() == "custom") { - $equationselector.prop( "disabled", true ); + if($(this).val() == "equation") { + $equationdiv.show(); } else { - $equationselector.prop( "disabled", false ); + $equationdiv.hide(); } }); diff --git a/includes/admin/class-sp-admin-assets.php b/includes/admin/class-sp-admin-assets.php index ac6fe0c6..310167b8 100755 --- a/includes/admin/class-sp-admin-assets.php +++ b/includes/admin/class-sp-admin-assets.php @@ -55,7 +55,7 @@ class SP_Admin_Assets { wp_enqueue_style( 'sportspress-admin-customize-styles', SP()->plugin_url() . '/assets/css/customize.css', array(), SP_VERSION ); } - if ( in_array( $screen->id, array( 'sp_result', 'sp_column', 'sp_statistic' ) ) ) { + if ( in_array( $screen->id, array( 'sp_result', 'sp_performance', 'sp_column', 'sp_statistic' ) ) ) { wp_enqueue_style( 'sportspress-admin-equation-styles', SP()->plugin_url() . '/assets/css/equation.css', array(), SP_VERSION ); } @@ -136,7 +136,7 @@ class SP_Admin_Assets { } // Edit equation - if ( in_array( $screen->id, array( 'sp_result', 'sp_column', 'sp_statistic' ) ) ) { + if ( in_array( $screen->id, array( 'sp_result', 'sp_performance', 'sp_column', 'sp_statistic' ) ) ) { wp_enqueue_script( 'sportspress-admin-equationbuilder' ); } } diff --git a/includes/admin/class-sp-admin-sports.php b/includes/admin/class-sp-admin-sports.php index 9eb69c37..18518ed0 100644 --- a/includes/admin/class-sp-admin-sports.php +++ b/includes/admin/class-sp-admin-sports.php @@ -161,6 +161,8 @@ class SP_Admin_Sports { update_post_meta( $id, 'sp_color', sp_array_value( $performance, 'color', null ) ); update_post_meta( $id, 'sp_section', sp_array_value( $performance, 'section', -1 ) ); update_post_meta( $id, 'sp_format', sp_array_value( $performance, 'format', 'number' ) ); + update_post_meta( $id, 'sp_equation', sp_array_value( $performance, 'equation', null ) ); + update_post_meta( $id, 'sp_precision', sp_array_value( $performance, 'precision', 0 ) ); $i ++; } diff --git a/includes/admin/post-types/class-sp-admin-meta-boxes.php b/includes/admin/post-types/class-sp-admin-meta-boxes.php index cfea565c..11d839be 100644 --- a/includes/admin/post-types/class-sp-admin-meta-boxes.php +++ b/includes/admin/post-types/class-sp-admin-meta-boxes.php @@ -60,6 +60,13 @@ class SP_Admin_Meta_Boxes { 'context' => 'normal', 'priority' => 'high', ), + 'equation' => array( + 'title' => __( 'Equation', 'sportspress' ), + 'save' => 'SP_Meta_Box_Performance_Equation::save', + 'output' => 'SP_Meta_Box_Performance_Equation::output', + 'context' => 'normal', + 'priority' => 'high', + ), ), 'sp_column' => array( 'details' => array( diff --git a/includes/admin/post-types/meta-boxes/class-sp-meta-box-equation.php b/includes/admin/post-types/meta-boxes/class-sp-meta-box-equation.php index 27e59645..857bbab8 100644 --- a/includes/admin/post-types/meta-boxes/class-sp-meta-box-equation.php +++ b/includes/admin/post-types/meta-boxes/class-sp-meta-box-equation.php @@ -120,6 +120,13 @@ class SP_Meta_Box_Equation { 'posts_per_page' => -1, 'orderby' => 'menu_order', 'order' => 'ASC', + 'meta_query' => array( + array( + 'key' => 'sp_format', + 'value' => 'equation', + 'compare' => '!=', + ), + ), ); $vars = get_posts( $args ); diff --git a/includes/admin/post-types/meta-boxes/class-sp-meta-box-event-performance.php b/includes/admin/post-types/meta-boxes/class-sp-meta-box-event-performance.php index 35de980f..ed4f4309 100644 --- a/includes/admin/post-types/meta-boxes/class-sp-meta-box-event-performance.php +++ b/includes/admin/post-types/meta-boxes/class-sp-meta-box-event-performance.php @@ -157,6 +157,13 @@ class SP_Meta_Box_Event_Performance { 'posts_per_page' => 100, 'orderby' => 'menu_order', 'order' => 'ASC', + 'meta_query' => array( + array( + 'key' => 'sp_format', + 'value' => 'equation', + 'compare' => '!=', + ), + ), ); $performances = get_posts( $args ); @@ -293,6 +300,7 @@ class SP_Meta_Box_Event_Performance { $label ): ?> +