/** * Grab a setting from cached Settings table by slug. * Cache lifetime: 60 minutes * * @param $slug * @return mixed */ public static function grab($slug) { /** * Comment out prior to 0.2 launch. Will cause massive amount * of Database queries. Only for adding new settings while * in development and testing. */ //Cache::forget('settings'); $settings = Cache::remember('settings', 60, function () { return Table::all(); }); $setting = $settings->where('slug', $slug)->first(); if ($setting->lang) { return trans($setting->lang); } if (Setting::is_serialized($setting->value)) { $setting = unserialize($setting->value); } else { $setting = $setting->value; } return $setting; }