var titleLoaded = null;
var titleListener = null;
var lastTitle = null;

var lastcheck = null;

$(document).ready(function() {

	$('#DomainDomainAuthor').ready(function() {

		checkDomainRegisterValue($(this));
	});
	
	$('.registercheck').keyup(function() {

		/*
		var ts = new Date().getTime();

		if(ts == null || (ts - lastcheck) > 3000) {
			lastcheck = ts;
		*/
			checkDomainRegisterValue(this);
		//}

	}).blur(function() {

		checkDomainRegisterValue(this);
	});

	if($('#mostviewed').length > 0) {

		loadBest(1);
	}
});

function loadBest(months) {

	$('#mostviewed').html('<br /><img src="http://icons.domain4free.net/ajax-loader.gif" />');

	var url = '/domainajax/call/mostviewed/' + months;

	$.ajax({
		url: url,
		method: 'POST',
		success: function(res) {

			var domains = eval('(' + res + ')');

			var ul = $('<ul style="list-style-type: none;"></ul>');
			for(i in domains) {
				var domain = domains[i];

				if(domain.domain != undefined) {

					var li = $('<li style="margin-bottom: 4px;"></li>');
					var link = $('<a href="http://' + domain.domain + '"></a>');
					var img = $('<img src="http://screenshotter.domain4free.net/?q=http://' + domain.domain + '" style="float: left;" />');
					var cnt = $('<div style="float: left; padding-left: 20px; font-size: 30px;">' + domain.cnt + ' Aufrufe</div>');
					var clear = $('<div style="clear: both;"></div>');

					link.append(img);
					li.append(link);
					li.append(cnt);
					li.append(clear);
					ul.append(li);
				}
			}

			$('#mostviewed').empty();
			$('#mostviewed').append(ul);
		}
	});
}

function checkDomainRegisterValue(input) {

	if(input.id == undefined) {

		return false;
	}
	
	var field = $(input).attr('id').substring(12).toLowerCase();
	var result_field = $('#' + field + '_check');

	result_field.html('<img src="http://images.domain4free.net/ajaxloader.gif" alt="" />');

	var value = $(input).val();
	var url = '/domainajax/call/check' + field + '/' + value;

	$.ajax({
		method: 'POST',
		url: url,
		data: Form.Element.serialize('DomainDomainURL'),
		cache: false,
		context: input,
		success: function(msg) {

			var field = $(this).attr('id').substring(12).toLowerCase();
			var result_field = $('#' + field + '_check');

			result_field.html(msg);

			if(field == 'url') {

				loadTitle();
			}

			checkForm();
		}
	});
}

window.onload = function() {

	initTip();
	parseTitles();
}

function toggle_display(elem_id) {
	
	var elem = document.getElementById(elem_id);
	elem.style.display = (elem.style.display != 'none' ? 'none' : '');
}

function parseTitles() {
	
	var elements = document.getElementsByClassName("help");
	
	for(var i = 0; i < elements.length; i++) {
	
		var e = elements[i];
		e.setAttribute("title", e.getAttribute("title").split("\n").join("<br />"));
		
		e.onmouseover = function() {
		
			ddrivetip(this.getAttribute("title"),'#2C6877', 360);
			this.setAttribute("title", "");
		}
		e.onmouseout = function() {
		
			this.setAttribute("title", tipobj.innerHTML);
			hideddrivetip();
		}
	}
}

function insertHTML(field, html) {
	
	document.getElementById(field).innerHTML = html;
}

function loadTitle() {

	var title = $('#parsedTitle').val();

	if(title != undefined && lastTitle != title) {

		$('#DomainDomainTitle').val(title);
		lastTitle = title;
	}
		
	checkTitle();
}

function checkUrl() {
	
	if($('#DomainDomainUrl').val() != '') {

		checkDomainRegisterValue($('#DomainDomainUrl'));
	}
}

function checkTitle() {
	
	if($('#DomainDomainTitle').val() != '') {

		checkDomainRegisterValue($('#DomainDomainTitle'));
	}
}

function checkAuthor() {
	
	if (document.getElementById('DomainDomainAuthor').value.length > 0) {
	
		insertHTML('author_check', '<img src="http://icons.domain4free.net/ajax-loader.gif" alt="" />');
		
		$.ajax({
			url: '/domainajax/call/checkauthor/' + $('#DomainDomainAuthor').val(),
			success: function(data) 
			{
				$('#author_check').html(data);
			}
		});
		
		setTimeout("checkForm()", 300);
	}
}

function checkDescription() {
	
	if (document.getElementById('DomainDomainDescription').value.length > 0) {
	
		insertHTML('description_check', '<img src="http://icons.domain4free.net/ajax-loader.gif" alt="" />');
		
		new Ajax.Updater('description_check', '/domainajax/call/checkdescription', {
			asynchronous: true,
			evalScripts: true,
			parameters: Form.Element.serialize('DomainDomainDescription'),
			requestHeaders: ['X-Update', 'description_check']
		})
		
		setTimeout("checkForm()", 300);
	}
}

function checkKeywords() {
	
	if (document.getElementById('DomainDomainKeywords').value.length > 0) {
	
		insertHTML('keywords_check', '<img src="http://icons.domain4free.net/ajax-loader.gif" alt="" />');
		
		new Ajax.Updater('keywords_check', '/domainajax/call/checkkeywords', {
			asynchronous: true,
			evalScripts: true,
			parameters: Form.Element.serialize('DomainDomainKeywords'),
			requestHeaders: ['X-Update', 'keywords_check']
		})
		
		setTimeout("checkForm()", 300);
	}
}

function checkForm() {
	
	var enable_submit = true;
	var images = document.getElementsByTagName("img");
	
	for( var i in images ) {

		var img = images[i];

		if(typeof(img) == "object") {

			var ref = img.getAttribute("ref");
			
			if(ref != null) {
				
				if(ref == "nok" || ref == "qu") {
					
					enable_submit = false;
				}
			}
		}
	}
	
	if(enable_submit == true) {
		
		document.getElementById('domain_submit').disabled = false;
	} else {
			
		document.getElementById('domain_submit').disabled = true;
	}
}

function toggleMailView() {

	var element = document.getElementById('support_mails');
	var display = element.style.display;
	var link = 'anzeigen';

	if(display == 'none') {

		element.style.display = '';
		link = 'ausblenden';
	} else {

		element.style.display = 'none';
		link = 'anzeigen';
	}

	document.getElementById('support_mail_link').innerHTML = link;
}

function toggleFaq(link) {
	var id = link.id.split('_')[1];
	var answerElem = $('#answer_' + id);

	if(answerElem.css('display') == 'none') {

		answerElem.slideDown();
	} else {

		answerElem.slideUp();
	}
}

