[ 
https://issues.apache.org/jira/browse/CAUSEWAY-3509?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Daniel Keir Haywood reassigned CAUSEWAY-3509:
---------------------------------------------

    Fix Version/s:     (was: 2.0.0-RC5)
         Assignee:     (was: Daniel Keir Haywood)

> fullcalendar doesn't show calendar name (used to show as checkboxes)
> --------------------------------------------------------------------
>
>                 Key: CAUSEWAY-3509
>                 URL: https://issues.apache.org/jira/browse/CAUSEWAY-3509
>             Project: Causeway
>          Issue Type: Improvement
>          Components: Ext Wicket Fullcalendar
>    Affects Versions: 2.0.0-RC1
>            Reporter: Daniel Keir Haywood
>            Priority: Minor
>         Attachments: image-2023-07-02-11-19-46-180.png
>
>
> to reproduce in the starter app,
> make SimpleObject implement Calenderable (rather than CalendarEventable):
> {code:java}
> @Override
> public Set<String> getCalendarNames() {
>     return _Sets.of("Check-in", "Check-out");
> }
> @Override
> public Map<String, CalendarEventable> getCalendarEvents() {
>     return _Maps.unmodifiable(
>             "Check-in",  new MyCalendarEventable("Check-in",  () -> 
> getLastCheckedIn()),
>             "Check-out", new MyCalendarEventable("Check-out", () -> 
> getLastCheckedIn().plusDays(5))
>             );
> }
> @SuppressWarnings("CdiManagedBeanInconsistencyInspection")
> @RequiredArgsConstructor
> class MyCalendarEventable implements CalendarEventable {
>     private final String calendarName;
>     private final Supplier<LocalDate> localDateSupplier;
>     @Override
>     public String getCalendarName() {
>         return calendarName;
>     }
>     @Override
>     public CalendarEvent toCalendarEvent() {
>         LocalDate localDate = localDateSupplier.get();
>         return localDate != null
>                 ? toCalendarEvent(localDate)
>                 : null;
>     }
>     private CalendarEvent toCalendarEvent(LocalDate localDate) {
>         ZoneRules zoneRules = 
> clockService.getClock().nowAsOffsetDateTime().toZonedDateTime().getZone().getRules();
>         long epochMillis = localDate.toEpochSecond(LocalTime.MIDNIGHT,
>                 zoneRules.getOffset(localDate.atStartOfDay())) * 1000L;
>         return new CalendarEvent(epochMillis, calendarName, 
> titleService.titleOf(SimpleObject.this), getNotes());
>     }
> }
>  {code}
> is then rendered as:
> !image-2023-07-02-11-19-46-180.png|width=845,height=743!
> We do see that both the events for each domain object are shown, and in 
> different colours, .... but I recall that there used to be a legend to say 
> what the colours meant, and a checkbox to show or hide each such "calendar".
>  
> IN ADDITION:
>  * the "notes" property of the `CalendarEvent`  I think is meant to be for a 
> tooltip, but isn't shown
>  * the mouse cursor changes to an 'edit bar' when hovering over, but should 
> be a hand cursor (to indicate that the end-user can click on the object).
>  
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to