function encodeLabSection(ls) {
	return parseInt((parseInt(ls)+1)/2)+(ls%2 ? 'A':'B');
}

function decodeLabSection(lab) {
	return (lab[0]-1)*2 + (lab[1]=='A' ? 1 : 2);
}

function confirmEncodedDeletion(field,type) {

	message = 'Are you sure you want to delete '+type;
	checkboxes = document.getElementsByName(field);

	var users = new Array();

	flag = 0;		
	for ( i = 0 ; i < checkboxes.length ; i ++ ) {
		if (checkboxes[i].checked) {
			users.push(encodeLabSection(checkboxes[i].value));
			flag = 1;
		}
	}
	if (flag == 0) {
		alert('No '+type+' selected.');
		return false;
	}
	if (users.length > 1) message = message + 's';
	message = message + ': ' + users.join(',') + ' ?';
	return confirm(message);
}

function confirmDeletion(field,type) {

	message = 'Are you sure you want to delete '+type;
	checkboxes = document.getElementsByName(field);

	var users = new Array();

	flag = 0;		
	for ( i = 0 ; i < checkboxes.length ; i ++ ) {
		if (checkboxes[i].checked) {
			users.push(checkboxes[i].value);
			flag = 1;
		}
	}
	if (flag == 0) {
		alert('No '+type+' selected.');
		return false;
	}
	if (users.length > 1) message = message + 's';
	message = message + ': ' + users.join(',') + ' ?';
	return confirm(message);
}

function confirmSelect(field,type) {
	checkboxes = document.getElementsByName(field);
	flag = 0;		
	for ( i = 0 ; i < checkboxes.length ; i ++ ) {
		if (checkboxes[i].checked) {
			flag = 1;
			break;
		}
	}
	if (flag == 0) {
		alert('No '+type+' selected.');
		return false;
	}
}

function checkDeleteMySelf() {
	checkboxes = document.getElementsByName('selecteduser[]');

	for ( i = 0 ; i < checkboxes.length ; i ++ ) {
		if (checkboxes[i].checked) {
			if (checkboxes[i].value == document.getElementsByName('myusername')[0].value) {
				alert('You can not delete yourself!');
				return false;
			}
		}
	}
	return true;
}

function sectiontext(myfield, e) {
	var key;
	var keychar;

	if (window.event) {
		key = window.event.keyCode;
	} else if (e) {
		key = e.which;
	} else {
		return true;
	}
	keychar = String.fromCharCode(key);

	if ((key==null) || (key==0) || (key==8) || 
    	(key==9) || (key==13) || (key==27) ) {
		return true;
	} else if (myfield.value == "" && (("0123456789").indexOf(keychar) > -1)) {
		return true;
	} else if (("0123456789").indexOf(myfield.value) > -1 && (("ABab").indexOf(keychar) > -1)) {
		return true;
	} else {
	   return false;
	}
}

function fullsectiontext(fieldname) {
	sections = document.getElementsByName(fieldname);
	
	for ( i = 0 ; i < sections.length ; i ++ ) {
		field = sections[i];
		first = field.value.substring(0,1);
		second = field.value.substring(1,2);

		if ((field.value.length != 2) || (("0123456789").indexOf(first) < 0 ) || (("ABab").indexOf(second) < 0)) {
			alert('Bad Lab Section : '+field.value);
			return false;
		}
	}
	return true;
}

function confirmTransfer(from, to) {
	return confirm('Currently you are at lab section '+from+'.When you click OK you will be transfered to lab section '+to+' if free capacity is availiable. You will recieve a confirmation message about the section change at the top of the page. Are you sure you want to change your lab section?');
}

function registerConfirm(field) { 
	checkboxes = document.getElementsByName(field);

	flag = 0;		
	for ( i = 0 ; i < checkboxes.length ; i ++ ) {
		if (checkboxes[i].checked) {
			flag = 1;
		}
	}
	if (flag == 0) {
		alert('No student selected.');
		return false;
	}
	return confirm('You are advised to record ids of these students, since after you register them there will be no way to distinguish them. Do you want to continue?');
}

function dropConfirm(field) { 
	message = 'Are you sure you want to drop student';
	checkboxes = document.getElementsByName(field);

	var users = new Array();

	flag = 0;		
	for ( i = 0 ; i < checkboxes.length ; i ++ ) {
		if (checkboxes[i].checked) {
			users.push(checkboxes[i].value);
			flag = 1;
		}
	}
	if (flag == 0) {
		alert('No student selected.');
		return false;
	}
	if (users.length > 1) message = message + 's';
	message = message + ' ' + users.join(',') + ' from local system ?';
	return confirm(message);
}

function toggleShowPassword() {
	textbox = document.getElementById("clearpass");
	passbox = document.getElementById("secretpass");
	if (document.getElementById("passswitch").checked) {
		passbox.style.display='none';
		textbox.style.display='';
		textbox.value=passbox.value;
	} else {
		passbox.style.display='';
		textbox.style.display='none';
		passbox.value=textbox.value;
	}
}
