function isDate(dateStr,currLang) {

var datePat = /^(\d{2})(\/)(\d{2})(\/)(\d{4})$/;
var matchArray = dateStr.match(datePat); // is the format ok?

if (matchArray == null) 
{
    if (currLang=='en')  
        alert("Please select a date using the following format: dd/MM/yyyy.");
    else
        alert("Πάρακαλώ επιλέξτε Ημερομηνία στη μορφή dd/MM/yyyy.");
    return false;
}

day = matchArray[1]; // p@rse date into variables
month = matchArray[3]; 
year = matchArray[5];

if (month < 1 || month > 12) 
{ // check month range
    if (currLang=='en')  
        alert("The Month has to be a number between 1 and 12.");
    else
        alert("Ο Μήνας πρέπει να είναι μεταξύ 1 και 12.");
    return false;
}

if (day < 1 || day > 31) 
{
    if (currLang=='en')  
        alert("The Day has to be a number between 1 and 31.");
    else
        alert("Η Ημέρα πρέπει να είναι μεταξύ 1 και 31.");
    return false;
}

if ((month==4 || month==6 || month==9 || month==11) && day==31) 
{
    if (currLang=='en')  
        alert("The Selected Month ("+month+") doesn't have 31 Days!");
    else
        alert("Ο "+month+"ος Μήνας δεν έχει 31 Ημέρες!")
    return false;
}

if (month == 2) 
{ // check for february 29th
    var isleap = (year % 4 == 0 && (year % 100 != 0 || year % 400 == 0));
    if (day > 29 || (day==29 && !isleap)) 
    {
        if (currLang=='en')  
            alert("February of " + year + " doesn't have " + day + "Days!");
        else    
            alert("Ο Φεβρουάριος του " + year + " δεν έχει " + day + " Ημέρες!");
        return false;
    }
}
return true; // date is valid
}
        
function ValidateSearch(currLang)
{
    if (window.document.aspnetForm.ctl00$ContentPlaceHolder1$ctl00$SearchHome1$txtDateFrom$txt_Date.value=='')
    {
        if (currLang=='en')
            alert('Please select Check-In Date!');
        else
            alert('Παρακαλώ επιλέξτε Ημερομηνία Check-In!');
        return false;
    }        
    if (window.document.aspnetForm.ctl00$ContentPlaceHolder1$ctl00$SearchHome1$txtDateTo$txt_Date.value=='')
    {
        if (currLang=='en')
            alert('Please select Check-Out Date!');
        else
            alert('Παρακαλώ επιλέξτε Ημερομηνία Check-Out!');    
        return false;
    } 
    
    var dateFrom = window.document.aspnetForm.ctl00$ContentPlaceHolder1$ctl00$SearchHome1$txtDateFrom$txt_Date.value;
    var dateTo = window.document.aspnetForm.ctl00$ContentPlaceHolder1$ctl00$SearchHome1$txtDateTo$txt_Date.value;
    
    if (isDate(dateFrom,currLang)==false) return false;
    if (isDate(dateTo,currLang)==false) return false;
    
    var dateFromSplit = dateFrom.split("/");
    var dateToSplit = dateTo.split("/");
   
    var finalDateFrom = dateFromSplit[2]+dateFromSplit[1]+dateFromSplit[0];
    var finalDateTo = dateToSplit[2]+dateToSplit[1]+dateToSplit[0];                                      

    if (finalDateFrom>=finalDateTo)
    {     
        if (currLang=='en')       
            alert('You provide an invalid Check-In or Check-Out Date!');
        else
            alert('Παρακαλώ έλεγξτε τις Ημερομηνίες Check-In και Check-Out που προσδιορίσατε!');
        return false;        
    }
    else
    { 

        var now = new Date();
        var today = todayStr();
        var todayFromSplit = today.split("/");
        if (todayFromSplit[0].length==1)
            todayFromSplit[0]="0"+todayFromSplit[0];
        if (todayFromSplit[1].length==1)
            todayFromSplit[1]="0"+todayFromSplit[1];            
        var finalToday = todayFromSplit[2]+todayFromSplit[0]+todayFromSplit[1];           
                
        if (finalDateFrom < finalToday)
        { 
            if (currLang=='en')       
                alert('You provide an invalid Check-In Date!');
            else
                alert('Παρακαλώ έλεγξτε την Ημερομηνία Check-In που προσδιορίσατε!');
            return false;          
        }        
        else
        {        
            window.document.aspnetForm.ctl00$ContentPlaceHolder1$ctl00$SearchHome1$hfDateFrom.value = finalDateFrom;
            window.document.aspnetForm.ctl00$ContentPlaceHolder1$ctl00$SearchHome1$hfDateTo.value = finalDateTo;        
        }
    }
               
    return true;
}

function todayStr() 
{
    var today=new Date()
    return today.getMonth()+1+"/"+today.getDate()+"/"+today.getFullYear();
}

function ValidateRightSearch(currLang)
{
    if (window.document.aspnetForm.ctl00$SearchRight1$txtDateFrom$txt_Date.value=='')
    {
        if (currLang=='en')
            alert('Please select Check-In Date!');
        else
            alert('Παρακαλώ επιλέξτε Ημερομηνία Check-In!');
        return false;
    }        
    if (window.document.aspnetForm.ctl00$SearchRight1$txtDateTo$txt_Date.value=='')
    {
        if (currLang=='en')
            alert('Please select Check-Out Date!');
        else
            alert('Παρακαλώ επιλέξτε Ημερομηνία Check-Out!');    
        return false;
    } 
    
    var dateFrom = window.document.aspnetForm.ctl00$SearchRight1$txtDateFrom$txt_Date.value;
    var dateTo = window.document.aspnetForm.ctl00$SearchRight1$txtDateTo$txt_Date.value;
    
    if (isDate(dateFrom,currLang)==false) return false;
    if (isDate(dateTo,currLang)==false) return false;
    
    var dateFromSplit = dateFrom.split("/");
    var dateToSplit = dateTo.split("/");
   
    var finalDateFrom = dateFromSplit[2]+dateFromSplit[1]+dateFromSplit[0];
    var finalDateTo = dateToSplit[2]+dateToSplit[1]+dateToSplit[0];                                      

    if (finalDateFrom>=finalDateTo)
    {     
        if (currLang=='en')       
            alert('You provide an invalid Check-In or Check-Out Date!');
        else
            alert('Παρακαλώ έλεγξτε τις Ημερομηνίες Check-In και Check-Out που προσδιορίσατε!');
        return false;        
    }
    else
    { 

        var now = new Date();
        var today = todayStr();
        var todayFromSplit = today.split("/");
        if (todayFromSplit[0].length==1)
            todayFromSplit[0]="0"+todayFromSplit[0];
        if (todayFromSplit[1].length==1)
            todayFromSplit[1]="0"+todayFromSplit[1];            
        var finalToday = todayFromSplit[2]+todayFromSplit[0]+todayFromSplit[1];           
                
        if (finalDateFrom < finalToday)
        { 
            if (currLang == 'en')       
                alert('You provide an invalid Check-In Date!');
            else
                alert('Παρακαλώ έλεγξτε την Ημερομηνία Check-In που προσδιορίσατε!');
            return false;          
        }        
        else
        {        
            window.document.aspnetForm.ctl00$SearchRight1$hfDateFrom.value = finalDateFrom;
            window.document.aspnetForm.ctl00$SearchRight1$hfDateTo.value = finalDateTo;        
        }
    }
               
    return true;
}

function ValidateRegister(currLang)
{
    if (window.document.aspnetForm.ctl00$ContentPlaceHolder1$ctl00$txtDateOfBirth$txt_Date.value=='')
    {
        if (currLang=='en')
            alert('Please select Date Of Birth!');
        else
            alert('Παρακαλώ επιλέξτε Ημερομηνία Γέννησης!');
        return false;
    } 
    
    var dateOfBirth = window.document.aspnetForm.ctl00$ContentPlaceHolder1$ctl00$txtDateOfBirth$txt_Date.value;
    
    if (isDate(dateOfBirth,currLang)==false) return false;    
    
    var dateOfBirthSplit = dateOfBirth.split("/");
   
    var finalDateOfBirth = dateOfBirthSplit[2]+dateOfBirthSplit[1]+dateOfBirthSplit[0];                                      
    
    var now = new Date();
    var today = todayStr();
    var todayFromSplit = today.split("/");
    if (todayFromSplit[0].length==1)
        todayFromSplit[0]="0"+todayFromSplit[0];
    if (todayFromSplit[1].length==1)
        todayFromSplit[1]="0"+todayFromSplit[1];            
    var finalToday = todayFromSplit[2]+todayFromSplit[0]+todayFromSplit[1];           
                   
    if (finalDateOfBirth >= finalToday)
    { 
        if (currLang=='en')       
            alert('You provide an invalid Date Of Birth!');
        else
            alert('Παρακαλώ έλεγξτε την Ημερομηνία Γέννησης που προσδιορίσατε!');
        return false;          
    } 
    
    window.document.aspnetForm.ctl00$ContentPlaceHolder1$ctl00$hfDateFrom.value = finalDateOfBirth;               
    
    return true;    
}


function OnLineCheckInDates(currLang)
{





    if (window.document.aspnetForm.ctl00$ContentPlaceHolder1$ctl00$txtDateOfBirth$txt_Date.value=='')
    {
        if (currLang=='en')
            alert('Please select Date Of Birth!');
        else
            alert('Παρακαλώ επιλέξτε Ημερομηνία Γέννησης!');
        return false;
    } 
    
    var dateOfBirth = window.document.aspnetForm.ctl00$ContentPlaceHolder1$ctl00$txtDateOfBirth$txt_Date.value;
    
    if (isDate(dateOfBirth,currLang)==false) return false;    
    
    var dateOfBirthSplit = dateOfBirth.split("/");
   
    var finalDateOfBirth = dateOfBirthSplit[2]+dateOfBirthSplit[1]+dateOfBirthSplit[0];                                      
    
    var now = new Date();
    var today = todayStr();
    var todayFromSplit = today.split("/");
    if (todayFromSplit[0].length==1)
        todayFromSplit[0]="0"+todayFromSplit[0];
    if (todayFromSplit[1].length==1)
        todayFromSplit[1]="0"+todayFromSplit[1];            
    var finalToday = todayFromSplit[2]+todayFromSplit[0]+todayFromSplit[1];           
                   
    if (finalDateOfBirth >= finalToday)
    { 
        if (currLang=='en')       
            alert('You provide an invalid Date Of Birth!');
        else
            alert('Παρακαλώ έλεγξτε την Ημερομηνία Γέννησης που προσδιορίσατε!');
        return false;          
    } 
    
    window.document.aspnetForm.ctl00$ContentPlaceHolder1$ctl00$hfDateFrom.value = finalDateOfBirth;







    if (window.document.aspnetForm.ctl00$ContentPlaceHolder1$ctl00$txtDateFrom$txt_Date.value=='')
    {
        if (currLang=='en')
            alert('Please select Arrival Date!');
        else
            alert('Παρακαλώ επιλέξτε Ημερομηνία Άφιξης!');
        return false;
    }        
    if (window.document.aspnetForm.ctl00$ContentPlaceHolder1$ctl00$txtDateTo$txt_Date.value=='')
    {
        if (currLang=='en')
            alert('Please select Departure Date!');
        else
            alert('Παρακαλώ επιλέξτε Ημερομηνία Αναχώρησης!');    
        return false;
    } 
    
    var dateFrom = window.document.aspnetForm.ctl00$ContentPlaceHolder1$ctl00$txtDateFrom$txt_Date.value;
    var dateTo = window.document.aspnetForm.ctl00$ContentPlaceHolder1$ctl00$txtDateTo$txt_Date.value;
    
    if (isDate(dateFrom,currLang)==false) return false;
    if (isDate(dateTo,currLang)==false) return false;
    
    var dateFromSplit = dateFrom.split("/");
    var dateToSplit = dateTo.split("/");
   
    var finalDateFrom = dateFromSplit[2]+dateFromSplit[1]+dateFromSplit[0];
    var finalDateTo = dateToSplit[2]+dateToSplit[1]+dateToSplit[0];                                      

    if (finalDateFrom>=finalDateTo)
    {     
        if (currLang=='en')       
            alert('You provide an invalid Arrival or Departure Date!');
        else
            alert('Παρακαλώ έλεγξτε τις Ημερομηνίες Άφιξης και Αναχώρησης που προσδιορίσατε!');
        return false;        
    }
    else
    { 

        var now = new Date();
        var today = todayStr();
        var todayFromSplit = today.split("/");
        if (todayFromSplit[0].length==1)
            todayFromSplit[0]="0"+todayFromSplit[0];
        if (todayFromSplit[1].length==1)
            todayFromSplit[1]="0"+todayFromSplit[1];            
        var finalToday = todayFromSplit[2]+todayFromSplit[0]+todayFromSplit[1];           
                
        if (finalDateFrom < finalToday)
        { 
            if (currLang=='en')       
                alert('You provide an invalid Arrival Date!');
            else
                alert('Παρακαλώ έλεγξτε την Ημερομηνία Άφιξης που προσδιορίσατε!');
            return false;          
        }        
        else
        {        
            window.document.aspnetForm.ctl00$ContentPlaceHolder1$ctl00$hfDateFrom.value = finalDateFrom;
            window.document.aspnetForm.ctl00$ContentPlaceHolder1$ctl00$hfDateTo.value = finalDateTo;        
        }
    }
               
    return true;
}