function getUrlParam(name) {
    name = name.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");
    var regexS = "[\\?&]"+name+"=([^&#]*)";
    var regex = new RegExp( regexS );
    var results = regex.exec( window.location.href );
    if(results == null) {
        return null;
    }
    else {
        return results[1];
    }
}

function createCookie(name,value,days) {
    if (days) {
        var date = new Date();
        date.setTime(date.getTime()+(days*24*60*60*1000));
        var expires = "; expires="+date.toGMTString();
    }
    else var expires = "";
    document.cookie = name+"="+value+expires+"; path=/";
}

function readCookie(name) {
    var nameEQ = name + "=";
    var ca = document.cookie.split(';');
    for(var i=0;i < ca.length;i++) {
        var c = ca[i];
        while (c.charAt(0)==' ') c = c.substring(1,c.length);
        if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
    }
    return null;
}

function eraseCookie(name) {
    createCookie(name,"",-1);
}

var defaultLanguage = "en";

function extractLanguage(str) {
    if (str.length < 2) {
        return defaultLanguage;
    } else if (str.substring(0, 2) == "de") {
        return "de";
    } else {
        return defaultLanguage;
    }
}

var key = "lang";
var lang = null;
var langParam = getUrlParam(key);

if (!(window.langPage === undefined)) {
  lang = extractLanguage(langPage);
  createCookie(key, lang, 365);
} else if (langParam && langParam != null) {
  lang = extractLanguage(langParam);
  createCookie(key, lang, 365);
 } else {
  var langCookie = readCookie(key);
  if (langCookie && langCookie != null) {
    lang = extractLanguage(langCookie);
  } else {
    var langCode = navigator.language || navigator.systemLanguage;
    if (langCode && langCode != null) {
      lang = extractLanguage(langCode);
    } else {
      lang = "en";
    }
  }
 }

function generateMenu() {
    var menu = (lang == "de") ? menu_de : menu_en;
    document.write("<ul>");
    for (name in menu) {
        var cur = (name == "Blog") ? " current_page_item" : "";
        var href = (name == "Blog") ?
            menu[name] :
            (base_url + menu[name] + "." + lang);
        document.write("<li class='page_item" + cur + "'><a href='" + href + "'>" + name + "</a></li>");
    }
    document.write("</ul>");
}

function startsWith(str, prefix) {
    return (str.indexOf(prefix) == 0);
}

function blogAuthor(author) {
    if (author == "fsctz") {
        author = "Fabian Sch&uuml;tz";
    }
    // Achtung: umlaute
    anchor = "";
    if (startsWith(author, "Stefan")) {
        anchor = "#swehr";
    }
    if (startsWith(author, "David")) {
        anchor = "#dleuschner";
    }
    if (startsWith(author, "Fabian")) {
        anchor = "#fschuetz";
    }
    if (startsWith(author, "Dirk")) {
        anchor = "#dspoeri";
    }
    if (startsWith(author, "Johannes")) {
        anchor = "#jweiss";
    }
    if (startsWith(author, "Jonathan")) {
        anchor = "#jdimond";
    }
    if (startsWith(author, "Joachim")) {
        anchor = "#jbreitner";
    }
    if (startsWith(author, "Harald") || startsWith(author, "Dr. Harald")) {
        anchor = "#hfischer";
    }
    if (startsWith(author, "Gero")) {
        anchor = "#gkriependorf";
    }
    if (startsWith(author, "Ben")) {
        anchor = "#budiljak";
    }
    link = "http://www.factisresearch.com/company.html." + lang + anchor;
    document.write("<a href=\"" + link + "\">" + author + "</a>");
}

