function _(sId){return document.getElementById(sId);}

function showHide(el,show,dispStyle)
{
	if (!dispStyle) dispStyle = 'block';
	var _e = _(el);
	if (show)
		_e.style.display=dispStyle;
	else
		_e.style.display='none';
}
function togggle(el)
{
	var _e = _(el);
	if(_e.style.display=='' || _e.style.display=='none')
		_e.style.display='block';
	else
		_e.style.display='none';
}
function showImg(path, title, winName)
{
	window.open('showImg.htm?i='+encodeURI(path)+'&title='+encodeURI(title),winName,'toolbar=no,status=yes,location=no,menubar=no,width=200,height=100,left=150,top=50');
}
function showImgGl(path,title,descr,winName)
{
	window.open('showImgGl.htm?i='+encodeURI(path)+'&amp;title='+encodeURI(title)+'&amp;descr='+encodeURI(descr),winName,'resizable=yes,toolbar=no,status=yes,location=no,menubar=no,width=200,height=100,left=150,top=0');
}
// -----------------------------------------------------------------------------

function fReq(virgullu)
{
	var names = virgullu.split(",");
	var elArr;
	var el;
	for (i=0;i<names.length;i++)
	{
		elArr = document.getElementsByName(names[i]);
		el = elArr[0];
		var ck=true;
		if (el.type=='radio')
		{
			ck = false;
			for (j=0;j<elArr.length;j++)
				if (elArr[j].checked) ck = true;
		}
		if (el.value=='' || !ck)
		{
			alert(YZ_LANG['FREQ1']+el.title+YZ_LANG['FREQ2']);
			el.focus();
			return false;
		}
	}
	return true;
}

// -----------------------------------------------------------------------------

function enable_smooth_scroll() {
    function filterPath(string) {
        return string
                .replace(/^\//,'')
                .replace(/(index|default).[a-zA-Z]{3,4}$/,'')
                .replace(/\/$/,'');
    }

    var locationPath = filterPath(location.pathname);
    
    var scrollElement = 'html, body';
    $('html, body').each(function () {
        var initScrollTop = $(this).attr('scrollTop');
        $(this).attr('scrollTop', initScrollTop + 1);
        if ($(this).attr('scrollTop') == initScrollTop + 1) {
            scrollElement = this.nodeName.toLowerCase();
            $(this).attr('scrollTop', initScrollTop);
            return false;
        }    
    });
    
    $('a[href*=#]').each(function() {
        var thisPath = filterPath(this.pathname) || locationPath;
        if  (   locationPath == thisPath
                && (location.hostname == this.hostname || !this.hostname)
                && this.hash.replace(/#/, '')
            ) {
                if ($(this.hash).length) {
                    $(this).click(function(event) {
                        var targetOffset = $(this.hash).offset().top;
                        var target = this.hash;
                        event.preventDefault();
                        $(scrollElement).animate(
                            {scrollTop: targetOffset},
                            500,
                            function() {
                                location.hash = target;
                        });
                    });
                }
        }
    });
}

// -----------------------------------------------------------------------------

function loadTblSort()
{
	$.ajax({
		type: "GET",
		url: "js/jquery.tablesorter.min.js",
		dataType: 'script',
		cache: true,
		success: function(){
			$("#jxKapTbl").tablesorter({ 
				headers: {
					2: {sorter: false} 
				},
				textExtraction: function(node) { 
					return node.childNodes[0].innerHTML; 
				} 
			}); 
		}
	});
}

var AC_DATA = [];
jQuery.each(TLD_DATA, function(i, s) {
	AC_DATA.push(i);
	if (s.slds) {
		jQuery.each(s.slds, function(i2, s2) {
			AC_DATA.push(s2+'.'+i);				 
		});		   
	}
});

var JX_ID = 0;
var JXES = [];
var JX_DATA = {};
var TBL_SORT_LOADED = false;

function qErrRet(msg)
{
	alert(msg);
	$("#whSubmit").attr("disabled", "");
	_('q').focus();_('q').select();
	return false;
}

function sldTldErrRet(msg)
{
	alert(msg);
	$("#whSubmit").attr("disabled", "");
	_('sldtld').focus();_('sldtld').select();
	return false;
}

$(document).ready( function () {
							 
	$("#jx_dlg").dialog({
		autoOpen: false,
		closeOnEscape: true,
		draggable: true,
		width: 770,
		height: 500,
		resizable: true
	});
	
	enable_smooth_scroll();
	
	$("#sldtld").autocomplete(AC_DATA, {multiple:false, scrollHeight:210});
	
	$('#whDetSubmit').click(function(e){
		$("#q").addClass('ayrSorgu');
	});

	$('#sorguForm').submit(function(e){
		$("#whSubmit").attr("disabled", "disabled");

		var sorgu = jQuery.trim($('#q').val()).toLowerCase();
		var sldtld = jQuery.trim($('#sldtld').val()).toLowerCase();
		sldtld = sldtld.replace(/^[.\-\:]+/, '').replace(/[.\-\:]+$/, ''); // trim .:-
		sldtld = sldtld.replace(/^[\/\\]+/, '').replace(/[\/\\]+$/, ''); // trim /\
		if (sorgu.length <= 0) {
			return qErrRet(YZ_LANG['QERR_NOEMP']);
		}
		sorgu = sorgu.replace(/^[\/\\]+/, '').replace(/[\/\\]+$/, ''); // trim /\
		sorgu = sorgu.replace(/[.]{2,}/, '.');
		sorgu = sorgu.replace(/[\/]{3,}/, '//');
		var protoPos = sorgu.indexOf('://');
        if (protoPos != -1) {
        	sorgu = sorgu.substring(protoPos+3, sorgu.length);
        }
		sorgu = sorgu.replace(/[\/]{2,}/, '/');
		sorgu = sorgu.split('/');
        sorgu = sorgu[0];
		
		sorgu = sorgu.split('@');
        if (sorgu.length > 1) {
        	sorgu = sorgu[1];
        } else {
        	sorgu = sorgu[0];
        }
		sorgu = sorgu.replace(/^[.\-\:]+/, '').replace(/[.\-\:]+$/, ''); // trim .:-
		sorgu = sorgu.split(':');
        sorgu = sorgu[0];
		var dotParts = sorgu.split('.');
		if (dotParts.length < 4 || sorgu.search(/[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}/) == -1) {
			if (sldtld.length <= 0) {
				sldtld = 'com';
			} else {
				var sldtldDotParts = sldtld.split('.');
				if (sldtldDotParts.length > 2) {
					sldtld = sldtldDotParts[sldtldDotParts.length-2] + '.' + sldtldDotParts[sldtldDotParts.length-1];
					sldtldDotParts = sldtld.split('.');
				}
				if (sldtldDotParts.length == 1) {
					if (jQuery.inArray(sldtldDotParts[0], AC_DATA) == -1) {
						return sldTldErrRet(YZ_LANG['INV_SLD_TLD']);
					}
				} else {
					if (jQuery.inArray(sldtld, AC_DATA) == -1) {
						if (jQuery.inArray(sldtldDotParts[1], AC_DATA) != -1) {
							if (TLD_DATA[sldtldDotParts[1]].sld == false) {
								sldtld = sldtldDotParts[1];
							}
						} else {
							return sldTldErrRet(YZ_LANG['INV_SLD_TLD']);
						}
					}
				}
				
			}
			if (dotParts.length == 2) {
				sorgu = dotParts[0];
				if (jQuery.inArray(dotParts[dotParts.length-1], AC_DATA) != -1) {
					sldtld = dotParts[dotParts.length-1];
				}
			} else if (dotParts.length == 3) {
				if (jQuery.inArray(dotParts[1]+'.'+dotParts[2], AC_DATA) != -1) {
					sldtld = dotParts[1]+'.'+dotParts[2];
					sorgu = dotParts[0];
				} else {
					if (jQuery.inArray(dotParts[2], AC_DATA) != -1) {
						sldtld = dotParts[2];
					}
					sorgu = dotParts[1];
				}
			}
			sorgu = sorgu.replace(/^[.\-\:]+/, '').replace(/[.\-\:]+$/, ''); // trim .:-
		} else {
			var gecersizIP = false;
			var octet = -1;
			jQuery.each(dotParts, function(i, s) {
				octet = parseInt(s);
				if (octet < 0 || octet > 255) {
					gecersizIP = true;
				}
			});
			if (gecersizIP) {
				return qErrRet(YZ_LANG['INV_IP']);
			} else {
				$('#sldtld').val('');
			}
		}
		$('#sldtld').val(sldtld);
		$('#q').val(sorgu);
		
		var q = sorgu;
		if (sldtld != '') {
			q += '.'+sldtld;
		}

		if ($("#q").hasClass('ayrSorgu')) {
			location.href = '?q='+q;
			return false;
		}
		
		var ndx = jQuery.inArray(q, JXES);
		if (ndx != -1) {
			$('<a href="#JX_A_'+ndx+'">&nbsp;</a>').click();
			return qErrRet(YZ_LANG['ALR_Q_T']);
		} else {
			JXES[++JX_ID] = q;
		}
		
		$('#jxKapTblTbody').prepend('<tr id="JX_'+JX_ID+'" class="mo"><th colspan="3">'+q+'<span class="loading" title="'+YZ_LANG['LOADING']+'">&nbsp;</span></th></tr>');
		$('#jxKap').show();
		e.preventDefault();
		$("#whSubmit").attr("disabled", "");
		_('q').focus();_('q').select();
		$.ajax({
			type: "GET",
			url: "?q="+q+"&type=jx",
			dataType: 'json',
			success: function(flData){
				var id = jQuery.inArray(q, JXES);
				JX_DATA[id] = flData;
				var thClass = '';
				if (flData.type == 'domain') {
					if (flData.Avail == true) {
						thClass = 'th_avail';
					} else if (flData.Avail == false) {
						thClass = 'th_not_avail';
					} else {
						thClass = 'th_err';
					}
				}
				var html = '<th class="'+thClass+'"><a id="JX_A_'+id+'" name="JX_A_'+id+'">'+flData.gorunecek+'</a></th><td class="ptd orta"><p class="';
				if (flData.type == 'domain') {
					if (flData.Avail == true) {
						html += 'dom_avail">'+YZ_LANG['DOM_AVAIL'];
					} else if (flData.Avail == false) {
						html += 'dom_not_avail">'+YZ_LANG['DOM_NOT_AVAIL'];
					} else {
						html += 'dom_err">'+YZ_LANG['ERR'];
					}
				} else {
					html += '">IP';
				}
				html += '</p></td><td class="ptd sag">';
				if (flData.Avail == true) {
					html += '<a target="_blank" href="'+encodeURI(AL_ADRES+flData.gorunecek)+'" title="'+YZ_LANG['BUY_THIS']+'"><img class="vMid" src="res/sepet2.gif" alt="'+YZ_LANG['BUY_THIS']+'" /></a>';
				} else {
					html += '<a title="'+YZ_LANG['DET']+'" href="#" onclick="sonucGoster('+id+');return false;"><img class="vMid" src="admin/img/zoom.gif" alt="'+YZ_LANG['DET']+'" /></a>';
				}
				html += '</td>';
				$('#JX_'+id).html(html);
				$("#jxKapTbl").trigger("update"); 
				if (!TBL_SORT_LOADED) {
					TBL_SORT_LOADED = true;
					loadTblSort();
				}
				_('q').focus();
			},
			error: function(XMLHttpRequest, textStatus, errorThrown) {
				$("#whSubmit").attr("disabled", "");
				alert(textStatus+(errorThrown?' ('+errorThrown.message+')':''));
				_('q').focus();_('q').select();
			}
		});
		
		//return false;
	});
});

function sonucGoster(id)
{
	var html = ''
	if (JX_DATA[id].Avail == false) {
		html += '<p class="detWhois"><a href="?q='+JX_DATA[id].tekilAd+'" target="_blank">'+YZ_LANG['DET_WHOIS']+'</a></p>';
	}
	html += JX_DATA[id].html;
	$("#jx_dlg").html(html);
	$("#jx_dlg").dialog('option', 'title', JX_DATA[id].gorunecek);
	$("#jx_dlg").dialog('open');
}