Database now refers to everything by donor/donation .. and apparently just as i complete this, carolyn has decided to go to both donor/sponsor instead of just donor.. ugh..
- additional_materials: if there are additional materials required if a fair assigns a winner to this award.
- register_winners: to tell the feeder fair that this award is for winners who will participate at the upstream fair
- Add the ability to select category/division mappings specific for each upstream server
- Add some auto-determining code if the cat/div mappings don't exist
a fair_id. This is ignored for regular operation, but now needed to have
multiple students from multiple feeder fairs attached to the same award. (so
we know which ones to delete when we update the winners)
- Load/Save feeder fair awards in the award editor
- Fix all the POSTs in the award editor. .load automatically does a POST if
the data is an array, so we need to call .serializeArray() when we want a
post to happen.
Add countries_code field to provinces table and fix canadian provinces
Populate US States into provinces table
Add config option to Localization tab to enter a 2 letter country code (how to lookuup from countries table?!)
Update emit_province_selector to use country config entry
Add .htaccess rules for the cms
Add cms page display code and convert index.php to pull from the cms
If no page title is passed to send_header(), output the fair name in the <title> tag
'self_nominate', and 'schedule_judges'.
- self_nominate defaults to 'yes' for all new and existing awards. If turned
off, the award will not appear in the student self-nomination pages.
- schedule_judges specifies whether an award should have judges or not, we have
some special awards that students can nominate for but do not require judges
to find the winner. Similarly we have some awards students cannot nominate
for but do require judges to determine a winner. This allows both cases to
be handled.
- Add the ability to draw a static label box (without text)
- Add "self nominated award" 1 through 5 to the student reports
- Add a new report demonstrating how to use the above (this is of the format
Sudbury sent us).
titles (defaults to off)
- Renumber the order of the config variables in Participant Registration, it's
getting a bit crowded
- Fill in some missing types for config variables
- Add a 'total' option to the report generator, to signal that this column
should be added up.
- If total is != zero, it shows the total at the bottom of each table, else, it
shows the number of rows (changed the text to Total: for a total, and Rows:
to show rows, if the total is 0)
tinytext.
- Change the icon_path to somethign SFIAB will like better in the tableeditor
(was wondering why I had no icons in the tableeditor)
- Add a crude maxlength support for text areas
the project number field if blank).
- Add a new number option 'X', which counts among ALL projects, not just the
ones in the same division/cat.
- Add a padding argument to N or X (N0...N9) defaults to 2 for N, and 3 for X.
- Adds 3 columns to the project table:
- projectsort: for storing the expanded text
- projectnumber_seq: for storing the N or X number for projects
- projectsort_seq: for storing the N or X number for the sort order
- Add a new config option for sorting, and expand the text for the
projectnumber.
- Change the default sorting for reports and project lists to use the
projectsort category.
- Remove the gvrsf_tn option from the database, it's not needed now.
public winners page. (defaults to ON, which is the current behaviour)
- Fix pluralization of "Students" for one student. :)
- Change the effort option for judges and tours to a pulldown menu Low=100,
Med=1000, High=10000
{$type}_password_expiry_days. This allows the $config variable to be updated
and everyones password will expire based on the new value. To implement
this, the password expiry column in the users table has been changed to
passwordset, and a PHP script is used to convert the expiry dates to set
dates (based on the _password_expiry_days)
- Cleanup the password entry checking
- Load all config variables for the db_update.php script. Just in case an
update script wants access to $config
number, and an option to create numbers automatically
- Completely remove all references (hopefully) to the Tour ID
- Add a Tour type report
- Rework the student report query so it actually makes sense. It really should
be a whole bunch of left joins based on the students. Using comma (cross)
joins creates situations where if the right side of the join doesn't have
information, it wipes out the left side. (Happened before with emergency
contact info).
- Remove the (two) old custom tour reports
- Add 4 new tour reports to the database:
- ALL tours for the committee, tour list for students,
student emergency contact info for tour coordinators, and
a list of tour assignments for students
activity and percent.
- Add the status update and links to automatically start the "tour assigner".
(Didn't want to call it a scheduler, because someone might thing it's for
assigning tours to timeslots or something)
- Prevent the user from setting zero, or more than one, primary contact.
- Add a primary column to the contacts table, so they can see the automatic
set/unset operations on the primary contact.
Create page text entry for 'invite only' volunteer registration
Create a contact page to contact committee members, and link it into the committees page, and the bottom of the left side menu
- Add a designate field to the schools, to indicate an independent, standard,
private, etc. school. It's not editable yet, but.. eventually.
- Fix generatePassword to use proper string indexing, and remove the
possibility of indexing beyond the end of the string.
- Add "Invite" and "SinglePassword" modes for volunteer registration.
- Update the admin section, add a new volunteers page to contain links to all
volunteer options
already exist, they will be guided through the process of adding a role to
their existing account.
- Do a database update, and merge anyone who has managed to create 2 accounts
into a single account.
- Still testing this, but it seems to be working
reports.php) to existing committee members. New members will get to build
their list up from scratch, but we dont' want to confuse old members that are
use to seeing this list.
reports require admin access) can define a list of reports out of all the
reports, and tag each one with a category and comments.
- Add all except the ceremony scripts as "Custom" reports. The My Reports
system can handle links to custom reports now, but not the ceremony scripts.
They're too special. I think they should be moved out of the Reports Area.
- Clean up some report variables to avoid collisions with local names
($options, and $stock)
- Implment a new screen for report generation that lets the user set the
format, stock, and year of the report.
variable, this will allow the committee to specify exactly what they
wish to collect (and which fields are requried)
- Insert config variables for volunteers and committee
function in the config editor to one that checks where ALL variables marked
with year=-1 exist for FAIRYEAR. If it doesn't, it creates them. This
function gets called in three places:
- On installation
- On rollover
- Whenever the database is updated
We should, now, be able to just insert new variables with year=-1, and they
will be automatically updated for the current year with the default value.
(no more going into the variable editor to make sure the copy is done).
- Fix the superuser account creation in the install script
- Allow user_personal.php to handle committee members
- Add password field if the editer in user_personal has access_super
- Allow a committee member to edit anyone in user_personal.php
- Convert auth_required to user_auth_required, and check for both a user type
and an access level (if committee)
- Convert the committee to the new user system (BIG change :)
- Remove the ^M from admin/committees.php
db.update.$num.php, may contain 2 functions db_update_pre() and
db_update_post() which are run before(pre) and after(post) the SQL file is
applied. If the php script doesn't exist, the behaviour of the update script
is unchanged.
(the committee table isn't in use yet)
- Add 2 new emails for volunteers, a welcome email, and a password recovery email.
- Add a password expiry variable for volunteers
Whipe out all 'from' of info@sfiab.ca (the old default, we dont want others using it!)
When sending emails, if 'from' is empty, use the $config['fairmanageremail']
Add a warning on the communication page if the fair manager email has not been set
Set the default 'from' for new emails to be the fair manager email
NOTE/FIXME: i added the hooks for the two new emails to be sent, but still
need to fill in the substitution values as well as the "to" - no time now,
will do that tomorrow
- Creates a judging team for each special award
- Assigns judges to special awards based on the number of students self
nominated.
- Obeys the judges special award preferences (if enabled), and also
judges that specify if they are a judge for a specific special award
(if enabled).
- Add 2 new config variables.
- Enable the special award scheduler
- Specify the max. number of projects each special award judge can
handle (default: 20)
- Delete an extra blank line in register_participants_students.php
- Overhauled the report generator.. It's more versatile now
- Added 'filter' option to the generator, so you can filter any column by (=,
<=, >=, <, >, IS, IS NOT, LIKE, NOT LIKE). It doesn't support AND or OR
combinations, but that should cover what we need for now. Example: We can
filter "Award Name" LIKE "%Gold%" to generate a report of just the Gold medal
projects.
- Wipe out the report database, and create it again from scratch.
update.48.sql contains an example of how to add additional reports to the
system without knowing the report_ids, because after regions start adding
their own reports, we won't be able to just wipe out the whole report system
to add one.
- We handle more reports now, specifically nametags and table labels, so remove
those files, and update the reports.php file to link the old links to the new
report generator (so people don't get too confused in this transition).
- Beginnings of moving the report generator to proper LEFT JOIN style
constructs instead of just one big massive EQUALS JOIN.
- Add an editor for that generator.. it's not flawless, but it's not hard to
use either.
- Add 19 default reports
- Replace several reports on the report page with the new generator versions
(they pretty much look the same, same info, same sort order, same pagination)
- Add a pulldown menu to the report pages so any report can be generated
- Hardcode add a special award to the top of the list "I do not wish to
nominate for any special awards". Allow the
project_specialawards_link.award_awards_id field to become NULL, and set it
to NULL if the student selects this award.
- Fix the display of the award status based on whether the student has or has
not specified that they do not wish to nominate for special awards.
page to "Divisional Preferences"
- Add the ability for the judges to select special awards they would like to
judge
- Add the ability for a judge to specify that they are a judge for a specific
(one or more) award, and disable the divisional selection for them
Default='yes', meaning the behaviour is the same as the default. 'no' means
that students can self-nominate for awards before the committee receives
their signature form.
the current year
- Add 2 new config options.
- 'participant_student_tshirt_cost' allows the cost of each fair tshirt
to be set (vancouver charges $10 for tshirts, because not all
students want them), this also adds a 'none' option to the tshirt
selection box, and a note indicating the tshirt cost if the costs is
nonzero.
- 'regfee_show_info' adds a "Registration Fee Information" to the main
student registration page, showing a breakdown of the registration
fee computation (including tshirts, per_student and per_project
registration, and indicates the total.
- Convert the tshirt field to VARCHAR(32) instead of enum so the "none" option
described above works, also, some fairs may want to add more optoins, like
female/male sizes.. so turn this into a text field for those fairs. The next
step would be to make a config option for the tshirt options. :)
editor what type of variable to expect. It can be yesno, enum, text
(default), number (unimplemented), or blank (default behaviour of the current
system). In response, the editor will use pull down lists instead of text boxes
for things like "Yes", and "No", or enumerated fields.
- Update the descriptions and type of existing variables.
- Admin can use the tour manager to add tours
- Admin can use the config variables to enable tours, and select the min/max number of tour choices.
- Students will see a "Tour Selection" section of registration, which is incomplete until the student has selected at least a minimum number of tours.... actually, this may be broken.. Need to look at it further..
Add two new projectnumber options: c=category shortform, d=division shortform, eg (JLS01 = Junior, Life Science, Project #01)
Add shortform field for age category
Fix bug in config editor where it was updating values for ALL years, instead of just the current year!
Bump version number to development version
- Missing: Having a project judged more than once by different judging teams is
untested, I don't htink it'll work properly, still working on that part.
- Missing: Auto updating the configuration if any of the variables are missing.
- Missing: A way to preserve judging questions (like willing_chair), so the
user doesn't delete them and break the scheduler, OR, notice saying that the
question has been deleted and the scheduler won't use the chair calculations,
then we need a way to add them back in with the click of a button.
Separate the 'requirement check' into a separate file and run it on both the config page, and as a double check on the actual annealer page incase they decide to manually type in the address or bookmark or somkething.
Update i18n function to accept a third parameter, which is an array that describes the arguments in the string to make translation much easier
Update some of the config/admin pages to make sure i18n is properly used, and that argument descriptions are set
Update invitation system to keep track of the number that have been invited and not allow the school to invite more than they are allowed
Update the schools editor, to allow specifying the max number of projects and whether the max is total for the school, or per age category
Add required fields to the schools table
Update the config variable for special awards registration to allow turning special awards registration off