var apiDomain = "http://"+window.location.hostname;
var submitURL = "http://"+window.location.hostname+"/signup.html?";
$.extend({
getUrlVars: function(){
var vars = [], hash;
var hashes = window.location.href.slice(window.location.href.indexOf('?') + 1).split('&');
for(var i = 0; i < hashes.length; i++)
{
hash = hashes[i].split('=');
vars.push(hash[0]);
vars[hash[0]] = hash[1];
}
return vars;
},
getUrlVar: function(name){
return $.getUrlVars()[name];
}
});
// Get object of URL parameters
//var allVars = $.getUrlVars();
// Getting URL var by its nam
//var byName = $.getUrlVar('name');
//tld=com&domain_type=register&sld=tesret&epp=&idp[com]=1&dperiod=1
var years = {
"period_12": "1 year",
"period_24": "2 years",
"period_36": "3 years",
"period_48": "4 years",
"period_60": "5 years",
"period_72": "6 years",
"period_84": "7 years",
"period_96": "8 years",
"period_108": "9 years",
"period_120": "10 years"
}
var tldLists = {
"list10": {"com":1, "net":1, "org":1, "info":1, "biz":1, "us":1, "tv":1, "net.cn":1, "org.cn":1, "cc":1},
"listMostPopular": {"com":1, "net":1, "org":1, "info":1, "biz":1, "co.uk":1, "com.au":1, "co.nz":1, "co.za":1, "us":1, "ca":1, "de":1, "jp":1, "se":1, "be":1, "eu":1},
"listUniversal": {"com":1, "net":1, "org":1, "info":1, "biz":1, "name":1, "mobi":1, "asia":1},
"listCountryCode": {"us":1, "tv":1, "net.cn":1, "org.cn":1, "cc":1, "cn":1, "me.uk":1, "eu":1,
"org.tw":1, "idv.tw":1, "org.uk":1, "ca":1, "com.tw":1, "co.uk":1, "com.cn":1,
"com.mx":1, "de":1, "me":1, "in":1, "net.au":1, "net.nz":1, "org.nz":1, "be":1,
"jp":1, "nu":1, "we.bs":1, "tw":1, "se":1, "ws":1, "nl":1, "com.au":1, "co.nz":1, "at":1},
"listNone": {},
"listAll": 1
};
var domainCache = {};
var selectedList;
var see_also = true;
document.write('
');
var getScriptCache = false;
function loadCSSfile(url)
{
var head = document.getElementsByTagName('head')[0];
$(document.createElement('link'))
.attr({type: 'text/css',
href: url,
rel: 'stylesheet',
media:'screen'})
.appendTo(head);
}
loadCSSfile(apiDomain + "/api-domains/js/facebox/facebox.css");
loadCSSfile(apiDomain + "/api-domains/css/api.css");
$.getScript(apiDomain + "/api-domains/js/jquery.alphanumeric.pack.js");
$.getScript(apiDomain + "/api-domains/js/facebox/facebox.js");
$.getScript(apiDomain + "/api-domains/js/sprintf.js");
$.getScript = function(url, callback, data, cache)
{
$.ajax({
type: "GET",
url: url,
success: callback,
data: data,
dataType: "script",
cache: getScriptCache
});
};
var domainsInfo, productsGetDomains, productsGetRegisterdomains, productsGetIdProtect;
var faceboxInput, homepageInput;
var selectedTld = false;
$(window).load(function(){
$.getScript(apiDomain + "/api-domains/html-search-box.php",
function(data){
$('#search-box-input').alphanumeric({allow:"- "});
$('#search-box-submit').facebox();
homepageInput = $('#search-box-input');
}
);
});
function initFacebox()
{
if ($.getUrlVar('variant') == 1)
{
$("#facebox-results-tabs").css("display", "block");
$("#see_also").css("display", "block");
$("#facebox-extensions").css("display", "none");
} else {
$("#facebox-results-tabs").css("display", "none");
$("#see_also").css("display", "none");
$("#facebox-extensions").css("display", "block");
}
$.getScript(apiDomain + "/api-domains/html-facebox.php",
function(data){
faceboxInput = $('#facebox-input');
$('#search-box-input, #facebox-input').change(function() { domainCache = {}; });
if ($("#facebox-results-tabs").css("display") == "none") //bez tabove
{
$("#facebox-tld").addClass("hidden");
selectedList = $("#facebox-extensions input[name=rExtensions]").val();
$("#facebox-extensions input[name=rExtensions]").bind("click", function(){
$("#facebox-extensions label").removeClass("selected");
$(this).parent().addClass("selected");
selectedList = $(this).val();
var selectedTR = $("#tlds-results-table tr.selected");
if(selectedTR.length != 0)
{
trId = selectedTR[0].id;
var selTld = $("#"+trId+" td.radioTd input").val();
tldLists[selectedList][selTld] = 1;
}
$('#tld-checkboxes input').each(function(index) {
if (selectedList == "listNone") tldLists[selectedList][$(this).val()] = null;
if ((selectedList == "listAll") || (tldLists[selectedList][$(this).val()] != null)) {
$(this).attr('checked', true);
$(this).parent().addClass("selected");
} else {
$(this).attr('checked', false);
$(this).parent().removeClass("selected");
}
});
if (selectedList != "listNone") {
var searchedName = faceboxInput.val();
domainSearch(searchedName);
} else $("#facebox .content").html("");
});
} else {
selectedList = "list10";
}
$("input[name=rExtensions]:checked").parent().addClass("selected");
jQuery.getJSON(
apiDomain + "/api-domains/json-domains-info.php"+"?callback=?",
function(json) {
domainsInfo = json;
for (tld in domainsInfo) {
if (tldLists[selectedList][tld] != null) {
checkedTxt = ' checked="checked"';
labelTxt = ' class="selected"';
} else {
checkedTxt = '';
labelTxt = '';
}
$('#tld-checkboxes').append('' +
'');
}
$('#tld-checkboxes input').bind("click", function(){
if ($(this).attr('checked')) {
tldLists[selectedList][$(this).val()] = 1;
$(this).parent().addClass("selected");
} else {
$(this).parent().removeClass("selected");
tldLists[selectedList][$(this).val()] = null;
}
var searchedName = faceboxInput.val();
domainSearch(searchedName);
});
}
);
jQuery.getJSON(
apiDomain + "/api-domains/json-products-get_domains.php"+"?callback=?",
function(json) {
productsGetDomains = json;
}
);
jQuery.getJSON(
apiDomain + "/api-domains/json-products-get_registerdomains.php"+"?callback=?",
function(json) {
productsGetRegisterdomains = json;
}
);
jQuery.getJSON(
apiDomain + "/api-domains/json-products-get_id_protect.php"+"?callback=?",
function(json) {
productsGetIdProtect = json;
}
);
$("#search_10").click(function(){
see_also = true;
selectedList = "list10";
$("#search_10").addClass("selected");
$("#search_all").removeClass("selected");
$("#see_also").css("display", "inline");
var searchedName = faceboxInput.val();
domainSearch(searchedName);
});
$("#search_all, #see_also").click(function(){
see_also = false;
selectedList = "listAll";
$("#search_all").addClass("selected");
$("#search_10").removeClass("selected");
$("#see_also").css("display", "none");
var searchedName = faceboxInput.val();
domainSearch(searchedName);
});
$('#facebox-form-reg').submit(function() {
var searchedName = faceboxInput.val();
homepageInput.val(searchedName);
domainSearch(searchedName);
return false;
});
$("#facebox-tld").change(function() {
$("#search-box-tld").val($("#facebox-tld").val());
selectedTld = $("#facebox-tld").val();
});
$("#search-box-tld").change(function() {
$("#facebox-tld").val($("#search-box-tld").val());
selectedTld = $("#search-box-tld").val();
});
$("#orderTld").click(function() {
var selectedTR = $("#tlds-results-table tr.selected");
if(selectedTR.length == 0) return false;
trId = selectedTR[0].id;
orderURL = submitURL
+ "tld=" + $("#"+trId+" td.radioTd input").val()
+ "&domain_type=" + $("#"+trId+"_domain_type").val()
+ "&sld=" + $("#"+trId+"_sld").val()
+"&dperiod=" + parseInt(years[$("#"+trId+" td.period select").val()]);
if ($("#" + trId + " p.epp input").val() != undefined)
orderURL = orderURL + "&epp=" + $("#" + trId + " p.epp input").val();
if ($("#" + trId + " p.idp input").val() != undefined)
orderURL = orderURL + "&" + $("#" + trId + " p.idp input").attr("name") + "=" + $("#" + trId + " p.idp input").val();
orderURL = orderURL + "&domain_price_type=" + $('input[name=domain_price_type_facebox]:checked').val()
window.location = orderURL;
return false;
});
$('input:radio[name=domain_price_type_facebox]').filter('[value='+$('input[name=domain_price_type_searchbox]:checked').val()+']').attr('checked', true);
boldCheckboxLabels();
$('input[name=domain_price_type_searchbox]').change(function() {
$('input:radio[name=domain_price_type_facebox]').filter('[value='+$('input[name=domain_price_type_searchbox]:checked').val()+']').attr('checked', true);
boldCheckboxLabels();
});
$('#domain_price_types input').change(function() {
//domainCache = {};
var searchedName = faceboxInput.val();
$('input:radio[name=domain_price_type_searchbox]').filter('[value='+$('input[name=domain_price_type_facebox]:checked').val()+']').attr('checked', true);
boldCheckboxLabels();
domainSearch(searchedName);
});
$('#facebox-tabs a#reg').click(function(){
$('#facebox-tabs a#whois').removeClass("selected");
$('#facebox-tabs a#reg').addClass("selected");
$('#facebox-form-whois').css("display", "none");
$('#facebox-form-reg').css("display", "block");
});
$('#facebox-tabs a#whois').click(function(){
$('#facebox-tabs a#reg').removeClass("selected");
$('#facebox-tabs a#whois').addClass("selected");
$('#facebox-form-reg').css("display", "none");
$('#facebox-form-whois').css("display", "block");
});
$('#facebox-form-whois').submit(function() {
whoisDomainCheck($("#facebox-whois-input").val());
return false;
});
}
);
}
function whoisDomainCheck(domain)
{
if (!isValidDomain(domain))
{
alert("Enter a valid domain name");
return false;
}
$('#facebox-whois-data').empty().addClass("loading");
jQuery.getJSON(
apiDomain + "/api-domains/json-whois-check.php?domain=" + domain + "&callback=?",
function(msg) {
$('#facebox-whois-data').html(msg).removeClass("loading");
}
);
}
function checkWhois(domain)
{
$("#facebox-whois-input").val(domain);
$('#facebox-form-whois').submit();
$('#facebox-tabs a#whois').trigger('click');
}
function isValidDomain(domain){
var urlPattern = /^[A-Za-z0-9.-]+\.[A-Za-z]{2,6}$/
return urlPattern.test(domain);
}
function boldCheckboxLabels()
{
$('#searchTldOptions label').css("font-weight", "normal");
$("input[name=domain_price_type_searchbox]:checked").parent().css("font-weight", "bold");
$('#domain_price_types label').removeClass("selected");
$("input[name=domain_price_type_facebox]:checked").parent().addClass("selected");
}
function createModalDialog()
{
if($('#facebox-input').length == 0) return false;
$('#facebox div.loading').css('display','none');
$('#facebox-tabs').css('display','block');
$('#facebox-form-reg').css('display','block');
$('#facebox-whois-data').css('height', ($('#facebox-form-reg').height() - 114) + "px" )
$("#facebox-tld").val($("#search-box-tld").val());
$('#facebox-tabs a#reg').trigger('click');
var searchedName = homepageInput.val();
faceboxInput.val(searchedName);
domainSearch(searchedName);
}
function domainSearch(searchedName)
{
searchedName = checkDomainName(searchedName);
faceboxInput.val(searchedName);
homepageInput.val(searchedName);
if (searchedName == "")
{
alert("Please enter a valid domain name. (e.g. my-best-domain)");
return;
}
$("#facebox .content").html("");
if ($("#facebox-results-tabs").css("display") == "block")
{
var selectTld = $("#facebox-tld").val();
domainCheck(searchedName, selectTld);
} else selectTld = false;
see_also_txt = "See also: ";
first = true;
if ((selectedTld != undefined) && selectedTld) domainCheck(searchedName, selectedTld, true);
for (tld in domainsInfo)
{
if ((selectedList == "listAll") || (tldLists[selectedList][tld] != null))
{
if ((tld != selectTld)&&(tld != selectedTld))
{
domainCheck(searchedName, tld);
if (domainAlias != false && tld == selectedTld)
domainCheck(domainAlias, tld);
}
} else if (see_also) {
if (first) first = false;
else see_also_txt += ",";
see_also_txt += " ." + tld;
}
}
if (see_also) $("#see_also").html(see_also_txt);
}
function isNumber(s) {
return (s.toString().search(/^-?[0-9.]+$/) == 0);
}
function domainCheck(searchedName,searchedTld,checkedTld)
{
if (!($('#tlds-results-table tr').length % 2)) var evenClass = ' class="trEven"';
else var evenClass = '';
if (checkedTld) {
var checkedHtml = ' checked="checked"';
var loaderImage = 'ajax-loader.gif'
}
else {
var checkedHtml = '';
var loaderImage = 'ajax-loader.gif'
}
$('#tlds-results-table').append(
''+
' | ' +
'Checking ' + searchedName + "." + searchedTld + '' +
' (Whois)' +
' | ' +
' | ' +
'' +
' ' +
'' +
'' +
'' +
' | ' +
'
');
if (checkedTld) $("#" + searchedName + '_' + searchedTld.replace(".", "_")).addClass("selected");
if (domainCache[searchedName] != undefined
&& domainCache[searchedName][searchedTld] != undefined
&& domainCache[searchedName][searchedTld] != null)
{
addRow(searchedName,searchedTld,domainCache[searchedName][searchedTld]);
} else {
jQuery.getJSON(
apiDomain + "/api-domains/json-domains-check.php?tld_name=" + searchedName + "&tld=" + searchedTld + "&callback=?",
function(msg) {
if (domainCache[searchedName] == undefined) domainCache[searchedName] = {};
domainCache[searchedName][searchedTld] = msg;
addRow(searchedName,searchedTld,msg);
}
);
}
}
function addRow(searchedName,searchedTld,msg)
{
var trId = '#'+searchedName + "_" + searchedTld.replace(".", "_");
if ((msg !=1) && (msg != 0))
{
$(trId + " td:eq(1) span").html("");
$(trId + " td:eq(1)").append(" - " + msg);
$(trId + " td.period").removeClass("loading");
return;
}
var op = $('input[name=domain_price_type_facebox]:checked').val();
if (op == 'domain_hosting') {
if (productsGetDomains[searchedTld] != null)
productObj = productsGetDomains[searchedTld];
else
productObj = productsGetRegisterdomains[searchedTld];
} else {
productObj = productsGetRegisterdomains[searchedTld];
}
if (msg == 0)
{
$(trId + " td:first input").css("visibility", "visible");
$(trId + " td:eq(1) span").html("Register").addClass("green");
$(trId + " td.period").removeClass("loading");
$(trId + "_sld").val(searchedName);
$(trId + "_domain_type").val("register");
var priceIdProtectObj = createIdProtectTds(trId, searchedTld);
createSelect($(trId), $(trId + " td.period"), productObj, $(trId + " span.tld-price"), priceIdProtectObj, searchedTld, false);
}
else if (domainsInfo[searchedTld].transfer == 1)
{
$(trId + " td:first input").css("visibility", "visible");
$(trId + " td:eq(1) span").html("Transfer").addClass("red");
$(trId + " td.period").removeClass("loading");
if (domainsInfo[searchedTld].epp) $(trId + " p.epp").html('');
$(trId + " td.sum").addClass('transfer-sum');
$(trId + "_sld").val(searchedName);
$(trId + "_domain_type").val("transfer");
$(trId + " a.whois-check").css("visibility", "visible");
var priceIdProtectObj = createIdProtectTds(trId, searchedTld);
createSelect($(trId), $(trId + " td.period"), productObj, $(trId + " span.tld-price"), priceIdProtectObj, searchedTld, true);
}
else
{
$(trId + " td:eq(1)").html("Transfer " + searchedName + "." + searchedTld + " Not Supported");
$(trId + " td.period").removeClass("loading");
}
$(trId).bind("click", function(e) {
if ((e.target.tagName.toLowerCase() === 'select') || (e.target.tagName.toLowerCase() === 'option')) {
return false;
}
var checkbox = $(this).find("input[name='register_transfer_tld']");
if (checkbox.css("visibility") == "hidden") return false;
$('#tlds-results-table tr.selected').removeClass("selected");
$(this).addClass("selected");
checkbox.attr('checked', true);
selectedTld = $(this).find("td.radioTd input").val();
});
}
function createIdProtectTds(trId, searchedTld)
{
if (domainsInfo[searchedTld].id_protect)
{
$(trId + " p.idp").html(
'');
$(trId + " p.tld-price-id-protect").html(
sprintf(productsGetIdProtect.currency_symbol, parseFloat(productsGetIdProtect.prices.period_12))
);
$(trId + " input:checkbox").click(function () {
if($(this).is(':checked')) {
$(this).val("1");
$(trId + " td.sum p").css("visibility", "visible");
return;
}
$(this).val("0");
$(trId + " td.sum p").css("visibility", "hidden");
});
return $(trId + " p.tld-price-id-protect");
} return false;
}
function createSelect(trObj, tdObj, productObj, tldPriceObj, priceIdProtectObj, searchedTld, onePeriod)
{
tdObj.html('');
var periodSelect = tdObj.children("select");
var TldPrice = false;
for (period in productObj.prices)
{
if (TldPrice === false) TldPrice = productObj.prices[period];
periodSelect.append('