	/***SelectDayFunction***/
	var KalenderMonat;
	var KalenderJahr;
	function selectDays(Dates) {
	var i;
	var target;
	var Termin = Dates.split(", ");
	for(i=0; i<Termin.length; i++)
	Termin[i]=Termin[i].split("|");
		$('.ui-datepicker-calendar td').each(function(i){
			for(i=0; i<Termin.length; i++)
			{
				if($(this).html()=='<a class="ui-state-default" href="#">'+Termin[i][0]+'</a>'&&Termin[i][1]==KalenderMonat&&Termin[i][2]==KalenderJahr)
				{
				if(Termin[i][3]==null) Termin[i][3]="white";
				if(Termin[i][4]==null||Termin[i][4]=="index.php") Termin[i][4]="#"; else target="target='_blank'"; 
				$(this).html('<a class="ui-state-default ui-state-active" style="color: '+Termin[i][3]+';" '+target+' href="'+Termin[i][4]+'">'+Termin[i][0]+'</a>');
				}
			}
			$(this).attr("onclick", "");
		});
	}
	/***********************/
	
$(function(){
$("#Fehlermeldung").hide();
$("#TeilnehmenDialog").css("visibility", "visible");

//Einstellungen
//

//////////////////////////////////////////////////////////// 
  function isDigit( ch )
  {
    if ( (ch >= '0') && (ch <= '9') )
      return true;
    else
      return false;
  }


  function isAlpha( ch )
  {
    if ( ((ch >= 'a') && (ch <= 'z')) || ((ch >= 'A') && (ch <= 'Z')) )
      return true;
    else
      return false;
  }


  function isAlnum( ch )
  {
    if ( isAlpha( ch ) || isDigit( ch ) )
      return true;
    else
      return false;
  }


  function notIn( str1, str2 )
  {
    var i = 0;
    var j = str2.length;
    for( ; i<j; i++ )
    {
      var str3 =  str2.charAt(i);
      if( str1.indexOf( str3 ) != -1 )
        return false;
    }
    return true;
  }


  function checkUsername( username, mustBeQuoted )
  {
    var i = 0;
    var j = username.length;
    if ( username.charAt(0) != '"' )
    {
      if ( (username.charAt(0) <  ' ') || (username.charAt(0) >  '~')
            || !notIn( mustBeQuoted, username.charAt(0) ) )
        return false;
      for( i=1; i<j; i++ )
      {
        if ( ( (username.charAt(i) < ' ') || (username.charAt(i) >  '~')
              || !notIn ( mustBeQuoted, username.charAt(i) ) )
             && ( username.charAt(i-1) != '\\' ) )
          return false;
      }
    }
    else
    {
      if ( username.charAt( j-1 ) != '"' )
        return false;
      for( i=1; i<j-1; i++ )
      {
        if ( ( (username.charAt(i) == '\n') || (username.charAt(i) == '\r')
              || (username.charAt(i) == '\"') )
            && (username.charAt(i-1) != '\\') )
          return false;
      }

    }
    return true;
  }


  function checkNr ( nr )
  {
    var i=0;
    var j=nr.length;

    if( j < 1 )
      return false;

    for( ; i<j; i++ )
      if( ( nr.charAt(i) < '0' ) || ( nr.charAt(i) > '9' ) )
        return false;

    return true;
  }


  function checkIpnr( ipnr )
  {
    var iL=0;
    var iC=0;
    var i=0;
    var sNr = "";

    for( ; i< ipnr.length; i++ )
    {
      if ( ipnr.charAt(i) == '.' )
      {
        if ( !iL || (iL> 3) || parseInt( sNr,10 ) > 255 )
          return false;
        iC++;
        iL = 0;
        sNr = "";
        continue;
      }
      if ( isDigit ( ipnr.charAt(i) ) )
      {
        iL++;
        sNr = sNr + ipnr.charAt(i);
        continue;
      }
      return false;
    }

    if ( parseInt( sNr,10 ) > 255 )
      return false;
    if ( ( (iC==3) && (iL>=1) && (iL<=3) ) || ( (iC==4) && (!iL) )  )
      return true;
    else
      return false;
  }


  function checkFqdn( fqdn )
  {
    var iL=0;
    var iC=0;
    var i=fqdn.length-1;

    if ( (fqdn.charAt(0) == '.') || (fqdn.charAt(0) == '-') )
      return false;
    if ( fqdn.charAt(i) == '.' )
      i=i-1;

    for( ; i>=0; i-- )
    {
      if ( fqdn.charAt(i) == '.' )
      {
        if ( iL < 2 && iC < 2 )
          return false;
        if ( fqdn.charAt(i-1) == '-' )
          return false;
        iC++;
        iL = 0;
        continue;
      }
      if ( isAlnum ( fqdn.charAt(i) ) )
      {
        iL++;
        continue;
      }
      if ( fqdn.charAt(i) == '-' )
      {
        if ( !iL )
          return false;
        iL++;
        continue;
      }
      return false;
    }

    if ( !iC || ( iL == 1 && iC < 2 ) || ( !iL && iC==1 ) ) {
      return false;
    }

    return true;

  }


  function checkHostname( hostname )
  {
    if ( hostname.charAt(0) == '[' )
    {
      if ( hostname.charAt(hostname.length-1) != ']' )
        return false;
      var ipnr = hostname.substring( 1, hostname.length -1 );
        return checkIpnr( ipnr );
    }

    if ( hostname.charAt(0) == '#' )
    {
      var nr = hostname.substring( 1, hostname.length );
        return checkNr( nr );
    }

    return checkFqdn( hostname );
  }


  function checkEmailAdr( address )
  {
    var status = true;
    var username = "";
    var hostname = "";

    if ( address.length < 8 )
      return false;

    var seperate = address.lastIndexOf("@");
    if ( seperate == -1 )
      return false;

    username = address.substring(0, seperate );
    if ( ! checkUsername( username, "<>()[],;:@\" " ) )
      return false;

    hostname = address.substring(seperate+1, address.length );
    if ( ! checkHostname( hostname ) )
      return false;

    return true;
  }


  function checkEmail( email, allowFullname )
  {
    var existFullname = false;
    var status = true;
    var fullname = "";
    var adress = "";
    if ( email.length < 8 )
      return false;
    var emailBegin = email.indexOf("<");
    var emailEnd = email.lastIndexOf(">");

    if ( (emailBegin == -1) && (emailEnd == -1) )
      return checkEmailAdr( email );

    if ( ( (emailBegin == -1) && (emailEnd != -1) )
        || ( (emailBegin != -1) && (emailEnd == -1) ) )
      return false;

    adress = email.substring( emailBegin+1, emailEnd );

    if ( ! checkEmailAdr( adress ) )
      return false;

    if ( email.length == adress.length + 2 )
      return true;
    else
      if ( ! allowFullname )
        return false;

    if ( emailEnd == email.length - 1 )
    {
      if ( emailBegin == 0 )
        return true;
      if ( email.charAt( emailBegin -1 ) != ' ' )
        return false;
      fullname = email.substring( 0, emailBegin-1 );
      return checkUsername ( fullname, "<>()[],;:@\"" );
    }

    return false ;

  }


  
var Window_sizeX=0;
var Window_sizeY=0;
function getWinSize(win) 
{ 
    if(!win) win = window; 
    var s = new Object(); 
    if(typeof win.innerWidth != 'undefined') 
    { 
        s.width = win.innerWidth; 
        s.height = win.innerHeight; 
    } 
    else 
    { 
         var obj = getBody(win); 
         s.width = parseInt(obj.clientWidth); 
         s.height = parseInt(obj.clientHeight); 
    } 
    return s; 
} 
function getBody(w) 
{ return (w.document.compatMode && w.document.compatMode == "CSS1Compat") ? w.document.documentElement : w.document.body || null; }  
//////////////////////////////////////////////////////////// 

//Seitenaufruf
function getGETParameter(name)
{
name = name.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");
var regexS = "[\\?&]"+name+"=([^&#]*)";
var regex = new RegExp( regexS );
var results = regex.exec( window.location.href );
if( results == null )
return "";
else
return results[1];
}
//
			
	//Dialogs
	$('#TeilnehmenDialog').dialog({
		autoOpen: false,
		width: 500,
		buttons: {
			"Doch nicht...": function() { 
				$(this).dialog("close"); 
			}, 
			"Trag mich ein!": function() { Eintragung($("#TeilnehmerName").attr("value"), $("#TeilnehmerEmail").attr("value"), $("#Wahrscheinlichkeit").attr("value"), $("#flashmobID").attr("value")); } 
		}, beforeclose: function(){$("#Fehlermeldung").hide();}
	});
	//
	
	//Button-Actions
	$('#teilnehmenButton,#teilnehmenLink').click(function(){
		$('#TeilnehmenDialog').dialog('open');
		return false;
	});	
	function  Eintragung(Name, Email, Wahrscheinlichkeit, flashmobID)
	{
	if(Name.length==0||Name.length==" ")
	{
	$("#Fehlertext").text("Bitte einen Namen angeben!");
	$("#Fehlermeldung").show("slow");
	}
	else if(Name.length>20)
	{
	$("#Fehlertext").text("Der Name ist zu lang! (Max. 20 Zeichen)");
	$("#Fehlermeldung").show("slow");
	}
	else if(Email.length==0||checkEmailAdr.length==" ")
	{
	$("#Fehlertext").text("Bitte eine Emailadresse angeben!");
	$("#Fehlermeldung").show("slow");
	}
	else if(!checkEmailAdr(Email))
	{
	$("#Fehlertext").text("Ungültige Emailadresse!");
	$("#Fehlermeldung").show("slow");
	}
	else
	$.ajax({
			type: "GET", url: "ajax.php?action=eintragung&name="+Name+"&email="+Email+"&wahrscheinlichkeit="+Wahrscheinlichkeit+"&flashmobID="+flashmobID,
			success: function(response)
			{
				if(response==true) 
				{
				$('#TeilnehmenDialog').dialog("close");
				alert($("#bestaetigung").html());
				$("#Fehlermeldung2").hide();
				}
				else
				{
				$("#Fehlertext").text(response);
				$("#Fehlermeldung").show("slow");
				}
			}
			});
	}
	//

	// Datepicker#
	$('#datepicker').datepicker({
		inline: true,
		multiSelect: 1,
		onChangeMonthYear: function(year, month, inst) { KalenderMonat=month; KalenderJahr=year;},
		monthNames: ['Januar','Februar','März','April','Mai','Juni','Juli','August','September','Oktober','November','Dezember'],
		dayNamesMin: ['So', 'Mo', 'Di', 'Mi', 'Do', 'Fr', 'Sa']
	});
	window.setInterval("selectDays('7|11|2009|darkblue|Mobarchiv/Mob1/index.html, 5|12|2009|red|index.php')", 100);
	
});

