$(function() {

	var tagOpen = false;
	
	function makeTags(data)
	{

		$('div#tag-cloud').append('<ul class="tags"></ul>');
		var color;
		for(i=0;i<data.length;i++)
		{

			switch($(data)[i].color)
			{
				case '1':
					color = "salmon";
					break;
				case '2':
					color = "blue";
					break;
				case '3':
					color = "purple";
					break;
				case '4':
					color = "green";
					break;	
				case '5':
					color = "red";
					break;	
				default:
					break;
			}
			if($('li#show-doctor-data-timeline a').hasClass("active"))
			{
				$('ul.tags').append('<li class="priority-' + $(data)[i].priority + '"><a href=/learn-from-doctors.php' + $(data)[i].link + ' class=' + color + '>' + $(data)[i].text + '</a></li>');

			}
			else
			{
				$('ul.tags').append('<li class="priority-' + $(data)[i].priority + '"><a href=/learn-from-peers.php' + $(data)[i].link + ' class=' + color + '>' + $(data)[i].text + '</a></li>');
			}
			if(IE7 == true)
			{
				$('ul.tags li a:eq(' + i + ')').html($('ul.tags li a:eq(' + i + ')').text().replace(/[\s]/g, '<span style="padding-left: 4px"></span>'));
			}
		}
		activateButtons();
	}
	
	function activateButtons () 
	{
		$('ul#tag-cloud-navigation li a').click(function () {
			$(this).attr('href').substring($(this).attr('href').indexOf('#') + 1) != 'all' ? updateTags($(this).attr('href').substring($(this).attr('href').indexOf('#') + 1), null) : clearAll();
			return false;
		});
	}
	
	function updateTags(id, week)
	{
		var doc = 0;
		if($('li#show-doctor-data-timeline a').hasClass("active"))
		{
			doc=1;
		}
	
		if(id != null)
		{
			$.ajax({
			      url: "/phpincludes/TagCloudGenerator.php?class=" + id + "&doctor=" + doc,
			      type: "GET",
			      dataType: "json",
			      success: function(data){
			        showActive(data, id, null);
			      }
			   }
			);
		}
		else if(week != null)
		{
			$.ajax({
			      url: "/phpincludes/TagCloudGenerator.php?week=" + week + "&doctor=" + doc,
			      type: "GET",
			      dataType: "json",
			      success: function(data){
			        showActive(data, null, week);
			      }
			   }
			);
		}
	}
	
	function showActive(data, id, week)
	{
		if(id != null)
		{
			if(!$('ul#tag-cloud-navigation li:eq(' + (id - 1) + ')').hasClass('active'))
			{
				$('ul#tag-cloud-navigation li').removeClass('active');
				$('ul#tag-cloud-navigation li:eq(' + (id - 1) + ')').addClass('active')
			}
		}
		if(week != null)
		{
			$('ul#tag-cloud-navigation li').removeClass('active');
		}
		
		$('ul.tags li a').each(function () {
			$(this).removeClass('active');
			$(this).removeClass('inactive');
		});
		for(i=0;i<data.length;i++)
		{
			$('ul.tags li a').each(function () {
				$(this).attr('href').substr($(this).attr('href').indexOf('?')) == $(data)[i].link ? $(this).addClass('active') : '';
			});
		}
		$('ul.tags li a').each(function () {
			$(this).hasClass('active') ? $(this).removeClass('inactive').fadeTo("slow", 1) : $(this).addClass('inactive').fadeTo("fast", 0.2);
		});
		$('ul.tags li a').bind("click", function () {
			if($(this).hasClass('active'))
			{
				return true;
			}
			else
			{
				// return false;
			}
		});
	}
	
	function  clearAll()
	{
		$('ul.tags li a').each(function () {
			$(this).addClass('active');
			$(this).removeClass('inactive');
			$(this).fadeTo('fast', 1);
			$(this).bind("click", function () {
				if($(this).hasClass('active'))
				{
					return true;
				}
			});
		});

		$('ul#tag-cloud-navigation li').removeClass('active');
		$('ul#tag-cloud-navigation li:eq(5)').addClass('active');
		
	}
	
	$('ul.find-concern li a').click(function (e) {
		
		if(tagOpen == false)
		{
			var doc = 0;
			if($('li#show-doctor-data-timeline a').hasClass("active"))
			{
				doc=1;
			}

			var week = this;
			$('#wrap div.intro').hide();
			$('#wrap').append('<div id="tag-cloud" style="display:none"><div style="clear:both"></div></div>');
			$('div#tag-cloud').fadeIn('slow');
			$('div#tag-cloud').append('<div id="why-font-sizes"><a href="" id="why-tip" title="because, that\'s why">Why do font sizes vary?</a></div>')
			$('div#tag-cloud').append('<ul id="tag-cloud-navigation"></ul');
			$('div#tag-cloud').prepend('<h3 id="tag-hd">Show Only:</h3>')
			//$('ul#tag-cloud-navigation').append('<li><a href="#1" id="tagnav-complications">Pregnancy Complications</a></li><li><a href="#2" id="tagnav-health-problems">Health Problems</a></li><li><a href="#3" id="tagnav-tests">Tests &amp; Screens</a></li><li><a href="#" id="tagnav-birth">Birth Preparation</a></li><li><a href="#" id="tagnav-living">Pregnant Living</a></li><li><a href="#all" id="tagnav-all">See All</a></li>');
			//$('ul#tag-cloud-navigation').append('<li><a href="#1" id="tagnav-complications">Pregnancy Complications</a></li><li><a href="#2" id="tagnav-health-problems">Health Problems</a></li><li><a href="#3" id="tagnav-tests">Tests &amp; Screens</a></li><li><a href="#4" id="tagnav-birth">Birth Preparation</a></li><li><a href="#5" id="tagnav-living">Pregnant Living</a></li><li><a href="#all" id="tagnav-all">See All</a></li>');
			$('ul#tag-cloud-navigation').append('<li><a href="#1" id="tagnav-complications">Complications</a></li><li><a href="#2" id="tagnav-symptoms">Symptoms</a></li><li><a href="#3" id="tagnav-tests">Tests &amp; Screenings</a></li><li><a href="#4" id="tagnav-birth">Birth Preparation</a></li><li><a href="#5" id="tagnav-lifestyle">Lifestyle</a></li><li><a href="#all" id="tagnav-all">Show All</a></li>');
			
			tagOpen = true;
			$.ajax({
			      url: "/phpincludes/TagCloudGenerator.php?doctor=" + doc,
			      type: "GET",
			      dataType: "json",
			      success: function(data){
			        makeTags(data);
					updateTags(null,$(week).attr('href').substring(1));
			      }
			   }
			);
		}
		else
		{
			
			updateTags(null,$(this).attr('href').substring($(this).attr('href').indexOf('#') + 1));
		}
		return false;
	});	
	
	$('ul.find-concern li a').tooltip({ 
	    track: true, 
	    delay: 0, 
	    showURL: false, 
	    showBody: " - ", 
			fixPNG: false, 
	    fade: 250,
			top: -48, 
			left: -40
	});	
	
});