Example #1
0
Route::get('/_translations/add/{locale}', function ($locale) {
    app('translator')->addLanguage($locale);
    return redirect('/_translations/languages');
});
Route::get('/_translations/{what}', function ($what) {
    $list = [];
    $header = [];
    switch ($what) {
        case 'languages':
        case 'language':
            $list = \deArgonauten\TransLaravel\Models\Languages::all();
            $header = Schema::getColumnListing(config('translaravel.table_prefix') . 'languages');
            break;
        case 'strings':
        case 'string':
            $list = \deArgonauten\TransLaravel\Models\StringTranslations::all();
            $header = Schema::getColumnListing(config('translaravel.table_prefix') . 'string_translations');
            break;
        case 'models':
        case 'model':
            $list = \deArgonauten\TransLaravel\Models\ModelTranslations::all();
            $header = Schema::getColumnListing(config('translaravel.table_prefix') . 'model_translations');
            break;
        case 'routes':
        case 'route':
            $list = \deArgonauten\TransLaravel\Models\RouteTranslations::all();
            $header = Schema::getColumnListing(config('translaravel.table_prefix') . 'route_translations');
            break;
    }
    return view('translaravel::list', ['list' => $list, 'head' => $header]);
});
 /**
  * Set a translation.
  *
  * @param string $attribute
  * @param string $value
  * @param string $locale
  * @return mixed
  */
 public function set($attribute, $value, $locale)
 {
     $language_id = $this->getLanguageId();
     if (!is_null($locale)) {
         $language_id = app('translator')->localeToId($locale);
     }
     // Create search key
     $searchValue = $this->getSearchKeyFor($attribute);
     $q = ModelTranslations::firstOrCreate(['search_value' => $searchValue, 'attribute' => $attribute, 'language_id' => $language_id, 'model' => $this->getModelName(), 'default_value' => $this->getDefaultValueFor($attribute)]);
     $q->value = $value;
     return $q->save();
 }