//HELPMESSAGES
helpmsg = null;

document.onmousemove = updateHELPMSG;

function updateHELPMSG(e) {
	x = (document.all) ? window.event.x + document.body.scrollLeft : e.pageX;
	y = (document.all) ? window.event.y + document.body.scrollTop  : e.pageY;
	if (helpmsg != null) {
		helpmsg.style.left = (x + 10) + "px";
		helpmsg.style.top = (y + 19) + "px";
	}
}

function showHELPMSG(id, content, width_change) {
         helpmsg = document.getElementById(id);
         if(content != false){
                 var div_content = document.getElementById(id + "_content");
                 if(div_content){
                 	div_content.innerHTML = content;
                 }
         }
         if(helpmsg){
         	helpmsg.style.width = width_change;
		helpmsg.style.display = "block";
         }
}

function hideHELPMSG() {
         if(helpmsg != null){
         	helpmsg.style.display = "none";
         }
}



function check_cookies(){
         document.cookie = "test=true";

         var testcookie = "";
	if (document.cookie) {
	    var start = document.cookie.indexOf("test=") + 5;
	    var end = start + 4;
	    testcookie = document.cookie.substring(start, end);
	}
         //alert(testcookie);
         if(testcookie == "true"){
                 document.getElementById("div_cookie_message").style.display = "none";
                 var now = new Date();
                 document.cookie = "test=true; expires=" + now.toGMTString();
         } else {
                 document.getElementById("div_cookie_message").style.display = "";
         }
}

//DIV aus-, einblenden
function hide_element(id) {
  div = document.getElementById(id);
  div.style.display = "none";
}
function show_element(id) {
  div = document.getElementById(id);
  div.style.display = "";
}

//DIV aus-, einblenden (Textbox, Smiliebox)
function hideDIV(id) {
  div = document.getElementById(id);
  div.style.display = "none";

  div_hide = document.getElementById(id + "_hide");
  div_hide.style.display = "none";
  div_show = document.getElementById(id + "_show");
  div_show.style.display = "block";
  document.getElementById("display_" + id).value = "hide";
}
function showDIV(id) {
  div = document.getElementById(id);
  div.style.display = "block";

  div_show = document.getElementById(id + "_show");
  div_show.style.display = "none";
  div_hide = document.getElementById(id + "_hide");
  div_hide.style.display = "block";
  document.getElementById("display_" + id).value = "";
}




//Funktion für Datenbank (Select für Hotelsterne ein-, ausblenden)
function db_search_cat_hotel() {
  cat_hotel = document.getElementById('cat_hotel');
  	  if(cat_hotel.checked){
	         document.getElementById('hotel_stars_span').style.display = "block";
	  }
	  else{
	         document.getElementById('hotel_stars_span').style.display = "none";
	         document.getElementById('hotel_stars').value = "";
	  }
}
//Funktion für Datenbank (Select für Ortschaftsauswahl - Button SEND ein- bzw. ausblenden)
function db_select_village_select() {
  cbo_village_select = document.getElementById('cbo_village_select');
  	  if(cbo_village_select.value != ""){
	         document.getElementById('button_select_villages').style.display = "block";
	  }
	  else{
	         document.getElementById('button_select_villages').style.display = "none";
	  }
}
//Funktion für Datenbank - Kriterienprüfung beim Absenden
//wenn nicht ausgewählt, werden alle Checkboxen gesetzt
function db_check_criteria_before_send() {
  cat_hotel = document.getElementById('cat_hotel');
  cat_restaurant = document.getElementById('cat_restaurant');
  cat_pension = document.getElementById('cat_pension');
  cat_holiday_flat = document.getElementById('cat_holiday_flat');
  cat_cafe = document.getElementById('cat_cafe');
  cat_bar = document.getElementById('cat_bar');
  cat_kneipe = document.getElementById('cat_kneipe');

  if(cat_hotel.checked == false && cat_restaurant.checked == false && cat_pension.checked == false && cat_holiday_flat.checked == false && cat_cafe.checked == false && cat_bar.checked == false && cat_kneipe.checked == false){
        cat_hotel.checked = true;
        cat_restaurant.checked = true;
        cat_pension.checked = true;
        cat_holiday_flat.checked = true;
        cat_cafe.checked = true;
        cat_bar.checked = true;
        cat_kneipe.checked = true;
  }
}


//Cookie setzen
function setcookie(name, value, expire){
         if(expire == true){
                 var now = new Date();
                 var expire = ' expires=' + now.toGMTString();
         } else {
         	var expire = "";
         }
         document.cookie = name + "=" + value + ";" + expire;
}



//CHANGE_VALUE
function change_value(id, content){
 document.getElementById(id).value = content;
}


//POPUPS
function popup(site, height_given, width_given) {
  neuesFenster = open(site, "Popup", "toolbar=no,menubar=no,height="+ height_given +",width="+ width_given +",scrollbars=yes");
}


//BBCODE INS TEXTAREA EINFÜGEN
function bbcode_input(aTag, mTag, eTag) {

  var input = document.forms['insert'].elements['txt_article'];
  input.focus();

  //WENN KEIN MTAG GEGEBEN
  if(mTag == ''){
	  /* für Internet Explorer */
	  if(typeof document.selection != 'undefined') {
	    /* Einfügen des Formatierungscodes */
	    var range = document.selection.createRange();
	    var insText = range.text;
	    range.text = aTag + insText + eTag;
	    /* Anpassen der Cursorposition */
	    range = document.selection.createRange();
	    if (insText.length == 0) {
	      range.move('character', -eTag.length);
	    } else {
	      range.moveStart('character', aTag.length + insText.length + eTag.length);
	    }
	    range.select();
	  }


	  /* für neuere auf Gecko basierende Browser */
	  else if(typeof input.selectionStart != 'undefined')
	  {
	    /* Einfügen des Formatierungscodes */
	    var start = input.selectionStart;
	    var end = input.selectionEnd;
	    var insText = input.value.substring(start, end);
	    input.value = input.value.substr(0, start) + aTag + insText + eTag + input.value.substr(end);
	    /* Anpassen der Cursorposition */
	    var pos;
	    if (insText.length == 0) {
	      pos = start + aTag.length;
	    } else {
	      pos = start + aTag.length + insText.length + eTag.length;
	    }
	    input.selectionStart = pos;
	    input.selectionEnd = pos;
	  }


	  /* für die übrigen Browser */
	  else
	  {
	    /* Abfrage der Einfügeposition */
	    var pos;
	    var re = new RegExp('^[0-9]{0,3}$');
	    while(!re.test(pos)) {
	      pos = prompt("Einfügen an Position (0.." + input.value.length + "):", "0");
	    }
	    if(pos > input.value.length) {
	      pos = input.value.length;
	    }
	    /* Einfügen des Formatierungscodes */
	    var insText = prompt("Bitte geben Sie den zu formatierenden Text ein:");
	    input.value = input.value.substr(0, pos) + aTag + insText + eTag + input.value.substr(pos);
	  }
  }
  //MTAG GESETZT
  else{
           /* für Internet Explorer */
           if(typeof document.selection != 'undefined') {
             /* Einfügen des Formatierungscodes */
             var range = document.selection.createRange();
             var insText = range.text;
             range.text = aTag + insText + mTag + insText + eTag;
             /* Anpassen der Cursorposition */
             range = document.selection.createRange();
             if (insText.length == 0) {
               range.move('character', -eTag.length);
             } else {
               range.moveStart('character', aTag.length + insText.length + mTag.length + insText.length + eTag.length);
             }
             range.select();
           }


           /* für neuere auf Gecko basierende Browser */
           else if(typeof input.selectionStart != 'undefined')
           {
             /* Einfügen des Formatierungscodes */
             var start = input.selectionStart;
             var end = input.selectionEnd;
             var insText = input.value.substring(start, end);
             input.value = input.value.substr(0, start) + aTag + insText + mTag + insText + eTag + input.value.substr(end);
             /* Anpassen der Cursorposition */
             var pos;
             if (insText.length == 0) {
               pos = start + aTag.length;
             } else {
               pos = start + aTag.length + insText.length + mTag.length + insText.length + eTag.length;
             }
             input.selectionStart = pos;
             input.selectionEnd = pos;
           }


           /* für die übrigen Browser */
           else
           {
             /* Abfrage der Einfügeposition */
             var pos;
             var re = new RegExp('^[0-9]{0,3}$');
             while(!re.test(pos)) {
               pos = prompt("Einfügen an Position (0.." + input.value.length + "):", "0");
             }
             if(pos > input.value.length) {
               pos = input.value.length;
             }
             /* Einfügen des Formatierungscodes */
             var insText = prompt("Bitte geben Sie den zu formatierenden Text ein:");
             input.value = input.value.substr(0, pos) + aTag + insText + mTag + insText + eTag + input.value.substr(pos);
           }
  }

}


//SPAM-Mails
function UnCryptMailto( s )
{
var n = 0;
var r = "";
for( var i = 0; i < s.length; i++)
{
   n = s.charCodeAt( i );
   if( n >= 8364 )
   {
       n = 128;
   }
   r += String.fromCharCode( n - 1 );
}
return r;
}

function linkTo_UnCryptMailto( s )
{
location.href=UnCryptMailto( s );
}
