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.

Re: LuxCal 4.7.8 - MySQL and SQLite - released 20 March 2020

Ohh !! Happy to check these new features Roel, waiting for  this release !

Re: LuxCal 4.7.8 - MySQL and SQLite - released 20 March 2020

Hi, I was planning an update for my calendar - but now i will wait for the new release!

I have a question concerning further releases: Is there any plan to remove the "number" field from the database? I am still using this field for special needs. I know, that the field ist not used in the newer releases - so I have to think about how I will solve this problem.
By the way: I am using the field to store the real names of the users.
Would be nice to have such a field in next release.
Or am I the only one who would like to have this type of field?
Greetings and thanks for all this great code!

Re: LuxCal 4.7.8 - MySQL and SQLite - released 20 March 2020

Hi Stefan,
That's a fair question. The number field is still present in the next version 4.7.8.
In a next release we could add a "real name" field to the user profile, but the question is: what are we going to use it for? Should it be displayed somewhere?
I will put it on my list for further consideration.
What are you doing with it?

Roel

Re: LuxCal 4.7.8 - MySQL and SQLite - released 20 March 2020

Hi Roel,

you are right - especially I am thinking from my special needs. I am doing a lot more with your calendar an have some extra pages. For example to organise some volunteers of our parish. It is a long list of them and having some real names gives much more overview an makes it easier to work with.

But even without my extra needs and extra pages:
Think of  a usecase with many users and the right to register themselves. Then you have a lot of fancy user-names  but perhaps you don't know who is behind this names.
Lets say there ist some kind of user manager, who wants to give all these users the apprpriate usergroup  ... dependent on some special taks they have to do.
Wouldn't it be god, to have the real names? Even better to have extra field for first name an surname.
They should be displayed in the user list. By the way - I added a table sort javascript function to the user list. Clicking the column head sorts the list with this column. So its easier to see for example who is in which user group...)

To be honest I would even like to have another field.
I have some other web projects where the user organisation is really important - and with all of them I am happy to have a field to write in some notices/remarks to that special user.

So - now you know why I am looking forward to have some extra fields for the users...
Thanks for listening wink

6 (edited by cousinhub 2020-03-22 11:04:04)

Re: LuxCal 4.7.8 - MySQL and SQLite - released 20 March 2020

Hi Roel,

Updated two major calendars I manage to 4.7.8
Well in fact, made a new install, updating is always squizzy but it's ok when importing the database...

Next step should be a coffee machine and.. oh sorry...  wink
Really nice that you could make my dreams become real ! The added fields and the way we can or not include them on the views or the prints ..
Really thx for this !
I didn't check all the options added but a really god job in this strange period.
Thx again !