/**************************************
*
*	Header Dropdown menu
*
**************************************/

var hideMainCategoryLinkTimer = null;

function onMainCategoryLinkOver( main_category_id ) {
	var mainCategoryLinks = $( '.main_category_link' );
	for( var i = 0; i < mainCategoryLinks.length; i++ ) {
		if( mainCategoryLinks[ i ].getAttribute( 'id' ) != 'list_' + main_category_id ) {
			$( '#category_' + mainCategoryLinks[ i ].getAttribute( 'id' ) ).fadeOut();
		}
	}
	$( '#category_list_' + main_category_id ).fadeIn( 200 );
	clearTimeout( hideMainCategoryLinkTimer );
}

function onMainCategoryLinkOut( main_category_id ) {
	hideMainCategoryLinkTimer = setTimeout( "hideMainCategoryLink( " + main_category_id + " )", 200 )
}

function hideMainCategoryLink( main_category_id ) {
	$( '#category_list_' + main_category_id ).fadeOut( 200 );
}


/**************************************
*
*	Content Block Diaporama
*
**************************************/

var currentDiaporamaPicture = 1;
function startContentDiaporama() {
	var currentDiaporamaPictureContainer = $( '#diaporamaPic1' ).css( 'display' ) != 'none' ? 1 : 2;
	$( '#diaporamaPic' + currentDiaporamaPictureContainer ).fadeOut( 250, function() {
		$( '#diaporamaPic' + ( currentDiaporamaPictureContainer == 1 ? 2 : 1 ) ).fadeIn( 250, function() {
			currentDiaporamaPicture += 1;
			if( currentDiaporamaPicture >= diaporamaPictures.length ) {
				currentDiaporamaPicture = 0;
			}
			var img = new Image();
			$( img ).load( function() {
				$( '#diaporamaPic' + currentDiaporamaPictureContainer ).attr( 'src', $( img ).attr( 'src' ) );
				$( '#diaporamaPic' + currentDiaporamaPictureContainer ).attr( 'alt', diaporamaPictures[ currentDiaporamaPicture ].alternate_text );
				$( '#diaporamaPic' + currentDiaporamaPictureContainer ).attr( 'title', diaporamaPictures[ currentDiaporamaPicture ].picture_title );
				setTimeout( "startContentDiaporama()", 10000 );
			} );
			$( img ).attr( 'src', diaporamaPictures[ currentDiaporamaPicture ].picture_source );
		} );
	} );
}


/**************************************
*
*	Extra Content Block Diaporama
*
**************************************/

var currentExtraDiaporamaPicture = 1;
function startExtraContentDiaporama() {
	var currentExtraDiaporamaPictureContainer = $( '#extraDiaporamaPic1' ).css( 'display' ) != 'none' ? 1 : 2;
	$( '#extraDiaporamaPic' + currentExtraDiaporamaPictureContainer ).fadeOut( 250, function() {
		$( '#extraDiaporamaPic' + ( currentExtraDiaporamaPictureContainer == 1 ? 2 : 1 ) ).fadeIn( 250, function() {
			currentExtraDiaporamaPicture += 1;
			if( currentExtraDiaporamaPicture >= extraDiaporamaPictures.length ) {
				currentExtraDiaporamaPicture = 0;
			}
			var img = new Image();
			$( img ).load( function() {
				$( '#extraDiaporamaPic' + currentExtraDiaporamaPictureContainer ).attr( 'src', $( img ).attr( 'src' ) );
				$( '#extraDiaporamaPic' + currentExtraDiaporamaPictureContainer ).attr( 'alt', extraDiaporamaPictures[ currentExtraDiaporamaPicture ].alternate_text );
				$( '#extraDiaporamaPic' + currentExtraDiaporamaPictureContainer ).attr( 'title', extraDiaporamaPictures[ currentExtraDiaporamaPicture ].picture_title );
				$( '#extraDiaporamaPic' + currentExtraDiaporamaPictureContainer ).css( 'height', extraDiaporamaPictures[ currentExtraDiaporamaPicture ].picture_height + 'px' );
				setTimeout( "startExtraContentDiaporama()", 10000 );
			} );
			$( img ).attr( 'src', extraDiaporamaPictures[ currentExtraDiaporamaPicture ].picture_source );
		} );
	} );
}


/**************************************
*
*	Section Navigation
*
**************************************/

var currentSectionId = 0;
function sectionNavigation( id ) {
	if( id != currentSectionId ) {
		$( '#section_' + currentSectionId ).hide();
		
		if( id == 'next' ) {
			currentSectionId += 1;
		} else if( id == 'previous' ) {
			currentSectionId -= 1;
		} else if( id != null ) {
			currentSectionId = id;
		}
		
		$( '#section_' + currentSectionId ).show();
		
		if( currentSectionId + 1 == sectionCount ) {
			$( '#section_next' ).hide();
		} else {
			$( '#section_next' ).show();
		}
		if( currentSectionId != 0 ) {
			$( '#section_previous' ).show();
		} else {
			$( '#section_previous' ).hide();
		}
	}
}


/**************************************
*
*	Small side story image dynamic display
*
**************************************/

function displaySmallSideStoryImage( id, src ) {
	
	/* Hide thumbnail */
	$( '#small_side_picture_plus_' + id ).fadeOut( 500 );
	$( '#small_side_picture_thumb_' + id ).slideUp( 500, function() {
		
		/* Display image container */
		$( '#small_side_picture_image_container_' + id ).toggle( 1, function() {
			
			/* Stretch it to final size and add border */
			$( '#small_side_picture_image_container_' + id ).animate( { width: "720px" }, 500, "linear", function() {
				$( '#small_side_picture_image_container_' + id ).css( { border: "1px solid #ff3700" }, 500 );
				$( '#small_side_picture_image_container_' + id ).css( { "margin" : "0 0 10px 0" }, 500 );
					$( '#small_side_picture_image_container_' + id ).animate( { height: "310px" }, 500, "linear", function() {
					$( '#small_side_picture_image_loader_' + id ).fadeIn( 200 );
					
					/* Loading image */
					var img = new Image();
					$( img ).load( function() {
						
						/* hide loading picture */
						$( '#small_side_picture_image_loader_' + id ).fadeOut( 1500, function() {
							
							/* Display image and set it clickable */
							//$( '#small_side_picture_image_' + id ).attr( 'src', $( img ).attr( 'src' ) );
							$( '#small_side_picture_image_' + id ).css( { 'background': 'url( "' + $( img ).attr( 'src' ) + '" ) top left no-repeat' } );
							$( '#small_side_picture_image_' + id ).fadeIn( 500, function() {
								$( '#small_side_picture_image_container_' + id ).css( { "cursor": "pointer" } );
								$( '#small_side_picture_image_' + id ).click( function() {
									
									/* Hide image and reduce its border */
									$( '#small_side_picture_image_' + id ).fadeOut( 500, function() {
										$( '#small_side_picture_image_container_' + id ).css( { "margin" : "0" }, 100 );
										$( '#small_side_picture_image_container_' + id ).animate( { height: "0" }, 500, "linear", function() {
											$( '#small_side_picture_image_container_' + id ).css( { "border-width": "0 0 1px 0" } );
											$( '#small_side_picture_image_container_' + id ).animate( { width: "230px" }, 500, function() {
												$( '#small_side_picture_image_container_' + id ).css( { "cursor": "default" } );
												$( '#small_side_picture_image_container_' + id ).hide( 1, function() {
													
													/* Display thumbnail */
													$( '#small_side_picture_thumb_' + id ).slideDown( 500 );
													$( '#small_side_picture_plus_' + id ).fadeIn( 500 );
												} );
											} );
										} );
									} );
								} );
							} );
						} );
					} );
					$( img ).attr( 'src', src );
				} );
			} );
		} );
	} );
}


/**************************************
*
*	Sidebar Diaporama
*
**************************************/

var currentPicture = 0;
function switchPicture() {
	$( "#picture" + currentPicture ).fadeOut( 250, function() {
		currentPicture += 1;
		if( currentPicture == pictureCount ) {
			currentPicture = 0;
		}
		$( "#picture" +currentPicture ).fadeIn( 250, function() {
			setTimeout( "switchPicture()", 5000 );
		} );
	} );
}


/**************************************
*
*	Newsletter registration
*
**************************************/

function newsletterRegistration( basePath, email ) {
	$.ajax({
   type: "GET",
   url: basePath + "?nl_email=" + email,
   datas: '',
   success: newsletterRegistrationSuccess,
   error: newsletterRegistrationError
 });
}

function newsletterRegistrationSuccess( response ) {
	var result = parseResponse( response );
	if( result.error ) {
		alert( result.error );
	} else {
		alert( result.msg );
		$( '#newsletter_text' ).attr( 'value', '' );
	}
}	

function newsletterRegistrationError( response ) {
	alert( 'Internal error, please try again in few minutes...' );
}

function parseResponse( response ) {
	var results = response.split( new RegExp( "&amp;" , "g" ) );
	var values = new Array();
	
	for( var i=0 ; i < results.length ; i++ ) {
		var keyval = results[ i ].split( new RegExp( "=" , "g" ) );
		values[ keyval[ 0 ] ] = keyval[ 1 ];
	}
	
	return values;
}


/**************************************
*
*	SiteMap
*
**************************************/

var gCurrentCategory = null;
var gCurrentMainCategory = null;
function onCategoryOver( id, main_id ) {
	if( gCurrentCategory != id ) {
		onCategoryOut();
		if( gCurrentMainCategory != main_id ) {
			if( gCurrentMainCategory != null ) {
				$( '#main_cat_img_' + gCurrentMainCategory ).show();
			}
			$( '#main_cat_img_' + main_id ).hide();
			gCurrentMainCategory = main_id;
		}
		$( '#cat_desc_' + id ).show();
		$( '#cat_img_' + id ).show();
		gCurrentCategory = id;
	}
}

function onCategoryOut() {
	if( gCurrentCategory != null ) {
		$( '#cat_desc_' + gCurrentCategory ).hide();
		$( '#cat_img_' + gCurrentCategory ).hide();
	}
	gCurrentCategory = null
}