diary/diary.html

428 lines
19 KiB
HTML

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<link rel="stylesheet" type="text/css" href="/main/diary/css/bootstrap.min.css" />
<link rel="stylesheet" type="text/css" href="/main/diary/favicon.css" />
<title>Diary Management
</title>
<script type="text/javascript" src="/main/diary/diary.js">
</script>
</head>
<body>
<div class="container mx-auto" style="width: 80%; margin-left: ($spacer * .25) !important">
<header _id="header">
</header>
<!-- Add new entry -->
<div id="new" _id="new" style="border-width: .2rem; border: solid #f7f7f9; padding: 1.5rem; background-color: #e0eefa;">
<form method="post" action="#" _id="edit">
<h3>New diary record:
</h3>
<div class="form-row">
<input type="hidden" name="do" value="diary" />
<input type="hidden" name="diary:edit:id" _id="id" />
<input type="hidden" _id="hiddens" />
<div class="form-group col-xs-3">
<label for="date">When</label>
<span class="arrow_prev" onclick="change_date('diary:edit:ddate', -1)">
</span>
<span class="form-inline" _id="date">
</span>
<span class="arrow_next" onclick="change_date('diary:edit:ddate', 1)">
</span>
</div>
<div class="from-group col-xs-2">
<label for="person">Engineer</label>
<select name="diary:edit:who" class="custom-select">
<option _id="person">Engineer
</option>
</select>
</div>
<div class="from-group col-xs-3">
<label for="hours">Hours</label>
<input _id="hours" autocomplete="off" type="text" size="2" name="diary:edit:hours" class="form-control" />
</div>
<div class="form-group col-xs-3">
<label for="project">Project</label>
<select name="diary:edit:prj_id" class="custom-select">
<option class="btn btn-primary" _id="project">Project
</option>
</select>
</div>
</div>
<div style="width: 800px; overflow: auto; ">
<textarea name="diary:edit:descr" cols="70" rows="10" class="form-control"></textarea>
</div>
<div>
<button type="submit" value="Submit" class="btn btn-primary btn-sm">Submit / Ctrl+Enter</button>
</div>
</form>
</div>
<hr>
<div>
<form method="post" action="#">
<div id="massapproval" _id="massapproval">
<button type="submit" name="diary:action:verb" value="ApproveAll" class="btn btn-primary btn-sm" _id="edit">Approve All
</button>
<button type="submit" name="diary:action:verb" value="DenyAll" class="btn btn-warning btn-sm" _id="edit">Deny All
</button>
<button type="submit" name="diary:action:verb" value="RejectAll" class="btn btn-danger btn-sm" _id="edit">Reject All
</button>
</div>
</form>
</div>
<!-- Entries to be approved -->
<div id="approvals" _id="approvals">
<h3 class="display-4">Records for approval
</h3>
<hr class="my-4">
<div _id="entries">
<div class="input-group mb-3">
<form method="post" _id="view" action="#">
<input type="hidden" name="do" value="diary" />
<input type="hidden" name="diary:action:id" _id="edit_id" />
<input type="hidden" _id="hiddens" />
<div class="alert alert-info">
<span _id="date">01 Jan 1970
</span>
<span _id="person">Engineer name
</span>
<strong><span _id="hours">100
</span></strong> hour(s);
Project
<span _id="project_name">Project name
</span>
<span class="badge badge-primary badge-pill" _id="project">customer/tag
</span>
</div>
<div style="width: 800px; overflow: auto; margin-left: 10px;">
<pre _id="descr">Work description</pre>
</div>
<div class="timestamp badge">Status:
<span class="badge badge-warning badge-pill" _id="state">valid
</span> created
<span _id="created">2006-10-23 10:20:00
</span>, modified
<span _id="modified">2006-10-24 15:17:00
</span>
</div>
<div _id="appnote" class="form-control">
<span _id="created">01 10 1970
</span>
<span _id="author">Author
</span>:
<span _id="note">Approval note
</span>
</div>
<p>
<textarea name="diary:edit:approval" cols="70" rows="5" class="form-control"></textarea>
</p>
<p>
<button type="submit" name="diary:action:verb" value="Approve" class="btn btn-success btn-sm" _id="edit">Approve
</button>
<button type="submit" name="diary:action:verb" value="Deny" class="btn btn-warning btn-sm" _id="edit">Deny
</button>
<button type="submit" name="diary:action:verb" value="Reject" class="btn btn-danger btn-sm" _id="edit">Reject
</button>
</p>
</form>
</div>
</div>
</div>
<!-- Selection menu -->
<div id="menu" _id="menu" style="border-width: .2rem; border: solid #f7f7f9; padding: 1.5rem; background-color: #e0eefa;">
<form method="get" action="#">
<h3>Select diary records to list:
</h3>
<input type="hidden" name="do" value="diary">
<div class="form-row">
<div class="form-group col-xs-3">
<label for="start_date">From</label>
<span class="form-inline" _id="start_date">
</span>
<small class="form-text text-muted"># - current day or year</small>
</div>
<div class="form-group col-xs-3">
<label for="end_date">To</label>
<span class="form-inline" _id="end_date">
</span>
<small class="form-text text-muted">$ - end of month</small>
</div>
<div class="form-group col-xs-3">
<label for="project">Project</label>
<select name="diary:list:prj_id" class="custom-select">
<option class="btn btn-primary" _id="project">Project
</option>
</select>
</div>
</div>
<div class="form-row">
<div class="form-group col-xs-3">
<select name="diary:list:customer" class="custom-select">
<option _id="customer">Customer
</option>
</select>
</div>
<div class="form-group col-xs-3">
<select name="diary:list:who" class="custom-select">
<option _id="who">Engineer
</option>
</select>
</div>
</div>
<div class="form-check form-group">
<span _id="newest_first"></span>
<label class=" form-check-label" for="newest_first">Newest first</label>
</div>
<div class="form-check form-group">
<span _id="just_stats"></span>
<label class="form-check-label" for="just_stats">Just stats</label>
</div>
<button type="submit" class="btn btn-primary btn-sm">Search
</button>
</form>
</div>
<div _id="nodata" id="nodata">
No entries
</div>
<hr>
<!-- Summary -->
<div _id="detailed_totals" id="detailed_totals">
<h3>Summary
</h3>
<p>Total hours:
<span _id="hours">100
</span>
</p>
<h4>By projects:
</h4>
<ul>
<li _id="customer">
<span _id="name">Name
</span>,
<span _id="hours">1000
</span> hour(s)
<ul>
<li _id="project">
<span _id="name">Name</span> (<span _id="customer">customer</span>/<span _id="tag">tag</span>),
<span _id="hours">100</span> hour(s)
</li>
</ul>
</li>
</ul>
<h4>By engineers:
</h4>
<table class="table table-striped table-hover table-sm">
<caption>Lag: days it took to submit the records, Mon,Tue etc. : average number of hours per day in the selected period (vacations are not handled)</caption>
<thead>
<tr>
<th scope="col">Engineer</th>
<th scope="col">Hours</th>
<th scope="col">Lag</th>
<th scope="col">Mon</th>
<th scope="col">Tue</th>
<th scope="col">Wed</th>
<th scope="col">Thu</th>
<th scope="col">Fri</th>
<th scope="col">Sat</th>
<th scope="col">Sun</th>
</tr>
</thead>
<tbody>
<tr _id="person">
<th scope="row" _id="name"> </th>
<td _id="hours"> </td>
<td _id="delay"> </td>
<td _id="mon_stat"> </td>
<td _id="tue_stat"> </td>
<td _id="wed_stat"> </td>
<td _id="thu_stat"> </td>
<td _id="fri_stat"> </td>
<td _id="sat_stat"> </td>
<td _id="sun_stat"> </td>
</tr>
</tbody>
</table>
</div>
<div _id="totals" id="totals">
<h3>Summary
</h3>
<p>Total hours:
<span _id="hours">100
</span>
</p>
<h4>By projects:
</h4>
<ul>
<li _id="customer">
<span _id="name">Name
</span>,
<span _id="hours">1000
</span> hour(s)
<ul>
<li _id="project">
<span _id="name">Name</span> (<span _id="customer">customer</span>/<span _id="tag">tag</span>),
<span _id="hours">100</span> hour(s)
</li>
</ul>
</li>
</ul>
<h4>By engineers:
</h4>
<ul>
<li _id="person">
<span _id="name">Person
</span>,
<span _id="hours">100
</span> hour(s)
</li>
</ul>
</div>
<hr>
<!-- Details -->
<div _id="details" id="details">
<h3>Details
</h3>
<div _id="entries">
<form _id="view_only" style="margin-top: 3px;" class="card">
<div class="card-body">
<div class="card-title">
<span _id="date">01 Jan 1970
</span>:
<span _id="person">Engineer name
</span>
<span _id="hours">100 hour(s)
</span>;
Project
<span _id="project_name">Project name
</span>
<span class="badge badge-success badge-pill" _id="project">customer/tag
</span>
</div>
<div style="width: 900px; overflow: auto;" class="card-body">
<pre _id="descr">Work description</pre>
</div>
</div>
</form>
<form method="post" _id="view" style="margin-top: 3px;" class="card">
<div class="card-body">
<div class="card-title">
<input type="hidden" name="do" value="diary" />
<input type="hidden" name="diary:list:edit" _id="edit_id" />
<input type="hidden" name="diary:action:id" _id="edit_id" />
<input type="hidden" _id="hiddens" />
<span _id="date">01 Jan 1970
</span>
<span _id="person">Engineer name
</span>
<span _id="hours">100 h
</span>
<span _id="project_name">Project name
</span>
<span class="badge badge-success badge-pill" _id="project">customer/tag
</span>
<button type="submit" name="diary:action:verb" value="Edit" class="btn btn-outline-primary btn-sm" _id="edit">Edit
</button>
<button type="submit" name="diary:action:verb" value="Delete" class="btn btn-outline-secondary btn-sm" _id="edit">Delete
</button>
</div>
<div class="card-body" style="width: 900px; overflow: auto;">
<pre _id="descr">Work description</pre>
</div>
<div _id="appnote" class="appnote">
<p>
<span _id="created">01 10 1970
</span>
<span _id="author">Author
</span>:
<span _id="note">Approval note
</span>
</p>
</div>
<div class="timestamp card-subtitle"><small>Status:
<span _id="state">valid
</span>; created
<span _id="created">2006-10-23 10:20:00
</span>, modified
<span _id="modified">2006-10-24 15:17:00
</span>
</small>
</div>
</div>
</form>
<form method="post" _id="edit" style="margin-top: 3px;" class="card">
<div class="edit">
<h5>Edit diary record:
</h5>
<div class="form-row">
<input type="hidden" name="do" value="diary" />
<input type="hidden" name="diary:edit:id" _id="id" />
<input type="hidden" _id="hiddens" />
<div class="form-group col-xs-3">
<span class="form-inline" _id="date">
</span>
</div>
<div class="form-group col-xs-2">
<select name="diary:edit:who" class="custom-select">
<option _id="person">
</option>
</select>
</div>
<div class="form-group col-xs-3">
<input _id="hours" type="text" size="2" name="diary:edit:hours" class="form-control" />
</div>
<div class="form-group col-xs-3">
<select name="diary:edit:prj_id" class="custom-select">
<option _id="project">Project 1
</option>
</select>
</div>
</div>
<div style="width: 800px; overflow: auto; ">
<textarea name="diary:edit:descr" cols="70" rows="10" _id="descr" class="form-control">Work description</textarea>
</div>
<div _id="approval">
<div _id="appnote" class="form-control form-inline">
<span _id="created">01 10 1970
</span>
<span _id="author">Author
</span>:
<span _id="note">Approval note
</span>
</div>
<p>
<textarea name="diary:edit:approval" cols="70" rows="10">Approval note</textarea>
</p>
</div>
<p>
<button type="submit" value="Submit" class="btn btn-primary btn-sm">Submit / Ctrl+Enter</button>
</p>
</div>
</form>
</div>
</div>
<span _id="footer">
</span>
</div>
</body>
</html>