$(document).ready(function(){
	var searchquery = $('#searchquery');

	// Defining a placeholder text:
	searchquery.defaultText('Type a Movie Title or Pornstar Name');

	// Using jQuery UI's autocomplete widget:
	searchquery.autocomplete({
		minLength	: 3,
		source		: '/ajax/auto_complete.ajax.php',
		delay		: 200
	})
	.data( "autocomplete" )._renderItem = function( ul, item ) {
		var lowlabel = item.label.toLowerCase();
		var lowquery = searchquery.val().toLowerCase();
		var clab = lowlabel.replace(lowquery, '<strong>' + lowquery + '</strong>');
			
		return $("<li></li>")
		.addClass(item.type)
		.data( "item.autocomplete", item )
		.append( "<a>" + clab + "</a>" )
		.appendTo( ul );
	};
	
	// click / select of an element
	searchquery.bind( "autocompleteselect", function(event, ui) {
		document.location.href=ui.item.link;
	});
	

	searchquery.keyup(function(e) {
		if(e.keyCode == 13)
		{
			if(searchquery.val().length && searchquery.data('defaultText') != searchquery.val()){
				createLink('movies', 'searchquery');
			}
			else return false;
		}
	});
	
	$('#search-form .submit').click(function(){
		if(searchquery.val().length && searchquery.data('defaultText') != searchquery.val()){
			createLink('movies', 'searchquery');
		}
		else return false;
	});
});

// A custom jQuery method for placeholder text:

$.fn.defaultText = function(value){

	var element = this.eq(0);
	element.data('defaultText',value);

	element.focus(function(){
		if(element.val() == value){
			element.val('').removeClass('defaultText');
		}
	}).blur(function(){
		if(element.val() == '' || element.val() == value){
			element.addClass('defaultText').val(value);
		}
	});

	return element.blur();
};

function validateFormNewsletter()
{
	var fields = ['newsletter_name', 'newsletter_email'];
	var fieldsValidation = ['Enter your name', 'Enter your e-mail please'];
	var fieldsName = ['Name', 'E-mail'];
	var error = true;
	for (var i=0;i<fields.length;i++)
	{
		if (!$('#'+fields[i]).val() || $('#'+fields[i]).val()==fieldsValidation[i])
		{
			//alert (fieldsName[i]);
			error = false;
			displayMessage(fields[i]+'_error', fieldsName[i]+" requierd", 2000);
		}
	}
	return error;
}

function subscribeToNewsletter()
{
	if(validateFormNewsletter())
	{
		jQuery.getJSON("/ajax/newsletter.ajax.php",{newsletter_name: $('#newsletter_name').val(), newsletter_email: $('#newsletter_email').val(), ajax: 'true'}, function(data){
			if(data.error)
			{
				jQuery.each(data, function(key, value){ 
					if (key!='error')
					{
						displayMessage(key+'_error', value, 2000);
					}
				});
			}
			else
			{
				var fields = ['newsletter_name', 'newsletter_email'];
				var fieldsValidation = ['Enter your name', 'Enter your e-mail please'];
				$('#newsletter_text').hide();
				displayMessage('newsletter_message', data.message, 3000);
				$('#newsletter_text').delay(4000).fadeIn(30);
				for (var i=0;i<fields.length;i++)
				{
					$('#'+fields[i]).val(fieldsValidation[i]);
				}
			}
	    });
	}
}

function displayMessage(divId, message, dur)
{
	$('#'+divId).html(message).stop().css("opacity", 1).fadeIn(30);
	$('#'+divId).delay(dur).fadeOut(1000);
}
function createLink(tp, field)
{
	jQuery.ajax({
			type: "POST",
			dataType: 'text',
			async: false,
			url: "/ajax/create_link.ajax.php",
			data: {
				type: tp,
                query: $('#'+field).val()
			},
			success: function(data){
			    document.location.href=data;
			}
		});
}

function validateContactForm()
{
	var fields = ['contact_name', 'contact_email', 'contact_inquiry', 'contact_captcha'];
	var fieldsName = ['Name', 'E-mail', 'Message', 'Security Code'];
	var error = true;
	for (var i=0;i<fields.length;i++)
	{
		if (!$('#'+fields[i]).val().length || $('#'+fields[i]).data('defaultText')== $('#'+fields[i]).val())
		{
			//alert (fieldsName[i]);
			error = false;
			displayMessage(fields[i]+'_error', fieldsName[i]+" requierd", 2000);
		}
	}
	return error;
}
function submitContactForm()
{
	if(validateContactForm())
	{
		var fields = ['contact_name', 'contact_email', 'contact_inquiry', 'contact_captcha', 'contact_inquiry_type', 'multi'];
		var dataToSend = {mode: 'send', ajax: 'true'};
		for (var i=0;i<fields.length;i++)
		{
			dataToSend[fields[i]] = $('#'+fields[i]).val();
		}
		jQuery.getJSON("/ajax/contact.ajax.php",dataToSend, function(data){
			if(data.error)
			{
				jQuery.each(data, function(key, value){ 
					if (key!='error')
					{
						displayMessage(key+'_error', value, 2000);
					}
				});
			}
			else
			{
				var fields = ['contact_name', 'contact_email', 'contact_inquiry', 'contact_captcha'];
				displayMessage('contact_message', data.message, 3000);
				for (var i=0;i<fields.length;i++)
				{
					$('#'+fields[i]).val($('#'+fields[i]).data('defaultText'));
				}
			}
	    });
	}
}
