function enableButton() {
     $('valida').disabled = false;
     $('valida').value= 'Validar';
}

function isValidURL(url){
	var urlRegxp = /^([.\w]+)\.([\w]+){1,2}(.*)$/;
	if (urlRegxp.test(url) != true)	return false;
	else return true;
}

function SaveUrl() {
	$('guardar').value= 'Espere...';
	$('guardar').disabled = true;
	url = $('url').value;
	if (url.length == 0) alert('La URL no es válida');
	else if (isValidURL(url)) {
		if ($('category').value == 0) {
			alert('Selecciona la categoría que más se ajuste a tu blog');
			$('guardar').value= 'Apúntame';
			$('guardar').disabled = false;
		}
		else if ($('action').value=="") {
			alert('Debes indicar que hacer con tu Blog tras las 24 horas.');
			$('guardar').value= 'Apúntame';
			$('guardar').disabled = false;
		}
		else if ($('feed_url').value == "") {
			alert('Debes seleccionar uno de los FEEDs de tu Blog');
			$('guardar').value= 'Apúntame';
			$('guardar').disabled = false;
		}
		else {
			$('resultado3').innerHTML ='';
			var img = document.createElement('img'); 
			Element.extend(img); 
			img.setAttribute('src','img/loading.gif');
			$('resultado3').appendChild(img);
			new Ajax.Updater('preview', 'backend/save-url.php',
			  {
			    method:'post',
			    evalScripts: true,
			    escapeHTML: true,
			    parameters: $('formulario').serialize(true)
			  });
			$('guardar').value= 'Finalizado';
			$('resultado3').innerHTML ='';
		}
	}
	else {
		$('guardar').value= 'Apúntame';
		$('guardar').disabled = false;
		alert('La URL no es válida');
	}
}

function PreviewUrl() {
	$('vista').value= 'Espere...';
	$('vista').disabled = true;
	url = $('url').value;
	if (url.length == 0) alert('La URL no es válida');
	else if (isValidURL(url)) {
		if ($('category').value == 0) {
			alert('Selecciona la categoría que más se ajuste a tu blog');
			$('vista').value= 'Vista previa';
			$('vista').disabled = false;
		}
		else if ($('action').value=="") {
			alert('Debes indicar que hacer con tu Blog tras las 24 horas.');
			$('vista').value= 'Vista previa';
			$('vista').disabled = false;
		}
		else if ($('feed_url').value == "") {
			alert('Debes seleccionar uno de los FEEDs de tu Blog');
			$('vista').value= 'Vista previa';
			$('vista').disabled = false;
		}
		else {
			$('resultado2').innerHTML ='';
			var img = document.createElement('img'); 
			Element.extend(img); 
			img.setAttribute('src','img/loading.gif');
			$('resultado2').appendChild(img);
			new Ajax.Updater('preview', 'backend/show-url.php',
			  {
			    method:'post',
			    evalScripts: true,
			    escapeHTML: true,
			    parameters: $('formulario').serialize(true)
			  });
			$('vista').value= 'Vista previa';
			$('vista').disabled = false;
		}
	}
	else {
		$('vista').value= 'Vista previa';
		$('vista').disabled = false;
		alert('La URL no es válida');
	}
}

function SendUrl() {
	$('seguir').value= 'Espere...';
	$('seguir').disabled = true;
	url = $('url').value;
	if (url.length == 0) alert('La URL no es válida');
	else if (isValidURL(url)) {
		if ($('category').value == 0) {
			alert('Selecciona la categoría que más se ajuste a tu blog');
			$('seguir').value= 'Seguir';
			$('seguir').disabled = false;
		}
		else {
			$('resultado').innerHTML ='';
			var img = document.createElement('img'); 
			Element.extend(img); 
			img.setAttribute('src','img/loading.gif');
			$('resultado').appendChild(img);
			new Ajax.Updater('resultado', 'backend/test-url.php',
			  {
			    method:'post',
			    evalScripts: true,
			    escapeHTML: true,
			    parameters: $('formulario').serialize(true)
			  });
			$('seguir').value= 'Seguir';
			$('seguir').disabled = false;
		}
	}
	else {
		$('seguir').value= 'Seguir';
		$('seguir').disabled = false;
		alert('La URL no es válida');
	}
}

function Abuse() {
	
	if ($('reason').value == 0) alert('Por favor indica el motivo de tu denuncia.');
	else {
		$('resultado').innerHTML ='';
		var img = document.createElement('img'); 
		Element.extend(img); 
		img.setAttribute('src','img/loading.gif');
		$('resultado').appendChild(img);
		new Ajax.Request('abusing.php',
		  {
		    method:'post',
		    parameters: $('formulario').serialize(true),
		    onSuccess: function(transport){
		      var response = transport.responseText || "no response text";
		      $('resultado').innerHTML = response;
		    },
		    onFailure: function(){ $('resultado').innerHTML = 'Error, no podemos conectar con el servidor' }
		  });
	}
}

function ActualizaFeed() {
	if ($('feed').value=="") alert('Selecciona el Feed para probar');
	else {
		$('preview').innerHTML ='';
		var img = document.createElement('img'); 
		Element.extend(img); 
		img.setAttribute('src','img/loading.gif');
		$('preview').appendChild(img);
		new Ajax.Request('update_feed.php',
		  {
		    method:'post',
		    parameters: $('formulario').serialize(true),
		    onSuccess: function(transport){
		      var response = transport.responseText || "no response text";
		      $('preview').innerHTML = response;
		    },
		    onFailure: function(){ $('preview').innerHTML = 'Error, no podemos actualizar.' }
		  });
	}
}

function Guardar() {
	if ($('category').value == 0) alert('Selecciona la categoría que más se ajuste a tu blog');
	else {
		$('resultado').innerHTML ='';
		var img = document.createElement('img'); 
		Element.extend(img); 
		img.setAttribute('src','img/loading.gif');
		$('resultado').appendChild(img);
		new Ajax.Request('save.php',
		  {
		    method:'post',
		    parameters: $('formulario').serialize(true),
		    onSuccess: function(transport){
		      var response = transport.responseText || "no response text";
		      if (response == '1')
		      {
		      	$('resultado').innerHTML = 'Actualización correcta.';
		      }
		      else $('resultado').innerHTML = 'Ha ocurrido un error.'+response;
		    },
		    onFailure: function(){ $('resultado').innerHTML = 'Error, no podemos actualizar.' }
		  });
	}
}

function Validacion() {
	$('valida').value= 'Validando...';
	$('valida').disabled = true;
	url = $('blog_url').value;
	if (url.length == 0) alert('no');
	else if (isValidURL(url)) {
		$('resultado').innerHTML ='';
		var img = document.createElement('img'); 
		Element.extend(img); 
		img.setAttribute('src','img/loading.gif');
		$('resultado').appendChild(img);
		new Ajax.Request('test-url.php',
		  {
		    method:'get',
		    parameters: 'url='+url,
		    onSuccess: function(transport){
		      var response = transport.responseText || "no response text";
		      if (response == '1')
		      {
		      	$('resultado').innerHTML = 'Validación correcta';
     			$('jugar').disabled = false;
		      }
		      else if (response == '-1') $('resultado').innerHTML = '¡Vaya! Ese Blog ha sido baneado por no respetar las normas.<br />No puede participar.'
		      else $('resultado').innerHTML = 'No podemos encontrar el FEED';
		    },
		    onFailure: function(){ $('resultado').innerHTML = 'Error, no podemos comprobar la dirección' }
		  });
		enableButton();
	}
	else {
		enableButton();
		$('resultado').innerHTML ='La URL no es válida';
	}
}

function Jugar() {
	if ($('jugar').disabled) {
	    return;
	}
	else {
		$('apuesta').innerHTML ='';
		var img = document.createElement('img'); 
		Element.extend(img); 
		img.setAttribute('src','img/loading.gif');
		$('apuesta').appendChild(img);
		new Ajax.Request('playing_secret_number.php',
		  {
		    method:'get',
		    parameters: 'url='+url,
		    onSuccess: function(transport){
		      var response = transport.responseText || "no response text";
		      $('apuesta').innerHTML = response;
		    },
		    onFailure: function(){ $('apuesta').innerHTML = 'Error, no podemos conectar con el servidor' }
		  });
	}
}

 /*
  * Countdown
  */
var startSeconds = 0;
var countdownTimer = null;

function startCountdown(seconds)
{
    startSeconds = seconds;
    countdownTimer = setInterval('countdown()', 1000);
}

function countdown()
{
    startSeconds--;
    
    var minutes = parseInt(startSeconds >= 60 ? startSeconds / 60 : 0);
    var seconds = parseInt(startSeconds % 60);
    
    if(seconds < 10)
        seconds = '0' + seconds;
        
    var formattedTime = minutes + ':' + seconds;
    
    $('timeRemaining').innerHTML = formattedTime;
    
    if($('timeRemaining').style.display == 'none') Effect.Appear('timeRemaining');
    
    if(startSeconds <= 0)
    {
        clearInterval(countdownTimer);
        
        $('timeRemaining').innerHTML = '0:00';
    }
}

function syncTimer()
{
    $('timeRemaining').style.display = 'none';
    
    var updatedSeconds = _Default.GetRemainingSeconds($F('feedId')).value;
    
    if(updatedSeconds <= 0)
        window.location = window.location;
    else
    {
        clearInterval(countdownTimer);
        startCountdown(updatedSeconds);
    }
}