Grab all settings instead of new query for each one

This commit is contained in:
Henry Whitaker
2021-03-07 09:46:44 +00:00
parent a170a96ced
commit 1fd033b3c1

View File

@@ -9,6 +9,7 @@ use Carbon\Carbon;
class SettingsHelper class SettingsHelper
{ {
private static $settings = null;
/** /**
* Get a Setting object by name * Get a Setting object by name
@@ -18,12 +19,16 @@ class SettingsHelper
*/ */
public static function get(String $name) public static function get(String $name)
{ {
$name = Setting::where('name', $name)->get(); if (self::$settings === null) {
self::$settings = Setting::get();
}
$name = self::$settings->where('name', $name);
if (sizeof($name) == 0) { if (sizeof($name) == 0) {
return false; return false;
} else if (sizeof($name) == 1) { } else if (sizeof($name) == 1) {
return $name[0]; return $name->first();
} else { } else {
$name = $name->keyBy('name'); $name = $name->keyBy('name');
return $name->all(); return $name->all();