$(document).ready(function() {

  $("#tabeditar a").click(function() {
    $('#tabcrear').css('background-position', 'bottom');
    $('#tabeditar').css('background-position', 'top');
    
    
    if($.browser.msie) {
      $('#crear').hide();
      $('#editar').show();
    } else {
      $("#crear").slideUp('normal',function() {
        $("#editar").slideDown();
      });
    }
    
    return false;
  });

  $("#tabcrear a").click(function() {
    $('#tabcrear').css('background-position', 'top');
    $('#tabeditar').css('background-position', 'bottom');
    
    if($.browser.msie) {
      $('#crear').show();
      $('#editar').hide();
    } else {
    $("#editar").slideUp("normal",function() {
      $("#crear").slideDown();
      });
    }
    
    return false;
  });
    
  
  if($.browser.msie) {
    $('#tabcrear').css('left', 5);
    $('#tabeditar').css({'right': 5, 'background-position': 'bottom'});
  }

  showErrors();
  
  $('#select_all').click(function() {
    $('tbody td.check input').attr('checked', $(this).attr('checked'));
  });
    
  $('#UserPasswordConfirm').change(function() {
    if($(this).val() != $('#UserPassword').val()) {
      var error = $('<strong class="error">Password confirmation mismatch</strong>');
      
      $(this).after(error);
      showErrors();
    
    } else {
      $(this).nextAll('.error').remove();
    }
    
  });
  
  $('#UserInfoCountry').change(function() {
    var code = $(this).val();
    $('#UserInfoCity').attr('disabled', 'disabled');
  
    $.post('/utils/getCities', {code: code}, function(cities) {
      var citySelect = $('#UserInfoCity');
      citySelect.removeAttr('disabled');
      
      var select = citySelect.get(0);
      
      select.options.length = 0;
      select.options[0] = new Option('---');
      
      for(var i in cities) {
        select.options[select.options.length] = new Option(cities[i], cities[i]);
      }
      
    }, 'json');
   
  });
  
  
  
  $('input.caption').focus(function() {
    $(this).parent().removeClass('foco');
    $("label[for='" + this.id + "'] > small").css('display', 'block');
  });

  $('input.caption').blur(function() {
    $("label[for='" + this.id + "'] > small").css('display', 'none');
  });

  
  $('#UserUsername').keyup(function() {
    clearTimeout(this.timer);
    var value = $.trim($(this).val());
    
    if(value.length > 0) {
      $('#availability').animate({opacity: 1}, 500).slideDown();
    } else {
      $('#availability').slideUp();
      return;
    }
  
    $('#name-result').text($(this).val());
    
    $('#domain-result')
      .removeClass('domain-result-good')
      .removeClass('domain-result-bad')
      .addClass('domain-result-load')
      .html('consultando');
    
    this.timer = setTimeout(checkUserAvail, 1000);
  });

  
  
  
});



function checkUserAvail() {
  $('#domain-result')
    .removeClass('domain-result-good')
    .removeClass('domain-result-bad');

  $.post('/utils/checkUserAvail', {username: $('#UserUsername').val()}, function(data) {
    
    if(data == 'YES') {
      $('#domain-result').html('disponible');
      $('#domain-result').addClass('domain-result-good');
    } else {
      $('#domain-result').html('no disponible');
      $('#domain-result').addClass('domain-result-bad');
    }
    
    $('#domain-result').removeClass('domain-result-load');
    
  });
  
}

function showErrors() {
  if($.browser.msie) return;
  
  $('input + .error')
    .css({'display': 'block', 'opacity': 100})
    .animate({top: "0px", opacity: 1}, 750);

}


// Functions to Call

function error(input) {
	$(input +" + .error")
    .css({'display': 'block', 'opacity': 0})
		.animate({top: "0px", opacity: 1}, 1000);
    
	$(input +" + input, "+ input).css({borderColor: "#cc0000"});
	$(input).parent().addClass("warn");
		
}

var Sites = {
  toggle: function(id) {
    $.post('/admin/favorite', {'id': id}, function() {
      $('#site-'+id+' td.favorite a').toggleClass('fav');
    });
  }
}
