diff options
| author | Greg Roach <fisharebest@webtrees.net> | 2018-12-31 10:40:02 +0000 |
|---|---|---|
| committer | Greg Roach <fisharebest@webtrees.net> | 2018-12-31 10:40:17 +0000 |
| commit | 32f20c14b2839ce85ae9a14fd182d48b6c1989a6 (patch) | |
| tree | 7fd18e1f041d8e1cece5215841fb8ebfacc52217 /app | |
| parent | bb5117adff0f725ce1bdc6855ad32979f8676035 (diff) | |
| download | webtrees-32f20c14b2839ce85ae9a14fd182d48b6c1989a6.tar.gz webtrees-32f20c14b2839ce85ae9a14fd182d48b6c1989a6.tar.bz2 webtrees-32f20c14b2839ce85ae9a14fd182d48b6c1989a6.zip | |
Add tests for Auth and Site classes
Diffstat (limited to 'app')
| -rw-r--r-- | app/Site.php | 7 | ||||
| -rw-r--r-- | app/Tree.php | 10 | ||||
| -rw-r--r-- | app/User.php | 2 |
3 files changed, 12 insertions, 7 deletions
diff --git a/app/Site.php b/app/Site.php index 43098d54ca..45262966b9 100644 --- a/app/Site.php +++ b/app/Site.php @@ -30,7 +30,7 @@ class Site * * @var array */ - private static $preferences = []; + public static $preferences = []; /** * Get the site’s configuration settings @@ -63,11 +63,14 @@ class Site */ public static function setPreference($setting_name, $setting_value) { + // The database column is only this long. + $setting_value = mb_substr($setting_value, 0, 2000); + if (self::getPreference($setting_name) !== $setting_value) { DB::table('site_setting')->updateOrInsert([ 'setting_name' => $setting_name, ], [ - 'setting_value' => mb_substr($setting_value, 0, 2000), + 'setting_value' => $setting_value, ]); self::$preferences[$setting_name] = $setting_value; diff --git a/app/Tree.php b/app/Tree.php index b0847cf311..a9a60d23a0 100644 --- a/app/Tree.php +++ b/app/Tree.php @@ -51,7 +51,7 @@ class Tree private $individual_fact_privacy; /** @var Tree[] All trees that we have permission to see. */ - private static $trees = []; + public static $trees = []; /** @var string[] Cached copy of the wt_gedcom_setting table. */ private $preferences = []; @@ -323,7 +323,8 @@ class Tree ->orderBy('gedcom.sort_order') ->orderBy('gedcom_setting.setting_value'); - if (false && !Auth::isAdmin()) { + // Non-admins may not see all trees + if (!Auth::isAdmin()) { $query ->join('gedcom_setting AS gs2', 'gs2.gedcom_id', '=', 'gedcom.gedcom_id') ->where('gs2.setting_name', '=', 'imported'); @@ -454,14 +455,15 @@ class Tree ]); $tree_id = (int) DB::connection()->getPdo()->lastInsertId(); + + $tree = new self($tree_id, $tree_name, $tree_title); } catch (PDOException $ex) { // A tree with that name already exists? return self::findByName($tree_name); } // Update the list of trees - to include this new one - self::$trees = []; - $tree = self::findById($tree_id); + self::$trees[$tree_name] = $tree; $tree->setPreference('imported', '0'); $tree->setPreference('title', $tree_title); diff --git a/app/User.php b/app/User.php index 8003b84b1b..3486f88811 100644 --- a/app/User.php +++ b/app/User.php @@ -42,7 +42,7 @@ class User private $preferences = []; /** @var User[]|null[] Only fetch users from the database once. */ - private static $cache = []; + public static $cache = []; /** * Create a new user object from a row in the database. |
