summaryrefslogtreecommitdiff
path: root/app
diff options
context:
space:
mode:
authorFrederic Guillot <fred@kanboard.net>2017-01-22 18:45:17 -0500
committerFrederic Guillot <fred@kanboard.net>2017-01-22 18:45:17 -0500
commitb55810043d2cc061a2a873f4e053e9933cf07ec8 (patch)
tree80f3ff36b4eacc30e89eabd5341c8b40712ae741 /app
parent9b9543353f2a19643b61880c2d46b0c52b104d8a (diff)
Simplify user creation form
Diffstat (limited to 'app')
-rw-r--r--app/Controller/UserCreationController.php5
-rw-r--r--app/Template/user_creation/local.php43
-rw-r--r--app/Template/user_creation/remote.php47
-rw-r--r--app/Template/user_creation/show.php67
-rw-r--r--app/Template/user_list/show.php5
-rw-r--r--app/Template/user_view/layout.php5
6 files changed, 70 insertions, 102 deletions
diff --git a/app/Controller/UserCreationController.php b/app/Controller/UserCreationController.php
index 9c873f85..f0fd34d2 100644
--- a/app/Controller/UserCreationController.php
+++ b/app/Controller/UserCreationController.php
@@ -22,10 +22,7 @@ class UserCreationController extends BaseController
*/
public function show(array $values = array(), array $errors = array())
{
- $isRemote = $this->request->getIntegerParam('remote') == 1 || (isset($values['is_ldap_user']) && $values['is_ldap_user'] == 1);
- $template = $isRemote ? 'user_creation/remote' : 'user_creation/local';
-
- $this->response->html($this->template->render($template, array(
+ $this->response->html($this->template->render('user_creation/show', array(
'timezones' => $this->timezoneModel->getTimezones(true),
'languages' => $this->languageModel->getLanguages(true),
'roles' => $this->role->getApplicationRoles(),
diff --git a/app/Template/user_creation/local.php b/app/Template/user_creation/local.php
deleted file mode 100644
index 08784925..00000000
--- a/app/Template/user_creation/local.php
+++ /dev/null
@@ -1,43 +0,0 @@
-<div class="page-header">
- <h2><?= t('New local user') ?></h2>
-</div>
-<form method="post" action="<?= $this->url->href('UserCreationController', 'save') ?>" autocomplete="off">
- <?= $this->form->csrf() ?>
-
- <div class="form-columns">
- <div class="form-column">
- <?= $this->form->label(t('Username'), 'username') ?>
- <?= $this->form->text('username', $values, $errors, array('autofocus', 'required', 'maxlength="50"')) ?>
-
- <?= $this->form->label(t('Name'), 'name') ?>
- <?= $this->form->text('name', $values, $errors) ?>
-
- <?= $this->form->label(t('Email'), 'email') ?>
- <?= $this->form->email('email', $values, $errors) ?>
-
- <?= $this->form->label(t('Password'), 'password') ?>
- <?= $this->form->password('password', $values, $errors, array('required')) ?>
-
- <?= $this->form->label(t('Confirmation'), 'confirmation') ?>
- <?= $this->form->password('confirmation', $values, $errors, array('required')) ?>
- </div>
-
- <div class="form-column">
- <?= $this->form->label(t('Add project member'), 'project_id') ?>
- <?= $this->form->select('project_id', $projects, $values, $errors) ?>
-
- <?= $this->form->label(t('Timezone'), 'timezone') ?>
- <?= $this->form->select('timezone', $timezones, $values, $errors) ?>
-
- <?= $this->form->label(t('Language'), 'language') ?>
- <?= $this->form->select('language', $languages, $values, $errors) ?>
-
- <?= $this->form->label(t('Role'), 'role') ?>
- <?= $this->form->select('role', $roles, $values, $errors) ?>
-
- <?= $this->form->checkbox('notifications_enabled', t('Enable email notifications'), 1, isset($values['notifications_enabled']) && $values['notifications_enabled'] == 1 ? true : false) ?>
- </div>
- </div>
-
- <?= $this->modal->submitButtons() ?>
-</form>
diff --git a/app/Template/user_creation/remote.php b/app/Template/user_creation/remote.php
deleted file mode 100644
index 0f28c1c4..00000000
--- a/app/Template/user_creation/remote.php
+++ /dev/null
@@ -1,47 +0,0 @@
-<div class="page-header">
- <h2><?= t('New remote user') ?></h2>
-</div>
-<form method="post" action="<?= $this->url->href('UserCreationController', 'save') ?>" autocomplete="off">
- <?= $this->form->csrf() ?>
- <?= $this->form->hidden('is_ldap_user', array('is_ldap_user' => 1)) ?>
-
- <div class="form-columns">
- <div class="form-column">
- <?= $this->form->label(t('Username'), 'username') ?>
- <?= $this->form->text('username', $values, $errors, array('autofocus', 'required', 'maxlength="50"')) ?>
-
- <?= $this->form->label(t('Name'), 'name') ?>
- <?= $this->form->text('name', $values, $errors) ?>
-
- <?= $this->form->label(t('Email'), 'email') ?>
- <?= $this->form->email('email', $values, $errors) ?>
-
- <?= $this->hook->render('template:user:create-remote:form', array('values' => $values, 'errors' => $errors)) ?>
- </div>
-
- <div class="form-column">
- <?= $this->form->label(t('Add project member'), 'project_id') ?>
- <?= $this->form->select('project_id', $projects, $values, $errors) ?>
-
- <?= $this->form->label(t('Timezone'), 'timezone') ?>
- <?= $this->form->select('timezone', $timezones, $values, $errors) ?>
-
- <?= $this->form->label(t('Language'), 'language') ?>
- <?= $this->form->select('language', $languages, $values, $errors) ?>
-
- <?= $this->form->label(t('Role'), 'role') ?>
- <?= $this->form->select('role', $roles, $values, $errors) ?>
-
- <?= $this->form->checkbox('notifications_enabled', t('Enable email notifications'), 1, isset($values['notifications_enabled']) && $values['notifications_enabled'] == 1 ? true : false) ?>
- <?= $this->form->checkbox('disable_login_form', t('Disallow login form'), 1, isset($values['disable_login_form']) && $values['disable_login_form'] == 1) ?>
- </div>
- </div>
-
- <?= $this->modal->submitButtons() ?>
-</form>
-<div class="alert alert-info">
- <ul>
- <li><?= t('Remote users do not store their password in Kanboard database, examples: LDAP, Google and Github accounts.') ?></li>
- <li><?= t('If you check the box "Disallow login form", credentials entered in the login form will be ignored.') ?></li>
- </ul>
-</div>
diff --git a/app/Template/user_creation/show.php b/app/Template/user_creation/show.php
new file mode 100644
index 00000000..89838086
--- /dev/null
+++ b/app/Template/user_creation/show.php
@@ -0,0 +1,67 @@
+<div class="page-header">
+ <h2><?= t('New User') ?></h2>
+</div>
+<form method="post" action="<?= $this->url->href('UserCreationController', 'save') ?>" autocomplete="off">
+ <?= $this->form->csrf() ?>
+
+ <div class="form-columns">
+ <div class="form-column">
+ <fieldset>
+ <legend><?= t('Profile') ?></legend>
+
+ <?= $this->form->label(t('Username'), 'username') ?>
+ <?= $this->form->text('username', $values, $errors, array('autofocus', 'required', 'maxlength="50"')) ?>
+
+ <?= $this->form->label(t('Name'), 'name') ?>
+ <?= $this->form->text('name', $values, $errors) ?>
+
+ <?= $this->form->label(t('Email'), 'email') ?>
+ <?= $this->form->email('email', $values, $errors) ?>
+ </fieldset>
+
+ <fieldset>
+ <legend><?= t('Authentication') ?></legend>
+ <?= $this->form->checkbox('is_ldap_user', t('Remote user'), 1, isset($values['is_ldap_user']) && $values['is_ldap_user'] == 1) ?>
+ <p class="form-help"><?= t('If checked, this user will use a third-party system for authentication.') ?></p>
+
+ <?= $this->form->label(t('Password'), 'password') ?>
+ <?= $this->form->password('password', $values, $errors) ?>
+ <p class="form-help"><?= t('The password is necessary only for local users.') ?></p>
+
+ <?= $this->form->label(t('Confirmation'), 'confirmation') ?>
+ <?= $this->form->password('confirmation', $values, $errors) ?>
+ </fieldset>
+ </div>
+
+ <div class="form-column">
+ <fieldset>
+ <legend><?= t('Security') ?></legend>
+
+ <?= $this->form->label(t('Role'), 'role') ?>
+ <?= $this->form->select('role', $roles, $values, $errors) ?>
+
+ <?= $this->form->checkbox('disable_login_form', t('Disallow login form'), 1, isset($values['disable_login_form']) && $values['disable_login_form'] == 1) ?>
+ </fieldset>
+
+ <fieldset>
+ <legend><?= t('Preferences') ?></legend>
+ <?= $this->form->label(t('Timezone'), 'timezone') ?>
+ <?= $this->form->select('timezone', $timezones, $values, $errors) ?>
+
+ <?= $this->form->label(t('Language'), 'language') ?>
+ <?= $this->form->select('language', $languages, $values, $errors) ?>
+
+ <?= $this->form->checkbox('notifications_enabled', t('Enable email notifications'), 1, isset($values['notifications_enabled']) && $values['notifications_enabled'] == 1 ? true : false) ?>
+ </fieldset>
+
+ <fieldset>
+ <legend><?= t('Projects') ?></legend>
+
+ <?= $this->form->label(t('Add this user to project'), 'project_id') ?>
+ <?= $this->form->select('project_id', $projects, $values, $errors) ?>
+ </fieldset>
+ </div>
+ </div>
+
+ <?= $this->modal->submitButtons() ?>
+</form>
diff --git a/app/Template/user_list/show.php b/app/Template/user_list/show.php
index 783a1df7..667945ca 100644
--- a/app/Template/user_list/show.php
+++ b/app/Template/user_list/show.php
@@ -3,10 +3,7 @@
<?php if ($this->user->hasAccess('UserCreationController', 'show')): ?>
<ul>
<li>
- <?= $this->modal->medium('plus', t('New local user'), 'UserCreationController', 'show') ?>
- </li>
- <li>
- <?= $this->modal->medium('plus', t('New remote user'), 'UserCreationController', 'show', array('remote' => 1)) ?>
+ <?= $this->modal->medium('plus', t('New user'), 'UserCreationController', 'show') ?>
</li>
<li>
<?= $this->modal->medium('upload', t('Import'), 'UserImportController', 'show') ?>
diff --git a/app/Template/user_view/layout.php b/app/Template/user_view/layout.php
index c126ad89..8f24adcc 100644
--- a/app/Template/user_view/layout.php
+++ b/app/Template/user_view/layout.php
@@ -6,10 +6,7 @@
<?= $this->url->icon('user', t('All users'), 'UserListController', 'show') ?>
</li>
<li>
- <?= $this->modal->medium('plus', t('New local user'), 'UserCreationController', 'show') ?>
- </li>
- <li>
- <?= $this->modal->medium('plus', t('New remote user'), 'UserCreationController', 'show', array('remote' => 1)) ?>
+ <?= $this->modal->medium('plus', t('New user'), 'UserCreationController', 'show') ?>
</li>
<li>
<?= $this->modal->medium('upload', t('Import'), 'UserImportController', 'show') ?>