function select_scene(w) {
	$('name').value = w;
	// set fields values
	apply_values(scenes[w]);
	// go to last tab (show 'Delete' button and empty 'result' as well)
	$('delete_scene').show();
	$('result').update();
	$('mogaltabber').tabber.tabShow($('mogaltabber').tabber.tabs.length-1);
}

function apply_values(obj) {
	// set fields values
	for(i in obj) {
		if (parseInt(i) == i) {
			for(j in obj[i]) {
				els = $$('input[name="data['+i+']['+j+']"]');
				if (els.length) {
					els[0].value = obj[i][j];
					if (j == 'hexcolor')
						color('data_'+i+'_'+j, obj[i][j]);
				}
			}
		}
	}
}

function colorpicker(el) {
	colorpicker_current = $(el);
	$('colorpicker').show();
	$$('img[src$="mappoint.gif"]')[0].show();
	$$('img[src$="rangearrows.gif"]')[0].show();
	cp._cvp._hexInput.value = color($(el));
	cp._cvp.setValuesFromHex();
	cp.positionMapAndSliderArrows();
	cp.updateVisuals();
}

function colorpicker_update() {
	if (colorpicker_current) {
		color(colorpicker_current, cp._cvp._hexInput.value);
	}
}


function color(el, color) {
	if ($(el)) {
		el = $(el);
		try {
			el2 = el.up().down('input');
		} catch (e) {
			el2 = el;
		}
		if (color == undefined) {
			return el2.value;
		} else {
			if (el.style) {
				el.style.backgroundColor = '#'+color;
				rgb = Refresh.Web.ColorMethods.hexToRgb(color);
				rgb.r *= 0.5;
				rgb.g *= 0.5;
				rgb.b *= 0.5;
				bordercolor = Refresh.Web.ColorMethods.rgbToHex(rgb);
				el.style.borderColor = '#'+bordercolor;
			}
			if (el2.value) el2.value = color;
		}
	}
}

function colorpicker_close() {
	$('colorpicker').hide();
	$$('img[src$="mappoint.gif"]')[0].hide();
	$$('img[src$="rangearrows.gif"]')[0].hide();
	colorpicker_update();
}

function ajax_process() {
	$('result').update("<img src=\"img/process.gif\" alt=\"En cours...\" />");
}

function ajax_success(transport) {
	$('result').update("<div class=\"hr\"><hr /></div>"+transport.responseText);
}

function delete_scene() {
	var url = '?ajax&delete';
	ajax_process();
	new Ajax.Request(url, {
		method: 'post',
		postBody: 'name='+encodeURIComponent($('name').value),
		onSuccess: ajax_success
	});
}

function mogalify(action) {
	var url = '?ajax&action='+action;
	var data = '';
	var els = $$('input');
	for(var i=0; i<els.length; i++) {
		data += els[i].name+'='+encodeURIComponent(els[i].value)+'&';
	}
	ajax_process();
	new Ajax.Request(url, {
		method: 'post',
		postBody: data,
		onSuccess: ajax_success
	});
}
