var tlds = new Array("co.uk", "org.uk", "me.uk", "com", "net", "info", "org", "biz", "name", "eu", "mobi", "cc", "tv", "tel", "me");

$("document").ready(function()
{
  // get domain availability on submit
  $("form#domain-in").submit(function()
  {
    var domain = $("#domain-text").val();
    
    if(domain.length < 3)
    {
      alert("Please enter a domain of at least 3 letters");
      return false;
    }
    
    // strip www.
    var www_reg_exp = new RegExp("www.");
    domain = domain.replace(www_reg_exp, "");
    
    // if domain contains a dot, strip out everything post dot
    var dot_loc = domain.indexOf(".");
    if(dot_loc >= 0)
    {
      domain = domain.substr(0, dot_loc);
    }
    
    // make sure domain only contains valid characters (a-z, A-Z, 0-9, -)
    if(!domain.match(/^[a-zA-Z0-9\-]+$/))
    {
      alert("The domain name '"+$("#domain-text").val()+"' is invalid, domain names can only contain letters, numbers and hyphens");
      return false;
    }

    // don't bother in IE6
    if($.browser.msie && parseInt($.browser.version) <= 6)
    {
      // make mouse cursor a loading one
      $("#domain-check-submit, html").css({cursor: "wait"});

      return true;
    }

    $("#domain-in").after("<div id='domain-search-status'>Getting domain status - <span>0</span> of 15 <img src='img/ajax-load.gif' /></div>");
    
    var domains_found = 0;
    var tld_count = tlds.length;
    var return_count = 0;
    
    // remove any old tables
    $("form#domain-list-form").remove();
    
    // add table below form
    $("div#domain-forms").append("<form id='domain-list-form' action='domains' method='post'><input type='hidden' name='domain_name' value='"+domain+".' /><table id='domain-list'><thead><tr><td>Domain Name Availability</td><td>Register/Transfer</tr></thead><tbody></tbody></table><input type='submit' name='order' value='Order Domains' class='cv-submit' /><div class='center small' style='clear: both;'><br />*you must be the registered owner of a domain in order to transfer it.</div></form>");

    // loop through tlds, find availability
    for(i = 0; i < tld_count; i++)
    {
      domain_full = domain+"."+tlds[i];
      $.get("whois/go-json.php?d="+domain_full+"&i="+i, function(data)
      {
        domains_found++;
        if(domains_found == 15) $("#domain-search-status").remove();
        else $("#domain-search-status span").text(domains_found);
        
        var whois = eval("("+data+")");
        
        // if the domain name contains '.uk' then it's a 2 year deal
        if(whois.domain.lastIndexOf(".uk") > 0) var price = whois.reg+" (2 years)";
        else var price = whois.reg+" (1 year)";

        if(whois.status == "AVAILABLE")
        {
          $("table#domain-list tbody").append("<tr><td class='domain-cell'><img src='img/domain-icons/tick.png' /><a href='whois/go.php?d="+whois.domain+"&f' target='_blank' class='domain-info' title='Click here to view raw WHOIS data for "+whois.domain+" (recommended for advanced users)'>"+whois.domain+"</a></td><td class='info-cell'><input type='hidden' name='price_"+whois.i+"' value='"+whois.reg+"' /><input type='hidden' name='tld_"+whois.i+"' value='"+whois.tld+"' /><input type='checkbox' name='reg_"+whois.i+"' id='reg_"+whois.i+"' /> <label for='reg_"+whois.i+"'>Register for &pound;"+price+"</label></td></tr>");
        }
        else if(whois.status == "REGISTERED")
        {
          if(whois.tran == 0) var trans_text = "<input type='hidden' name='price_"+whois.i+"' value='0' /><input type='hidden' name='tld_"+whois.i+"' value='"+whois.tld+"' /><input type='checkbox' name='trn_"+whois.i+"' id='trn_"+whois.i+"' /> <label for='trn_"+whois.i+"'>Transfer for <strong>FREE</strong> *</label>";
          else if(whois.tran < 0) var trans_text = "<em>Transfer not available</em>";
          else var trans_text = "<input type='hidden' name='price_"+whois.i+"' value='"+whois.tran+"' /><input type='hidden' name='tld_"+whois.i+"' value='"+whois.tld+"' /><input type='checkbox' name='trn_"+whois.i+"' id='trn_"+whois.i+"' /> <label for='trn_"+whois.i+"'>Transfer for &pound;"+whois.tran+" *</label>";
          $("table#domain-list tbody").append("<tr><td class='domain-cell'><img src='img/domain-icons/cross.png' /><a href='whois/go.php?d="+whois.domain+"&f' target='_blank' class='domain-info' title='Click here to view raw WHOIS data for "+whois.domain+" (recommended for advanced users)'>"+whois.domain+"</a></td><td class='info-cell'>"+trans_text+"</td></tr>");
        }
        else
        {
          $("table#domain-list tbody").append("<tr><td class='domain-cell'><img src='img/domain-icons/cross.png' /><a href='domains#' class='domain-info'>"+whois.domain+"</a></td><td class='info-cell'><em>Transfer not available</em></td></tr>");
        }
      });
    }
    
    return false;
  });
});
