
function NewsItem(id,categ,title,date,img,text)
{
	this.id = id;
	this.categ = categ;
	this.title = title;
	this.date = date;
	this.img = img;
	this.text = text;	
}

function GameItem(id,name,img,desc)
{
	this.id = id;
	this.name = name;
	this.img = img;
	this.desc = desc;	
}

function FAQItem(id,categ,question,answer)
{
	this.id = id;
	this.categ = categ;
	this.question = question;
	this.answer = answer;	
}

function LinkItem(id,title,theme,url)
{
	this.id = id;
	this.title = title;
	this.url = url;
	this.theme = theme;	
}

function normalizeXML(text)
{
	if(!window.ActiveXObject)
	{
		var ret = text.replace(/>\s+</g,"><");
		return ret;
	}
//	var ret = text.replace(/\s+/,"LALA");
	return text;
}

function getTextXML(url)
{
	var req = false;
    //check if we have firefox/opera browsers
	if (window.XMLHttpRequest) 
	{
		 req = new XMLHttpRequest();
		if (req.overrideMimeType) 
		 {
			req.overrideMimeType('text/xml');
		 }
		 
	}
	//and IE
	else if (window.ActiveXObject) 
	{
		 try 
		 {
			req = new ActiveXObject("Msxml2.XMLHTTP");
		 } 
		 catch (e) 
		 {
			try 
			{
			   req = new ActiveXObject("Microsoft.XMLHTTP");
			} 
			catch (e)
			{
				alert('Cannot create XMLHTTP instance your browser version is not supported.');
				return false;
			}
		 }
	}
	
	else 
	{
	 	alert('Cannot create XMLHTTP instance your browser version is not supported.');
	 	return false;
	}
	
	req.open("GET", url, false);
	req.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
	req.send('');
	
	if(req.status == 200)
	{
	//	alert(req.responseText);
		var str=normalizeXML(req.responseText);
	   // alert(str);
		return str;
		
	}
	
	return null;
}

function SXMLParser(text)
{
	this.xmlText = text;
	this.parser = null;
	this.doc = null;
/*	
	this.displayDoc=function()
	{
			var length=this.doc.childNodes.length;
		//	alert ("length : "+length);
			for(var i=0;i<length;i++)
			{
			//	alert(this.doc.childNodes[i].length);
				if(this.doc.childNodes[i].nodeType==1) //daca este element
				{
				 //alert("nodul "+i+": element");
					if(this.doc.childNodes[i].hasChildNodes())
						{
							var lengthc=this.doc.childNodes[i].childNodes.length;
							for (var j=0;j<this.doc.childNodes[i].childNodes.length;j++)
							    {
									
									if(this.doc.childNodes[i].childNodes[j].nodeType==3)
									{
									//	alert(this.doc.childNodes[i].childNodes[j].nodeValue);
									}
									if(this.doc.childNodes[i].childNodes[j].nodeType==1)
									    {
									//	alert("nod copil element cu lung "+this.doc.childNodes[i].childNodes[j].childNodes.length);       
									
										}
										
								for(var k=0;k<this.doc.childNodes[i].childNodes[j].childNodes.length;k++)
								{
						if(this.doc.childNodes[i].childNodes[j].childNodes[k].nodeType==3)
									alert(this.doc.childNodes[i].childNodes[j].childNodes[k].nodeValue);
									
								}
								
								}
				
						 }
					else {
						//	 alert("nod "+i +" fara copii");
						 }
				}
				
			      
				else 
					{
						if(this.doc.childNodes[i].nodeType==3)//daca este TEXT_NODE
						{ 
						//alert("nodul "+i+" nu este element, este textnode "+this.doc.childNodes[i].nodeValue);
						  }
					}
			}
			

		}
	*/
	//we have IE
	if (window.ActiveXObject)
	{
		this.parser = new ActiveXObject("Microsoft.XMLDOM");
		this.parser.async = false;
		this.parser.loadXML(this.xmlText);	
	//	alert(this.parser.parseError.srcText +"\r\n"+ this.parser.parseError.reason);
		this.doc = this.parser.documentElement;
			
	}
	else
	{
		try
		{
			this.parser = new DOMParser();
			this.parser.async = false;
			this.doc = this.parser.parseFromString(text,"text/xml").documentElement;
		//	alert(this.doc.xml);
		
		}
		catch(e)
		{
			alert(e.message + " Your browser is not supported.");
		}
	}
	
	
	this.getNewsItems = function()
	{
		var retArr = new Array();
		try {
		//alert("this.doc"+this.doc);
		var elemLength = this.doc.childNodes.length;
		}
		catch(e)
		{
			alert(e.message);
		}
	//	alert("getItems");
	//	alert("elemLength "+elemLength);
		for(var i=0;i<elemLength;i++)
		{
			var currElem = this.doc.childNodes[i];
			retArr.push(new NewsItem(currElem.childNodes[0].childNodes[0].nodeValue,
			currElem.childNodes[1].childNodes[0].nodeValue,
			currElem.childNodes[2].childNodes[0].nodeValue,
			currElem.childNodes[3].childNodes[0].nodeValue,
			currElem.childNodes[4].childNodes[0].nodeValue,
			currElem.childNodes[5].childNodes[0].nodeValue			
			));	
		}
		
		return retArr;
	}
	
	this.getGameItems = function()
	{
		var retArr = new Array();
		var elemLength = this.doc.childNodes.length;
		
		for(var i=0;i<elemLength;i++)
		{
			var currElem = this.doc.childNodes[i];
			retArr.push(new GameItem(currElem.childNodes[0].childNodes[0].nodeValue,
			currElem.childNodes[1].childNodes[0].nodeValue,
			currElem.childNodes[2].childNodes[0].nodeValue,
			currElem.childNodes[3].childNodes[0].nodeValue	
			));	
		}
		
		return retArr;
	}
	
	this.getFAQItems = function()
	{
		var retArr = new Array();
		var elemLength = this.doc.childNodes.length;
		
		for(var i=0;i<elemLength;i++)
		{
			var currElem = this.doc.childNodes[i];
			retArr.push(new FAQItem(currElem.childNodes[0].childNodes[0].nodeValue,
			currElem.childNodes[1].childNodes[0].nodeValue,
			currElem.childNodes[2].childNodes[0].nodeValue,
			currElem.childNodes[3].childNodes[0].nodeValue	
			));	
		}
		
		return retArr;
	}
	
	this.getLinkItems = function()
	{
		var retArr = new Array();
		var elemLength = this.doc.childNodes.length;
		
		for(var i=0;i<elemLength;i++)
		{
			var currElem = this.doc.childNodes[i];
			retArr.push(new LinkItem(currElem.childNodes[0].childNodes[0].nodeValue,
			currElem.childNodes[1].childNodes[0].nodeValue,
			currElem.childNodes[2].childNodes[0].nodeValue,
			currElem.childNodes[3].childNodes[0].nodeValue	
			));	
		}
		
		return retArr;
	}
}