summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--modules/gallery/helpers/gallery_installer.php33
-rw-r--r--modules/user/helpers/user_installer.php32
2 files changed, 45 insertions, 20 deletions
diff --git a/modules/gallery/helpers/gallery_installer.php b/modules/gallery/helpers/gallery_installer.php
index 1e0ad28c..aa297236 100644
--- a/modules/gallery/helpers/gallery_installer.php
+++ b/modules/gallery/helpers/gallery_installer.php
@@ -209,19 +209,26 @@ class gallery_installer {
t("Edit");
t("Add");
- $root = ORM::factory("item");
- $root->type = "album";
- $root->title = "Gallery";
- $root->description = "";
- $root->left_ptr = 1;
- $root->right_ptr = 2;
- $root->parent_id = 0;
- $root->level = 1;
- $root->thumb_dirty = 1;
- $root->resize_dirty = 1;
- $root->sort_column = "weight";
- $root->sort_order = "ASC";
- $root->save();
+ // Hardcode the first item to sidestep ORM validation rules
+ $now = time();
+ db::build()->insert(
+ "items",
+ array("created" => $now,
+ "description" => "",
+ "left_ptr" => 1,
+ "level" => 1,
+ "parent_id" => 0,
+ "resize_dirty" => 1,
+ "right_ptr" => 2,
+ "sort_column" => "weight",
+ "sort_order" => "ASC",
+ "thumb_dirty" => 1,
+ "title" => "Gallery",
+ "type" => "album",
+ "updated" => $now,
+ "weight" => 1))
+ ->execute();
+ $root = ORM::factory("item")->where("id", "=", 1)->find();
access::add_item($root);
module::set_var("gallery", "active_site_theme", "wind");
diff --git a/modules/user/helpers/user_installer.php b/modules/user/helpers/user_installer.php
index 0cba502f..70bee300 100644
--- a/modules/user/helpers/user_installer.php
+++ b/modules/user/helpers/user_installer.php
@@ -53,21 +53,39 @@ class user_installer {
UNIQUE KEY(`user_id`, `group_id`))
DEFAULT CHARSET=utf8;");
- $everybody = group::create("Everybody");
+ $everybody = ORM::factory("group");
+ $everybody->name = "Everybody";
$everybody->special = true;
$everybody->save();
- $registered = group::create("Registered Users");
+ $registered = ORM::factory("group");
+ $registered->name = "Registered Users";
$registered->special = true;
$registered->save();
- $guest = user::create("guest", "Guest User", "");
- $guest->guest = true;
- $guest->remove($registered);
+ // Avoid ORM to sidestep validation.
+ db::build()->insert(
+ "users",
+ array("name" => "guest",
+ "full_name" => "Guest User",
+ "guest" => true))
+ ->execute();
+
+ $guest = ORM::factory("user")->where("id", "=", 1)->find();
+ $guest->add($everybody);
$guest->save();
- $admin = user::create("admin", "Gallery Administrator", "admin");
- $admin->admin = true;
+ db::build()->insert(
+ "users",
+ array("name" => "admin",
+ "full_name" => "Gallery Administrator",
+ "password" => "admin",
+ "admin" => true))
+ ->execute();
+
+ $admin = ORM::factory("user")->where("id", "=", 2)->find();
+ $admin->add($everybody);
+ $admin->add($registered);
$admin->save();
$current_provider = module::get_var("gallery", "identity_provider");