NovinkaZverejnili sme 50+ Laravel balíkov ako open source
Custom AI apps, agents and automation — Roundly ConsultingRoundly
Všetky balíky

Pre prehľady úplnosti v administrácii zistíte stav pre jedno pole alebo pre všetky prekladateľné atribúty jedným volaním. Všetko sa meria voči podporovaným jazykom:

// Stored: name = {"en": …, "sk": …}, description = {"en": …}
$topic->missingLocales('description');  // ['sk'] — one field
$topic->missingTranslations();          // ['name' => [], 'description' => ['sk']]  field => missing locales
$topic->isFullyTranslated();            // false — every field needs every supported locale
$topic->isFullyTranslated('name');      // true — one attribute only
$topic->translationCompleteness();      // 0.75 — filled / (fields × locales), for a progress bar

translationCompleteness() počíta vyplnené / (polia × jazyky) — pripravené pre progress bar „preložené na 70 %“. Model bez atribútov pre stav sa považuje za úplne preložený (1.0).

Vylúčenie atribútov

Stĺpec — typicky slug — vylúčite zo stavu celého modelu prepísaním protected metódy. Rešpektujú ju missingTranslations(), isFullyTranslated() bez argumentu, translationCompleteness() aj Blade odznak:

/** @return list<string> */
protected function translationStatusExcludes(): array
{
    return ['slug'];
}

Blade odznak stavu

Odznak „ktoré jazyky ešte chýbajú“ vložíte do akéhokoľvek Blade view:

<x-translatable-status :model="$topic" />

Pre čiastočne preložený model vypíše chýbajúce jazyky každého poľa, pre úplne preložený model odznak dokončenia. Markup je inline — nie je čo publikovať — preto naštýlujte triedy translatable-status alebo komponent obaľte vlastným:

<!-- Partially translated -->
<span class="translatable-status translatable-status--incomplete">
    <span class="translatable-status__field" data-field="description">description: sk</span>
</span>

<!-- Fully translated -->
<span class="translatable-status translatable-status--complete">All locales translated.</span>

Text dokončenia je jazykový riadok translatable::status.complete („All locales translated.“).

Prejavte lásku k open source

Tento balík je zadarmo pod licenciou MIT. Ak vám šetrí čas, jednorazový príspevok alebo členstvo na Patreone nám pomôže ho ďalej udržiavať, testovať a dokumentovať.

Ďalšie spôsoby podpory vrátane kryptomien

Odoslaním daru súhlasíte s našimi podmienkami prijímania darov.

Chcete to zabudovať do svojho produktu?

Naše balíky integrujeme do zákazkových Laravel a AI riešení. Napíšte nám, na čom pracujete, a ozveme sa do 48 hodín.