/*
 * Project: Goldgroup Mining Inc.
 * Author: Rudy Affandi
 * Created: 07/10/2011
 * File name: functions.js
 */

// Basic settings
var companyName = 'Goldgroup Mining Inc.';

// Main navigation drop down, 3rd level settings (please enter 'yes' or 'no')
var allow_main_3rd_level = 'yes';

// Side navigation drop down, 3rd level settings (please enter 'yes' or 'no')
var allow_side_3rd_level = 'yes';

// Cufon usage in main navigation
var cufon_nav = 'yes';

// jQuery initialization and CSS settings, waiting for DOM tree to initialize
$(document).ready(function(){

   // Grab language selector from scripts alias
   $.getScript('/cc/lib/jquery/plugins/jquery.url.js',function(){
      var lang_selector = $.url.segment(0);
      // Set language information and retrieve associated content
      if (lang_selector == 'sp'){
         $('html').attr('lang', 'es');
      }
      else {
         $('html').attr('lang', 'en');
      }
   });

   // Form required fields toggle
   $('a.form_toggle').click(function(){
      $('.form_opt').slideToggle(400);
      $(this).text($(this).text() == 'Show required fields only' ? 'Show all fields' : 'Show required fields only');
      return false;
   });

   // Stylize form
   $('form#msgform input[type="text"], form#msgform h3.invert, form#msgform textarea').addClass('ui-corner-all');

   // Validate form
   if ($('#msgform').length > 0){
      $.getScript('/cc/lib/jquery/plugins/jquery.validate.min.js',function(){
         $('#msgform').validate();
         $('#msgform input:text:first').focus();
         $('#msgform button').button();
      });
   }

   // Validate form
   if ($('#rfiform').length > 0){
      $.getScript('/cc/lib/jquery/plugins/jquery.validate.min.js',function(){
        $('#rfiform').validate();
      });
   }

   // Preload images from CSS
   $.getScript('/cc/lib/jquery/plugins/preloadCssImages.jQuery_v5.js',function(){
      $.preloadCssImages();
   });

   // prettyPhoto set up
   if ($("a[rel^='prettyPhoto']").length > 0){
      $.getScript('/cc/lib/jquery/plugins/prettyphoto/jquery.prettyPhoto.js',function(){
         $("a[rel^='prettyPhoto']").prettyPhoto();
      });
   }

   // Banner slide show
   if ($('.front_image').length > 0){
      $.getScript('/cc/lib/jquery/plugins/jquery.cycle.all.min.js',function(){
         $('.front_image').cycle({
            fx: 'fade',
            speed: 'slow',
            containerResize: false,
            slideResize: false,
            fit: 1,
            timeout: 5000
         });
      });
   }

   // Photo gallery settings (Grid format)
    $('.image_grid_format ul li a[href*="_sm"]').each(function(){
       var image_grid_path = $(this).attr('href').replace('_sm', '');
       $(this).attr('href', image_grid_path);
   });

   // Increase font size of first letter

   // Original script, does not contain exceptions
   var page_title = $('.content_header h2').text().split(' ');
   var html = '';
   var path = $(location).attr('href');
   var filename = path.match(/.*\/([^/]+)\.([^?]+)/i)[1];
   filename = filename.toLowerCase();

   if (filename == 'san_jose_gracia')
   {
      $('.content_header h2:first').html('<span class="cap">S</span>an <span class="cap">J</span>osé de <span class="cap">G</span>racia</span>');
   } else {
      $.each(page_title, function() {
         html += '<span class="cap">'+this.substring(0,1)+'</span>'+this.substring(1) + ' ';
      });
      $('.content_header h2:first').html(html);
   }

   // Front map interaction
   $('.front_map area').each(function(){
      $('.front_map area.cc').hover(
         function(){
            $('.front_map_overlay').css({
               'background': 'url("/i/common_2011/front_map_sprite.gif") no-repeat 0 0'
            });
         },
         function() {
            $('.front_map_overlay').css('background', 'none');
         }
      );
      $('.front_map area.sj').hover(
         function(){
            $('.front_map_overlay').css({
               'background': 'url("/i/common_2011/front_map_sprite.gif") no-repeat -524px 0'
            });
         },
         function() {
            $('.front_map_overlay').css('background', 'none');
         }
      );

      $('.front_map area.cb').hover(
         function(){
            $('.front_map_overlay').css({
               'background': 'url("/i/common_2011/front_map_sprite.gif") no-repeat -1048px 0'
            });
         },
         function() {
            $('.front_map_overlay').css('background', 'none');
         }
      );
      return false;
   });

   // Projects map interaction
   $('.prj_map area').each(function(){
      $('.prj_map area.cc').hover(
         function(){
            $('.prj_map_overlay').css({'background': 'url("/i/common_2011/prj_map_sprite2.gif") no-repeat right 0'});
         },
         function() {
            $('.prj_map_overlay').css('background', 'none');
         }
      );
      $('.prj_map area.sj').hover(
         function(){
            $('.prj_map_overlay').css({'background': 'url("/i/common_2011/prj_map_sprite2.gif") no-repeat right -290px'});
         },
         function() {
            $('.prj_map_overlay').css('background', 'none');
         }
      );

      $('.prj_map area.ec').hover(
         function(){
            $('.prj_map_overlay').css({'background': 'url("/i/common_2011/prj_map_sprite2.gif") no-repeat right -580px'});
         },
         function() {
            $('.prj_map_overlay').css('background', 'none');
         }
      );

      $('.prj_map area.cb').hover(
         function(){
            $('.prj_map_overlay').css({'background': 'url("/i/common_2011/prj_map_sprite2.gif") no-repeat right -870px'});
         },
         function() {
            $('.front_map_overlay').css('background', 'none');
         }
      );
      return false;
   });

   // Add unique ID to prj_nav
   $('.prj_nav ul li').each(function(index, element){
      $(element).attr('id', 'prj'+index);
   });

   // Add ID for each of the presentation navigation
   $('.ppt_nav ul li').each(function(index, element){
      $(element).attr('id', 'ppt'+index);
   });

   // Add ID for each of the technical data navigation
   $('.data_nav ul li').each(function(index, element){
      $(element).attr('id', 'data'+index);
   });

   // Add ID for each of the front feature boxes navigation
   $('.front_featboxes ul li').each(function(index, element){
      $(element).attr('id', 'feat'+index);
   });

   // Projects overview buttons set up
   $('li#prj0 a, li#ppt0 a, li#data0 a, li#feat0 a').hover(
      function(){
         $('li#prj1 a, li#prj2 a, li#prj3 a, li#ppt1 a, li#ppt2 a, li#data1 a, li#data2 a, li#data3 a, li#feat1 a, li#feat2 a').addClass('inactive');
      },
      function(){
         $('li#prj1 a, li#prj2 a, li#prj3 a, li#ppt1 a, li#ppt2 a, li#data1 a, li#data2 a, li#data3 a, li#feat1 a, li#feat2 a').removeClass('inactive');
      }
   );

   $('li#prj1 a, li#ppt1 a, li#data1 a, li#feat1 a').hover(
      function(){
         $('li#prj0 a, li#prj2 a, li#prj3 a, li#ppt0 a, li#ppt2 a, li#data0 a, li#data2 a, li#data3 a, li#feat0 a, li#feat2 a').addClass('inactive');
      },
      function(){
         $('li#prj0 a, li#prj2 a, li#prj3 a, li#ppt0 a, li#ppt2 a, li#data0 a, li#data2 a, li#data3 a, li#feat0 a, li#feat2 a').removeClass('inactive');
      }
   );

   $('li#prj2 a, li#ppt2 a, li#data2 a, li#feat2 a').hover(
      function(){
         $('li#prj0 a, li#prj1 a, li#prj3 a, li#ppt0 a, li#ppt1 a, li#data0 a, li#data1 a, li#data3 a, li#feat0 a, li#feat1 a').addClass('inactive');
      },
      function(){
         $('li#prj0 a, li#prj1 a, li#prj3 a, li#ppt0 a, li#ppt1 a, li#data0 a, li#data1 a, li#data3 a, li#feat0 a, li#feat1 a').removeClass('inactive');
      }
   );
   $('li#prj3 a, li#data3 a').hover(
      function(){
         $('li#prj0 a, li#prj1 a, li#prj2 a, li#ppt0 a, li#ppt1 a, li#data0 a, li#data1 a, li#data2 a, li#feat0 a, li#feat1 a').addClass('inactive');
      },
      function(){
         $('li#prj0 a, li#prj1 a, li#prj2 a, li#ppt0 a, li#ppt1 a, li#data0 a, li#data1 a, li#data2 a, li#feat0 a, li#feat1 a').removeClass('inactive');
      }
   );

   // Fix Cufon refresh issue with navigation colour
   if (cufon_nav == 'yes')
   {
      $('.dropdown li a, #nav li a').ready(function(){
         Cufon.refresh();
      });

      $('.dropdown li, #nav li').mouseout(function(){
         Cufon.refresh();
      });
   }
});
