where('language', LaravelLocalization::getCurrentLocale()) ->orWhere('language', null) ->orderBy('language', 'DESC'); } /** * Load all settings * * @return \stdClass */ public function getAll() { $settings = $this->getSettingsQuery() ->get(); return $this->returnPairs($settings); } /** * Get all settings with language info * * @return \stdClass */ public function getAllWithLanguage() { $settings = $this->getSettingsQuery() ->get(); $data = new \stdClass(); foreach ($settings as $conf) { $data->{$conf->key} = [ 'val' => $conf->value, 'lang' => $conf->language ]; } return $data; } /** * Load only config for views * * @return \stdClass */ public function getForView() { $settings = $this->getSettingsQuery() ->where('load_into_views', 1) ->get(); return $this->returnPairs($settings); } /** * From pair create object key => value * * @param $settings * * @return \stdClass */ private function returnPairs($settings) { $data = new \stdClass(); foreach ($settings as $conf) { $data->{$conf->key} = $conf->value; } return $data; } }