Cufon.replace('h1');
Cufon.replace('#mainnav>ul>li>a');
Cufon.replace('#corner h6');
Cufon.replace('.col h6');
Cufon.replace('.wrapme H3', {hover: true});

var fontsize = 0;
var fontsizes = [
  '12px/18px',
  '14px/20px',
  '16px/22px',
  '18px/22px'
];

$(document).ready( function () {

	if (! $.support.opacity) {
		/* IE6 */
		$('#wraps .wrapme > A:first-child').addClass('first-direct-child-of-wrapme');
		$('#wraps .wrapme:first-child').addClass('wrapme-first-child');
	}
	
	$('.expandable .read-more, .jobs H2').click(function(e) {
		$(this).parents('LI:first').find('.read-more').hide();
		$('P', this.parentNode).show();
	});

  //
  // Add form styles
  //
  $("input:text").addClass("text");
  $("input:submit").addClass("submit");

  // 
  // Set font size
  //
  if ($.cookie("fontsize")) 
  {
    var size = $.cookie("fontsize");
    fontsize = size;
    setFontsize();
  }

  //
  // Buttons
  //
  
  $("#buttons a").hover(
    function () { $(this).css("opacity", 0.6) },
    function () { $(this).css("opacity", 1.0) }
  );
  
  $("#sizeButton").click( function () {
    fontsize++;
    if (fontsize >= fontsizes.length) fontsize = 0;
    $.cookie("fontsize", fontsize, {"path": "/"});
    setFontsize();
  });
  
  $("#printButton").click( function () {
    window.print();
  });
  
  $("#mailButton").click( function () {
    $(this).attr("href", 
      this.href +
      "?pageTitle="+ escape($("title").html()) +
      "&pageUrl="+ escape(document.location)
    );
  });


  
  // Sitemap
  $("#sitemap").sitemap();
  
  
  // Lightboxes
  $("#en #gallery a.lb, #en #webcams a").lightBox({
    "imageLoading": '/files/talvivaara/images/lb-loading.gif',
    "imageBtnClose": '/files/talvivaara/images/close.png',
    "imageBtnPrev": '/files/talvivaara/images/previous.png',
    "imageBtnNext": '/files/talvivaara/images/next.png',
    "imageBlank": '/files/talvivaara/images/lb-blank.gif'
  });
    
  $("#fi #gallery a.lb, #fi #webcams a").lightBox({
    "imageLoading": '/files/talvivaara/images/lb-loading.gif',
    "imageBtnClose": '/files/talvivaara/images/sulje.png',
    "imageBtnPrev": '/files/talvivaara/images/edellinen.png',
    "imageBtnNext": '/files/talvivaara/images/seuraava.png',
    "imageBlank": '/files/talvivaara/images/lb-blank.gif'
  });
 
  
  // Webcams
  var webcamRefresh = 3000;
  $("#webcams a img").each( function () {
    var image = $(this);
    setTimeout(function () { refreshImage(image, webcamRefresh) }, webcamRefresh);
  });
  // Webcam Lightbox refresh
  $("#webcams a").click( function () {
    var image = $("#lightbox-image");
    setTimeout(function () { refreshImage(image, webcamRefresh) }, webcamRefresh);
  });
  
  // Management
  $("a.moreinfo").click( function () {
    $(this).next("div").slideToggle("fast");
  });
  
  // Send page -form
  $("#sendpage").submit( function (e) {
  
    var to_email = $("#q0").val();
    var from_name = $("#q1").val();
    var from_email = $("#q2").val();
    var message = $("#q3").val();
    var url = $("#q4").val();
    var title = $("#q5").val();

    var subject = 
    {
      "fi": "Talvivaara.com linkkivinkki kaveriltasi",
      "en": "Talvivaara.com link tip from your friend"
    };
    
    var message = 
    {
      "fi":  
        "Kaverisi "+ (from_name ? from_name +" " : "") +"on lähettänyt sinulle seuraavan linkin:\n"+
        "\n"+
        title +"\n"+
        url +"\n\n"+
        (message ? "Kaverisi viesti:\n\n"+ message +"\n" : "") +
        "\n"+
        "--\n"+
        "Talvivaara toimii ainoastaan viestin teknisenä välittäjänä. "+
        "Annettuja tietoja ei kerätä, säilytetä eikä niitä luovuteta ulkopuolisille.\n"+
        "\n"+
        "Kysymykset palvelusta: info@talvivaara.fi\n"+
        "http://www.talvivaara.fi\n",

      "en":  
        "Your friend "+ (from_name ? from_name +" " : "") +" has sent you following link:\n"+
        "\n"+
        title +"\n"+
        url +"\n\n"+
        (message ? "Friends message:\n\n"+ message +"\n" : "") +
        "\n"+
        "--\n"+
        "Talvivaara Mining Company Plc\n"+
        "http://www.talvivaara.com\n"
    };

    var language = $("body").attr("id");

    if (subject[ language ] && message[ language ]) 
    {
      $("#q6").val( subject[ language ] );
      $("#q7").val( message[ language ] );
      return true;
    }

    else {
      e.preventDefault();
      return false;
    }
  });

});

function refreshImage (image, refresh)
{
  var src = $(image).attr("src");
  var rnd = Math.ceil(Math.random()*999);
  if (!src.match(/\?/))
    src += "?"+ rnd;
  else 
  {
    var tmp = src.split("?");
    src = tmp[0] +"?"+ rnd;
  } 
  $(image).attr("src", src);
  setTimeout(function () { refreshImage(image, refresh) }, refresh);
}


function setFontsize ()
{
  var sizes = fontsizes[ fontsize ].split("/");
  $("#subnav a, #path a, #txt, #txt p").css({"font-size": sizes[0], "line-height": sizes[1]});
}


jQuery.fn.sitemap = function () {

  // Style-classes
  var openClass = 'open';
  var lastClass = 'last';
  var closeClass = 'close';
  
  // Hide all > 2. level links
  $(this).find("div").hide();
   
  // Wrap into P, add SPAN for image
  $(this).find("a").each( function () { $(this).wrap('<p></p>').before('<span></span>'); });
  
  // Images
  $(this).find("span")
    .css({"opacity": 0.5})
    
    .hover( 
      function () { $(this).css({"opacity": 1.0}) },
      function () { $(this).css({"opacity": 0.5}) }
    )
    
    .each( function () {
      // Product groups show empty DIV, check with children()
      if ($(this).parent("p").next("div").children().size())
        $(this).addClass(openClass);
      else
        $(this).addClass(lastClass);
    })
    
    .click( function () {
      if ($(this).is("."+ openClass)) {
        $(this).removeClass(openClass).addClass(closeClass);
        $(this).parent().next("div").slideDown("fast");
      }
      else if ($(this).is("."+ closeClass)) {
        $(this).removeClass(closeClass).addClass(openClass);
        $(this).parent().next("div").slideUp("fast");
      }
    });
};


var release_denied = {
  "AU": true,
  "CA": true,
  "JP": true,
  "US": true,
  "UM": true
};

function releaseDisclaimer (country)
{
  $(document).ready( function () {

    $("#release").hide();

    $("#disclaimer_return, [name='disclaimer_return']").click( function () {
      history.back();
    });

    $("[name='disclaimer_access']").click( function () {
      $("#disclaimer_text").hide();
      $("#release").show();
    });

    $.each(countries, function (countryId, countryName) {
      $("#disclaimer_countryselect select").append(
        '<option value="'+ countryId +'">'+ countryName +'</option>'
      );
    });

    if (country) 
      $("#disclaimer_countryselect select option[value='"+ country +"']").attr("selected", "selected");

    $("#disclaimer_countryselect form").submit( function (e) {
      e.preventDefault();
      var selected = $(this).find("select").val();
      if (!selected) return false;

      $("#disclaimer_countryselect").hide();
      if (!release_denied[ selected ])
        $("#disclaimer_text").show();
      else
        $("#disclaimer_error").show();
    });

    $("#disclaimer_countryselect").show();
  });
}


function presentationDisclaimer (country)
{
  $(document).ready( function () {

    $("#release").hide();

    $("#disclaimer_return, [name='disclaimer_return']").click( function () {
      history.back();
    });

    $("[name='disclaimer_access']").click( function () {
      $("#disclaimer_text").hide();
      $("#release").show();
      var redir = $("#download_presentation").attr("href");
      top.location=redir;

    });

    $.each(countries, function (countryId, countryName) {
      $("#disclaimer_countryselect select").append(
        '<option value="'+ countryId +'">'+ countryName +'</option>'
      );
    });

    if (country) 
      $("#disclaimer_countryselect select option[value='"+ country +"']").attr("selected", "selected");

    /*$("#disclaimer_countryselect form").submit( function (e) {
      e.preventDefault();
      var selected = $(this).find("select").val();
      if (!selected) return false;

      $("#disclaimer_countryselect").hide();
      if (!release_denied[ selected ])
        $("#disclaimer_text").show();
      else
        $("#disclaimer_error").show();
    });*/
    
    $("#disclaimer_text").show();

    $("#disclaimer_countryselect").show();
  });
}



function contentDisclaimer (country)
{
  $(document).ready( function () {

    $(".locked").hide();

    $("#disclaimer_return, [name='disclaimer_return']").click( function () {
      history.back();
    });

    $("[name='disclaimer_access']").click( function () {
      $("#disclaimer_text").hide();
      $(".locked").show();
    });

    $.each(countries, function (countryId, countryName) {
      $("#disclaimer_countryselect select").append(
        '<option value="'+ countryId +'">'+ countryName +'</option>'
      );
    });

    if (country) 
      $("#disclaimer_countryselect select option[value='"+ country +"']").attr("selected", "selected");

    $("#disclaimer_countryselect form").submit( function (e) {
      e.preventDefault();
      var selected = $(this).find("select").val();
      if (!selected) return false;

      $("#disclaimer_countryselect").hide();
      if (!release_denied[ selected ])
        $("#disclaimer_text").show();
      else
        $("#disclaimer_error").show();
    });

    $("#disclaimer_countryselect").show();
  });
}
