AjaxComments

From Organic Design wiki
Revision as of 19:38, 27 June 2012 by Nad (talk | contribs)

One of the clients I'm working for needs a new discussion component to replace the MediaWiki talk page system entirely. It needs to add an area at the bottom of the page (an area marked by a div element that can be positioned appropriately) that allows comments to be added or replies made to existing comments. Authors will be able to edit or delete any comments they've made as long as there are no replies, and sysops can edit or delete any comments (deleting a comment with replies will also remove all the replies). The system will be entirely JavaScript and all requests done via Ajax. The discussion data will still be stored in the article's talk by the server-side Ajax handler.

Extension done

This has been finished , the source code is in our Subversion repository here.

Features

  • Activates automatically for articles that have discussion pages removing discussion tab and adding a comments section below the article content
  • Allows registered users to add comments or reply to existing comments
  • Allows comments that a user has previously created to be edited or deleted as long as they have not been replied to yet
  • All comment interaction is done via Ajax so that the page is never reloaded
  • Comment editing integrates properly with wikitext by retrieving the comment source via ajax
  • The data that makes up the comments is stored in the talk page but is not in a humanly readable format
  • The talkpage data is able to coexist with existing talk page content and is delineated by headings so it's clearly visible to avoid accidental editing

Issues

  • The comment data is stored in the articles talk page, but is currently not human readableand does not work with existing talk page content
  • The date/time of posts is not currently displayed in the users timzone or with their time formatting preferences
  • At the moment, the most recent comments are first, but some sites may prefer most recent at the bottom

Example

The extension is now running on this site - you can test it below.