// JavaScript Document
function data_s()
{
}

function go_to(date, elem)
{
	$.ajax({
  async : false,
  url:'./atac/calendar.php',
  data : "dt="+date+"&elem="+encodeURIComponent(elem),
  cache: false,
  success : function(data){$('#calend_cont').html(data);}
		   });
}

function resa(elem)
{
	var data = new data_s();

	var name = $(elem).attr('id').split('_');
	name = name[1];
	var ids = name.split('-');

	data.nocache = String(Math.random()).substr(2,8);
	data.id_events = ids[0];
	data.id_ss_event = ids[1];
	data.id_grp = $('#id_grp'+ids[0]).val();

	if ($("#ok_"+name+":visible").get(0))
		data.action = 'unresa';
	else
		data.action = 'resa';

	$.get("./atac/update.php", data, function(ret){
		if (ret.substr(0,2) == 'ok')
		{
			var tmp = ret.split(' ');
			
			$("#ok_"+tmp[1]).toggle(500);
			
			tmp = tmp[1].split('-');
			
			$.get("./atac/get_ev_detail.php", {action:'print_event', id: tmp[0], id_grp: $('#id_grp'+tmp[0]).val(),nocache:String(Math.random()).substr(2,8)}, function(ret){
																								 if (ret != '')
																								 {
																									var id = ret.split('\n',1);
																									
																									$('#ev_'+id).replaceWith(ret.substr((id+'\n').length));
																								 }
																								 });
		}
		else if (ret != '')
		{
			alert(ret);
			window.location.reload(true);
		}
	});
}

function calendar(elem, ev)
{
	var date = '';
	var tmp = $(elem).val().split('/');
	
	if ($(elem).val() != '')
		date = tmp[2]+' '+tmp[1]+' '+tmp[0];
	go_to(date, elem);
	
	var pos = captureMousePosition(ev, "#calend_cont", 2);
	$('#calend_cont').css({'top' : pos['y']+'px', 'left' : pos['x']+'px'});
	$('#calend_cont').toggle();
}

function change_day(elem, date)
{
	$(elem).val(date);
	$('#calend_cont').hide();
}

function edit_event(id_e, ev)
{
 $.get('./atac/edit_ev.php', {id : id_e, nocache:String(Math.random()).substr(2,8)}, function(data){$("#pop_edit").html(data);});
 
 var pos = captureMousePosition(ev, "#pop_edit", 10);
 $('#pop_edit').css({'display' : 'block', 'top' : pos['y']+'px', 'left' : pos['x']+'px'});
}

function reset_event()
{
 $.get('./atac/edit_ev.php', {dt : $('#date').val(), id : $('#id_events').val(), nocache:String(Math.random()).substr(2,8)}, function(data){$("#pop_edit").html(data);});
}

function dem_resa()
{
	$.get("./atac/update.php", {action: 'dem_resa', nocache:String(Math.random()).substr(2,8)}, function(data){
	if (data != '')
	{
		alert(data);
		return;
	}});
}

function save_event()
{	

	if (!check_num($('.nb').get()))
		return;
	var data = new data_s();

	var tronc = $("input[id^='ssev_'][id$='_h']:last").attr('id').split('_');

	for (i=1;i <= tronc[1]; i++)
	{
		var pref = tronc[0]+'_'+i;
		if ($('#'+pref+'_n').val())
			eval('data.'+pref+' = "'+zeroBefore($('#'+pref+'_h').val())+':'+zeroBefore($('#'+pref+'_m').val())+':00;'+$('#'+pref+'_n').val().replace(/\\/g,'\\\\').replace(/"/g,'\\"')+'"');
	}
	data.lastssev = tronc[1];
	data.nocache = String(Math.random()).substr(2,8);

	inputs = $('#edit_event > dl > dd > input').get();
	for (i=0; i<inputs.length; i++)
		if (inputs[i].id && inputs[i].value)
			eval('data.'+inputs[i].id+' = "'+inputs[i].value.replace(/\\/g,'\\\\').replace(/"/g,'\\"')+'"');
	data.action = (($('#id_events').val() != '')?'edit':'add');
	data.id_events = $('#id_events').val();

	$.get("./atac/update.php", data, function(ret){
	if (ret != '')
	{
		alert(ret);
		return;
	}
	window.location.reload(true);
//	hide_over("#pop_edit");
  });
	
}

function del_event(id)
{
	if (!id)
		id = $('#id_events').val();
	if ($('#id_events').val() == '' || !confirm("Confirmez la suppression de l'évènement?"))
		return;
	$.get("./atac/update.php", {action: 'del', id_events : id, nocache:String(Math.random()).substr(2,8)}, function(data){
	if (data != '')
	{
		alert(data);
		return;
	}
	hide_over("#pop_edit");
	window.location.reload(true);
  });
}

function show_over(id, dt, up) {
 if (up == 1 && $('#if_cont_over').attr('src') != 'spip.php ?page=over_artiste&'+rub)
  $('#if_cont_over').attr('src', 'spip.php ?page=over_artiste&'+rub);
 
 var pos = captureMousePosition(ev);
 $('#cont_over').css({'display' : 'block', 'top' : pos['y']+'px', 'left' : pos['x']+'px'});
}

function hide_over(elem)
{
 $(elem).html('') ;
 $(elem).css({'display' : 'none'}) ;
}

function zeroBefore(str)
{
	str = "00"+str;
	return str.substr(str.length - 2);
}

function captureMousePosition(e, elem, decale) {
  var par_x=0, par_y=0, elem_tmp = elem;
  
  while ((elem_tmp = $(elem_tmp).parent()) && $(elem_tmp).attr('tagName') != 'HTML')
  {
	par_x += (isNaN(parseInt($(elem_tmp).css('left'))))?0:parseInt($(elem_tmp).css('left'));
	par_y += (isNaN(parseInt($(elem_tmp).css('top'))))?0:parseInt($(elem_tmp).css('top'));
  }

 var xMousePos, yMousePos, xMousePosMax, yMousePosMax ;
// var decale = 10 ;
 if (document.layers) {
 xMousePos = e.pageX ;
 yMousePos = e.pageY ;
 xMousePosMax = window.innerWidth+window.pageXOffset ;
 yMousePosMax = window.innerHeight+window.pageYOffset ;
 }else if (document.all) {
 xMousePos = window.event.clientX+document.documentElement.scrollLeft ;
 yMousePos = window.event.clientY+document.documentElement.scrollTop ;
 xMousePosMax = document.documentElement.clientWidth+document.documentElement.scrollLeft ;
 yMousePosMax = document.documentElement.clientHeight+document.documentElement.scrollTop ;
 }else if (document.getElementById) {
 xMousePos = e.pageX ;
 yMousePos = e.pageY ;
 xMousePosMax = window.innerWidth+window.pageXOffset ;
 yMousePosMax = window.innerHeight+window.pageYOffset ;
 }
 var width_box = parseInt($(elem).css('width')) + (parseInt($(elem).css('padding-left')) * 2) ;
 var height_box = parseInt($(elem).css('height')) + (parseInt($(elem).css('padding-top')) * 2) ;
 
 if (xMousePosMax - xMousePos < width_box + decale) {
  xMousePos -= width_box + decale ;
 } else {
  xMousePos += decale;
 }
 
 if (yMousePosMax - yMousePos < height_box + decale) {
  yMousePos -= height_box + decale ;
 } else {
  yMousePos += decale;
 }
 

 return {'x' :xMousePos + decale - par_x, 'y' :yMousePos + decale - par_y};
}

function check_num(elem, simple)
{
	var err = 0;
	
	if (simple)
	{
		$(elem).css("background-color", "transparent");
		if (!$(elem).val())
			return 0;
		if (!isNaN($(elem).val()))
			switch ($(elem).attr('id').substr($(elem).attr('id').length - 2))
			{
				case "_h":
					if (parseInt($(elem).val()) <= 23 && parseInt($(elem).val()) >= 0)
						return 0;
					break;
				case "_m":
					if (parseInt($(elem).val()) <= 59 && parseInt($(elem).val()) >= 0)
						return 0;
					break;
				default:
					return 0;
			}
		$(elem).css("background-color", "#F77");
		return 1;
	}
	else
		for (i = 0; i < elem.length; i++)
			err += check_num(elem[i], 1);
	if (err > 0)
	{
		alert('Une valeure est erronée.\nMerci de controler les cases en rouge.');
		return false;
	}
	return true;
}

$(function(){
 var arVersion = navigator.appVersion.split("MSIE")
 var version = parseFloat(arVersion[1])

  if ((version >= 5.5) && version < 8 && (document.body.filters)) 
	{
		$("#pop_edit", "#calendar").each(function(){
					var src = $(this).css('background-image');
					$(this).css('background-image','none');
					//$(this).css({'background-color':'#FFF', 'width':'290px', 'height':'320px', 'padding':'1px'});
					$(this).css({'filter':'progid:DXImageTransform.Microsoft.AlphaImageLoader(src=\''+src.substr(5,src.length-7)+'\', sizingMethod=\'scale\')'});
				});
	}
	
});

