1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
|
<?php
use Illuminate\Database\Capsule\Manager as DB; use Carbon\Carbon as Carbon;
class LanguagePending extends BaseModel{ protected $table = "language_pending";
public static $language_map;
public static function initLanguageMap(){ // vdump(__FUNCTION__); if(!self::$language_map){ $sysLangs = SysLang::where('langstatus', 1)->get(); foreach($sysLangs as $sysLang){ self::$language_map[$sysLang['langcode']] = $sysLang['iso_639_1']; } vdump(self::$language_map); } }
public function translate($api, $target_language=false){ self::initLanguageMap(); foreach(self::$language_map as $langcode => $lang_iso){ switch ($langcode) { case 'en': break;
default: vdump(__FUNCTION__, $this->name_en, $langcode, $this["name_{$langcode}"]); // vdump("Translate {$target_language} {$langcode}"); if($this->name_en && $this["name_{$langcode}"]==''){ $result = $api->translate($this->name_en, $lang_iso); $this["name_{$langcode}"] = $result; vdump($result); } break; } } return $this; }
public static function translateAll(){ $googleTranslateApi = new GoogleTranslateApi; foreach(self::whereDeleted(0)->get() as $languagePending){ // $languagePending = self::whereDeleted(0)->first(); $languagePending->translate($googleTranslateApi)->save(); } } }
|