Topic: LuxCal 4.7.8 - MySQL and SQLite - released 20 March 2020
Highlights
This new LuxCal version 4.7.8 includes interesting new features, improved technical issues and bug-fixes.
Most important new features / improvements:
• New function to print calendar events to a nicely formatted PDF file.
• Templates have been added to the settings page to specify the layout of events shown in Month, Week and Day view.
• The stand-alone "displays" have been revised and a log in and a PDF print option has been added.
This new release has been tested again with the help of John from Denmark. Thank you John, you're a hero!
Hereafter you will find a full summary of all changes since LuxCal version 4.7.7.
New features/Improvements
• A new PDF file printing facility has been added. When selecting the "PDF File" option in the calendar's side menu, a dialog box will appear where the user can select an A4 or A5 PDF file layout and can specify a start and end date; when clicking "OK", a PDF file with the events in the specified date bracket will be produced and offered for download. The printed content of the PDF file (fields to be printed, colors, etc.) is configurable to a high degree by the administrator.To avoid overwriting the configuration settings of the PDF prints, when upgrading to a new calendar version, the PDF configuration files reside in a new "configs" folder. Example PDF configuration files are available in the "samples" sub-folder.
• Two new templates have been added to the settings page, which are used to specify the fields and layout of the events to be displayed in Month view and Week/Day view respectively. Possible fields are: start time, start and end time, event owner, event title, venue, category, extra field 1 and extra field 2. For each of these fields a unique placeholder can be specified in the templates. In addition a special "new line" placeholder is available, so that the event fields can cover several lines. This new feature supersedes the "Show end time in Month view" setting, which therefore has been removed.
• All displays have been upgraded. Display0 - display3 have now a login option and display0, display1 and display2 have a PDF print option. When enabling the log in option, the user rights of the full calendar will apply. So it is for instance now possible to show more details to logged in users. The displays are distributed again with each new calendar version. This will ensure the compatibility of displays with the calendar.
• To avoid overwriting the configuration settings of displays, when upgrading to a new calendar version, the way to tailor the configuration settings of the displays has changed. The displayX.php scripts reside in the calendar's root folder, whilst the configuration files reside in a new "configs" folder. Example configuration files are available in a "samples" sub-folder.
• When enabled on the Settings page, week numbers will be added to the matrix and gantt chart views. The colors of the week days and dates have been aligned with all other headers and the column widths has been increased to make the weekday and date fit for all languages.
• The positioning of the hover box with event details has been improved for the mini calendar and the matrix views with event squares or symbols. Before it was difficult to move the mouse from the mini square to the hover box.
• The layout of the Log In form has been improved. In the previous version it could easily happen that when logging in the user clicked the "Send new password" button instead of the "Log in" button.
• On the Settings page the setting "Event colors based on category / user group" has moved from the Event section to the Views section and an option "no color" has been added.
Technical issues
• To avoid the need for a manual page refresh (Ctrl-F5) after a calendar upgrade, a toolbox.js and css.php reload is forced after a calendar upgrade by adding the calendar version number to the respective tags in the HTML head section.
• The color of the file selection input dialog text was not aligned with the color for buttons selected when styling the calendar and was with dark background colors difficult to read.
• There were several minor problems with the table columns in the event window, which could lead to problems with long event category names. Tables simplified and number of columns reduced. Dates were in some browsers not fully visible and have been given more space.
• iOS - mobile safari bug fix removed. This bug fix was required for old Safari versions. It was a meta name="viewport" tag sent before <!DOCTYPE html> which is not proper HTML.
• Style iframe.csHelp deleted. Style was not used anymore.
• PHP code for the top bar simplified and current date centered independent of calendar title length.
• In the backupDatabase function the INSERT INTO statement now includes a column list before VALUES, which makes the function less prone to SQL errors when using the .sql file to restore the database. The importSqlFile function has been improved to cope with large backup files with several INSERT queries per table. The counting of imported rows is now accurate.
• Measures have been taken to allow the lctools.php script to download calendar back up files.
• The folder for the side panel image files and info area files is now always the "sidepanel" folder and cannot be specified anymore on the Settings page. The files will not be overwritten with a calendar upgrade, because the example files are now stored in the "samples" sub-folder of the sidepanel folder.
Bug fixes
• The scrolling in the hover box with event details did not work.
• The variable $cat with the category parameters of the current event was not set correctly, which resulted in PHP notices, when using PHP 7.4.
• The color of the text on the Log In page took the color of the navigation bar; so if in the UI styling a light text color on the navigation bar was chosen, the text on the Log In page was hard to read.
• When installing the calendar, at the moment of initializing the styles table, the calendar title (assigned to the row "THEME") was not yet available in the settings ($set), which cause a PHP notice message when running PHP 7.4.
• In the makeE function, when producing the address button in the venue field, the full address was also show on narrow displays. This should be the other way around; the full address should be shown on wide displays only.