﻿function domAlert(msg, confirma, btTextOk, titulo, div_base) {
	// para prevenir doble aparicion...
	remove();
	$('a,input').blur();
	var ancho = 415;
	/*var alto = 198;*/
	var dispatcher = {};
	// para prevenir problemas de js al no usar el evento...
	dispatcher.onControlPressed = function() { }
	var title;
	title = (titulo ? titulo : "Alerta");
	var bDiv;
	bDiv = (div_base ? div_base : "body");
	var confirm;
	confirm = (confirma ? true : false);
	var textOk;
	textOk = (btTextOk ? btTextOk : "ACEPTAR");
	$('body #' + bDiv).append('<div id="overlayAlert" />').find('#overlayAlert').css({
		position: 'absolute',
		top: 0,
		left: 0,
		width: $('body #' + bDiv).width(),
		height: $('body #' + bDiv).height(),
		background: '#AAAAAA'
	}).fadeTo(0, .8);
	$('body #'+bDiv).append('<div id="domAlert"><h3>'+title+'</h3><p>'+msg+'</p><div class="controls"></div></div>');
	
	$('body #' + bDiv + ' #domAlert .controls').append('<input type="button" class="ok" name="aceptar" value="' + textOk + '" />');
	confirm ? 
		$('body #'+bDiv+' #domAlert .controls').append('<input type="button" class="cancel" name="cancelar" value="CANCELAR" />') :
		false;
	$('body #' + bDiv + ' #domAlert').css({
		position:'absolute',
		top: (($('body #' + bDiv + '').offset()['top'] + $(window).scrollTop()) - 60) + 'px',
		left: (($('body #' + bDiv + '').width() - ancho) / 2) + "px",
		padding: "18px",
		width: ancho - (18*2) + "px",
		/*height:alto - (18*2) + "px",*/
		background:'#FFFFFF'
	})
	$('body #' + bDiv + ' #domAlert .controls .ok').bind('click', function () {
		remove();
		dispatcher.value = true;
		dispatcher.onControlPressed();
		return true;
	})
	$('body #' + bDiv + ' #overlayAlert').bind('click', function () {
		remove();
		dispatcher.value = false;
		dispatcher.onControlPressed();
		return true;
	})
	$('body #' + bDiv + ' #domAlert .controls .cancel').bind('click', function () {
		remove();
		dispatcher.value = false;
		return false;
	})
	$(window).bind('scroll',function(){
		$('body #' + bDiv + ' #domAlert').css({
			top: (($('body #' + bDiv + '').offset()['top'] + $(window).scrollTop()) - 60) + 'px'
		});
	})

	function remove() {
		$('body #' + bDiv + ' #domAlert').remove()
		$('body #' + bDiv + ' #overlayAlert').remove()
	}
	return dispatcher;
}
function customAlert(msg, titulo) {
	domAlert(msg, false, "ACEPTAR", titulo);
}

