diff --git a/build.gradle b/build.gradle index 2701f50..4cfaf60 100644 --- a/build.gradle +++ b/build.gradle @@ -7,7 +7,7 @@ plugins { apply plugin: 'io.spring.dependency-management' group = 'de.jottyfan' -version = '1.4.9' +version = '1.5.0' description = """timetrack""" @@ -29,7 +29,7 @@ dependencies { implementation 'org.apache.logging.log4j:log4j-core:latest.release' implementation 'org.apache.logging.log4j:log4j-to-slf4j:latest.release' - implementation 'org.webjars:bootstrap:5.3.1' + implementation 'org.webjars:bootstrap:5.3.2' implementation 'org.webjars:font-awesome:6.4.2' implementation 'org.webjars:jquery:3.7.1' implementation 'org.webjars:popper.js:2.11.7' diff --git a/src/main/java/de/jottyfan/timetrack/modules/done/DoneController.java b/src/main/java/de/jottyfan/timetrack/modules/done/DoneController.java index e31134c..ac76ba0 100644 --- a/src/main/java/de/jottyfan/timetrack/modules/done/DoneController.java +++ b/src/main/java/de/jottyfan/timetrack/modules/done/DoneController.java @@ -221,14 +221,14 @@ public class DoneController extends CommonController { @PostMapping("/done/slot/upsert") public String upsertSlot(@ModelAttribute("bean") SlotBean bean, Model model) { doneService.upsert(bean, provider.getName()); - return "redirect:/done/list"; + return "redirect:/done/list#div_slot"; } @RolesAllowed("timetrack_user") @GetMapping("/done/slot/{id}/delete") public String deleteSlot(@PathVariable("id") Integer slotId) { doneService.delete(slotId, provider.getName()); - return "redirect:/done/list"; + return "redirect:/done/list#div_slot"; } @RolesAllowed("timetrack_user") @@ -243,7 +243,7 @@ public class DoneController extends CommonController { public String addRange(@ModelAttribute("bean") SlotRangeBean bean) { doneService.addSlotRange(bean.getMinutes(), bean.getFrom(), bean.getUntil(), bean.getReason(), provider.getName(), bean.getIncludeSaturday(), bean.getIncludeSunday()); - return "redirect:/done/list"; + return "redirect:/done/list#div_slot"; } @RolesAllowed("timetrack_user") @@ -251,7 +251,7 @@ public class DoneController extends CommonController { public String oneMonthBack(Model model, @ModelAttribute("doneModel") DoneModel doneModel) { LocalDate day = doneModel.getDay(); doneModel.setDay(day.minusMonths(1)); - return "redirect:/done/list"; + return "redirect:/done/list#div_slot"; } @RolesAllowed("timetrack_user") @@ -259,6 +259,6 @@ public class DoneController extends CommonController { public String oneMonthForward(Model model, @ModelAttribute("doneModel") DoneModel doneModel) { LocalDate day = doneModel.getDay(); doneModel.setDay(day.plusMonths(1)); - return "redirect:/done/list"; + return "redirect:/done/list#div_slot"; } } diff --git a/src/main/resources/static/css/style.css b/src/main/resources/static/css/style.css index f5916c6..3f1fc7e 100644 --- a/src/main/resources/static/css/style.css +++ b/src/main/resources/static/css/style.css @@ -275,50 +275,50 @@ body { } .emphgreen { - font-weight: bolder; color: #136600; - border-radius: 0px 8px 8px 0px; background-image: linear-gradient(to left, #e6e6e6, white); - padding: 4px; } .emphblue { - font-weight: bolder; color: #1a5fb4; background-image: linear-gradient(to left, #e6e6e6, white); - padding: 4px; } .emphorange { - font-weight: bolder; color: #c64600; - border-radius: 0px 8px 8px 0px; background-image: linear-gradient(to left, #e6e6e6, white); - padding: 4px; } .emphred { - font-weight: bolder; color: #a51d2d; - border-radius: 0px 8px 8px 0px; background-image: linear-gradient(to left, #e6e6e6, white); - padding: 4px; } .emphpink { - font-weight: bolder; color: #613583; - border-radius: 0px 8px 8px 0px; background-image: linear-gradient(to left, #e6e6e6, white); - padding: 4px; } .emphgray { - font-weight: bolder; color: #5e5c64; - border-radius: 0px 8px 8px 0px; background-image: linear-gradient(to left, #959595, #cecece); +} + +.unround-border { padding: 4px; + font-weight: bolder; +} + +.round-border { + border-radius: 8px; + font-weight: bolder; + padding: 4px; +} + +.round-border-right { + font-weight: bolder; + padding: 4px; + border-radius: 0px 8px 8px 0px; } .sumfield { diff --git a/src/main/resources/static/js/schedule.js b/src/main/resources/static/js/schedule.js index 6c1ebdf..144c1f2 100644 --- a/src/main/resources/static/js/schedule.js +++ b/src/main/resources/static/js/schedule.js @@ -53,11 +53,15 @@ class Schedule { } time2pixel = function (time, hourHeight) { - var timeArray = time.split(":"); - var hours = parseInt(timeArray[0]); - var minutes = parseInt(timeArray[1]); - var pixels = parseInt((hours + (minutes / 60)) * hourHeight); - return pixels; + if (time == null) { + return 0; + } else { + var timeArray = time.split(":"); + var hours = parseInt(timeArray[0]); + var minutes = parseInt(timeArray[1]); + var pixels = parseInt((hours + (minutes / 60)) * hourHeight); + return pixels; + } } drawSlot = function(ctx, slotNr, from, until, color, fillColor) { diff --git a/src/main/resources/templates/done/list.html b/src/main/resources/templates/done/list.html index d5a47d3..c1ab301 100644 --- a/src/main/resources/templates/done/list.html +++ b/src/main/resources/templates/done/list.html @@ -47,7 +47,7 @@
-