/*
 * Directory Modal Window - Actions
 * @ based on the BOXY SOURCECODE
 */

// init
var cs_modal;
var allDialogs = [];

// close the modal window                       
function closeModal() {
	if (cs_modal) {
		cs_modal.hide();
		cs_modal.unload();
		allDialogs = [];
	}
}  

function createModal(options, vars) {
	
	// content holder for callbacks
	//<a href='javascript:void(0)' onclick=\"javascript:closeModal()\">[close]</a>
	var boxyContentHolder = "<div id='fs-boxy-container'></div>";

	if (vars) {

		// reset modal
		closeModal();
	
		// build json vars
		var json_vars = new Object();
		for (var key in vars) {
			if (vars[key]) {
				json_vars[key] = vars[key];
			}
		}
						
		var json_vars_encoded = $.toJSON(json_vars);
		
		
		options = $.extend({title: ""}, options || {});
		cs_modal = new Boxy('"'+boxyContentHolder+'"', options);
		allDialogs.push(cs_modal);
		
		recent().centerX();
		$('.boxy-wrapper').css("top","50px");
		$('.boxy-modal-blackout').css('display', 'none');
		
		//populateModal(json_vars_encoded);
		requestModalForm(json_vars_encoded);
	} else {

		options = $.extend({title: ""}, options || {});
		cs_modal = new Boxy('"'+boxyContentHolder+'"', options);
		allDialogs.push(cs_modal);
	}
	
	return false;
}
function recent() { 
	return allDialogs[allDialogs.length-1]; 
}
function tweenUp() { 
	recent().tween(400,300); 
}
function tweenDown() { 
	recent().tween(100,100); 
}
function getTitle() { 
	alert(recent().getTitle()); 
}
function setTitle() {
	recent().setTitle(prompt("Enter new title:")); 
}


// loader
function modalLoader() {
	$('#cs-place-directory-tab-modal-container').html('<p>Loading...</p>');	
};
// page loader
function pageLoader() {
	$('#cs-place-directory-tab-directories').html('<p>Loading Directory...</p>');	
};


// request engine
function populateModal(json_vars) {
	var json_vars_decoded = $.evalJSON(json_vars); 
	var proceed_execution = true;
	modalLoader();
	
	$('#'+json_vars_decoded.div_id).html(json_vars_decoded.output);
	$('.boxy-wrapper').css("top","100px");			
};

$.fn.pause = function(duration) {
    $(this).animate({ dummy: 1 }, duration);
    return this;
};

// request engine
function requestModalForm(json_vars) {
	
	
	
		var json_vars_decoded = $.evalJSON(json_vars); 

		function requestModalForm_Callback(results) {
			
			var results_decoded = $.evalJSON(results); 
			
			//alert(results_decoded.image_filepath);

			
			$('#'+json_vars_decoded.div_id).html(results_decoded.output);
			//$('#'+json_vars_decoded.div_id).animate({"opacity": "show"}, { "duration": "slow", "easing": "easein" });
			//this.boxy.fadeIn('slow');
			recent().centerX();
			//recent().tween(600); 
			//$('.boxy-modal-blackout').css('display', 'none');
			//$('#dvMainWrapper').css('display', 'none');
			/*$('#dvMainWrapper').fadeIn('slow', function() {
			// Animation complete
			});
			*/
			
			$('.boxy-wrapper').css("top","50px");
			$('.boxy-modal-blackout').pause(300).fadeIn('slow');
			

			
			/*if (cs_modal) {
				cs_modal.hide();		
			}*/
			
			
		};
		var results_decoded = $.evalJSON(json_vars); 
		
		ts = Math.random()*10287;
		$.ajax({
			type: 'POST',
			url: json_vars_decoded.base_path+'/boxy/splash_promo.php?base_path='+results_decoded.base_path+'&image_filepath='+results_decoded.image_filepath+'&title='+results_decoded.title,
			/*data: 	'vars='+json_vars+
					'&rand='+ts,*/
			success: function(html){
				requestModalForm_Callback(html);
			},
			failure: function(html) {
				alert('failure: '+html);
			}
		});	
	
};
