/**
 * arena/delete-post.js
 *
 * Dependencies
 * - YUI
 *
 * @author Royston Olivera (royo_2004) <royston.olivera@xoriant.com>
 **/

function initDelete(settings) {
	
    Delete = new YAHOO.gaia.app.Arena.Delete();
    Delete.init(settings);
	
}
YAHOO.namespace('gaia.app.Arena');
YAHOO.gaia.app.Arena.Delete = function() {
    this._settings = null;
    this._ajaxRequest= null;
   
}
YAHOO.gaia.app.Arena.Delete.prototype.init = function(settings) {
	this._settings = {
		delerrordiv: YAHOO.util.Dom.get(settings.delerrordiv),
		deletedropdiv : YAHOO.util.Dom.get(settings.deletedropdiv),
		deletelink: YAHOO.util.Dom.get(settings.deletelink),
		deleteactionURL : settings.deleteactionURL,
		redirectURL: settings.redirectURL
	
	};
	YAHOO.util.Event.addListener(this._settings.deletelink, "click", this._confirmBox,this,true);
	//alert(this._settings.redirectURL);
	
} 

YAHOO.gaia.app.Arena.Delete.prototype._collapseConfirmBox = function(e,elem_id) {
	//alert("test");
	var elem = new YAHOO.util.Element(this._settings.deletedropdiv);
	elem.setStyle('display', 'none');
	YAHOO.util.Event.removeListener(this._settings.deletelink, "click");
	YAHOO.util.Event.addListener(this._settings.deletelink, "click", this._displayConfirmBox,this,true);
}

YAHOO.gaia.app.Arena.Delete.prototype._displayConfirmBox = function(e,elem_id) {
	var elem = new YAHOO.util.Element(this._settings.deletedropdiv);
	elem.setStyle('display', 'block');
	
	YAHOO.util.Event.removeListener(this._settings.deletelink, "click");
	YAHOO.util.Event.addListener(this._settings.deletelink, "click", this._collapseConfirmBox,this,true);
}


YAHOO.gaia.app.Arena.Delete.prototype._confirmBox = function(e, elem_id){
	YAHOO.util.Event.removeListener(this._settings.deletelink, "click");
	YAHOO.util.Event.addListener(this._settings.deletelink, "click", this._collapseConfirmBox,this,true);
	var elem = new YAHOO.util.Element(this._settings.deletedropdiv);
	elem.setStyle('display', 'block');
	elem.setStyle('opacity','1');
	this._settings.deletedropdiv.innerHTML = "";
	var deleteDiv = document.createElement('div');
	deleteDiv.id = "deleteContainer";
	YAHOO.util.Dom.addClass(deleteDiv, 'innerdiv');
	this._settings.deletedropdiv.appendChild(deleteDiv);
	var txt1node = document.createTextNode('This will permanantely delete this post from your gallery. You sure you wanna do that?');
	//YAHOO.util.Dom.addClass(txt1node,'confirmText');
	deleteDiv.appendChild(txt1node); 
	
	var button1 = document.createElement('a');
	YAHOO.util.Dom.addClass(button1, 'info_button');
	var span1 = document.createElement('span');
	YAHOO.util.Dom.addClass(span1, 'button_cap');
	var txtNode = document.createTextNode('&nbsp;');
	span1.appendChild(txtNode);
	button1.appendChild(span1);
	var span2 = document.createElement('span');
	YAHOO.util.Dom.addClass(span2, 'button_text');
	button1.appendChild(span2);
	var sendtext = 'Yup, get rid of it';
	var sendtxtNode = document.createTextNode(sendtext);
	span2.appendChild(sendtxtNode);
	deleteDiv.appendChild(button1);
	YAHOO.util.Event.addListener(button1, "click", this._doAjaxDeletePost,this,true);
	
	
	var button2 = document.createElement('a');
	YAHOO.util.Dom.addClass(button2, 'info_button');
	var span1 = document.createElement('span');
	YAHOO.util.Dom.addClass(span1, 'button_cap');
	var txtNode = document.createTextNode('&nbsp;');
	span1.appendChild(txtNode);
	button2.appendChild(span1);
	var span2 = document.createElement('span');
	YAHOO.util.Dom.addClass(span2, 'button_text');
	button2.appendChild(span2);
	var canceltext = "Oh no I didn't mean to do that!";
	var cantxtNode = document.createTextNode(canceltext);
	span2.appendChild(cantxtNode);
	deleteDiv.appendChild(button2);
	
	YAHOO.util.Event.addListener(button2, "click", this._collapseConfirmBox,this,true);
	
	
	
}
YAHOO.gaia.app.Arena.Delete.prototype._doAjaxDeletePost = function(e, elem_id){
	
	
	YAHOO.util.Event.preventDefault(e);

	var callback = {

        success:function(o) { 
        	this._handleShareSuccess(o);
        },
    	failure:function(o) {
            this._reportShareError(o);
        },
        scope: this

    };
    

   
    var form_action =this._settings.deleteactionURL;
    //alert(form_action);
   
  
  this._ajaxRequest = YAHOO.util.Connect.asyncRequest('GET',form_action,callback);
	
	
}

YAHOO.gaia.app.Arena.Delete.prototype._handleShareSuccess = function(o){
	var response = eval("(" + o.responseText + ")");
	if(response==1){
		YAHOO.util.Event.removeListener(this._settings.deletelink, "click");
		
		document.getElementById('deleteContainer').innerHTML = "";
	 	document.getElementById('deleteContainer').innerHTML = "This post has been deleted. You will now be redirected to another post.";
	 	this._fadeIn(document.getElementById('deleteDrop'),3);
		//alert(this._settings.redirectURL);
		location.href = this._settings.redirectURL;
		
	}else{
		YAHOO.util.Event.removeListener(this._settings.deletelink, "click");
		YAHOO.util.Event.addListener(this._settings.deletelink, "click", this._confirmBox,this,true);
		document.getElementById('deleteContainer').innerHTML = "";
	 	document.getElementById('deleteContainer').innerHTML = response; //"This post could not be deleted. Try again later.";
		//this._fadeIn(document.getElementById('deleteDrop'),3);
	}
}

YAHOO.gaia.app.Arena.Delete.prototype._fadeIn = function(el,duration){
		
	var attributes = {
			
		opacity: { from:1,to: 0 } 
	};
	var anim = new YAHOO.util.Anim(el,attributes,duration);
	anim.animate();
}