//Copyright © 2005 PAULGRANT.CA
//http://actionfigurechecklist.com

function Clear()
{
	var i			= 0;
	var oElement	= null;

	var oForm = document.frmFeed;
	if(!oForm)
		return false;

	for(i = 0; i < oForm.elements.length; i++)
	{
		oElement = oForm.elements[ i ];
		if(!oElement)
			break;

		if(oElement.type == "checkbox")
			oElement.checked = false;
	}

	return true;
}

function AddFeed()
{
	var i			= 0;
	var	aItem		= null;
	var oChk		= null;
	var sData		= "";
	var sId			= "";
	var iCount		= 0;
	var iTotal		= 0;
	var bFound		= 0;
	var sItemId		= "";
	var sItemIdPrev	= "";

	this.iCountEach = 0;
	this.iTotalEach	= 0;

	var oForm = document.frmFeed;
	if(!oForm)
		return false;

	var oFeed = oForm.txtFeed;
	if(!oFeed)
		return false;

	var sFeed = oFeed.value;
	if(!sFeed)
		return false;

	var aData = sFeed.split("\n");

	for(i = 0; i < aData.length; i++)
	{
		sData = aData[ i ];
		if(!sData)
			continue;

		aItem = sData.split("|");
		if(!aItem)
			break;

		sItemId = Number(aItem[ 0 ]) + "_" + Number(aItem[ 1 ]) + "_" + Number(aItem[ 2 ]);
		if(sItemId != sItemIdPrev)
		{
			this.iCountEach += ((bFound) ? 1 : 0);
			this.iTotalEach++;

			bFound		= false;
		}
		sItemIdPrev	= sItemId;

		sId = "chk_" + Number(aItem[ 0 ]) + "_" + Number(aItem[ 1 ]) + "_" + Number(aItem[ 2 ]) + "_" + Number(aItem[ 3 ]);

		oChk = eval("document.frmFeed." + sId);
		if(!oChk)
			continue;

		oChk.checked = ((aItem[ 4 ] == 1) ? true : false);

		if(aItem[ 4 ] == 1)
		{
			iCount++;
			bFound = true;
		}

		iTotal++;
	}

	this.iCountEach += ((bFound) ? 1 : 0);

	this.ShowStats(iCount,iTotal);

	return true;
}

function GetFeed()
{
	var i			= 0;
	var oElement	= null;
	var sString		= "";
	var aChk		= new Array();
	var iCount		= 0;
	var iTotal		= 0;
	var bFound		= 0;
	var sItemId		= "";
	var sItemIdPrev	= "";

	this.iCountEach = 0;
	this.iTotalEach	= 0;

	var oForm = document.frmFeed;
	if(!oForm)
		return false;

	var oFeed = oForm.txtFeed;
	if(!oFeed)
		return false;

	for(i = 0; i < oForm.elements.length; i++)
	{
		oElement = oForm.elements[ i ];
		if(!oElement)
			break;

		if(oElement.type == "checkbox")
		{
			aChk = oElement.name.split("_");

			sItemId = Number(aChk[ 1 ]) + "_" + Number(aChk[ 2 ]) + "_" + Number(aChk[ 3 ]);
			if(sItemId != sItemIdPrev)
			{
				this.iCountEach += ((bFound) ? 1 : 0);
				this.iTotalEach++;

				bFound		= false;
			}
			sItemIdPrev	= sItemId;

			for(j = 1; j < aChk.length; j++)
				sString += aChk[ j ] + "|";

			sString += ((oElement.checked) ? "1" : "0") + "\n";

			if(oElement.checked)
			{
				iCount++;
				bFound = true;
			}

			iTotal++;
		}
	}

	oFeed.value = sString;

	this.iCountEach += ((bFound) ? 1 : 0);

	this.ShowStats(iCount,iTotal);

	return true;
}

function ShowStats(iCount, iTotal)
{
	var sString = "<CENTER>" + iCount + " of " + iTotal + " Figures</CENTER>";

	sString += "<CENTER>" + this.iCountEach + " of " + this.iTotalEach + " Characters</CENTER>";

	var oDiv = document.getElementById("divStats");
	if(oDiv)
		oDiv.innerHTML = sString;

	return true;
}

function DoCheck(sId)
{
	var oChk = eval("document.frmFeed." + sId);
	if(!oChk)
		return false;

	oChk.checked = ((oChk.checked) ? false : true);

	return true;
}

//Class.

function ChecklistTradeFig_Class()
{
	this.iCountEach = 0;
	this.iTotalEach	= 0;

	this.Clear		= Clear;
	this.AddFeed	= AddFeed;
	this.GetFeed	= GetFeed;
	this.ShowStats	= ShowStats;

	return this;
}

var oTradeFig = new ChecklistTradeFig_Class();

//End.

