/*
 * Custom JavaScript for Freshlr Personal Site v1.3
 *
 * Copyright (c) 2010 Amatyr4n
 * http://themeforest.net/user/amatyr4n?ref=amatyr4n
 *
 */

var activeMenu = "ahome";
var bebasFont = ["h1", "h2", "h3", "h4", "h5", "h6", "#header", "#tagline", ".sidecon", ".page_title"]

function initFreshlr() {

    // Add fancybox functionality to gallery links
    $(".gallery a").fancybox({
	"titleShow"	: true,
	"titlePosition"	: "over",
	"transitionIn"	: "elastic",
	"transitionOut"	: "elastic"
    });

    // Add tiptip tooltip to sidebar link and any html links contain title attribute
    $(".sidecon").tipTip({defaultPosition:"left", edgeOffset:-50}); 
    $("#social_icons a").tipTip({defaultPosition:"top", edgeOffset:10});
    $(".gallery").find("a").tipTip({defaultPosition:"bottom", edgeOffset:-10}); 
    $("#bottom_icon").tipTip({defaultPosition: "top"});
    $("[title]").tipTip({defaultPosition:"right"});

    // right arrow beside menu links
    arrowSide("ahome");
    $("#ahome").click(function(){arrowSide("ahome");});
    $("#aabout").click(function(){arrowSide("aabout");});
    $("#aportfolio").click(function(){arrowSide("aportfolio");});
    $("#acontact").click(function(){arrowSide("acontact");});
    $("#aimprint").click(function(){arrowSide("aimprint");});
    $("#ajury").click(function(){arrowSide("ajury");});

    // Set contact form with AJAX if JavaScript is present
    $("#contactform").attr("ACTION", "");

    $("#contact_name").focus(function(){
	if($(this).val() == "Name") {
	    $(this).attr("value","");
	}
    });
    $("#contact_name").blur(function(){
	if($(this).val() == "") {
	    $(this).attr("value","Name");
	}
    });
    $("#contact_mailfrom").focus(function(){
	if($(this).val() == "e-mail") {
	    $(this).attr("value","");
	}
    });
    $("#contact_mailfrom").blur(function(){
	if($(this).val() == "") {
	    $(this).attr("value","e-mail");
	}
    });
    $("#contact_subject").focus(function(){
	if($(this).val() == "Subject") {
	    $(this).attr("value","");
	}
    });
    $("#contact_subject").blur(function(){
	if($(this).val() == "") {
	    $(this).attr("value","Subject");
	}
    });

    $("#sendmail").click(function(){
	var validMsg = "";
	var contact_name = $("#contact_name").val();
	var contact_mailfrom = $("#contact_mailfrom").val();
	var contact_subject = $("#contact_subject").val();
	var contact_text = $("#contact_text").val();

	if(contact_name.length < 1 || contact_name == "Name") { 
	    validMsg += "<li>Bitte gib Deinen Namen an</li>";
	}

	if(!contact_mailfrom.match(/^([a-z0-9._-]+@[a-z0-9._-]+\.[a-z]{2,4}$)/i)  || contact_mailfrom == "e-mail") {
	    validMsg += "<li>Bitte gib eine gueltige Email-Adresse an</li>";
	}

	if(contact_subject.length < 1 || contact_subject == "Subject") { 
	    validMsg += "<li>Bitte gib einen Betreff an</li>"; 
	}

	if(contact_text.length < 1) { 
	    validMsg += "<li>Was willst Du uns mitteilen?</li>"; 
	}

	if(validMsg != "") {
	    $("#response").html("<p>Fehler: <ul class=\"disc\">"+validMsg+"</ul></p>"); 
	    $("#response").fadeIn("slow");
	    setTimeout("$(\"#response\").fadeOut(\"slow\")",3000);
	}
	else {
	    var datastr = "fromname=" + contact_name + "&mailfrom=" + contact_mailfrom + "&subject=" + contact_subject + "&msg=" + contact_text;
	    $("#response").css("display", "block");
	    $("#response").html("Nachricht wird gesendet …. ");
	    $("#response").fadeIn("slow");
      datastr=datastr.replace(/\n/g, "\\n");
	    setTimeout("sendMsg(\'"+datastr+"\')",5000);
	}
	return false;
    });

    // Slider for switching between pages
    $("#coda-slider-5").codaSlider({dynamicArrows:false, dynamicTabs:false});

    // To avoid conflict with coda slider when clicking menu links
    $("#home").removeAttr("id");
    $("#about").removeAttr("id");
    $("#jury").removeAttr("id");
    $("#portfolio").removeAttr("id");
    $("#contact").removeAttr("id");
    $("#imprint").removeAttr("id");

    // To change the background in live preview mode
    $(".switchcss").click(function(e) { 
	changeColorSet($(this).attr("rel"));
	e.preventDefault();
    });

     //test whether it is the browser support font-face, if not use cufon instead
    if(isFontFaceSupported()){
    } else {
      for(i in bebasFont){
	Cufon.replace(bebasFont[i]);
      }
    }
}

function isFontFaceSupported() {
    /*!
    * isFontFaceSupported - Sniff variant - v0.9 - 12/19/2009
    * http://paulirish.com/2009/font-face-feature-detection/
    * 
    * Copyright (c) 2009 Paul Irish
    * MIT license
    */
      var ua = navigator.userAgent, parsed;
    
      if (/*@cc_on@if(@_jscript_version>=5)!@end@*/0) 
	  return true;
      if (parsed = ua.match(/Chrome\/(\d+\.\d+\.\d+\.\d+)/))
	  return parsed[1] >= '4.0.249.4';
      if ((parsed = ua.match(/Safari\/(\d+\.\d+)/)) && !/iPhone/.test(ua))
	  return parsed[1] >= '525.13';
      if (/Opera/.test({}.toString.call(window.opera)))
	  return opera.version() >= '10.00';
      if (parsed = ua.match(/rv:(\d+\.\d+\.\d+)[^b].*Gecko\//))
	  return parsed[1] >= '1.9.1';    
    
      return false;    
}

// AJAX script to do HTTP POST to /php/freshlr-mail.php to send mail from your site's web server
function sendMsg(datastr){
    $.ajax({
	type: "POST",
	url: "php/mail.php",
	data: datastr,
	cache: false,
	error: function(html){
	    $("#response").html("Sorry, da ist wohl ein Fehler aufgetreten. Schick uns einfach eine Email");
	    $("#response").fadeIn("slow");
	    setTimeout("$(\"#response\").fadeOut(\"slow\")",5000);
	},
	success: function(html){
	    $("#response").html(html);
	    $("#response").fadeIn("slow");
	    setTimeout("$(\"#response\").fadeOut(\"slow\")",5000);
	}
    });
}

function arrowSide(id) {
    $("#"+activeMenu).find("span").remove();
    $("#"+id).append("<span class=\"arrow-left\"></span>");
    activeMenu = id;
}

function changeColorSet(relAttr) {
    var colorOptions = ["blue","brown-green","dark-blue","dark-green","dark-purple","dark-red","light-blue","orange","red-brown","yellow-blue"];
    var color = relAttr;
    var bg = relAttr;
    if(relAttr == "random") {
	color = colorOptions[Math.floor(Math.random()*10)];
	bg = colorOptions[Math.floor(Math.random()*10)];
    }
    if ($.browser.msie) {
      alert("For IE live preview, please set from HTML")
    } else {
      $("link[href*='freshlr-background']").remove();
      $("link[href*='freshlr-color']").remove();
      $("head").append($("<link rel=\"stylesheet\" type=\"text/css\" href=\"css/background/background-"+bg+".css\" media=\"screen\" />"));
      $("head").append($("<link rel=\"stylesheet\" type=\"text/css\" href=\"css/color/color-"+color+".css\" media=\"screen\" />"));
    }
}
