Add user timetables
This commit is contained in:
44
app/Template/timetable/index.php
Normal file
44
app/Template/timetable/index.php
Normal file
@@ -0,0 +1,44 @@
|
||||
<div class="page-header">
|
||||
<h2><?= t('Timetable') ?></h2>
|
||||
<ul>
|
||||
<li><?= $this->a(t('Day timetable'), 'timetableday', 'index', array('user_id' => $user['id'])) ?></li>
|
||||
<li><?= $this->a(t('Week timetable'), 'timetableweek', 'index', array('user_id' => $user['id'])) ?></li>
|
||||
<li><?= $this->a(t('Time off timetable'), 'timetableoff', 'index', array('user_id' => $user['id'])) ?></li>
|
||||
<li><?= $this->a(t('Overtime timetable'), 'timetableextra', 'index', array('user_id' => $user['id'])) ?></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<form method="get" action="?" autocomplete="off" class="form-inline">
|
||||
|
||||
<?= $this->formHidden('controller', $values) ?>
|
||||
<?= $this->formHidden('action', $values) ?>
|
||||
<?= $this->formHidden('user_id', $values) ?>
|
||||
|
||||
<?= $this->formLabel(t('From'), 'from') ?>
|
||||
<?= $this->formText('from', $values, array(), array(), 'form-date') ?>
|
||||
|
||||
<?= $this->formLabel(t('To'), 'to') ?>
|
||||
<?= $this->formText('to', $values, array(), array(), 'form-date') ?>
|
||||
|
||||
<input type="submit" value="<?= t('Execute') ?>" class="btn btn-blue"/>
|
||||
</form>
|
||||
|
||||
<?php if (! empty($timetable)): ?>
|
||||
<hr/>
|
||||
<h3><?= t('Work timetable') ?></h3>
|
||||
<table class="table-fixed table-stripped">
|
||||
<tr>
|
||||
<th><?= t('Day') ?></th>
|
||||
<th><?= t('Start') ?></th>
|
||||
<th><?= t('End') ?></th>
|
||||
</tr>
|
||||
<?php foreach ($timetable as $slot): ?>
|
||||
<tr>
|
||||
<td><?= dt('%B %e, %Y', $slot[0]->getTimestamp()) ?></td>
|
||||
<td><?= dt('%k:%M %p', $slot[0]->getTimestamp()) ?></td>
|
||||
<td><?= dt('%k:%M %p', $slot[1]->getTimestamp()) ?></td>
|
||||
</tr>
|
||||
<?php endforeach ?>
|
||||
</table>
|
||||
|
||||
<?php endif ?>
|
||||
45
app/Template/timetable_day/index.php
Normal file
45
app/Template/timetable_day/index.php
Normal file
@@ -0,0 +1,45 @@
|
||||
<div class="page-header">
|
||||
<h2><?= t('Day timetable') ?></h2>
|
||||
</div>
|
||||
|
||||
<?php if (! empty($timetable)): ?>
|
||||
|
||||
<table class="table-fixed table-stripped">
|
||||
<tr>
|
||||
<th><?= t('Start time') ?></th>
|
||||
<th><?= t('End time') ?></th>
|
||||
<th><?= t('Action') ?></th>
|
||||
</tr>
|
||||
<?php foreach ($timetable as $slot): ?>
|
||||
<tr>
|
||||
<td><?= $slot['start'] ?></td>
|
||||
<td><?= $slot['end'] ?></td>
|
||||
<td>
|
||||
<?= $this->a(t('Remove'), 'timetableday', 'confirm', array('user_id' => $user['id'], 'slot_id' => $slot['id'])) ?>
|
||||
</td>
|
||||
</tr>
|
||||
<?php endforeach ?>
|
||||
</table>
|
||||
|
||||
<h3><?= t('Add new time slot') ?></h3>
|
||||
<?php endif ?>
|
||||
|
||||
<form method="post" action="<?= $this->u('timetableday', 'save', array('user_id' => $user['id'])) ?>" autocomplete="off">
|
||||
|
||||
<?= $this->formHidden('user_id', $values) ?>
|
||||
<?= $this->formCsrf() ?>
|
||||
|
||||
<?= $this->formLabel(t('Start time'), 'start') ?>
|
||||
<?= $this->formSelect('start', $this->getDayHours(), $values, $errors) ?>
|
||||
|
||||
<?= $this->formLabel(t('End time'), 'end') ?>
|
||||
<?= $this->formSelect('end', $this->getDayHours(), $values, $errors) ?>
|
||||
|
||||
<div class="form-actions">
|
||||
<input type="submit" value="<?= t('Save') ?>" class="btn btn-blue"/>
|
||||
</div>
|
||||
</form>
|
||||
|
||||
<p class="alert alert-info">
|
||||
<?= t('This timetable is used when the checkbox "all day" is checked for scheduled time off and overtime.') ?>
|
||||
</p>
|
||||
13
app/Template/timetable_day/remove.php
Normal file
13
app/Template/timetable_day/remove.php
Normal file
@@ -0,0 +1,13 @@
|
||||
<div class="page-header">
|
||||
<h2><?= t('Remove time slot') ?></h2>
|
||||
</div>
|
||||
|
||||
<div class="confirm">
|
||||
<p class="alert alert-info"><?= t('Do you really want to remove this time slot?') ?></p>
|
||||
|
||||
<div class="form-actions">
|
||||
<?= $this->a(t('Yes'), 'timetableday', 'remove', array('user_id' => $user['id'], 'slot_id' => $slot_id), true, 'btn btn-red') ?>
|
||||
<?= t('or') ?>
|
||||
<?= $this->a(t('cancel'), 'timetableday', 'index', array('user_id' => $user['id'])) ?>
|
||||
</div>
|
||||
</div>
|
||||
56
app/Template/timetable_extra/index.php
Normal file
56
app/Template/timetable_extra/index.php
Normal file
@@ -0,0 +1,56 @@
|
||||
<div class="page-header">
|
||||
<h2><?= t('Overtime timetable') ?></h2>
|
||||
</div>
|
||||
|
||||
<?php if (! $paginator->isEmpty()): ?>
|
||||
|
||||
<table class="table-fixed table-stripped">
|
||||
<tr>
|
||||
<th><?= $paginator->order(t('Day'), 'Day') ?></th>
|
||||
<th><?= $paginator->order(t('All day'), 'all_day') ?></th>
|
||||
<th><?= $paginator->order(t('Start time'), 'start') ?></th>
|
||||
<th><?= $paginator->order(t('End time'), 'end') ?></th>
|
||||
<th class="column-40"><?= t('Comment') ?></th>
|
||||
<th><?= t('Action') ?></th>
|
||||
</tr>
|
||||
<?php foreach ($paginator->getCollection() as $slot): ?>
|
||||
<tr>
|
||||
<td><?= $slot['date'] ?></td>
|
||||
<td><?= $slot['all_day'] == 1 ? t('Yes') : t('No') ?></td>
|
||||
<td><?= $slot['start'] ?></td>
|
||||
<td><?= $slot['end'] ?></td>
|
||||
<td><?= $this->e($slot['comment']) ?></td>
|
||||
<td>
|
||||
<?= $this->a(t('Remove'), 'timetableextra', 'confirm', array('user_id' => $user['id'], 'slot_id' => $slot['id'])) ?>
|
||||
</td>
|
||||
</tr>
|
||||
<?php endforeach ?>
|
||||
</table>
|
||||
|
||||
<?= $paginator ?>
|
||||
|
||||
<?php endif ?>
|
||||
|
||||
<form method="post" action="<?= $this->u('timetableextra', 'save', array('user_id' => $user['id'])) ?>" autocomplete="off">
|
||||
|
||||
<?= $this->formHidden('user_id', $values) ?>
|
||||
<?= $this->formCsrf() ?>
|
||||
|
||||
<?= $this->formLabel(t('Day'), 'date') ?>
|
||||
<?= $this->formText('date', $values, $errors, array('required'), 'form-date') ?>
|
||||
|
||||
<?= $this->formCheckbox('all_day', t('All day'), 1) ?>
|
||||
|
||||
<?= $this->formLabel(t('Start time'), 'start') ?>
|
||||
<?= $this->formSelect('start', $this->getDayHours(), $values, $errors) ?>
|
||||
|
||||
<?= $this->formLabel(t('End time'), 'end') ?>
|
||||
<?= $this->formSelect('end', $this->getDayHours(), $values, $errors) ?>
|
||||
|
||||
<?= $this->formLabel(t('Comment'), 'comment') ?>
|
||||
<?= $this->formText('comment', $values, $errors) ?>
|
||||
|
||||
<div class="form-actions">
|
||||
<input type="submit" value="<?= t('Save') ?>" class="btn btn-blue"/>
|
||||
</div>
|
||||
</form>
|
||||
13
app/Template/timetable_extra/remove.php
Normal file
13
app/Template/timetable_extra/remove.php
Normal file
@@ -0,0 +1,13 @@
|
||||
<div class="page-header">
|
||||
<h2><?= t('Remove time slot') ?></h2>
|
||||
</div>
|
||||
|
||||
<div class="confirm">
|
||||
<p class="alert alert-info"><?= t('Do you really want to remove this time slot?') ?></p>
|
||||
|
||||
<div class="form-actions">
|
||||
<?= $this->a(t('Yes'), 'timetableextra', 'remove', array('user_id' => $user['id'], 'slot_id' => $slot_id), true, 'btn btn-red') ?>
|
||||
<?= t('or') ?>
|
||||
<?= $this->a(t('cancel'), 'timetableextra', 'index', array('user_id' => $user['id'])) ?>
|
||||
</div>
|
||||
</div>
|
||||
56
app/Template/timetable_off/index.php
Normal file
56
app/Template/timetable_off/index.php
Normal file
@@ -0,0 +1,56 @@
|
||||
<div class="page-header">
|
||||
<h2><?= t('Time off timetable') ?></h2>
|
||||
</div>
|
||||
|
||||
<?php if (! $paginator->isEmpty()): ?>
|
||||
|
||||
<table class="table-fixed table-stripped">
|
||||
<tr>
|
||||
<th><?= $paginator->order(t('Day'), 'Day') ?></th>
|
||||
<th><?= $paginator->order(t('All day'), 'all_day') ?></th>
|
||||
<th><?= $paginator->order(t('Start time'), 'start') ?></th>
|
||||
<th><?= $paginator->order(t('End time'), 'end') ?></th>
|
||||
<th class="column-40"><?= t('Comment') ?></th>
|
||||
<th><?= t('Action') ?></th>
|
||||
</tr>
|
||||
<?php foreach ($paginator->getCollection() as $slot): ?>
|
||||
<tr>
|
||||
<td><?= $slot['date'] ?></td>
|
||||
<td><?= $slot['all_day'] == 1 ? t('Yes') : t('No') ?></td>
|
||||
<td><?= $slot['start'] ?></td>
|
||||
<td><?= $slot['end'] ?></td>
|
||||
<td><?= $this->e($slot['comment']) ?></td>
|
||||
<td>
|
||||
<?= $this->a(t('Remove'), 'timetableoff', 'confirm', array('user_id' => $user['id'], 'slot_id' => $slot['id'])) ?>
|
||||
</td>
|
||||
</tr>
|
||||
<?php endforeach ?>
|
||||
</table>
|
||||
|
||||
<?= $paginator ?>
|
||||
|
||||
<?php endif ?>
|
||||
|
||||
<form method="post" action="<?= $this->u('timetableoff', 'save', array('user_id' => $user['id'])) ?>" autocomplete="off">
|
||||
|
||||
<?= $this->formHidden('user_id', $values) ?>
|
||||
<?= $this->formCsrf() ?>
|
||||
|
||||
<?= $this->formLabel(t('Day'), 'date') ?>
|
||||
<?= $this->formText('date', $values, $errors, array('required'), 'form-date') ?>
|
||||
|
||||
<?= $this->formCheckbox('all_day', t('All day'), 1) ?>
|
||||
|
||||
<?= $this->formLabel(t('Start time'), 'start') ?>
|
||||
<?= $this->formSelect('start', $this->getDayHours(), $values, $errors) ?>
|
||||
|
||||
<?= $this->formLabel(t('End time'), 'end') ?>
|
||||
<?= $this->formSelect('end', $this->getDayHours(), $values, $errors) ?>
|
||||
|
||||
<?= $this->formLabel(t('Comment'), 'comment') ?>
|
||||
<?= $this->formText('comment', $values, $errors) ?>
|
||||
|
||||
<div class="form-actions">
|
||||
<input type="submit" value="<?= t('Save') ?>" class="btn btn-blue"/>
|
||||
</div>
|
||||
</form>
|
||||
13
app/Template/timetable_off/remove.php
Normal file
13
app/Template/timetable_off/remove.php
Normal file
@@ -0,0 +1,13 @@
|
||||
<div class="page-header">
|
||||
<h2><?= t('Remove time slot') ?></h2>
|
||||
</div>
|
||||
|
||||
<div class="confirm">
|
||||
<p class="alert alert-info"><?= t('Do you really want to remove this time slot?') ?></p>
|
||||
|
||||
<div class="form-actions">
|
||||
<?= $this->a(t('Yes'), 'timetableoff', 'remove', array('user_id' => $user['id'], 'slot_id' => $slot_id), true, 'btn btn-red') ?>
|
||||
<?= t('or') ?>
|
||||
<?= $this->a(t('cancel'), 'timetableoff', 'index', array('user_id' => $user['id'])) ?>
|
||||
</div>
|
||||
</div>
|
||||
46
app/Template/timetable_week/index.php
Normal file
46
app/Template/timetable_week/index.php
Normal file
@@ -0,0 +1,46 @@
|
||||
<div class="page-header">
|
||||
<h2><?= t('Week timetable') ?></h2>
|
||||
</div>
|
||||
|
||||
<?php if (! empty($timetable)): ?>
|
||||
|
||||
<table class="table-fixed table-stripped">
|
||||
<tr>
|
||||
<th><?= t('Day') ?></th>
|
||||
<th><?= t('Start time') ?></th>
|
||||
<th><?= t('End time') ?></th>
|
||||
<th><?= t('Action') ?></th>
|
||||
</tr>
|
||||
<?php foreach ($timetable as $slot): ?>
|
||||
<tr>
|
||||
<td><?= $this->getWeekDay($slot['day']) ?></td>
|
||||
<td><?= $slot['start'] ?></td>
|
||||
<td><?= $slot['end'] ?></td>
|
||||
<td>
|
||||
<?= $this->a(t('Remove'), 'timetableweek', 'confirm', array('user_id' => $user['id'], 'slot_id' => $slot['id'])) ?>
|
||||
</td>
|
||||
</tr>
|
||||
<?php endforeach ?>
|
||||
</table>
|
||||
|
||||
<h3><?= t('Add new time slot') ?></h3>
|
||||
<?php endif ?>
|
||||
|
||||
<form method="post" action="<?= $this->u('timetableweek', 'save', array('user_id' => $user['id'])) ?>" autocomplete="off">
|
||||
|
||||
<?= $this->formHidden('user_id', $values) ?>
|
||||
<?= $this->formCsrf() ?>
|
||||
|
||||
<?= $this->formLabel(t('Day'), 'day') ?>
|
||||
<?= $this->formSelect('day', $this->getWeekDays(), $values, $errors) ?>
|
||||
|
||||
<?= $this->formLabel(t('Start time'), 'start') ?>
|
||||
<?= $this->formSelect('start', $this->getDayHours(), $values, $errors) ?>
|
||||
|
||||
<?= $this->formLabel(t('End time'), 'end') ?>
|
||||
<?= $this->formSelect('end', $this->getDayHours(), $values, $errors) ?>
|
||||
|
||||
<div class="form-actions">
|
||||
<input type="submit" value="<?= t('Save') ?>" class="btn btn-blue"/>
|
||||
</div>
|
||||
</form>
|
||||
13
app/Template/timetable_week/remove.php
Normal file
13
app/Template/timetable_week/remove.php
Normal file
@@ -0,0 +1,13 @@
|
||||
<div class="page-header">
|
||||
<h2><?= t('Remove time slot') ?></h2>
|
||||
</div>
|
||||
|
||||
<div class="confirm">
|
||||
<p class="alert alert-info"><?= t('Do you really want to remove this time slot?') ?></p>
|
||||
|
||||
<div class="form-actions">
|
||||
<?= $this->a(t('Yes'), 'timetableweek', 'remove', array('user_id' => $user['id'], 'slot_id' => $slot_id), true, 'btn btn-red') ?>
|
||||
<?= t('or') ?>
|
||||
<?= $this->a(t('cancel'), 'timetableweek', 'index', array('user_id' => $user['id'])) ?>
|
||||
</div>
|
||||
</div>
|
||||
@@ -43,6 +43,9 @@
|
||||
<li>
|
||||
<?= $this->a(t('Hourly rates'), 'hourlyrate', 'index', array('user_id' => $user['id'])) ?>
|
||||
</li>
|
||||
<li>
|
||||
<?= $this->a(t('Manage timetable'), 'timetable', 'index', array('user_id' => $user['id'])) ?>
|
||||
</li>
|
||||
<?php endif ?>
|
||||
|
||||
<?php if ($this->userSession->isAdmin() && ! $this->userSession->isCurrentUser($user['id'])): ?>
|
||||
|
||||
Reference in New Issue
Block a user