function SpController()
{
	this.reqWidgetQueue= new Array();//queue with the widgets that made a request through this controller object
	var self=this;
	this.localWidgetReff = null;
	this.ref=null;
	this.ref_err=null;
	this.let=null;
	this.checkLetter=function(letter)
	{
		this.let=letter;
		parent_obj=document.getElementById('zona_litere');
		obj=document.getElementById('letter_'+letter)
		parent_obj.removeChild(obj);
		
		data = new Object();
		data.letter = letter
		$.post(URL+'index.php?page=spanzuratoarea&action=check_letter',data,function(data){
			SpController.getInstance().checkLetterResponse(data);
		},
		"json");		
	}
	/**
	 * @param The manager index of the request 
	 * @desc This method is a handler for the completition of one request
	 */
	this.checkLetterResponse=function (data)
	{	
	
		result=eval(data);
		err_code=result['error_code'];
		//we guess the letter
		if(err_code==1)
		{
			positions=result['positions'];
			finished=result['finished'];
			points=result['points'];
 			var letters = positions.split(",");
				 for(i in letters)
				 {
				 	document.getElementById("letter_"+letters[i]).innerHTML = this.let.toUpperCase();
				 }			
			if(finished==1)
			{
				if(points>0) brv="Ati obtinut "+points+" puncte!!!";
				//jocul s-a terminat cu succes si s-a ghicit cuvantul
			document.getElementById("mesaj").innerHTML="BRAVO, ati ghicit cuvantul. "+brv+" Mai incercati odata!!!";
			document.getElementById("zona_litere").innerHTML="Jocul s-a terminat, apasati mai sus pe link pentru a porni un nou joc spanzuratoarea.";
			//document.getElementById("z_cuvant").innerHTML="";
			document.getElementById("ld").innerHTML="";
			document.getElementById("indiciu").innerHTML="";
			document.getElementById("new_game").style.display="block";
				
			}
		}
		if(err_code==2)
		{
			incercari=result['incercari'];
			document.getElementById("imagine_curenta").src=URL+"images/spanzuratoarea/spanzurat-"+incercari+".gif";
			if(incercari==5)
			{
				document.getElementById("mesaj").innerHTML="Mai aveti 1 incercare!!!";
			}
			else
			{
				document.getElementById("mesaj").innerHTML="Mai aveti "+(6-incercari)+" incercari.";
			}
		}
		if(err_code==3)
		{
			incercari=result['incercari'];
			document.getElementById("imagine_curenta").src=URL+"images/spanzuratoarea/spanzurat-"+incercari+".gif";
			document.getElementById("mesaj").innerHTML="Ati fost spanzurat. Mai incercati odata!!!";
			document.getElementById("zona_litere").innerHTML="Jocul s-a terminat, apasati mai sus pe link pentru a porni un nou joc spanzuratoarea.";
			document.getElementById("z_cuvant").innerHTML="";
			document.getElementById("ld").innerHTML="";
			document.getElementById("indiciu").innerHTML="";
			document.getElementById("new_game").style.display="block";
		}
		
		return true;					
	}
}

SpController.__instance__=null;

SpController.getInstance=function()
{
	if(SpController.__instance__==null)
	{
		SpController.__instance__=new SpController();
	}
	return SpController.__instance__;
}
