summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--app/Controller/User.php9
-rw-r--r--app/Template/user/index.php3
-rw-r--r--app/Template/user/new.php38
-rw-r--r--assets/css/app.css2
-rw-r--r--assets/css/src/form.css2
-rw-r--r--docs/user-management.markdown6
6 files changed, 34 insertions, 26 deletions
diff --git a/app/Controller/User.php b/app/Controller/User.php
index 1a7810b0..6628bcb6 100644
--- a/app/Controller/User.php
+++ b/app/Controller/User.php
@@ -69,7 +69,6 @@ class User extends Base
$this->response->html(
$this->template->layout('user/index', array(
'board_selector' => $this->projectPermission->getAllowedProjects($this->userSession->getId()),
- 'projects' => $this->project->getList(),
'title' => t('Users').' ('.$paginator->getTotal().')',
'paginator' => $paginator,
)));
@@ -105,14 +104,19 @@ class User extends Base
if ($valid) {
+ $project_id = empty($values['project_id']) ? 0 : $values['project_id'];
+ unset($values['project_id']);
+
$user_id = $this->user->create($values);
if ($user_id !== false) {
+ $this->projectPermission->addMember($project_id, $user_id);
$this->session->flash(t('User created successfully.'));
$this->response->redirect($this->helper->url->to('user', 'show', array('user_id' => $user_id)));
}
else {
$this->session->flashError(t('Unable to create your user.'));
+ $values['project_id'] = $project_id;
}
}
@@ -128,7 +132,6 @@ class User extends Base
{
$user = $this->getUser();
$this->response->html($this->layout('user/show', array(
- 'projects' => $this->projectPermission->getAllowedProjects($user['id']),
'user' => $user,
'timezones' => $this->config->getTimezones(true),
'languages' => $this->config->getLanguages(true),
@@ -230,7 +233,7 @@ class User extends Base
}
$this->response->html($this->layout('user/notifications', array(
- 'projects' => $this->projectPermission->getAllowedProjects($user['id']),
+ 'projects' => $this->projectPermission->getMemberProjects($user['id']),
'notifications' => $this->notification->readSettings($user['id']),
'user' => $user,
)));
diff --git a/app/Template/user/index.php b/app/Template/user/index.php
index 08184698..fc575466 100644
--- a/app/Template/user/index.php
+++ b/app/Template/user/index.php
@@ -43,9 +43,6 @@
<?= $user['twofactor_activated'] ? t('Yes') : t('No') ?>
</td>
<td>
- <?= (isset($user['default_project_id']) && isset($projects[$user['default_project_id']])) ? $this->e($projects[$user['default_project_id']]) : t('None'); ?>
- </td>
- <td>
<?php if ($user['notifications_enabled'] == 1): ?>
<?= t('Enabled') ?>
<?php else: ?>
diff --git a/app/Template/user/new.php b/app/Template/user/new.php
index 5c55b0bb..0db1e824 100644
--- a/app/Template/user/new.php
+++ b/app/Template/user/new.php
@@ -9,28 +9,36 @@
<?= $this->form->csrf() ?>
- <?= $this->form->label(t('Username'), 'username') ?>
- <?= $this->form->text('username', $values, $errors, array('autofocus', 'required', 'maxlength="50"')) ?><br/>
+ <div class="form-column">
+ <?= $this->form->label(t('Username'), 'username') ?>
+ <?= $this->form->text('username', $values, $errors, array('autofocus', 'required', 'maxlength="50"')) ?><br/>
- <?= $this->form->label(t('Name'), 'name') ?>
- <?= $this->form->text('name', $values, $errors) ?><br/>
+ <?= $this->form->label(t('Name'), 'name') ?>
+ <?= $this->form->text('name', $values, $errors) ?><br/>
- <?= $this->form->label(t('Email'), 'email') ?>
- <?= $this->form->email('email', $values, $errors) ?><br/>
+ <?= $this->form->label(t('Email'), 'email') ?>
+ <?= $this->form->email('email', $values, $errors) ?><br/>
- <?= $this->form->label(t('Password'), 'password') ?>
- <?= $this->form->password('password', $values, $errors, array('required')) ?><br/>
+ <?= $this->form->label(t('Password'), 'password') ?>
+ <?= $this->form->password('password', $values, $errors, array('required')) ?><br/>
- <?= $this->form->label(t('Confirmation'), 'confirmation') ?>
- <?= $this->form->password('confirmation', $values, $errors, array('required')) ?><br/>
+ <?= $this->form->label(t('Confirmation'), 'confirmation') ?>
+ <?= $this->form->password('confirmation', $values, $errors, array('required')) ?><br/>
+ </div>
+
+ <div class="form-column">
+ <?= $this->form->label(t('Add project member'), 'project_id') ?>
+ <?= $this->form->select('project_id', $projects, $values, $errors) ?><br/>
- <?= $this->form->label(t('Timezone'), 'timezone') ?>
- <?= $this->form->select('timezone', $timezones, $values, $errors) ?><br/>
+ <?= $this->form->label(t('Timezone'), 'timezone') ?>
+ <?= $this->form->select('timezone', $timezones, $values, $errors) ?><br/>
- <?= $this->form->label(t('Language'), 'language') ?>
- <?= $this->form->select('language', $languages, $values, $errors) ?><br/>
+ <?= $this->form->label(t('Language'), 'language') ?>
+ <?= $this->form->select('language', $languages, $values, $errors) ?><br/>
- <?= $this->form->checkbox('is_admin', t('Administrator'), 1, isset($values['is_admin']) && $values['is_admin'] == 1 ? true : false) ?>
+ <?= $this->form->checkbox('notifications_enabled', t('Enable notifications'), 1, isset($values['notifications_enabled']) && $values['notifications_enabled'] == 1 ? true : false) ?>
+ <?= $this->form->checkbox('is_admin', t('Administrator'), 1, isset($values['is_admin']) && $values['is_admin'] == 1 ? true : false) ?>
+ </div>
<div class="form-actions">
<input type="submit" value="<?= t('Save') ?>" class="btn btn-blue"/>
diff --git a/assets/css/app.css b/assets/css/app.css
index 2035c877..0328d721 100644
--- a/assets/css/app.css
+++ b/assets/css/app.css
@@ -282,7 +282,7 @@ select:focus {
}
.form-actions {
- margin-top: 20px;
+ padding-top: 20px;
clear: both;
}
diff --git a/assets/css/src/form.css b/assets/css/src/form.css
index dc101163..1c1b8ed2 100644
--- a/assets/css/src/form.css
+++ b/assets/css/src/form.css
@@ -77,7 +77,7 @@ select:focus {
}
.form-actions {
- margin-top: 20px;
+ padding-top: 20px;
clear: both;
}
diff --git a/docs/user-management.markdown b/docs/user-management.markdown
index f26afacc..bd9cdb17 100644
--- a/docs/user-management.markdown
+++ b/docs/user-management.markdown
@@ -27,13 +27,13 @@ To add a new user, you must be administrator.
2. On the top, you have a link **New user**
3. Fill the form and save
-When you create a new user, you have to specify those values:
+![New user](http://kanboard.net/screenshots/documentation/new-user.png)
+
+When you create a new user, you have to specify at least those values:
- **username**: This is the unique identifier of your user (login)
- **password**: The password of your user must have at least 6 characters
-Eventually, you can choose to assign a default project to this user and allow him to be administrator.
-
Edit users
----------