4
4
5
5
/**
6
6
* Class LanguageService
7
- *
7
+ *
8
8
* Handles language-related operations for the onboarding module.
9
9
*/
10
10
class LanguageService {
@@ -17,64 +17,64 @@ class LanguageService {
17
17
public static function get_all_languages () {
18
18
// Get available languages
19
19
$ languages = \get_available_languages ();
20
-
20
+
21
21
// Load translation-install.php if the function doesn't exist
22
22
if ( ! function_exists ( 'wp_get_available_translations ' ) ) {
23
23
require_once ABSPATH . 'wp-admin/includes/translation-install.php ' ;
24
24
}
25
-
25
+
26
26
// Get all available translations from WordPress API
27
27
$ translations = \wp_get_available_translations ();
28
-
28
+
29
29
// If translations API fails, provide basic fallback
30
30
if ( empty ( $ translations ) ) {
31
31
return self ::get_fallback_languages ();
32
32
}
33
-
33
+
34
34
// Format data for response - include English as default
35
35
$ formatted_languages = array (
36
36
array (
37
- 'code ' => 'en_US ' ,
38
- 'name ' => 'English (United States) ' ,
37
+ 'code ' => 'en_US ' ,
38
+ 'name ' => 'English (United States) ' ,
39
39
'native_name ' => 'English (United States) ' ,
40
- )
40
+ ),
41
41
);
42
-
42
+
43
43
// Add translated languages with proper format
44
44
foreach ( $ languages as $ locale ) {
45
45
if ( isset ( $ translations [ $ locale ] ) ) {
46
- $ translation = $ translations [ $ locale ];
46
+ $ translation = $ translations [ $ locale ];
47
47
$ formatted_languages [] = array (
48
- 'code ' => $ locale ,
49
- 'name ' => $ translation ['english_name ' ],
48
+ 'code ' => $ locale ,
49
+ 'name ' => $ translation ['english_name ' ],
50
50
'native_name ' => $ translation ['native_name ' ],
51
51
);
52
52
}
53
53
}
54
-
54
+
55
55
return $ formatted_languages ;
56
56
}
57
-
57
+
58
58
/**
59
59
* Get language data array formatted for the language selection component.
60
60
* Returns array of [language_name, language_code] pairs.
61
61
*
62
62
* @return array Array of language name and code pairs
63
63
*/
64
64
public static function get_languages_for_selection () {
65
- $ languages = self ::get_all_languages ();
65
+ $ languages = self ::get_all_languages ();
66
66
$ language_list = array ();
67
-
67
+
68
68
foreach ( $ languages as $ language ) {
69
69
$ language_list [] = array (
70
70
$ language ['name ' ],
71
- $ language ['code ' ]
71
+ $ language ['code ' ],
72
72
);
73
73
}
74
-
74
+
75
75
return $ language_list ;
76
76
}
77
-
77
+
78
78
/**
79
79
* Get fallback languages in case the translations API fails.
80
80
*
@@ -83,25 +83,25 @@ public static function get_languages_for_selection() {
83
83
private static function get_fallback_languages () {
84
84
return array (
85
85
array (
86
- 'code ' => 'en_US ' ,
87
- 'name ' => 'English (United States) ' ,
86
+ 'code ' => 'en_US ' ,
87
+ 'name ' => 'English (United States) ' ,
88
88
'native_name ' => 'English (United States) ' ,
89
89
),
90
90
array (
91
- 'code ' => 'es_ES ' ,
92
- 'name ' => 'Spanish (Spain) ' ,
91
+ 'code ' => 'es_ES ' ,
92
+ 'name ' => 'Spanish (Spain) ' ,
93
93
'native_name ' => 'Español ' ,
94
94
),
95
95
array (
96
- 'code ' => 'fr_FR ' ,
97
- 'name ' => 'French (France) ' ,
96
+ 'code ' => 'fr_FR ' ,
97
+ 'name ' => 'French (France) ' ,
98
98
'native_name ' => 'Français ' ,
99
99
),
100
100
array (
101
- 'code ' => 'de_DE ' ,
102
- 'name ' => 'German ' ,
101
+ 'code ' => 'de_DE ' ,
102
+ 'name ' => 'German ' ,
103
103
'native_name ' => 'Deutsch ' ,
104
104
),
105
105
);
106
106
}
107
- }
107
+ }
0 commit comments