Project assignment 5. Due Wednesday May 6 at 11:59pm

Note: the final project submission due Tuesday, May 12th at 11:59pm, see assignments page for details

User login and authentication; additional features; finalizing the project.
For user login and authentication you need to implement the following using sessions:

  1. User login: a way for the user to log in. It may be a separate page or a form on the side of a page. Check the password against the one stored in the database. If the passwords match, display the user's name on each page to make it easier for the user to see whether they are logged in. Users that log in remain logged in through all pages of the blog, i.e. they should be able to see their log in name and should be able to post and comment on all pages that allow that.
  2. People don't need to be logged in to read the blog, but only users who are logged in should be able to post and comment.
  3. When a user posts a post or a comment, their name must be filled in automatically. If they attempt to post or comment when they are not logged in, an error message should be displayed.
  4. Log out - allow users to log out. At that point the session information should be destroyed. The users should not be able to post or comment anywhere in the blog.

Technical details: use the examples of sessions and password checking given on the resources page. Don not use cookies explicitly - those are used by session functions automatically.

Additional feature(s)

Every team of two students needs to have 2 extra features completed by the end of this project submission.
Please clearly explain your additional features in your submission e-mail.
More ideas for extra features:

  1. Allow posts to be private ('private' is a possible value of post_status in wp_posts). Private posts should only be displayed to users who are logged in.
  2. Upon login show a user links to the last few comments to his/her posts

Requirements for groups of one person

All your features should deal only with commenting but not with posting. You don't need any extra features.

This page is a part of CSci 1101 course web site.