Very basic layout, only throws exceptions for now but one step at a time
Can render a table with the session descriptions, will probably need to change this later to render something prettier
Added the Voting cookie - it is hard-coded to the DDDEA 2013 event for now, we will need to improve this later
Adding the ability to set and retrieve the voting cookies via a simple, including registering and unregistering, but no storing to database yet
Adding to the voting to it's own controller and moving the retrieval and setting to a repository
Some more work on the repository model for voting
Adding some more tests for the voting pages
The VotingCookieRepository can go to the HttpContext without it being passed in to get and set the cookie.
Adding more functionality for voting
Adding more tests around the voting feature and also adding the ability to render the voting controls
Added the data access layer for writing down the votes with the required information only
Added tests to verify that we are removing the votes with the correct information
Ensured that the cookie expires on the date provided, I know the date is hard-coded at the moment but that we can fix for next year
Moved the tests into a voting directory, made them inherit from a common base and added a test to show the saving of the IPAddress
Adding the real implementation of extracting the IP Address from the Headers
Added in the ability to save the user id if the user is logged in
Moved the IUserProvider functionality into IRequestInformationProvider because this is all about extracting information from the request
Added the referrer and the user agent to the vote
Annoyingly you can't read the expiry date out of a cookie that is sent by the browser, so, we have to always set the expiry date
Working on the voting, against my better nature, just delete the votes. You can't negative vote because you need the cookie id to be able to add and remove votes