diff options
Diffstat (limited to 'modules/user/helpers')
-rw-r--r-- | modules/user/helpers/group.php | 26 | ||||
-rw-r--r-- | modules/user/helpers/user.php | 36 | ||||
-rw-r--r-- | modules/user/helpers/user_menu.php | 11 |
3 files changed, 31 insertions, 42 deletions
diff --git a/modules/user/helpers/group.php b/modules/user/helpers/group.php index 673f7d92..a1aea90f 100644 --- a/modules/user/helpers/group.php +++ b/modules/user/helpers/group.php @@ -46,50 +46,40 @@ class group_Core { /** * The group of all possible visitors. This includes the guest user. * - * @todo consider caching - * * @return Group_Model */ static function everybody() { - return ORM::factory("group", 1); + return model_cache::get("group", 1); } /** * The group of all logged-in visitors. This does not include guest users. * - * @todo consider caching - * * @return Group_Model */ static function registered_users() { - return ORM::factory("group", 2); + return model_cache::get("group", 2); } - - /** - * This is the API for handling groups. - * @TODO incorporate rules! - */ + public static function get_edit_form($group, $action = NULL) { $form = new Forge($action); $form_group = $form->group("edit_group")->label(_("Edit Group")); - $form_group->input("gname")->label(_("Name"))->id("gName")->value($group->name); + $form_group->input("name")->label(_("Name"))->id("gName")->value($group->name); $form_group->submit(_("Modify")); $form->add_rules_from($group); - $form->edit_group->gname->rules($group->rules["name"]); return $form; } - + public static function get_add_form($action = NULL) { $form = new Forge($action); $form_group = $form->group("add_group")->label(_("Add Group")); - $form_group->input("gname")->label(_("Name"))->id("gName"); + $form_group->input("name")->label(_("Name"))->id("gName"); $form_group->submit(_("Create")); $group = ORM::factory("group"); $form->add_rules_from($group); - $form->add_group->gname->rules($group->rules["name"]); return $form; } - + public static function get_delete_form($group, $action = NULL) { $form = new Forge($action); $form_group = $form->group("delete_group")->label(_("Delete Group")); @@ -97,4 +87,4 @@ class group_Core { $form_group->submit(_("Delete")); return $form; } -}
\ No newline at end of file +} diff --git a/modules/user/helpers/user.php b/modules/user/helpers/user.php index 34611dbd..83f9ca2b 100644 --- a/modules/user/helpers/user.php +++ b/modules/user/helpers/user.php @@ -25,39 +25,50 @@ */ class user_Core { public static function get_edit_form($user, $action = NULL) { - $form = new Forge($action, "", "post", array("id" => "gUserForm")); + $form = new Forge("users/$user->id?_method=put", "", "post", array("id" => "gUserForm")); $group = $form->group("edit_user")->label(_("Edit User")); - $group->input("uname")->label(_("Name"))->id("gName")->value($user->name); + $group->input("name")->label(_("Name"))->id("gName")->value($user->name); $group->input("full_name")->label(_("Full Name"))->id("gFullName")->value($user->full_name); $group->password("password")->label(_("Password"))->id("gPassword"); $group->input("email")->label(_("Email"))->id("gEmail")->value($user->email); $group->submit(_("Modify")); $form->add_rules_from($user); - $form->edit_user->uname->rules($user->rules["name"]); return $form; } - public static function get_add_form($action = NULL) { - $form = new Forge($action); + public static function get_edit_form_admin($user, $action = NULL) { + $form = new Forge("admin/users/edit/$user->id", "", "post", array("id" => "gUserForm")); + $group = $form->group("edit_user")->label(_("Edit User")); + $group->input("name")->label(_("Name"))->id("gName")->value($user->name); + $group->input("full_name")->label(_("Full Name"))->id("gFullName")->value($user->full_name); + $group->password("password")->label(_("Password"))->id("gPassword"); + $group->input("email")->label(_("Email"))->id("gEmail")->value($user->email); + $group->submit(_("Modify")); + $form->add_rules_from($user); + return $form; + } + + public static function get_add_form_admin($action = NULL) { + $form = new Forge("admin/users/create"); $group = $form->group("add_user")->label(_("Add User")); - $group->input("uname")->label(_("Name"))->id("gName"); + $group->input("name")->label(_("Name"))->id("gName"); $group->input("full_name")->label(_("Full Name"))->id("gFullName"); $group->password("password")->label(_("Password"))->id("gPassword"); $group->input("email")->label(_("Email"))->id("gEmail"); $group->submit(_("Add")); $user = ORM::factory("user"); $form->add_rules_from($user); - $form->add_user->uname->rules($user->rules["name"]); return $form; } - - public static function get_delete_form($user, $action = NULL) { + + public static function get_delete_form_admin($user, $action = NULL) { $form = new Forge($action); $group = $form->group("delete_user")->label(_("Delete User")); $group->label(sprintf(_("Are you sure you want to delete %s?"), $user->name)); $group->submit(_("Delete")); return $form; } + /** * Make sure that we have a session and group_ids cached in the session. */ @@ -145,10 +156,9 @@ class user_Core { $user->full_name = $full_name; $user->password = $password; - // Everybody group - $user->add(ORM::factory("group", 1)); - // Registered Users group - $user->add(ORM::factory("group", 2)); + // Required groups + $user->add(group::everybody()); + $user->add(group::registered_users()); $user->save(); module::event("user_created", $user); diff --git a/modules/user/helpers/user_menu.php b/modules/user/helpers/user_menu.php index 654a0d89..88f30f29 100644 --- a/modules/user/helpers/user_menu.php +++ b/modules/user/helpers/user_menu.php @@ -18,17 +18,6 @@ * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. */ class user_menu_Core { - public static function site($menu, $theme) { - $user = user::active(); - if (!$user->guest) { - $menu->get("admin_menu")->append( - Menu::Factory("dialog") - ->id("edit_profile") - ->label(_("Edit Profile")) - ->url(url::site("users/form/edit/$user->id"))); - } - } - public static function admin($menu, $theme) { $menu->get("users_groups_menu") ->append(Menu::factory("link") |