$(document).ready
(
	function ()
	{
		$('#quick_searchfield').attr('autocomplete', 'off');
		$('#quick_searchfield').keypress
		(
			function ()
			{
				$('#quick_searchfield').autocomplete
				(
					{
						//define callback to format results
						source: function(req, add)
						{
							//pass request to server
							$.getJSON
							(
								'/editor/scripts/custom_scripts/eshop/search/search.json.php?callback=?',
								req,
								function(data)
								{
									//create array for response objects
									var suggestions = [];
									
									//process response
									$.each
									(
										data,
										function(i, val)
										{
											suggestions.push(val.result);
										}
									);
									
									//pass array to callback
									add(suggestions);
								}
							);
						},
						close: function(event, ui)
						{
							if ($('#quick_searchfield').val() != '')
							{
								$('#quick_search').submit();
							}
						}
					}
				);
			}
		);
		
		if ($(window).width() > 1000)
		{
			var width = ($(window).width() - 1000) / 2;
			$('#sideBarRight, #sideBarLeft').css('width', width);
		}
		
		$('#quick_password, #quick_username').focus(function(){$(this).addClass('sel');});
		$('#quick_password, #quick_username').blur(function(){if ($(this).val()==''){$(this).removeClass('sel');}});
		if ($('#quick_username').val()!=''){$('#quick_username').addClass('sel');}
		if ($('#quick_password').val()!=''){$('#quick_password').addClass('sel');}
		
		$('#quick_searchfield').focus
		(
			function ()
			{
				if ($(this).val() == 'hľadať')
				{
					$(this).val('');
				}
			}
		);
		
		$('#quick_searchfield').blur
		(
			function ()
			{
				if ($(this).val() == '')
				{
					$(this).val('hľadať');
				}
			}
		);
		
		$('#quick_search').submit
		(
			function ()
			{
				var submit = true;
				
				if (submit && ($('#quick_searchfield').val() == 'hľadať' || $('#quick_searchfield').val() == ''))
				{
					alert('Zadajte hľadaný výraz');
					$('#quick_searchfield').focus();
					submit = false;
				}
				
				if (submit)
				{
					disable_button('quick_search_submit');
				}
				
				return submit;
			}
		);
		
		$('#poll ul li a').click
		(
			function ()
			{
				$('#answer_id').val($(this).attr('rel'));
				$('#poll').submit();
				
				return false;
			}
		);
		
		var lightbox =
		{
			imageLoading: '/editor/images/design/lightbox/lightbox-ico-loading.gif',
			imageBtnClose: '/editor/images/design/lightbox/lightbox-btn-close.gif',
			imageBtnPrev: '/editor/images/design/lightbox/lightbox-btn-prev.gif',
			imageBtnNext: '/editor/images/design/lightbox/lightbox-btn-next.gif',
			txtImage: 'Image',
			txtOf: 'of',
			keyToClose: 'q'
		};
		$('#gallery a, .gallery td a').lightBox(lightbox);
		$('a.lightbox').lightBox(lightbox);
		
		$('.gameplay a').fancybox
		(
			{
				'centerOnScroll': true,
				'hideOnOverlayClick': false
			}
		);
		
		$('.tabs').tabs();
		
		$('.button').button();
		
		$('.calendar').datepicker
		(
			{
				firstDay: 1,
				dateFormat: 'yy-mm-dd',
				monthNames: ['Január','Február','Marec','Apríl','Máj','Jún','Júl','August','September','Október','November','December'],
				dayNamesMin: ['Ne', 'Po', 'Ut', 'St', 'Št', 'Pi', 'So']
			}
		);
		
		$('.user_articles .delete a').click
		(
			function ()
			{
				return confirm('Naozaj chcete zmazať príspevok?');
			}
		);
		
		$('#captcha_image').click
		(
			function ()
			{
				var now = new Date();
				
				$(this).attr('src', '/editor/lib/captcha/visual_captcha.php?color=1&initial_refresh=' + Math.random() + '&refresh=' + now.getTime());
				
				$('#tmp_captcha_code').val('');
				$('#tmp_captcha_code').focus();
			}
		);
		
		$('.messages_list thead input:checkbox').click
		(
			function ()
			{
				$('.messages_list tbody input:checkbox').each
				(
					function ()
					{
						if ($(this).attr('checked') == true)
						{
							$(this).parent().parent().removeClass('sel');
							$(this).attr('checked', false);
						}
						else
						{
							$(this).parent().parent().addClass('sel');
							$(this).attr('checked', true);
						}
					}
				);
			}
		);
		
		$('.messages_list tbody input:checkbox').click
		(
			function ()
			{
				if ($(this).attr('checked') == true)
				{
					$(this).parent().parent().addClass('sel');
				}
				else
				{
					$(this).parent().parent().removeClass('sel');
				}
			}
		);
		
		$('.messages_menu .delete').click
		(
			function ()
			{
				if (confirm('Chcete správy zmazať?'))
				{
					$('#messages').submit();
				}
				
				return false;
			}
		);
		
		$('.messages_menu .delete2').click
		(
			function ()
			{
				if (confirm('Chcete správu zmazať?'))
				{
					return true;
				}
				
				return false;
			}
		);
		
		$('#to_user').autocomplete
		(
			{
				//define callback to format results
				source: function(req, add)
				{
					//pass request to server
					$.getJSON
					(
						'/editor/lib/messages/json/users.json.php?callback=?',
						req,
						function(data)
						{
							//create array for response objects
							var suggestions = [];
							
							//process response
							$.each
							(
								data,
								function(i, val)
								{
									suggestions.push(val.username);
								}
							);
							
							//pass array to callback
							add(suggestions);
						}
					);
				}
			}
		);
		
		$('#messages').submit
		(
			function ()
			{
				var submit = true;
				
				if (submit && $('#to_user').val() == '')
				{
					alert('Zadajte nick príjemcu.');
					$('#to_user').focus();
					submit = false;
				}
				
				if (submit && $('#subject').val() == '')
				{
					alert('Zadajte predmet spávy');
					$('#subject').focus();
					submit = false;
				}
				
				if (submit)
				{
					disable_button('messages_submit');
				}
				
				return submit;
			}
		);
		
		$('#messages .reset').click
		(
			function ()
			{
				document.getElementById('messages').reset();
			}
		);
		
		$('#poll_form .item a').click
		(
			function ()
			{
				$('#poll_form #panswer_id').val($(this).attr('rel'));
				$('#poll_form').submit();
				
				return false;
			}
		);
		/*
		$('.filter input:checkbox').click
		(
			function ()
			{
				$('.filter input:checkbox').attr('checked', false);
				$(this).attr('checked', true);
			}
		);
		*/
		$('a.relBox').click
		(
			function ()
			{
				var rel = $(this).attr('rel').split('_');
				var boxId = rel['0'];
				var parent_page_id = rel['1'];
				
				$.ajax
				(
					{
						type: 'POST',
						url: '/editor/scripts/custom_scripts/pages/details/home_page/ajax/blueBox.ajax.php',
						data: 'parent_page_id=' + parent_page_id,
						success: function(req)
						{
							$('.' + boxId).html(req);
						}
					}
				);
				
				return false;
			}
		);
		
		$('a.popBox').click
		(
			function ()
			{
				var rel = $(this).attr('rel').split('_');
				var boxId = rel['0'];
				var parent_page_id = rel['1'];
				
				$.ajax
				(
					{
						type: 'POST',
						url: '/editor/scripts/custom_scripts/pages/details/home_page/ajax/popBox.ajax.php',
						data: 'parent_page_id=' + parent_page_id,
						success: function(req)
						{
							$('.' + boxId).html(req);
						}
					}
				);
				
				return false;
			}
		);
		
		$('#motto').keypress
		(
			function ()
			{
				if ($(this).val().length > '150')
				{
					$(this).val($(this).val().substring(0, 150));
				}
			}
		);
		
		$('.deleteFriend').click
		(
			function ()
			{
				return confirm('Naozaj chcete zrušiť priateľstvo?');
			}
		);
		
		$('#onlineFriends').click
		(
			function ()
			{
				$('#onlineFriendsForm').submit();
			}
		);
		
		$('#registration_form').submit
		(
			function ()
			{
				var submit = true;
				
				if ($('#regsource').val() == 'eshop')
				{
					$('#username').val($('#e_mail').val());
				}
				
				if (submit && $('#username').val() == '')
				{
					alert('Zadajte svoje prihlasovacie meno');
					$('#username').focus();
					submit = false;
				}
				
				if (submit && $('#password').val() == '')
				{
					alert('Zadajte heslo');
					$('#password').focus();
					submit = false;
				}
				
				if (submit && $('#password_again').val() == '')
				{
					alert('Zadajte heslo znovu');
					$('#password_again').focus();
					submit = false;
				}
				
				if
				(
					submit
					&& $('#password').val() != ''
					&& $('#password').val() != $('#password_again').val()
				)
				{
					alert('Zadané heslá nie sú rovnaké');
					$('#password').focus();
					submit = false;
				}
				
				if (submit && $('#e_mail').val() == '')
				{
					alert('Zadajte svoju e-mailovú adresu');
					$('#e_mail').focus();
					submit = false;
				}
				
				if (submit && !checkEmailAddress($('#e_mail').val()))
				{
					alert('Zadaná e-mailová adresa nemá správny formát');
					$('#e_mail').focus();
					submit = false;
				}
				
				if (submit && $('#rules_agree').attr('checked') == false)
				{
					alert('Musíte súhlasiť s pravidlami.');
					$('#rules_agree').focus();
					submit = false;
				}
				
				return submit;
			}
		);
		
		$('#contact_form').submit
		(
			function ()
			{
				var submit = true;
				
				if (submit && $('#meno').val() == '')
				{
					alert('Prosím vyplňte svoje meno!');
					$('#meno').focus();
					submit = false;
				}
				
				if (submit && $('#from_e_mail').val() == '')
				{
					alert('Prosím vyplňte svoj e-mail!');
					$('#from_e_mail').focus();
					submit = false;
				}
				
				if (submit && !checkEmailAddress($('#from_e_mail').val()))
				{
					alert('Prosím skontrolujte zadanú e-mailovú adresu.');
					$('#from_e_mail').focus();
					submit = false;
				}
				
				if (submit)
				{
					disable_button('contact_submit');
				}
				
				return submit;
			}
		);
		
		$('#basketStep2').submit
		(
			function ()
			{
				var submit = true;
				var radio_b = true;
				
				$('input:radio').each
				(
					function ()
					{
						if ($('input[name=' + $(this).attr('name') + ']:checked').length == '0')
						{
							radio_b = false;
						}
					}
				);
				
				if (submit == true && radio_b == false)
				{
					alert('Vyberte spôsob dopravy a spôsob platby.');
					submit = false;
				}
				
				if (submit == true)
				{
					disable_button('basketStep2_submit');
				}
				
				return submit;
			}
		);
		
		$('#basketStep3').submit
		(
			function ()
			{
				var submit = true;
				
				if (submit && $('#dod_first_name').val() == '')
				{
					alert('Prosím vyplňte svoje meno!');
					$('#dod_first_name').focus();
					submit = false;
				}
				
				if (submit && $('#dod_surname').val() == '')
				{
					alert('Prosím vyplňte svoje priezvisko!');
					$('#dod_surname').focus();
					submit = false;
				}
				
				if (submit && $('#dod_e_mail').val() == '')
				{
					alert('Prosím vyplňte svoje e-mail!');
					$('#dod_e_mail').focus();
					submit = false;
				}
				
				if (submit && !checkEmailAddress($('#dod_e_mail').val()))
				{
					alert('Prosím skontrolujte zadanú e-mailovú adresu.');
					$('#dod_e_mail').focus();
					submit = false;
				}
				
				if (submit && $('#dod_ulica').val() == '')
				{
					alert('Prosím vyplňte ulicu bydliska!');
					$('#dod_ulica').focus();
					submit = false;
				}
				
				if (submit && $('#dod_mesto').val() == '')
				{
					alert('Prosím vyplňte mesto bydliska!');
					$('#dod_mesto').focus();
					submit = false;
				}
				
				if (submit && $('#dod_psc').val() == '')
				{
					alert('Prosím vyplňte PSČ bydliska!');
					$('#dod_psc').focus();
					submit = false;
				}
				
				if (submit == true)
				{
					disable_button('basketStep3_submit');
				}
				
				return submit;
			}
		);
		/*
		$('.redaktorDetail').hover
		(
			function ()
			{
				$(this).find('.accountUpdate').fadeIn();
			},
			function ()
			{
				$(this).find('.accountUpdate').fadeOut();
			}
		);
		*/
		$('#guestbook').submit
		(
			function ()
			{
				var submit = true;
				
				if (submit && $('#name').val() == '')
				{
					alert('Zadajte svoje meno');
					$('#name').focus();
					submit = false;
				}
				
				if (submit && $('#subject').val() == '')
				{
					alert('Zadajte predmet spávy');
					$('#subject').focus();
					submit = false;
				}
				
				if (submit && $('#message').val() == '')
				{
					alert('Zadajte text spávy');
					$('#message').focus();
					submit = false;
				}
				
				if (submit && $('#tmp_captcha_code').val() == '')
				{
					alert('Prepíšte text z obrázku do poľa!');
					$('#tmp_captcha_code').focus();
					submit = false;
				}
				
				return submit;
			}
		);
		
		$('.wtools .rss').hover
		(
			function()
			{
				$('ul:first', this).css('visibility', 'visible'); 
			},
			function()
			{
				$('ul:first', this).css('visibility', 'hidden'); 
			}
		);
		
		$('.addr1 span').click
		(
			function ()
			{
				if ($('#addr1').hasClass('hidden'))
				{
					$('#addr1').removeClass('hidden');
				}
				else
				{
					$('#addr1').addClass('hidden');
				}
			}
		);
		
		$('#summaryForm').submit
		(
			function ()
			{
				var submit = true;
				
				if ($('#summaryForm #rulesAgree').attr('checked') == false)
				{
					alert('Pre dokočenie objednávky musíte potvrdiť, že súhlasíte so všeobecnými obchodnými podmienkami.');
					$('#summaryForm #rulesAgree').focus();
					submit = false;
				}
				
				return submit;
			}
		);
		
		$('input[name="typ_dopravy"]:radio').click
		(
			function ()
			{
				$('input[name="tmp_follow_page"]').val('/317');
				
				$('#basketForm').submit();
			}
		);
	}
);

function disable_button(button_id)
{
	$('#' + button_id).attr('disabled', 'disabled');
	$('#' + button_id).val('Čakajte prosím');
}

function checkEmailAddress(email)
{
	var re = /^([\w-\.]+@([\w-]+\.)+[\w-]{2,4})?$/;
	
	if (!re.test(email))
	{
		return false;
	}
	
	return true;
}
