Add user invitations

This commit is contained in:
Frederic Guillot
2017-01-22 22:38:00 -05:00
parent 2f43d365a0
commit 10d96bfd66
20 changed files with 349 additions and 19 deletions

View File

@@ -53,6 +53,7 @@
>
<?php if (isset($no_layout) && $no_layout): ?>
<?= $this->app->flashMessage() ?>
<?= $content_for_layout ?>
<?php else: ?>
<?= $this->hook->render('template:layout:top') ?>

View File

@@ -0,0 +1,12 @@
<p>
<?= t('You have been invited to register on Kanboard.') ?>
</p>
<p>
<?= $this->url->absoluteLink(t('Click here to join your team'), 'UserInviteController', 'signup', array('token' => $token)) ?>
</p>
<?php if ($this->app->config('application_url')): ?>
<hr>
<a href="<?= $this->app->config('application_url') ?>">Kanboard</a>
<?php endif ?>

View File

@@ -0,0 +1,15 @@
<div class="page-header">
<h2><?= t('Invite people') ?></h2>
</div>
<form method="post" action="<?= $this->url->href('UserInviteController', 'save') ?>" autocomplete="off">
<?= $this->form->csrf() ?>
<?= $this->form->label(t('Emails'), 'emails') ?>
<?= $this->form->textarea('emails', $values, $errors, array('required', 'autofocus')) ?>
<p class="form-help"><?= t('Enter one email address by line.') ?></p>
<?= $this->form->label(t('Add these people to this project'), 'project_id') ?>
<?= $this->form->select('project_id', $projects, $values, $errors) ?>
<?= $this->modal->submitButtons() ?>
</form>

View File

@@ -0,0 +1,46 @@
<div class="form-login">
<div class="page-header">
<h2><?= t('Sign-up') ?></h2>
</div>
<form method="post" action="<?= $this->url->href('UserInviteController', 'register', array('token' => $token)) ?>" autocomplete="off">
<?= $this->form->csrf() ?>
<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, array('required')) ?>
</fieldset>
<fieldset>
<legend><?= t('Credentials') ?></legend>
<?= $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')) ?>
</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>
<div class="form-actions">
<button class="btn btn-blue"><?= t('Sign-up') ?></button>
</div>
</form>
</div>

View File

@@ -5,6 +5,9 @@
<li>
<?= $this->modal->medium('plus', t('New user'), 'UserCreationController', 'show') ?>
</li>
<li>
<?= $this->modal->medium('paper-plane', t('Invite people'), 'UserInviteController', 'show') ?>
</li>
<li>
<?= $this->modal->medium('upload', t('Import'), 'UserImportController', 'show') ?>
</li>