TranslationLoaderDb   A
last analyzed

Complexity

Total Complexity 5

Size/Duplication

Total Lines 28
Duplicated Lines 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
eloc 8
c 1
b 0
f 0
dl 0
loc 28
rs 10
wmc 5

2 Methods

Rating   Name   Duplication   Size   Complexity  
A loadTranslations() 0 10 3
A getConfiguredModelClass() 0 5 2
1
<?php
2
3
namespace mindtwo\LaravelMultilingual\Services;
4
5
class TranslationLoaderDb implements TranslationLoader
6
{
7
    /**
8
     * @param string $locale
9
     * @param string $group
10
     *
11
     * @return array
12
     */
13
    public function loadTranslations(string $locale, string $group): array
14
    {
15
        foreach ($this->getConfiguredModelClass() as $model) {
16
            $translation = $model::getTranslationsForGroup($locale, $group);
17
            if (! empty($translation)) {
18
                return $translation;
19
            }
20
        }
21
22
        return [];
23
    }
24
25
    /**
26
     * @return array
27
     */
28
    protected function getConfiguredModelClass(): array
29
    {
30
        $modelClassOrClasses = config('laravel-multilingual.model');
31
32
        return is_array($modelClassOrClasses) ? $modelClassOrClasses : [$modelClassOrClasses];
33
    }
34
}
35