⚝
One Hat Cyber Team
⚝
Your IP:
216.73.216.177
Server IP:
50.6.168.112
Server:
Linux server-617809.webnetzimbabwe.com 5.14.0-570.25.1.el9_6.x86_64 #1 SMP PREEMPT_DYNAMIC Wed Jul 9 04:57:09 EDT 2025 x86_64
Server Software:
Apache
PHP Version:
8.4.10
Buat File
|
Buat Folder
Eksekusi
Dir :
~
/
home
/
ctaacademy
/
www
/
Modules
/
Language
/
app
/
Traits
/
View File Name :
SyncModelsTrait.php
code; if ($type == SyncLanguageType::CREATE->value) { if ($shouldQueue) { return $this->createModelsFromQueue($defaultCode, $code); } return $this->createModels($defaultCode, $code); } elseif ($type == SyncLanguageType::UPDATE->value) { if ($shouldQueue) { return $this->updateModelsFromQueue($oldCode, $code); } return $this->updateModels($oldCode, $code); } elseif ($type == SyncLanguageType::DELETE->value) { if ($shouldQueue) { return $this->deleteModelsFromQueue($code); } return $this->deleteModels($code); } } private function createModels($defaultCode, $newCode) { $models = $this->getTranslateableModelsArray(); $ignoredColumns = $this->getIgnoredColumsArray(); foreach ($models as $translateAbleModel) { $countCreatedModels = 0; $oldModels = $translateAbleModel::where('lang_code', $defaultCode)->get(); foreach ($oldModels as $oldModel) { if (! $translateAbleModel::where(['id' => $oldModel->id, 'lang_code' => $newCode])->exists()) { $newModel = new $translateAbleModel(); $newModel->lang_code = $newCode; foreach ($oldModel->toArray() as $key => $value) { if (! in_array($key, $ignoredColumns)) { $newModel->$key = $value; } } $newModel->save(); $countCreatedModels++; } } Log::info("Total { $countCreatedModels } new recordes has been saved into {$translateAbleModel} model for {$newCode} Language"); } return true; } private function createModelsFromQueue($defaultCode, $newCode) { $models = $this->getTranslateableModelsArray(); foreach ($models as $translateableModel) { dispatch(new CreateNewTranslatedDataJob($defaultCode, $newCode, $translateableModel)); } return true; } private function updateModels($oldCode, $newCode) { $models = $this->getTranslateableModelsArray(); foreach ($models as $translateAbleModel) { $countCreatedModels = 0; $oldModels = $translateAbleModel::where('lang_code', $oldCode)->get(); foreach ($oldModels as $oldModel) { $oldModel->lang_code = $newCode; $oldModel->save(); $countCreatedModels++; } Log::info("Total { $countCreatedModels } new recordes has been updated on {$translateAbleModel} model for {$newCode} Language"); } return true; } private function updateModelsFromQueue($oldCode, $newCode) { $models = $this->getTranslateableModelsArray(); foreach ($models as $translateableModel) { dispatch(new UpdateTranslationCodeJob($oldCode, $newCode, $translateableModel)); } return true; } private function deleteModels($code) { $models = $this->getTranslateableModelsArray(); foreach ($models as $translateAbleModel) { $deleteModels = $translateAbleModel::where('lang_code', $code); $countCreatedModels = $deleteModels->count(); $deleteModels->delete(); Log::info("Total { $countCreatedModels } recordes has been deleted into {$translateAbleModel} model for {$code} Language"); } return true; } private function deleteModelsFromQueue($code) { $models = $this->getTranslateableModelsArray(); foreach ($models as $translateableModel) { dispatch(new DeleteTranslationDataJob($code, $translateableModel)); } return true; } }