/******************************************
*                                         *
*      WhenIsGood create JavaScript       *
*                                         *
*******************************************/

var setting = false;
var down = false;

function md(td) {
	down = true;
	setting = !isSet(td);
	mo(td);
}

function mo(td) {
	if (!down) return;
	if (td.className == "empty") return;
	if (setting) {
		on(td);
	}
	else {
		off(td);
	}
}

function isSet(td) {
	return td.className.indexOf("canDo") > -1;
}

function on(td) {
	if (!isSet(td)) td.className = td.className + " canDo";
}

function off(td) {
	if (isSet(td)) td.className = td.className.replace(" canDo", "");
}

function header(e, col, officeShown) {
	var somethingToSet = false;
	var grid = byid("grid");
	for (var i = 1; i < grid.rows.length-1; i++) {
		var td = grid.rows[i].cells[col];
		if (td.className.indexOf("dateHeader") > -1) continue;
		if (td.className.indexOf("office") > -1 || e.shiftKey || !officeShown) {
			if (td.className.indexOf("canDo") == -1) somethingToSet = true;
		}
	}
	for (var i = 1; i < grid.rows.length-1; i++) {
		var td = grid.rows[i].cells[col];
		if (td.className.indexOf("Header") > -1) continue;
		if (td.className.indexOf("office") > -1 || e.shiftKey || !officeShown) {
			if (somethingToSet) {
				on(td);
			}
			else{
				off(td);
			}
		}
	}
}

function calHeader(e, col) {
	var somethingToSet = false;
	var grid = byid("grid");
	for (var i = 1; i < grid.rows.length-1; i++) {
		var td = grid.rows[i].cells[col];
		if (td.className.indexOf("dateHeader") > -1 || td.className == "empty") continue;
		if (td.className.indexOf("canDo") == -1) somethingToSet = true;
	}
	for (var i = 1; i < grid.rows.length-1; i++) {
		var td = grid.rows[i].cells[col];
		if (td.className.indexOf("dateHeader") > -1 || td.className == "empty") continue;
		if (somethingToSet) {
			on(td);
		}
		else{
			off(td);
		}
	}
}

function toggleOptions() {
	if (present("options")) {
		remove("options");
		byid("optionsOuter").className = "options";
		byid("optionsButton").value = "SHOW OPTIONS";
	}
	else {
		unremove("options");
		byid("optionsOuter").className = "optionsVisible";
		byid("optionsButton").value = "HIDE OPTIONS";
	}
}

function eventNameKeyDown(event) {
	if (event.keyCode == 13) return false;
}

function eventNameKeyUp() {
	byid('pageTitle').innerHTML = deTag(byid('eventName').value)+"&nbsp;";
}

function submitForm() {
	var canDos = "";
	var grid = byid("grid");
	for (var i = 1; i < grid.rows.length; i++) {
		for (var j = 0; j < grid.rows[i].cells.length; j++) {
			var td = grid.rows[i].cells[j];
			if (isSet(td)) {
				if (canDos.length > 0) canDos = canDos + ",";
				canDos = canDos + td.id;
			}
		}
	}
	byid("canDos").value = canDos;
	byid("optionsPresent").value = present("options");
	if (byid("timezoneStuff") != null) byid("useTimezones").value = visible("timezoneStuff");
	if (byid("eventName").value == "name of event") byid("eventName").value = "";
	return true;
}
