Saturday, November 22, 2008     | Register
To start or answer a thread you will need to login...


Forum Guidelines

Please ensure you follow the bug-raising guidelines (e.g. post the full error from your Event Viewer) if you are raising a support call. To request a feature in a module, please use Feature Requests (unless you want to discuss it here in more detail first). If you have an urgent feature that you would like to see in the product then you should consider a Sponsored Enhancement.

 

First Time User? Make sure you have read the Module Config Guide in the documents folder of each module. Also check out this handy Module Deployment Guide (written by a Smart-Thinker customer!)

Configuration issues and no time to read the Forums/Documentation? See our DotNetNuke Premium Support Service.

 

We need your opinion! Please read our proposed new CrowdSourcing development method and let us know if you would be interested and if it might work.

 
 
  Forums  DotNetNuke  Smart-Thinker W...  Module Configuration Guide - Version 04.03.01
Previous Previous
 
Next Next
New Post 1/31/2008 3:23 PM
Informative
  Rodney Joyce
2908 posts
www.DNNDir.com
1st Level Poster




Module Configuration Guide - Version 04.03.01  (Australia)
Smart-Thinker Wall Module Configuration Guide
Version 04.03.01
 
Thank you for trying the Smart-Thinker Wall module. We hope you find it useful!
 
Overview
Please ensure you have read and adhered to these instructions before contacting support.
If you wish to request a new feature, please use Feature Requests.
If you have found a bug, please raise a support issue by following these steps.
This module guide was written for the configuration on PokerDIY – a poker-related social networking site. Feel free to browse the site to see a live, working example of Wall implementation.
 
Key Information
  • Tested on DotNetNuke 4.5.1 and above. Please note that the next version of this module will requite DNN 4.6.1+ as it will use the core Token Replacement methods.
  • Always test modules on your staging server first. Never install any 3rd party module on to your live server without testing it first.
  • Please adhere to our Licensing Agreement.
  • Do not use caching on this module as it will produce unexpected results.
  • This is not a stand-alone module; it integrates with the other modules in the Smart-Thinker Product Suite.
  • This module works best when using the Smart-Thinker UserProfile module, but it is not mandatory.
  • This module is completely localised so all language strings can be changed or translated
 
Background
The need for a simple collaboration tool was the driving factor for this module – it is loosely designed on the Facebook –style Wall, but it is not designed to replace a Forum module and it’s complex functionality.
 
A Wall can be added any page with a Smart-Thinker Group, Event or UserProfile module to allow simple collaboration or comments between users. It is not designed to be a fully-fledged editor (like a Forum module) – it is supposed to be simple and easy to use. It can also be added to any module that passes an item ID in the querystring in Custom mode – but security rights can not be enforced in this scenario. An example of this is the League Wall module on PokerDIY.
 
Licensing
This module has a Parent/Child portal limit check depending on the License you have. Please see our Licensing Agreement for more information if unsure. You can now view the License that your particular module is using in the Module Settings of the WallTopics control (you need to be logged in as Host)
 
Set up
This is not a stand-alone module; it integrates with the other modules in the Smart-Thinker Product Suite. The module settings control security around a Wall module, which further depend on the “Type” of Wall module (Group/Event/UserProfile/Custom) you have selected. Note that it also only works on pages where a querystring ID variable is passed in (this may change in the future), so you cannot currently add a Wall module to a pre-set Group/Event/Profile page (if you need this feature please raise a Feature Request and we can consider it).
 
We will assume that you have the other Smart-Thinker modules configured and working already. We also will assume you have installed the Smart-Thinker Wall module. We’ll use the Smart-Thinker Groups module on PokerDIY for a live example.
 
Flat Posts or Threaded Topics?
The module has 2 templatable views and a Settings page. The main/default view is the “Topics” view (for want of a better word), and there is a second view which is a “Topic Detail” view, which shows the replies to a Topic. This is the main list of comments/posts/topics (depending on what you want to call them) against an item (Group/Event/Profile etc.). You can then choose if you want to use the module in Facebook-Wall style (no thread hierarchy, all posts are on the same level), or if you want to use it with a one-level hierarchy – e.g. you post a Topic, and other people can either reply to your topic, or post a new Topic (this is the default). If they reply it appears as a reply to the first Topic (and not in the main view), whereas new Topics are on the same level. This model is better for collaboration as you can have a more organized discussion on a thread. You can use the templating tokens to determine which style you want. On PokerDIY we want a simple, flat-level structure like Facebook, so we will disable the second view (Topic Detail).
 
To start, you need to add the “Smart-Thinker - Wall” module to the Group Detail page where you want the Wall. On PokerDIY it is this page:
Note that in the link above we are viewing the Group with a GroupID 16 (the “ID” variable). The TabID is 505 and this is the page we are adding our Wall module to. We are going to add our Wall directly below the existing Groups module.
 
The Wall module will now appear and will be showing a message something like this: “This module has not yet been configured. Click on Settings to configure it.”. We now need to configure the settings, so edit the Module Settings.
 
A quick note on Security:
There are 2 states to be concerned about – who can see the Wall, and who can post on the Wall. You may use different combinations of these states depending on your requirements/website. Note that unauthenticated (logged out)  users can never post on the Wall.
 
For example, on PokerDIY, we are going to follow the Facebook model – we want anyone who can see the Group to be able to be able to see the Wall, but we only want to allow Group members to post on the Wall. You may want to configure your Wall to allow only Group members (or Event Guests, or Profile Friends) to see and post on the Wall. You can play with the Module Settings to achieve the configuration you require. Bear in mind that the View Role Rights take preference – so if you want everyone (logged out users included) to be able to see the Wall, then you need to ensure that the “All Users” role has the “View Module” right. You also need to check that the “Registered Users” role has the “Edit Module” right. The module still checks your module setting to see which “Registered Users” can post (ie. Group Members, Any logged-on user or Group Owners only), but you can stop everyone from posting by removing the Edit right if need be.
 
If you only wanted Group Members to only ever see or post on your Wall, then you should check both View and Edit for the “Registered Users” role. You can of course set up new roles and further refine access if you wish.
 
So, back to the Module Settings, we therefore checked “View Module” against the “All Users” role, and “Edit Module” for the “Registered Users” role (so that if the Group is Public, any visitor (whether logged in or not) can see the Wall but only logged in users can post on it. You can change the other core module settings to suit your site, but do not use caching on the module as it is user-dependant. The Module Actions (Reply/New Post etc.) are dependant on the container so you can control how these are rendered. If you cannot see the Module Actions then try changing to a default DNN container.
 
Wall Topic Settings
You can configure the Wall module to work with Smart-Thinker Groups, Events, UserProfiles or any DNN module that uses an ID in the querystring. We set ours to Groups as we are adding it to our Groups page. You must of course have the other modules installed first. If you select “Custom”, then you need to define the Querystring VariableID – a textbox will appear where you can enter this. For example, on PokerDIY, we have added a Wall module to the poker league view (this is a custom DNN module) and we set the Type to “Custom”. In the URL below,
 
 
the “LID” is the querystring variable, so this we enter “LID” into the “Custom Querystring Variable” textbox setting. This allows the Wall module to integrate with the League module. Note that in this scenario you cannot select who can post on the Wall as the Wall module knows nothing about the League module (unlike the Group/Event and Profile module). For more information on this please ask on our Forums.
 
As mentioned above, we want anyone who can see the Group to be able to see the Wall, so we set “Who can see this Wall” to “Anyone”. This then relies on the role View rights set earlier.
 
We only want Group Members to be able to post, so we set “Who can post on this Wall” to “Owners and Members”. Note that when you are using the Wall against a UserProfile then “Owners and Members” equates to the “Profile Owner and Friends”. If you are using it on an Event it equates to “Event Creator and Invited Guests”. You should be aware that the simple you make the access rights (e.g. “Anyone”), the less database intensive the checks are (and therefore faster). Caching is used to reduce multiple hits to the database each time a Wall is viewed, but it is still worth bearing in mind. Only use “and Members” if you really need it (we do not on PokerDIY).
 
We want a very simple post structure for our Group Wall, so we will turn the “Subject” off, so it is more similar to Facebook where there is just a comment body with no Subject.
 
You can also decide if you want to allow a simple Search Textbox to be shown at the top of each Wall. If you are using the Threaded view then this may make more sense (the search searches ALL Topics on a Wall and shows the top-level topic if it finds any match on any level). We use the simple “flat” view so we will disable the Search Box.
 
Some portal admins like to keep an eye on who is posting on which Walls. It is easy to keep track by selecting a user to be CC’d every time a post is made on this Wall. This is useful for monitoring Wall activity.
 
You can now set up the HTML templates for the different views. The first setting (Topic Item Template) is the item template (i.e. each Topic/post/comment) on the Wall in the default view. The last 2 are only relevant if you are using the module in the threaded hierarchy mode, and handle the display of the Topic detail (Topic Reply Detail Template) and the replies (Topic Reply Item Template). These settings will display the shipped template defaults (which you can restore at anytime by clicking on “Load Default). We recommend that you leave these as is for now (once you have the module working you can start tweaking the templates. We will make one change to the first template (Topic Item Template) as we do not want to bother with the last 2 settings and want a flattened Wall structure. We simple remove the link around the Subject token (so you cannot zoom in on a topic to see it’s replies) from
 
[EDITPOST]<a href="[VIEWREPLIESLINK]">[SUBJECT]</a></div>
to
[EDITPOST] [SUBJECT] </div>.
 
Don’t worry about this step until you have decided how you want to use the module and understand how the templates work. Note that in our example on PokerDIY we actually remove the [SUBJECT] token as well as we are not using Subjects. If you would like to copy or see our PokerDIY template then please ask us on the Forums as it tends to evolve. We’ll be happy to share it with you so you can see how it works!
 
Email Templates
You can edit the email templates for this module using the Language Editor as normal. There are 2 templates per type, e.g. if you are integrating this module with the Smart-Thinker UserGroup module then you may want to edit the NewPostNotificationGroup.Body/Subject language strings. When a user replies to a Post the NewReplyNotificationGroup.Body email is sent. If you are using the Wall module in the flat FB-style manner like we do on PokerDIY (i.e. no threaded Topics), then you do not need to worry about the “Reply” notification strings.
 
The others are NewPostNotificationUserProfile.Body, NewPostNotificationEvent.Body and NewPostNotificationCustom.Body, and then all the Reply emails for each type.
 
A common change most people make is to make the templates “punch-in” to their website. For example, the default says “xyz posted a message on your Wall, log in to read it”, but it would be much more useful if the email had a link saying “xyz (with a clickable profile link) posted on your Group Wall (clickable link that takes you straight to the group in question)”. Here is a sample email that we use to achieve this (you will need to modify it for your own site, but I’m sure you get the idea.):
 
Hi [User:DisplayName],
<p>
<a href=”http://www.pokerdiy.com/Home/PokerPlayerProfile/tabid/391/ID/ [WallPost:CreatedByUserID]/Default.aspx”>[FromUser:DisplayName]</a> has posted on your Wall - <a href="http://www.pokerdiy.com/Groups/PokerGroups/PokerGroup/tabid/505/ID/[WallPost:RelatedID]/Default.aspx">Click here</a> to read it and see the rest of the Group Wall</a> posts.
<p>
Yours Sincerely
<br />The [Portal:PortalName] crew
<br /><a href=http://[Portal:URL]>http://[Portal:URL]</a>
<p>
* This is an automated email from [Portal:PortalName]. Replies are not monitored.
 
You can read more about the different Email Template Tokens and how to edit them here. If you are using multiple Custom Wall Types (we are on PokerDIY, against Leagues and League Games) then you will notice that you need a way of defining multiple Custom Email Types. You can read more about that here.
 
That’s all there is to it! Let us know on the Forums if anything is unclear or you have any suggestions.
 
Email Header and Footer
Included in this module, and with each new release of the other modules, is the concept of an email header and footer. You can read more about this here.
 
Customizations
Feel free to customize the .ascx file to suit your requirements. The language strings can be edited in the normal fashion using the core localization tools (Language Editor). Please let us know if we have missed any language strings in the module.
Please note that we do not strictly support customizations, although we will be happy to help you if you run into trouble.
 
Upgrading
Please consult our Forums if you are unsure or run into problems. Everything should run smoothly but let us know if it does not (as always, we recommend that you do an upgrade on a test system first).
 
Uninstallation
This module can be uninstalled in the normal manner.
 
Source
The source for this module is in C# and was created in Visual Studio 2005 using the WAP project model. Please see our licensing options for information on how to obtain it.
 
If you have any queries then please see Overview section at the top of this document for more information.

Thanks
Rodney
See our modules in action on PokerDIY, a social network for home poker players

Smart-Thinker DotNetNuke Development Blog
 
Previous Previous
 
Next Next
  Forums  DotNetNuke  Smart-Thinker W...  Module Configuration Guide - Version 04.03.01
Top Threads
In the past 1 week, we have 29 new thread(s) and 70 new post(s)
The most popular thread has been Re: Multipaid Sponsored Enhancements
The most active thread has been Multipaid Sponsored Enhancements / Crowdsourcing to improve modules
Smart-Thinker is powered by DotNetNuke - please support us and DotNetNuke - DotNetNuke Powered!
© 2008 Smart-Thinker   |  Privacy Statement  |  Terms Of Use