/* IMG preload */
jQuery.preloadImages = function()
{
  for( i = 0; i < arguments.length; i++ )
  {
    jQuery('<img>' ).attr('src', arguments[i] );
  }
};

var preload = new Array();

/* sIFR initialization */
var ffont = { src: 'http://static.cognito.cz/gfx/pfsquaresanspromedium.swf',ratios: [7,1.32,11,1.31,13,1.24,14,1.25,19,1.23,27,1.2,34,1.19,42,1.18,47,1.17,48,1.18,69,1.17,74,1.16,75,1.17,1.16] };
sIFR.delayCSS  = true;
sIFR.activate(ffont);


var externalLinks = {
  config:
  {
    externalClass: 'link external',
    titleAppend:   ' [odkaz na jiný web]'
  },
  init: function()
  {
    $('.mainColumn a[href^="http"]:not([href*='+window.location.host+']):not([class*=web])').each(
      function()
      {
        $(this).addClass(externalLinks.config.externalClass ).attr('title', $(this).attr('title') + externalLinks.config.titleAppend );
      }
    );
  }
};


/* on DOM ready */
$(document).ready(function()
{

  jQuery.easing.def = 'easeOutCubic';

  $(function() {
    $('#gallery a').lightBox({fixedNavigation:false });
  });

  if ( $.browser.msie && jQuery.browser.version <= 6 )
  {
    $.preloadImages(
      '/gfx/menu-hover-ie6.png',
      '/gfx/submenu-hover-ie6.png'
    );
  }
  else
  {
    $.preloadImages(
      '/gfx/menu-hover.png',
      '/gfx/submenu-hover.png'
    );
  }

  externalLinks.init();

  var colors = new Array();
  colors[1] = '#4d6164';
  colors[2] = '#c2dcee';
  colors[3] = '#ffffff';
  colors[4] = '#ffd204';
  colors[5] = '#a68d19';
  colors[6] = '#7e8f9b';

  var fonts = new Array();
  fonts[1] = '29px';
  fonts[2] = '18px';
  fonts[3] = '16px';
  fonts[4] = '20px';

  /* sIFR replace */
  sIFR.replace(ffont,
  {
    selector: '.solutions .sifr',
    css:
      [
      '.sIFR-root { font-size: '+fonts[2]+'; color: '+colors[1]+'; }',
      'a { color: '+colors[1]+'; text-decoration: none; }',
      'a:link { color: '+colors[1]+'; }',
      'a:visited { color: '+colors[1]+'; }',
      'a:hover { color: '+colors[5]+'; }',
      'a:focus { color: '+colors[5]+'; }',
      'a:active { color: '+colors[5]+'; }'
      ],
    wmode: 'transparent',
    fitExactly: true
  });

  sIFR.replace(ffont,
  {
    selector: '.sideColumn .confession .sifr',
    css:
      [
      '.sIFR-root { font-size: '+fonts[2]+'; color: '+colors[4]+'; }'
      ],
    wmode: 'transparent'
  });

  sIFR.replace(ffont,
  {
    selector: '.selectedJobs .sifr',
    css:
      [
      '.sIFR-root { font-size: '+fonts[3]+'; color: '+colors[2]+'; }'
      ],
    wmode: 'transparent'
  });

  sIFR.replace(ffont,
  {
    selector: '.article .sifr, .sideColumn .author .sifr',
    css:
      [
      '.sIFR-root { font-size: '+fonts[2]+'; color: '+colors[3]+'; }',
      'a { color: '+colors[3]+'; text-decoration: none; }',
      'a:link { color: '+colors[3]+'; }',
      'a:visited { color: '+colors[3]+'; }',
      'a:hover { color: '+colors[4]+'; }',
      'a:focus { color: '+colors[4]+'; }',
      'a:active { color: '+colors[4]+'; }'
      ],
    wmode: 'transparent',
    fitExactly: true
  });

  sIFR.replace(ffont,
  {
    selector: '.reference .sifr, .card .sifr',
    css:
      [
      '.sIFR-root { font-size: '+fonts[1]+'; color: '+colors[3]+'; }',
      'a { color: '+colors[3]+'; text-decoration: none; }',
      'a:link { color: '+colors[3]+'; }',
      'a:visited { color: '+colors[3]+'; }',
      'a:hover { color: '+colors[4]+'; }',
      'a:focus { color: '+colors[4]+'; }',
      'a:active { color: '+colors[4]+'; }'
      ],
    wmode: 'transparent',
    fitExactly: true
  });

  sIFR.replace(ffont,
  {
    selector: '.career .sifr',
    css:
      [
      '.sIFR-root { font-size: '+fonts[1]+'; color: '+colors[1]+'; }'
      ],
    wmode: 'transparent'
  });

  sIFR.replace(ffont,
  {
    selector: '.groundB .sifr',
    css:
      [
      '.sIFR-root { font-size: '+fonts[4]+'; color: '+colors[6]+'; }'
      ],
    wmode: 'transparent'
  });

  sIFR.replace(ffont,
  {
    selector: '.sideColumn .sifr',
    css:
      [
      '.sIFR-root { font-size: '+fonts[2]+'; color: '+colors[2]+'; }'
      ],
    wmode: 'transparent'
  });

  sIFR.replace(ffont,
  {
    selector: '.sifr',
    css:
      [
      '.sIFR-root { font-size: '+fonts[1]+'; color: '+colors[1]+'; }'
      ],
    wmode: 'transparent'
  });

  /* Top references scroll */
  $('#scrollArea').after('<span id="scrollLeft" class="scroll"><a href="#"><!-- --></a></span><span id="scrollRight" class="scroll"><a href="#"><!-- --></a></span>');

  var marginLeft = 0;
  var maxMarginLeft;
  var topRefWidth = parseInt($('#scrollArea').css('width'));

  $('div#topReferences').addClass('enabledJS');

  $('#scrollRight a').hover(
    function ()
    {
      $(this).parent().parent().parent().parent().addClass('hoverRight');
    },
    function ()
    {
      $(this).parent().parent().parent().parent().removeClass('hoverRight');
    }
  );

  $('#scrollLeft a').hover(
    function ()
    {
      $(this).parent().parent().parent().parent().addClass('hoverLeft');
    },
    function ()
    {
      $(this).parent().parent().parent().parent().removeClass('hoverLeft');
    }
  );

  $('#scrollRight a').click(
    function()
    {

      if (  marginLeft > maxMarginLeft )
      {
        marginLeft -= topRefWidth;
        $('a.refLink' ).removeClass('selected');
        $('a.refLink:eq('+marginLeft/-topRefWidth+')').addClass('selected');
        $('.references').animate({marginLeft: marginLeft }, 2000);
        $('#scrollRight').removeClass('hidden');
      }

      if (  marginLeft <= maxMarginLeft )
      {
        $('#scrollRight a').addClass('hidden');
      }

      if (  marginLeft < 0 )
      {
        $('#scrollLeft a').removeClass('hidden');
      }

      return false;

    }
  );

  $('#scrollLeft a').click(
    function()
    {

      if (  marginLeft < 0 )
      {
        marginLeft += topRefWidth;
        $('a.refLink' ).removeClass('selected');
        $('a.refLink:eq('+marginLeft/-topRefWidth+')').addClass('selected');
        $('.references').animate({marginLeft: marginLeft }, 2000);
      }

      if (  marginLeft >= 0 )
      {
        $('#scrollLeft a').addClass('hidden');
      }

      if (  marginLeft > maxMarginLeft )
      {
        $('#scrollRight a').removeClass('hidden');
      }

      return false;

    }
  );

  if (  marginLeft >= 0 )
  {
    $('#scrollLeft a').addClass('hidden');
  }

  $('a.refLink').each (
    function(i)
    {
      $(this).click(
        function()
        {

          marginLeft = ( -topRefWidth * i );
          $('a.refLink' ).removeClass('selected');
          $(this).addClass('selected' );
          $('.references').animate({marginLeft: (marginLeft) }, 2000);

          if (  marginLeft <= maxMarginLeft )
          {
            $('#scrollRight a').addClass('hidden');
          }
          else
          {
            $('#scrollRight a').removeClass('hidden');
          }

          if (  marginLeft >= 0 )
          {
            $('#scrollLeft a').addClass('hidden');
          }
          else
          {
            $('#scrollLeft a').removeClass('hidden');
          }

          return false;

        }
      );
      marginLeft = 0;
      maxMarginLeft = ( -topRefWidth * i );
    }
  );

  /* focus events */
  $('#fulltext-string, #search-string, #newsletter-email, #message-name, #message-email, #message-text').focus(
    function()
    {
      var itemID = $(this).attr('id');

      if ( formValues[itemID] == null || $(this).val() == formValues[itemID] )
      {
        formValues[itemID] = $(this).val();
        $(this).val('');
      }
    }
  );
  /* onblur events */
  $('#fulltext-string, #search-string, #newsletter-email, #message-name, #message-email, #message-text').blur(
    function()
    {
      if( $(this).val() == '' )
      {
        $(this).val(formValues[$(this).attr('id')]);
      }
    }
  );

  $('#routeContact').hide();

  $('#route').hover(
    function ()
    {
      $('#routeContact').fadeIn(800);
    },
    function ()
    {
      $('#routeContact').fadeOut(800);
    }
  );


  if ( preload )
  {
    for( i = 0; i < preload.length; i++ )
    {
      $('#ref'+(i+2)+' .image ' ).append( '<a href="'+preload[i]['link']+'" title="'+preload[i]['title']+'"><img src="'+preload[i]['path']+'" alt="'+preload[i]['alt']+'" /></a>');
    }
  }

});

var formValues = new Array();

/* loadAjax */
function loadAjax(selected) {
	$.get("/ajax/",{q:"workList",cat: selected}, function(data){
			$("div#workList").html(data);
        });     
        $.get("/ajax/",{q:"reference"}, function(data){
			$("div#reference").html(data);
        });
        return false;   
}

