Release Notes 2019–2020 - olszowka/Zambia GitHub Wiki
Zambia does not have formal releases (yet) so release notes are organized by PR. This page contains all release notes from 2019-2020.
Also see
Summary
This fixes a bug where enforcement of character length policy limits counted bytes rather than characters, i.e. it was unaware of multibyte characters.
Application Notes
None.
Summary
The change creates a message where Zambia users must consent to have data about them collected and retained in order to proceed to use Zambia.
Application Notes
- Add an entry for "REQUIRE_CONSENT" in your
db_name.php
configuration file. - Apply the db patch script
53_data_retention.sql
to your database. - If you enable this feature, ensure the text on the consent page aligns with your convention's policies by using the "Edit Custom Text" page to edit the "Data Retention Consent" text.
Summary
This fixes a bug in the db creation scripts which had incorrect capitalization for the Phases table. Also, now these scripts fully populate the PatchLog table.
Application Notes
This change affects new installations only.
Summary
There is now a new page for administrators to edit custom text. Custom text may now be HTML. The new page will let administrators insert HTML and assist with doing so.
Application Notes
- If you had existing entries in the CustomText table, ensure the values in the
page
column are correct. The values in SampleDBase.dump are correct. Review the display of these entries on the relevant pages and edit in the tool as needed. The wrapping element created by TinyMCE may now be required but be absent from one or more of your entries. Saving an unedited entry in the tool will create the wrapper.
Disregard PR's 86-87; They had bugs and were reverted.
Summary
Small non-functional layout change.
Application Notes
None.
Summary
Small fix to participants editing credentials on profile page when deployments uses non-numeric badgeids.
Application Notes
None.
Summary
Small fix to code tracking self service password requests.
Application Notes
- This change fixes a bug logging self service password requests when users enter bad data from PR 69.
Summary
New parameter in db_name.php
configuration file for the purpose of overriding MYSQL timezone.
Application Notes
- If your php default timezone doesn't match your mysql server default timezone add an entry for "DB_DEFAULT_TIMEZONE" in your
db_name.php
configuration file specifying the time zone. Your MySQL db will have to be configured for named time zones. See https://stackoverflow.com/questions/19023978/should-mysql-have-its-timezone-set-to-utc/19075291#19075291
Summary
3 pages were cut over to Bootstrap 4 and JQuery 3.5. Initial support for more flexible configuration for how your con uses Tracks and Tags.
Application Notes
- Add an entry for "TRACK_TAG_USAGE" in your
db_name.php
configuration file and select one of the four options described indb_name_sample.php
.
Summary
On Chrome browsers, if there were more results than would fit in the window, a scroll bar would not appear to view additional results. This issue is now fixed.
Application Notes
- We don't know which version of Chrome introduced the error. No changes are needed to apply this change.
Disregard PR's 74-76; They had bugs and were reverted.
Summary
Two previous db migration scripts were modified to fix problems with the case of table names.
Application Notes
- The fix affects only MySQL servers with case sensitive identifiers enabled.
Summary
A new script has been added to add users and hash their passwords with new algorithm.
Application Notes
- The new script takes CSV files of users to be added and is somewhat more flexible than the previous script.
Summary
The algorythm for hashing passwords is now more secure. Some other code related to passwords has also been made more secure.
Application Notes
- Applying this code change will break everyone's stored passwords!
- Apply the db patch script
52_password_security.sql
to your database.
Summary
There is a new admin page you can use to edit which pages are current.
Application Notes
- Apply the db patch script
51_admin_phases.sql
to your database. - Ensure the users you want to be able to administer the phases have the "Administrator" role.
- If your db has case sensitive identifiers enabled, see PR 72 for a fixed version of the db migration script.
Summary
For deployments which use an initial default password when creating new users, it is no longer hard coded to "changeme". It is now configurable.
Application Notes
- If your deployment creates new users with an initial default password, you may now configure that password in
db_name.php
.
Summary
There is now a link on the login page which takes users to a page where they can reset their own passwords.
Users must know their badgeid/userid and have a valid email stored in the CongoDump table which they know.
Application Notes
- Apply the db patch script
50_password_reset_self.sql
to your database. - This change requires recent changes PR 65 and PR 64.
- In order to enable users to reset their own passwords by email link you must...
- ... configure an email relay for Zambia to use.
- ... configure a from address to be used for the password reset email.
- ... subscribe to reCAPTCHA service and configure it for Zambia to use.
- ... enable the feature in
db_name.php
- If you do enable users to reset their own passwords you may...
- ... disable staff resetting user email because it is no longer necessary.
- ... create news users without a default initial password because that is no longer necessary. Instead, have users use this password reset mechanism to set their initial password.
- This change fixes a bug with which allows staff page content to be displayed even if the user is logged out from change PR 55.
- This PR has a bug which triggers an error if a user attempts to reset their password and enters bad data more than once. Apply PR 81 for the fix.
Disregard PR's 66-68; They had bugs and were reverted.
Summary
No functionality change, yet. Guzzle is necessary to use reCAPTCHA for self-service password reset.
Application Notes
This change is required for change PR 69.
Summary
No visible functionality change; Change behind the scenes. Swift is necessary to send email for self-service password reset and email merge to participants.
Application Notes
- There are two more optional parameters for mail relay configuration
- If you had already installed swift, you can delete the version you installed.
- This change is required for change PR 66.
Summary
No visible functionality change; only preparatory work on DB Schema.
Application Notes
- Apply the db patch script
49_phases.sql
to your database. - If your db has case sensitive identifiers enabled, see PR 72 for a fixed version of the db migration script.
Summary
There is a new permission atom which controls which staff may edit user passwords.
Application Notes
- Apply the db patch script
48_password_reset_optional.sql
to your database. - Insert rows into the table Permissions to associate any UserRoles you want with permatomid 18 so those users may edit passwords.
Summary
- Make various brainstorm views of sessions compatible with recent change to display tags in more places. PR 49
- Fix problem where Notes for Program Staff on Assign Participants page wasn't saving.
- Small changes to remove deprecated PHP syntax.
Application Notes
None.
Summary
This change is entirely a refactoring of the code to make it more maintainable. There is no functional change.
Application Notes
None.
Summary
- This change is primarily a refactoring of the code to make it more maintainable.
- All code to handle window resizing has been removed and replaced with use of flexbox styling. Therefore Zambia no longer supports IE browser < version 11.
Application Notes
- This PR has a bug which allows staff page contents to be displayed even if the user is logged out. It is fixed by PR 69.
Summary
In several places where the user could search sessions on session title, the title constraint was not actually applied to the query. This bug has been fixed.
Application Notes
None.
Summary
This change is entirely a refactoring of the code to make it more maintainable. There is no functional change. Some unused files were deleted.
Application Notes
None.
Summary
- Rename Publication Characteristics/PubChars to Tags throughout Zambia including schema.
- Add filtering by tags on many searches of sessions.
- Add display of tags in many places.
- Remove some superfluous reports
Application Notes
- Apply the db patch script 47_tags.sql to your database.
- If you are using Brainstorm functionality, do not use this version of code without also using PR 57 which fixes some bugs with this PR.
Summary
The most significant change cleans up syntax of some mySQL queries to avoid errors on newer versions.
Application Notes
None.
Summary
Fixed missing column from the Rooms table in SampleDbase.dump and DemoDbase.dump.
Application Notes
None.
Summary
- Fixes bugs with PR 43
- Significant stylesheet edits
- Delete unused file
Application Notes
None.
Summary
- Add searching within large dropdowns on several pages with choices front end library.
- Refactor file structure of js and css files.
- Delete files from unused front end libaries
Application Notes
- Do not use this version of code without also using PR 44 which fixes some bugs with this PR.
Summary
Reports can now access global constants from db_name.php.
Application Notes
- No standard reports use this capability. It is available for custom reports.
- webpages/reports/configurable_report_sample.php is an example of how to use this capability in a report.
Summary
- The link on the leftmost of the navbar worked only one a few apache/php configurations and was unreliable. It has been removed entirely.
- The roles on the participants general interests page now display in 3 columns.
Application Notes
None.
Summary
This change is entirely a refactoring of the code to make it more maintainable. There is no functional change. Some files were moved.
Application Notes
None.
Summary
- Fix some actual small bugs, mostly in brainstorm section.
- Fix a few misspellings in text.
- Reformat a bunch of code with inconsistent whitespace.
Application Notes
None.
Summary
- Update custom text entries in the db creation scripts.
- Change validation for divisionid for sessions.
Application Notes
Ensure that divisionid 99 is configured as "unspecified" in your database.
Summary
Bug fixes and code cleanup with brainstorm functionality.
Application Notes
None.
Summary
- All specification and configuration for each report is now contained in a single file per report. This arrangement facilitates maintaining a branch with customized reports.
- Reports which output CSV are included in the same report engine and configuration mechanism.
- There is a command to rebuild the report menus after any changes to report configuration which affects them.
Application Notes
The application notes for this change have their own document.