/**
 * Highlighter element i resultatlisten fra søgefeltet.
 * @elem: Det aktuelle element
 */
function highlight(elem) {
	elem.style.backgroundColor = "#f067a4";
	elem.style.color = "white";
}

/**
 * Fjerner highlight af element i resultatlisten fra søgefeltet.
 * @elem: Det aktuelle element
 */
function no_highlight(elem) {
	elem.style.backgroundColor = "transparent";
	elem.style.color = "black";
}

/**
 * Bringer en advarsel hvis man forsøger at skrive nyheder uden at være logget ind.
 */
function no_login() {
	alert("Du skal logge ind for at kunne skrive, opdatere og kommentere nyheder.");
	document.getElementById("loginnavn").focus();
	document.getElementById("loginnavn").style.backgroundColor = "yellow";
}


/**
 * Viser det faneblad brugeren klikker på.
 * @faneblad: Et af de tre faneblade i skrivspalten.
 */
function vis_faneblad(faneblad) {
	if(document.getElementById("skrivny")) {  //hvis man er logget ind (dvs hvis nyhedsfeltet vises)
		if(faneblad == "skrivny") {
			document.getElementById("opdater_en_nyhed").className = "skjult_rubrik";
			document.getElementById("kommenter_en_nyhed").className = "skjult_rubrik";
			document.getElementById("skrivny").className = 'vist_faneblad';
			document.getElementById("opdater").className = "skjult_faneblad";
			document.getElementById("kommenter").className = "skjult_faneblad";
		}
		else if(faneblad == "opdater") {
			document.getElementById("opdater_en_nyhed").className = "vist_rubrik";
			document.getElementById("kommenter_en_nyhed").className = "skjult_rubrik";
			document.getElementById("opdater").className = "vist_faneblad";
			document.getElementById("skrivny").className = "skjult_faneblad";
			document.getElementById("kommenter").className = "skjult_faneblad";
		}
		else if(faneblad == "kommenter") {
			document.getElementById("kommenter_en_nyhed").className = "vist_rubrik";
			document.getElementById("opdater_en_nyhed").className = "skjult_rubrik";  //skjuler evt rubrik fra opdater
			document.getElementById("kommenter").className = "vist_faneblad";
			document.getElementById("skrivny").className = "skjult_faneblad";
			document.getElementById("opdater").className = "skjult_faneblad";
		}
	}
}

/**
 * Viser kommentarfelt i 1. kolonne med overskrift fra valgt nyhed
 * eller kalder vis_opdater_felt hvis brugeren har klikket på opdater-fanebladet.
 * @nyhed_rub: Nyhedens rubrik.
 * @uid: Nyhedens unikke id
*/
function vis_kommentar_felt(nyhed_rub, nyhlink_uid) {
	if(document.getElementById("skrivny")) {  //hvis man er logget ind (dvs hvis nyhedsfeltet vises)
		if (document.getElementById("opdater").className == "vist_faneblad") {
			vis_opdater_felt(nyhed_rub, nyhlink_uid);
		}
		else {
			vis_faneblad("kommenter");
			document.getElementById("kommenter_en_nyhed").className = "vist_rubrik";
			document.getElementById("kommenter_en_nyhed").value = "\"" + nyhed_rub + "\"";
			document.getElementById("nyhlink_uid_komm").value = nyhlink_uid;
		}
	}
}


/**
 * Viser opdaterfelt i 1. spalte med overskrift fra valgt link i nyhed.
 * @nyhed_rub: Nyhedens rubrik.
 * @nyhlink_uid: Nyhedens unikke id
 */
function vis_opdater_felt(nyhed_rub, nyhlink_uid) {
	vis_faneblad("opdater");
	document.getElementById("opdater_en_nyhed").className = "vist_rubrik";
	document.getElementById("opdater_en_nyhed").value = "\"" + nyhed_rub + "\"";
	document.getElementById("nyhlink_uid_opd").value = nyhlink_uid;
}


/**
 * Synliggør den del af nyheden der er skjult
 * når brugeren klikker på en nyhedsrubrik.
 * @uid: Nyhedens unikke id.
 * @elem: Parent element til nyheden, dvs. div class=nyhed-element, bruges til hent_kommentarer
 */
function vis_nyhed(uid, elem) {
	if (document.getElementById(uid)) {
	  var obj_height = document.getElementById(uid).style.height;

	  if (obj_height == "0px") {  //hvis div-objektet er 0px, vis da div
	    obj = document.getElementById(uid);
			document.getElementById(uid).style.height = "";
			document.getElementById(uid).className = "vist_nyhed";

			//hvis højden på artiklen er mindre end højden på intern-link-elementet
			//sæt artikelhøjde til højden på intern-link-elementet
			if (document.getElementById(uid).offsetHeight < document.getElementById(uid).childNodes.item("nyhlink").offsetHeight) {
	      document.getElementById(uid).style.height = document.getElementById(uid).childNodes.item("nyhlink").offsetHeight + "px";
			}

			hent_kommentarer(uid, elem);
		}

		else {  //hvis objekt ikke er 0px, dvs. hvis det er synligt, skjul det
		  obj = document.getElementById(uid);
			obj.style.height = "0px";
			obj.className = "skjult_nyhed";
			if (document.getElementById("k" + uid))  //k + uid = id på kommentarfeltet
				skjul_kommentarer("k" + uid);
		}
	}
	else {
	}
}


/**
 * Nyheden vises for brugeren i nyhedsspalten inden hun gemmer.
 * @form1: Den html-formular der bruges til brugernes indtastninger i skrivfelterne. 
 */
 
function skriv_dynamisk(form1) {
	var form_elem = form1.childNodes;  //henter alle underelementer i formularen

	//initiere values og dato
	var div_tekst = "";
	var inp_value = "";
	var date = new Date();
	var day = date.getDate();
	if (day < 10)
	  day = "0" + day;
	var month = date.getMonth() + 1;
	if (month < 10)
	  month = "0" + month;
	var year = date.getYear();
	if (year < 2000) {
		year = (year + 1900).toString();
		year = year.substr(2,2);
	}
	var dato = day + "." + month + "." + year;

	for(i = 0; i < form_elem.length; i++) {
	  inp_value = form_elem[i].value;
		//hvis elementet er input eller textarea
		if (form_elem[i].nodeName == "INPUT" || form_elem[i].nodeName == "TEXTAREA") {
			//elementet "hidden" forhindrer text på knapper i at blive vist
		  if (form_elem[i].id == "hidden")
		    break;
			//hvis der står noget i elementets values, tilføj det til div_tekst valueen
		  if (inp_value != "") {
	      inp_value2 = inp_value.replace(/\n/g,"<br />");  //erstat linjeskift med <br />-tag
				if (form_elem[i].id == "rubrik")  //hvis det er en rubrik, tilføj dato + fed skrift
				  div_tekst += dato + " <b>" + inp_value2 + "</b><br />";
				else
					div_tekst += inp_value2 + "<br />";
			}
		}
	}
	//vis div_tekst i begyndelsen af nyhedsoversigten
  document.getElementById("dynamisk_skriv_div").innerHTML = div_tekst;
}


/**
 * Sletter indholdet i skrivfelterne igen efter brugerens nyhed er gemt.
 */
function clear_form(form_elem) {
	for(i = 0; i < form_elem.length; i++) {
		//hvis elementet er input eller textarea
		if (form_elem[i].nodeName == "INPUT" || form_elem[i].nodeName == "TEXTAREA") {
		  if (form_elem[i].id == "hidden")
		    break;
			//hvis der står noget i elementets values, slettes det
			form_elem[i].value = "";
		}
	}
	skriv_dynamisk(form_elem);
}

