
var PTCForums = function() {

	return {
		/**
		 Fills in the page with forums details.
		 @param forumID    - The ID of the phpBB forum (&f=#)
		 @param numThreads - The number of threads to be retrieved.  All replies
		                     for each thread will also be grabbed
		 @param domID      - The DOM element the results will be placed in.
		 @param onlyThreads- Boolean (0|1) used to determine if only thread title will be returned
		 @param titleTag   - The HTML tag to wrap the title with (i.e. div or h2)
		**/
		init : function (forumID, numThreads, domID, onlyThreads, titleTag) {
			var ajaxUrl     = '/forums/open/ajaxJson.php';
			var unique      = Math.round((new Date()).getTime() / 1000000); // do a little caching
			var ajaxParams  = '&f=' + forumID + '&c=' + numThreads + '&time=' + unique;
			var ajaxResults = new Ajax.Request(ajaxUrl, {
				method: 'get',
				parameters: ajaxParams,
				onSuccess: function(transport) {
					var forum = eval('(' + transport.responseText + ')')[0];
					var html = '<' + titleTag + ' class="forumTitle">Forums: ' + forum.title + '<\/' + titleTag + '>\n';
					html += '<ul>\n';
					for (var i = 0; i < forum.threads.length; i++) {
						html += '<li><div class="forumThreadTitle"><a href="' + forum.threads[i].hyperlink + '">' + forum.threads[i].title + '<\/a><\/div>\n';						
						if (onlyThreads) {
							var lastDate = new Date();
							lastDate.setTime(forum.threads[i].posts[forum.threads[i].posts.length-1].postEpoch * 1000);
							html += '<div class="forumThreadDate">' + lastDate.toLocaleString() + '<\/div>\n';
							html += '<div class="forumThreadText">' + forum.threads[i].posts[forum.threads[i].posts.length-1].content + '<\/div>\n';
							html += '<div class="forumThreadAuthor">' + forum.threads[i].posts[forum.threads[i].posts.length-1].author + '<\/div>\n';
							html += '</li>\n';
						}
						
						if (!onlyThreads) {
							html += '<ul>\n'; 
							for (var j = 0; j < forum.threads[i].posts.length; j++) {
								var myPost = forum.threads[i].posts[j];
								html += '<li><div class="forumPostTitle"><a href="' + myPost.hyperlink + '">' + myPost.title + '<\/a><\/div>\n';
								var postDate = new Date();
								postDate.setTime(myPost.postEpoch * 1000);
								html += '<div class="forumPostDate">' + postDate.toLocaleString() + '<\/div>\n';
								html += '<div class="forumPostText">' + myPost.content + '<\/div>\n';
								html += '<div class="forumPostAuthor">' + myPost.author + '<\/div></li>\n';						
							}
							html += '</ul>\n';
						}				
					}
					
					html += '</ul>\n';
					//html += '"/forums/viewforum.php?f=' + forumID + '"';
					html += '<div class="moreinfo"><a href="/forums/viewforum.php?f=' + forumID + '">More &gt;<\/a><\/div>\n';	
					
					YAHOO.util.Dom.get(domID).innerHTML = html;
				}, // end on Success
				onFailure: function(transport) {
				}
			});	
	
		} // end init
	}; // end return
}(); // end PTCForums


