var Image_Array;
var Stat_Array = new Array(0,0,0,10);
var FilterList = new Array(0,0,0,0,0,0);
var FilterdIndex;
var sQ;

function AjaxQueryGeneric(QueryFile,ReturnFunction)
{
var ajaxRequest;
var StringOut1 = "";	
	try
	{
		ajaxRequest = new XMLHttpRequest();
	} 
	catch (e)
	{
		try
		{
			ajaxRequest = new ActiveXObject("Msxml2.XMLHTTP");
		} 
		catch (e) 
		{
			try
			{
				ajaxRequest = new ActiveXObject("Microsoft.XMLHTTP");
			} 
			catch (e)
			{
				document.getElementById('Out2').innerHTML="Error: AJAX"
			}
		}
	}
	ajaxRequest.onreadystatechange = function()
	{
		if(ajaxRequest.readyState == 4)
		{
			StringOut1 = ReturnFunction+"(ajaxRequest.responseText)";
			eval(StringOut1);	
		}
	}
	ajaxRequest.open("GET", QueryFile, true);
	ajaxRequest.send(null);
}

function PickSelect()
{
if(document.getElementById('SortByType').value==1)
{
	document.getElementById('MainSearchBy').innerHTML = '<input type=text size=5 id="ValueTxt"><select size="0" id="SorceMenu"><option value="M">MegaTokyo</option><option value="F">Fredart - Sketch</option><option value="D">Fredart - Dumpbox</option><option value="S">MTSpecails</option><option value="G">MTGoodies</option><option value="B">Blurred</option><option value="W">Warmth</option><option value="A">FanArt</option><option value="I">Mixed/Composit</option><option value="O">Other</option></select>';
}
else if((document.getElementById('SortByType').value==2)||(document.getElementById('SortByType').value==4)||(document.getElementById('SortByType').value==6))
{
	document.getElementById('MainSearchBy').innerHTML = '<input type=text size=17 id="ValueTxt">';
}
else if(document.getElementById('SortByType').value==3)
{
	document.getElementById('MainSearchBy').innerHTML = '<select size="0" id="ValueTxt"></select>';
	NameListAjax();
}
else if(document.getElementById('SortByType').value==5)
{
	document.getElementById('MainSearchBy').innerHTML =  '<input type="button" onclick="PickSelect()" value="open window" />';
	sQ=window.open("selecter.html", "selecter","width=450,height=550,scrollbars=yes,resizable=yes"); 
}
}

function NameListAjax()
{
AjaxQueryGeneric("Ajax_Query1.php","UpdateNameList");
}

function UpdateNameList(ReturnString)
{
document.getElementById('MainSearchBy').innerHTML = '<select size="0" id="ValueTxt">'+ReturnString+'</select>';
}

function SortButton()
{
var SorceMenu = ""
var SortByType = document.getElementById('SortByType').value;
if(document.getElementById('SorceMenu')!=null)
{
	SorceMenu = "&SorceMenu="+document.getElementById('SorceMenu').value;
}
if(SortByType!="5")
	var ValueTxt = document.getElementById('ValueTxt').value;
else
{
	var ValueTxt = sQ.SS;
	SortByType+="&AST="+sQ.document.getElementById('AdSearchType').value

}
var GetText = "?SortByType="+SortByType+SorceMenu+"&ValueTxt="+ValueTxt;
AjaxQueryGeneric("Ajax_Query3.php"+GetText,"UpdateImageArray");
}

function UpdateImageArray(ReturnString)
{
eval(ReturnString);
Stat_Array[0] = Image_Array[0][0];
Stat_Array[1] = Image_Array[0][0];
Stat_Array[2] = 0;
FilterResults();
}

function MakeHeader()
{
var SA = Stat_Array;	
var ShowNum = SA[3];
document.getElementById('Page').innerHTML='<a href="javascript: void(0)" onClick="PageDown()"> &lt </a>    <a href="javascript: void(0)" onClick="PageUp()">&gt</a>';
document.getElementById('Control').innerHTML='<a href="javascript: void(0)" onClick="DrawControl()">Options</a>';
if( (SA[2]+SA[3]) > SA[1])
	ShowNum = SA[1] - SA[2];
document.getElementById('Out2').innerHTML='Showing:'+P0(SA[2]+1)+'-'+P0(SA[2]+ShowNum)+' of '+P0(SA[1])+'/'+P0(SA[0]);
DrawGallery();
}

function P0(In)
{
if(In > 10)
	return In;
else
	return '0'+In;
}

function DrawGallery()
{
var OutString = "";
var IStart = (Stat_Array[2]);
var IEnd = IStart+Stat_Array[3];
if(IEnd >= Stat_Array[1])
	IEnd=Stat_Array[1]; 
var Index=0;
for (Index=IStart;Index<IEnd;Index=Index+1)
{
	if(FilterdIndex[Index+1])
	{
		var TA = Image_Array[Index+1];
		var PicArray = new Array(TA[1].replace(/"/,"&quot;")+'/'+TA[0],TA[1].replace(/"/,"&quot;")+'/.thumbs/'+TA[0]+'.jpg',TA[3],CodeToType(TA[4]),TA[1],TA[2],ParseFlagsCodeToType(TA[5]));	
		OutString=OutString+'<div style="float:left;"><table class"test" style="text-align:center;"><tbody><tr><td style="height:165px;width:165;"><a href="'+PicArray[0]+'"><img src="'+PicArray[1]+'" title="Image" alt="Not Found" style="border: 0px solid"></a></td></tr> <tr><td>&nbsp;#'+PicArray[2]+' - '+PicArray[3]+'&nbsp;</td></tr><tr><td>&nbsp;'+PicArray[4]+'&nbsp;</td></tr><tr><td>&nbsp;'+PicArray[5]+'&nbsp;</td></tr><tr><td>&nbsp;'+PicArray[6]+'&nbsp;</td></tr></tbody></table></div>';
	}
	else
	{
		if( (IEnd+1) <= Stat_Array[1])
			IEnd+=1;
	}
}
document.getElementById('GalleryMain').innerHTML=OutString;
DrawFooter();
}


function HideControls()
{
document.getElementById('CPanel').style.visibility='hidden';
}


function DrawControl()
{
document.getElementById('CPanel').innerHTML='<table style="margin:10px;"><tbody>'+
'<tr><td style="text-align: center;" colspan="2">Display Options</td></tr>'+
'<tr><td>Images Per Page</td><td><input type="text" size="2" value="'+Stat_Array[3]+'" id="SA3" onChange="ImgCountUp()"></td></tr>'+
'<tr><td style="text-align: center;" colspan="2"><BR></td></tr>'+
'<tr><td style="text-align: center;" colspan="2">Filter Results</td></tr>'+
'<tr><td>Wallpapers</td><td><input type="checkbox" id="FF0" "'+PTC(FilterList[0])+'" value="1" onChange="CreateFilters()"></td></tr>'+
'<tr><td>Panel</td><td><input type="checkbox" id="FF1" "'+PTC(FilterList[1])+'" value="1" onChange="CreateFilters()"></td></tr>'+
'<tr><td>Full Comic</td><td><input type="checkbox" id="FF2" "'+PTC(FilterList[2])+'" value="1" onChange="CreateFilters()"></td></tr>'+
'<tr><td>Avatar</td><td><input type="checkbox" id="FF3" "'+PTC(FilterList[3])+'" value="1" onChange="CreateFilters()"></td></tr>'+
'<tr><td>Banner</td><td><input type="checkbox" id="FF4" "'+PTC(FilterList[4])+'" value="1" onChange="CreateFilters()"></td></tr>'+
'<tr><td>MT Originals</td><td><input type="checkbox" id="FF5" "'+PTC(FilterList[5])+'" value="1" onChange="CreateFilters()"></td></tr>'+
'<tr><td style="text-align: center;" colspan="2"><BR></td></tr>'+
'<tr><td style="text-align: center;"  colspan="2"><a href="javascript:void(0)" onClick="HideControls()">Close</a></td></tr></tbody></table>'
document.getElementById('CPanel').style.visibility='visible';
}
function PTC(value)
{
if(value==1||value=='true')
	return 'checked'
else
	return ''
}

function ImgCountUp()
{
var A = parseInt(document.getElementById('SA3').value,10);
if (!isNaN(A))
	Stat_Array[3] = A;
SaveCookie();
MakeHeader();
}

function CreateFilters()
{
for(A in FilterList)
	FilterList[A]=document.getElementById('FF'+A).checked;
FilterResults();
}

function FilterResults()
{
var A;
var B;
var C;
var Filter;
var temparr;
A=B=C=0;
FilterdIndex = new Array();
for(A in Image_Array)
{
	temparr = Image_Array[A];
	Filter=false;		
	if(A==0)
		Filter=true;		
	for(B=0;B<5;B+=1)
		if( (Image_Array[A][5].charAt(B)==1)&&FilterList[B])
			Filter=true;

	if( (Image_Array[A][1]=="MegatokyoOriginals")&&FilterList[5])
		Filter=true;


	FilterdIndex[A]=!Filter;
	if(!Filter)
		C+=1;
}
Stat_Array[1]=C;
if(Stat_Array[2]>Stat_Array[1])
	Stat_Array[2]=Stat_Array[1];
MakeHeader();
}

function PageUp()
{
if( (Stat_Array[2]+Stat_Array[3])<Stat_Array[1])
	Stat_Array[2]=Stat_Array[2]+Stat_Array[3];
MakeHeader();
}

function PageDown()
{
if( (Stat_Array[2]-Stat_Array[3])>0)
	Stat_Array[2]=Stat_Array[2]-Stat_Array[3];
else
	Stat_Array[2]=0;
MakeHeader();
}

function CodeToType(Type)
{
var Index;
var CodeArr = new Array('M','F','D','S','G','B','W','A','I');
var TypeArr = new Array('MegaTokyo','FredArt - Sketch','FredArt - Dumpbox','MT Specails','MT Goodies','Blurred','Warmth','Fan Art','Mixed/Composit');
for(Index in CodeArr)
{
	if(Type==CodeArr[Index])
		return TypeArr[Index];
}
}

function ParseFlagsCodeToType(Flags)
{
var FlagsStr = "";
var Index;
var FlagsArr = new Array('Wallpaper','Panel','Full Comic','Avatar','Banner','Haruhi Colors');
for(Index=0;Index<6;Index+=1)
{
	if(Flags.charAt(Index)=='1')
		FlagsStr = FlagsStr + FlagsArr[Index] +" ";
}
return FlagsStr;
}


function LoadCookie()
{
var A = 0;
if (document.cookie.length>0)
{
  	c_start=document.cookie.indexOf('SciNet_Image_Gallery' + "=");
  	if (c_start!=-1)
    	{ 
    		c_start=c_start + 'SciNet_Image_Gallery'.length+1; 
    		c_end=document.cookie.indexOf(";",c_start);
    		if (c_end==-1) 
			c_end=document.cookie.length;
		A = parseInt(document.cookie.substring(c_start,c_end));
    	} 
}
if ( (!isNaN(A)) && A!=0 )
	Stat_Array[3] = A;
}

function SaveCookie()
{
var exdate=new Date();
exdate.setDate(exdate.getDate()+30);
document.cookie='SciNet_Image_Gallery' + "=" + Stat_Array[3] + ";expires=" + exdate.toGMTString();
}

function DrawFooter()
{
}

