// file encoding must be UTF-8!
// http://stackoverflow.com/questions/286921/javascript-efficiently-replace-all-accented-characters-in-a-string
function GetTextExtractor()
{
  return (function() {
    var patternLetters = /[öäüÖÄÜáàâéèêúùûóòôÁÀÂÉÈÊÚÙÛÓÒÔß]/g;
    var patternDateDmy = /^(?:\D+)?(\d{1,2})\.(\d{1,2})\.(\d{2,4})$/;
    var lookupLetters = {
      "ä": "a", "ö": "o", "ü": "u",
      "Ä": "A", "Ö": "O", "Ü": "U",
      "á": "a", "à": "a", "â": "a",
      "é": "e", "è": "e", "ê": "e",
      "ú": "u", "ù": "u", "û": "u",
      "ó": "o", "ò": "o", "ô": "o",
      "Á": "A", "À": "A", "Â": "A",
      "É": "E", "È": "E", "Ê": "E",
      "Ú": "U", "Ù": "U", "Û": "U",
      "Ó": "O", "Ò": "O", "Ô": "O",
      "ß": "s"
    };
    var TranslateCallback = function(match) { 
      if (lookupLetters[match])
        return lookupLetters[match]; 
      else
        return match;
    }

    return function(node) {
      var text = $.trim($(node).text());
      var matches;
      if(matches = text.match(patternDateDmy))
        return [matches[3], matches[2], matches[1]].join("-");
      else
        return text.replace(patternLetters, TranslateCallback);
    }
  })();
}

function toggle(a,b)
{
    if(a.innerHTML.match("\\+\\]$")){
        a.innerHTML=a.innerHTML.replace('+', '-');
        $(b).css('display','');
        $(b).css('visibility','visible');
    }else{
        a.innerHTML=a.innerHTML.replace('-', '+');
        $(b).css('display','none');
        $(b).css('visibility','hidden');
    }
}


