diff options
author | Bence Ferdinandy <bence@ferdinandy.com> | 2024-04-13 10:45:10 +0200 |
---|---|---|
committer | Robin Jarry <robin@jarry.cc> | 2024-04-13 21:46:49 +0200 |
commit | 777bbb77e806cd127d63f0d19cda38a8ab6ec1fb (patch) | |
tree | 74e9af7757e65be327b6f715c2f3f1d8de48c998 /filters/calendar | |
parent | 771e676953c54aa6c818020687b53470ec5597f3 (diff) | |
download | aerc-777bbb77e806cd127d63f0d19cda38a8ab6ec1fb.tar.gz |
contrib: improve readability of meeting requests
Meeting requests may contain dozens of participants, making the attendee
list potentially very long, hiding one of the most important piece of
information in the request, namely the time of the meeting. Also the
RSVP statuses of participants usually does not carry any information,
since when the meeting is created all participants RSVP status will be
the same (needs-action). The current layout uses three rows for a single
participant, making it hard to glance over quickly. Move the start and
end time of the meeting up into a more prominent place and leave the
variable length attendee list last. Add a quick overview list of
attendees before listing the participations status.
Changelog-changed: Improved readability of the builtin `calendar`
filter.
Signed-off-by: Bence Ferdinandy <bence@ferdinandy.com>
Tested-by: "Matěj Cepl" <mcepl@cepl.eu>
Tested-by: inwit <inwit@sindominio.net>
Acked-by: Robin Jarry <robin@jarry.cc>
Diffstat (limited to 'filters/calendar')
-rwxr-xr-x | filters/calendar | 33 |
1 files changed, 23 insertions, 10 deletions
diff --git a/filters/calendar b/filters/calendar index 2808e13f..8d7e67dc 100755 --- a/filters/calendar +++ b/filters/calendar @@ -161,10 +161,33 @@ BEGIN { is_duplicate = (id in UIDS); if(is_duplicate == 0) { printf fmt, "SUMMARY", unescape(summary, 0) + printf fmt, "START", start_date + printf fmt, "END", end_date + if (intfreq != "") { + printf "\n"fmt, "RECURRENCE", intfreq + if (rcount != "") + printf fmt, "COUNTS", rcount + if (rrend != "") + printf fmt, "END DATE", rrend + + } if(location != "") printf fmt, "LOCATION", location if(organizer != "") printf fmt, "ORGANIZER", organizer + printf " %-14s", "ATTENDEES " + for (idx in people_attending) { + if (idx == 1){ + printf "%s,\n", people_attending[idx] + } + else if (idx == length(people_attending)){ + printf " %-14s%s\n", "", people_attending[idx] + } + else{ + printf " %-14s%s,\n", "", people_attending[idx] + } + } + printf "\n\n %-14s\n", "DETAILED LIST:" for (idx in people_attending) { printf fmt, "ATTENDEE [" idx "]", people_attending[idx] partstat = people_partstat[idx] @@ -176,16 +199,6 @@ BEGIN { printf fmt, "", "RSVP\t" rsvp } } - printf fmt, "START", start_date - printf fmt, "END", end_date - if (intfreq != "") { - printf "\n"fmt, "RECURRENCE", intfreq - if (rcount != "") - printf fmt, "COUNTS", rcount - if (rrend != "") - printf fmt, "END DATE", rrend - - } if(entry != "") print "\n" unescape(entry, 1); UIDS[id] = 1; |