var map = null;
var latlng = null;

function slide(elem)
{
	if( elem.parent().parent().hasClass('currentRow') ) return;
 
	var currentRow = $('div.currentRow');
	var targetedArticle = elem.parent().parent().next('div.articleContainer');
	var targetedRow = elem.parent().parent('div.row');
	var articleOpen = $('div.articleContainer.open');
	var imageTitleBarOpen = $('div.currentRow div.imageTitleBar');
	var targetedImageTitleBar = elem.parent().next('div.imageTitleBar');
	var greyBarOpen = $('div.currentRow div.greyBar');
	var targetedGreyBar = elem.parent().prev('div.greyBar');
	
	imageTitleBarOpen.fadeOut( "slow" );
	targetedGreyBar.fadeTo( "slow", 0.0 );
 
 // Play and stop checkerboard
 if( targetedArticle.find( "div#index-checkerboard" ).length == 1 )
  $("div#index-checkerboard").checkerboardSlide( { "action": "play" } );
 
 if( articleOpen.find( "div#index-checkerboard" ).length == 1 )
  $("div#index-checkerboard").checkerboardSlide( { "action": "stop" } );
 
	articleOpen.slideUp( "slow", function()
 {
		articleOpen.addClass( "hidden" );
		articleOpen.removeClass( "open" );

		currentRow.removeClass( "currentRow" );
		currentRow.addClass( "row" );
		greyBarOpen.fadeTo( "slow", 0.2 );
  
		targetedRow.removeClass( "row" );
		targetedRow.addClass( "currentRow" );
  
		targetedImageTitleBar.hide();
		targetedImageTitleBar.fadeIn( "slow" );
  
  currentRow.next( "div.articleContainer" ).find( "div.image-container div.vertical-cut, div.image-container div.horizontal-lines" ).css( "display", "none" );
  
		targetedArticle.slideDown( "slow", function()
  {
   /*
    * Map.
    */
    
   if( $(this).find( "#map-canvas" ).length > 0 && map == null )
   {
    latlng = new google.maps.LatLng( 47.297132, -1.852398 );
    map = new google.maps.Map( $("#map-canvas").get(0),
    {
     "zoom": 14,
     "center": latlng,
     "mapTypeId": google.maps.MapTypeId.ROADMAP,
     "mapTypeControl": false
    } );

    var marker = new google.maps.Marker(
    {
     "map": map,
     "position": latlng
    } );
   }
   
   if( $(this).find( "div.image-container" ).length > 0 )
   {
    var imageContainer = $(this).find( "div.image-container" );
    var offset = imageContainer.offset();
    
    // Horizontal lines
    var horizontalLines = imageContainer.children( "div.horizontal-lines" );
    
    if( Math.round( Math.random() * 100 ) % 2 == 0 )
    {
     horizontalLines.css(
     {
      "display": "block",
      "left": imageContainer.width()
     } );
     horizontalLines.animate( { "left": "0px" } );
    }
    else
    {
     horizontalLines.css(
     {
      "display": "block",
      "right": imageContainer.width()
     } );
     horizontalLines.animate( { "right": "0px" } );
    }
    
    // Vertical Cut
    var verticalCut = imageContainer.children( "div.vertical-cut" );
    
    var left = parseInt( offset.left ) + parseInt( verticalCut.css( "left" ) );
    var top = parseInt( offset.top );
    
    verticalCut.css(
    {
     "background-position": "-" + left + "px -" + top + "px"
    } );
    
    if( Math.round( Math.random() * 100 ) % 2 == 0 )
    {
     verticalCut.css(
     {
      "display": "block",
      "bottom": imageContainer.height() + 1
     } );
     verticalCut.animate( { "bottom": "-1px" } );
    }
    else
    {
     verticalCut.css(
     {
      "display": "block",
      "top": imageContainer.height() + 1
     } );
     verticalCut.animate( { "top": "-1px" } );
    }
   }

			targetedArticle.addClass('open');
			targetedArticle.removeClass('hidden');
		} );
	});
}


jQuery( function()
{
 /*
  * Contact form.
  */
  
  $("form#contactForm").submit( function()
  {
   return $(this).validForm();
  } );
  
 /*
  * Checkerboard
  */
  
  // $("div#index-checkerboard").checkerboardSlide(
  // {
   // "colsWidth": [ 175, 265 ],
   // "rowsHeight": [ 110, 110, 110 ],
   // "changeTime": 1500,
   // "images":
   // [
    // "/templates/smvd/imgs/checkerboard/01.jpg",
    // "/templates/smvd/imgs/checkerboard/02.jpg",
    // "/templates/smvd/imgs/checkerboard/03.jpg",
    // "/templates/smvd/imgs/checkerboard/04.jpg",
    // "/templates/smvd/imgs/checkerboard/05.jpg",
    // "/templates/smvd/imgs/checkerboard/06.jpg",
    // "/templates/smvd/imgs/checkerboard/07.jpg"
   // ],
   // "baseZIndex": 1000,
   // "startCallback": function( checkerboard )
   // {
    // checkerboard.append( $("<div/>").addClass( "horizontal-lines" ).css( "zIndex", 1010 ) );
    // checkerboard.append( $("<div/>").addClass( "vertical-cut" ).css( "zIndex", 1010 ) );
   
    // var imageContainer = checkerboard;
    // var offset = imageContainer.offset();
    
   // // Horizontal lines
    // var horizontalLines = imageContainer.children( "div.horizontal-lines" );
    
    // if( Math.round( Math.random() * 100 ) % 2 == 0 )
    // {
     // horizontalLines.css(
     // {
      // "display": "block",
      // "left": imageContainer.width()
     // } );
     // horizontalLines.animate( { "left": "0px" } );
    // }
    // else
    // {
     // horizontalLines.css(
     // {
      // "display": "block",
      // "right": imageContainer.width()
     // } );
     // horizontalLines.animate( { "right": "0px" } );
    // }
    
   // // Vertical Cut
    // var verticalCut = imageContainer.children( "div.vertical-cut" );
    
    // var left = parseInt( offset.left ) + parseInt( verticalCut.css( "left" ) );
    // var top = parseInt( offset.top );
    
    // verticalCut.css(
    // {
     // "background-position": "-" + left + "px -" + top + "px"
    // } );
    
    // if( Math.round( Math.random() * 100 ) % 2 == 0 )
    // {
     // verticalCut.css(
     // {
      // "display": "block",
      // "bottom": imageContainer.height() + 1
     // } );
     // verticalCut.animate( { "bottom": "-1px" } );
    // }
    // else
    // {
     // verticalCut.css(
     // {
      // "display": "block",
      // "top": imageContainer.height() + 1
     // } );
     // verticalCut.animate( { "top": "-1px" } );
    // }
   // }
  // } );
  
} );
