xTalk Is on OpenNTF
Friday, October 16, 2009 10:18 AM
When IBM Lotus Notes/Domino 8.5.1 was released on Monday I also released a new open source project on OpenNTF called xTalk. I've talked about it here a few times already but now I want to describe a few of the features that have been added in the latest build that you can download from OpenNTF.
The latest build on OpenNTF, xTalk V0.7, is in my own opinion, a feature complete build for the first version of the application. There are a couple of minor bugs that I'm working out but that should not stop anybody from using the application in a test environment. So what's been added since I last spoke about the project.
Easy Startup.
As the application is 100% XPages on both the web browser and in the Lotus Notes 8.5.1 client I had to make the application easy to configure. When you first load the application in your browser you'll see the following screen

If you then log in it will check the ACL to see if you have the ForumOwner role and if you do the home page will change to assist you in creating your first 'Forum Category'

Once you have created the forum category the screen will then assist you with creating new forums within the forum category.

So within a few minutes of download and deploying the application you can be up and running with your forums

BBCode Editor.
In my initial test builds of xTalk I had used the XPages Richtext Editor component but I also wanted to support the BBCode system that is used in all of the web forums that I based the design of xTalk on. Not wanting to mix both Richtext and BBCode I decided to move to BBCode only which meant changing the richtext control into a simple text area.
Above the text area I then added buttons to give the user who may be unfamiliar with BBCode the ability to style their messages.

There are options to Bold the text, add links, images, email addresses, change the color and size of the font and even include quote blocks and code blocks.
Edit Your Message.
One feature that somebody asked for early on in the development cycle was to provide the ability for a user to edit their own messages. In xTalk I decided to implement a timed approch to this request and only give the user a limited window in which they can edit their own posts.
The the lower right corner of each post the 'Edit' button will appear if the viewer is the original author of the post and it is within 10 minutes of the posts creations date/time.

Quoting A Message.
In the screen snippit above you'll also see a 'quote' icon. Clicking this icon will take the text of the message and append it to anyting in the reply area and surround it with the special BBCode that is required to mark it as a quote.

Buttons Everywhere.
If you have the ForumOwner role in the ACL or if you have been designated as a category owner or individual forum owner then you will see lots of moderator and configuration buttons that normal users won't be able to see. Bringing the buttons into the UI means that here is no need for a separate administration interface. Here's what some of the buttons look like.

I've tried to select icons that will be self explanatory. the green + icon will add stuff, like forum categories or forum areas depending on which level you click the button in. The pencil icon will edit a forum category or forum area, the lock icon will lock a forum area or topic, the pushpin will mark topics as sticky.
The red - icon is only visible if you have the ForumOwner role in the ACL and it will delete items. If you delete a topic then all the replies are deleted also, if you delete a forum then all the topic and replies in that forum are deleted and if you delete a category all the forums and topics and replies within all the forums in that category are deleted. You will have a chance to back out of doing the deletion and the warning screen will tell you how many threads and posts would be deleted.

------
So there you have it, all the featured discussed above are available in the xTalk 0.7 build that is currently on OpenNTF. If you have no yet checked out xTalk then please feel free to download it and if your going to use it in a live environment for any reason then I'd love to hear about it.