/***********************************************
* Contractible Headers script- ? Dynamic Drive (www.dynamicdrive.com)
* This notice must stay intact for legal use. Last updated Mar 23rd, 2004.
* Visit http://www.dynamicdrive.com/ for full source code
***********************************************/

var enablepersist="on" //Enable saving state of content structure using session cookies? (on/off)
var collapseprevious="no" //Collapse previously open content when opening present? (yes/no)

var MasterID= "";

if (document.getElementById){
document.write('<style type="text/css">')
document.write('.switchcontent{display:none;}')
document.write('</style>')
}

function getElementbyClass(classname){
ccollect=new Array()
var inc=0
var alltags=document.all? document.all : document.getElementsByTagName("*")
for (i=0; i<alltags.length; i++){
if (alltags[i].className==classname)
ccollect[inc++]=alltags[i]
}
}

function contractcontent(omit){
var inc=0
while (ccollect[inc]){
if (ccollect[inc].id!=omit)
ccollect[inc].style.display="none"
inc++
}
}

function expandcontent(cid){
if (typeof ccollect!="undefined"){
if (collapseprevious=="yes")
contractcontent(cid)
document.getElementById(cid).style.display=(document.getElementById(cid).style.display!="block")? "block" : "none"
}
}

function revivecontent(){
contractcontent("omitnothing")
selectedItem=getselectedItem()
selectedComponents=selectedItem.split("|")
for (i=0; i<selectedComponents.length-1; i++)
document.getElementById(selectedComponents[i]).style.display="block"
}

function get_cookie(Name) { 
var search = Name + "="
var returnvalue = "";
if (document.cookie.length > 0) {
offset = document.cookie.indexOf(search)
if (offset != -1) { 
offset += search.length
end = document.cookie.indexOf(";", offset);
if (end == -1) end = document.cookie.length;
returnvalue=unescape(document.cookie.substring(offset, end))
}
}
return returnvalue;
}

function getselectedItem(){
if (get_cookie(window.location.pathname) != ""){
selectedItem=get_cookie(window.location.pathname)
return selectedItem
}
else
return ""
}

function saveswitchstate(){
var inc=0, selectedItem=""
while (ccollect[inc]){
if (ccollect[inc].style.display=="block")
selectedItem+=ccollect[inc].id+"|"
inc++
}

document.cookie=window.location.pathname+"="+selectedItem
}

function do_onload(){
uniqueidn=window.location.pathname+"firsttimeload"
getElementbyClass("switchcontent")
if (enablepersist=="on" && typeof ccollect!="undefined"){
document.cookie=(get_cookie(uniqueidn)=="")? uniqueidn+"=1" : uniqueidn+"=0" 
firsttimeload=(get_cookie(uniqueidn)==1)? 1 : 0 //check if this is 1st page load
if (!firsttimeload)
revivecontent()
}
}


if (window.addEventListener)
window.addEventListener("load", do_onload, false)
else if (window.attachEvent)
window.attachEvent("onload", do_onload)
else if (document.getElementById)
window.onload=do_onload

if (enablepersist=="on" && document.getElementById)
window.onunload=saveswitchstate


function expand()
{
	var content = document.getElementById("toExpand");
	var readMore = document.getElementById("readMore");
	var minimize = document.getElementById("minimize");
	var summary = document.getElementById("summary");
	summary.innerHTML = summary.innerHTML.substr(0, (summary.innerHTML.length-3));
	readMore.style.width = "0";
	content.style.display = "inline";
	readMore.style.display = "none";
	minimize.style.display = "inline";
}
function minimize()
{
	var content = document.getElementById("toExpand");
	var readMore = document.getElementById("readMore");
	var minimize = document.getElementById("minimize");
	var summary = document.getElementById("summary");
	summary.innerHTML +=  "...";
	readMore.style.width = "auto";
	
	content.style.display = "none";
	readMore.style.display = "inline";
	minimize.style.display = "none";
}


function generateKeyword (masterid)
{
	
	var url = "processGenerateKeyword.php?sid=" + Math.random() ;
	
	MasterID = masterid;
	form = document.getElementById("formGenerateKeyword_"+ masterid);
	totalElements = form.elements.length;
	pVars =  "&masterid="+ MasterID;
	for (i = 0; i< totalElements; i++)
	{
		element = form.elements[i];
		if (element.checked == true)
		{
			varName =  element.name;
			pVars += "&"+ varName+  "=true";
		}
	}
	
	xmlHttp=GetXmlHttpObject(resultGenerateKeyword);
	xmlHttp.open("POST", url , true);
	xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
	document.getElementById("containerUnique_" + MasterID).innerHTML = "processing...";
	xmlHttp.send(pVars);
	return true;
}

function resultGenerateKeyword ()
{
	if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete")
	{
		var datos;
		datos = (xmlHttp.responseText);
		document.getElementById("containerUnique_" + MasterID).innerHTML = datos;
	}
}


/*
 * Author: DZone Snippets, reference: http://snippets.dzone.com/posts/show/3495 since 22 Nov 2007
 * Function: getElementsByClass
 * @param {Object} searchClass
 * @param {Object} node
 * @param {Object} tag
 */

function getElementsByClass(searchClass,node,tag) {

	var classElements = new Array();
	if (node == null)
		node = document;
	if (tag == null)
		tag = '*';
	var els = node.getElementsByTagName(tag);
	var elsLen = els.length;
	var pattern = new RegExp("(^|\\s)"+searchClass+"(\\s|$)");
	var j = 0;
	for (i = 0; i < elsLen; i++) {
		if (pattern.test(els[i].className) ) {
			classElements[j] = els[i];
			j++;
		}
	}
	return classElements;
}


function hideTables( show )
{
	
	theButton	= document.getElementById("buttonViewForms");
	
	
	if (show)
	{
		strDisplay = "none";
		theButton.innerHTML = "Show forms to generate keywords";
		theButton.onclick = function( )
		{
			hideTables(false);
		}
		
		
	}
	else
	{
				strDisplay = "block";
		theButton.innerHTML = "Hide forms to generate keywords";
		theButton.onclick = function( )
		{
			hideTables(true);
		}
	}
	
	
	elementsToHide = getElementsByClass( "containerGenerateKeyword");
	
	total = elementsToHide.length;
	for ( i =0 ; i< total; i++)
	{
		elementsToHide[i].style.display = strDisplay;
	}
	
	
}




