window.$ = function(id) {
	return document.getElementById(id);
}

var selected_id = null;

function p6_get_img(id) { return $('p6_tile_' + id); }
function p6_get_val(id) { return $('p6_tile_val_' + id); }

function p6_swap(id) {
	var img = p6_get_img(id);
	var val = p6_get_val(id);

	if (selected_id == null) {
		p6_set_border(img);
		selected_id = id;
	} else if (selected_id == id) {
		p6_clear_border(img);
		selected_id = null;
	} else {
		var selected_img = p6_get_img(selected_id);

		// Swap the values
		var selected_val = p6_get_val(selected_id);
		var tmp = selected_val.value;
		selected_val.value = val.value;
		val.value = tmp;

		var obj = new Object;
		obj.url = "/petpetpark/ppx/p6_check.phtml";
		obj.method = "POST";
		obj.args = "tiles=" + p6_get_tiles();
		obj.args += "&swap1=" + selected_id + "&swap2=" + id;
		obj.onSuccess = function (response) {
			eval(response);
			if (o.status == '-1') {
				// Invalid user; do nothing.  They shouldn't even BE here today!
			} else if (o.status == '-3') {
				document.location = "/petpetpark/ppx/mission6.phtml";
			} else if (o.status == '-2') {
				document.location = "/petpetpark/ppx/mission6.phtml?intro=2";
			} else if (o.status == '1') {
				var tiles_arr = o.tiles.split(",");
				if (tiles_arr.length == 2) {
					// Swap the image source
					selected_img.src = tiles_arr[0];
					img.src = tiles_arr[1];
				}
				var gems_arr = o.gems.split(",");
				for (var i = 0; i < 6; i++) {
					$('p6_side_' + i).src = gems_arr[i];
				}
			} else if (o.status == '2') {
				var tiles_arr = o.tiles.split(",");
				if (tiles_arr.length == 2) {
					// Swap the image source
					selected_img.src = tiles_arr[0];
					img.src = tiles_arr[1];
				}
				var gems_arr = o.gems.split(",");
				for (var i = 0; i < 6; i++) {
					$('p6_cluster_' + i).src = gems_arr[i];
				}
			}

			if (o.debug.length > 0) {
				if ($('p6_debug') != null) {
					$('p6_debug').innerHTML = o.debug;
				}
			}
			// TODO
		}
		obj.onFailure = function (response) {
			// TODO
		}
		ajaxRequest(obj);

		// Turn off the borders
		p6_clear_border(img);
		p6_clear_border(selected_img);

		selected_id = null;

	}
}

function p6_get_tiles() {
	var tiles = new Array;
	for (var i = 0; i < 24; i++) {
		var x = $('p6_tile_val_' + i);
		tiles[i] = x.value;
	}

	return tiles.toString();
}

function p6_set_border(img) {
	img.style.border = "1px solid red";
}

function p6_clear_border(img) {
	img.style.border = "0px";
}

