Topic: LuxCal 4.7.0 - MySQL and SQLite - released 18 June 2018

Highlights

This new LuxCal version 4.7.0 contains a number of important new features and has quite some technical issues improved and bugs solved.
Most important new features:
• A new thumbnail management page to upload and manage thumbnail images and a more user-friendly way to add thumbnails to events
• A new side menu (hamburger button), replacing the majority of the buttons on the right side of the navigation bar.
Hereafter you will find a full summary of all changes since LuxCal version 4.6.1 . . .

This new release has beens tested with the help of the two extremely competent beta testers John from Denmark and Bill from New Zealand!

New features/Improvements
• A thumbnails management page has been added where users can upload and manage thumbnail images. On the user group page the admin can specify for each user group the thumbnail rights. And on the Settings page the admin can specify the maximum thumbnail image size (W x H).
All thumbnails must be stored in the thumbnails folder. Consequently the thumbnail folder is not shown anymore in the description fields.
• A new section File Uploads has been added to the admin's Settings page, where the accepted file extension and the maximum file size for uploaded attachment files and for uploaded thumbnails can now be specified by the administrator.
• Through the introduction of a side menu, the number of buttons on the right side of the navigation bar has been reduced significantly. The majority of the buttons has been replaced by one 'hamburger' button, which when selected will open the side menu. The menu items shown in the side menu depend on the current page and the user rights. This gain of space is especially important when the calendar is shown on a display or in an area with a limited width.
• The options panel now drops down gently, rather than being shown instantly.
• To have a calendar wide uniform approach to deleting items, on the Categories page, the Users page and the Groups page, the button "Show delete buttons" has been removed. Instead, to avoid users to accidentally delete an item, a confirmation dialog will be shown before deleting the item.
• In the Event window, to avoid users to accidentally delete an event, a confirmation dialog will be shown before deleting the event.
• On the admin's Categories page a minimum gap between two events which may not overlap can be specified.
• On the admin's Category page a check box has been added to select a fixed event duration, rather than a default duration. If checked, when adding or editing an event in this category, a notice will be shown at the top of the Event window and the fields end date, end time and all day will be hidden. When the event is saved, the calendar will automatically add the fixed time duration to the start date and time. If the end time falls on the next day, a multi-day event will be created.
• On the admin's Category page the event duration can now be specified in hours and minutes, rather than just minutes. Since the calendar can now cope with event durations which span more than one day, the upper limit has been extended from 720 minutes to 99 hours and 59 minutes.
• If on the Categories page a default event duration has been specified, when adding or editing an event in this category, a notice will be shown at the top of the Event window.
• A simple visits counter has been added, which can be enabled on the Settings page. When enabled, available visitor or web-bot data will be logged in the
    files respective files logs/hitlog.log and logs/botlog.logs and a counter of visitors and web-bots will be kept in the respective files hitcnt.log and botcnt.log. Users with access right >= manager will see a visits counter of the real visitors in the left lower corner of the calendar. When clicking counter the contents of the logs/hitlog.log file will be shown in a new window. Visits of users with admin rights will not be logged.
• URL and email links have been added to the User Interface Styling page and can now be given their own text and background color.
• Thumbnails shown in the Event Report window are now hyperlinks. When clicked, the thumbnail will be shown full-size in a new window.
• When on the admin's Category page a category symbol has been defined, display0 (aka mini Calendar), will now display this symbol, instead of a mini square (similar to the matrix view).
• Since on the admin pages there is enough space on the navigation bar, the page titles on these pages have moved to the navigation bar.
• Embellishment of the pages Upcoming Events, Added / Edited Deleted Events and Text Search. The page with search results is split in one-day events, multi-day events and recurring events. The latter has been done to avoid repetitions of multi-day events and recurring events.
• If on the Settings page "Send notification of calendar changes" is activated, messages of changed events now also contain for each event the date and time of adding and editing and the names of the owner and editor.


Technical issues
• In the makeE function, for the "td" type events, if no labels have been specified for the extra fields 1 & 2, the colon (:) was still displayed.
• In the Event window the number of columns of the event table were not always correct and the width of column 4 was not defined. On some displays this made the Event window higher than necessary.
• To save some space in the Event window, the max. file size for uploaded attachments is now displayed right of the browse button.
• In the Event window the mail Help "?" was not removed when selecting the Print button.
• The cursor in the Event and Event report windows was not always an arrow in passive areas.
• In the cron job summary the email and SMS reminder recipients were not shown each on an individual line.
• MySQL calendar only. The way to find the calendars in use, based on finding MySQL database tables names in the format xxxx_settings, has been improved. It is now based on the intersection of found table names xxxx_groups and xxxx_styles.
• Function eol2txt changed. Before the crlf characters are converted to text, clfl characters are removed form the start and the end of the source string.
• SQL queries related to testing dates for value '9999-00-00' (no date) have been simplified.
• When a category symbol was defined on the Categories page, in Matrix view these symbols were each displayed on a separate line, rather than in-line with other mini squares or symbols in the same day cell.
• HTML symbols (e.g. ⚫) which can be defined on the Categories page have a number of blank pixels at the top. Because of these blank pixels, in Matrix view and in the display1 (mini calendar), symbols were not vertically aligned with the the mini-squares. Solved.
• Both image links and attachment links are now relative to the calendar root. I.e. "./thumbnails/" and "./attachments/" respectively. This makes these link independent of the location of the calendar and thus improves the portability of the calendar.

Bug fixes
• Dutch language only. The help text for the email list in the Event window did not pop up because of an un-escaped quote in the text of the Dutch language file.
• If on the admin's Settings page in the general template the 7, signifying "added & edited, date, time, name", was removed, in the event window these fields were still displayed.
• Since the introduction of the three log message levels errors, warnings and notices, the cronjob messages produced by the lcalcron.php script were not logged correctly. Solved
• When checking if dates are due for a notification message, for repeating events the check for excluded dates went wrong and produced a PHP notice.
• When cloning (Save as new) an event in a category for which no overlap is allowed, in the overlap test the original event was not taken into account.
• The function repeatText, which creates the repeat text did not treat empty "until dates" (9999-00-00) correctly.

Roel