//var myAjax = new Ajax.Request( url, { method: 'GET', parameters: '' ,asyncronous:true, onComplete: parseXML, onFailure: reportError});
var url='video/video.xml'; 
function init (){
var myAjax = new ajax ( url, { method: 'GET', onComplete: parseXML});
//var myAjax = new Ajax.Request( url, { method: 'GET', parameters: '', asynchronous:true, onComplete: parseXML, onFailure: reportError});
}
window.onload=init;
var page=1;
var implicit="implicit"
var teatro="teatro";
var cine="cine";
var television="television";
var actor="actor";
var productor="productor";
var entrevista="entrevista";
var andi="andi";
var varios="varios";
var wsearch="wsearch";
var step=4;
var total=0;
var cits=0;
var i=0;
var items;
var arrayItems = new Array();
var arrayCat1 = new Array();
var arrayCat2=new Array();
var arrayCat3=new Array();
var arrayCat4=new Array();
var arrayCat5=new Array();
var arrayCat6=new Array();
var arrayCat7=new Array();
var arrayCat8=new Array();
var adv="<p>Por favor introduzca solamente cifras y letras sin caracteres extensas de la lengua espanola o otras caracteres</p>";
arrayCat1.length=0;
arrayCat2.length=0;
arrayCat3.length=0;
arrayCat4.length=0;
arrayCat5.length=0;
arrayCat6.length=0;
arrayCat7.length=0;
arrayCat8.length=0;

function parseXML(request){
var XmlDoc=request.responseXML;
items=XmlDoc.getElementsByTagName("item");
total=items.length;
arrayItems=parseCat(arrayItems,"");
arrayCat1=parseCat(arrayCat1,'teatro');
arrayCat2=parseCat(arrayCat2,'cine');
arrayCat3=parseCat(arrayCat3,'television');
arrayCat4=parseCat(arrayCat4,'actor');
arrayCat5=parseCat(arrayCat5,'productor');
arrayCat6=parseCat(arrayCat6,'entrevista');
arrayCat7=parseCat(arrayCat7,'andi');
arrayCat8=parseCat(arrayCat8,'varios');
viewSelect("implicit");
viewLinks();
var myuri=document.location.href;
if ((myuri.indexOf("?video="))!=-1 ){
document.search[0].style.color='white';
document.search[0].value=myuri.slice((myuri.indexOf("?video=")+7));
updateView(wsearch)
}
}


function parseCat(arrayCat, cat){
for (i=0;i<total; i++){
mc=items[i].getAttribute('category').toLowerCase();
if(mc.indexOf(cat)!=-1){
createArray(arrayCat);
}
}
return arrayCat;
}


function viewItem(arrayCat)
{
if (arrayCat[cits]==undefined){
return (strDisplay ="Lo sentimos, pero no hay resultados para su busqueda </div><br />Por favor <a href='javascript:void()' onclick='javascript:viewSelect(implicit)'>Regresa</a>");
}
if(arrayCat[cits][2].toLowerCase().indexOf('flash')!=-1){
var vaobj="<embed width=\"430\" height=\"389\" type=\"application/x-shockwave-flash\" wmode=\"transparent\" src="+arrayCat[cits][7]+"></embed>";
}
else if(arrayCat[cits][7].toLowerCase().indexOf('othermedia')!=-1){
var vaobj=arrayCat[cits][7];
}
else{
var vaobj="<span class='cp'><iframe src="+arrayCat[cits][7]+"</iframe><br /><!--<span class='menup'>Powered by <u><a href='http://www.castpost.com' target='_blank'>Castpost</a></u><br /></span></span>-->";
}
strDisplay +="<h3>"+(arrayCat[cits][5])+"</h3><br />";
strDisplay += "<div id='category'>Category:"+vocat(arrayCat[cits][4])+"</div><br />";
strDisplay +="<div id='multimedia'>"+vaobj +"</div>";
strDisplay +="<div id='formato'>Formato: " + arrayCat[cits][2]+"&nbsp;&nbsp;&nbsp;"
strDisplay +="<span id='tamano'>Tamano: "+arrayCat[cits][6]+"</span></div>";
strDisplay +="<div id='itemdescription'>"+(arrayCat[cits][8]) +"<br /></div>";
strDisplay +="<div id='fuente'>Fuente original: <a href='" + arrayCat[cits][1]+"' target='_blank'>"+ arrayCat[cits][3]+"</a>&nbsp;&nbsp;&nbsp;</div>";
strDisplay +="<br>";
return strDisplay;
}

function viewHTML(arrayCat){
viewItem(arrayCat);
if (arrayCat[cits]==undefined){
strDisplay+="";
return strDisplay;
}
strDisplay +="<br>";


}

function viewCat(arrayCat){

cat=viewSelect.arguments[0];
strDisplay ="<div id='videomain'>";
catt=(arrayCat.length);

var step1=step;
nopages= Math.ceil(catt/step1);
mod=(catt%step1);
step1=(mod && page==(nopages))?mod:step1;
for (it=0;it<step1;it++){
cits=(mod && page==(nopages)) ?(it+catt-step1):(it+(page-1)*step1);
viewHTML(arrayCat)

}
viewPrev(nopages);
viewNext(nopages);
strDisplay +="</div>";
divContainer=document.getElementById("videocontainer");
divContainer.innerHTML=strDisplay;
}


function viewSelect(cat)
{

switch (cat){
case "teatro":
viewCat(arrayCat1, teatro);
break;
case "cine":
viewCat(arrayCat2,cine);
break;
case "television":
viewCat(arrayCat3, television);
break;
case "actor":
viewCat(arrayCat4, actor);
break
case "productor":
viewCat(arrayCat5, productor);
break
case "entrevista":
viewCat(arrayCat6, entrevista);
break
case "andi":
viewCat(arrayCat7, andi);
break
case "varios":
viewCat(arrayCat8, varios);
break
case "wsearch":
viewSearch();
break
case "implicit":
viewCat(arrayItems);  
break;
}
}

function viewLinks(){
navsup="<ul title='Categorias'>";
navsup+="<li><a href='#' onclick=\"javascript:updateView('implicit'); \">Todos   ("+arrayItems.length+")</a></li>";
navsup+="<li><a href='#' onclick=\"javascript:updateView('teatro'); \">Teatro ("+arrayCat1.length+")</a></li>";
navsup+="<li><a href='#' onclick=\"javascript:updateView('cine')\">Cine ("+arrayCat2.length+")</a></li>";
navsup+="<li><a href='#' onclick=\"javascript:updateView('television')\">Television ("+ arrayCat3.length+")</a></li>";
navsup+="<li><a href='#' onclick=\"javascript:updateView('actor')\">&lowast;-- Actor ("+ arrayCat4.length+")</a></li>";
navsup+="<li><a href='#' onclick=\"javascript:updateView('productor')\">&lowast;-- Productor (ZUBA) ("+ arrayCat5.length+")</a></li>";
navsup+="<li><a href='#' onclick=\"javascript:updateView('varios')\">&lowast;-- Varios-Campanas ("+ arrayCat8.length+")</a></li>";
navsup+="<li><a href='#' onclick=\"javascript:updateView('entrevista')\">Entrevistas-Chat ("+ arrayCat6.length+")</a></li>"
navsup+="<li><a href='#' onclick=\"javascript:updateView('andi')\">ANDI ("+ arrayCat7.length+")</a></li>";
navsup+="</ul>"
$("videosidebar").innerHTML=navsup;
}

function createArray(arrayCat){
arrayCat[arrayCat.length]=new Array(items[i].getAttribute("ID"),items[i].getAttribute("fuente"),items[i].getAttribute("formato"),items[i].getAttribute("text"),items[i].getAttribute("category"),items[i].getElementsByTagName("title")[0].firstChild.nodeValue,items[i].getElementsByTagName("tamano")[0].firstChild.nodeValue,items[i].getElementsByTagName("link")[0].firstChild.nodeValue,items[i].getElementsByTagName("description")[0].firstChild.nodeValue);
}



function vocat(string){
string=string.replace(/^\s+|\s+$/, '');
var catDisplay  ="";
var ocat=string.split(",");
for (i=0;i< ocat.length;i++){
ocat[i]=ocat[i].replace(/^\s+|\s+$/, '');
catDisplay += "<a href='#' onclick=\"javascript:updateView('"+ocat[i].toLowerCase()+"'); \">"+ocat[i]+"</a> ";
catDisplay +=(i==ocat.length-1)?"":", ";
}
return catDisplay;
}





function next(cat){
page=page+1;
viewSelect(cat);
}

function prev(cat){
page=page-1;
viewSelect(cat);
}

function hasNext(np){
if(np!=0 && page!=np){
return true;
}
else
{
return false;
}
} 

function hasPrev(np){
if(np >1 && page!=1){
return true
}
else {
return false;
}
}

function viewNext(np){
if (hasNext(np)){
if(!hasPrev(np)){
strDisplay +="<input type='button' id='prev' value='Anterior' disabled />";
}
strDisplay +="<input type='button' id='next' value='Siguiente' onclick='next("+cat+")' />";
}
}

function viewPrev(np){
if(hasPrev(np)){
strDisplay +="<input type='button' id='prev' value='Anterior' onclick='prev("+cat+")' />";
if(!hasNext(np)){
strDisplay +="<input type='button' id='next' value='Siguiente' disabled />";
}
}
}

function updateView(cat){
page=1;
viewSelect(cat);
}


	function reportError(originalRequest)
	{
		$('videomain').innerHTML="Lo sentimos. Hay un problema para recibir los datos.";
	}

	
	
//*********
function parseSearch(){
word=document.search[0].value.toLowerCase();
//word=clearChars(word);
word=word.replace(/[^\w]+/g, ' ');  
word=word.replace(/^\s+|\s+$/, '');
word=word.split(' ');
for (i=0;i< total; i++){
sn=items[i].getAttribute("ID");
sdesc=items[i].getElementsByTagName("description")[0].firstChild.nodeValue.toLowerCase();
stitle=items[i].getElementsByTagName("title")[0].firstChild.nodeValue.toLowerCase();
sdesc=unescape(sdesc);
stitle=unescape(stitle);
//stitle=clearText(stitle);
//sdesc=clearText(sdesc); 
for(j=0;j< word.length;j++){
snf=sn.indexOf(word[j])!=-1;
sdescf=sdesc.indexOf(word[j])!=-1;
stitlef=stitle.indexOf(word[j])!=-1;
if(sdescf||stitlef||snf){
createArray(arraySearch);
}
}
} 
arraySearch=arraySearch.removeDuplicates('i'); 
return (arraySearch);
}
function isAlphanumeric(elem, helperMsg){
	var alphaExp = /^[!| |_|0-9a-zA-Z]+$/;
	if(elem.value.match(alphaExp)){
		updateView(wsearch);
	}else{
	$('error').innerHTML=helperMsg;
	
		//alert(helperMsg);
		elem.focus();
		return false;
	}
}
function viewSearch(){
word=document.search[0].value.toLowerCase();
arraySearch=new Array(); 
arraySearch.length=0;
arraySearch=parseSearch(arraySearch); 
viewCat(arraySearch); 
}

Array.prototype.removeDuplicates = function(c)
{
var i,j,temp;
if(c==undefined) c = "s";
temp = this.slice();
for(i = 0; i < temp.length; i++)
{
for(j = 0; j < temp.length; j++)
{
if((c=="s" ? temp[j][8] : temp[j][8].toLowerCase()) ==
(c=="s" ? temp[i] : temp[i][8].toLowerCase())
&& i != j)
{ 
temp.splice(j,1); j-- 
}
}
}
return temp;
}


