/**
 * @package   BasicSchool (bs.announce.js)
 * @version   2.5 for Jommla 1.5 (Id:20091231)
 * @copyright (C) 2008 Ryszard Rychert
 * @License   Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported
 *              see http://creativecommons.org/licenses/by-nc-sa/3.0
 * You are free:
 *   - to copy, distribute and transmit the work
 *   - to adapt the work
 * Under the following conditions:
 *   - You must attribute the work in the manner specified by the author or licensor
 *   - You may not use this work for commercial purposes
 *   - If you alter, transform, or build upon this work, you may distribute the resulting
 *     work only under the same or similar license to this one.
 * This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
*/

	var oneadvanced="yes" //jednoczesnie jedno rozwiniente (yes/no)
	var sessionremember="off" //pamiętanie stanu ogłoszeń z poprzedniej sesji rozw./nierozw.(on/off)
	var imgcollapse='<?php echo JURI::root(); ?><img src="components/com_basicschool/assets/images/collapseall.png">&nbsp;&nbsp; '
	var imgexpand='<?php echo JURI::root(); ?><img src="components/com_basicschool/assets/images/expandall.png">&nbsp;&nbsp; '

    function getElementbyClass(obj, classname){
		var tmparray = new Array();
		var inc=0;
		var objlength = obj.length;
		for (i=0; i<objlength; i++) {
			if (obj[i].className==classname)
				tmparray[inc++]=obj[i];
		}
		return tmparray;
	}

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

	function sweeptoggle(ec){
		var thestate=(ec=="expand")? "block" : "none";
		var inc=0;
		while (ccollect[inc]){
			ccollect[inc].style.display=thestate;
			inc++;
		}
		revivestatus();
	}

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

	function expandcontent(curobj, cid){
		var spantags=curobj.getElementsByTagName("SPAN");
		var showstateobj=getElementbyClass(spantags, "showstate");
		if (ccollect.length>0){
			if (oneadvanced=="yes")
				contractcontent(cid);
			document.getElementById(cid).style.display=(document.getElementById(cid).style.display!="block")? "block" : "none";
			if (showstateobj.length>0){
				if (oneadvanced=="no")
					showstateobj[0].innerHTML=(document.getElementById(cid).style.display=="block")? imgcollapse : imgexpand;
				else
					revivestatus();
			}
		}
	}

	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 revivestatus(){
		var inc=0;
		while (statecollect[inc]){
			if (ccollect[inc].style.display=="block")
				statecollect[inc].innerHTML=imgcollapse;
			else
				statecollect[inc].innerHTML=imgexpand;
			inc++;
		}
	}

	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";
		var alltags=document.all? document.all : document.getElementsByTagName("*");
		ccollect=getElementbyClass(alltags, "switchcontent");
		statecollect=getElementbyClass(alltags, "showstate");
		if (sessionremember=="on" && ccollect.length>0){
			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 (ccollect.length>0 && statecollect.length>0)
			revivestatus();
	}

	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 (sessionremember=="on" && document.getElementById)
		window.onunload=saveswitchstate;
