Implement the irDaemon shutdown method, with logging. (IrDaemonController, IrDaemonControllerProviderFactory)
Implement using correct commands for StartNewRace and RaceFinished in IrDaemonNotifier.
Move PluginDetails to their own class as used by many classes/extensions.
Improve Export interface for IExportManager and IFileExporter to prevent leaky abstraction
Add comments (INotifierProvider, IPluginInformation, IPluginDetails)
Create IProviderConfiguration for configuration settings of plugins in future.
Create Factory and Interface for IRaceStartController components, in order to control how the race starts.
Create Race Objects (RaceLap, RaceSessionHistory)
added probing path to app.config to include dlls in the plugins dir.
updated pdf exporter code to the working code. still doesnt work on stream code though.
this includes creating an export manager, file exporter interface (WIP)
the History pages now use the Model to have a dynamic list of exporters based on plugins available through export manager.
extended race session object to have FastestLap FastestPilotId and FastestPilotName.
correct bug in file upload where someone clicks upload without choosing a file!
added alternating icon in history table for expanding rows on click, will now show plus when minimised, minus when expanded.
start padding out history pages.
update plugin extension points to use PluginDetails object to identify themselves.
implemented last scanned id methods to get last id from real ir daemon code to show on Race Director Page
create PluginLocator implementation.
simplify NotificationManager to use PluginLocator to find plugins
change plugin location code to use reflection to support multiple extension points in the application
centralise content on html pages.
replaced single quote with double.
added full racesession form to create competition race
separate Monitor.cshtml js into own file.
remove js manual redirection as solved server side redirect (Context.AsRedirect)
add methods to create and stop race session in IDbProvider interface.
implement file upload for pilot pictures. Will upload picture, save into /images/ folder, update pilot profile to take new image, delete the old one, and refresh the edit screen.
start padding out Pilots screen with create/edit/delete of Pilot
pad out monitor page.
pad out RaceDirector page, add create race session code for a standard race.
start splitting code into separate js files.