diff options
Diffstat (limited to 'modules/user/helpers')
-rw-r--r-- | modules/user/helpers/group.php | 17 | ||||
-rw-r--r-- | modules/user/helpers/user.php | 26 | ||||
-rw-r--r-- | modules/user/helpers/user_installer.php | 34 |
3 files changed, 27 insertions, 50 deletions
diff --git a/modules/user/helpers/group.php b/modules/user/helpers/group.php index 2ada0ac1..38124b0d 100644 --- a/modules/user/helpers/group.php +++ b/modules/user/helpers/group.php @@ -25,23 +25,6 @@ */ class group_Core { /** - * Create a new group. - * - * @param string $name - * @return Group_Definition the group object - */ - static function create($name) { - $group = ORM::factory("group")->where("name", "=", $name)->find(); - if ($group->loaded()) { - throw new Exception("@todo GROUP_ALREADY_EXISTS $name"); - } - - $group->name = $name; - $group->save(); - return $group; - } - - /** * The group of all possible visitors. This includes the guest user. * * @return Group_Definition the group object diff --git a/modules/user/helpers/user.php b/modules/user/helpers/user.php index e092aecc..3561021f 100644 --- a/modules/user/helpers/user.php +++ b/modules/user/helpers/user.php @@ -36,32 +36,6 @@ class user_Core { } /** - * Create a new user. - * - * @param string $name - * @param string $full_name - * @param string $password - * @return User_Model - */ - static function create($name, $full_name, $password) { - $user = ORM::factory("user")->where("name", "=", $name)->find(); - if ($user->loaded()) { - throw new Exception("@todo USER_ALREADY_EXISTS $name"); - } - - $user->name = $name; - $user->full_name = $full_name; - $user->password = $password; - - // Required groups - $user->add(group::everybody()); - $user->add(group::registered_users()); - - $user->save(); - return $user; - } - - /** * Is the password provided correct? * * @param user User Model diff --git a/modules/user/helpers/user_installer.php b/modules/user/helpers/user_installer.php index 38f8020b..729f087a 100644 --- a/modules/user/helpers/user_installer.php +++ b/modules/user/helpers/user_installer.php @@ -29,9 +29,21 @@ class user_installer { static function upgrade($version) { if ($version == 1) { module::set_var("user", "mininum_password_length", 5); - module::set_version("user", $version = 2); } + + if ($version == 2) { + db::build() + ->update("users") + ->set("email", "unknown@unknown.com") + ->where("guest", "=", 0) + ->and_open() + ->where("email", "IS", null) + ->or_where("email", "=", "") + ->close() + ->execute(); + module::set_version("user", $version = 3); + } } static function uninstall() { @@ -85,20 +97,28 @@ 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 = ORM::factory("user"); + $guest->name = "guest"; + $guest->full_name = "Guest User"; + $guest->password = ""; $guest->guest = true; - $guest->remove($registered); $guest->save(); - $admin = user::create("admin", "Gallery Administrator", "admin"); + $admin = ORM::factory("user"); + $admin->name = "admin"; + $admin->full_name = "Gallery Administrator"; + $admin->password = "admin"; + $admin->email = "unknown@unknown.com"; $admin->admin = true; $admin->save(); @@ -109,7 +129,7 @@ class user_installer { access::allow($registered, "view", $root); access::allow($registered, "view_full", $root); - module::set_version("user", 2); module::set_var("user", "mininum_password_length", 5); + module::set_version("user", 3); } }
\ No newline at end of file |