Skip to content

Commit 234f4d7

Browse files
authored
Update GTranslator.php
1 parent 6dd9bba commit 234f4d7

File tree

1 file changed

+15
-12
lines changed

1 file changed

+15
-12
lines changed

src/GTranslator.php

Lines changed: 15 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -187,12 +187,15 @@ public function addLanguage($key, $value){
187187
}
188188

189189
/**
190-
* get default languages
191-
* @return string en,us,etc
192-
*/
193-
public function getLanguageKeys(){
194-
$jsKeys = array_keys($this->languages);
195-
return implode(',', $jsKeys);
190+
* Gets default languages sort accordingly and add english if not available
191+
* @return array
192+
*/
193+
public function getLanguages(){
194+
$english = ($this->languages["en"]??"English");
195+
unset($this->languages["en"]);
196+
$this->languages["en"] = $english;
197+
asort($this->languages);
198+
return $this->languages;
196199
}
197200

198201
/**
@@ -268,7 +271,7 @@ public function getBootstrapAttr(){
268271
*/
269272
private function buildLinks($li = false){
270273
$links = "";
271-
foreach($this->languages as $key => $value){
274+
foreach($this->getLanguages() as $key => $value){
272275
if($li){
273276
$links .= '<li class="drop-li">';
274277
}
@@ -287,7 +290,7 @@ private function buildLinks($li = false){
287290
private function selectOptions(){
288291
$this->setLinkClass("select-language-item");
289292
$links = '<select onchange="GTranslator.trigger(this)" class="notranslate php-language-select ' . $this->linkClass . '">';
290-
foreach($this->languages as $key => $value){
293+
foreach($this->getLanguages() as $key => $value){
291294
$links .= '<option value="'.$key.'" lang="'.$key.'" title="'.$value.'">' . $value . '</option>';
292295
}
293296
$links .= '</select>';
@@ -398,7 +401,7 @@ public function addScript(){
398401
siteLang: \"{$this->siteLang}\",
399402
googleElement: \"{$this->element}\",
400403
OPTION_ACTIVE: false,
401-
Languages: " . json_encode($this->languages) . ",
404+
Languages: " . json_encode($this->getLanguages()) . ",
402405
403406
forceLanguage: function(key){
404407
GTranslator.StatusSiteLang = (localStorage.getItem('siteLang')||'{$this->siteLang}');
@@ -442,8 +445,8 @@ public function addScript(){
442445
new google.translate.TranslateElement({
443446
pageLanguage: \"{$this->siteLang}\",
444447
includedLanguages: '\"' + langKeys.join(',') + '\"',
445-
layout: google.translate.TranslateElement.InlineLayout.VERTICAL,
446448
autoDisplay: false,
449+
layout: google.translate.TranslateElement.InlineLayout.VERTICAL,
447450
additionalOption: {
448451
disablePoweredBy: true
449452
}
@@ -452,8 +455,8 @@ public function addScript(){
452455
453456
GoogleScript: function(){
454457
var s1 = document.createElement('script');
455-
//s1.async = true;
456-
//s1.defer = true;
458+
s1.async = true;
459+
s1.defer = true;
457460
s1.type = 'text/javascript';
458461
s1.src='https://translate.google.com/translate_a/element.js?cb=GTranslator.GoogleInit';
459462
var s0 = document.getElementById('php-g-translator-plugin');

0 commit comments

Comments
 (0)