/***************************************************************************************************
* Program: objManageHomePage
* Purpose: JavaScript object that manages the home page
* Written on: 2011.12.14
***************************************************************************************************/
function objManageHomePage(name){
	this.selfName = name;
	this.totalActivities = 0;
	this.topActivity = 0;
	this.activities = new Array();
	this.intActivities = null;
	this.init();
}

objManageHomePage.prototype.init = function(){
	var ref = this;

	// initialize search box
	$jQuery("#searchtext").val(_rofoSearch.defaultSearchText);
	$jQuery("#searchtext").focus(function(){if($jQuery("#searchtext").val() == _rofoSearch.defaultSearchText) $jQuery("#searchtext").val("");});
	$jQuery("#searchtext").blur(function(){if($jQuery("#searchtext").val() == "") $jQuery("#searchtext").val(_rofoSearch.defaultSearchText);});

	// initialize recent activities
	$jQuery.ajax({
		type: "POST",
		cache: false,
		url: "/ajax/recentactivity.ajax.php",
		dataType: "json"
	}).done(function(data){
		if(data.success){
			var activities = data.activities;
			for(i = 0; i < activities.length; i++){
				if(activities[i].has_image){
					tmpAddress = activities[i].address;
					if(activities[i].suite != "") tmpAddress += ' - ' + activities[i].suite;
					tmpAddress += ', ' + activities[i].city + ', ' + activities[i].state + ' ' + activities[i].zipcode;
					html = '<div id="ra_' + i + '" class="activity">';
					html += '<div class="photo"><img src="/' + activities[i].thumbnail + '" width="40" /></div>';
					html += '<div class="details">';
					html += '<div class="title"><a href="' + activities[i].p_url + '">' + activities[i].fullname + '</a></div>';
					if(activities[i].a_type == "l"){
						html += '<b>Posted listing @</b> ' + tmpAddress + '<br />';
						tmpHtml = '';
						if(activities[i].space_type > 0) tmpHtml += '<img src="/' + activities[i].space_type_icon + '" height="12" /> ' + activities[i].space_type_text;
						if(activities[i].sqft.length > 0){
							if(tmpHtml != '') tmpHtml += ' &bull; ';
							tmpHtml += activities[i].sqft + ' sqft';
						}
						if(tmpHtml != '') html += tmpHtml + '<br />';
						tmpHtml = '';
						tmpHtml += 'For ' + activities[i].l_type.toLowerCase();
						if(activities[i].sqft_price.length > 0) tmpHtml += ' &bull; $' + activities[i].sqft_price + (activities[i].l_type == "LEASE" ? ' per month' : '');
						html += tmpHtml + '<br />';
						html += '<a href="' + activities[i].l_url + '">View listing &raquo;</a>';
					} else if(activities[i].a_type == "u"){
						html += '<b>' + (activities[i].u_type == 'OTHR' ? 'Update' : activities[i].u_type_text) + ((activities[i].u_type != 'OTHR' && activities[i].u_client.length > 0) ? ' with' : '') + ':</b> ' + (activities[i].u_client.length > 0 ? activities[i].u_client : '') + '<br />';
						html += tmpAddress + '<br />';
						tmpHtml = '';
						if(activities[i].space_type > 0) tmpHtml += '<img src="/' + activities[i].space_type_icon + '" height="12" /> ' + activities[i].space_type_text;
						if(activities[i].sqft.length > 0){
							if(tmpHtml != '') tmpHtml += ' &bull; ';
							tmpHtml += activities[i].sqft + ' sqft';
						}
						if(tmpHtml != '') html += tmpHtml + '<br />';
						html += '<a href="' + activities[i].p_url + '">View profile &raquo;</a>';
					} else if(activities[i].a_type == "n"){
						html += '<b>Needs space for:</b> ' + activities[i].r_company_type + ' Business in ' + activities[i].city + ', ' + activities[i].state + '<br />'
						tmpHtml = '';
						if(activities[i].space_type > 0) tmpHtml += '<img src="/' + activities[i].space_type_icon + '" height="12" /> ' + activities[i].space_type_text;
						if(activities[i].sqft.length > 0){
							if(tmpHtml != '') tmpHtml += ' &bull; ';
							tmpHtml += activities[i].sqft + ' sqft';
						}
						if(tmpHtml != '') html += tmpHtml + '<br />';
						
						html += '<a href="' + activities[i].n_url + '">View requirement &raquo;</a>';
					}
					html += '</div><br class="clear" /></div>';
					ref.activities.push(html);
					$jQuery("#recent_activities").append(html);
					ref.totalActivities++;
				}
			}
			ref.intActivities = window.setInterval(ref.selfName + ".rotateActivities();", 6500);
		}
	});
}

objManageHomePage.prototype.rotateActivities = function(){
	var ref = this;
	$jQuery("#ra_" + this.topActivity).animate({opacity:0.25, height:'-=90'}, 1000, function(){
		$jQuery("#ra_" + ref.topActivity).remove();
		$jQuery("#recent_activities").append(ref.activities[ref.topActivity]);
		ref.topActivity++;
		if(ref.topActivity >= ref.totalActivities) ref.topActivity = 0;
	});
}
