var prokat = {

//	static: false,

	carousel_page: 3,
	
	carousel_stop_asking: false,
	
	carousel: null,

	choose_tag: function( text )
	{
		if ( $('tcustom') )
		{
			if ( $('tcustom').value == '' )
			{
				$('tcustom').value = text;
			}
			else
			{
				$('tcustom').value += ' ' + text;
			}
		}
	},
	
	choose_region: function( text )
	{
		if ( $('rcustom') )
		{
			if ( $('rcustom').value == '' )
			{
				$('rcustom').value = text;
			}
			else
			{
				$('rcustom').value += ' ' + text;
			}
		}
	},
	
	signin_show: function( )
	{
		if ( $('popup_login') && $('shadow_background') && $('container') )
		{
			var container_position = $('container').positionedOffset();
			$('popup_login').setStyle({ 'left': (container_position[0] + 450 ) + 'px' });

			$('shadow_background').setStyle({ opacity: 0.5 });

			$('shadow_background').show();
			$('popup_login').show();

		}
		return true;
	},
	contact_owner_show: function( )
	{
		if ( $('popup_contact_owner') && $('shadow_background') && $('container') )
		{
			var container_position = $('container').positionedOffset();
			
			$('popup_contact_owner').setStyle({ 'left': (container_position[0] + 210 ) + 'px' });

			$('shadow_background').setStyle({ opacity: 0.5 });

			$('shadow_background').show();
			
			$('popup_contact_name').value = '';
			$('popup_contact_email').value = '';
			$('popup_contact_text').value = '';
			
			$('popup_contact_content').show();
			$('popup_contact_success').hide();
			$('popup_contact_name').removeClassName('error');
			$('popup_contact_name_error').hide();
			$('popup_contact_email').removeClassName('error');
			$('popup_contact_email_error').hide();
			$('popup_contact_text').removeClassName('error');
			$('popup_contact_text_error').hide();
			
			$('popup_contact_owner').show();

		}
		return true;
	},
	map_show: function( )
	{
		if ( $('popup_map') && $('shadow_background') && $('container') )
		{
			var container_position = $('container').positionedOffset();
			$('popup_map').setStyle({ 'left': (container_position[0] + 210 ) + 'px' });

			$('shadow_background').setStyle({ opacity: 0.5 });

			$('shadow_background').show();
			$('popup_map').show();

		}
		return true;
	},
	popup_close: function( popup_id )
	{
		if ( $( popup_id ) && $('shadow_background') )
		{
			$('shadow_background').hide();
			$( popup_id ).hide();
		}
		return true;
	},
	popup_close_all: function( )
	{
		if ( $( 'popup_map' ) && $('popup_map').hide() );
		if ( $( 'popup_contact_owner' ) && $('popup_contact_owner').hide() );
		if ( $( 'popup_login' ) && $('popup_login').hide() );

		$('shadow_background').hide();

		return true;
	},
	signin: function()
	{
		if ( $('popup_login') )
		{
			var error = false;
			
			if ( $('popup_login_email').value == '' )
			{
				$('popup_login_email').addClassName('error');
				error = true;
			}
			else
			{
				$('popup_login_email').removeClassName('error');
			}
			
			if ( $('popup_login_password').value == '' )
			{
				$('popup_login_password').addClassName('error');
				error = true;
			}
			else
			{
				$('popup_login_password').removeClassName('error');
			}
			
			if ( !error )
			{
				var url = '/ajax/';//?' + SID;
		
				var params = new Hash();
				
				params.set('form', 'signin');
				params.set('email', $('popup_login_email').value);
				params.set('password', $('popup_login_password').value);
				
				new Ajax.Request( url,
				{
					method: 'post',
					parameters: params,
					onSuccess: function( transport )
					{
						if ( transport.responseText.isJSON() )
						{
							json = transport.responseText.evalJSON( true );
							
							if ( json == 'true' )
							{
								if ( !window.location.reload())
								{
									window.location.href = window.location.href;
								}
							}
							else
							{
								if ( json == 'error_auth' )
								{
									$('popup_login_email').addClassName('error');
									$('popup_login_password').addClassName('error');
									$('popup_login_error_auth').show();
								}
							}
						}
					}
				} );
			}
		}
	},
	
	contact_owner: function()
	{
		if ( $('popup_contact_name') && $('popup_contact_email') && $('popup_contact_text') && $('popup_contact_item_id') )
		{
			var url = '/ajax/';//?' + SID;
	
			var params = new Hash();
			
			params.set('form', 'contact_owner');
			params.set('contact_name', $('popup_contact_name').value);
			params.set('contact_email', $('popup_contact_email').value);
			params.set('contact_text', $('popup_contact_text').value);
			params.set('contact_item_id', $('popup_contact_item_id').value);
	
			new Ajax.Request( url,
			{
				method: 'post',
				parameters: params,
				onSuccess: function( transport )
				{
					if ( transport.responseText.isJSON() )
					{
						json = transport.responseText.evalJSON( true );
	
						if ( json )
						{
							if ( json.result == true )
							{
								$('popup_contact_content').hide();
								$('popup_contact_success').show();
							}
							else if( json.error )
							{
								if ( json.error.name )
								{
									$('popup_contact_name').addClassName('error');
									$('popup_contact_name_error').show();
								}
								else
								{
									$('popup_contact_name').removeClassName('error');
									$('popup_contact_name_error').hide();
								}
								
								if ( json.error.email )
								{
									$('popup_contact_email').addClassName('error');
									$('popup_contact_email_error').show();
								}
								else
								{
									$('popup_contact_email').removeClassName('error');
									$('popup_contact_email_error').hide();
								}

								if ( json.error.text )
								{
									$('popup_contact_text').addClassName('error');
									$('popup_contact_text_error').show();
								}
								else
								{
									$('popup_contact_text').removeClassName('error');
									$('popup_contact_text_error').hide();
								}
							}
						}
					}				
				} 
			} );
		}
	},
	
	hide_element: function( element_id)
	{
		if ( $( element_id ) )
		{
			$(element_id).hide();
		}
	},
	
	change_whatsup: function( )
	{
		if ( $('whatsup_contents') )
		{
			var found = false;
			var done = false;

			$A($$('#whatsup_contents p')).each(
			
			  function(item)
			  {
			  	if ( !item.visible() && found && !done )
			  	{
			  		item.show();
			  		done = true;
			  	}

			  	if ( item.visible() && !done )
			  	{
			  	found = true;
				  	item.hide();
			  	}			  	
			  }
			);
			
			if( !done && $('whatsup_content_1') ) 
			{
				$('whatsup_content_1').show();
			}
		}
	},
	
	submit_form: function( form_id )
	{
		if ( $(form_id) )
		{
			$(form_id).submit();
		}
	},
	
	update_carousel_items: function( carousel, position )
	{
		if ( prokat.carousel_stop_asking )
		{
			return false;
		}
		
		var url = '/ajax/';
	
		var params = new Hash();
		
		params.set('page', prokat.carousel_page );
		params.set('form', 'carousel_items' );

		new Ajax.Request( url,
		{
			method: 'post',
			parameters: params,
			onSuccess: function( transport )
			{
				if ( transport.responseText )
				{
					var count = $('carousel_items').childElements().size();
					
					if ( position == 'top' )
					{
						$('carousel_items').insert( { 'top' : transport.responseText } );
					}
					else
					{
						$('carousel_items').insert( transport.responseText );
					}

					var new_items = $('carousel_items').childElements().size() - count;
					
					if ( ( new_items > 0 ) && ( position == 'top' ) )
					{
						prokat.carousel_page++;
					
						var new_left = $('carousel_items').getStyle('left').gsub('px', '') - ( new_items * 166 );

						$('carousel_items').setStyle({ 'left' : new_left });
					}
					else
					{
						prokat.carousel_stop_asking = true;
					}

					Event.stopObserving( 'carousel' );
					Event.stopObserving( 'carousel_previous_button' );
					Event.stopObserving( 'carousel_next_button' );

					new UI.Carousel('carousel').observe('scroll:ended', function(event) { prokat.carousel_scrolled( event ); });
				}
				else
				{
					prokat.carousel_stop_asking = true;
				}
			}
		} );		
	},
	
	carousel_scrolled: function( event )
	{
		if ( event && event.memo && event.memo.carousel )
		{
			if ( event.memo.carousel.currentIndex() < 4 )
			{
				// update left part
				prokat.update_carousel_items( event.memo.carousel, 'top' );
			}
			else if ( event.memo.carousel.currentIndex() >= ( event.memo.carousel.elements.size() - 6 ) )
			{
				// update right part
				prokat.update_carousel_items( event.memo.carousel, 'bottom' );
			}
		}
	},
	
	switch_region_cats: function( selected )
	{
		if ( selected == 'global' )
		{
			$('global_categories_link').addClassName('active');
			
			$('region_categories_link').removeClassName('active');
			$('region_categories_link').addClassName('dashed');
			
			$('global_categories').show();
			
			$('region_categories').hide();
		}
		else if( selected == 'region' )
		{
			$('region_categories_link').addClassName('active');
			
			$('global_categories_link').removeClassName('active');
			$('global_categories_link').addClassName('dashed');
			
			$('global_categories').hide();
			
			$('region_categories').show();
		}
		else if ( selected == 'globalsub' )
		{
			$('global_subcategories_link').addClassName('active');
			
			$('region_subcategories_link').removeClassName('active');
			$('region_subcategories_link').addClassName('dashed');
			
			$('global_subcategories').show();
			
			$('region_subcategories').hide();
		}
		else if( selected == 'regionsub' )
		{
			$('region_subcategories_link').addClassName('active');
			
			$('global_subcategories_link').removeClassName('active');
			$('global_subcategories_link').addClassName('dashed');
			
			$('global_subcategories').hide();
			
			$('region_subcategories').show();
		}
		
		return false;
	},
	
	hide_new_user_notification: function()
	{
		$('first_time').hide();
		
		var url = '/ajax/';//?' + SID;
	
		var params = new Hash();
		
		params.set('form', 'user_is_known');
		
		new Ajax.Request( url,
		{
			method: 'post',
			parameters: params
		} );	
	},

	hide_alternate_country_notification: function()
	{
		$('wrong_country').hide();
		
		var url = '/ajax/';//?' + SID;
	
		var params = new Hash();
		
		params.set('form', 'hide_alternate_country_notification');
		
		new Ajax.Request( url,
		{
			method: 'post',
			parameters: params
		} );	
	},
	
	hide_common_warning: function()
	{
		$('common_warning').hide();
		
		var url = '/ajax/';//?' + SID;
	
		var params = new Hash();
		
		params.set('form', 'hide_common_warning');
		
		new Ajax.Request( url,
		{
			method: 'post',
			parameters: params
		} );	
	},

	hide_common_notification: function( id )
	{
		$( id ).hide();
		
		var url = '/ajax/';//?' + SID;
	
		var params = new Hash();
		
		params.set( 'form', id );
		
		new Ajax.Request( url,
		{
			method: 'post',
			parameters: params
		} );	
	}	
}