$(document).ready(function () {
	initCheckAllBox();
});

function initCheckAllBox() {
	$("#check_all_box").click(
		function() {
			$(".line_item_checkbox").attr('checked', $('#check_all_box').is(':checked'));
		}
	);
}

function clearMessageArea() {
	$('#eventbox').empty();
}

function addMessage(message, type) {
	$('#eventbox').html('<p class="info" id="'+type+'"><span class="info_inner">'+message+'</span></p>');
	$(".info").click(function() {
		$(this).slideUp("fast");							 	  
	});
}

function addErrorMessage(message) { addMessage(message, 'error'); }
function addInfoMessage(message) { addMessage(message, 'info'); }
function addSuccessMessage(message) { addMessage(message, 'success'); }

//<p class="info" id="success"><span class="info_inner">Lorem ipsum dolor sit amet, consectetuer adipiscing elit</span></p>
//<p class="info" id="error"><span class="info_inner">Lorem ipsum dolor sit amet, consectetuer adipiscing elit</span></p>
//<p class="info" id="warning"><span class="info_inner">Lorem ipsum dolor sit amet, consectetuer adipiscing elit</span></p>
//<p class="info" id="info"><span class="info_inner">Lorem ipsum dolor sit amet, consectetuer adipiscing elit</span></p>

function addModalMessage(message, type, qualifier) {
	if (!qualifier) { qualifier = ''; }
	$('#modal_'+qualifier+'message').removeClass();
	$('#modal_'+qualifier+'message').addClass('modal_'+type);
	$('#modal_'+qualifier+'message').html(message);
}

function addModalSuccessMessage(message, qualifier) { addModalMessage(message, 'success', qualifier); }
function addModalInfoMessage(message, qualifier) { addModalMessage(message, 'info', qualifier); }
function addModalErrorMessage(message, qualifier) { addModalMessage(message, 'error', qualifier); }
function clearModalMessage(qualifier) {
	if (!qualifier) { qualifier = ''; }
	$('#modal_'+qualifier+'message').html('');
}

function displayInfoModal(message) {
	$("#modal_message p").html(message);
	$("#modal_message").dialog({
				resizable: false,
				height:140,
				modal: true,
				title: 'Error!',
				buttons: {
					Close: function() {
						$(this).dialog('close');
					}
				}
			});
}

function displayConfirmationModal(title, message) {
	$("#modal_message p").html(message);
	$("#modal_message").dialog({
				resizable: false,
				//height:140,
				modal: true,
				title: title,
				buttons: {
					OK: function() {
						$(this).dialog('close');
						return true;
					},
					Cancel: function() {
						$(this).dialog('close');
						return false;
					}
				}
			});
}

function getParameterByName(name) {
  name = name.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");
  var regexS = "[\\?&]"+name+"=([^&#]*)";
  var regex = new RegExp( regexS );
  var results = regex.exec( window.location.href );
  if( results == null )
    return "";
  else
    return results[1];
}

function scrollToTop(speed) {
	if (!speed) {
		speed = 'slow';
	}
	$( 'html, body' ).animate( { scrollTop: 0 }, speed );
}





function archiveStudent(link) {
	$(link).parents("tr").css({ "background-color" : "#fbcdcd" }, 'fast'); 
	var really = confirm('Are you sure you want to archive this '+lStudentLabel+'?');
	if (really)	{
		$.post(baseUrl+'ajax.pl', {'action':'ajaxarchivestudent','student_id':$(link).attr("studentid")}, 
			function(resp) {
				scrollToTop();
				addSuccessMessage(uStudentLabel + " archived!");
				$(link).parents("tr").css({ "background-color" : "#fff" }, 'fast'); 
		});
	} else {
		$(link).parents("tr").css({ "background-color" : "#fff" }, 'fast'); 
	}
	return really;
}

function unarchiveStudent(link) {
	$(link).parents("tr").css({ "background-color" : "#fbcdcd" }, 'fast'); 
	var really = confirm('Are you sure you want to unarchive this '+lStudentLabel+'?');
	if (really)	{
		$.post(baseUrl+'ajax.pl', {'action':'ajaxunarchivestudent','student_id':$(link).attr("studentid")}, 
			function(resp) {
				scrollToTop();
				addSuccessMessage(uStudentLabel + " unarchived!");
				$(link).parents("tr").css({ "background-color" : "#fff" }, 'fast'); 
		});
	} else {
		$(link).parents("tr").css({ "background-color" : "#fff" }, 'fast'); 
	}
	return really;
}
