====== Project Status ======
| Update forms | Finished | Update setup form for 2020. |
| Update copyright info | In progress | Update copyright info for 2020. |
| Refresh Wiki | In progress | Update pages for 2020. |
| Add stats to wiki | In progress | Add 2019 stats to the wiki. |
| Add "test mode" | | Add "test / staging mode" banner. |
| Change version control system | | Migrate from Subversion to Git. |
| Test code on CentOS-8 | | Test code & update as necessary for CentOS-8. |
| Migrate production servers | | Migrate production servers to CentOS-8. |
| Test DB mirroring | | Test real-time mirroring of databases. |
| Update documentation | | Update documentation for new LAMP stack & RR version. |
| Change links to buttons | | Change some links to buttons, improve wording of "track" button. |
| Improve reporting speed | | Rewrite SQL statements used to generate reports to improve speed for large amounts of data. |
| Fix session cookies | | Session cookies occasionally time out when many staff are logged in, requiring re-authentication. |
| Site host info | | Add "this site hosted by" to page footers. |
| Reports & CSV output | | Use customized field labels for reports & CSV exports. |
| Use custom labels on reports | | Use custom field labels on report headers. |
| Display "date updated" | | Display "date updated" field on staff registration screen. |
| Add field defaults | | Allow some fields to have a default value. |
===== 2019 Changes & Improvements =====
| Update forms | Finished | Update setup form for 2019. |
| Update copyright info | Finished | Update copyright info for 2019. |
| Refresh Wiki | Finished | Update pages for 2019. |
| Update demo site | Finished | Update demo site to reflect new features. |
| Investigate new code editor | Finished | Switch from Komodo Edit to Coda. |
| Add stats to wiki | Finished | Add 2018 stats to the wiki. |
| Migrate customer data to Xataface | Finished | |
===== 2018 Changes & Improvements =====
| Change SSL certificate provider | Finished | |
| Simplify phone input | Finished | Allow phone numbers to be input in a variety of formats. |
| Add new level tracking feature | Finished | Track which prize was given / task completed per level. |
| Add new level tracking data to CSV export | Finished | |
| Update forms | Finished | Update setup form for 2018. |
| Export 2018 site config | Finished | Export 2018 site config to make 2019 setup easier for everyone. |
===== 2017 Changes & Improvements =====
| Update forms | Finished | Update setup form for 2017. |
| Change hosting provider | Finished | Change VPS host. |
| Export 2017 site config | Finished | Export 2017 site config to make 2018 setup easier for everyone. |
===== 2016 Changes & Improvements =====
| Update forms | Finished | Update setup form for 2016. |
Note: 2016 was very busy for me (and went by **way** to fast), so ReadingRecord remained mostly as-is.
===== 2015 Changes & Improvements =====
| Update forms | Finished | Update setup form to reflect new options. |
| Add "self-service" feature | Postponed | Limited interest in this feature. |
| Remove ()'s from registration index | Finished | Remove extra parens from self-registration index page when the program range field is not used. |
| Update CSV export | Finished | Add data from new fields to CSV export. |
===== 2014 Changes & Improvements =====
| Migrate to new LAMP stack | Finished | Migrate to CentOS 6.x & corresponding LAMP versions. |
| Customized field order | Finished | Allow fields to be displayed in any order. |
| Add custom checkbox | Finished | Will display on self-registration & staff screen. |
| Add custom drop-down | Finished | Will display on self-registration & staff screen. |
| Add custom text box | Finished | Will display on self-registration & staff screen. |
| Add staff custom checkbox | Finished | Will display on staff screen only. |
| Add staff custom drop-down | Finished | Will display on staff screen only. |
| Add staff custom text box | Finished | Will display on staff screen only. |
| Freeze DB schema | Finished | Freeze the database design so setup forms & demo sites can be updated. |
| Update demo sites | Finished | Update demo sites to showcase new features. |
| Update forms | Finished | Update setup & customization forms to reflect new options. |
| Add reports | Finished | Add built-in reports for new fields. |
| Update CSV export | Finished | Add data from new fields to CSV export. |
===== 2013 Changes & Improvements =====
^ Task ^ Progress ^ Notes ^
| Add timezone support | Finished | Add support for when library is in a different timezone than the server. |
| Label customization | Finished | Allow all section & field labels to be customized. |
| Add guardian fields | Finished | Add guardian name, phone, e-mail & barcode fields. |
| Add gender field | Finished | |
| Add DOB field | Finished | Will be a fill-in-the blank field for 2013. |
| Add consent checkbox | Finished | "I agree to let the library collect this information" checkbox & info. |
| Cleanup file locations | Finished | Cleanup file & directory locations to make distribution, installation & upgrades easier. |
| Set fields as optional or required | Finished | When enabled, allow fields to be optional or required. |
| Update search page | Finished | Add guardian name to search page. |
| Export consent field | Finished | Add consent field to CSV exports. |
===== 2012 Changes & Improvements =====
^ Task ^ Progress ^ Notes ^
| Improve reporting speed | Moved to 2013 | Rewrite SQL statements used to generate reports to improve speed for large amounts of data. |
| Fix session cookies | Moved to 2013 | Session cookies occasionally time out when many staff are logged in, requiring re-authentication. |
| Add timezone support | Moved to 2013 | Add support for when library is in a different timezone than the server. **RR won't be available outside Colorado in 2012, so no need for this feature yet.** |
===== 2011 Changes & Improvements =====
No changes & improvements were made in 2011 as I was in the process of determining if ReadingRecord could be released as open source software and how to make that happen.
===== 2010 Changes & Improvements =====
^ Task ^ Progress ^ Notes ^
| Duplicate checking between programs | Finished | Check for duplicate registrations between programs (optional). |
| Rename programs | Finished | Rename program IDs as number & customize labels/pages via config variables. |
| Increase number of programs | Finished | Increase the maximum number of programs per library from 3 to 6. |
| Move config to DB | Finished | Move configuration variables to database. |
| Increase field size | Finished | Increase the size of various fields (grade, age, level, etc). |
| Increase DB size | Finished | Increase the maximum number of records each table can hold, in particular the participant & completed levels. Currently sufficient for most sites, a bit larger won't hurt. |
| Add level count to CSV | Finished | Add completed levels count to readers CSV output. |
| Add record ID to CSV | **Skipped** | Add record ID to completed levels CSV output. **Not sure this is actually useful, skipping for 2010.** |
| Add barcode search | Finished | Add barcode search to staff menu when barcode field is used. |
| Improve reporting speed | Moved to 2011 | Rewrite SQL statements used to generate reports to improve speed for large amounts of data. |
| Fix session cookies | Moved to 2011 | Session cookies occasionally time out when many staff are logged in, requiring re-authentication. |
| Add barcode to key | **Skipped** | Make the barcode part of the "uniqueness" of each record (OPTIONAL). **No further interest in this feature, skipping for 2010.** |
| Add library to random drawing | Finished | Select which library branch(es) to include when using the random drawing feature. |
| Add timezone support | **Skipped** | Add support for when library is in a different timezone than the server. **RR won't be available outside Colorado in 2010, so no need for this feature yet.** |
| Move reports | Finished | Move report to separate page to keep main staff menu clean. Hide disabled reports. |
| Restrict access to reports | Finished | Restrict reports access to specific logins. |
===== 2009 Changes & Improvements =====
^ Task ^ Progress ^ Notes ^
| Move mailing list | Finished | Mailman server disbanded, mailing list moved to a Google Group. |
| Revise setup/customization forms | Finished | Update forms to include new configuration options. |
| Staff notes field | Finished | Ran out of time to implement in the 2008 version. |
| Simplify DB access | Finished | Use a single MySQL account per site for DB access. |
| Simplify program graphics | Finished | Find an easier way to handle resizing program graphics. |
| Per-site phone number configuration | Finished | Allow phone number field to be customized to include/exclude area code. |
| Add "no phone number" message | Finished | Add error message explaining what phone number to use if the patron doesn't have or doesn't want to give out their phone number. (All zeros or???) |
| Phone number field instructions | Finished | Added formatting instructions to the field label. Pre-populating the field with brief instructions or examples doesn't always display well & requires deletion of the info before entering the phone number. |
| Pre-populate phone number field with area code | Finished | |
| Allow registrations to be deleted | Finished | Allow staff to delete duplicate/bad registrations. Also check & delete associated levels. |
| Copy registration | Finished | Allow staff to copy an existing registration. This would be useful when registering many members of the same family. |
| Toggle between update & track | Finished | Allow staff to toggle between update & track after searching. This can currently be done by updating the registration or completed levels, but it would be nice to be able to do so without requiring an update. |
| Random drawing | Finished | Add a feature to select a random reader for prize drawings, etc. |
| Customize field labels | Finished | Per-site customization of field labels, eg: upcoming grade instead of last grade attended, etc. |
| Customize program names on staff menu | Finished | Label for staff shortcuts to [Add][Update][Track] should use program name instead of being hard-coded. |
| Require valid registration for level completion | Finished | Require the registration to be validated before levels can be marked as complete. Have options for require, warn, auto, ignore? |
| Export data to CSV file. | Finished | Manual export required for 2008. Add code to generate downloadable file. |
===== 2008 First Version ======
==== Reports ====
^ Task ^ Progress ^ Notes ^
| Count of all readers. | Finished | Available from the staff main menu. |
| Count of all completed levels. | Finished | Available from the staff main menu. |
| Count of readers by library. | Finished | |
| Count of completed levels by library. | Finished | |
| List of all registered readers. | Finished | |
| Count of validated & unvalidated readers. | Finished | |
| Count of completed levels by level & library. | Finished | |
| Count of readers by age. | Finished | |
| Count of readers by city. | Finished | |
| Count of readers by zipcode. | Finished | |
| Count of readers by grade. | Finished | |
| Count of readers by school. | Finished | |
| Count of completed levels by age. | Finished | |
| Count of completed levels by city. | Finished | |
| Count of completed levels by zipcode. | Finished | |
| Count of completed levels by grade. | Finished | |
| Count of completed levels by school. | Finished | |
| Export data to CSV file. | Finished | Not quite "user-friendly" for 2008, a data export must be requested. |
| Import data to spreadsheet. | Finished | Importing CSV files to MS Excel or Open Office is quite easy. |
==== Staff Functions ====
^ Task ^ Progress ^ Notes ^
| Create staff login & logout pages. | Finished | |
| Track staff login/session with cookie. | Finished | |
| Create staff main index page. | Finished | |
| Create CSS file for staff pages. | Finished | |
| Create "Search" form. | Finished | |
| Create "New Registration" form. | Finished | |
| Create "Update Registration" form. | Finished | |
| Create "Track Completed Levels" form. | Finished | |
| Deny duplicate registrations/updates. | Finished | Redirect to error page if a duplicate registration is entered/updated. |
==== Patron Functions ====
^ Task ^ Progress ^ Notes ^
| Create index page with program graphics. | Finished | |
| Create CSS file for patron pages. | Finished | |
| Create patron self-registration form. | Finished | |
| Validate all fields on self-registration form. | Finished | Text fields, drop-down fields, etc. |
| Allow self-registration during program only. | Finished | Early self-registration can also be allowed. |
| Deny duplicate registrations. | Finished | Redirect to error page if a duplicate registration is entered. |
==== General Tasks ====
^ Task ^ Progress ^ Notes ^
| Choose & register a domain name. | Finished | "readingrecord.org" chosen & purchased. |
| Create a ReadingRecord logo graphic. | Finished | |
| Create a ReadingRecord favicon graphic. | Finished | |
| Configure DNS servers. | Finished | Internal & external DNS servers up & running. |
| Create a server to host the project. | Finished | LAMP environment hosted on VMware. |
| Create a Wiki for the project. | Finished | DokuWiki installed & configured. Adding & updating content is ongoing. |
| Create a mailing list for the project. | Finished | Added new mailing list to existing mailman server. |
| Design database schema. | Finished | |
| Select development tools. | Finished | Komodo for PHP development & phpMyAdmin for MySQL database administration. |
| Select a version control system. | Finished | Subversion used to track changes in PHP code, CSS files, etc. |
| Create a development environment. | Finished | Apache virtual host for "dev" & "devtest" development websites. |
| Create a testing environment. | Finished | Apache virtual host for "library1" & "library2" testing websites. |
| Create setup/customization forms. | Finished | |
| Create a live environment | Finished | Apache virtual host for live sites. |