
daThis = '';
function onLoadHandler()
{
    allEvents = {};
    daAllEvents = '';
    poller();

    // Start populating the local calendar from the server.
    // We'll start with last month and the next two months.  
    var now = new Date();
    var thisYear = now.getFullYear();
    var thisMonth = now.getMonth() + 1;  
    getCalData( thisYear, thisMonth, 1);
    getCalData( thisYear, thisMonth + 1);
    getCalData( thisYear, thisMonth - 1);
    getCalData( thisYear, thisMonth + 2);
    getCalData( thisYear, thisMonth + 3);

    daData = '';
    $('#theCalendar').calendar({
        firstDayOfWeek: 0,
        parentElement: '#theCalendar-container',
        selectHandler: function(data){
            pickDate(data.date);
            daData = data;
        }
    });

	$('.thumbnail img').mouseover(function() {
		var basename = this.src.replace(/_149x116\.png/, "");
		$('#Gallery .thumbnailPreview img')[0].src = '';
		$('#Gallery .thumbnailPreview img')[0].src = basename + '_222x333.png';
	});

	$('.thumbnail img').click(function() {
		var basename = this.src.replace(/_149x116\.png/, "");
		$('#bigPhotoView img')[0].src = '';
        $('#bigPhotoView').show();
		$('#bigPhotoView img')[0].src = basename + '_720x540.jpg';
	});

    $('#bigPhotoView img').click(function() {
        $('#bigPhotoView').hide();
    });

    $('#Cowlander input[name="fromEmail"]').val('');  // IE8 caches this for some reason
//    $('#Cowlander input[name="fromEmail2"]').val('');  // IE8 caches this for some reason
//    $('#Cowlander input[name="fromEmail3"]').val('');  // IE8 caches this for some reason
    $('#emailSubscribe').click(function() {
        var emailAddr = $('#Cowlander input[name="fromEmail"]').val();
        if (emailAddr) {
            $('#emailSubscribePopup input[name="fromEmail2"]').val(emailAddr);
            $('#emailSubscribePopup input[name="fromEmail3"]').val('');
            $('#emailSubscribePopup').show();
            $('#emailSubscribePopup input[name="fromEmail3"]').focus();
        }
    });

    $('#emailSubscribePopup input[name="cancel"]').click(function() {
        $('#emailSubscribePopup').hide();
    });

    //$('#emailSubscribePopup input[name="fromEmail3"]').keypress(function() {
    $('#emailSubscribePopup input').keyup(validEmailCheck);
    $('#emailSubscribePopup input[name="submit"]').click(subscribeToNewsletter);

    

    return;
}

//daResponse = '';
function subscribeToNewsletter()
{
    var emailAddr3 = $('#Cowlander input[name="fromEmail3"]').val();
    var myURL = 'newsletterSignupPost.php';
    $('.ajaxSpinner').show();
    $.ajax({
        type: 'POST',
        url: myURL,
        data: {emailAddress: emailAddr3},
        success: function(response) {
            $('.ajaxSpinner').hide();
            if (language === "ja")
                alert("先ほどのメールアドレスにメールが送られました。 メール内のリンクをクリックしてください。");
            else
                alert("An email has been sent to you.  Please follow the link in your email.");
            $('#Cowlander input[name="fromEmail"]').val('');
            $('#emailSubscribePopup').hide();
        },
        error: function(response) {
            //daResponse = response;
            $('.ajaxSpinner').hide();
            alert("Ajax failed.  Sorry about that.");
            alert(response);
            $('#emailSubscribePopup').hide();
        }
    });
    
}

function validEmailCheck()
{
    //console.log('key');
    var emailAddr2 = $('#Cowlander input[name="fromEmail2"]').val();
    var emailAddr3 = $('#Cowlander input[name="fromEmail3"]').val();
    if (emailAddr2 === emailAddr3) {
        $('#emailSubscribePopup .noMatch').hide();
        $('#emailSubscribePopup .match').show();
        $('#emailSubscribePopup input[name="submit"]').removeAttr('disabled');
    } else {
        $('#emailSubscribePopup .noMatch').show();
        $('#emailSubscribePopup .match').hide();
        $('#emailSubscribePopup input[name="submit"]').attr('disabled', 'true');
    }
}

function poller()
{
    setTimeout('slideShow()', 1300);
}

function setFrontAd(eventID)
{
    if (! (eventID in allEvents))
    {
        return;
    }
    var jsDate = new Date(allEvents[eventID].timestamp * 1000);
    if (language === "ja")
    {
        var dateStr = formatJaShortDate(jsDate);
        var title = allEvents[eventID].titleJA;
        var desc = allEvents[eventID].descriptionJA;
    }
    else
    {
        var dateStr = formatEnShortDate(jsDate);
        var title = allEvents[eventID].title;
        var desc = allEvents[eventID].description;
    }
    $('#Welcome .rightOfTwo').html('<h4></h4><br/><h4></h4><span class="eventDesc"></span>');
    $('#Welcome .rightOfTwo h4')[0].innerHTML = dateStr + ":";
    $('#Welcome .rightOfTwo h4')[1].innerHTML = title;
    $('#Welcome .rightOfTwo .eventDesc').html(desc);
}

function getNextEvent()
{
    var now = +new Date();  // timestamp in milliseconds
    var oneDay = 1000 * 60 * 60 * 24;
    var checkDay;
    var year;
    var month; // counting from zero
    var dayOfMonth; // counting from zero
    var nextEvent = 0;

    // search up to 7 days in the future:
    for (var i=0; i<7; i++)
    {
        checkDay = new Date(now + oneDay*i);
        year = checkDay.getFullYear();
        month = checkDay.getMonth();  // counting from zero
        dayOfMonth = checkDay.getDate() - 1; // counting from zero
        if (eventsByDate[year][month][dayOfMonth])
        {
            nextEvent = eventsByDate[year][month][dayOfMonth][0];
            break;
        }
    }
    return nextEvent;
}






