diff --git a/assets/images/flags/glp.png b/assets/images/flags/glp.png
new file mode 100644
index 00000000..576c038f
Binary files /dev/null and b/assets/images/flags/glp.png differ
diff --git a/assets/images/flags/grl.png b/assets/images/flags/grl.png
new file mode 100644
index 00000000..1adea9eb
Binary files /dev/null and b/assets/images/flags/grl.png differ
diff --git a/assets/images/flags/guf.png b/assets/images/flags/guf.png
new file mode 100644
index 00000000..576c038f
Binary files /dev/null and b/assets/images/flags/guf.png differ
diff --git a/assets/images/flags/mtq.png b/assets/images/flags/mtq.png
new file mode 100644
index 00000000..deefcae6
Binary files /dev/null and b/assets/images/flags/mtq.png differ
diff --git a/assets/images/flags/pyf.png b/assets/images/flags/pyf.png
new file mode 100644
index 00000000..96663c64
Binary files /dev/null and b/assets/images/flags/pyf.png differ
diff --git a/assets/images/flags/reu.png b/assets/images/flags/reu.png
new file mode 100644
index 00000000..576c038f
Binary files /dev/null and b/assets/images/flags/reu.png differ
diff --git a/assets/images/flags/sxm.png b/assets/images/flags/sxm.png
new file mode 100644
index 00000000..f7383931
Binary files /dev/null and b/assets/images/flags/sxm.png differ
diff --git a/includes/class-sp-countries.php b/includes/class-sp-countries.php
index c6fee338..f617572e 100644
--- a/includes/class-sp-countries.php
+++ b/includes/class-sp-countries.php
@@ -68,6 +68,7 @@ class SP_Countries {
'nam',
'nga',
'nig',
+ 'reu',
'rsa',
'rwa',
'sdn',
@@ -207,6 +208,8 @@ class SP_Countries {
'cuw',
'dma',
'dom',
+ 'glp',
+ 'grl',
'grn',
'gua',
'hai',
@@ -214,12 +217,14 @@ class SP_Countries {
'jam',
'lca',
'mex',
+ 'mtq',
'msr',
'nca',
'pan',
'pur',
'skn',
'slv',
+ 'sxm',
'tca',
'usa',
'vgb',
@@ -242,6 +247,7 @@ class SP_Countries {
'nzl',
'plw',
'png',
+ 'pyf',
'sam',
'sol',
'tah',
@@ -257,6 +263,7 @@ class SP_Countries {
'chi',
'col',
'ecu',
+ 'guf',
'guy',
'par',
'per',
@@ -338,6 +345,8 @@ class SP_Countries {
'fin' => __( "Finland", 'sportspress' ),
'fra' => __( "France", 'sportspress' ),
'fro' => __( "Faroe Islands", 'sportspress' ),
+ 'guf' => __( "French Guiana", 'sportspress' ),
+ 'pyf' => __( "French Polynesia", 'sportspress' ),
'fsm' => __( "Micronesia", 'sportspress' ),
'gab' => __( "Gabon", 'sportspress' ),
'gam' => __( "Gambia", 'sportspress' ),
@@ -346,8 +355,10 @@ class SP_Countries {
'ger' => __( "Germany", 'sportspress' ),
'gha' => __( "Ghana", 'sportspress' ),
'gib' => __( "Gibraltar", 'sportspress' ),
+ 'glp' => __( "Guadeloupe", 'sportspress' ),
'gnb' => __( "Guinea-Bissau", 'sportspress' ),
'gre' => __( "Greece", 'sportspress' ),
+ 'grl' => __( "Greenland", 'sportspress' ),
'grn' => __( "Grenada", 'sportspress' ),
'gua' => __( "Guatemala", 'sportspress' ),
'gui' => __( "Guinea", 'sportspress' ),
@@ -373,6 +384,7 @@ class SP_Countries {
'kos' => __( "Kosovo", 'sportspress' ),
'kgz' => __( "Kyrgyzstan", 'sportspress' ),
'kir' => __( "Kiribati", 'sportspress' ),
+ 'mtq' => __( "Martinique", 'sportspress' ),
'kor' => __( "South Korea", 'sportspress' ),
'ksa' => __( "Saudi Arabia", 'sportspress' ),
'kuw' => __( "Kuwait", 'sportspress' ),
@@ -433,6 +445,7 @@ class SP_Countries {
'qat' => __( "Qatar", 'sportspress' ),
'rou' => __( "Romania", 'sportspress' ),
'rsa' => __( "South Africa", 'sportspress' ),
+ 'reu' => __( "Reunion", 'sportspress' ),
'rus' => __( "Russia", 'sportspress' ),
'rwa' => __( "Rwanda", 'sportspress' ),
'sam' => __( "Samoa", 'sportspress' ),
@@ -457,6 +470,7 @@ class SP_Countries {
'svn' => __( "Slovenia", 'sportspress' ),
'swe' => __( "Sweden", 'sportspress' ),
'swz' => __( "Eswatini", 'sportspress' ),
+ 'sxm' => __( "Sint Maarten", 'sportspress' ),
'syr' => __( "Syria", 'sportspress' ),
'tah' => __( "Tahiti", 'sportspress' ),
'tan' => __( "Tanzania", 'sportspress' ),
diff --git a/includes/sp-core-functions.php b/includes/sp-core-functions.php
index cad4706c..2b91b7ca 100644
--- a/includes/sp-core-functions.php
+++ b/includes/sp-core-functions.php
@@ -1715,3 +1715,22 @@ function sp_has_shortcodes( $content, $tags ) {
}
return false;
}
+
+/**
+ * Check if a custom flag was uploaded from the user
+ * @return bool
+ */
+function sp_flags( $nationality ) {
+ $nationality = strtolower( $nationality );
+ $flag = '';
+ global $wpdb;
+ $flag_post_id = intval( $wpdb->get_var( "SELECT post_id FROM {$wpdb->postmeta} WHERE meta_value LIKE '%/$nationality'" ) );
+ if ( $flag_post_id ) {
+ $flag_src = wp_get_attachment_image_url( $flag_post_id, array( 23,15), false );
+ $flag = '
';
+ }else{
+ $flag = '
';
+ }
+
+ return $flag;
+}
diff --git a/templates/official-details.php b/templates/official-details.php
index 48be84c1..3837ce33 100644
--- a/templates/official-details.php
+++ b/templates/official-details.php
@@ -51,7 +51,7 @@ if ( $show_nationality ):
$values = array();
foreach ( $nationalities as $nationality ):
$country_name = sp_array_value( $countries, $nationality, null );
- $values[] = $country_name ? ( $show_nationality_flags ? '
' : '' ) . $country_name : '—';
+ $values[] = $country_name ? ( $show_nationality_flags ? sp_flags( $nationality ) : '' ) . $country_name : '—';
endforeach;
$common[ __( 'Nationality', 'sportspress' ) ] = implode( '
', $values );
endif;
diff --git a/templates/player-details.php b/templates/player-details.php
index 3a2c742d..7dbf55de 100644
--- a/templates/player-details.php
+++ b/templates/player-details.php
@@ -51,7 +51,7 @@ if ( $show_nationality ):
$values = array();
foreach ( $nationalities as $nationality ):
$country_name = sp_array_value( $countries, $nationality, null );
- $values[] = $country_name ? ( $show_nationality_flags ? '
' : '' ) . $country_name : '—';
+ $values[] = $country_name ? ( $show_nationality_flags ? sp_flags( $nationality ) : '' ) . $country_name : '—';
endforeach;
$common[ __( 'Nationality', 'sportspress' ) ] = implode( '
', $values );
endif;
diff --git a/templates/player-list.php b/templates/player-list.php
index bab8abd2..114e201c 100644
--- a/templates/player-list.php
+++ b/templates/player-list.php
@@ -179,7 +179,7 @@ foreach ( $groups as $group ):
$nationalities = $player->nationalities();
if ( ! empty( $nationalities ) ):
foreach ( $nationalities as $nationality ):
- $name = '
' . $name;
+ $name = '' . sp_flags( $nationality ) . '' . $name;
endforeach;
$name_class .= ' has-photo';
endif;
diff --git a/templates/staff-details.php b/templates/staff-details.php
index ce04eb61..9fca30a9 100644
--- a/templates/staff-details.php
+++ b/templates/staff-details.php
@@ -41,7 +41,7 @@ if ( $show_nationality && $nationalities && is_array( $nationalities ) ):
$nationality = sp_array_value( $legacy, $nationality, null );
endif;
$country_name = sp_array_value( $countries, $nationality, null );
- $values[] = $country_name ? ( $show_nationality_flags ? '
' : '' ) . $country_name : '—';
+ $values[] = $country_name ? ( $show_nationality_flags ? sp_flags( $nationality ) : '' ) . $country_name : '—';
endforeach;
$data[ __( 'Nationality', 'sportspress' ) ] = implode( '
', $values );
endif;