Our group study in web design at Haverford High School is going along fine. Last week we finished up learning PHP with database driven websites. All of the participants made their own "user registration" site. These sites had a register page, a list of users, ability to edit or delete a user, and the ability to log in and log off with session cookies. In addition, each participant customized their site using their knowledge of CSS to their favorite colors and fonts.
Last Friday, we gave presentations to our sponsors in the school technology department showing off what we had been working on. Shawn Ard started off by talking about phpMyAdmin and showing off his own personal "Articus" user registration page he had been working on in his free time. Gary Hunt showed off his user's site and talked about it's use of a MySQL database. Sean Maguire showed off his email sending script and his tip calculator he made a few weeks before. Michael Gdovin used his time to show the "black hat" skills he learned with an "email spam" page and a page which would crash the browser when loaded. Michael Plasmeier, group leader, showed off his plans and design for the SeniorQuoter admin site.
This week the participants started working on the SeniorQuoter admin site. Each participant was assigned to be the lead on a particular feature for the first phase. Michael Gdovin will be working on the configuration and install pages. Gary Hunt will be working on the view quotes page and the approval system. Shawn Ard will be working on the Colors and Design sections. Sean Maguire will work on the authentication and admin users. The managing students and passwords section is still open. Michael Plasmeier will coordinate and assist the other participants.
The week got off to an uneven start as Michel Plasmeier rushed to get the framework for the new admin site up and issuing test accounts on his new server. However, it was still a productive week as the team got used to using Subversion to track revisions.
Michael Plasmeier designed the site (using the Wordpress admin theme) and installed the basic framework. This week Michael started to think about the paths SeniorQuoter would run on and he learned how to write a "flat-file" configuration page.
Admin Theme CSS
Shawn Ard cleaned up the interface a bit and started to work on his color configuration page. This page will allow schools to easily customize SeniorQuoter to their school's colors. In the future, this page will have a color wheel (from Drupal) to assist color selection.
Color Page Code so far
Sean Maguire is building the authentication and admin users section. This week he designed the database schema and built the registration, view users, and edit users page.
CREATE TABLE `admin_users` ( `id` int(10) NOT NULL auto_increment, `first_name` varchar(20) NOT NULL, `last_name` varchar(30) NOT NULL, `email` varchar(100) NOT NULL, `password` char(40) NOT NULL, `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP, `authorized_by` int(10) NOT NULL, `lastlogonIP` int(10) NOT NULL, PRIMARY KEY (`id`), UNIQUE KEY `email` (`email`) ) ENGINE=MyISAM;
Gary Hunt finished the listing of quotes page very fast because he clearly knows what he is doing. After that, he started to work on an "approval" system and designed the additional database schema for the system. He will implement this next week.
View Quotes Page Code
Michael Gdovin built the configuration page for SeniorQuoter. This page will collect things like the name of the school and quote length limit and output them into a static configuration file.
Config Page Code
(A daily can be found on ThePlaz.com)
Our group study in web design at Haverford High School is going wonderfully. We are about 2 weeks in and are already done PHP basics. Tomorrow we will start on databases. We're going along much faster than I expected. We were also able to talk about design and CSS a bit. We also did some work with validation and standard XHTML.
Student Work
Friday was the first day of Haverford High School's group study in web design. It was an unexpected extra day, quarters normally change on Mondays. However, this extra day was good because we were able to finalize the participants.
The day started out a bit rough, as there was some problems with the development sever. However, Plaz set aside the server to be fixed over the weekend, and instead lead a discussion on how the internet and PHP works. The discussion went very well due to the small number of participants, causing everyone to be engaged.
Mrs. Jane Greenspun also stopped by. Mrs. Greenspun is the director of technology for Haverford School District and is the mentor for our class. We appreciate her support.
We also would like to thank Mrs. Fish, the publications director for allowing us to use her room and for her continued support (and beta testing) of SeniorQuoter. We would also like to thank Mr. Jeffery Nesbitt, the principal of HHS, for his support in organizing the group study. Also thank you to Blu Talyor for his support along with Mr. Rob Anderson. Without the support of the administration, this group study would not be possible.
More details can be found here about the group study. Stay tuned to seniorquoter.org for planned weekly updates.
SeniorQuoter 1.4.2 fixes a small, but fairly important bug in how characters are counted after a quote is submitted.
Certain special characters (&, ", < and >) were incorrectly counted by the second pass, server side counter, in previous versions of SeniorQuoter, causing quotes which passed the length limits imposed by the "live" JavaScript counter, to be rejected after the quote was submitted. All yearbooks should upgrade to this version to insure that users are not incorrectly told that their quotes are too long. The only file which changed is: '/includes/functions.inc.php', so only that file needs to be overwritten.
Download v1.4.2 from SourceForge
These bugs were found by Haverford High School's Class of 2008. Thank you for putting up with and reporting the bugs!
SeniorQuoter 1.4.1 offers several bug fixes and new configuration options. As always, you can get SeniorQuoter from SourceForge.