//# Veckonummber till date objektet

Date.prototype.getWeek = function () {
	var determinedate = new Date();
	determinedate.setFullYear(this.getFullYear(), this.getMonth(), this.getDate());
	var D = determinedate.getDay();
	if (D == 0) D = 7;
	determinedate.setDate(determinedate.getDate() + (4 - D));
	var YN = determinedate.getFullYear();
	var ZBDoCY = Math.floor((determinedate.getTime() - new Date(YN, 0, 1, -6)) / 86400000);
	var WN = 1 + Math.floor(ZBDoCY / 7);
	return WN;
}

//Date.prototype.getWeek = function () {
//	var onejan = new Date(this.getFullYear(), 0, 1);
//	var today = new Date(this.getFullYear(), this.getMonth(), this.getDate());
//	var dayOfYear = ((today - onejan + 1) / 86400000);
//	return Math.ceil(dayOfYear / 7)
//};

//# Antagligen en fil som inte används förutom clearPostData-funktionen som används av glömt lösenords-kontrollen


function clearPostData(exeptions) {
	var pdl = document.getElementsByTagName("input");
	for (var ind = 0; ind < pdl.length; ind++) {
		try {
			if (pdl[ind].type == 'text' && pdl[ind].value && pdl[ind].id.indexOf(exeptions) < 0) {
				pdl[ind].value = '';
			}
		}
		catch (e) {
			alert(e.Message);
		}
	}
} 

//****************************************************************************
// LOGIN FORM ****************************************************************
//****************************************************************************
function showLogin() {
	if (document.getElementById('loginFormHolder')) {
		document.getElementById('loginBtnHolder').style.display = 'none';
		document.getElementById('loginFormHolder').style.display = 'block';
	} else {
		alert('login knapp hittas inte:' + document.getElementById('loginFormHolder'));
	}
}
function hideLogin() {
	if (document.getElementById('loginFormHolder')) {
		document.getElementById('loginBtnHolder').style.display = 'block';
		document.getElementById('loginFormHolder').style.display = 'none';
	}
}
/*
function clearOnFocus(control) {
	if (control.value.toLowerCase() == 'anv' + unescape("%C4").toLowerCase() + 'ndarnamn') {
		control.value = '';
	}
	if (control.value.toLowerCase() == 'l' + unescape("%D6").toLowerCase() + 'senord') {
		control.value = '';
	}
}
function resetOnBlur(control) {
	if (document.getElementById('loginUN').value == '' && document.getElementById('loginPW').value == '') {
		document.getElementById('loginBtnHolder').style.display = '';
		document.getElementById('loginFormHolder').style.display = 'none';
		document.getElementById('loginUN').value = 'anv' + unescape("%C4").toLowerCase() + 'ndarnamn';
		document.getElementById('loginPW').value = 'l' + unescape("%D6").toLowerCase() + 'senord';
	}
}
*/
function logout()
{
	document.getElementById('loginLO').value='ok';
	document.forms[0].submit();
}
//****************************************************************************
// TOP MENU ******************************************************************
//****************************************************************************
var menuTimeout = null;
var currentId = null;
function mainItemsOver(id) {
	if (currentId != null) {
		if (currentId != id) {
			closeSubMenu(currentId);
			currentId = id;
		}
		if (menuTimeout != null) {
			clearTimeout(menuTimeout);
			menuTimeout = null
		}
	}
	
	if (document.getElementById('sub_' + id)) {
		var root = document.getElementById('sub_' + id);
		currentId = id;
		//var listItems = root.getElementsByTagName('td');
		//var listLength = listItems.length;
		//var i

		root.style.display = '';
		root.style.position = 'absolute';
		root.style.top = '';
		//    for (i = 0; i < listLength; i++) {
		//        listItems[i].style.position = 'absolute';
		//        listItems[i].style.display = 'block';
		//    }
		}
}


/* SEARCH FIELD FUNCTIONALITY */

function search_onblur(ctrl, value) {
	ctrl.style.color = 'silver';
	ctrl.style.fontStyle = 'italic';

	if (ctrl.value == '') {
		ctrl.value = value;
	}
}

function search_onfocus(ctrl, value) {
	ctrl.value = '';
	ctrl.style.color = 'black'; 
	ctrl.style.fontStyle = 'normal';
}

// LECTURE FUNCTIONS *********************************************************
//****************************************************************************

function register() {
    var guestCount = document.getElementById('hidden_guestcount').value;
    var guestMax = document.getElementById('hidden_guests').value;

	var cmd = document.getElementById('LectureEvent_cmd');
	var guests = document.getElementById('LectureEvent_guests');

	cmd.value = 'register';
	guests.value = document.getElementById('tb_userguests').value;

	if (isNumber(guests.value)) {
	    if ((parseInt(guests.value) + parseInt(guestCount)) + 1 <= guestMax || guestMax == 0) {
	        document.forms[0].submit();
	        document.forms[0].submit();
	    } else {
	        alert('Det finns tyvarr inte tillrackligt med platser kvar.');
	    }
	} else {
		alert('Du måste ange antal gäster med siffror');
	}
}

function unRegister() {
	var cmd = document.getElementById('LectureEvent_cmd');
	cmd.value = 'unregister';

	document.forms[0].submit();
	document.forms[0].submit();
}

function updateEvent() {
    //alert(document.getElementById('tb_guests').value);

    var guestCount = document.getElementById('hidden_guestcount').value;
    var guestMax = document.getElementById('hidden_guests').value;
    var guestsCurrent = document.getElementById('hidden_guests_current').value;

	var cmd = document.getElementById('LectureEvent_cmd');
	var guests = document.getElementById('LectureEvent_guests');

	cmd.value = 'update';
	guests.value = document.getElementById('tb_guests').value;

	if (isNumber(guests.value)) {
	    if (((parseInt(guests.value) + 1) + (guestCount - guestsCurrent)) <= guestMax || guestMax == 0) {
	        document.forms[0].submit();
	        document.forms[0].submit();
	    } else {
	        alert('Det finns tyvarr inte tillrackligt med platser kvar.');
	    }
	} else {
		alert('Du måste ange antal gäster med siffror');
	}
}

function isNumber(val) {
	if (isNaN(val)) {
		return false;
	}
	else {
		return true;
	}
}



//****************************************************************************
// DDTUpdate FUNCTIONS *********************************************************
//****************************************************************************

function prepare_ddtUpdate(ddtid, objectid, mepid, value, method) {
	value++;
	//alert(ddtid + ' ' + value);
	ddtUpdateTest(ddtid, objectid, 103, value, 'updateDDTCustomValue');
	//ddtUpdate(ddtid, objectid, mepid, value, method);
	
	if (ddtid == 1055) {
		document.getElementById('hidden_like').value = value;
	} else {
		document.getElementById('hidden_unlike').value = value;
	}

}

function ddtUpdate_onSuccess(retVal) {
	if (retVal.d.split(',')[0] == 1055) {
		document.getElementById('like').innerText = retVal.d.split(',')[1] + 'st.'
		//document.getElementById('msg').innerText = 'Du gillar detta tillsammans med ' + retVal.d.split(',')[1] + 'st andra';
		document.getElementById('hidden_like').value = retVal.d.split(',')[1]
	} else {
		document.getElementById('unlike').innerText = retVal.d.split(',')[1]
		//document.getElementById('msg').innerText = 'Du gillar inte detta tillsammans med ' + retVal.d.split(',')[1] + 'st andra';
		document.getElementById('hidden_unlike').value = retVal.d.split(',')[1]
	}
}

function ddtUpdate_onError(err, err2, err3) {
	document.getElementById('msg').innerHTML = err.responseText;
}




function ddtUpdateTest(ddtid, objectid, mepid, value, method) {
	$.ajax({
		type: "POST",
		url: "/System/WebService/AjaxSystemServices.asmx/" + method,
		data: "{ddtid:" + ddtid + ", objectid:" + objectid + ", mepid:" + mepid + ", value:'" + value + "'}",
		contentType: "application/json; charset=utf-8",
		dataType: "json",
		error: function (err, err2, err3) {
			try {
				ddtUpdate_onError(err, err2, err3);
			} catch (err) {
				alert('Function ddtUpdate_onError(XMLHttpRequest, textStatus, errorThrown) is missing!');
			}
		},
		success: function (msg) {
			try {
				ddtUpdate_onSuccess(msg);
			} catch (err) {
				alert('Function ddtUpdate_onSuccess(ReturnValue) is missing!');
			}
		},
		failure: function (msg) {
			alert('Failure: ' + msg);
		}
	});
}


function getFieldIds(control) {
	var ids = '';
	var fields = document.getElementsByName('hidden_fieldid');
	for (var i = 0; i < fields.length; i++) {
		if (i > 0) {
			ids = ids + ',' + fields[i].value;
		} else {
			ids = '18,'+fields[i].value;
		}
	}
	control.value = ids;
	document.forms[0].submit();
}

/************************************************
Cookies
************************************************/
function getCookie(c_name) {
	if (document.cookie.length > 0) {
		c_start = document.cookie.indexOf(c_name + "=");
		if (c_start != -1) {
			c_start = c_start + c_name.length + 1;
			c_end = document.cookie.indexOf(";", c_start);
			if (c_end == -1) c_end = document.cookie.length;
			return unescape(document.cookie.substring(c_start, c_end));
		}
	}
	return "";
}

function setCookie(c_name, c_value, expiredays) {
	var exdate = new Date();
	exdate.setDate(exdate.getDate() + expiredays);
	document.cookie = c_name + "=" + escape(c_value) +
((expiredays == null) ? "" : ";expires=" + exdate.toUTCString());
}

function checkCookie(ddtid, objectid, mepid, value, method) {
	c_value = getCookie(objectid);
	if (c_value != null && c_value != "") {
		alert('Du har redan rostat.');

	} else {
		setCookie(objectid, 'true', 365);
			prepare_ddtUpdate(ddtid, objectid, mepid, value, 'updateDDTCustomValue');

	}
}


function editContact_checkbox_OnClick(chk) {
	if (chk.checked) {
		chk.value = 'True';
	} else {
		chk.value = 'False';
	}
	alert(chk.value);
}

function clearTextBox(tb,v) {
	if (v == tb.value) {
		tb.value = '';
		tb.style.color = 'black';
		tb.style.fontStyle = 'normal';
	}
}
function setTextBox(tb, v) {
	if (tb.value == '') {
		tb.value = v;
		tb.style.color = 'silver';
		tb.style.fontStyle = 'italic';
	}
}
