var $j = jQuery.noConflict();

function GetActiveForums() {
	var self = this;
	self.display = new DisplayActivePosts();
	self.pause = false;
	self.items = new Array();
	
	var DISPLAY_STATUS = 'iama_forums_display';
	var AJAX_STATUS = 'iama_forums_ajax';
    var options = { path: '/', expires: 60};
	
	$j.ajax({
		type: "GET",
		url: "/DesktopModules/Iama/MessageBoardsFeed.aspx?forums=true",
		//url: "/DesktopModules/ForumShowcase/forums.xml",
		dataType: "xml",
		success: parseData
	});
	
	function parseData(xml) {
		$j(xml).find("item").each(function(i) {
			var id = $j(this).find("ForumId").text();
			var label = $j(this).find("ForumTitle").text();
			
			var item = "<a id='" + id + "' class='topic_link'>" + label + "</a> - ";
			self.items[i] = item;
			
			$j("#showcase_links").append(item);
			self.linkItem(item);
		});
		
		var root = Number($j(self.items[0]).attr('id'));
	
		self.id = "";
		self.check = false;
		self.objects = new Array();
		
		self.getPosts();
		
		//$j.log($j.cookie(DISPLAY_STATUS));
		
		($j.cookie(DISPLAY_STATUS) == "true" || $j.cookie(DISPLAY_STATUS) == null) ? self.show() : self.hide(); 
		
		self.setActive("showcase_all", "a", "#showcase_links");
		self.setPopular();
	};
	
	self.linkItem = function(item) {
		var object = "#" + $j(item).attr('id');
		
		$j(object, $j("#showcase_links")).click(function() {
			clearInterval(self.timer);
			if(!self.pause) { resume(); }
			
			self.id = this.id;
			self.check = false;
			self.objects = [];
			self.setActive(this.id, "a", "#showcase_links");

			$j("#showcase_content").fadeOut(function() {
				$j(this).show();
				$j(this).html("");
				self.getPosts();
			});
		});
	};
	
	self.getPosts = function() {
		self.display.ajax(self.id, self.objects, self.check)
		self.check = true;
	};
	
	self.setActive = function(id, target, container) {
		var item;
		$j(target, $j(container)).each(function(i) {
			//item = "#" + this.id;
			$j(this).removeClass().addClass('topic_link');
		});
		
		var object = "#" + id;
		$j(object, $j(container)).removeClass().addClass('selected_top');
	};
	
	self.setPopular = function() {
		var sizes = getSizes();
	
		$j("a", $j("#showcase_links")).each(function(i) {
			$j(this).css("font-size", sizes[i]);
		});
	};
	
	$j("#feed").click(function() {
		var status = $j.cookie(AJAX_STATUS);
		
		if (status == "true") {	pause(); }
		else if (status == "false") { resume(); }
	});
	
	self.hide = function() {
		$j("#showcase_container").hide();
		$j("#dnn_ctr775_ContentPane").show();
		
		pause();
		statusStandard();

		$j.cookie(DISPLAY_STATUS, "false", options);
	};
	
	self.show = function() {
		$j("#showcase_container").show();
		$j("#dnn_ctr775_ContentPane").hide();
		
		var status = $j.cookie(AJAX_STATUS);
		
/*
		if (status == "true" || status == null) { resume(); }
		else if (status == "false") { pause(); }
*/
		
		($j.cookie(AJAX_STATUS) == "false") ? pause() : resume(); 
		
		statusShowcase();

		$j.cookie(DISPLAY_STATUS, "true", options);
	};	
	
	function pause() {
		self.setActive("off", "span", "#feed");
		
		clearInterval(self.timer);
		self.pause = true;
		
		$j.cookie(AJAX_STATUS, "false", options);
	};
	
	function resume() {
		self.setActive("on", "span", "#feed");
		
		clearInterval(self.timer);
		self.timer = setInterval(self.getPosts, 15000);
		self.pause = false;
		
		$j.cookie(AJAX_STATUS, "true", options);
	};
	
	function getSizes() {
		var array = new Array();
		var i = 0;
		
		$j("a", $j("#showcase_links")).each(function(i) {
			array[i] = i + 10 + "px";
			i++;
		});
		
		return array.reverse();
	};
	
	function setHover(item, view, toggle) {
		$j(item).attr("src", view);
		
		$j(item).hover(
	      function () {
	        $j(this).attr("src", toggle);
	      }, 
	      function () {
	        $j(this).attr("src", view);
	      }
	    );
	};
	
	function statusShowcase() {
		setHover($j("img", $j("#status_showcase")), "/DesktopModules/ForumShowcase/images/showcase_toggle.gif", "/DesktopModules/ForumShowcase/images/showcase_toggle.gif");
		setHover($j("img", $j("#status_standard")), "/DesktopModules/ForumShowcase/images/forums_view.gif", "/DesktopModules/ForumShowcase/images/forums_toggle.gif");
	}
	
	function statusStandard() {
		setHover($j("img", $j("#status_showcase")), "/DesktopModules/ForumShowcase/images/showcase_view.gif", "/DesktopModules/ForumShowcase/images/showcase_toggle.gif");
		setHover($j("img", $j("#status_standard")), "/DesktopModules/ForumShowcase/images/forums_toggle.gif", "/DesktopModules/ForumShowcase/images/forums_toggle.gif");
	}
	
	$j("#status_showcase").click(function() {
		clearInterval(self.timer);
		self.show();
	});
	
	$j("#status_standard").click(function() {
		clearInterval(self.timer);
		self.hide();
	});
	
	$j("#showcase_all").click(function() {
		self.setActive(this.id, "a", "#showcase_links");
		clearInterval(self.timer);
		if(!self.pause) { resume(); }
		
		self.id = null;
		self.check = false;
		self.objects = [];

		$j("#showcase_content").fadeOut(function() {
			$j(this).show();
			$j(this).html("");
			self.getPosts();
		});
	});


};