English (United States) English (United Kingdom)
Friday, March 19, 2010

Smart-Thinker DNN Forums
Smart-Thinker DNN Forums

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.

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 U...  StoryFeed Configuration (UserProfile 4.3.12+)
Previous Previous
 
Next Next
New Post 9/15/2008 4:03 PM
Informative
  Rodney Joyce
3227 posts
www.DNNDir.com
1st Level Poster




StoryFeed Configuration (UserProfile 4.3.12+)  (Australia)
Modified By Rodney Joyce  on 9/15/2008 6:40:21 PM)

Overview

The StoryFeed view can be added to profiles, groups, events (with next Event module update) or any entity that supports an ID in the URL (for example, a custom 3rd party module like a poker league)

 

Modules can then publish user events to this feed which appear in the CreatedBy Users feed and show up on their friends feed. This functionality was based on Facebook's story feed.

 

Setting up the Profile Feed

On PokerDIY there are  2 profile pages - one is a "Dashboard" for logged on users where they can maintain their profile (add friends, edit profile etc) and the othere is a public profile page that receives a UserID and shows that profile (Profile Activity - Bottom Right).

 

In this example we'll deal with the latter as everyone can see it. If you wish to see the Logged On Profile page you will need to create an account on PokerDIY.

Add a StoryFeed view to the profile page. Configure the core Module Settings depending on who can see the activity and your site requirements.

  • StoryFeed Integration Type - UserProfile (this should not be changed once set and stories are published)
  • Retrieval Type - This page takes in a UserID so we set this to "Passed-In"
  • Filter Stories By - This setting determines what is shown in the context of the Passed-In or Logged-On user (Passed-In in this case). We want to show only the actions of THIS (Passed-In) user, not all their friends).
  • Who can See - This functions similarily to the Wall - Anyone can see this module but possibly on your site you restrict it to Friends only
  • StoryFeed Template - There is a Header, Item and Footer template that can be used to control that layout of the StoryFeed according to your site. Only HTML can be put in the Header and Footer but there are a number of tokens that can be used in the Item Template.
     

Note: It is important to understand how the StoryFeed and modules interact with each other. It is a disconnected architecture. For example, lets say the Ventrian News Article module was publishing an event each time a user created a News Article. In this case, the Ventrian NA is the Calling Module and the Smart-Thinker UserProfile is the receiving module.

 

The Receiving Module is responsible for displaying the storys and to who the stories are displayed. Once the stories are in the feed it does not change them, style them or manipulate them - it merely checks who is viewing the story and if they can see it based on the module settings (ie. are they a friend of the person who created the story or did they create it themselves).

 

The Calling Module determines when and what is published and fires an update to the StoryFeed module. That is the only communication the module has - it is not linked to that story from then on. Once it has been sent the action text cannot be changed and is stored in the UserProfile module. Any changes to the Calling Module language strings will not affect published feeds.

 

Another example would be the Smart-Thinker Groups module. Although it is in the same product suite it is treated as a 3rd party Calling Module by the StoryFeed. When you join or leave a group an action is published for that GroupID and UserID. It did not make sense to publish Private Group actions as the StoryFeed module is incapable of using business logic to determine who could see a story action. Therefore the groups module does not publish events for private groups.

 

Setting up a Group/Other Feed

You can also add the StoryFeed module to a group/event/other entity to show stories relating to that item. For example, on this demo group you can see who has created the group, who has joined/left (and when) and who has written on the group wall. Add the feed as above and set the type and other settings to achieve this.

 

Punching-In with a StoryFeed action

The action text configuration is entirely configurable/localizable and up to the implementor depending on their site requirements/business. They ship as very basic strings (for example, when you update your profile pics the language string is

[User:DisplayName] updated their profile pic.

 

On PokerDIY this has been changed to make the DisplayName link through to their profile (the same can be applied to the Group etc). This is all stored in the language string (check which view is publishing the event and check the Calling Modules resx files (for example, this is published on the Profile Edit page (UserProfile.ascx.resx). Every site will have a different profile URL so this is stored in the string.

 

<a title="View [User:DisplayName]'s Profile" href="http://www.pokerdiy.com/poker-player-profile/id/[User:UserID].aspx">[User:DisplayName]</a> updated their profile pic.<p/><img alt="[User:DisplayName]" src="http://www.pokerdiy.com/DesktopModules/Smart-Thinker%20-%20UserProfile/Profile.ashx?id=[User:UserID]&w=25" class="profilethumb" />

 



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

Smart-Thinker DotNetNuke Development Blog
 
New Post 10/26/2008 7:12 PM
  Rodney Joyce
3227 posts
www.DNNDir.com
1st Level Poster




Re: StoryFeed Configuration (UserProfile 4.3.12+)  (Australia)

Here is more information on the StoryFeed API and how to integrate your module with the UserProfile Storyfeed. You can see this in action on this DotNetNuke Group (bottom right - Group Activity) or on this poker player profile (bottom right - Profile Activity).


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 U...  StoryFeed Configuration (UserProfile 4.3.12+)
Top Threads Minimize
In the past 1 week, we have 2 new thread(s) and 3 new post(s)
The most popular thread has been Edit Events and Groups
The most active thread has been Edit Events and Groups
In the past 1 week, we have 2 new thread(s) and 3 new post(s)
The most popular thread has been Edit Events and Groups
The most active thread has been Edit Events and Groups
Print  

Smart-Thinker is powered by DotNetNuke - please support us and DotNetNuke - DotNetNuke Powered!
Smart-Thinker is powered by DotNetNuke - please support us and DotNetNuke - DotNetNuke Powered!
© 2008 Smart-Thinker