#188 Add an Admin Page to Delete a Topic

This function would allow users with access to the admin subsystem to delete a topic - i.e. remove the .wiki and .awiki files from the file system after acknowledging a dialog that they really wanted to do so.

Access to this functionality would be from a form posting to the admin delete page.

The delete page would confirm that the user had appropriate access rights.

It would be possible to enable or disable this functionality from the configuration file.

Discussion

Implemented a page to delete a topic and all its history. Modified the DeleteTopic method to include a boolean to determine whether or not history .awiki files were to be removed at the same time as the topic. This was implemented for both the FileSystem Store and the SQLStore.

Access to the Delete Topic and History functionality is restricted to users with ManageNamespacePermission.

Modified existing unit tests to include the new boolean parameter, where the history file is not deleted. Created unit tests for the FileSystemStore and the SqlStore where the history files are deleted when the topic is deleted. Added a method to implement the GetSqlTopicArchiveInfos stored procedure for the SqlProvider/MockDatabase.