   function SetUrl( fileUrl ) {
      location.href = location;
   }

   function shop_confirm_delete() {
      var new_msg = "Möchten Sie den Kurs wirklich entfernen?";
   	if(confirm(new_msg)) return true;
   	else return false;
   }

   function shop_submit_form(frm) {
      if(frm.submit());
      return false;
   }

   function shop_submit_agb(frm) {

		if(frm.agb.checked == false) {
			alert('Bitte bestätigen Sie unsere Teilnahmebedingungen und Sicherheitsregeln, ansonsten kann dieser Vorgang nicht fortgesetzt werden.');
			return false;
		}

		return shop_submit_form(frm);

   }


   function button_submit(frm) {
      if(frm.submit()) return false;
      else return true;
   }


   function enter_submit(event, frm) {
      if ((event && event.which == 13) || (event && event.keyCode == 13)) {
         frm.submit();
      }
   }

   function highlight_text(field) {
      field.focus();
      field.select();
   }


   function copy_formfieldvalue(frm, field) {
      var act;
      act = frm["tmp_" + field].options["selectedIndex"];
      frm[field].value = frm["tmp_" + field].options[act].value;
   }


   function confirm_delete(msg) {
   	var new_msg;

   	if(msg) {
         new_msg = msg;
   	} else {
         new_msg  = "Möchten Sie den Datensatz wirklich löschen? Eine Wiederherstellung des Datensatzes samt aller Verknüpfungen, ";
         new_msg += "Inhaltsseiten und Untermenüpunkten ist im nachhinein leider nicht mehr möglich.";
   	}

   	if(confirm(new_msg)) return true;
   	else return false;
   }


	function MM_findObj(n, d) { //v4.01
	  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
		 d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
	  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
	  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
	  if(!x && d.getElementById) x=d.getElementById(n); return x;
	}

	function MM_validateForm() { //v4.0
	  var i,p,q,nm,test,num,min,max,errors='',args=MM_validateForm.arguments;
	  for (i=0; i<(args.length-2); i+=3) { test=args[i+2]; val=MM_findObj(args[i]);
		 if (val) { nm=val.name; if ((val=val.value)!="") {
			if (test.indexOf('isEmail')!=-1) { p=val.indexOf('@');
			  if (p<1 || p==(val.length-1)) errors+='- '+nm+' bitte geben Sie eine gültige E-Mail-Adresse an.\n';
			} else if (test!='R') {
			  if (isNaN(val)) errors+='- '+nm+' must contain a number.\n';
			  if (test.indexOf('inRange') != -1) { p=test.indexOf(':');
				 min=test.substring(8,p); max=test.substring(p+1);
				 if (val<min || max<val) errors+='- '+nm+' must contain a number between '+min+' and '+max+'.\n';
		 } } } else if (test.charAt(0) == 'R') errors += '- '+nm+' \n'; }
	  } if (errors) alert('Bitte füllen Sie folgende Felder aus:\n'+errors);
	  document.MM_returnValue = (errors == '');
	}


	function checkAGB(formField) {
		if (formField.checked == false) {
			alert('Bitte bestätigen Sie unsere Teilnahmebedingungen und Sicherheitsregeln, ansonsten kann dieser Vorgang nicht fortgesetzt werden.');
			return false;
		} else {

			return true;
		}
	}


	function checkFormGen(frm, fields, msg) {

		for(i=0; i < fields.length; i++) {

         if(frm.elements[fields[i]]) {

            if(frm.elements[fields[i]].disabled == false) {

      		   if(frm.elements[fields[i]].type == 'checkbox') {

         		   if(!frm.elements[fields[i]].checked) {
         		     alert("Bitte bestätigen Sie: " + msg[i] + "!");
         		     return false;
         		   }

      		   } else if(frm.elements[fields[i]].type == 'select-one') {

         		   if(!frm.elements[fields[i]].value) {
         		     alert("Bitte treffen Sie eine Auswahl bei '" + msg[i] + "'!");
         		     frm.elements[fields[i]].focus();
         		     return false;
         		   }

      		   } else {

         		   if(!frm.elements[fields[i]].value) {
         		     alert("Bitte füllen Sie das Feld '" + msg[i] + "' aus!");
         		     frm.elements[fields[i]].focus();
         		     return false;
         		   }

         		}
         	}

      	}

		}

      if(frm.submit.value) {
         return true;
      } else {
         frm.submit();
         return false;
      }

   }



   function switch_layer_vis(id) {

      var max = 10;
      var suffix = "lang_";

      if(id == 0) {
         for(i=1;i<=max;i++) {
            if(document.getElementById(suffix+i)) document.getElementById(suffix+i).style.display = "none";
         }
      } else {
         if(document.getElementById(suffix+id).style.display == "none") {
            for(i=1;i<=max;i++) {
               if(document.getElementById(suffix+i)) {
                  document.getElementById(suffix+i).style.display = "none";
                  document.getElementById(suffix+id).style.display = "inline";
               }
            }
   	   } else {
   	      document.getElementById(suffix+id).style.display = "none";
         }
   	}
   }


   function do_vis(id) {

      if(document.getElementById(id)) {

         var node = document.getElementById(id);
         var ifields = node.getElementsByTagName("input");
         var sfields = node.getElementsByTagName("select");
         var tfields = node.getElementsByTagName("textarea");

         if (document.getElementById(id).style.display == "none") {

            document.getElementById(id).style.display = "block";

            for (i = 0; i < ifields.length; i++) ifields[i].disabled = false;
            for (i = 0; i < sfields.length; i++) sfields[i].disabled = false;
            for (i = 0; i < tfields.length; i++) tfields[i].disabled = false;

         } else {

            document.getElementById(id).style.display = "none";

            for (i = 0; i < ifields.length; i++) ifields[i].disabled = true;
            for (i = 0; i < sfields.length; i++) sfields[i].disabled = true;
            for (i = 0; i < tfields.length; i++) tfields[i].disabled = true;

         }
      }
   }



   /* ADMIN-FUNCTIONS */
   function edit(path,cmd,session,rewrite) {

   	if(rewrite == 1) location.href = path+"?"+cmd+"&"+session;
   	else location.href = path+"&"+cmd+"&"+session;

   }

   function del(path,cmd,session,rewrite,msg) {

   	var new_msg;

   	if(msg) {
         new_msg = msg;
   	} else {
         new_msg  = "Möchten Sie den Datensatz wirklich löschen? Eine Wiederherstellung des Datensatzes samt aller Verknüpfungen, ";
         new_msg += "Inhaltsseiten und Untermenüpunkten ist im nachhinein leider nicht mehr möglich.";
   	}

   	if(confirm(new_msg)) {
      	if(rewrite == 1) location.href = path+"?"+cmd+"&"+session;
      	else location.href = path+"&"+cmd+"&"+session;
   	}

   	return false;

   }


   function edit_confirm(path,cmd,session,rewrite,msg) {

   	var new_msg;

   	if(msg) {
         new_msg = msg;
   	} else {
         new_msg  = "Bei diesem Termin handelt es sich um einen Serientermin. Möchten Sie den alleinigen Termin bearbeiten und diesen aus der Serie lösen, dann bestätigen Sie bitte. Möchten Sie hingegen die gesamte Serie bearbeiten, klicken Sie auf Abbrechen und wählen das entsprechende Symbol.";
   	}

   	if(confirm(new_msg)) {
      	if(rewrite == 1) location.href = path+"?"+cmd+"&"+session;
      	else location.href = path+"&"+cmd+"&"+session;
   	}

   	return false;

   }




   /* window-popup-funcs */
   pn_windows = new Object;
   function getWinPos() {
      if (window.screenX) {
         posX = self.screenX;
         posY = self.screenY;
      } else {
         posX = 0;
         posY = 0;
      }
   }


   function openWin(pURL, winName, wX, wY, options) {
      getWinPos();
      var wPosX = posX + 25;
      var wPosY = posY + 25;

      if (!pn_windows) pn_windows = new Object;
      if (!pn_windows[winName]) pn_windows[winName] = '';
      if ((pn_windows[winName]=='') || (pn_windows[winName].closed==true) || (pn_windows[winName].name != winName))  {
         pn_windows[winName] = open(pURL, winName, 'width=' + wX + ',height=' + wY + options);
         pn_windows[winName].moveTo(wPosX, wPosY);
      } else {
         pn_windows[winName].location.href=pURL;
      }
      pn_windows[winName].focus();

   }



   function gmap_anfahrt(frm) {

      var start, ziel, uri;

      fields = Array('fromstreet', 'fromplz', 'fromcity');
      msg    = Array('Straße', 'PLZ', 'Ort');

      for(i=0; i < fields.length; i++) {

         if(frm.elements[fields[i]]) {

            if(!frm.elements[fields[i]].value) {
              alert("Bitte füllen Sie das Feld '" + msg[i] + "' aus!");
              frm.elements[fields[i]].focus();
              return false;
            }

         }

      }

      start  = document.getElementsByName("fromstreet")[0].value + ",+";
      start += document.getElementsByName("fromplz")[0].value + "+";
      start += document.getElementsByName("fromcity")[0].value;

      ziel  = document.getElementsByName("tostreet")[0].value + ",+";
      ziel += document.getElementsByName("toplz")[0].value + "+";
      ziel += document.getElementsByName("tocity")[0].value;

      uri = frm.action + '&saddr=' + start + '&daddr=' + ziel;

      open(uri, 'gmaps_anfahrt', 'width=900,height=700,resizable=yes');

      return false;
   }

