FlexWiki
Blog Setup in FlexWiki
.
Summary
details how to setup FlexWiki as a full-featured blog

Blog Setup Types

The blog can be setup to support a single blog, or as portal to support separate blogs by many individuals. This version of the portal is designed to support multiple blogs (though only one is active at the time of original publishing). HomePage is an example of a site setup for a single blog.

Properties in Use

Remove the X at the start of the property name.

 :XKeywords: User, HowTo
 :XCreator: JohnDavidson
 :XContributor: 
 :XBlogEntry: Current
 :XPublishedDate: 2008-Oct-06
 :XDenyRead: all
 :XDenyEdit: all
 :XAllowEdit: user:jwdavidson
 :XTitle: How To Wiki with FlexWiki

Blog Entry Property

This property should have one of the 4 values:

  • _MainPage - this is the actual blog page for an individual in a multi-blog site
  • Pending - not yet ready for public consumption
  • Current - The latest entry that has been published
  • Archive - all published entries except for the current entry

This value is used to control access to the entry, in conjunction with the authorization values if present, and how the entry shows in TableOfContents

Published Date Property

This property should be completed when the entry is marked as Current. It will be used to sort the Archive entries in the TableOfContents

Authorization Properties

Setting the DenyRead property to all prevents anyone but the individual(s) with the AllowEdit privilege from accessing the entry. When the BlogEntry property is set to Current the DenyRead property should be modified to become an AllowRead property. The DenyEdit property should remain at all. This will enable everyone to see the entry, but prevent the entry from being modified by any except the individual(s) identified by the AllowEdit property. Comments about the entry can be made by using the Discuss Entry menu item.

WikiTalk Used on HomePage

@@GetBlogList.Collect{ each | ListBlogs(each) }@@

:GetBlogList:{
       namespace.TopicsWith("BlogEntry","_MainPage").Collect{ each | each }.Unique.Sort
}

:ListBlogs:{ aTopic|
      [
        "||{^!} *Topic* ||{!+} *Publisher* ||{^!} *Summary* ||", Newline,
        "||{+} [", aTopic.Name, "] ||{+} ", 
                          aTopic.GetProperty("Creator"), 
                  " || ", aTopic.Summary, " ||", Newline,
      ]  
}

WikiTalk Used on Blog _MainPage

This WikiTalk is used to place the Current BlogEntry on the HomePage and to display the title correctly. This allows the HomePage to be branded with the name of the blog and the authors name, rather than just the title of the current blog. This scheme also facilitates the archiving of blog entries.

@@["!",GetCurrentTopic(GetCreator()).Item(0).GetProperty("Title")]@@

@@["{{",GetCurrentTopic(GetCreator()).Item(0).Name,"}}"]@@


:With: BlogLibrary 

The WikiTalk used in the BlogLibrary

GetCreator:{
     topic.GetProperty("Creator")
}

GetCurrentTopic:{ creator |
namespace.TopicsWith("Creator", creator).Select{ each |
    each.HasProperty("BlogEntry") }.Select { each |
           each.GetProperty("BlogEntry").Equals("Current") }
}

Summary Property in Blog _MainPage

The placement of the Summary property in the individual's blog _MainPage is important. It must come after the WikiTalk code that includes the current entry. This ensures that the description of the blog remains constant as it uses the last value for the Summary property on that topic page.

 :Summary: a blog for JohnDavidson to discuss FlexWiki.FlexWiki development and implementation issues


WikiTalk Used on the BlogEntry page

This WikiTalk is used to provide the links at the bottom of the blog entry for the permanent link and the talkback entries. It uses code functions in the BlogLibrary. The Permalink can be used to store a bookmark to the actual content, even from the HomePage (which is a symbolic link to the topic), or the Permalink can be used to go to the actual topic page itself. The other link at the bottom of the BlogEntry will read either, Create Talkback Topic or just Talkback. The Create Talkback Topic link will go directly to a message input form where the user can supply the information to initiate a talkback discussion topic. If the link reads Talkback that will go to the previously create talkback discussion topic, where the user can read all existing comment on the BlogEntry and enter new comments.

@@ShowBlogLinks("BlogSetupInFlexWiki")@@
@@HiddenTalkBack("BlogSetupInFlexWiki")@@

Navigation Bar

The navigation bar entry Discuss Entry at the top of the topic will behave the same as the Talkback link except that it will also be used to initiate the talkback discussion topic. It uses the HiddenTalkBack function in the BlogLibrary in conjunction with the custom javascript function DoDiscussEntry.

The User Login navigation bar entry in the WebLogDiscuss namespace uses the custom javascript function DoLogin.

Custom Javascript

The custom javascript is in a file called ods-script.js in the FlexWiki root directory (with the other '.js' files). It is activated by including the line below in flexwiki.config

<LocalJavascript>ods-script.js</LocalJavascript>

The actual functions in the javascript file are as below.

function DoLogin()
{
        szUrl = document.URL;
        elements = szUrl.split('/');
        terms = elements.length;
        newUrl = '/' + elements[terms - 4] 
                      + '/' + elements[terms - 3] 
                      + '/' + elements[terms - 2] 
                      + '/' + elements[terms - 1];
        document.location.href= "/FlexWiki/Login.aspx?ReturnUrl=" + newUrl;
}
function DoDiscussEntry()
{
        szUrl = document.getElementById('TbackLink');
        document.location.href = "/FlexWiki/" + szUrl.value;
}

Topics Used by the Portal

Note
_ContentBaseDefinition holds CSS details as well as the XHTML for the portal. Later the CSS will be moved to a separate file and included via <OverrideStylesheet> property.

Graphics

  • FlexWiki small logo - /images/weblog/smalllogo.gif
  • body: background - /images/weblog/bg.gif
  • navcontainer ul: background - /images/weblog/fwmenubg-01.gif
  • navcontainer ul li a: background - /images/weblog/fwmenubg-01.gif
  • BorderTileTitle: background - /images/weblog/fwmenubg-01.gif
  • mainbg: background - /images/weblog/slice_general-01.jpg
  • blue arrow - images/bluearrow.gif
Permalink, Talkback Published: 2008-Oct-04

  Information

A namespace to hold blogs relating to development and implementation of FlexWiki
Not logged in. Log in
Recent Topics
BlogSetupInFlexWiki BlogSetupInFlexWiki
Recent Changes Recent Changes
Local Search
Powered by Flexwiki v2.1.0.288

  Related Topics