diff options
author | Bharat Mediratta <bharat@menalto.com> | 2008-11-26 04:54:43 +0000 |
---|---|---|
committer | Bharat Mediratta <bharat@menalto.com> | 2008-11-26 04:54:43 +0000 |
commit | 9c60566197a1edeb1c7d758886c8d518b5b99388 (patch) | |
tree | 0c486ae87d994f49497a4e295c0403fe7e9ce799 | |
parent | 226df2a8f855010a3400fb4d8bb72469ad43d91a (diff) |
Add support for marking users as "admin"
-rw-r--r-- | core/controllers/welcome.php | 3 | ||||
-rw-r--r-- | core/views/welcome.html.php | 1 | ||||
-rw-r--r-- | modules/user/helpers/user.php | 4 | ||||
-rw-r--r-- | modules/user/helpers/user_installer.php | 1 |
4 files changed, 7 insertions, 2 deletions
diff --git a/core/controllers/welcome.php b/core/controllers/welcome.php index 08bfcb56..821744e8 100644 --- a/core/controllers/welcome.php +++ b/core/controllers/welcome.php @@ -390,7 +390,8 @@ class Welcome_Controller extends Template_Controller { public function add_user() { $name = $this->input->post("user_name"); - user::create($name, $name, $name); + $admin = (bool)$this->input->post("admin"); + user::create($name, $name, $name, $admin); url::redirect("welcome"); } diff --git a/core/views/welcome.html.php b/core/views/welcome.html.php index 8a397f4b..70e9eb19 100644 --- a/core/views/welcome.html.php +++ b/core/views/welcome.html.php @@ -280,6 +280,7 @@ <form method="post" action="<?= url::site("welcome/add_user") ?>"> <input name="user_name" type="text"/> <input type="submit" value="create"/> + <input type="checkbox" name="admin">Admin</input> </form> </fieldset> </div> diff --git a/modules/user/helpers/user.php b/modules/user/helpers/user.php index 6551891c..6c2cdeaa 100644 --- a/modules/user/helpers/user.php +++ b/modules/user/helpers/user.php @@ -64,9 +64,10 @@ class user_Core { * @param string $name * @param string $display_name * @param string $password + * @param boolean $admin true if this user is a site admin * @return User_Model */ - static function create($name, $display_name, $password) { + static function create($name, $display_name, $password, $admin=false) { $user = ORM::factory("user"); if ($user->loaded) { throw new Exception("@todo USER_ALREADY_EXISTS $name"); @@ -75,6 +76,7 @@ class user_Core { $user->name = $name; $user->display_name = $name; $user->password = $name; + $user->admin = $admin; $user->save(); group::add_user(group::REGISTERED_USERS, $user->id); diff --git a/modules/user/helpers/user_installer.php b/modules/user/helpers/user_installer.php index 4a86692c..13811804 100644 --- a/modules/user/helpers/user_installer.php +++ b/modules/user/helpers/user_installer.php @@ -35,6 +35,7 @@ class user_installer { `login_count` int(10) unsigned NOT NULL DEFAULT 0, `last_login` int(10) unsigned NOT NULL DEFAULT 0, `email` varchar(255) default NULL, + `admin` BOOLEAN default 0, PRIMARY KEY (`id`), UNIQUE KEY(`display_name`)) ENGINE=InnoDB DEFAULT CHARSET=utf8;"); |