var editTaskActive = false;
var editTaskActiveID = 0;
var editTaskID = 0;
var deleteTaskActive = false;
var deleteTaskActiveID = 0;
var deleteTaskID = 0;
var deletediv;

var editClassActive = false;
var editClassActiveID = 0;
var editClassID = 0;
var deleteClassActive = false;
var deleteClassActiveID = 0;
var deleteClassID = 0;

var page = "hidecomplete";
var currentMonth;

$(document).ready(function() {
	$("#show_tasks").sortable({ disabled: true }); //disable dragging initially
	showTasks("hidecomplete");
	initKeyboardShortcutsBind();
});

/* Initially inspired by http://www.webresourcesdepot.com/dynamic-dragn-drop-with-jquery-and-php/ */
function enableDragging() {
	$("#show_tasks").sortable( "option", "disabled", false );
	$("#show_tasks").sortable({ opacity: 0.6, cursor: 'move', stop: function() {
		var order = 'order=' + $(this).sortable("toArray") + '&action=updateRecordsListings';
		$.post("updateDragOrder.php", order, function(theResponse){
			;
		});															 
	}								  
	});
}

function disableDragging() {
	$("#show_tasks").sortable( "option", "disabled", true );
}

//function for centering objects on the screen, horizontally
//to use, use $(element).center();
jQuery.fn.center = function () {
    this.css("position","absolute");
	this.css("top", 0)
    this.css("left", ( $(window).width() - this.width() ) / 2+$(window).scrollLeft() + "px");
    return this;
}

function notification(input, input2) {
	$(".notification").html(input);
	if(input2 == "delayClose") //hide after 3000 milliseconds
		$(".notification").fadeIn("fast").center().delay(2000).fadeOut("fast");
	else if(input2 == "wait") //wait until another notification is called
		$(".notification").fadeIn("fast").center();
	else //default
		$(".notification").fadeIn("fast").center();
}

function hideNotification() {
	$(".notification").fadeOut("fast");
}

function initKeyboardShortcutsBind() {
	//keyboard shortcut for saving a task
	$(document).bind('keydown', 'ctrl+s', function(evt) {
		if(editTaskActive) {
			saveTask(editTaskActiveID);
		}
		evt.stopPropagation();  
		evt.preventDefault();
		return false;
	});
	$(".task input").bind('keydown', 'ctrl+s', function(evt) { //necessary in case the user is in an input field
		if(editTaskActive) {
			saveTask(editTaskActiveID);
		}
		evt.stopPropagation();  
		evt.preventDefault();
		return false;
	});
	$(".task textarea").bind('keydown', 'ctrl+s', function(evt) { //necessary in case the user is in a text area (notes)
		if(editTaskActive) {
			saveTask(editTaskActiveID);
		}
		evt.stopPropagation();  
		evt.preventDefault();
		return false;
	});
	$(".task select").bind('keydown', 'ctrl+s', function(evt) { //necessary in case the user is in a drop down menu
		if(editTaskActive) {
			saveTask(editTaskActiveID);
		}
		evt.stopPropagation();  
		evt.preventDefault();
		return false;
	});
	//keyboard shortcut for closing the edit options for a task -- same as clicking the "just kidding" button
	$(document).bind('keydown', 'ctrl+q', function(evt) {
		if(editTaskActive) {
			editTaskClose(editTaskActiveID);
		}
		evt.stopPropagation();  
		evt.preventDefault();
		return false;
	});
	$(".task input").bind('keydown', 'ctrl+q', function(evt) { //necessary in case the user is in an input field
		if(editTaskActive) {
			editTaskClose(editTaskActiveID);
		}
		evt.stopPropagation();  
		evt.preventDefault();
		return false;
	});
	$(".task textarea").bind('keydown', 'ctrl+q', function(evt) { //necessary in case the user is in a text area (notes)
		if(editTaskActive) {
			editTaskClose(editTaskActiveID);
		}
		evt.stopPropagation();  
		evt.preventDefault();
		return false;
	});
	$(".task select").bind('keydown', 'ctrl+q', function(evt) { //necessary in case the user is in a drop down menu
		if(editTaskActive) {
			editTaskClose(editTaskActiveID);
		}
		evt.stopPropagation();  
		evt.preventDefault();
		return false;
	});
}

function initTaskBind() {
	$(".task").hover(function() {
		$(this).find(".task_box_right").fadeIn("fast");
	},
	function(){
		$(this).find(".task_box_right").fadeOut("fast");
	});
	$('.task').dblclick(function() {
		editTaskID = $(this).attr("id");
		editLogic(editTaskID);
	});
	
	$('.edit_task_link').click(function(e) {
		e.preventDefault();
		editTaskID = $(this).parents('.task').attr("id");
		editLogic(editTaskID);
	});
	initDeleteTaskBind();
}

//START changing tabs
function tabChange(input, hide1, hide2) {
	$("#"+input).show();
	var inputbackground = "#tabs_" + input;
	$(inputbackground).css({'background-color': '#EDEDED'});
	
	$("#"+hide1).hide();
	var hide1background = "#tabs_" + hide1;
	$(hide1background).css({'background-color': '#FFF'});
	
	$("#"+hide2).hide();
	var hide2background = "#tabs_" + hide2;
	$(hide2background).css({'background-color': '#FFF'});
	
	if(input == "tasks") {
		page = "hidecomplete";
		showTasks("hidecomplete");
	}
	else if(input == "classes") {
		page = "classes";
		showClasses();
	}
	else if(input == "search") {
		page = "search";
		$("#status_bar_search").show();
		showTasks("search");
	}
}
//END changing tabs

//START showing the tasks
function showTasks(input, input2) {	
	notification("Loading...", "wait");
	var type = input;
	page = type;
	var TaskID = input2;
	var keyword = $("#SearchKeyword").val();
	
	if(keyword == "" && type == "search") {
		hideNotification();
		$("#status_bar_search").html("Please enter a keyword.");
		$("#show_search").html("");
	}
	
	$.ajax({ type: "GET", url: "showTasks.php", data: "type="+type+"&keyword="+keyword+"&taskid="+TaskID, success: function(response) {
		var response_array = response.split("62fcbaad360297f172ef536df2b4b66e");
		var Type = response_array[0];
		var NumberOfTasks = response_array[1];
		var DropDown = response_array[2];
		var TaskID = response_array[3];
		var showtasks = response_array[4];
		
		if(Type == "all" || Type == "drag" || Type == "hidecomplete" || Type == "prioritize" || Type == "class") {
			$("#show_tasks").html(showtasks);
			hideNotification();
			$("#tasks_number").html(NumberOfTasks);
			$("#insert_task_classes").html(DropDown);
			initTaskBind();
			if(Type == "drag") enableDragging(); else disableDragging();
		}
		else if(Type == "calendar") {
			$("#show_tasks").html(showtasks);
			hideNotification();
			$("#tasks_number").html(NumberOfTasks);
			$("#insert_task_classes").html(DropDown);
			editTask(TaskID);
		}
		else if(Type == "search") {
			var SearchKeyword = $("#SearchKeyword").val();
			$("#status_bar_search").show();
			hideNotification();
			if(NumberOfTasks == "No tasks available.")	{
				$("#status_bar_search").html("No results found for <strong>"+SearchKeyword+"</strong>.");
				$("#show_search").html("");
			}
			else {
				$("#show_search").html(showtasks);
				$("#status_bar_search").html(NumberOfTasks+" search results for <strong>"+SearchKeyword+"</strong>.");
				initTaskBind();
			}
		}
	}});
}
//END showing the tasks

//START showing the calendar
function showCalendar(input, input2) {	
	notification("Loading...", "wait");
	page = "calendar";
	
	var month = input;
	var year = input2;
		
	$.ajax({ type: "GET", url: "showCalendar.php", data: "month="+month+"&year="+year, success: function(response) {
		var response_array = response.split("62fcbaad360297f172ef536df2b4b66e");
		var Type = response_array[0];
		var NumberOfTasks = response_array[1];
		var DropDown = response_array[2];
		var showcalendar = response_array[3];
		
		hideNotification();
		$("#show_tasks").html(showcalendar);
		$("#tasks_number").html(NumberOfTasks);
		$("#insert_task_classes").html(DropDown);
	 }});
}
//END showing the calendar

//START inserting a task
function insertTask() {
	notification("Saving task...", "wait");
	var TaskName = encodeURI($("#TaskName").val()); //encode URI converts symbols like , and ? to other stuff so it won't get messed up
	var ClassName = $("#ClassName").val();
	var DueDate = encodeURI($("#DueDate").val());
	$.ajax({ type: "POST", url: "insertTask.php", data: "task="+TaskName+"&class="+ClassName+"&dueDate="+DueDate, success: function(response) {
		if(response == 0) {
			notification("Please complete all fields!", "delayClose");
		} 
		else {
			notification("Saved!", "wait");
			$("#TaskName").val("");
			if(page == "calendar")
				showCalendar('today','today');
			else	
				showTasks(page);
		}
   }});
}
//END inserting a task

//START editing a task
function editLogic(input) {
	editTaskID = input;
	if(editTaskActive && (editTaskID == editTaskActiveID)) {
		editTaskClose(editTaskActiveID);
		editTaskActive = false;
		editTaskActiveID = 0;
	}
	else if(editTaskActive && (editTaskID != editTaskActiveID)) {
		editTaskClose(editTaskActiveID);
		editTask(editTaskID);
		editTaskActive = true;
		editTaskActiveID = editTaskID;
	}
	else {
		editTask(editTaskID);
		editTaskActive = true;
		editTaskActiveID = editTaskID;
	}
}

function editTask(input) {
	var TaskID = input;
	$.ajax({ type: "GET", url: "editTask.php", data: "taskid="+TaskID, success: function(response) {
		var response_array = response.split("62fcbaad360297f172ef536df2b4b66e");
		var TaskID = response_array[0];
		var display = response_array[1];
		var editdiv = "#edit-task-"+TaskID;
		$(editdiv).html(display);
		$(editdiv).slideDown('fast');
		initKeyboardShortcutsBind();
	}});
}

function editTaskClose(input) {
	if(page == "calendar")
		showCalendar('today','today');
	else {
		var editdiv = "#edit-task-"+input;
		$(editdiv).slideUp('fast');
	}
	editTaskActive = false;
}
//END editing a task

//START saving a task
function saveTask(input) {
	notification("Saving...", "wait");
	
	var TaskID = input;
	var TaskNameInside = "#edit-task-name-"+TaskID;
	var ClassIDInside = "#edit-class-name-"+TaskID;
	var NotesInside = "#edit-task-notes-"+TaskID;
	var DueDateInside = "#edit-task-duedate-"+TaskID;
	var PriorityInside = "#edit-task-priority-"+TaskID;
	var CompleteInside = "#edit-task-complete-"+TaskID;
	
	var TaskName = $(TaskNameInside).val();
	var ClassID = $(ClassIDInside).val();
	var Notes = $(NotesInside).val();
	var DueDate = $(DueDateInside).val();
	var Priority = $(PriorityInside).val();
	var Complete = $(CompleteInside).val();
	
	$.ajax({ type: "POST", url: "saveTask.php", data: "taskid="+TaskID+"&taskname="+TaskName+"&classid="+ClassID+"&notes="+Notes+"&duedate="+DueDate+"&priority="+Priority+"&complete="+Complete, success: function(response) {
		if(response != 0) {
			var editdiv = "#edit-task-"+TaskID;
			$(editdiv).slideUp('fast');
			notification("Saved!", "wait");
			if(page == "calendar")
				showCalendar('today','today');
			else {
				editTaskActive = false;
				showTasks(page);
			}	
		}
		else {
			notification("Please make sure all required fields are filled.", "delayClose");
		}
	}});
}
//END saving a task

//START deleting a task
function initDeleteTaskBind() {
	$('.delete_task_link').click(function(e) {
		e.preventDefault();
		deleteTaskID = $(this).parents('.task').attr("id");
		deleteAskLogic(deleteTaskID);
	});
	$('.delete_task_yes').click(function(e) {
		e.preventDefault();
		deleteTaskID = $(this).parents('.task').attr("id");
		deleteAnswerLogic(deleteTaskID, "YES");
	});
	$('.delete_task_no').click(function(e) {
		e.preventDefault();
		deleteTaskID = $(this).parents('.task').attr("id");
		deleteAnswerLogic(deleteTaskID, "NO");
	});
}

function deleteAskLogic(input) {
	deleteTaskID = input;
	if(deleteTaskActive && (deleteTaskID != deleteTaskActiveID)) {
		deleteTaskNo(deleteTaskActiveID);
		deleteTask(deleteTaskID);
		deleteTaskActive = true;
		deleteTaskActiveID = deleteTaskID;
	}
	else {
		deleteTask(deleteTaskID);
		deleteTaskActive = true;
		deleteTaskActiveID = deleteTaskID;
	}
}

function deleteAnswerLogic(input, input2) {
	deleteTaskID = input;
	if(deleteTaskActive && (deleteTaskID == deleteTaskActiveID)) {
		//"Are you sure? Yes | No" -- if No, close the confirmation. if Yes, delete the task
		if(input2 == "NO")
			deleteTaskNo(deleteTaskID);
		else if(input2 == "YES")
			deleteTaskYes(deleteTaskID);
	}
}

function deleteTask(input) {
	deleteDiv = "#delete-task-"+input+" .delete_task_link";
	$(deleteDiv).css("display","none"); //for some reason, this needs to be like this instead of just using hide() -- something to do with it already being hidden, I think
	deleteDiv = "#delete-task-"+input+" .delete_task_confirm";
	$(deleteDiv).show("fast");
	deleteTaskActive = true;
}
function deleteTaskNo(input) {
	deleteDiv = "#delete-task-"+input+" .delete_task_confirm";
	$(deleteDiv).css("display","none"); //for some reason, this needs to be like this instead of just using hide() -- something to do with it already being hidden, I think
	deleteDiv = "#delete-task-"+input+" .delete_task_link";
	$(deleteDiv).show("fast");
	deleteTaskActive = false;
}
function deleteTaskYes(input) {
	var TaskID = input;
	notification("Deleting task...", "wait");
	$.ajax({ type: "POST", url: "deleteTask.php", data: "taskid="+TaskID, success: function(response) {
		notification("Deleted!", "delayClose");
		var deleteInside = "#"+TaskID;
		$(deleteInside).fadeOut(deleteInside);
		$("#tasks_number").html(parseInt($("#tasks_number").html()) - 1);
   }});
	
}
//END deleting a task

//START date picker
function datePicker(input, input2) {
	var month = input;
	var year = input2;
	var type = "normal";
	$("#datePickerPicture").html("<a class=\"link\" onclick=\"javascript:datePickerClose('normal');\"><img border=\"0\" src=\"datePicker.gif\" alt=\"EPaps.com\" /></a>");
	$.ajax({ type: "GET", url: "showDatePicker.php", data: "month="+month+"&year="+year+"&type="+type, success: function(response) {
		var response_array = response.split("62fcbaad360297f172ef536df2b4b66e");
		var Type = response_array[0];
		var TaskID = response_array[1];
		var display = response_array[2];
		$("#datePickerResults").html(display);
		$("#datePickerResults").slideDown("fast");
	}});
}
function datePickerEdit(input, input2, input3) {
	var month = input;
	var year = input2;
	var taskid = input3;
	var type = "edit";
	var inside = "#picker-picture-"+taskid;
	$(inside).html("<a class=\"link\" onclick=\"datePickerClose('edit','"+taskid+"');\"><img border=\"0\" src=\"datePicker.gif\" alt=\"EPaps.com\" /></a>");	
	$.ajax({ type: "GET", url: "showDatePicker.php", data: "month="+month+"&year="+year+"&type="+type+"&taskid="+taskid, success: function(response) {
		var response_array = response.split("62fcbaad360297f172ef536df2b4b66e");
		var Type = response_array[0];
		var TaskID = response_array[1];
		var display = response_array[2];
		var inside = "#picker-result-"+TaskID;
		$(inside).html(display);
		$(inside).slideDown("fast");
	}});
}
function datePickerClose(input, input2) {
	var Type = input;
	var TaskID = input2;
	if(Type == "normal") {
		$("#datePickerResults").slideUp("fast");
		$("#datePickerPicture").html("<a class=\"link\" onclick=\"javascript:datePicker('today','today','normal');\"><img border=\"0\" src=\"datePicker.gif\" alt=\"EPaps.com\" /></a>");
	}
	else if(Type == "edit") {
		var inside = "#picker-result-"+TaskID;
		$(inside).html("");
		$(inside).hide();
		var inside = "#picker-picture-"+TaskID;
		$(inside).html("<a class=\"link\" onclick=\"javascript:datePickerEdit('today','today','"+TaskID+"');\"><img border=\"0\" src=\"datePicker.gif\" alt=\"EPaps.com\" /></a>");
	}
}
//END date picker

//START editing a task on (calendar)
function editTaskCalendar(input) {
	showTasks("calendar", input);
}
//END editing a task on (calendar)

//START updating the date box (calendar)
function updateDateBox(input, input2, input3, input4, input5) {	
	var Month = input;
	
	var MonthFirst = Month.split("",1);
	var MonthFirstZero = MonthFirst[0];
	if(MonthFirstZero != "0") {
		if(Month > 0 && Month <= 9)
			Month = "0"+Month;
	}
	var Day = input2;
	if(Day > 0 && Day <= 9)
		Day = "0"+Day;
	var Year = input3;
	var Type = input4;
	var TaskID = input5;
	
	var DateEntry = Month+"/"+Day+"/"+Year;
	
	if(Type == "normal") {
		$("#DueDate").val(DateEntry);
		$("#TaskName").focus();
		datePickerClose(Type);
	}
	if(Type == "edit") {
		var divname = "#edit-task-duedate-"+TaskID;
		$(divname).val(DateEntry)
		datePickerClose(Type, TaskID);
	}
}
//END updating the date box (calendar)

//START updating a task (checkbox)
function updateTaskCheckbox(input) {
	notification("Saving...", "wait");
	var task = input;
	var checkbox = "#checkbox-"+input;
	if($(checkbox).attr("checked") == true) {
		var complete = "100";
	}
	else if($(checkbox).attr("checked") == false) {
		var complete = "0";
	}
	$.ajax({ type: "POST", url: "updateTask.php", data: "task="+input+"&complete="+complete, success: function(response) {
		if(page == "all" || page == "hidecomplete" || page == "prioritize" || page == "calendar") {
			if(response == 1) {
				notification("Saved!", "wait");
				if(page == "calendar")
					showCalendar('today','today');
				else
					showTasks(page);
			}
			else {
				notification("Something went wrong. Please try again.", "delayClose");
			}
		}
		else if(page == "search") {
			if(response == 1) {
				notification("Saved!", "wait");
				if(page == "calendar")
					showCalendar();
				else
					showTasks(page);
			}
			else {
				notification("Something went wrong. Please try again.", "delayClose");
			}
		}
	}});
}
//END updating a task (checkbox)

//
// ^^ TASKS
// >> CLASSES
//

function initClassBind() {
	$(".class").hover(function() {
		$(this).find(".class_box_right").fadeIn("fast");
	},
	function(){
		$(this).find(".class_box_right").fadeOut("fast");
	});
	$('.class').dblclick(function() {
		editClassID = $(this).attr("id");
		editClassID = editClassID.split("class-");
		editClassLogic(editClassID[1]);
	});
	
	$('.edit_class_link').click(function(e) {
		e.preventDefault();
		editClassID = $(this).parents('.class').attr("id");
		editClassID = editClassID.split("class-");
		editClassLogic(editClassID[1]);
	});
	initDeleteClassBind();
}

//START showing the classes
function showClasses() {	
	notification("Loading...", "wait");
	$.ajax({ type: "GET", url: "showClasses.php", success: function(response) {
		var response_array = response.split("62fcbaad360297f172ef536df2b4b66e");
		var howmany = response_array[0];
		var showclasses = response_array[1];
		$("#classes_number").html(howmany);
		$("#show_classes").html(showclasses);
		initClassBind();
		hideNotification();
	}});
}
//END showing the classes

//START editing a class
function editClassLogic(input) {
	editClassID = input;
	if(editClassActive && (editClassID == editClassActiveID)) {
		editClassClose(editClassActiveID);
		editClassActive = false;
		editClassActiveID = 0;
	}
	else if(editClassActive && (editClassID != editClassActiveID)) {
		editClassClose(editClassActiveID);
		editClass(editClassID);
		editClassActive = true;
		editClassActiveID = editClassID;
	}
	else {
		editClass(editClassID);
		editClassActive = true;
		editClassActiveID = editClassID;
	}
}

function editClass(input) {
	var ClassID = input;
	$.ajax({ type: "GET", url: "editClass.php", data: "classid="+ClassID, success: function(response) {
		var response_array = response.split("62fcbaad360297f172ef536df2b4b66e");
		var ClassID = response_array[0];
		var display = response_array[1];
		var editdiv = "#edit-class-"+ClassID;
		$(editdiv).html(display);
		$(editdiv).slideDown('fast');
	}});
}

function editClassClose(input) {
	var editdiv = "#edit-class-"+input;
	$(editdiv).slideUp('fast');
	editClassActive = false;
}
//END editing a class

//START deleting a class
function initDeleteClassBind() {
	$('.delete_class_link').click(function(e) {
		e.preventDefault();
		deleteClassID = $(this).parents('.class').attr("id");
		deleteClassID = deleteClassID.split("class-");
		deleteClassAskLogic(deleteClassID[1]);
	});
	$('.delete_class_yes').click(function(e) {
		e.preventDefault();
		deleteClassID = $(this).parents('.class').attr("id");
		deleteClassID = deleteClassID.split("class-");
		deleteClassAnswerLogic(deleteClassID[1], "YES");
	});
	$('.delete_class_no').click(function(e) {
		e.preventDefault();
		deleteClassID = $(this).parents('.class').attr("id");
		deleteClassID = deleteClassID.split("class-");
		deleteClassAnswerLogic(deleteClassID[1], "NO");
	});
}

function deleteClassAskLogic(input) {
	deleteClassID = input;
	if(deleteClassActive && (deleteClassID != deleteClassActiveID)) {
		deleteClassNo(deleteClassActiveID);
		deleteClass(deleteClassID);
		deleteClassActive = true;
		deleteClassActiveID = deleteClassID;
	}
	else {
		deleteClass(deleteClassID);
		deleteClassActive = true;
		deleteClassActiveID = deleteClassID;
	}
}

function deleteClassAnswerLogic(input, input2) {
	deleteClassID = input;
	if(deleteClassActive && (deleteClassID == deleteClassActiveID)) {
		//"Are you sure? Yes | No" -- if No, close the confirmation. if Yes, delete the Class
		if(input2 == "NO")
			deleteClassNo(deleteClassID);
		else if(input2 == "YES")
			deleteClassYes(deleteClassID);
	}
}

function deleteClass(input) {
	deleteDiv = "#delete-class-"+input+" .delete_class_link";
	$(deleteDiv).css("display","none"); //for some reason, this needs to be like this instead of just using hide() -- something to do with it already being hidden, I think
	deleteDiv = "#delete-class-"+input+" .delete_class_confirm";
	$(deleteDiv).show("fast");
	deleteClassActive = true;
}
function deleteClassNo(input) {
	deleteDiv = "#delete-class-"+input+" .delete_class_confirm";
	$(deleteDiv).css("display","none"); //for some reason, this needs to be like this instead of just using hide() -- something to do with it already being hidden, I think
	deleteDiv = "#delete-class-"+input+" .delete_class_link";
	$(deleteDiv).show("fast");
	deleteClassActive = false;
}
function deleteClassYes(input) {
	var ClassID = input;
	notification("Deleting class...", "wait");
	$.ajax({ type: "POST", url: "deleteClass.php", data: "classid="+ClassID, success: function(response) {
		notification("Deleted!", "delayClose");
		var deleteInside = "#class-"+ClassID;
		$(deleteInside).fadeOut(deleteInside);
		$("#classes_number").html(parseInt($("#classes_number").html()) - 1);
   }});
	
}
//END deleting a class

//START inserting a class
function insertClass() {
	notification("Saving class...", "wait");
	var InsertClassName = $("#InsertClassName").val();
	$.ajax({ type: "POST", url: "insertClass.php", data: "class="+InsertClassName, success: function(response) {
		if(response == 0) {
			notification("Please complete all fields!", "delayClose");
		}
		else {
			$("#InsertClassName").val("");
			notification("Saved!", "wait");
			showClasses();
		}
	}});
}
//END inserting a class

//START saving a class
function saveClass(input) {
	notification("Saving...", "wait");
	var ClassID = input;
	var ClassNameInside = "#edit-class-class-name-"+ClassID;
	var TypeInside = "#edit-class-class-type-"+ClassID;
	var ClassName = $(ClassNameInside).val();
	var Type = $(TypeInside).val();
	$.ajax({ type: "POST", url: "saveClass.php", data: "classid="+ClassID+"&classname="+ClassName+"&type="+Type, success: function(response) {
		if(response == 1) {
			notification("Saved!", "wait");
			showClasses();
		}
		else {
			notification("Please make sure all required fields are filled.", "delayClose");
		}
	}});
}
//END saving a class
