var showAssign = 1;
var showCat = 0;
function trim(arg) { 
    return arg.replace(/^\s+/, ''); 
};

/*function createMessage() {
	alert("działam");
	var oP =  document.createElement("p");
	oP.className = "tralala";
	oP.id="cdd";
	oP.setAttribute("id", "cdd");
	var oText = document.createTextNode("Witaj swiecie!");
	oP.appendChild(oText);
	document.body.appendChild(oP);
//	document.getElementById("category").appendChild(oP);
}*/
function addCategory() {
	//search div
	var count = document.getElementById("categories").childNodes.length - 1;
	while (document.getElementById("categories").childNodes[count].nodeName != "DIV" ) {
		count--;
	}
//	alert(document.getElementById("categories").childNodes[count].nodeName);
	
	//search div (add)
	var countAdd = 0;
	while (document.getElementById("categories").childNodes[count].childNodes[countAdd].nodeName != "DIV" ) {
		countAdd++;
	}
//	alert(document.getElementById("categories").childNodes[count].childNodes[countAdd].nodeName);
	
	// search a
	var count1 = document.getElementById("categories").childNodes[count].childNodes[countAdd].childNodes.length - 1;
	while (document.getElementById("categories").childNodes[count].childNodes[countAdd].childNodes[count1].nodeName != "A" ) {
		count1--;
	}
//	alert(document.getElementById("categories").childNodes[count].childNodes[countAdd].childNodes[count1].nodeName);

	// search input
	var count2 = 0;
	while (document.getElementById("categories").childNodes[count].childNodes[countAdd].childNodes[count2].nodeName != "INPUT" ) {
		count2++;
	}
//	alert(document.getElementById("categories").childNodes[count].childNodes[countAdd].childNodes[count2].nodeName);

	//insert before last
	var aP = document.getElementById("categories").childNodes[count].childNodes[countAdd].childNodes[count1];
	var oInput6 = document.createElement("img");
	oInput6.setAttribute("src", "/images/assign/arrow_to_bottom.gif");
	var oInput5 = document.createElement("a");
	var oHref = aP.getAttribute('href');
	oHref = oHref.replace("Up", "Bottom");
	oInput5.setAttribute('href', oHref);
	oInput5.appendChild(oInput6);
    document.getElementById("categories").childNodes[count].childNodes[countAdd].insertBefore(oInput5, aP);

	//insert new category
	var oNumber = document.getElementById("categories").childNodes[count].childNodes[countAdd].childNodes[count2].getAttribute('name');
	oNumber = oNumber.substring(2);
	oNumber++;
	var oDiv = document.createElement("div");
	oDiv.className = "category";
	oDiv.id="c"+oNumber;
	oDiv.setAttribute("id", "c"+oNumber);

	var oDivAdd = document.createElement("div");
	oDivAdd.className="edit";
	oDivAdd.id="cEdit"+oNumber;
	oDivAdd.setAttribute("id", "cEdit"+oNumber);
	var oInput1 = document.createElement("input");
	oInput1.className = "te_check";
	oInput1.setAttribute("type", "checkbox");
	oInput1.setAttribute("name", "ch"+oNumber);
	oDivAdd.appendChild(oInput1);
	var oInput2 = document.createElement("input");
	oInput2.className = "te_input";
	oInput2.setAttribute("type", "tekst");
	oInput2.setAttribute("name", "title"+oNumber);
//	oInput2.setAttribute("value", "tralala");
	oDivAdd.appendChild(oInput2);
	var oInput6 = document.createElement("input");
	oInput6.setAttribute("type", "hidden");
	oInput6.setAttribute("name", "cid"+oNumber);
	oInput6.setAttribute("value", "-1");
	oDivAdd.appendChild(oInput6);
	var oInput4 = document.createElement("img");
	oInput4.setAttribute("src", "/images/assign/arrow_to_up.gif");
	var oInput3 = document.createElement("a");
	oInput3.setAttribute("href", "javascript:toUp("+oNumber+")");
	oInput3.appendChild(oInput4);
	oDivAdd.appendChild(oInput3);
	oDiv.appendChild(oDivAdd);

	var oDivDel = document.createElement("div");
	oDivDel.className="delete";
	var oDel1 = document.createElement("img");
	oDel1.setAttribute("src", "/images/assign/delete.gif");
	var oDel2 = document.createElement("a");
	oDel2.setAttribute("href", "javascript:categoryDelete("+oNumber+")");
	oDel2.appendChild(oDel1);
	oDivDel.appendChild(oDel2);
	oDiv.appendChild(oDivDel);

	
	document.getElementById("categories").appendChild(oDiv);
	//correctly in ff and ie
	document.getElementById("cEdit"+oNumber).getElementsByTagName("input")[0].checked=true;
}
function changeCategories(idActual, idOther) {
	// search input checkbox in actual
	var count1_1 = 0;
	while (idActual.childNodes[count1_1].nodeName != 'INPUT' ) {
		count1_1++;
	}
	//search input text in actual
	var count1_2 = count1_1+1;
	while (idActual.childNodes[count1_2].nodeName != 'INPUT' ) {
		count1_2++;
	}
	//search input text in actual
	var count1_3 = count1_2+1;
	while (idActual.childNodes[count1_3].nodeName != 'INPUT' ) {
		count1_3++;
	}
	// search input checkbox in Up
	var count2_1 = 0;
	while (idOther.childNodes[count2_1].nodeName != 'INPUT' ) {
		count2_1++;
	}
	//search input text in Up
	var count2_2 = count2_1+1;
	while (idOther.childNodes[count2_2].nodeName != 'INPUT' ) {
		count2_2++;
	}
	//search input text in Up
	var count2_3 = count2_2+1;
	while (idOther.childNodes[count2_3].nodeName != 'INPUT' ) {
		count2_3++;
	}
	//change checkbox
	var temp1 = idActual.childNodes[count1_1].checked;
	var temp2 = idOther.childNodes[count2_1].checked;
	idActual.childNodes[count1_1].checked = temp2;
	idOther.childNodes[count2_1].checked = temp1;
	//change text
	var temp1 = idActual.childNodes[count1_2].getAttribute('value');
	var temp2 = idOther.childNodes[count2_2].getAttribute('value');
	idActual.childNodes[count1_2].setAttribute('value', temp2);
	idOther.childNodes[count2_2].setAttribute('value', temp1);
	//change text
	var temp1 = idActual.childNodes[count1_3].getAttribute('value');
	var temp2 = idOther.childNodes[count2_3].getAttribute('value');
	idActual.childNodes[count1_3].setAttribute('value', temp2);
	idOther.childNodes[count2_3].setAttribute('value', temp1);
}
function toUp(oNumber) {
	idActual = document.getElementById('cEdit'+oNumber);
	idOther = document.getElementById('cEdit'+(oNumber-1));
	changeCategories(idActual, idOther)
}
function toBottom(oNumber) {
	idActual = document.getElementById('cEdit'+oNumber);
	idOther = document.getElementById('cEdit'+(oNumber+1));
	changeCategories(idActual, idOther)
}
function showAssignments() {
        if (showAssign == 1) {
         document.getElementById('assignments').style.display = 'none';
         showAssign=0;
         document.getElementById('showAssignments').childNodes[0].nodeValue="Show Assignments";
         return;
        }
        if (showAssign == 0) {
         document.getElementById('assignments').style.display = 'block';
         showAssign=1;
         document.getElementById('showAssignments').childNodes[0].nodeValue="Hide Assignments";
         return;
        }
}
function showCategories() {
        if (showCat == 1) {
         document.getElementById('categories').style.display = 'none';
         showCat=0;
         document.getElementById('showCategories').childNodes[0].nodeValue="Show Categories";
         return;
        }
        if (showCat == 0) {
         document.getElementById('categories').style.display = 'block';
         showCat=1;
         document.getElementById('showCategories').childNodes[0].nodeValue="Hide Categories";
         return;
        }
}
function assignEdit(id) {
	window.location.href="/desk/admin/assignmentEdit.do?id="+id;
}
function assignDelete(id, what) {
	if (confirm("Are you sure you want to delete the '" + what + "' assignment?")) {
		window.location.href = "/desk/admin/assignmentDelete.do?assignmentId=" + id;
	}
}
function categoryChange(oNumber) {
	var aCh = document.getElementById('cS'+oNumber);
	document.getElementById('c'+oNumber).innerHTML=aCh.value;
}
function categoryEdit(oNumber) {
	document.getElementById('cSDiv'+oNumber).style.display='block';
	document.getElementById('bCEdit'+oNumber).style.display='none';
	document.getElementById('bCDelete'+oNumber).style.display='none';
	document.getElementById('bCSave'+oNumber).style.display='inline';
	document.getElementById('bCCancel'+oNumber).style.display='inline';
}
function categorySave(oNumber) {
	document.getElementById('cSDiv'+oNumber).style.display='none';
	document.getElementById('bCEdit'+oNumber).style.display='inline';
	document.getElementById('bCDelete'+oNumber).style.display='inline';
	document.getElementById('bCSave'+oNumber).style.display='none';
	document.getElementById('bCCancel'+oNumber).style.display='none';
	categoryChange(oNumber);
}
function categoryCancel(oNumber) {
	document.getElementById('cSDiv'+oNumber).style.display='none';
	document.getElementById('bCEdit'+oNumber).style.display='inline';
	document.getElementById('bCDelete'+oNumber).style.display='inline';
	document.getElementById('bCSave'+oNumber).style.display='none';
	document.getElementById('bCCancel'+oNumber).style.display='none';
}
function assignChange(oNumber) {
	var aCh = document.getElementById('aS'+oNumber);
	document.getElementById('a'+oNumber).value=aCh.options[aCh.selectedIndex].innerHTML;
	document.getElementById('aSDiv'+oNumber).style.display = 'none';
}
function categoryAdd(where) {
	document.getElementById('bCAddButton'+where).style.display='none';
	document.getElementById('bCAddForm'+where).style.display='inline';
}
function categoryAddSave(where) {
	document.getElementById('bCAddButton'+where).style.display='inline';
	document.getElementById('bCAddForm'+where).style.display='none';
}
function categoryAddCancel(where) {
	document.getElementById('bCAddButton'+where).style.display='inline';
	document.getElementById('bCAddForm'+where).style.display='none';
}
function checkAssignment() {
	document.getElementById('title').value = trim(document.getElementById('title').value);
	if (document.getElementById('title').value.length > 255) {
		document.getElementById('title').value =
			document.getElementById('title').value.substring(0,255);
		alert("Please make sure 'Title' is not longer than 255 characters");
		return false;
	}
	if (document.getElementById('metaDescription').value.length > 255) {
		document.getElementById('metaDescription').value =
			document.getElementById('metaDescription').value.substring(0,255);
		alert("Please make sure 'Meta Description' is not longer than 255 characters");
		return false;
	}
	if (document.getElementById('metaKeywords').value.length > 255) {
		document.getElementById('metaKeywords').value =
			document.getElementById('metaKeywords').value.substring(0,255);
		alert("Please make sure 'Meta Keywords' is not longer than 255 characters");
		return false;
	}
	if (document.getElementById('shortDescription').value.length > 255) {
		document.getElementById('shortDescription').value =
			document.getElementById('shortDescription').value.substring(0,255);
		alert("Please make sure 'Short Description' is not longer than 255 characters");
		return false;
	}
	if (document.getElementById('title').value == '') {
		alert('Please provide the title');
		return false;		
	}
	var startDateYear = document.getElementById("startDateYear");
	var startYear = startDateYear.options[startDateYear.selectedIndex].value;
	var startDateMonth = document.getElementById("startDateMonth");
	var startMonth = startDateMonth.options[startDateMonth.selectedIndex].value;
	var startDateDay = document.getElementById("startDateDay");
	var startDay = startDateDay.options[startDateDay.selectedIndex].value;
	var endDateYear = document.getElementById("endDateYear");
	var endYear = endDateYear.options[endDateYear.selectedIndex].value;
	var endDateMonth = document.getElementById("endDateMonth");
	var endMonth = endDateMonth.options[endDateMonth.selectedIndex].value;
	var endDateDay = document.getElementById("endDateDay");
	var endDay = endDateDay.options[endDateDay.selectedIndex].value;
	var goodDate=1;
	if (startDay.length == 1)
		startDay = "." + startDay;
	if (endDay.length == 1)
		endDay = "." + endDay;
//	alert(startYear);
//	alert(endYear);
//	alert(startMonth);
//	alert(endMonth);
//	alert(startDay);
//	alert(endDay);
	if (endYear < startYear) {
		goodDate=0;
	} else {
		if ((endYear == startYear) && (endMonth < startMonth)) {
			goodDate=0;
		} else { 	
			if ((endYear == startYear) && (endMonth == startMonth) && (endDay <= startDay)) {
				goodDate=0;
			}
		}
	}
	if (goodDate == 0) {
		alert('End Date must be later than the Start Date');
		return false;
	}
}
function categoryDelete(oNumber) {
	var cid = document.getElementById("cid" + oNumber);
	var categoryId = (cid) ? cid.value : -1;
	if (confirm("Are you sure you want to delete this category?")) {
		location.href = "/desk/admin/categoryDelete.do?categoryId=" + categoryId;
	}
}
function seeMoreAssignments() {
//	alert("seeMoreAssignments");
	var seeMoreAssign = document.getElementById('seeMoreAssign');
	seeMoreAssign.style.display='block';
//	document.getElementById('seeMoreText').innerHTML='<span>.....................................................[+] See More Assignments</span>';
	document.getElementById('seeMoreText').innerHTML='<span>&nbsp</span>';
	var dy = (adGetTop(seeMoreAssign) + seeMoreAssign.offsetHeight) - (adGetWindowScrollTop() + adGetWindowHeight());
	if (dy > 0) {
		window.scrollBy(0, dy);
	}
}
function seeMoreAssignmentsClose() {
//	alert("seeMoreAssignmentsClose");
	document.getElementById('seeMoreAssign').style.display='none';
	document.getElementById('seeMoreText').innerHTML='<a href="javascript:void(0);" onclick="seeMoreAssignments();">.....................................................[+] See More Assignments</a>';
}
function changeVideo(nr) {
//	alert(nr);
	ajaxSetContent('assignVideoDataDiv', '/fragments/assign/assignmentVideoData.jsp?nr='+nr);
}

function adGetWindowScrollTop() {
	return ((document.all) ? document.body.scrollTop : window.scrollY);
}

function adGetWindowScrollLeft() {
	return ((document.all) ? document.body.scrollLeft : window.scrollX);
}

function adGetTop(obj) {
	var result = 0;
	while (obj) {
		result += obj.offsetTop;
		obj = obj.offsetParent;
	}
	return result;
}

function adGetLeft(obj) {
	var result = 0;
	while (obj) {
		result += obj.offsetLeft;
		obj = obj.offsetParent;
	}
	return result;
}

function adGetWindowHeight() {
	if (typeof (window.innerWidth) == 'number') {
		//Non-IE
		return window.innerHeight;
	}
	if (document.documentElement && (document.documentElement.clientWidth || document.documentElement.clientHeight)) {
		//IE 6+ in 'standards compliant mode'
		return document.documentElement.clientHeight;
	}
	if (document.body && (document.body.clientWidth || document.body.clientHeight)) {
		//IE 4 compatible
		return document.body.clientHeight;
	}
	return 0;
}