============================ = LuxCal Development Notes = ============================ Change log - version 4.5.2 ========================== 01. settings, year.php, month.php, week.php, day.php, matrixc.php, matrixu.php, ai-{lang}.php, css.php: To accommodate Muslim countries, which often have their weekend on Friday and Saturday, the start day of the week and the working/weekend days can now be freely chosen. 02. toolboxx.php, styling.php, css.php, ai-{lang}.php: On the Styling page the admin can now choose the border color of buttons when hovered. 03. styling.php: LuxCal version added to the head section of the theme backup files. This version number can later be used to check if a theme backup file is compatible with the currently installed LuxCal version. 04. css.php: In Month, Week and Day view the top position of the scroll box and scroll box header now depend on the base font size. 05. css.php: Right margin (3px) added for radio buttons and check boxes. 06. css.php: For table headers cursor changed to "default". 07. eventform1.php, toolboxx,php: The maximum length of the extra fields 1 and 2 has been increased from 120 to 255 characters. 08. users.php, groups.php, categories.php: The edit and delete buttons formed by square brackets have been replaced by real buttons. 09. categories.php, groups.php: The following option has been added: When adding or editing an event category or a user group and the background color is set to #FFFFFF (white), then the background color in the database will be blank (empty). As a result, events in this category or, when the admin selected "Event colors based on user group", in this group, will have a transparent background. For sub-categories it is done as follows: if the background color is set to #FFFFFF (white), an event with this sub-category selected, will be displayed in the original event colors. 10. header.php: The favicon link has been set back to a separate favicon image in the calendar root. Some users want to use their own favicon. 11. installxxx.php: If the default calendar specified in the installation form does not exist, it will be set to the first calendar in the "all calendars" array. 12. header.php: For the Event window header a JavaScript function has been added which automatically closes the window when the Escape key is pressed. 13. index.php, messaging.php, settings.php, login.php, event.php, lcalcron.php, notify.php, sendchg.php, ai-{lang}.php, ui-{lang}.php: To reduce duplication of PHP code and to standardize email message layouts, the email functions and all general email related code has been put in a separate file called messaging.php. This is also done in preparation of the SMS feature we want to introduce in LuxCal version 4.6. 14. toolbox.php, event.php, eventreport.php, changes.php, sendchg.php, notify.php: makeFullDT function created to ensure a uniform presentation of the full date and time in the various views and messages. 15. index.php: if the calendar is called with URL parameter cD (current date) and the value of cD is 0 (zero), then the calendar will jump to the date of today. 16. users.php: The layout of the Edit user date form has been improved. The text "Only if changing the password" was not spanned over both columns and in certain languages could push away the form fields. 17. display1.php, display2.php: minor changes/improvements. 18. eventform1.php: The hidden line in the event form to remember the variable $mode was accidentally removed, because of this, when adding a recurring event, although the window said "event saved", the event was not created. 19. index.php: What event categories a user can view and edit depends on the selections made in the user group of the user and of the public user. However, if the public user has no read access (priv < 1) or no post rights (privs < 2), the view categories or the edit categories respectively of the public user should not be taken into account. Bug solved. 20. styling.php: The variable fNames was not initialized before scanning the css folder for file names starting with "theme". When no backup theme files present yet, this could lead to PHP errors when opening the restore drop- down list. 21. toolboxx.php, database.php: When restoring SQL files, in the importSqlFile() function, the counter for the new styles table was not initialized, which resulted in a PHP Notice and on the database page the number of records inserted in the styles table was not displayed. 22. settings, toolboxd.php: Converting form field text strings representing an integer into an integer was not done correctly, which made it impossible to enter a numeric string starting with a zero. 23. settings.php: The class to set the "Test email" button to noPrint partially missing, which resulted in a HTML validation error. 24. exportICS.php, expical.php: When exporting the file and the start time of an event was empty, a PHP syntax error could occur. Bug solved. 25. event.php: When sending a reminder "now", and no subcategory selected, the subcategory ID is set to 0 (zero) which causes an "undefined offset: -1" for the subcategory name (cnm). Bug solved. 26. event.php: When adding an event without closing the Event window and then saving it again caused a PHP warning because the added date/time variable was not set. Bug solved. 27. installxxx.php: Validation of form field "New to install" was not working correctly and has been improved. 28. xx-english.php, xx-nederlands.php: The text for "All day" was only showing the text "day". 29. css.php: In the style sheet syntax problems in various border styles solved. The borders of sidebars and overlay boxes were not correctly displayed. 30. index.php, login.php: When logging in and when changing the user language on the login page, the language remained unchanged and was not set to the user language. Problem solved.