From 55cb7e9765a100dfcfcec600619462162feed1ea Mon Sep 17 00:00:00 2001 From: savvasha Date: Tue, 18 Sep 2018 16:45:10 +0300 Subject: [PATCH] Add Default Nationality option at General Settings. --- .../class-sp-meta-box-player-details.php | 8 +++ modules/sportspress-default-nationality.php | 67 +++++++++++++++++++ 2 files changed, 75 insertions(+) create mode 100644 modules/sportspress-default-nationality.php diff --git a/includes/admin/post-types/meta-boxes/class-sp-meta-box-player-details.php b/includes/admin/post-types/meta-boxes/class-sp-meta-box-player-details.php index 8e24101d..d859dba4 100644 --- a/includes/admin/post-types/meta-boxes/class-sp-meta-box-player-details.php +++ b/includes/admin/post-types/meta-boxes/class-sp-meta-box-player-details.php @@ -24,6 +24,14 @@ class SP_Meta_Box_Player_Details { $number = get_post_meta( $post->ID, 'sp_number', true ); $nationalities = get_post_meta( $post->ID, 'sp_nationality', false ); + $default_nationality = get_option( 'sportspress_default_nationality' , false ); + + if ( empty( $nationalities ) && $default_nationality ) { + if ( $default_nationality != '' ) { + $nationalities[] = $default_nationality; + } + } + foreach ( $nationalities as $index => $nationality ): if ( 2 == strlen( $nationality ) ): $legacy = SP()->countries->legacy; diff --git a/modules/sportspress-default-nationality.php b/modules/sportspress-default-nationality.php new file mode 100644 index 00000000..0fc63763 --- /dev/null +++ b/modules/sportspress-default-nationality.php @@ -0,0 +1,67 @@ +define_constants(); + + add_filter( 'sportspress_general_options', array( $this, 'add_general_options' ) ); + } + + /** + * Define constants. + */ + private function define_constants() { + if ( !defined( 'SP_DEFAULT_NATIONALITY_VERSION' ) ) + define( 'SP_DEFAULT_NATIONALITY_VERSION', '2.7' ); + + if ( !defined( 'SP_DEFAULT_NATIONALITY_URL' ) ) + define( 'SP_DEFAULT_NATIONALITY_URL', plugin_dir_url( __FILE__ ) ); + + if ( !defined( 'SP_DEFAULT_NATIONALITY_DIR' ) ) + define( 'SP_DEFAULT_NATIONALITY_DIR', plugin_dir_path( __FILE__ ) ); + } + + /** + * Add option to SportsPress General Settings. + */ + public function add_general_options( $settings ) { + $countries[''] = __( '— None —', 'sportspress' ); + $countries = array_merge ( $countries, SP()->countries->countries ); + $settings[]=array( + 'title' => __( 'Default Nationality', 'sportspress' ), + 'id' => 'sportspress_default_nationality', + 'default' => '', + 'type' => 'select', + 'options' => $countries, + ); + return $settings; + } +} + +endif; + +new SportsPress_Default_Nationality();