From 575fdad12c65e05a2e363862ac19f8ef2c76e9b6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=9Cmit=20Tun=C3=A7?= Date: Wed, 20 May 2026 00:06:01 +0300 Subject: [PATCH] refactor: remove diagnostic and translation scripts and implement automatic cache clearing for settings in the model. --- .../Resources/Settings/Pages/EditSetting.php | 7 +- .../Settings/Schemas/SettingForm.php | 2 +- app/Models/Setting.php | 11 + extract_unique_turkish_site.php | 23 - find_missing_static.php | 36 - find_real_untranslated_dynamic.php | 49 - find_site_translations_needing_en.php | 45 - list_turkish_dynamic.php | 48 - run_translations.php | 180 -- test_google_translate.php | 32 - translate_diagnostic.php | 95 - unique_turkish_site.json | 714 -------- untranslated_dynamic.json | 562 ------ untranslated_dynamic_filtered.json | 44 - untranslated_site.json | 1616 ----------------- 15 files changed, 18 insertions(+), 3446 deletions(-) delete mode 100644 extract_unique_turkish_site.php delete mode 100644 find_missing_static.php delete mode 100644 find_real_untranslated_dynamic.php delete mode 100644 find_site_translations_needing_en.php delete mode 100644 list_turkish_dynamic.php delete mode 100644 run_translations.php delete mode 100644 test_google_translate.php delete mode 100644 translate_diagnostic.php delete mode 100644 unique_turkish_site.json delete mode 100644 untranslated_dynamic.json delete mode 100644 untranslated_dynamic_filtered.json delete mode 100644 untranslated_site.json diff --git a/app/Filament/Admin/Resources/Settings/Pages/EditSetting.php b/app/Filament/Admin/Resources/Settings/Pages/EditSetting.php index 0883363..c7c03fa 100644 --- a/app/Filament/Admin/Resources/Settings/Pages/EditSetting.php +++ b/app/Filament/Admin/Resources/Settings/Pages/EditSetting.php @@ -24,7 +24,12 @@ class EditSetting extends EditRecord if (isset($data['type'])) { $type = $data['type']; - $virtualField = 'value_' . $type; + + // Map the setting type to the form field name + $virtualField = match ($type) { + 'string', 'text', 'json', 'integer', 'float' => 'value_text', + default => 'value_' . $type, + }; try { // Model accessor'ını kullanarak değeri al diff --git a/app/Filament/Admin/Resources/Settings/Schemas/SettingForm.php b/app/Filament/Admin/Resources/Settings/Schemas/SettingForm.php index 017d37e..2c78a86 100644 --- a/app/Filament/Admin/Resources/Settings/Schemas/SettingForm.php +++ b/app/Filament/Admin/Resources/Settings/Schemas/SettingForm.php @@ -115,7 +115,7 @@ class SettingForm ->label(__('settings.value')) ->helperText(__('settings.value_helper')) ->required() - ->visible(fn (Get $get) => in_array($get('type'), ['string', 'text', 'json']) && !in_array($get('key'), ['default_header', 'default_footer'])) + ->visible(fn (Get $get) => in_array($get('type'), ['string', 'text', 'json', 'integer', 'float']) && !in_array($get('key'), ['default_header', 'default_footer'])) ->rows(fn (Get $get) => $get('type') === 'text' ? 5 : 3) ->columnSpanFull(), diff --git a/app/Models/Setting.php b/app/Models/Setting.php index 1b38656..60b36cf 100644 --- a/app/Models/Setting.php +++ b/app/Models/Setting.php @@ -10,6 +10,17 @@ class Setting extends Model { use HasFactory, SoftDeletes; + protected static function booted() + { + static::saved(function ($setting) { + \Illuminate\Support\Facades\Cache::forget("app_setting_{$setting->key}"); + }); + + static::deleted(function ($setting) { + \Illuminate\Support\Facades\Cache::forget("app_setting_{$setting->key}"); + }); + } + protected $fillable = [ 'key', 'value', diff --git a/extract_unique_turkish_site.php b/extract_unique_turkish_site.php deleted file mode 100644 index 7185ad3..0000000 --- a/extract_unique_turkish_site.php +++ /dev/null @@ -1,23 +0,0 @@ - $item['id'], - 'tr' => $trVal - ]; - } -} - -file_put_contents(__DIR__.'/unique_turkish_site.json', json_encode($turkishOnly, JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE)); -echo "Found " . count($turkishOnly) . " Turkish site translations that need translation.\n"; diff --git a/find_missing_static.php b/find_missing_static.php deleted file mode 100644 index 3dfb379..0000000 --- a/find_missing_static.php +++ /dev/null @@ -1,36 +0,0 @@ - $val) { - if (!isset($enData[$key])) { - $missingKeys[] = $key; - } - } - - if (!empty($missingKeys)) { - echo "File: $file has missing keys in EN: " . implode(', ', $missingKeys) . "\n"; - } -} -echo "Static translation key check completed.\n"; diff --git a/find_real_untranslated_dynamic.php b/find_real_untranslated_dynamic.php deleted file mode 100644 index 7da674a..0000000 --- a/find_real_untranslated_dynamic.php +++ /dev/null @@ -1,49 +0,0 @@ -make(Illuminate\Contracts\Console\Kernel::class)->bootstrap(); - -use App\Models\Translation; - -$trTranslations = Translation::where('language_code', 'tr')->get(); -$untranslated = []; - -function hasTurkish($text) { - if (empty($text) || is_numeric($text)) return false; - return preg_match('/[ğüşıöçĞÜŞİÖÇ]/u', $text) || preg_match('/(ve|bir|bu|ne|de|da|icin|ile|o|en|ki|ile|ise|mi|mu|sonra|olarak|gibi|daha|hakkinda)/i', $text); -} - -foreach ($trTranslations as $t) { - $trVal = trim($t->field_value); - if ($trVal === '' || $trVal === '

' || $trVal === 'null') { - continue; - } - - $en = Translation::where('translatable_type', $t->translatable_type) - ->where('translatable_id', $t->translatable_id) - ->where('field_name', $t->field_name) - ->where('language_code', 'en') - ->first(); - - $enVal = $en ? trim($en->field_value) : ''; - - $needsTranslation = false; - if (empty($enVal) || $enVal === '

') { - $needsTranslation = true; - } else if ($enVal === $trVal && hasTurkish($trVal)) { - $needsTranslation = true; - } - - if ($needsTranslation) { - $untranslated[] = [ - 'type' => $t->translatable_type, - 'id' => $t->translatable_id, - 'field' => $t->field_name, - 'tr' => $trVal, - 'en' => $enVal - ]; - } -} - -file_put_contents(__DIR__.'/untranslated_dynamic_filtered.json', json_encode($untranslated, JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE)); -echo "Found " . count($untranslated) . " real untranslated dynamic model translations.\n"; diff --git a/find_site_translations_needing_en.php b/find_site_translations_needing_en.php deleted file mode 100644 index dea17c9..0000000 --- a/find_site_translations_needing_en.php +++ /dev/null @@ -1,45 +0,0 @@ -make(Illuminate\Contracts\Console\Kernel::class)->bootstrap(); - -use App\Models\SiteTranslation; - -$siteTranslations = SiteTranslation::all(); -$needingTranslation = []; - -function hasTurkish($text) { - if (empty($text) || is_numeric($text)) return false; - return preg_match('/[ğüşıöçĞÜŞİÖÇ]/u', $text) || preg_match('/(ve|bir|bu|ne|de|da|icin|ile|o|en|ki|ile|ise|mi|mu|sonra|olarak|gibi|daha|hakkinda|giris|kayit|sunlar|bizim|hizmet|iletisim|hakkimizda)/i', $text); -} - -foreach ($siteTranslations as $st) { - $translations = $st->translations ?? []; - $enVal = isset($translations['en']) ? trim($translations['en']) : ''; - $trVal = isset($translations['tr']) ? trim($translations['tr']) : ''; - $keyVal = trim($st->key); - - // We check if either the key or the TR translation has Turkish and the EN translation is missing - $sourceVal = !empty($trVal) ? $trVal : $keyVal; - - $needsTranslation = false; - if (empty($enVal)) { - if (hasTurkish($sourceVal)) { - $needsTranslation = true; - } - } else if ($enVal === $sourceVal && hasTurkish($sourceVal)) { - $needsTranslation = true; - } - - if ($needsTranslation) { - $needingTranslation[] = [ - 'id' => $st->id, - 'key' => $st->key, - 'tr' => $sourceVal, - 'en' => $enVal - ]; - } -} - -file_put_contents(__DIR__.'/untranslated_site.json', json_encode($needingTranslation, JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE)); -echo "Found " . count($needingTranslation) . " untranslated site translations. Written to untranslated_site.json.\n"; diff --git a/list_turkish_dynamic.php b/list_turkish_dynamic.php deleted file mode 100644 index c0f1943..0000000 --- a/list_turkish_dynamic.php +++ /dev/null @@ -1,48 +0,0 @@ -make(Illuminate\Contracts\Console\Kernel::class)->bootstrap(); - -use App\Models\Translation; - -$trTranslations = Translation::where('language_code', 'tr')->get(); - -$untranslated = []; - -function hasTurkish($text) { - if (empty($text) || is_numeric($text)) return false; - // Check if contains Turkish letters or is generally Turkish words - return preg_match('/[ğüşıöçĞÜŞİÖÇ]/u', $text) || preg_match('/(ve|bir|bu|ne|de|da|icin|ile|o|en|ki|ile|ise|mi|mu|sonra|olarak|gibi|daha|hakkinda)/i', $text); -} - -foreach ($trTranslations as $t) { - $en = Translation::where('translatable_type', $t->translatable_type) - ->where('translatable_id', $t->translatable_id) - ->where('field_name', $t->field_name) - ->where('language_code', 'en') - ->first(); - - $enVal = $en ? $en->field_value : null; - $trVal = $t->field_value; - - $needsTranslation = false; - - if (empty($enVal)) { - $needsTranslation = true; - } else if ($enVal === $trVal && hasTurkish($trVal)) { - $needsTranslation = true; - } - - if ($needsTranslation) { - $untranslated[] = [ - 'type' => $t->translatable_type, - 'id' => $t->translatable_id, - 'field' => $t->field_name, - 'tr' => $trVal, - 'en' => $enVal - ]; - } -} - -file_put_contents(__DIR__.'/untranslated_dynamic.json', json_encode($untranslated, JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE)); -echo "Found " . count($untranslated) . " untranslated dynamic model translations. Written to untranslated_dynamic.json.\n"; diff --git a/run_translations.php b/run_translations.php deleted file mode 100644 index 5204dde..0000000 --- a/run_translations.php +++ /dev/null @@ -1,180 +0,0 @@ -make(Illuminate\Contracts\Console\Kernel::class)->bootstrap(); - -use App\Models\SiteTranslation; -use App\Models\Translation; -use App\Models\Language; - -echo "=== STARTING TRANSLATION PROCESS ===\n"; - -// Helper translation function using Google Translate single API -function translateToEnglish($text) { - if (empty($text) || is_numeric($text)) { - return $text; - } - - // If it's a HTML tags only or empty paragraph, return as is - if (trim($text) === '

' || trim($text) === '') { - return $text; - } - - $url = "https://translate.googleapis.com/translate_a/single?client=gtx&sl=tr&tl=en&dt=t&q=" . urlencode($text); - - $ch = curl_init(); - curl_setopt($ch, CURLOPT_URL, $url); - curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); - curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36"); - curl_setopt($ch, CURLOPT_TIMEOUT, 15); - $response = curl_exec($ch); - curl_close($ch); - - if (!$response) { - return false; - } - - $data = json_decode($response, true); - if (!isset($data[0])) { - return false; - } - - $translated = ""; - foreach ($data[0] as $sentence) { - $translated .= $sentence[0]; - } - - return $translated; -} - -// Check for Turkish specific characters or common Turkish words -function isTurkishText($text) { - if (empty($text) || is_numeric($text)) return false; - return preg_match('/[ğüşıöçĞÜŞİÖÇ]/u', $text) || preg_match('/\b(ve|bir|bu|ne|de|da|icin|için|ile|en|ki|ise|mi|mu|sonra|olarak|gibi|daha|hakkinda|hakkımızda|giris|giriş|kayit|kayıt|bizim|hizmet|iletisim|iletişim|neden|neler|yapıyoruz|biz|seviyoruz|ekibimiz|abone|adınız|soyadınız|telefon|adres|teknoloji)\b/iu', $text); -} - -// ---------------------------------------------------- -// PHASE 1: Translate Dynamic Model Translations -// ---------------------------------------------------- -echo "\n--- Phase 1: Translating Dynamic Model Translations ---\n"; -$trTranslations = Translation::where('language_code', 'tr')->get(); -$translatedModelsCount = 0; - -foreach ($trTranslations as $t) { - $trVal = trim($t->field_value); - if ($trVal === '' || $trVal === '

' || $trVal === 'null') { - continue; - } - - $enTranslation = Translation::where('translatable_type', $t->translatable_type) - ->where('translatable_id', $t->translatable_id) - ->where('field_name', $t->field_name) - ->where('language_code', 'en') - ->first(); - - $enVal = $enTranslation ? trim($enTranslation->field_value) : ''; - - $needsTranslation = false; - if (empty($enVal) || $enVal === '

') { - $needsTranslation = true; - } else if ($enVal === $trVal && isTurkishText($trVal)) { - $needsTranslation = true; - } - - // Specific exclusions or manual translations - if ($needsTranslation) { - echo "Translating [{$t->translatable_type} ID: {$t->translatable_id}] Field '{$t->field_name}'...\n"; - - // Manual override for some specific fields to ensure maximum quality - if ($t->translatable_type === 'App\\Models\\Page' && $t->translatable_id == 4 && $t->field_name === 'content') { - $translatedVal = '

Trunçgil Teknoloji


Our Mission
We work with all our might to create human-oriented, rational, simple, and aesthetic applications that make life easier.

Our Vision
The world\'s greatest country Turkey, and Turkey\'s greatest company Trunçgil!

Our Values

'; - } else if ($t->translatable_type === 'App\\Models\\Page' && $t->translatable_id == 19 && $t->field_name === 'content') { - // Translate the Turkish helper text inside the otherwise English policy - $translatedVal = str_replace('(Lütfen kendi e-postanızı girin)', '(Please enter your own email)', $t->field_value); - } else { - $translatedVal = translateToEnglish($t->field_value); - usleep(150000); // 150ms delay - } - - if ($translatedVal !== false) { - Translation::updateOrCreate( - [ - 'translatable_type' => $t->translatable_type, - 'translatable_id' => $t->translatable_id, - 'field_name' => $t->field_name, - 'language_code' => 'en', - ], - [ - 'field_value' => $translatedVal, - 'status' => 'published', - 'version' => $t->version, - 'created_by' => $t->created_by, - 'updated_by' => $t->updated_by, - 'approved_by' => $t->approved_by, - 'approved_at' => $t->approved_at, - 'published_at' => $t->published_at, - ] - ); - echo "Successfully translated to: " . substr(strip_tags($translatedVal), 0, 50) . "...\n"; - $translatedModelsCount++; - } else { - echo "Failed to translate [{$t->translatable_type} ID: {$t->translatable_id}] Field '{$t->field_name}' due to API error.\n"; - } - } -} -echo "Phase 1 Completed. Total models translated/updated: {$translatedModelsCount}\n"; - -// ---------------------------------------------------- -// PHASE 2: Translate Site Translations Table -// ---------------------------------------------------- -echo "\n--- Phase 2: Translating Site Translations ---\n"; -$siteTranslations = SiteTranslation::all(); -$translatedSiteCount = 0; -$apiCallsCount = 0; - -foreach ($siteTranslations as $st) { - $translations = $st->translations ?? []; - $enVal = isset($translations['en']) ? trim($translations['en']) : ''; - $trVal = isset($translations['tr']) ? trim($translations['tr']) : ''; - $keyVal = trim($st->key); - - $sourceVal = !empty($trVal) ? $trVal : $keyVal; - - $needsTranslation = false; - if (empty($enVal)) { - $needsTranslation = true; - } else if ($enVal === $sourceVal && isTurkishText($sourceVal)) { - $needsTranslation = true; - } - - if ($needsTranslation) { - // Check if the source text is already in English - if (!isTurkishText($sourceVal)) { - // It's already in English! Populate the 'en' translation directly without calling the API - $translations['en'] = $sourceVal; - $st->translations = $translations; - $st->save(); - $translatedSiteCount++; - echo "Skipped API for ID {$st->id}: Source is already in English: '" . substr($sourceVal, 0, 30) . "...'\n"; - } else { - // It's in Turkish! Query Google Translate - echo "Translating Site Translation ID {$st->id}...\n"; - $translatedVal = translateToEnglish($sourceVal); - $apiCallsCount++; - usleep(150000); // 150ms delay - - if ($translatedVal !== false) { - // Remove trailing spaces or unwanted corrections - $translations['en'] = trim($translatedVal); - $st->translations = $translations; - $st->save(); - $translatedSiteCount++; - echo "Translated ID {$st->id} from [{$sourceVal}] to [{$translatedVal}]\n"; - } else { - echo "Failed to translate Site Translation ID {$st->id} due to API error.\n"; - } - } - } -} -echo "Phase 2 Completed. Total site translations processed: {$translatedSiteCount} (API queries: {$apiCallsCount})\n"; -echo "\n=== ALL TRANSLATIONS COMPLETED SUCCESSFULLY ===\n"; diff --git a/test_google_translate.php b/test_google_translate.php deleted file mode 100644 index d535934..0000000 --- a/test_google_translate.php +++ /dev/null @@ -1,32 +0,0 @@ -make(Illuminate\Contracts\Console\Kernel::class)->bootstrap(); - -use App\Models\SiteTranslation; -use App\Models\Translation; -use App\Models\Language; - -echo "=== Language Table ===\n"; -foreach (Language::all() as $lang) { - echo "- {$lang->code}: {$lang->name} (Active: {$lang->is_active}, Default: {$lang->is_default})\n"; -} - -echo "\n=== Site Translations Table ===\n"; -$siteTranslations = SiteTranslation::all(); -$totalSite = $siteTranslations->count(); -$missingEnSite = 0; -$missingEnKeys = []; - -foreach ($siteTranslations as $st) { - $trans = $st->translations ?? []; - if (!isset($trans['en']) || empty($trans['en'])) { - $missingEnSite++; - if (count($missingEnKeys) < 10) { - $missingEnKeys[] = [ - 'id' => $st->id, - 'key' => $st->key, - 'translations' => $trans - ]; - } - } -} -echo "Total Site Translations: {$totalSite}\n"; -echo "Missing 'en' translation in Site Translations: {$missingEnSite}\n"; -if (!empty($missingEnKeys)) { - echo "Sample missing 'en' Site Translations:\n"; - print_r($missingEnKeys); -} - -echo "\n=== Translations Table ===\n"; -$translations = Translation::all(); -$totalTrans = $translations->count(); -echo "Total translations: {$totalTrans}\n"; - -$trTranslations = Translation::where('language_code', 'tr')->get(); -$enTranslations = Translation::where('language_code', 'en')->get(); - -echo "TR Translations count: " . $trTranslations->count() . "\n"; -echo "EN Translations count: " . $enTranslations->count() . "\n"; - -// Find translatable models that have TR but missing EN -$trByModel = []; -foreach ($trTranslations as $t) { - $key = "{$t->translatable_type}:{$t->translatable_id}:{$t->field_name}"; - $trByModel[$key] = $t; -} - -$enByModel = []; -foreach ($enTranslations as $t) { - $key = "{$t->translatable_type}:{$t->translatable_id}:{$t->field_name}"; - $enByModel[$key] = $t; -} - -$missingEnTranslations = []; -foreach ($trByModel as $key => $t) { - if (!isset($enByModel[$key])) { - $missingEnTranslations[] = [ - 'key' => $key, - 'tr_value' => $t->field_value - ]; - } else { - // Also check if EN value is identical to TR value and might need translation - $enVal = $enByModel[$key]->field_value; - if ($enVal === $t->field_value && preg_match('/[a-zA-ZğüşıöçĞÜŞİÖÇ]/', $t->field_value)) { - // Check if it's identical - $identicalEnTranslations[] = [ - 'key' => $key, - 'value' => $t->field_value - ]; - } - } -} - -echo "Missing 'en' translations: " . count($missingEnTranslations) . "\n"; -if (!empty($missingEnTranslations)) { - echo "Sample missing EN translations:\n"; - print_r(array_slice($missingEnTranslations, 0, 10)); -} - -echo "Identical TR and EN translations (possible untranslated): " . count($identicalEnTranslations ?? []) . "\n"; -if (!empty($identicalEnTranslations)) { - echo "Sample identical translations:\n"; - print_r(array_slice($identicalEnTranslations, 0, 10)); -} diff --git a/unique_turkish_site.json b/unique_turkish_site.json deleted file mode 100644 index 71781b7..0000000 --- a/unique_turkish_site.json +++ /dev/null @@ -1,714 +0,0 @@ -[ - { - "id": 60, - "tr": "Nulla vitae elit libero, a pharetra augue. Donec id elit non mi porta gravida eget metus cras justo." - }, - { - "id": 105, - "tr": "İnsan odaklı
akılcı ve sade<\/span>" - }, - { - "id": 106, - "tr": "Hayatı kolaylaştırabilecek uygulamaları insan odaklı, akılcı, sade ve estetik
bir biçimde gerçekleştirmek için var gücümüzle çalışıyoruz." - }, - { - "id": 107, - "tr": "Ürün ve Hizmetlerimiz" - }, - { - "id": 108, - "tr": "Neler Yapıyoruz?" - }, - { - "id": 109, - "tr": "Şirket ihtiyaçlarınızı en iyi şekilde karşılamak için çeşitli hizmetler sunuyoruz." - }, - { - "id": 110, - "tr": "Web Uygulamaları" - }, - { - "id": 113, - "tr": "Web uygulamaları geliştirmek için gerekli olan tüm hizmetleri sunuyoruz." - }, - { - "id": 115, - "tr": "Sosyal Etkileşim" - }, - { - "id": 116, - "tr": "Sosyal etkileşime dayalı ." - }, - { - "id": 117, - "tr": "Uygulama Geliştirme" - }, - { - "id": 118, - "tr": "Android, iOS, MacOS, Windows uygulamaları geliştiriyoruz." - }, - { - "id": 119, - "tr": "Bizi Neden Tercih Etmelisiniz" - }, - { - "id": 120, - "tr": "Siz değerli müşterilerimizin bizi tercih etmesinin yalnızca birkaç nedeni." - }, - { - "id": 121, - "tr": "Yaratıcılık" - }, - { - "id": 122, - "tr": "Seçkin içeriklerle daima fark yaratan fikirler." - }, - { - "id": 123, - "tr": "Yenilikçi Düşünce" - }, - { - "id": 124, - "tr": "Geleceği hedefleyen modern ve özgün yaklaşımlar." - }, - { - "id": 125, - "tr": "Hızlı Çözümler" - }, - { - "id": 126, - "tr": "İhtiyaç anında anında sunulan pratik cevaplar." - }, - { - "id": 127, - "tr": "Üst Düzey Destek" - }, - { - "id": 128, - "tr": "Her adımda yanınızda olan kusursuz bir hizmet." - }, - { - "id": 129, - "tr": "Çözümlerimiz" - }, - { - "id": 130, - "tr": "Siz sadece işinize odaklanın, biz dijital dönüşüm süreçlerinizi yönetelim.\nTeknoloji ve yazılım odaklı bir güç olarak, işletmenizin dijital çağa tam uyum sağlaması için uçtan uca inovatif çözümler geliştiriyoruz. İhtiyaçlarınıza özel yazılım mimarileri ve modern altyapılar kurarak, manuel süreçlerinizi tam otomatik ve verimli sistemlere dönüştürüyoruz. Sektörel tecrübemizle markanızın teknolojik dönüşümünü gerçekleştirirken, sürdürülebilir başarı ve ölçeklenebilir büyüme için en ileri yazılım teknolojilerini işinizin merkezine yerleştiriyoruz." - }, - { - "id": 131, - "tr": "Müşteri Memnuniyeti" - }, - { - "id": 132, - "tr": "Verimlilik artışı" - }, - { - "id": 133, - "tr": "Mutlu Müşteriler" - }, - { - "id": 134, - "tr": "Sadece bizim sözümüze güvenmeyin, müşterilerimizin hakkımızda söylediklerini görün." - }, - { - "id": 135, - "tr": "Dijital dönüşüm yolculuğumuzda yanımızda oldukları için mutluyuz. Profesyonel yaklaşımları ve çözüm odaklı çalışmaları ile projelerimize değer kattılar." - }, - { - "id": 136, - "tr": "Eğitim teknolojileri alanındaki vizyoner bakış açıları ve teknik altyapı konusundaki uzmanlıkları sayesinde hedeflediğimiz kitleye çok daha etkili bir şekilde ulaştık." - }, - { - "id": 137, - "tr": "Akademik yayıncılık süreçlerimizi dijitalleştirirken sundukları yenilikçi çözümler ve hızlı destekleri için teşekkür ederiz. Güvenilir bir iş ortağı." - }, - { - "id": 138, - "tr": "Hadi Konuşalım" - }, - { - "id": 139, - "tr": "Birlikte harika bir şey yapalım. 5000’den fazla müşteri tarafından güveniliyor ve tercih ediliyoruz." - }, - { - "id": 140, - "tr": "Hedef kitlenize ulaşmak ve işletmenize güç katmak için sizinle birlikte çalışmaya hazırız. Dijital dönüşüm yolculuğunuzda güvenilir bir iş ortağı arıyorsanız, doğru adrestesiniz." - }, - { - "id": 141, - "tr": "Bize Katılın" - }, - { - "id": 142, - "tr": "Birlikte harika bir şey yapalım. 600’den fazla müşteri tarafından güveniliyor ve tercih ediliyoruz." - }, - { - "id": 146, - "tr": "Adres bilgisi yakında" - }, - { - "id": 147, - "tr": "İstanbul, Türkiye" - }, - { - "id": 148, - "tr": "ÇAMTEPE MAH. MAHMUT TEVFİK ATAY BUL. \nGAZİANTEP TEKNOPARK NO: 4A \nİÇ KAPI NO: 1 ŞAHİNBEY \/ GAZİANTEP" - }, - { - "id": 149, - "tr": "Telefon" - }, - { - "id": 155, - "tr": "İşletmenizin ihtiyaçlarını biz karşılarken siz arkanıza yaslanın ve rahatlayın." - }, - { - "id": 156, - "tr": "Web Tasarım" - }, - { - "id": 157, - "tr": "İşinizi bir üst seviyeye taşıyacak özgün ve modern web tasarımları üretiyoruz." - }, - { - "id": 158, - "tr": "Detaylı Bilgi" - }, - { - "id": 159, - "tr": "Mobil Tasarım" - }, - { - "id": 160, - "tr": "Mobil cihazlara uygun yenilikçi ve kullanıcı dostu tasarımlar geliştiriyoruz." - }, - { - "id": 161, - "tr": "Ne Yapıyoruz?" - }, - { - "id": 162, - "tr": "Sunduğumuz tüm hizmetler, iş gereksinimlerinizi en iyi şekilde karşılamak için özel olarak tasarlandı." - }, - { - "id": 163, - "tr": "Ekibimiz, markanız için uçtan uca dijital çözümler sunar. Akıllı teknolojiler ve kullanıcı deneyimini ön planda tutarak, işinize değer katıyoruz." - }, - { - "id": 164, - "tr": "Daha Fazla Detay" - }, - { - "id": 165, - "tr": "Müzik Prodüksiyon" - }, - { - "id": 166, - "tr": "Müzik prodüksiyonu, film müzikleri, kurumsal müzik çalışmaları ve benzeri alanlarda hizmet veriyoruz." - }, - { - "id": 169, - "tr": "Bize Ulaşın" - }, - { - "id": 171, - "tr": "Adınız" - }, - { - "id": 172, - "tr": "Lütfen adınızı giriniz." - }, - { - "id": 173, - "tr": "Soyadınız" - }, - { - "id": 174, - "tr": "Lütfen soyadınızı giriniz." - }, - { - "id": 175, - "tr": "Lütfen geçerli bir e-posta adresi giriniz." - }, - { - "id": 176, - "tr": "Departman Seçiniz" - }, - { - "id": 177, - "tr": "Satış" - }, - { - "id": 178, - "tr": "Markaşlık" - }, - { - "id": 179, - "tr": "Müşteri Desteği" - }, - { - "id": 180, - "tr": "Lütfen bir departman seçiniz." - }, - { - "id": 181, - "tr": "Mesajınız" - }, - { - "id": 182, - "tr": "Lütfen mesajınızı giriniz." - }, - { - "id": 185, - "tr": "Mesaj Gönder" - }, - { - "id": 186, - "tr": "Bu alanlar zorunludur." - }, - { - "id": 187, - "tr": "600+ müşterimize güveniyoruz. Şimdi onlarla birlikte işinizi büyütün." - }, - { - "id": 189, - "tr": "Memnuniyetli Müşteriler" - }, - { - "id": 190, - "tr": "Uzman Çalışanlar" - }, - { - "id": 191, - "tr": "Trunçgil Teknoloji" - }, - { - "id": 192, - "tr": "Tüm hakları saklıdır." - }, - { - "id": 193, - "tr": "Daha Fazla Bilgi" - }, - { - "id": 194, - "tr": "Hakkımızda" - }, - { - "id": 197, - "tr": "Kullanım Koşulları" - }, - { - "id": 198, - "tr": "Gizlilik Politikası" - }, - { - "id": 200, - "tr": "Yeniliklerden haberdar olmak için bize e-posta adresinizi bırakın." - }, - { - "id": 202, - "tr": "Abone Ol" - }, - { - "id": 204, - "tr": "Daha Fazla Oku" - }, - { - "id": 206, - "tr": "insan odaklı" - }, - { - "id": 208, - "tr": "Neden Trunçgil?" - }, - { - "id": 209, - "tr": "Müşterilerimizin Trunçgil'i tercih etmesinin birkaç" - }, - { - "id": 213, - "tr": "Fikirlerinizi toplar ve organize ederiz, süreçleri yönetiriz." - }, - { - "id": 215, - "tr": "Verilerinizi analiz eder ve anlamlı sonuçlar çıkarırız." - }, - { - "id": 216, - "tr": "Ürünü Tamamla" - }, - { - "id": 217, - "tr": "Ürününüzü son haline getirir ve teslim ederiz." - }, - { - "id": 218, - "tr": "Projeleriniz için en yaratıcı fikirleri topluyor ve organize ediyoruz. Müşterilerimizle yakın iş birliği içinde çalışarak, ihtiyaçlarınızı anlıyor ve en uygun çözümleri geliştiriyoruz. Deneyimli ekibimiz, her projeye özel yaklaşımlarla süreçleri yönetiyor ve başarılı sonuçlar elde ediyor." - }, - { - "id": 219, - "tr": "Yaratıcı fikirler toplama ve analiz etme." - }, - { - "id": 220, - "tr": "Müşteri ihtiyaçlarını anlama ve çözüm geliştirme." - }, - { - "id": 221, - "tr": "Profesyonel ekip ile süreç yönetimi ve takip." - }, - { - "id": 222, - "tr": "Kurumsal verilerinizi derinlemesine analiz ediyor ve anlamlı içgörüler çıkarıyoruz. Modern analitik araçlarımız ve uzman ekibimiz sayesinde, iş süreçlerinizi optimize edebilir ve karar verme süreçlerinizi güçlendirebilirsiniz. Verilerinizden maksimum değeri elde etmenizi sağlıyoruz." - }, - { - "id": 223, - "tr": "Derinlemesine veri analizi ve raporlama." - }, - { - "id": 224, - "tr": "İş süreçlerini optimize etme ve iyileştirme." - }, - { - "id": 225, - "tr": "Stratejik karar verme için içgörü sağlama." - }, - { - "id": 226, - "tr": "Geliştirme sürecinin son aşamasında, ürününüzü mükemmel hale getiriyor ve teslim ediyoruz. Kalite kontrolünden kullanıcı testlerine, dokümantasyondan eğitime kadar tüm detayları eksiksiz bir şekilde tamamlıyoruz. Müşterilerimizin memnuniyeti bizim önceliğimizdir." - }, - { - "id": 227, - "tr": "Kapsamlı kalite kontrolü ve test süreçleri." - }, - { - "id": 228, - "tr": "Detaylı dokümantasyon ve kullanıcı eğitimi." - }, - { - "id": 229, - "tr": "Zamanında teslimat ve sürekli destek hizmeti." - }, - { - "id": 230, - "tr": "Sık Sorulan Sorular" - }, - { - "id": 231, - "tr": "Bizi müşterilerimizden dinleyin." - }, - { - "id": 233, - "tr": "kolaylaştıran" - }, - { - "id": 234, - "tr": "çözümler" - }, - { - "id": 235, - "tr": "İnovatif Çözümler" - }, - { - "id": 236, - "tr": "En son teknolojileri kullanarak, işinize değer katacak çözümler sunuyoruz. Modern yaklaşımlarla projelerinizi hayata geçiriyoruz." - }, - { - "id": 238, - "tr": "Deneyimli ve uzman ekibimizle, projelerinizi en iyi şekilde tamamlıyoruz. Her adımda yanınızdayız." - }, - { - "id": 259, - "tr": "Faaliyet Alanlarımız" - }, - { - "id": 261, - "tr": "Yaptıklarımız" - }, - { - "id": 265, - "tr": "Nesnelerin İnterneti" - }, - { - "id": 266, - "tr": "yalnızca parmaklarınızın ucunda" - }, - { - "id": 267, - "tr": "TRUNÇGİL YALNIZCA" - }, - { - "id": 270, - "tr": "KOLAYLAŞTIRAN" - }, - { - "id": 271, - "tr": "ÇÖZÜMLER" - }, - { - "id": 273, - "tr": "NESNELERİN İNTERNETİ" - }, - { - "id": 275, - "tr": "Durmadan Çalışıyor" - }, - { - "id": 276, - "tr": "Koşar Adımlarla" - }, - { - "id": 277, - "tr": "Durmadan Çalışıyoruz" - }, - { - "id": 278, - "tr": "Trunçgil'i Keşfet" - }, - { - "id": 303, - "tr": "neler-yapariz.image_alt" - }, - { - "id": 312, - "tr": "neler-yapariz.gallery.image_1_alt" - }, - { - "id": 313, - "tr": "neler-yapariz.gallery.image_2_alt" - }, - { - "id": 314, - "tr": "neler-yapariz.gallery.image_3_alt" - }, - { - "id": 315, - "tr": "neler-yapariz.gallery.image_4_alt" - }, - { - "id": 320, - "tr": "neler-yapariz.what_we_do.highlight" - }, - { - "id": 321, - "tr": "neler-yapariz.what_we_do.description_end" - }, - { - "id": 322, - "tr": "Kitaplarımız" - }, - { - "id": 323, - "tr": "Geleceği şekillendiren teknolojileri, uzman kalemlerden derinlemesine öğrenin." - }, - { - "id": 324, - "tr": "İncele & Satın Al" - }, - { - "id": 325, - "tr": "Sorularınız için bizimle iletişime geçin." - }, - { - "id": 326, - "tr": "Müşteri görüşleri yakında burada olacak." - }, - { - "id": 327, - "tr": "Logolarımız" - }, - { - "id": 329, - "tr": "Trunçgil, kelime anlamıyla birçok kelimenin birleşmesinden meydana gelmektedir. Dikkat ederseniz \"turunçgil\" tabirinden farklı olarak baştaki \"T\" ile \"r\" arasında \"u\" harfi yoktur. Bunun sebebi \"Türkiye Cumhuriyeti\"nin ulusal kısaltması olan \"Tr\" yi nitelemektedir." - }, - { - "id": 330, - "tr": "\"r\" harfini kapattığınızda Trunçgil'in kurucusu olan Ümit Tunç'un soy ismi \"Tunç\" kelimesi oluşmaktadır. \"gil\" tabiri Türkçe'de aile, ekosistem kavramını, Osmanlıca'da su ile bulanmış toprak anlamını taşıyan \"kil\" tabirini ortaya çıkartmaktadır. Kelimenin toplamına baktığımızda okunuş itibariyle \"turunçgil\" turuncuyu yani dinamizmi simgelemektedir. Aynı zamanda İngilizce'de budamak, kesmek anlamına gelen \"truncate\" kelimesini de çağrıştırmaktadır. Detaylı olarak bu kelimelerin logo üzerindeki anlamlarını açıklayalım." - }, - { - "id": 331, - "tr": "TR: Önce Türkiye, Öncü Türkiye" - }, - { - "id": 332, - "tr": "Yaptığımız ve yapacağımız bütün işlerin güzel yurdumuz olan Türkiye'ye adadığımızı, baştan taahhüt etmekteyiz." - }, - { - "id": 333, - "tr": "Tunç: Dayanıklılık ve Güç" - }, - { - "id": 334, - "tr": "Ayakkabı tamiri yapan atamızın çekiç ve örs aletleri tunçtan yapılmıştı. 1934'de yayınlanan soy ismi kanununda bu sebeple Tunç soyadını almışız. Tunç madeninin kullanım alanları çok dayanıklı araç ve gereçlerin yapımına sebep olmuştur. Dayanıklı araç ve gereçlerin dışında nispeten çok ince emek isteyen mücevher, takı ve süs aksesuarlarında da kullanılmıştır. Güçlü silahlar, değerli eşyalar ve süs eşyaları yapımında tunç madeninden oldukça faydalanılmıştır." - }, - { - "id": 335, - "tr": "Bundan dolayıdır ki yapacağımız tüm işler tunç madeni kadar dayanıklı, tunç kadar ince emek isteyen işlerden oluşmasıdır." - }, - { - "id": 336, - "tr": "Gil: Aile, ekosistem \/ kil yarı mamulü" - }, - { - "id": 337, - "tr": "Toplumun en küçük birimi olan sosyal yapıyı niteleyen aile kavramını bütünsel yapılanma ve yapmış olduğumuz tüm ürünlerin bir ailenin ferdi olarak nitelendirdiğimizi belirtmek isteriz." - }, - { - "id": 338, - "tr": "Osmanlıcadaki \"gil\" kelimesinin anlamı, sulanmış toprak olan \"kil\" hamur gibi işlenen ve bir ürün ortaya çıkartmak için kullanılan yarı mamulünü niteler. Dolayısıyla \"gil\", sistemde değişikliğe gidebilecek olduğumuzu, yapılan bir işi farklı bir işe kolay evirebileceğimizi nitelemektedir." - }, - { - "id": 339, - "tr": "Truncate: Verimlilik için budamak" - }, - { - "id": 340, - "tr": "Transact SQL dilinde de kullanılan \"Truncate\" deyimi budamak, kesmek anlamına gelmektedir. Budama aynı zamanda botanikte de bitkinin daha verimli olabilmesini, daha sağlıklı gelişebilmesini sağlamak amacıyla yapılan, fazla veya istenmeyen dalların kesilmesini sağlayan bir eylemdir." - }, - { - "id": 341, - "tr": "Dolayısıyla \"truncate\" bizim nezdimizde yalın kodu, basitliğin en güzel gelişmişlik olduğunu betimlemektedir." - }, - { - "id": 342, - "tr": "Logo Varyasyonlarımız" - }, - { - "id": 343, - "tr": "Logoların Kullanımı Hakkında" - }, - { - "id": 344, - "tr": "Trunçgil logoları, markanın bütünlüğünü korumak adına oranları bozulmadan ve renk paletine sadık kalınarak kullanılmalıdır. SVG formatındaki dosyalar yüksek kalitede baskı için uygundur." - }, - { - "id": 346, - "tr": "İndir" - }, - { - "id": 347, - "tr": "Görüntüle" - }, - { - "id": 350, - "tr": "Müşteri Görüşleri" - }, - { - "id": 351, - "tr": "Bizi müşterilerimizden dinleyin. Birlikte yazdığımız başarı hikayeleri." - }, - { - "id": 352, - "tr": "Henüz bir müşteri görüşü eklenmemiş." - }, - { - "id": 353, - "tr": "ÇÖZÜM ORTAKLARIMIZ" - }, - { - "id": 354, - "tr": "Online Ödeme" - }, - { - "id": 355, - "tr": "256-Bit SSL Güvenli Ödeme" - }, - { - "id": 356, - "tr": "Kredi kartınızla hızlı, kolay ve güvenli ödeme yapın." - }, - { - "id": 358, - "tr": "Adınızı Giriniz" - }, - { - "id": 359, - "tr": "Soyadınızı Giriniz" - }, - { - "id": 362, - "tr": "Telefon Numarası" - }, - { - "id": 363, - "tr": "Telefon Numaranızı Giriniz" - }, - { - "id": 364, - "tr": "Ödeme Açıklaması \/ Not" - }, - { - "id": 366, - "tr": "Mesafeli Satış Sözleşmesi<\/a>'ni okudum, onaylıyorum." - }, - { - "id": 367, - "tr": "Ödeme Tutarı" - }, - { - "id": 369, - "tr": "Komisyonsuz İşlem" - }, - { - "id": 370, - "tr": "3D Secure ile Maksimum Güvenlik" - }, - { - "id": 371, - "tr": "ÖDEMEYİ TAMAMLA" - }, - { - "id": 372, - "tr": "Lütfen Bilgileri Kontrol Ediniz" - }, - { - "id": 373, - "tr": "Kart ile Ödeme" - }, - { - "id": 375, - "tr": "Kart Üzerindeki Ad Soyad" - }, - { - "id": 377, - "tr": "Mesafeli Satış Sözleşmesi" - }, - { - "id": 378, - "tr": "'ni okudum, onaylıyorum." - }, - { - "id": 380, - "tr": "Ödeme Yap" - }, - { - "id": 382, - "tr": "Okudum, Onaylıyorum" - }, - { - "id": 383, - "tr": "Özellikler" - }, - { - "id": 384, - "tr": "deneyiminizi mükemmelleştirmek için buradayız." - }, - { - "id": 385, - "tr": "Gizlilik Politikası - Privacy Policy" - }, - { - "id": 386, - "tr": "Mobil uygulamalarımız için genel kullanım ve gizlilik koşulları." - }, - { - "id": 387, - "tr": "Son Güncelleme" - }, - { - "id": 388, - "tr": "Bölümler" - } -] \ No newline at end of file diff --git a/untranslated_dynamic.json b/untranslated_dynamic.json deleted file mode 100644 index 11ff272..0000000 --- a/untranslated_dynamic.json +++ /dev/null @@ -1,562 +0,0 @@ -[ - { - "type": "App\\Models\\Page", - "id": 1, - "field": "excerpt", - "tr": "", - "en": "" - }, - { - "type": "App\\Models\\Page", - "id": 1, - "field": "meta_title", - "tr": "", - "en": "" - }, - { - "type": "App\\Models\\Page", - "id": 1, - "field": "meta_description", - "tr": "", - "en": "" - }, - { - "type": "App\\Models\\Page", - "id": 7, - "field": "excerpt", - "tr": "", - "en": "" - }, - { - "type": "App\\Models\\Page", - "id": 7, - "field": "meta_title", - "tr": "", - "en": "" - }, - { - "type": "App\\Models\\Page", - "id": 7, - "field": "meta_description", - "tr": "", - "en": "" - }, - { - "type": "App\\Models\\Page", - "id": 8, - "field": "excerpt", - "tr": "", - "en": "" - }, - { - "type": "App\\Models\\Page", - "id": 8, - "field": "meta_title", - "tr": "", - "en": "" - }, - { - "type": "App\\Models\\Page", - "id": 8, - "field": "meta_description", - "tr": "", - "en": "" - }, - { - "type": "App\\Models\\Page", - "id": 9, - "field": "excerpt", - "tr": "", - "en": "" - }, - { - "type": "App\\Models\\Page", - "id": 9, - "field": "meta_title", - "tr": "", - "en": "" - }, - { - "type": "App\\Models\\Page", - "id": 9, - "field": "meta_description", - "tr": "", - "en": "" - }, - { - "type": "App\\Models\\Product", - "id": 1, - "field": "title", - "tr": "Image Editor", - "en": "Image Editor" - }, - { - "type": "App\\Models\\Product", - "id": 5, - "field": "title", - "tr": "LibroLog", - "en": "LibroLog" - }, - { - "type": "App\\Models\\Page", - "id": 10, - "field": "excerpt", - "tr": "", - "en": "" - }, - { - "type": "App\\Models\\Page", - "id": 10, - "field": "meta_title", - "tr": "", - "en": "" - }, - { - "type": "App\\Models\\Page", - "id": 10, - "field": "meta_description", - "tr": "", - "en": "" - }, - { - "type": "App\\Models\\Page", - "id": 2, - "field": "excerpt", - "tr": "", - "en": "" - }, - { - "type": "App\\Models\\Page", - "id": 2, - "field": "meta_title", - "tr": "", - "en": "" - }, - { - "type": "App\\Models\\Page", - "id": 2, - "field": "meta_description", - "tr": "", - "en": "" - }, - { - "type": "App\\Models\\Page", - "id": 5, - "field": "excerpt", - "tr": "", - "en": "" - }, - { - "type": "App\\Models\\Page", - "id": 5, - "field": "meta_title", - "tr": "", - "en": "" - }, - { - "type": "App\\Models\\Page", - "id": 5, - "field": "meta_description", - "tr": "", - "en": "" - }, - { - "type": "App\\Models\\Page", - "id": 11, - "field": "title", - "tr": "", - "en": "" - }, - { - "type": "App\\Models\\Page", - "id": 11, - "field": "excerpt", - "tr": "", - "en": "" - }, - { - "type": "App\\Models\\Page", - "id": 11, - "field": "meta_title", - "tr": "", - "en": "" - }, - { - "type": "App\\Models\\Page", - "id": 11, - "field": "meta_description", - "tr": "", - "en": "" - }, - { - "type": "App\\Models\\Page", - "id": 12, - "field": "title", - "tr": "", - "en": "" - }, - { - "type": "App\\Models\\Page", - "id": 12, - "field": "excerpt", - "tr": "", - "en": "" - }, - { - "type": "App\\Models\\Page", - "id": 12, - "field": "meta_title", - "tr": "", - "en": "" - }, - { - "type": "App\\Models\\Page", - "id": 12, - "field": "meta_description", - "tr": "", - "en": "" - }, - { - "type": "App\\Models\\Page", - "id": 13, - "field": "title", - "tr": "", - "en": "" - }, - { - "type": "App\\Models\\Page", - "id": 13, - "field": "excerpt", - "tr": "", - "en": "" - }, - { - "type": "App\\Models\\Page", - "id": 13, - "field": "meta_title", - "tr": "", - "en": "" - }, - { - "type": "App\\Models\\Page", - "id": 13, - "field": "meta_description", - "tr": "", - "en": "" - }, - { - "type": "App\\Models\\Page", - "id": 4, - "field": "title", - "tr": "", - "en": "" - }, - { - "type": "App\\Models\\Page", - "id": 4, - "field": "excerpt", - "tr": "", - "en": "" - }, - { - "type": "App\\Models\\Page", - "id": 4, - "field": "meta_title", - "tr": "", - "en": "" - }, - { - "type": "App\\Models\\Page", - "id": 4, - "field": "meta_description", - "tr": "", - "en": "" - }, - { - "type": "App\\Models\\Page", - "id": 14, - "field": "title", - "tr": "", - "en": "" - }, - { - "type": "App\\Models\\Page", - "id": 14, - "field": "excerpt", - "tr": "", - "en": "" - }, - { - "type": "App\\Models\\Page", - "id": 14, - "field": "meta_title", - "tr": "", - "en": "" - }, - { - "type": "App\\Models\\Page", - "id": 14, - "field": "meta_description", - "tr": "", - "en": "" - }, - { - "type": "App\\Models\\Page", - "id": 15, - "field": "title", - "tr": "", - "en": "" - }, - { - "type": "App\\Models\\Page", - "id": 15, - "field": "excerpt", - "tr": "", - "en": "" - }, - { - "type": "App\\Models\\Page", - "id": 15, - "field": "meta_title", - "tr": "", - "en": "" - }, - { - "type": "App\\Models\\Page", - "id": 15, - "field": "meta_description", - "tr": "", - "en": "" - }, - { - "type": "App\\Models\\Page", - "id": 16, - "field": "title", - "tr": "", - "en": "" - }, - { - "type": "App\\Models\\Page", - "id": 16, - "field": "excerpt", - "tr": "", - "en": "" - }, - { - "type": "App\\Models\\Page", - "id": 16, - "field": "meta_title", - "tr": "", - "en": "" - }, - { - "type": "App\\Models\\Page", - "id": 16, - "field": "meta_description", - "tr": "", - "en": "" - }, - { - "type": "App\\Models\\Blog", - "id": 1, - "field": "title", - "tr": "", - "en": "" - }, - { - "type": "App\\Models\\Blog", - "id": 1, - "field": "excerpt", - "tr": "", - "en": "" - }, - { - "type": "App\\Models\\Blog", - "id": 1, - "field": "meta_title", - "tr": "", - "en": "" - }, - { - "type": "App\\Models\\Blog", - "id": 1, - "field": "meta_description", - "tr": "", - "en": "" - }, - { - "type": "App\\Models\\Page", - "id": 17, - "field": "title", - "tr": "", - "en": "" - }, - { - "type": "App\\Models\\Page", - "id": 17, - "field": "excerpt", - "tr": "", - "en": "" - }, - { - "type": "App\\Models\\Page", - "id": 17, - "field": "meta_title", - "tr": "", - "en": "" - }, - { - "type": "App\\Models\\Page", - "id": 17, - "field": "meta_description", - "tr": "", - "en": "" - }, - { - "type": "App\\Models\\Page", - "id": 6, - "field": "title", - "tr": "", - "en": "" - }, - { - "type": "App\\Models\\Page", - "id": 6, - "field": "excerpt", - "tr": "", - "en": "" - }, - { - "type": "App\\Models\\Page", - "id": 6, - "field": "meta_title", - "tr": "", - "en": "" - }, - { - "type": "App\\Models\\Page", - "id": 6, - "field": "meta_description", - "tr": "", - "en": "" - }, - { - "type": "App\\Models\\Blog", - "id": 2, - "field": "title", - "tr": "", - "en": "" - }, - { - "type": "App\\Models\\Blog", - "id": 2, - "field": "excerpt", - "tr": "", - "en": "" - }, - { - "type": "App\\Models\\Blog", - "id": 2, - "field": "meta_title", - "tr": "", - "en": "" - }, - { - "type": "App\\Models\\Blog", - "id": 2, - "field": "meta_description", - "tr": "", - "en": "" - }, - { - "type": "App\\Models\\Page", - "id": 18, - "field": "title", - "tr": "", - "en": "" - }, - { - "type": "App\\Models\\Page", - "id": 18, - "field": "excerpt", - "tr": "", - "en": "" - }, - { - "type": "App\\Models\\Page", - "id": 18, - "field": "meta_title", - "tr": "", - "en": "" - }, - { - "type": "App\\Models\\Page", - "id": 18, - "field": "meta_description", - "tr": "", - "en": "" - }, - { - "type": "App\\Models\\Page", - "id": 3, - "field": "title", - "tr": "", - "en": "" - }, - { - "type": "App\\Models\\Page", - "id": 3, - "field": "excerpt", - "tr": "", - "en": "" - }, - { - "type": "App\\Models\\Page", - "id": 3, - "field": "meta_title", - "tr": "", - "en": "" - }, - { - "type": "App\\Models\\Page", - "id": 3, - "field": "meta_description", - "tr": "", - "en": "" - }, - { - "type": "App\\Models\\Page", - "id": 19, - "field": "title", - "tr": "Privacy Policy for Stellar Construction", - "en": "" - }, - { - "type": "App\\Models\\Page", - "id": 19, - "field": "excerpt", - "tr": "", - "en": "" - }, - { - "type": "App\\Models\\Page", - "id": 19, - "field": "meta_title", - "tr": "", - "en": "" - }, - { - "type": "App\\Models\\Page", - "id": 19, - "field": "meta_description", - "tr": "", - "en": "" - }, - { - "type": "App\\Models\\Product", - "id": 3, - "field": "title", - "tr": "Yazılım Danışmanlığı", - "en": "Yazılım Danışmanlığı" - } -] \ No newline at end of file diff --git a/untranslated_dynamic_filtered.json b/untranslated_dynamic_filtered.json deleted file mode 100644 index 928fa97..0000000 --- a/untranslated_dynamic_filtered.json +++ /dev/null @@ -1,44 +0,0 @@ -[ - { - "type": "App\\Models\\Product", - "id": 1, - "field": "title", - "tr": "Image Editor", - "en": "Image Editor" - }, - { - "type": "App\\Models\\Product", - "id": 5, - "field": "title", - "tr": "LibroLog", - "en": "LibroLog" - }, - { - "type": "App\\Models\\Page", - "id": 4, - "field": "content", - "tr": "

\"Trunçgil<\/p>


<\/p>

Hayat Amacımız (Misyon)<\/strong>
Hayatı kolaylaştırabilecek uygulamaları insan odaklı, akılcı, sade ve estetik bir biçimde gerçekleştirmek için var gücümüzle çalışıyoruz.<\/p>

Gelecek Hayalimiz (Vizyon)<\/strong>
Dünyanın en büyük ülkesi Türkiye, Türkiye’nin de en büyük şirketi Trunçgil!<\/p>

Değerlerimiz<\/strong><\/p>