Syntax Highlighting

Wednesday 26 November 2014

Getting started with Dialogue for Umbraco


Following a great talk at the 2014 UK Umbraco Festival by Lee Messenger from Aptitude I've was inspired to try Dialogue. Dialogue is an forum package for Umbraco 7 based on MVCForum. The current version is a port into Umbraco, with plans to add new features and functionality as the package evolves. This post details the experience I had trying to get up and running with Dialogue and the pitfalls I encountered.
RTFM!
My first attempt at an install went fine......at first. When I spun the application up in the browser however I encountered the error message
The specified table does not exist [DialogueTopic]
Turns out I had furiously clicked all the defaults when installing Umbraco and was running the site against Sql CE rather than SQL Express. The package has only been tested with Sql Server Express and Sql CE is not supported as detailed here
No post for me?
Once over that hurdle, the next issue I encountered was being unable to create a discussion, or post...... or topic (the UI is a little ambiguous about it's terms). No matter how much I searched I could not find a setting in the default forum created by the package. No settings in the forum to enable posting. No settings against the member. This was all the UI presented;

........and so, to the code
Turns out the display of the "create topic" button is controlled by the following clause in one of the views;
@if (Model.LoggedOnUser != null && Model.LoggedOnUser.DisablePosting != true && Model.UserCanPostTopics)
The test user I created met the first two conditions, but UserCanPostTopics was set to false. A quick post in the Umbraco community forum and a swift response from Dan Lister pointed out that the UserCanPostTopics setting is set against the category.



Each category allows for fine grained permissions. Each member group can have distinct permissions, as you can just about see in the screenshot above. One of these permissions is "Create Topics". Once enabled on the "Dialogue Standard" group the button appeared in the UI and I could create topics. As a suggestion, it might be worth adding this permission by default to the initial category created by the install. 
So far, the package looks great and I'm looking forward to exploring it further in te ecoming weeks.