summaryrefslogtreecommitdiffstats
path: root/data/templates/users
diff options
context:
space:
mode:
authorSebastian Reichel <sre@ring0.de>2018-06-29 00:58:19 +0200
committerSebastian Reichel <sre@ring0.de>2018-07-15 22:59:57 +0200
commit22df08c29f6e4566d418e2a80a8279303406a733 (patch)
treedecb3029284b966635855e1684bc07ef9d3c1a6f /data/templates/users
parent17560f8bf49a0be2e0b490159e29f4894fe12cba (diff)
downloadserial-barcode-scanner-22df08c29f6e4566d418e2a80a8279303406a733.tar.bz2
build: switch to meson buildsystem
We build the project with 'meson' now instead of using custom configure script + GNU Makefiles. To build the project, go to the project root directory and use the following commands: Building: meson build cd build ninja Update Language Files: ninja shopsystem-pot ninja shopsystem-update-po Install: DESTDIR=./tmp ninja install
Diffstat (limited to 'data/templates/users')
-rw-r--r--data/templates/users/entry.html123
-rw-r--r--data/templates/users/import-pgp.html22
-rw-r--r--data/templates/users/import.html39
-rw-r--r--data/templates/users/index.html8
-rw-r--r--data/templates/users/invoice.html39
5 files changed, 231 insertions, 0 deletions
diff --git a/data/templates/users/entry.html b/data/templates/users/entry.html
new file mode 100644
index 0000000..b1477c7
--- /dev/null
+++ b/data/templates/users/entry.html
@@ -0,0 +1,123 @@
+<h2>Personal Data</h2>
+
+{{{MESSAGE}}}
+
+<form method="POST" enctype="multipart/form-data" action="#">
+ <table class="table table-bordered table-nonfluid user-entry">
+ <tr><th>ID</th><td>{{{UID}}}</td></tr>
+ <tr>
+ <th>Barcode</th>
+ <td>
+ <canvas id="barcode"></canvas><br>
+ <a href="#" onclick="window.open(code39_url());">Download</a>
+ <br>
+ <a href="https://barcode.tec-it.com/barcode.ashx?translate-esc=off&data=USER%20{{{UID}}}&code=Code39FullASCII&multiplebarcodes=false&unit=Fit&dpi=96&imagetype=png&rotation=0&color=%23000000&bgcolor=%23ffffff&qunit=Mm&quiet=0" target="_blank">Get HighRes Version (external)</a>
+ </td>
+ </tr>
+ <tr><th>Firstname</th><td>{{{FIRSTNAME}}}</td></tr>
+ <tr><th>Lastname</th><td>{{{LASTNAME}}}</td></tr>
+ <tr><th>E-Mail</th><td>{{{EMAIL}}}</td></tr>
+ <tr><th>PGP Key ID</th><td>{{{PGPKEYID}}}</td></tr>
+ <tr><th>Gender</th><td>{{{GENDER}}}</td></tr>
+ <tr><th>Street</th><td>{{{STREET}}}</td></tr>
+ <tr><th>PLZ</th><td>{{{POSTALCODE}}}</td></tr>
+ <tr><th>City</th><td>{{{CITY}}}</td></tr>
+ <tr><th>RFID</th><td>{{{RFID}}}</td></tr>
+ <tr><th colspan="2">Settings</th></tr>
+ <tr><th>Sound theme</th>
+ <td>
+ <form method="POST" enctype="multipart/form-data" action="#">
+ <select class="form-control" name="soundTheme">
+ <option value="##random">~ random ~</option>
+ {{{SOUND_THEMES}}}
+ </select>
+ <input type="submit" class="btn btn-default" value="Update">
+ </form>
+ <br>
+ <a href="https://github.com/ktt-ol/serial-barcode-scanner/tree/master/sounds/user" target="_blank">See Preview</a>
+ </td>
+ </tr>
+ </table>
+</form>
+<form method="POST" enctype="multipart/form-data" action="#">
+ <table class="table table-bordered table-nonfluid user-entry">
+ <tr><th colspan="2">Status Information</th></tr>
+ <tr><th>Disabled</th><td>{{{DISABLED}}}</td></tr>
+ <tr><th>Hidden</th><td>{{{HIDDEN}}}</td></tr>
+ <tr><th colspan="2">Administrative Information</th></tr>
+ <tr><th>Superuser</th><td>{{{ISSUPERUSER}}}</td></tr>
+ <tr><th>Auth Products</th><td><button id="authproductsbutton" type="button" class="btn {{{BTN_AUTH_PRODUCTS}}}" {{{ISADMIN2}}}>{{{HAS_AUTH_PRODUCTS}}}</button></td></tr>
+ <tr><th>Auth Cashbox</th><td><button id="authcashboxbutton" type="button" class="btn {{{BTN_AUTH_CASHBOX}}}" {{{ISADMIN2}}}>{{{HAS_AUTH_CASHBOX}}}</button></td></tr>
+ <tr><th>Auth Users</th><td><button id="authusersbutton" type="button" class="btn {{{BTN_AUTH_USERS}}}" {{{ISADMIN2}}}>{{{HAS_AUTH_USERS}}}</button></td></tr>
+ <tr><th>Invoices</th><td><a href="./{{{UID}}}/invoice">Show</a></td></tr>
+ <tr><th rowspan="3">Password</th><td><input name="password1" placeholder="New Password" type="password" /></td></tr>
+ <tr><td><input name="password2" placeholder="New Password (again)" type="password" /></td></tr>
+ <tr><td><input type="submit" value="Change Password" /></td></tr>
+ </table>
+</form>
+
+<script language="JavaScript">
+code39_init();
+code39_draw("USER {{{UID}}}", true);
+
+
+$('#authproductsbutton').on('click', function (e) {
+ var req = $.getJSON(
+ "/users/{{{UID}}}/toggle_auth_products",
+ function( data ) {
+ if(data["products"] == "false") {
+ $('#authproductsbutton').html("No")
+ $('#authproductsbutton').addClass("btn-danger")
+ $('#authproductsbutton').removeClass("btn-success")
+ } else if(data["products"] == "true") {
+ $('#authproductsbutton').html("Yes")
+ $('#authproductsbutton').addClass("btn-success")
+ $('#authproductsbutton').removeClass("btn-danger")
+ } else {
+ console.error("unknown state")
+ console.info(data)
+ }
+ }
+ );
+});
+
+$('#authcashboxbutton').on('click', function (e) {
+ var req = $.getJSON(
+ "/users/{{{UID}}}/toggle_auth_cashbox",
+ function( data ) {
+ if(data["cashbox"] == "false") {
+ $('#authcashboxbutton').html("No")
+ $('#authcashboxbutton').addClass("btn-danger")
+ $('#authcashboxbutton').removeClass("btn-success")
+ } else if(data["cashbox"] == "true") {
+ $('#authcashboxbutton').html("Yes")
+ $('#authcashboxbutton').addClass("btn-success")
+ $('#authcashboxbutton').removeClass("btn-danger")
+ } else {
+ console.error("unknown state")
+ console.info(data)
+ }
+ }
+ );
+});
+
+$('#authusersbutton').on('click', function (e) {
+ var req = $.getJSON(
+ "/users/{{{UID}}}/toggle_auth_users",
+ function( data ) {
+ if(data["users"] == "false") {
+ $('#authusersbutton').html("No")
+ $('#authusersbutton').addClass("btn-danger")
+ $('#authusersbutton').removeClass("btn-success")
+ } else if(data["users"] == "true") {
+ $('#authusersbutton').html("Yes")
+ $('#authusersbutton').addClass("btn-success")
+ $('#authusersbutton').removeClass("btn-danger")
+ } else {
+ console.error("unknown state")
+ console.info(data)
+ }
+ }
+ );
+});
+</script>
diff --git a/data/templates/users/import-pgp.html b/data/templates/users/import-pgp.html
new file mode 100644
index 0000000..57a5d64
--- /dev/null
+++ b/data/templates/users/import-pgp.html
@@ -0,0 +1,22 @@
+<h2>Import PGP Keys</h2>
+
+<div style="display: {{{STEP1}}}">
+ <form action="#" method="POST" enctype="multipart/form-data" class="form-horizontal">
+ <div class="control-group">
+ <label class="control-label" for="file">Archive File (zip, tar.gz, ...) containing PGP keys</label>
+ <div class="controls">
+ <input type="file" accept="text/csv" name="file"></input>
+ <input type="hidden" name="step" value="1"></input>
+ </div>
+ </div>
+
+ <button class="btn btn-primary" type="submit">Import</button>
+ </form>
+</div>
+
+
+<div style="display: {{{STEP2}}}">
+ <p>The following keys have been found in the archive and imported into the keyring:</p>
+
+ {{{DATA}}}
+</div>
diff --git a/data/templates/users/import.html b/data/templates/users/import.html
new file mode 100644
index 0000000..1a0e6ef
--- /dev/null
+++ b/data/templates/users/import.html
@@ -0,0 +1,39 @@
+<h2>Import Users</h2>
+
+<div class="alert alert-success" style="display: {{{STEP3}}}">
+ <b>CSV Import Done!</b> The System's Database has been updated.
+</div>
+
+<div style="display: {{{STEP1}}}">
+ <form action="#" method="POST" enctype="multipart/form-data" class="form-horizontal">
+ <div class="control-group">
+ <label class="control-label" for="file">CSV File</label>
+ <div class="controls">
+ <input type="file" accept="text/csv" name="file"></input>
+ <input type="hidden" name="step" value="1"></input>
+ </div>
+ </div>
+
+ <button class="btn btn-primary" type="submit">Import</button>
+ </form>
+</div>
+
+<div style="display: {{{STEP23}}}">
+ <table class="table table-bordered">
+ <thead>
+ <tr><th><i class="icon-wrench"></i></th><th>ID</th><th>Firstname</th><th>Lastname</th><th>E-Mail</th><th>Gender</th><th>Street</th><th>Postcode</th><th>City</th><th>PGP</th><th>Hidden</th><th>Disabled</th><th>Joined at</th></tr>
+ </thead>
+ <tbody>
+ {{{DATA1}}}
+ </tbody>
+ </table>
+
+ {{{DATA2}}}.
+
+ <div style="display: {{{STEP2}}}">
+ <form action="#" method="POST" enctype="multipart/form-data" class="form-horizontal">
+ <input type="hidden" name="step" value="2"></input>
+ <button class="btn btn-primary" type="submit">Apply Changes to Database</button>
+ </form>
+ </div>
+</div>
diff --git a/data/templates/users/index.html b/data/templates/users/index.html
new file mode 100644
index 0000000..246e523
--- /dev/null
+++ b/data/templates/users/index.html
@@ -0,0 +1,8 @@
+<table class="sortable table table-bordered table-striped table-condensed">
+ <thead>
+ <tr><th>ID</th></th><th>Name</th></tr>
+ </thead>
+ <tbody>
+ {{{DATA}}}
+ </tbody>
+</table>
diff --git a/data/templates/users/invoice.html b/data/templates/users/invoice.html
new file mode 100644
index 0000000..9a3c1a3
--- /dev/null
+++ b/data/templates/users/invoice.html
@@ -0,0 +1,39 @@
+<h2>Invoice</h2>
+
+<div class="navbar">
+ <div class="navbar-inner">
+ <div class="container">
+ <ul class="nav" role="navigation">
+ <a class="brand" href="#">Choose Invoice Period:</a>
+ <li class="dropdown">
+ <a id="year" class="dropdown-toggle" data-toggle="dropdown" href="#">{{{SELECTEDYEAR}}} <span class="caret"></span></a>
+ <ul class="dropdown-menu" role="menu" aria-labelledby="year" >
+ {{{YEARS}}}
+ </ul>
+ </li>
+ <li class="dropdown">
+ <a id="month" class="dropdown-toggle" data-toggle="dropdown" href="#">{{{SELECTEDMONTH}}} <span class="caret"></span></a>
+ <ul class="dropdown-menu" role="menu" aria-labelledby="month" >
+ {{{MONTHS}}}
+ </ul>
+ </li>
+ <li class="dropdown">
+ <a id="day" class="dropdown-toggle" data-toggle="dropdown" href="#">{{{SELECTEDDAY}}} <span class="caret"></span></a>
+ <ul class="dropdown-menu two-columns" role="menu" aria-labelledby="day" >
+ {{{DAYS}}}
+ </ul>
+ </li>
+ </ul>
+ </div>
+ </div>
+</div>
+
+<table class="table table-bordered table-striped">
+ <thead>
+ <tr><th>Date</th><th>Time</th><th>Product</th><th>Price</th></tr>
+ </thead>
+ <tbody>
+ {{{DATA}}}
+ <tr><th colspan="3">Sum</th><td>{{{SUM}}}</td></tr>
+ </tbody>
+</table>