
/* Global Constants Begin */

// Indexes of element id and element parent id for treeMenu
var TREE_ARRAY_ELEMENT_ID = 2;
var TREE_ARRAY_ELEMENT_PARENT_ID = 4;

/* Global Constants End */


// Validates the guideline form
function validateGuidelineForm(updateInterface) {

	if (document.mas_form.massnahmename.value=='')
	{
		alert("Bitte geben Sie eine Bezeichnung für Richtlinie an!");
		document.mas_form.massnahmename.focus();
		return;
	}
	
	
	
	if (document.mas_form.guidelineStorageLocation.value=='')
	{
		alert("Bitte geben Sie den Ablageort an!");	
		document.mas_form.guidelineStorageLocation.focus();		
		return;
	}
	
	if (document.mas_form.creationDate.value=='')
	{
		alert("Bitte geben Sie ein Erstellungsdatum an!");		
		return;
	}
	 
	document.getElementById('newactivityflag').value = '0';
    document.mas_form.submit();
}


function validateGuidelineFormExt(updateInterface) {

	if (document.mas_form.massnahmename.value=='')
	{
		alert("Bitte geben Sie den Namen der Richtlinie an!");
		document.mas_form.massnahmename.focus();
		return;
	}
		
	var categorySelected = false;
	var guidelineCategories = document.mas_form.guidelineCategory;
	for(var i = 0; i < guidelineCategories.length; i++) {
		if(guidelineCategories[i].checked) {
			categorySelected = true;
			break;
		}
	}
	
	if (!categorySelected)
	{
		alert("Bitte wählen Sie eine Richtlinien-Kategorie aus!");
		return;
	}
	
	if (document.mas_form.creationDate.value=='')
	{
		alert("Bitte geben Sie ein Erstellungsdatum an!");		
		return;
	}
	
	document.getElementById('newactivityflag').value = '1';
    document.mas_form.submit();
}




function changeAktForm() {
  if(document.akt_form.notfallrelevant.checked == true)
  {
    document.akt_form.kontrollfrequenz.selectedIndex = 0; 
    
	/*for(i = 1; i < 11; i++)
      if(document.akt_form.kontrollfrequenz[i])
      {
          document.akt_form.kontrollfrequenz[i].checked = false;
          document.akt_form.kontrollfrequenz[i].disabled = true;
      }
	  */
	  
	$('#kfWiederholend').css('display', 'none');
	
	document.akt_form.kontrollfrequenz.disabled = true;
	
		  
    document.getElementById('nextcheck').value = '';
	document.getElementById('kontrollfrequenzzahl').disabled = true;
    document.getElementById('nczeit_std').value = '';
    document.getElementById('nczeit_min').value = '';
    document.getElementById('benachrichtigungszeit_tage').value = '';
    document.getElementById('benachrichtigungszeit_tage').disabled = true;
    document.getElementById('benachrichtigungszeit_std').value = '';
    document.getElementById('benachrichtigungszeit_std').disabled = true;
    document.getElementById('nextcheck_div').innerHTML = '';
    document.getElementById('nczeit_std').disabled = true;
    document.getElementById('nczeit_min').disabled = true;
    document.getElementById('cal_link').href = "javascript:alert('Bei eregnisrelevanten Aktivitäten können Sie kein Datum \"Nächster Check\" eingeben!');";
  }
  else
  {
    /* for(i = 0; i < 11; i++)
     {
        if(document.akt_form.kontrollfrequenz[i])
        {
          document.akt_form.kontrollfrequenz[i].disabled = false;
          document.akt_form.kontrollfrequenz[i].checked = false;
        }
     }
	 */
	 document.akt_form.kontrollfrequenz.disabled = false;
	 
    document.getElementById('nczeit_std').disabled = false;
    document.getElementById('nczeit_min').disabled = false;
	document.getElementById('benachrichtigungszeit_tage').disabled = false;
    document.getElementById('benachrichtigungszeit_std').disabled = false;
	document.getElementById('kontrollfrequenzzahl').disabled = false;
    document.getElementById('cal_link').href = "javascript:NewCal('nextcheck','ddmmyyyy',false,24)";
  }
}

function buildReport()
{
	var filterCount = document.buildreport.filterCount.value;
    var checkboxCount = 0;
    var userName = document.buildreport.userName.value;
    var userCompany = document.buildreport.userCompany.value;
	var companyLogo = document.buildreport.companyLogo.value;
	var filterId = '';
	var filterType = '';
	var filterPrefix = '';
    var json = '';
    var komma = '';

    var reportKey = '{ \"reportKey\" : \"'+document.buildreport.reportId.value+'\" , ';
    var tenantid = '\"tenantId\" : \"'+document.buildreport.tenantId.value+'\" , ';
    /* var parameter = '\"parameters\" : { '; */
    var parameter = '\"parameters\" : { \"tenantId\" : \"'+document.buildreport.tenantId.value+'\" , ';

	/* FILTERWERTE  */
	for(var i=1;i <= filterCount;i++)
	{

      filterPrefix = document.getElementById('filter_prefix_'+i).value;
	  filterType = document.getElementById(filterPrefix+'_filter_type').value;
	  filterTitle = document.getElementById(filterPrefix+'_filter_title').value;
	  filterId = document.getElementById(filterPrefix+'_filter_id').value;

      switch (filterType) {

        case "doubleboxtree":
			filterValue = document.getElementById(filterPrefix+'_item_added').value;
			filterValue = filterValue.replace(/;/g,",");

			if(filterValue=='') {
                alert("Bitte füllen Sie den Filter "+filterTitle+" aus.");
				return;
			}

  			break;
		case "checkbox":
            checkboxCount = document.getElementById(filterPrefix+'_checkbox_count').value;
			filterValue = '';
			k=0;
            for(var j=0;j < checkboxCount;j++)
			{
              komma = '';
		      if (k > 0) {komma = ',';}
              if (document.getElementById(filterPrefix+'_value_'+j).checked) {
                filterValue = filterValue+komma+document.getElementById(filterPrefix+'_value_'+j).value;
                k++;
			  }
			}

            if(filterValue=='' && checkboxCount>1) {
                alert("Bitte füllen Sie den Filter "+filterTitle+" aus.");
				return;
			}

			if(filterValue=='' && checkboxCount==1) {
              filterValue = '0';
			}

  			break;
		case "singleinput":
			filterValue = document.getElementById(filterPrefix+'_value').value;
            if(filterValue=='') {
                alert("Bitte füllen Sie den Filter "+filterTitle+" aus.");
				return;
			}
  			break;
        case "doubleinputminmax":
			filterValue = document.getElementById(filterPrefix+'_value').value;

            if(filterValue=='') {
                alert("Bitte geben Sie den 'von'-Wert des Filters "+filterTitle+" ein.");
				return;
			}

			/* Value des zweiten Filters */
            filterPrefix2 = document.getElementById('filter_prefix_d'+i).value;
	  		filterId2 = document.getElementById(filterPrefix2+'_filter_id').value;

    		filterValue2 = document.getElementById(filterPrefix2+'_value').value;

            if(filterValue2=='') {
                alert("Bitte geben Sie den 'bis'-Wert des Filters "+filterTitle+" ein.");
				return;
			}

            if(parseInt(filterValue2)<=parseInt(filterValue)) {
                alert("Bitte überprüfen Sie den Filter "+filterTitle+". Der 'bis'-Wert muss größer als der 'von'-Wert sein. ");
				return;
			}

            filterValue = filterValue+'\" , \"'+filterId2+'\" : \"'+filterValue2+'';

  			break;


      }

      komma = '';
      if (i>1) {komma = ', ';}
   	  parameter = parameter+komma+'\"'+filterId+'\" : \"'+filterValue+'\"';

	}


    /*parameter = parameter+', \"S1_MANDATORY_USER\" : \"'+userName+'\" , ';
    parameter = parameter+'\"S1_MANDATORY_TENANT\" : \"'+userCompany+'\" } }';*/

	parameter = parameter+', \"user\" : \"'+userName+'\" , ';
	parameter = parameter+'\"tenantLogoUrl\" : \"'+companyLogo+'\" , ';
    parameter = parameter+'\"tenant\" : \"'+userCompany+'\" } }';



    json = reportKey+tenantid+parameter;

    /* document.buildreport.ReportJsonQuery.value = json; */
	document.getElementById('ReportJsonQuery').value = json;

     /* alert(json); */ 
	document.buildreport.submit();
}

function checkMandantUpdate()
{
	if (document.updatemandant.va_item_added.value=='')
	{
		alert("Bitte wählen Sie ein Addon aus, das dem Mandanten hinzugefügt werden soll.");
		return;
	}
	document.updatemandant.submit();
}


function checkVersion()
{
  var pw1 = document.versionerstellen.v_pw1.value;
	var pw2 = document.versionerstellen.v_pw3.value;
	if (document.versionerstellen.v_titel.value=='')
	{
		alert("Bitte geben Sie einen Titel an.");
		document.versionerstellen.v_titel.focus();
		return;
	}
    if (document.versionerstellen.v_login.value=='')
	{
		alert("Bitte geben Sie eine E-Mail-Adresse als Benutzernamen an.");
		document.versionerstellen.v_login.focus();
		return;
	}
	if (document.versionerstellen.v_login.value.indexOf('@') == -1 || document.versionerstellen.v_login.value.indexOf('.') == -1)
	{
		alert(unescape("Bitte überprüfen Sie die E-Mail-Adresse."));
		document.versionerstellen.v_login.focus();
		return;
	}
  	if (document.versionerstellen.v_pw1.value=='')
	{
		alert("Bitte gebe Sie ein Passwort ein.");
		document.versionerstellen.v_pw1.focus();
		return;
	}

	if (pw1.length < 6 || pw1.length > 12 || pw2.length < 6 || pw2.length > 12 )
	{
		alert("Das Passwort muss 6 bis 12 Zeichen haben.");
		document.versionerstellen.v_pw1.focus();
		return;
	}
	if (document.versionerstellen.v_pw3.value!=document.versionerstellen.v_pw1.value)
	{
		alert("Die Passwortwiederholung stimmt nicht mit dem Passwort überein. Bitte überprüfen Sie beide.");
		document.versionerstellen.v_pw1.focus();
		return;
	}
	if (document.versionerstellen.v_item_added.value=='')
	{
		alert("Bitte wählen eine bestehende Version als Vorlage aus.");
		return;
	}

	document.versionerstellen.submit();
}



function updateVersion()
{
    var pwupdate1 = document.versionupdate.v_pw1.value;
	var pwupdate2 = document.versionupdate.v_pw3.value;
    var pwupdateold = document.versionupdate.v_oldpassword.value;
	if (document.versionupdate.v_titel.value=='')
	{
		alert("Bitte geben Sie einen Titel an.");
		document.versionupdate.v_titel.focus();
		return;
	}
    if (document.versionupdate.v_login.value=='')
	{
		alert("Bitte geben Sie eine E-Mail-Adresse als Benutzernamen an.");
		document.versionupdate.v_login.focus();
		return;
	}
	if (document.versionupdate.v_login.value.indexOf('@') == -1 || document.versionupdate.v_login.value.indexOf('.') == -1)
	{
		alert(unescape("Bitte überprüfen Sie die E-Mail-Adresse."));
		document.versionupdate.v_login.focus();
		return;
	}
  	if (document.versionupdate.v_pw1.value=='')
	{
		alert("Bitte gebe Sie ein Passwort ein.");
		document.versionupdate.v_pw1.focus();
		return;
	}

    if (document.versionupdate.v_pw1.value!=document.versionupdate.v_oldpassword.value) {
  	  if (pwupdate1.length < 6 || pwupdate1.length > 12 || pwupdate2.length < 6 || pwupdate2.length > 12 )
 	  {
 		alert("Das Passwort muss 6 bis 12 Zeichen haben.");
 		document.versionupdate.v_pw1.focus();
		return;
	  }
	}

	if (document.versionupdate.v_pw3.value!=document.versionupdate.v_pw1.value)
	{
		alert("Die Passwortwiederholung stimmt nicht mit dem Passwort überein. Bitte überprüfen Sie beide.");
		document.versionupdate.v_pw1.focus();
		return;
	}

	document.versionupdate.submit();
}




function checkFunktion(){
	if ((document.fkt_form.funktionsezeichnung.value == ""))
	{
		alert("Bitte geben Sie den Namen der Funktion an!");
        document.fkt_form.funktionsezeichnung.focus();
		return;
	}
    document.fkt_form.submit();
}

function checkRkat(){
	if ((document.rkt_form.funktionsezeichnung.value == ""))
	{
		alert("Bitte geben Sie den Namen der Risikokategorie an!");
        document.rkt_form.funktionsezeichnung.focus();
		return;
	}
    document.rkt_form.submit();
}


function checkprotokoll(){
	if ((document.protokoll.status[0].checked == false) && (document.protokoll.status[1].checked == false) && (document.protokoll.status[2].checked == false))
	{
		alert("Bitte geben Sie den aktuellen Status an!");
		return;
	}
    document.protokoll.submit();
}


function checkUmfrageRisiko()
{
	if (document.umf_ris_form.risikoname.value=='')
	{
		alert("Bitte geben Sie den Namen des Risikos an!");
		document.umf_ris_form.risikoname.focus();
		return;
	}
	if (document.umf_ris_form.fkts_item_added.value=='')
	{
		alert("Bitte ordnen Sie das Risiko mindestens einer Funktion zu!");
		return;
	}
	if (document.umf_ris_form.rkts_item_added.value=='')
	{
		alert("Bitte ordnen Sie das Risiko mindestens einer Risikokategorie zu!");
		return;
	}
    if (!document.umf_ris_form.wahrscheinlichkeit[0].checked && !document.umf_ris_form.wahrscheinlichkeit[1].checked && !document.umf_ris_form.wahrscheinlichkeit[2].checked && !document.umf_ris_form.wahrscheinlichkeit[3].checked && !document.umf_ris_form.wahrscheinlichkeit[4].checked && !document.umf_ris_form.wahrscheinlichkeit[5].checked && !document.umf_ris_form.wahrscheinlichkeit[6].checked)
	{
		alert("Bitte schätzen Sie die Wahrscheinlichkeit des Risikos ein!");
		return;
	}

    if (document.umf_ris_form.minBedeutung.value=='')
	{
		alert("Bitte schätzen Sie die monetäre Bedeutung des Risikos ein!");
		return;
	}
	if (document.umf_ris_form.minBedeutung.value!='' || document.umf_ris_form.maxBedeutung.value!='')
	{
	  if(parseInt(document.umf_ris_form.minBedeutung.value) > parseInt(document.umf_ris_form.maxBedeutung.value) || document.umf_ris_form.minBedeutung.value == '')
	  {
    		alert("Bitte geben Sie eine korrekte monetäre Bedeutung an! Der 'von'-Wert muss kleiner als der 'bis'-Wert sein!");
		    return;
		}
	}
    document.umf_ris_form.submit();
}



function checkUmfrage(state)
{

	if (document.umfrageerstellen.ubezeichnung.value=='')
	{
		alert("Bitte geben Sie den Name der Umfrage an!");
		document.umfrageerstellen.ubezeichnung.focus();
		return;
	}

  if(state==1) {

	if ((document.umfrageerstellen.uschluss.value=='') || (document.umfrageerstellen.uschluss.value=='00.00.0000'))
	{
		alert("Bitte geben Sie ein zukünftiges das Datum an, an dem die Umfrage geschlossen werden soll!");
		document.umfrageerstellen.uschluss.focus();
		return;
	}

	if(!DatumCheckSingle(document.umfrageerstellen.uschluss.value,document.umfrageerstellen.uszeit_std.value,document.umfrageerstellen.uszeit_min.value))
	{
    	alert("Bitte geben Sie ein Datum ein, das in der Zukunft liegt!");
    	return;
  	}

    if (document.umfrageerstellen.ris_item_added.value=='')
	{
		alert("Bitte geben Sie mindestens ein Risiko an!");
		return;
	}
    if (document.umfrageerstellen.user_item_added.value=='' || document.umfrageerstellen.user_item_added.value=='0')
	{
		alert("Bitte geben Sie mindestens einen Mitarbeiter als Umfrageteilnehmer an!");
		return;
	}
    if (document.umfrageerstellen.r_item_added.value=='' || document.umfrageerstellen.r_item_added.value=='0')
	{
		alert("Bitte geben Sie einen verantwortlichen Mitarbeiter an!");
		return;
	}

  }

  if(state==1)
    document.getElementById('ustate').value = "gestartet";
  if(state==0)
    document.getElementById('ustate').value = "Entwurf";
  document.umfrageerstellen.submit();
}

function checkMandantSave()
{

	if (document.mandanteraendern.co1_first_name.value=='')
	{
		alert("Bitte geben Sie einen Vornamen an!");
		document.mandanteraendern.co1_first_name.focus();
		return;
	}
	if (document.mandanteraendern.co1_last_name.value=='')
	{
		alert("Bitte geben Sie einen Nachnamen an!");
		document.mandanteraendern.co1_last_name.focus();
		return;
	}
	document.mandanteraendern.submit();
}

function checkMandant()
{
	if (document.mandanterstellen.co1_login.value=='')
	{
		alert("Bitte geben Sie eine E-Mail-Adresse als Benutzernamen an.");
		document.mandanterstellen.co1_login.focus();
		return;
	}
	if (document.mandanterstellen.co1_login.value.indexOf('@') == -1 || document.mandanterstellen.co1_login.value.indexOf('.') == -1)
	{
		alert(unescape("Bitte überprüfen Sie die E-Mail-Adresse."));
		document.mandanterstellen.co1_login.focus();
		return;
	}
	/*if (document.mandanterstellen.co1_pw1.value=='')
	{
		alert("Bitte gebe Sie ein Passwort ein.");
		document.mandanterstellen.co1_pw1.focus();
		return;
	}
	var pw1 = document.mandanterstellen.co1_pw1.value;
	var pw2 = document.mandanterstellen.co1_pw2.value;
	if (pw1.length < 6 || pw1.length > 12 || pw2.length < 6 || pw2.length > 12 )
	{
		alert("Das Passwort muss 6 bis 12 Zeichen haben.");
		document.mandanterstellen.co1_pw1.focus();
		return;
	}
	if (document.mandanterstellen.co1_pw2.value!=document.mandanterstellen.co1_pw1.value)
	{
		alert("Die Passwortwiederholung stimmt nicht mit dem Passwort überein. Bitte überprüfen Sie beide.");
		document.mandanterstellen.co1_pw1.focus();
		return;
	}*/
	if (document.mandanterstellen.co1_first_name.value=='')
	{
		alert("Bitte geben Sie einen Vornamen an!");
		document.mandanterstellen.co1_first_name.focus();
		return;
	}
	if (document.mandanterstellen.co1_last_name.value=='')
	{
		alert("Bitte geben Sie einen Nachnamen an!");
		document.mandanterstellen.co1_last_name.focus();
		return;
	}
    if (document.mandanterstellen.co1_authorcount.value!='0' && document.mandanterstellen.co1_authorcount.value!='1' && document.mandanterstellen.co1_authorcount.value!='2' && document.mandanterstellen.co1_authorcount.value!='3' && document.mandanterstellen.co1_authorcount.value!='4' && document.mandanterstellen.co1_authorcount.value!='5' && document.mandanterstellen.co1_authorcount.value!='6' && document.mandanterstellen.co1_authorcount.value!='7' && document.mandanterstellen.co1_authorcount.value!='8' && document.mandanterstellen.co1_authorcount.value!='9' && document.mandanterstellen.co1_authorcount.value!='10' && document.mandanterstellen.co1_authorcount.value!='11' && document.mandanterstellen.co1_authorcount.value!='12' && document.mandanterstellen.co1_authorcount.value!='13' && document.mandanterstellen.co1_authorcount.value!='14' && document.mandanterstellen.co1_authorcount.value!='15' && document.mandanterstellen.co1_authorcount.value!='16' && document.mandanterstellen.co1_authorcount.value!='17' && document.mandanterstellen.co1_authorcount.value!='18' && document.mandanterstellen.co1_authorcount.value!='19' && document.mandanterstellen.co1_authorcount.value!='20' )
	{
		alert("Bitte geben Sie die Authorenanzahl (0-20) an!");
		document.mandanterstellen.co1_authorcount.focus();
		return;
	}

	if (document.mandanterstellen.v_item_added.value=='')
	{
		alert("Bitte wählen eine bestehende Datensatzvorlage aus.");
		return;
	}

	document.mandanterstellen.submit();
}


function transferBedeutungToInputs(wert1,wert2)
{
  document.getElementById('minBedeutung').value = wert1;
  document.getElementById('maxBedeutung').value = wert2;
}


function setOptionRelevanceToInputFields(selectBox) {

	//var selectedElement = selectBox.options[selectBox.selectedIndex];
	var selectedElement = $('#'+selectBox.id+' option:selected');

	document.getElementById('minBedeutung').value = $(selectedElement).attr('minWert');
	document.getElementById('maxBedeutung').value = $(selectedElement).attr('maxWert');

}



function resetRiscFilterForm()
{
  document.getElementById('bedeutung').selectedIndex = 0;
  document.getElementById('wahrscheinlichkeit').selectedIndex = 0;
  document.getElementById('schadensklasse').selectedIndex = 0;
  if(document.getElementById('notfall'))
    document.getElementById('notfall').selectedIndex = 0;
  if(document.getElementById('hakt'))
    document.getElementById('hakt').selectedIndex = 0;
  document.myfilter.submit();
}

function resetMethodFilterForm()
{
  document.getElementById('notfall').selectedIndex = 0;
  document.myfilter.submit();
}

function resetActivityFilterForm()
{
  document.getElementById('notfall').selectedIndex = 0;
  document.myfilter.submit();
}


function resetFilterForm()
{
  document.getElementById('c_nach').value = "";
  document.getElementById('c_vor').value = "";
  document.getElementById('c_vor_div').innerHTML = "";
  document.getElementById('c_nach_div').innerHTML = "";
  if(document.getElementById('verant'))
    document.getElementById('verant').selectedIndex = 0;
  document.getElementById('dringlichkeit').selectedIndex = 0;
  document.getElementById('status').selectedIndex = 0;
  if(document.getElementById('notfall'))
    document.getElementById('notfall').selectedIndex = 0;
  if(document.getElementById('bearbeitbar'))
    document.getElementById('bearbeitbar').selectedIndex = 0;
  document.myfilter.submit();
}

function ignoreLetters(id,max)
{
  var cont = document.getElementById(id).value;
  var word = document.getElementById(id).value;
  var zahlen = new Array("0","1","2","3","4","5","6","7","8","9");

  for(var i=0;i < cont.length;i++)
  {
    if(!in_array(cont[i],zahlen))
    {
        x = word.replace(cont[i],"");
        document.getElementById(id).value = x;
    }
  }

  if(max > 0)
  {
    if(document.getElementById(id).value > max)
      document.getElementById(id).value = max;
  }
}

function str_count(_s,_m)
{
  var _c = 0;
  for (var i=0;i<_s.length;i++) {
    if (_m == _s.substr(i,_m.length))
    _c++;
  }
  return _c;

}



function onlyDecimal(id)
{
  var cont = document.getElementById(id).value;
  var word = document.getElementById(id).value;
  var zahlen = new Array("0","1","2","3","4","5","6","7","8","9");
  var ioo = word.indexOf(",");

  for(var i=0;i < cont.length;i++)
  {
    if(!in_array(cont[i],zahlen))
    {
          x = word.replace(cont[i],"");
          document.getElementById(id).value = x;
    }
  }
}


function checkEinstellungenForm()
{
  if(document.getElementById('mon_bez_1').value == "" ||
      document.getElementById('mon_bez_2').value == "" ||
      document.getElementById('mon_bez_3').value == "" ||
      document.getElementById('mon_bez_4').value == "" ||
      document.getElementById('mon_bez_5').value == "")
      {
        alert('Bitte tragen Sie alle Benennungen ein!');
        return;
      }

  if(document.getElementById('mon_wert_bis_1').value == "" ||
      document.getElementById('mon_wert_bis_2').value == "" ||
      document.getElementById('mon_wert_bis_3').value == "" ||
      document.getElementById('mon_wert_bis_4').value == "")
      {
        alert('Bitte geben Sie mindestens die \'Von\'-Werte der letzten 4 Bedeutungen an!');
        return;
      }
     var v1 = parseInt(document.getElementById('mon_wert_von_1').value);
     var v2 = parseInt(document.getElementById('mon_wert_von_2').value);
     var v3 = parseInt(document.getElementById('mon_wert_von_3').value);
     var v4 = parseInt(document.getElementById('mon_wert_von_4').value);
     var v5 = parseInt(document.getElementById('mon_wert_von_5').value);
     if(!(v1+1 < v2 && v2+1 < v3 && v3+1 < v4 && v4+1 < v5))
     {
        alert('Bitte stellen Sie sicher, dass die \'Von\'-Werte von oben nach unten zeilenweise um mindestens 2€ steigen!');
        return;
     }

    if(document.getElementById('mon_wert_bis_5').value!="" && (document.getElementById('mon_wert_bis_5').value <= document.getElementById('mon_wert_bis_4').value))
    {
       alert('Bitte stellen Sie sicher, dass die \'Von\'-Werte von oben nach unten zeilenweise um mindestens 2€ steigen!');
       return;
    }

    if(document.getElementById('listlengthRkz').value=="" || document.getElementById('listlengthRkz').value<=10)
    {
       alert('Bitten überprüfen Sie die Listenlänge. Geben Sie bitte einen Wert an, der größer als 10 ist.');
	   document.getElementById('listlengthRkz').focus();
       return;
    }


  document.einst_form.submit();
}

function checkBezeichnungBedeutung(id)
{
  var cont = document.getElementById(id).value;
  var word = document.getElementById(id).value;
  var zahlen = new Array(":",";");

  for(var i=0;i < cont.length;i++)
  {
    if(in_array(cont[i],zahlen))
    {
        x = word.replace(cont[i],"");
        document.getElementById(id).value = x;
    }
  }
}



function checkRiskRelevanceMinValue(id1,id2)
{
  var cont = document.getElementById('mon_wert_von_' + id2).value;
  var word = document.getElementById('mon_wert_von_' + id2).value;
  var zahlen = new Array(0,"1","2","3","4","5","6","7","8","9");

	if(isNaN(cont)) {
		cont = cont.substr(0, cont.length-1);
	}
	
	cont = cont.replace('.', '');
	
	document.getElementById('mon_wert_von_' + id2).value = cont * 1;

  if(document.getElementById('mon_wert_bis_' + id1))
    document.getElementById('mon_wert_bis_' + id1).value = parseInt(document.getElementById('mon_wert_von_' + id2).value) - 1;
}


function DatumCheck (Von,Bis,vStd,vMin,bStd,bMin)
{
  var spl1 = Von.split('.');
  var spl2 = Bis.split('.');



  var vonUs = spl1[1] + "/" + spl1[0] + "/" + spl1[2];
  var bisUs = spl2[1] + "/" + spl2[0] + "/" + spl2[2];

  if(Date.parse(vonUs) < Date.parse(bisUs))
    return true;
  if(Date.parse(vonUs) == Date.parse(bisUs))
  {
    if(vStd + ":" + vMin < bStd + ":" + bMin)
      return true;
  }

  return false;
}

function DatumCheckSingle (Datum,Std,Min)
{
  var spl1 = Datum.split('.');

  var Date2 = new Date();

  var dateUs = spl1[1] + "/" + spl1[0] + "/" + spl1[2];

  if(Date.parse(dateUs + " " + Std + ":" + Min) > Date2.getTime())
    return true;
}

function DatumCheckSingleWithOffset (Datum,Std,Min,Offset)
{
  var spl1 = Datum.split('.');

  var Date2 = new Date();

  var dateUs = spl1[1] + "/" + spl1[0] + "/" + spl1[2];
  
  var dateNc = Date.parse(dateUs + " " + Std + ":" + Min) - (Offset * 60000) + 60000;
  
  /* alert(dateNc + 'vs' + Date2.getTime()); */
  
  if(dateNc > Date2.getTime())
    return true;
}

function openMenu(idn)
{
  if(idn == 'ml')
    var idn2 = 'mgmt';
  else
    var idn2 = 'ml';

  if(document.getElementById(idn).style.display=="none")
  {
    if(document.getElementById(idn + '_link'))
      document.getElementById(idn + '_link').className = "menu_selected";
    if(document.getElementById(idn2 + '_link'))
      document.getElementById(idn2 + '_link').className = "";
    if(document.getElementById(idn + '_icon'))
      document.getElementById(idn + '_icon').src = 'fileadmin/images/treemenu_open.gif';
    if(document.getElementById(idn2 + '_icon'))
      document.getElementById(idn2 + '_icon').src = 'fileadmin/images/treemenu_closed.gif';

    if(document.getElementById(idn))
      document.getElementById(idn).style.display="";
    if(document.getElementById(idn2))
      document.getElementById(idn2).style.display="none";
  }
  else
  {
    if(document.getElementById(idn + '_link'))
      document.getElementById(idn + '_link').className = "";
    if(document.getElementById(idn2 + '_link'))
      document.getElementById(idn2 + '_link').className = "menu_selected";
    if(document.getElementById(idn + '_icon'))
      document.getElementById(idn + '_icon').src = 'fileadmin/images/treemenu_closed.gif';
    if(document.getElementById(idn2 + '_icon'))
      document.getElementById(idn2 + '_icon').src = 'fileadmin/images/treemenu_open.gif';
    if(document.getElementById(idn))
      document.getElementById(idn).style.display="none";
    if(document.getElementById(idn2))
      document.getElementById(idn2).style.display="";
  }
}

function checkRisiko(updateinterface)
{
	if (document.ris_form.risikoname.value=='')
	{
		alert("Bitte geben Sie den Namen des Risikos an!");
		document.ris_form.risikoname.focus();
		return;
	}

  if (updateinterface=='0') {

    if (document.ris_form.fkts_item_added.value=='')
	{
		alert("Bitte ordnen Sie das Risiko mindestens einer Funktion zu!");
		return;
	}
	if (document.ris_form.rkts_item_added.value=='')
	{
		alert("Bitte ordnen Sie das Risiko mindestens einer Risikokategorie zu!");
		return;
	}
	if (document.ris_form.minBedeutung.value!='' || document.ris_form.maxBedeutung.value!='')
	{
	  if(parseInt(document.ris_form.minBedeutung.value) >= parseInt(document.ris_form.maxBedeutung.value) || document.ris_form.minBedeutung.value == '')
	  {
    		alert("Bitte geben Sie eine korrekte monetäre Bedeutung an! Der 'von'-Wert muss kleiner als der 'bis'-Wert sein!");
		    return;
		}
	}

  }

    document.getElementById('newmethodflag').value = '0';
    document.ris_form.submit();
}

function checkRisikoExt()
{
	if (document.ris_form.risikoname.value=='')
	{
		alert("Bitte geben Sie den Namen des Risikos an!");
		document.ris_form.risikoname.focus();
		return;
	}
    if (document.ris_form.fkts_item_added.value=='')
	{
		alert("Bitte ordnen Sie das Risiko mindestens einer Funktion zu!");
		return;
	}
	if (document.ris_form.rkts_item_added.value=='')
	{
		alert("Bitte ordnen Sie das Risiko mindestens einer Risikokategorie zu!");
		return;
	}
    document.getElementById('newmethodflag').value = '1';
    document.ris_form.submit();
}

function checkMassnahme(updateinterface)
{
	if (document.mas_form.massnahmename.value=='')
	{
		alert("Bitte geben Sie den Namen der Maßnahme an!");
		document.mas_form.massnahmename.focus();
		return;
	}
	 document.getElementById('newactivityflag').value = '0';
    document.mas_form.submit();
}

function checkMassnahmeExt()
{
	if (document.mas_form.massnahmename.value=='')
	{
		alert("Bitte geben Sie den Namen der Maßnahme an!");
		document.mas_form.massnahmename.focus();
		return;
	}
	 document.getElementById('newactivityflag').value = '1';
    document.mas_form.submit();
}

function checkAktivitaet(updateinterface)
{
	if (document.akt_form.aname.value=='')
	{
		alert("Bitte geben Sie den Namen der Aktivität an!");
		document.akt_form.aname.focus();
		return;
	}

/* if (updateinterface=='0') { */

	if ((document.akt_form.kontrollfrequenz[0].checked == false) && (document.akt_form.kontrollfrequenz[1].checked == false) && (document.akt_form.kontrollfrequenz[2].checked == false) && (document.akt_form.kontrollfrequenz[3].checked == false) && (document.akt_form.kontrollfrequenz[4].checked == false) && (document.akt_form.kontrollfrequenz[5].checked == false) && (document.akt_form.kontrollfrequenz[6].checked == false) && (document.akt_form.kontrollfrequenz[7].checked == false) && (document.akt_form.kontrollfrequenz[8].checked == false) && (document.akt_form.kontrollfrequenz[9].checked == false))
	{
		alert("Bitte geben Sie die Kontrollfrequenz an!");
		return;
	}

	if (document.akt_form.notfallrelevant.checked == false && (document.akt_form.nextcheck.value=='') || (document.akt_form.nextcheck.value=='00.00.0000'))
	{
		alert("Bitte geben Sie das Datum an, an dem die Kontrollaufgabe zum ersten Mal ausgeführt sein soll!");
		document.akt_form.nextcheck.focus();
		return;
	}

  if (document.akt_form.notfallrelevant.checked == false && ((document.akt_form.nczeit_std.value=='') || (document.akt_form.nczeit_min.value=='')))
	{
		alert("Bitte geben Sie die Uhrzeit (Stunden:Minuten) für 'Nächster Check' ein!");
		document.akt_form.nczeit_std.focus();
		return;
	}

	if(document.akt_form.notfallrelevant.checked == false && !DatumCheckSingleWithOffset(document.akt_form.nextcheck.value,document.akt_form.nczeit_std.value,document.akt_form.nczeit_min.value,90))
	{
    alert("Bitte geben Sie ein Datum inkl. Uhrzeit für 'Nächster Check' ein, das mindestens 1 Stunde und 30 Minuten in der Zukunft liegt!");
    return;
  }

	if (document.akt_form.m_item_added.value=='')
	{
		alert("Bitte geben Sie einen verantwortlichen Mitarbeiter an!");
		return;
	}
	 
	
	if (document.akt_form.notfallrelevant.checked == false && document.akt_form.benachrichtigungszeit_tage.value<'1' && document.akt_form.benachrichtigungszeit_std.value<'1') 
	{
    alert("Bitte geben Sie einen Benachrichtigungszeitpunkt an, der mindestens eine Stunde vor dem Zeitpunkt 'Nächster Check' liegt.");
		document.akt_form.benachrichtigungszeit_std.focus();
		return;
  }
	
	var benachrichtigungsOffset = (document.akt_form.benachrichtigungszeit_tage.value * 24 * 60) + (document.akt_form.benachrichtigungszeit_std.value * 60) + 30;
	if(document.akt_form.notfallrelevant.checked == false && (document.akt_form.benachrichtigungszeit_tage.value >= '1' || document.akt_form.benachrichtigungszeit_std.value >= '1') && document.akt_form.notfallrelevant.checked == false && !DatumCheckSingleWithOffset(document.akt_form.nextcheck.value,document.akt_form.nczeit_std.value,document.akt_form.nczeit_min.value,benachrichtigungsOffset))
	{
    alert("Der Benachrichtigungszeitpunkt muss mindestens 30 Minuten in der Zukunft liegen. Bitte überprüfen Sie Ihre Angaben für 'Nächster Check' bzw. für 'Benachrichtigungszeitpunkt'.");
    return;
  }
	
	
	if (document.akt_form.r_item_added.value=='')
	{
		alert("Bitte geben Sie einen Mitarbeiter für 'Reporting an' an!");
		return;
	}
	if(document.getElementById('abnahmedokument').value.indexOf('\\') > -1)
	{
		alert("Keine Backslashes bei externen Links erlaubt!");
		return;
	}

	if(document.getElementById('zieldokument').value.indexOf('\\') > -1)
	{
		alert("Keine Backslashes bei externen Links erlaubt!");
		return;
	}

/*  } */

    document.akt_form.submit();
}

function checkArtikel(pub)
{
  if (document.artikelbearbeiten.artikel_kurz.value.length > 1000)
	{
		alert("Bitte geben Sie maximal 1000 Zeichen im Kurztext ein!");
		document.artikelbearbeiten.artikel_kurz.focus();
		return;
	}

	if (document.artikelbearbeiten.artikel_titel.value=='')
	{
		alert("Bitte geben Sie den Titel des Artikels an!");
		document.artikelbearbeiten.artikel_titel.focus();
		return;
	}
	if (document.artikelbearbeiten.artikel_datum_von.value=='')
	{
		alert("Bitte geben Sie den Gültigkeit 'von' an!");
		document.artikelbearbeiten.artikel_datum_von.focus();
		return;
	}
	if (document.artikelbearbeiten.artikel_datum_bis.value=='')
	{
		alert("Bitte geben Sie den Gültigkeit 'bis' an!");
		document.artikelbearbeiten.artikel_datum_bis.focus();
		return;
	}
	if (document.artikelbearbeiten.art_item_added.value=='')
	{
		alert("Bitte ordnen Sie mindestens ein Thema zu!");
		return;
	}
  if( !DatumCheck (document.artikelbearbeiten.artikel_datum_von.value, document.artikelbearbeiten.artikel_datum_bis.value,
      document.artikelbearbeiten.azeit_von_std.value,document.artikelbearbeiten.azeit_von_min.value,document.artikelbearbeiten.azeit_bis_std.value,document.artikelbearbeiten.azeit_bis_min.value) )
  {
      alert("Die Gültigkeit 'von' muss vor der Gültigkeit 'bis' liegen!");
      return;
  }
  if(pub == '1')
		confirmToPublishArticle('Wollen Sie den Artikel publizieren?');
	else
		document.artikelbearbeiten.submit();
}

function checkProfil()
{
	if (document.profilbearbeiten.profil_login.value!=document.profilbearbeiten.profil_login_old.value)
	{
		if (document.profilbearbeiten.profil_login.value=='')
		{
			alert("Bitte geben Sie Ihre E-Mail-Adresse als Benutzernamen an.");
			document.profilbearbeiten.profil_login.focus();
			return;
		}
		if (document.profilbearbeiten.profil_login.value.indexOf('@') == -1 || document.profilbearbeiten.profil_login.value.indexOf('.') == -1)
		{
			alert(unescape("Bitte überprüfen Sie Ihre E-Mail-Adresse."));
			document.profilbearbeiten.profil_login.focus();
			return;
		}
	}
	if (document.profilbearbeiten.profil_pw2.value!=document.profilbearbeiten.profil_pw1.value)
	{
		alert("Die Passwortwiederholung stimmt nicht mit dem Passwort überein. Bitte überprüfen Sie beide.");
		document.profilbearbeiten.profil_pw1.focus();
		return;
	}
	if (document.profilbearbeiten.profil_pw1.value=='')
	{
		alert("Bitten geben Sie ein Passwort ein.");
		document.profilbearbeiten.profil_pw1.focus();
		return;
	}
	if (document.profilbearbeiten.profil_first_name.value=='')
	{
		alert("Bitte geben Sie Ihren Vornamen an!");
		document.profilbearbeiten.profil_first_name.focus();
		return;
	}
	if (document.profilbearbeiten.profil_last_name.value=='')
	{
		alert("Bitte geben Sie Ihren Nachnamen an!");
		document.profilbearbeiten.profil_last_name.focus();
		return;
	}
	if(document.getElementById('profil_mobil_1').value != "" || document.getElementById('profil_mobil_2').value != "" || document.getElementById('profil_mobil_3').value != "")
	{
    if(document.getElementById('profil_mobil_1').value == "")
    {
      alert("Bitte geben Sie eine Landesvorwahl (00xx) an!");
  		document.getElementById('profil_mobil_1').focus();
  		return;
    }
    if(document.getElementById('profil_mobil_2').value == "")
    {
      alert("Bitte geben Sie eine Ortsvorwahl an!");
  		document.getElementById('profil_mobil_2').focus();
  		return;
    }
    if(document.getElementById('profil_mobil_3').value == "")
    {
      alert("Bitte geben Sie die Rufnummer an!");
  		document.getElementById('profil_mobil_3').focus();
  		return;
    }
  }
	document.profilbearbeiten.submit();
}



function validateAndSaveRole() {

	if (document.roleForm.roleDescription.value == "") {
		alert("Bitte geben Sie den Namen der Rolle an!");
        document.roleForm.roleDescription.focus();
		return;
	}
	
	if (document.roleForm.fkts_item_added.value == "") {
		alert("Bitte wählen Sie mindestens eine Funktion aus!");        
		return;
	}
	
    document.roleForm.submit();
	
}




function checkNewProfil()
{
	if (document.profilerstellen.profil_login.value=='')
	{
		alert("Bitte geben Sie als Benutzernamen eine gültige E-Mail-Adresse des Mitarbeiters an.");
		document.buchungsanfrage.profil_login.focus();
		return;
	}
	if (document.profilerstellen.profil_login.value.indexOf('@') == -1 || document.profilerstellen.profil_login.value.indexOf('.') == -1)
	{
		alert(unescape("Die E-Mail-Adresse entspricht nicht dem Standard. Bitte überprüfen Sie Ihre Eingabe."));
		document.profilerstellen.profil_login.focus();
		return;
	}
	if (document.profilerstellen.profil_first_name.value=='')
	{
		alert("Bitte geben Sie den Vornamen des Mitarbeiters an!");
		document.profilerstellen.profil_first_name.focus();
		return;
	}
	if (document.profilerstellen.profil_last_name.value=='')
	{
		alert("Bitte geben Sie den Nachnamen des Mitarbeiters an!");
		document.profilerstellen.profil_last_name.focus();
		return;
	}
	document.profilerstellen.submit();
}

function valueIsInString(id,string)
{
  if(string == '')
    return false;

  var strA = string.split(';');
  for(var i=0; i < strA.length; i++)
  {
    if(strA[i] == id)
      return true;
  }
  return false;
}

function checkLettersLeft(id)
{
  var myText = document.getElementById(id).value;

  document.getElementById('counter').value = 1000 - myText.length;

}

  function countit(id,zahl){
    var string = document.getElementById(id).value;
    if (string.length < zahl) memory = string;
    else {
      document.getElementById(id).value = memory.substring(0,999);
    }
    document.getElementById('counter').value = 1000 - string.length;
  }


function toggleSelectAddUni(id,praefix)
{


	  var mass = document.getElementById(praefix + '_item_li').value;
	  var fstring = document.getElementById(praefix + '_item_added').value;
	  if(valueIsInString(id,fstring))
		return;

	if (praefix=="fkt1" || praefix=="rkt1")
	{
	  if(id == fstring || fstring != '')
		return;
	  if(document.getElementById(praefix + '_' + id).className == "normal")
	  {
		document.getElementById(praefix + '_' + id).className = "select";
		var sel = document.getElementById(praefix + '_item_li').value;
		if(sel != '')
		  document.getElementById(praefix + '_' + sel).className = "normal";
		document.getElementById(praefix + '_item_li').value = id;
	  }
	  else
	  {
		document.getElementById(praefix + '_' + id).className = "normal";
		var sel = document.getElementById(praefix + '_item_li').value;
		if(sel != '')
		  document.getElementById(praefix + '_' + sel).className = "select";
		document.getElementById(praefix + '_item_li').value = '';
	  }
	} else {
		try {
			  if(document.getElementById(praefix + '_' + id).className == "normal")
			  {
				document.getElementById(praefix + '_' + id).className = "select";
				var new_mass = addValueToSemiString(id,mass);
				document.getElementById(praefix + '_item_li').value = new_mass;
			  }
			  else
			  {
				document.getElementById(praefix + '_' + id).className = "normal";
				var new_mass = remValueFromSemiString(id,mass);
				document.getElementById(praefix + '_item_li').value = new_mass;
			  }
		} catch(err) {}	  
	}
}




/**	Add an element of a shuttle list to selection (list of already added elements).
 * 	@author Selim Achmerzaev
 *	@param id - id of the element
 * 	@param praefix	
 */
function addSingleElement(id, praefix)
{
	var fstring = document.getElementById(praefix+'_item_added').value;
	if(valueIsInString(id,fstring)) {
		return;
	}

	if (praefix=="fkt1" || praefix=="rkt1")	{
		if(id == fstring || fstring != '') {
			return;
		}
	}	
				
	if(document.getElementById(praefix + '_' + id) == '') {
		return;
	}
	
	fstring = addValueToSemiString(id, fstring);
	document.getElementById('added_'+ praefix + '_' + id).style.display="";
	document.getElementById('rem_'+ praefix + '_' + id).className = "normal";
	document.getElementById(praefix + '_' + id).className = "selected";
	document.getElementById(praefix + '_item_added').value = fstring;
	document.getElementById(praefix + '_item_li').value = '';		
	

	if(document.getElementById(praefix + '_filterArray') == null) {
		return;
	}	
		
	var elementTreeArray = jQuery.parseJSON(document.getElementById(praefix + '_filterArray').value);		
	for(var i=0; i < elementTreeArray.length; i++) {
		var treeElementId = elementTreeArray[i][TREE_ARRAY_ELEMENT_ID];
		var treeElementParentId = elementTreeArray[i][TREE_ARRAY_ELEMENT_PARENT_ID];
		if(treeElementParentId == id) {
			if(!valueIsInString(treeElementId, fstring)) {
				addSingleElement(treeElementId, praefix);
			}			
		}	
	}	
		
}






/**	Remove an element of a shuttle list from the list of selected elements.
 * 	@author Selim Achmerzaev
 *	@param id - id of the element
 * 	@param praefix	
 */
function removeSingleElement(id, praefix) {

  
    var fstring = document.getElementById(praefix + '_item_added').value;
  	if(!valueIsInString(id,fstring)) {
		return;
	}
			
	if(document.getElementById(praefix + '_' + id) == '') {
		return;
	}	

    fstring = remValueFromSemiString(id, fstring);	
    document.getElementById(praefix + '_' + id).className = "normal";
    document.getElementById('added_' + praefix + '_' + id).style.display="none";
	document.getElementById(praefix + '_item_added').value = fstring;
	document.getElementById(praefix + '_item_re').value = '';
	
	if(document.getElementById(praefix + '_filterArray') == null) {
		return;
	}
	var elementTreeArray = jQuery.parseJSON(document.getElementById(praefix + '_filterArray').value);	
	
	for(var i=0; i < elementTreeArray.length; i++) {
		var treeElementId = elementTreeArray[i][TREE_ARRAY_ELEMENT_ID];
		var treeElementParentId = elementTreeArray[i][TREE_ARRAY_ELEMENT_PARENT_ID];
		if(treeElementParentId == id) {
			if(valueIsInString(treeElementId, fstring)) {
				removeSingleElement(treeElementId, praefix);
			}			
		}	
	}


}


/** Add all Elements of a shuttle list
* 	@author Selim Achmerzaev
 *  @param praefix
 *	@param allElements - List/Array of all Elements
*/
function addAllElements( praefix, allElements ) {

	for( var i=0; i < allElements.length; i++) {
		addSingleElement(allElements[i][TREE_ARRAY_ELEMENT_ID], praefix);
	}	
}

/** Remove all Elements from shuttle list
 * 	@author Selim Achmerzaev
 *  @param praefix
 *	@param allElements - List/Array of all Elements
*/
function removeAllElements( praefix, allElements ) {

	for( var i=0; i < allElements.length; i++) {
		removeSingleElement(allElements[i][TREE_ARRAY_ELEMENT_ID], praefix);
	}	
}

/** Add all Elements from a given list of elements to selection
 * 	@author Selim Achmerzaev
 *  @param praefix
 *	@param allElements - List/Array of all Elements
*/
function addAllElementsFrom( allElements, praefix ) {

	for( var i=0; i < allElements.length; i++) {
		addSingleElement(allElements[i].id.split('_')[1], praefix);
	}

}

/** Remove all Elements of a given list of elements from the selection
 * 	@author Selim Achmerzaev
 *  @param praefix
 *	@param allElements - List/Array of all Elements
*/
function removeAllElementsFrom( allElements, praefix ) {

	for( var i=0; i < allElements.length; i++) {
		removeSingleElement(allElements[i].id.split('_')[1], praefix);
	}

}


/** Adds only one element to the selection
  * @author Selim Achmerzaev */
function addElementToSingleMultiSelectBox(id, praefix) {

	var fstring = document.getElementById(praefix + '_item_added').value;
	if(id == fstring || fstring != '') {
		return;
	}
	
    var sel = document.getElementById(praefix + '_item_li').value;
    if(sel != '') {
		document.getElementById(praefix + '_add_' + sel).className = "normal";
	}	
    document.getElementById(praefix + '_item_li').value = id;
	document.getElementById(praefix + '_add_' + id).className = 'selected';		
	addItem2(praefix);	
}

/** Removes an element from the single element selection box
  * @author Selim Achmerzaev */
function removeElementFromSingleMultiSelectBox(id, praefix) {

	var elem = document.getElementById(praefix + '_item_re').value;
	var new_elem = addValueToSemiString(id, elem);
    document.getElementById(praefix + '_item_re').value = new_elem;
	
	removeItem2(praefix);
}










function toggleSelectAdd(id)
{
  var mass = document.getElementById('item_li').value;
  var fstring = document.getElementById('item_added').value;
  if(valueIsInString(id,fstring))
    return;

  if(document.getElementById('add_' + id).className == "normal")
  {
    document.getElementById('add_' + id).className = "select";
    var new_mass = addValueToSemiString(id,mass);
    document.getElementById('item_li').value = new_mass;
  }
  else
  {
    document.getElementById('add_' + id).className = "normal";
    var new_mass = remValueFromSemiString(id,mass);
    document.getElementById('item_li').value = new_mass;
  }
}

function toggleSelectAdd2(id,pre)
{
  var fstring = document.getElementById(pre + '_item_added').value;
  if(id == fstring || fstring != '')
    return;

  if(document.getElementById(pre + '_add_' + id).className == "normal")
  {
    document.getElementById(pre + '_add_' + id).className = "select";
    var sel = document.getElementById(pre + '_item_li').value;
    if(sel != '')
      document.getElementById(pre + '_add_' + sel).className = "normal";
    document.getElementById(pre + '_item_li').value = id;
  }
  else
  {
	var sel = document.getElementById(pre + '_item_li').value;
	if(sel != '' && sel == id){
		document.getElementById(pre + '_add_' + id).className = "normal";
		document.getElementById(pre + '_item_li').value = '';
	}
    /*document.getElementById(pre + '_add_' + id).className = "normal";
    
    if(sel != '')
      document.getElementById(pre + '_add_' + sel).className = "select";
    document.getElementById(pre + '_item_li').value = '';*/
  }
}

function toggleSelectRemUni(id,praefix)
{
  var mass = document.getElementById(praefix + '_item_re').value;

  if(document.getElementById('rem_' + praefix + '_' + id).className == "normal")
  {
    document.getElementById('rem_' + praefix + '_'  + id).className = "selected";
    var new_mass = addValueToSemiString(id,mass);
    document.getElementById(praefix + '_item_re').value = new_mass;
  }
  else
  {
    document.getElementById('rem_' + praefix + '_'  + id).className = "normal";
    var new_mass = remValueFromSemiString(id,mass);
    document.getElementById(praefix + '_item_re').value = new_mass;
  }
}

function toggleSelectRem(id)
{
  var mass = document.getElementById('item_re').value;

  if(document.getElementById('rem_' + id).className == "normal")
  {
    document.getElementById('rem_' + id).className = "selected";
    var new_mass = addValueToSemiString(id,mass);
    document.getElementById('item_re').value = new_mass;
  }
  else
  {
    document.getElementById('rem_' + id).className = "normal";
    var new_mass = remValueFromSemiString(id,mass);
    document.getElementById('item_re').value = new_mass;
  }
}

function toggleSelectRem2(id,pre)
{
  var mass = document.getElementById(pre + '_item_re').value;

  if(document.getElementById(pre + '_rem_' + id).className == "normal")
  {
    document.getElementById(pre + '_rem_' + id).className = "selected";
    var new_mass = addValueToSemiString(id,mass);
    document.getElementById(pre + '_item_re').value = new_mass;
  }
  else
  {
    document.getElementById(pre + '_rem_' + id).className = "normal";
    var new_mass = remValueFromSemiString(id,mass);
    document.getElementById(pre + '_item_re').value = new_mass;
  }
}

function addItemUni(praefix)
{

  var massNew = document.getElementById(praefix + '_item_li').value;
    
  if(massNew == '')
    return;

  var massNewA = massNew.split(';');
  var fstring = document.getElementById(praefix + '_item_added').value;
  for(var i=0; i < massNewA.length; i++)
  {
	addSingleElement(massNewA[i], praefix);
    //fstring = addValueToSemiString(massNewA[i],fstring);
    //document.getElementById('added_'+ praefix + '_' + massNewA[i]).style.display="";
	//document.getElementById(praefix + '_' + massNewA[i]).className = "selected";
  }
  //document.getElementById(praefix + '_item_added').value = fstring;
  //document.getElementById(praefix + '_item_li').value = '';

}



function addSingleElementWithoutChildnodes(praefix)
{

  var massNew = document.getElementById(praefix + '_item_li').value;
    
  if(massNew == '')
    return;

  var massNewA = massNew.split(';');
  var fstring = document.getElementById(praefix + '_item_added').value;
  for(var i=0; i < massNewA.length; i++)
  {
	
    fstring = addValueToSemiString(massNewA[i],fstring);
    document.getElementById('added_'+ praefix + '_' + massNewA[i]).style.display="";
	document.getElementById(praefix + '_' + massNewA[i]).className = "selected";
  }
  document.getElementById(praefix + '_item_added').value = fstring;
  document.getElementById(praefix + '_item_li').value = '';

}



function removeItemUni(praefix)
{
  massNew = document.getElementById(praefix + '_item_re').value;
  var massNewA = massNew.split(';');

  if(massNewA == '')
    return;

  var fstring = document.getElementById(praefix + '_item_added').value;
  for(var i=0; i < massNewA.length; i++)
  {
    /*fstring = remValueFromSemiString(massNewA[i],fstring);
    document.getElementById(praefix + '_' + massNewA[i]).className = "normal";
    document.getElementById('rem_' + praefix + '_' + massNewA[i]).className = "normal";
    document.getElementById('added_' + praefix + '_' + massNewA[i]).style.display="none";*/
	removeSingleElement(massNewA[i], praefix);
  }
  //document.getElementById(praefix + '_item_added').value = fstring;
  //document.getElementById(praefix + '_item_re').value = '';
}


function addItem()
{
  var massNew = document.getElementById('item_li').value;

  if(massNew == '')
    return;

  var massNewA = massNew.split(';');
  var fstring = document.getElementById('item_added').value;
  for(var i=0; i < massNewA.length; i++)
  {
    fstring = addValueToSemiString(massNewA[i],fstring);
    document.getElementById('added_' + massNewA[i]).style.display="";
  }
  document.getElementById('item_added').value = fstring;
  document.getElementById('item_li').value = '';
}

function addItem2(pre)
{
  var massNew = document.getElementById(pre + '_item_li').value;

  if(massNew == '')
    return;

  var massNewA = massNew.split(';');
  var fstring = document.getElementById(pre + '_item_added').value;
  for(var i=0; i < massNewA.length; i++)
  {
    fstring = addValueToSemiString(massNewA[i],fstring);
    document.getElementById(pre + '_added_' + massNewA[i]).style.display="";
  }
  document.getElementById(pre + '_item_added').value = fstring;
  document.getElementById(pre + '_item_li').value = '';
}




function removeItem()
{
  massNew = document.getElementById('item_re').value;
  var massNewA = massNew.split(';');

  if(massNewA == '')
    return;

  var fstring = document.getElementById('item_added').value;
  for(var i=0; i < massNewA.length; i++)
  {
    fstring = remValueFromSemiString(massNewA[i],fstring);
    document.getElementById('add_' + massNewA[i]).className = "normal";
    document.getElementById('rem_' + massNewA[i]).className = "normal";
    document.getElementById('added_' + massNewA[i]).style.display="none";
  }
  document.getElementById('item_added').value = fstring;
  document.getElementById('item_re').value = '';
}

function removeItem2(pre)
{
  massNew = document.getElementById(pre + '_item_re').value;
  var massNewA = massNew.split(';');

  if(massNewA == '')
    return;

  var fstring = document.getElementById(pre + '_item_added').value;
  for(var i=0; i < massNewA.length; i++)
  {
    fstring = remValueFromSemiString(massNewA[i],fstring);
    document.getElementById(pre + '_add_' + massNewA[i]).className = "normal";
    document.getElementById(pre + '_rem_' + massNewA[i]).className = "normal";
    document.getElementById(pre + '_added_' + massNewA[i]).style.display="none";
  }
  document.getElementById(pre + '_item_added').value = fstring;
  document.getElementById(pre + '_item_re').value = '';
}

function addValueToSemiString(newStr,string)
{
  if(string != '')
  {
    strA = string.split(';');
    if(in_array(newStr,strA))
      return string;
  }

  if(string == '')
    string = newStr;
  else
    string += ';' + newStr;

  return string;
}

function in_array(needle, haystack, strict) {

    var found = false, key, strict = !!strict;

    for (key in haystack) {
        if ((strict && haystack[key] === needle) || (!strict && haystack[key] == needle)) {
            found = true;
            break;
        }
    }

    return found;
}

function remValueFromSemiString(string, oldString)
{
  if(oldString == '')
    return oldString;

  var oArray = oldString.split(';');
  var newStr ='';
  for(var i=0;i < oArray.length; i++)
  {
    if(oArray[i] != string)
      newStr = addValueToSemiString(oArray[i],newStr);
  }
  return newStr;
}

function copyRisc()
{
  Check = confirm('Wollen Sie ein neues Risiko durch Kopieren erstellen?');
  document.getElementById('action').value = 'new';
  document.risiko_form.submit();
}

function selectLoginInputField(fld) {
	if (fld.value == "Benutzername" || fld.value == "Passwort") {
		fld.select();
	}
}

function confirmToLink(msg,url)
{
  Check = confirm(msg);
  if (Check == true)
    location.href = url;
}

function confirmToPublishArticle(msg)
{
  Check = confirm(msg);
  if (Check == true)
    	document.artikelbearbeiten.submit();
}


function clearFields() {
	if (document.schnellsuche.bundesland.value == "Bundesland") document.schnellsuche.bundesland.value = "";
	if (document.schnellsuche.title.value == "Name des Schlosses") document.schnellsuche.title.value = "";
}

function toggle(id)
{
  var arr = id.split(',');
  for(var i=0;i < arr.length;i++)
  {

     var open = arr[i] + '_open';
     var close = arr[i] + '_close';
     var div_1 = arr[i] + '_1';
     var div_2 = arr[i] + '_2';

    if(document.getElementById(div_1))
    {
      if(document.getElementById(div_1).style.display == "")
        document.getElementById(div_1).style.display = "none";
      else
        document.getElementById(div_1).style.display = "";
    }
    if(document.getElementById(div_2))
    {
      if(document.getElementById(div_2).style.display == "")
        document.getElementById(div_2).style.display = "none";
      else
        document.getElementById(div_2).style.display = "";
    }

    if(i==0)
    {
      if(document.getElementById(open))
      {
        if(document.getElementById(open).style.display == "")
          document.getElementById(open).style.display = "none";
        else
          document.getElementById(open).style.display = "";
      }
      if(document.getElementById(close))
      {
        if(document.getElementById(close).style.display == "")
          document.getElementById(close).style.display = "none";
        else
          document.getElementById(close).style.display = "";
      }
    }
  }
}





function treeCloseOpen(id)
{
  if(document.getElementById(id))
  {
    if(document.getElementById(id).style.display == "block")
      document.getElementById(id).style.display = "none";
    else
        document.getElementById(id).style.display = "block";
  }
}

function treeCloseOpenImg(id,idImg)
{
  if(document.getElementById(id))
  {
    if(document.getElementById(id).style.display == "block") {
        document.getElementById(id).style.display = "none";
		document.getElementById(idImg).src = "fileadmin/images/treemenu_closed.gif"; }
    else {
        document.getElementById(id).style.display = "block";
		document.getElementById(idImg).src = "fileadmin/images/treemenu_open.gif"; }
  }
}

function treeFilterRisks(ids)
{
	if(ids != "") {
        var showRisks = ids.split("__");
			for (var risk in showRisks) {
            	document.getElementById(risk).style.display = "none";
			}
	}
}

//Javascript name: My Date Time Picker
//Date created: 16-Nov-2003 23:19
//Scripter: TengYong Ng
//Website: http://www.rainforestnet.com
//Copyright (c) 2003 TengYong Ng
//FileName: DateTimePicker.js
//Version: 0.8
//Contact: contact@rainforestnet.com
// Note: Permission given to use this script in ANY kind of applications if
//       header lines are left unchanged.

//Global variables
var winCal;
var dtToday=new Date();
var Cal;
var docCal;
var MonthName=["Januar", "Februar", "März", "April", "Mai", "Juni","Juli",
	"August", "September", "Oktober", "November", "Dezember"];
var WeekDayName=["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"];
var exDateTime;//Existing Date and Time

//Configurable parameters
var cnTop="200";//top coordinate of calendar window.
var cnLeft="500";//left coordinate of calendar window
var WindowTitle ="Datum";//Date Time Picker title.
var WeekChar=2;//number of character for week day. if 2 then Mo,Tu,We. if 3 then Mon,Tue,Wed.
var CellWidth=20;//Width of day cell.
var DateSeparator=".";//Date Separator, you can change it to "/" if you want.
var TimeMode=24;//default TimeMode value. 12 or 24

var ShowLongMonth=true;//Show long month name in Calendar header. example: "January".
var ShowMonthYear=false;//Show Month and Year in Calendar header.
var MonthYearColor="#000000";//Font Color of Month and Year in Calendar header.
var WeekHeadColor="#ffffff";//Background Color in Week header.
var SundayColor="#ffffff";//Background color of Sunday.
var SaturdayColor="#ffffff";//Background color of Saturday.
var WeekDayColor="white";//Background color of weekdays.
var FontColor="000000";//color of font in Calendar day cell.
var TodayColor="#ffffff";//Background color of today.
var SelDateColor="#ffffff";//Backgrond color of selected date in textbox.
var YrSelColor="#000000";//color of font of Year selector.
var ThemeBg="";//Background image of Calendar window.
//end Configurable parameters
//end Global variable

function NewCal(pCtrl,pFormat,pShowTime,pTimeMode)
{
	Cal=new Calendar(dtToday);
	if ((pShowTime!=null) && (pShowTime))
	{
		Cal.ShowTime=true;
		if ((pTimeMode!=null) &&((pTimeMode=='12')||(pTimeMode=='24')))
		{
			TimeMode=pTimeMode;
		}
	}
	if (pCtrl!=null)
		Cal.Ctrl=pCtrl;
	if (pFormat!=null)
		Cal.Format=pFormat.toUpperCase();

	exDateTime=document.getElementById(pCtrl).value;
	if (exDateTime!="")//Parse Date String
	{
		var Sp1;//Index of Date Separator 1
		var Sp2;//Index of Date Separator 2
		var tSp1;//Index of Time Separator 1
		var tSp1;//Index of Time Separator 2
		var strMonth;
		var strDate;
		var strYear;
		var intMonth;
		var YearPattern;
		var strHour;
		var strMinute;
		var strSecond;
		//parse month
		Sp1=exDateTime.indexOf(DateSeparator,0)
		Sp2=exDateTime.indexOf(DateSeparator,(parseInt(Sp1)+1));

		if ((Cal.Format.toUpperCase()=="DDMMYYYY") || (Cal.Format.toUpperCase()=="DDMMMYYYY"))
		{
			strMonth=exDateTime.substring(Sp1+1,Sp2);
			strDate=exDateTime.substring(0,Sp1);
		}
		else if ((Cal.Format.toUpperCase()=="MMDDYYYY") || (Cal.Format.toUpperCase()=="MMMDDYYYY"))
		{
			strMonth=exDateTime.substring(0,Sp1);
			strDate=exDateTime.substring(Sp1+1,Sp2);
		}
		if (isNaN(strMonth))
			intMonth=Cal.GetMonthIndex(strMonth);
		else
			intMonth=parseInt(strMonth,10)-1;
		if ((parseInt(intMonth,10)>=0) && (parseInt(intMonth,10)<12))
			Cal.Month=intMonth;
		//end parse month
		//parse Date
		if ((parseInt(strDate,10)<=Cal.GetMonDays()) && (parseInt(strDate,10)>=1))
			Cal.Date=strDate;
		//end parse Date
		//parse year
		strYear=exDateTime.substring(Sp2+1,Sp2+5);
		YearPattern=/^\d{4}$/;
		if (YearPattern.test(strYear))
			Cal.Year=parseInt(strYear,10);
		//end parse year
		//parse time
		if (Cal.ShowTime==true)
		{
			tSp1=exDateTime.indexOf(":",0)
			tSp2=exDateTime.indexOf(":",(parseInt(tSp1)+1));
			strHour=exDateTime.substring(tSp1,(tSp1)-2);
			Cal.SetHour(strHour);
			strMinute=exDateTime.substring(tSp1+1,tSp2);
			Cal.SetMinute(strMinute);
			strSecond=exDateTime.substring(tSp2+1,tSp2+3);
			Cal.SetSecond(strSecond);
		}
	}
	winCal=window.open("","DateTimePicker","width=193,height=220,scrollbars=no,top="+cnTop+",left="+cnLeft);
	docCal=winCal.document;
	RenderCal();
}

function RenderCal()
{
	var vCalHeader;
	var vCalData;
	var vCalTime;
	var i;
	var j;
	var SelectStr;
	var vDayCount=0;
	var vFirstDay;

	docCal.open();
	docCal.writeln("<html><head><title>"+WindowTitle+"</title>");
	docCal.writeln("<script>var winMain=window.opener;</script>");
	docCal.writeln("</head><body style=\"background:#d9d9d9;\" link="+FontColor+" vlink="+FontColor+" style=\"padding:3px;margin:0px;\"><form name='Calendar'>");

	vCalHeader="<table cellpadding=\"0\" cellspacing=\"0\" width=\"180\" style=\"background:#fff;border:1px solid #7d7e80;\"><tr><td><table border=\"0\" cellpadding=\"0\" cellspacing=\"0\" width='100%' align=\"center\" valign=\"top\" style=\"margin:3px;\">\n";
	//Month Selector
	vCalHeader+="<tr>\n<td colspan='7'><table border=0 cellpadding=0 cellspacing=0><tr><td align='left' style=\"width:80px;\">\n";
	vCalHeader+="<select name=\"MonthSelector\" style=\"width:80px;background:#dedede;border: 1px solid #838383;\" onChange=\"javascript:winMain.Cal.SwitchMth(this.selectedIndex);winMain.RenderCal();\">\n";
	for (i=0;i<12;i++)
	{
		if (i==Cal.Month)
			SelectStr="Selected";
		else
			SelectStr="";
		vCalHeader+="<option "+SelectStr+" value >"+MonthName[i]+"\n";
	}
	vCalHeader+="</select></td>";
	//Year selector
	vCalHeader+="\n<td align='right'><td width=\"10\"></td><td style=\"width:80px;\"><a href=\"javascript:winMain.Cal.DecYear();winMain.RenderCal()\" style=\"text-decoration:none;\"><b><font color=\""+YrSelColor+"\"><</font></b></a><font face=\"Verdana\" color=\""+YrSelColor+"\" size=2><b> "+Cal.Year+" </b></font><a href=\"javascript:winMain.Cal.IncYear();winMain.RenderCal()\" style=\"text-decoration:none;\"><b><font color=\""+YrSelColor+"\">></font></b></a></td></tr></table></td>\n";
	vCalHeader+="</tr></table>";
	//Calendar header shows Month and Year
	if (ShowMonthYear)
		vCalHeader+="<table><tr><td colspan='7'><font face='Verdana' size='2' align='center' color='"+MonthYearColor+"'><b>"+Cal.GetMonthName(ShowLongMonth)+" "+Cal.Year+"</b></font></td></tr></table>\n";
	//Week day header
	vCalHeader+="<table style=\"margin-top:5px;\" cellpadding=\"0\" cellspacing=\"0\" class=\"calender\" border=\"0\"><tr bgcolor="+WeekHeadColor+" style=\"font-weight:bold;\">";
	for (i=0;i<7;i++)
	{
		vCalHeader+="<td align='center' width='25' style='height:25px;'><font face='Verdana' size='2'>"+WeekDayName[i].substr(0,WeekChar)+"</font></td>";
	}
	vCalHeader+="</tr>";
	docCal.write(vCalHeader);

	//Calendar detail
	CalDate=new Date(Cal.Year,Cal.Month);
	CalDate.setDate(1);
	vFirstDay=CalDate.getDay();
	vCalData="<tr>";
	for (i=0;i<vFirstDay;i++)
	{
		vCalData=vCalData+GenCell();
		vDayCount=vDayCount+1;
	}
	for (j=1;j<=Cal.GetMonDays();j++)
	{
		var strCell;
		vDayCount=vDayCount+1;
		if ((j==dtToday.getDate())&&(Cal.Month==dtToday.getMonth())&&(Cal.Year==dtToday.getFullYear()))
			strCell=GenCell(j,true,TodayColor);//Highlight today's date
		else
		{
			if (j==Cal.Date)
			{
				strCell=GenCell(j,true,SelDateColor);
			}
			else
			{
				if (vDayCount%7==0)
					strCell=GenCell(j,false,SaturdayColor);
				else if ((vDayCount+6)%7==0)
					strCell=GenCell(j,false,SundayColor);
				else
					strCell=GenCell(j,null,WeekDayColor);
			}
		}
		vCalData=vCalData+strCell;

		if((vDayCount%7==0)&&(j<Cal.GetMonDays()))
		{
			vCalData=vCalData+"</tr>\n<tr>";
		}

	}

	docCal.writeln(vCalData);

	//Time picker

	if (Cal.ShowTime)

	{

		var showHour;

		showHour=Cal.getShowHour();

		vCalTime="<tr>\n<td colspan='7' align='center'>";

		vCalTime+="<input type='text' name='hour' maxlength=2 size=1 style=\"WIDTH: 22px\" value="+showHour+" onchange=\"javascript:winMain.Cal.SetHour(this.value)\">";

		vCalTime+=" : ";

		vCalTime+="<input type='text' name='minute' maxlength=2 size=1 style=\"WIDTH: 22px\" value="+Cal.Minutes+" onchange=\"javascript:winMain.Cal.SetMinute(this.value)\">";

		vCalTime+=" : ";

		vCalTime+="<input type='text' name='second' maxlength=2 size=1 style=\"WIDTH: 22px\" value="+Cal.Seconds+" onchange=\"javascript:winMain.Cal.SetSecond(this.value)\">";

		if (TimeMode==12)

		{

			var SelectAm =(parseInt(Cal.Hours,10)<12)? "Selected":"";

			var SelectPm =(parseInt(Cal.Hours,10)>=12)? "Selected":"";



			vCalTime+="<select name=\"ampm\" onchange=\"javascript:winMain.Cal.SetAmPm(this.options[this.selectedIndex].value);\">";

			vCalTime+="<option "+SelectAm+" value=\"AM\">AM</option>";

			vCalTime+="<option "+SelectPm+" value=\"PM\">PM<option>";

			vCalTime+="</select>";

		}

		vCalTime+="\n</td>\n</tr>";

		docCal.write(vCalTime);

	}

	//end time picker

	docCal.writeln("\n</table></td></tr></table>");

	docCal.writeln("</form></body></html>");

	docCal.close();

}



function GenCell(pValue,pHighLight,pColor)//Generate table cell with value

{

	var PValue;

	var PCellStr;

	var vColor;

	var vHLstr1;//HighLight string

	var vHlstr2;

	var vTimeStr;



	if (pValue==null)

		PValue="";

	else

		PValue=pValue;



	if (pColor!=null)

		vColor="bgcolor=\""+pColor+"\"";

	else

		vColor="";

	if ((pHighLight!=null)&&(pHighLight))

		{vHLstr1="color='red'><b>";vHLstr2="</b>";}

	else

		{vHLstr1=">";vHLstr2="";}



	if (Cal.ShowTime)

	{

		vTimeStr="winMain.document.getElementById('"+Cal.Ctrl+"').value+=' '+"+"winMain.Cal.getShowHour()"+"+':'+"+"winMain.Cal.Minutes"+"+':'+"+"winMain.Cal.Seconds";

		if (TimeMode==12)

			vTimeStr+="+' '+winMain.Cal.AMorPM";

	}

	else

		vTimeStr="";

	PCellStr="<td "+vColor+" width="+CellWidth+" style=\"height:25px;\" align='center'><font face='verdana' size='2'"+vHLstr1+"<a href=\"javascript:winMain.document.getElementById('"+Cal.Ctrl+"_div').innerHTML='"+Cal.FormatDate(PValue)+"';"+vTimeStr+"winMain.document.getElementById('"+Cal.Ctrl+"').value='"+Cal.FormatDate(PValue)+"';window.close();\" style=\"text-decoration:none;\">"+PValue+"</a>"+vHLstr2+"</font></td>";

	return PCellStr;

}



function Calendar(pDate,pCtrl)

{

	//Properties

	this.Date=pDate.getDate();//selected date

	this.Month=pDate.getMonth();//selected month number

	this.Year=pDate.getFullYear();//selected year in 4 digits

	this.Hours=pDate.getHours();



	if (pDate.getMinutes()<10)

		this.Minutes="0"+pDate.getMinutes();

	else

		this.Minutes=pDate.getMinutes();



	if (pDate.getSeconds()<10)

		this.Seconds="0"+pDate.getSeconds();

	else

		this.Seconds=pDate.getSeconds();



	this.MyWindow=winCal;

	this.Ctrl=pCtrl;

	this.Format="ddMMyyyy";

	this.Separator=DateSeparator;

	this.ShowTime=false;

	if (pDate.getHours()<12)

		this.AMorPM="AM";

	else

		this.AMorPM="PM";

}



function GetMonthIndex(shortMonthName)

{

	for (i=0;i<12;i++)

	{

		if (MonthName[i].substring(0,3).toUpperCase()==shortMonthName.toUpperCase())

		{	return i;}

	}

}

Calendar.prototype.GetMonthIndex=GetMonthIndex;



function IncYear()

{	Cal.Year++;}

Calendar.prototype.IncYear=IncYear;



function DecYear()

{	Cal.Year--;}

Calendar.prototype.DecYear=DecYear;



function SwitchMth(intMth)

{	Cal.Month=intMth;}

Calendar.prototype.SwitchMth=SwitchMth;



function SetHour(intHour)

{

	var MaxHour;

	var MinHour;

	if (TimeMode==24)

	{	MaxHour=23;MinHour=0}

	else if (TimeMode==12)

	{	MaxHour=12;MinHour=1}

	else

		alert("TimeMode can only be 12 or 24");

	var HourExp=new RegExp("^\\d\\d$");

	if (HourExp.test(intHour) && (parseInt(intHour,10)<=MaxHour) && (parseInt(intHour,10)>=MinHour))

	{

		if ((TimeMode==12) && (Cal.AMorPM=="PM"))

		{

			if (parseInt(intHour,10)==12)

				Cal.Hours=12;

			else

				Cal.Hours=parseInt(intHour,10)+12;

		}

		else if ((TimeMode==12) && (Cal.AMorPM=="AM"))

		{

			if (intHour==12)

				intHour-=12;

			Cal.Hours=parseInt(intHour,10);

		}

		else if (TimeMode==24)

			Cal.Hours=parseInt(intHour,10);

	}

}

Calendar.prototype.SetHour=SetHour;



function SetMinute(intMin)

{

	var MinExp=new RegExp("^\\d\\d$");

	if (MinExp.test(intMin) && (intMin<60))

		Cal.Minutes=intMin;

}

Calendar.prototype.SetMinute=SetMinute;



function SetSecond(intSec)

{

	var SecExp=new RegExp("^\\d\\d$");

	if (SecExp.test(intSec) && (intSec<60))

		Cal.Seconds=intSec;

}

Calendar.prototype.SetSecond=SetSecond;



function SetAmPm(pvalue)

{

	this.AMorPM=pvalue;

	if (pvalue=="PM")

	{

		this.Hours=(parseInt(this.Hours,10))+12;

		if (this.Hours==24)

			this.Hours=12;

	}

	else if (pvalue=="AM")

		this.Hours-=12;

}

Calendar.prototype.SetAmPm=SetAmPm;



function getShowHour()

{

	var finalHour;

    if (TimeMode==12)

    {

    	if (parseInt(this.Hours,10)==0)

		{

			this.AMorPM="AM";

			finalHour=parseInt(this.Hours,10)+12;

		}

		else if (parseInt(this.Hours,10)==12)

		{

			this.AMorPM="PM";

			finalHour=12;

		}

		else if (this.Hours>12)

		{

			this.AMorPM="PM";

			if ((this.Hours-12)<10)

				finalHour="0"+((parseInt(this.Hours,10))-12);

			else

				finalHour=parseInt(this.Hours,10)-12;

		}

		else

		{

			this.AMorPM="AM";

			if (this.Hours<10)

				finalHour="0"+parseInt(this.Hours,10);

			else

				finalHour=this.Hours;

		}

	}

	else if (TimeMode==24)

	{

		if (this.Hours<10)

			finalHour="0"+parseInt(this.Hours,10);

		else

			finalHour=this.Hours;

	}

	return finalHour;

}

Calendar.prototype.getShowHour=getShowHour;



function GetMonthName(IsLong)

{

	var Month=MonthName[this.Month];

	if (IsLong)

		return Month;

	else

		return Month.substr(0,3);

}

Calendar.prototype.GetMonthName=GetMonthName;



function GetMonDays()//Get number of days in a month

{

	var DaysInMonth=[31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];

	if (this.IsLeapYear())

	{

		DaysInMonth[1]=29;

	}

	return DaysInMonth[this.Month];

}

Calendar.prototype.GetMonDays=GetMonDays;



function IsLeapYear()

{

	if ((this.Year%4)==0)

	{

		if ((this.Year%100==0) && (this.Year%400)!=0)

		{

			return false;

		}

		else

		{

			return true;

		}

	}

	else

	{

		return false;

	}

}

Calendar.prototype.IsLeapYear=IsLeapYear;



function FormatDate(pDate)

{

	if (this.Format.toUpperCase()=="DDMMYYYY")

		return (pDate+DateSeparator+(this.Month+1)+DateSeparator+this.Year);

	else if (this.Format.toUpperCase()=="DDMMMYYYY")

		return (pDate+DateSeparator+this.GetMonthName(false)+DateSeparator+this.Year);

	else if (this.Format.toUpperCase()=="MMDDYYYY")

		return ((this.Month+1)+DateSeparator+pDate+DateSeparator+this.Year);

	else if (this.Format.toUpperCase()=="MMMDDYYYY")

		return (this.GetMonthName(false)+DateSeparator+pDate+DateSeparator+this.Year);

}

Calendar.prototype.FormatDate=FormatDate;

function putDateInDiv()
{
  alert('test');
}

