From f98ceeb68b8a9375bcaf73013c6b9df189bc52a2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B6rg=20Henke?= Date: Tue, 19 Jul 2022 20:23:26 +0200 Subject: [PATCH] added clock --- src/main/resources/static/css/style.css | 5 ++ src/main/resources/static/js/clock.js | 85 ++++++++++++++++++ src/main/resources/static/png/clock.png | Bin 0 -> 13917 bytes .../static/png/favicon/favicon-16x16.png | Bin 0 -> 717 bytes .../static/png/favicon/favicon-32x32.png | Bin 0 -> 648 bytes src/main/resources/templates/done/item.html | 6 +- src/main/resources/templates/layout/main.html | 9 +- 7 files changed, 97 insertions(+), 8 deletions(-) create mode 100644 src/main/resources/static/js/clock.js create mode 100644 src/main/resources/static/png/clock.png create mode 100644 src/main/resources/static/png/favicon/favicon-16x16.png create mode 100644 src/main/resources/static/png/favicon/favicon-32x32.png diff --git a/src/main/resources/static/css/style.css b/src/main/resources/static/css/style.css index df676e7..80b9048 100644 --- a/src/main/resources/static/css/style.css +++ b/src/main/resources/static/css/style.css @@ -238,4 +238,9 @@ body { padding: 8px; border-radius: 4px; border: 1px solid silver; +} + +.clock { + background-image: url("../png/clock.png"); + background-repeat: no-repeat; } \ No newline at end of file diff --git a/src/main/resources/static/js/clock.js b/src/main/resources/static/js/clock.js new file mode 100644 index 0000000..42c40a1 --- /dev/null +++ b/src/main/resources/static/js/clock.js @@ -0,0 +1,85 @@ +'use strict'; + +/** + * Coolock Definition + */ +class Clock { + constructor(size, selector, color, background) { + + var canvas = $(""); + canvas.attr("id", "clockPanel"); + canvas.attr("width", size); + canvas.attr("height", size); + canvas.css("border-radius", "4px"); + canvas.css("background", background); + canvas[0].getContext("2d").canvas.width = size; + canvas[0].getContext("2d").canvas.height = size - 3; // -3 removes unneeded overlap + + $(selector).append(canvas); + var ctx = canvas[0].getContext("2d"); + this.ctx = ctx; + this.size = size; + this.background = background; + this.color = color; + + this.redraw(); + } + + drawCircle = function(ctx, x, y, r, w) { + ctx.strokeStyle = this.color; + ctx.lineWidth = w; + ctx.beginPath(); + ctx.arc(x, y, r, 0, 2 * Math.PI); + ctx.stroke(); + }; + + drawArrow = function(ctx, x1, y1, x2, y2, col) { + ctx.strokeStyle = col; + ctx.fillStyle = this.color; + ctx.lineCap = "round"; + ctx.lineWidth = 2; + ctx.beginPath(); + ctx.moveTo(x1, y1); + ctx.lineTo(x2, y2); + ctx.stroke(); + }; + + redraw = function() { + var ctx = this.ctx; + var color = this.color; + var size = this.size; + var halfSize = size / 2; + var d = new Date(); + var h = d.getHours(); + var m = d.getMinutes(); + var s = d.getSeconds(); + var hoursTotal = (h + m / 60 + s / 3600); + + ctx.clearRect(0, 0, size, size); + + ctx.beginPath(); + ctx.fillStyle = this.background; + ctx.fillRect(0, 0, size, size); + + // small hour pointer + this.drawArrow(ctx, size / 2 + 0.2 * size * Math.cos(hoursTotal * Math.PI / 6 - Math.PI / 2), + size / 2 + 0.2 * size * Math.sin(hoursTotal * Math.PI / 6 - Math.PI / 2), + halfSize, halfSize, color); + + // huge minute pointer + this.drawArrow(ctx, size / 2 + 0.4 * size * Math.cos(6 * (m + s / 60) * Math.PI / 180 - Math.PI / 2), + size / 2 + 0.4 * size * Math.sin(6 * (m + s / 60) * Math.PI / 180 - Math.PI / 2), + halfSize, halfSize, color); + + ctx.beginPath(); + ctx.arc(halfSize, halfSize, 0.04 * size, 0, Math.PI * 2); + + $("#clockPanel").attr("title", this.lz(h) + ":" + this.lz(m) + ":" + this.lz(s)); + + setTimeout(this.redraw.bind(this), 1000); + }; + + lz = function(d) { + return (d > 9) ? "" + d : "0" + d; + } +} \ No newline at end of file diff --git a/src/main/resources/static/png/clock.png b/src/main/resources/static/png/clock.png new file mode 100644 index 0000000000000000000000000000000000000000..08dae5ac7444d91aeca80adedebe5abf45825557 GIT binary patch literal 13917 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/png/favicon/favicon-16x16.png b/src/main/resources/static/png/favicon/favicon-16x16.png new file mode 100644 index 0000000000000000000000000000000000000000..2fd3d386c16586e9c3e0bec1426cb8e09a67be18 GIT binary patch literal 717 zcmV;;0y6!HP)EX>4Tx04R}tkv&MmKpe$iQ>8^J4(%Y~kfG{gK~%(1t5Adrp;ldj$A;m*83c=l&eMYQbVaKqQ`FhG`S86Hjg0 z2Iqa^7%R&v@j3CRNf#u3VPEmlR0?-7k*wF$9Emfo9!tzK)BVfh)c3-)I2SpQP8@ zTKov;+XgPK+nTZmT$n3%>vW02y>eSad^gZEa<4bO1wgWnpw> zWFU8GbZ8()Nlj2!fese{005;)L_t(I%f*wy3Bo`WL}xcqJlK?7h#gpsHQ0lPfD$1> zPIjPCL*hXULOdqBf2?2^VhDNH509CFuSgO-(CA6%I*1Tf1c1UM)ZG&#X^zEekL5Z> zYoxotTEY2k@Tv^}4!6N@f*{bCDqud-0F>K62Tf}j9j?4&6@54pl+Q0V+YC{hL*$PU z^P)ytHrOQEX>4Tx04R}tkv&MmKpe$iQ>8^J4(%Y~kfG{gK~%(1t5Adrp;ldj$A;m*83c=l&eMYQbVaKqQ`FhG`S86Hjg0 z2Iqa^7%R&v@j3CRNf#u3VPEmlR0?-7k*wF$9Emfo9!tzK)BVfh)c3-)I2SpQP8@ zTKov;+XgPK+nTZmTeSad^gZEa<4bO1wgWnpw> zWFU8GbZ8()Nlj2!fese{003Y~L_t(o!(;sa|Nno60R&780}MtTFzNsnax`%`Zov@y zvEOGj3Pv3;>VQ!Pj35V~mwM!uf(#4{42%QaAYma_BXWH}NeD1eYB{dTX*3s%=7P~Q iFzSF&2aGy^SO5UDJRCf7Ihd^g0000 literal 0 HcmV?d00001 diff --git a/src/main/resources/templates/done/item.html b/src/main/resources/templates/done/item.html index 26fbee8..89cc1a0 100644 --- a/src/main/resources/templates/done/item.html +++ b/src/main/resources/templates/done/item.html @@ -29,7 +29,6 @@
- @@ -37,7 +36,7 @@ - +
@@ -48,7 +47,6 @@
- @@ -56,7 +54,7 @@ - +
diff --git a/src/main/resources/templates/layout/main.html b/src/main/resources/templates/layout/main.html index a1ce67d..1822219 100644 --- a/src/main/resources/templates/layout/main.html +++ b/src/main/resources/templates/layout/main.html @@ -8,7 +8,6 @@ - @@ -17,9 +16,8 @@ - - + @@ -45,10 +43,13 @@
  • - + +