﻿// JScript File

function getData()
{
    $.getJSON('guestbook.aspx', 'mode=view', processData);
	        
	function processData(reply)
	{
	    //  alert('Hi there');
	    // show/hide appropriate pages
        $('#leftPage').hide();
        $('#newPage').hide();
        $('#titlePage').show();
        $('#rightPage').show();
        
        // show hide appropriate (image) buttons
        $('#pageLeft').hide();
        $('#pageRight').show();
        
        sessvars["guestbook"] = reply;
        sessvars["entry"] = 0;
	    sessvars["count"] = reply.count;
	    var entry = reply.entries[0];
	    $('#rightPage').html(formHTML(entry));
	}
}

function addEntryToGuestbook()
{
    var qstring = 'mode=new';
    qstring += '&date=' + $('#newDate').val();
    qstring += '&email=' + $('#newEmail').val();
    qstring += '&hide=' + $('#hideEmail').val();
    qstring += '&entry=' + $('#newEntry').val();
    qstring += '&name=' + $('#newName').val();
    $.getJSON('guestbook.aspx', qstring, processData);
	        
	function processData(reply)
	{
	    if (reply.result == "ok")
        {
            var alertText = 'We are very sorry, but we experienced a problem trying\n';
            alertText += 'to add your entry. We very much appreciate your efforts\n';
            alertText += 'and would ask you to try again later.';
            alert(alertText);
        }
        else
        {
            var alertText = 'Thank you for providing visitors to this site with your\n';
            alertText += 'feedback. We very much appreciate your efforts. Your entry\n';
            alertText += 'will appear in the guestbook just as soon as it has been\n';
            alertText += 'checked to ensure that it contains nothing that could be\n';
            alertText += 'considered libellous, racist or illegal.';
            alert(alertText);
        }
        getData();
	}
}

function moveRight()
{
    // alert('move right');
    // get necessary session variables
    var reply = sessvars["guestbook"];
    var entry = sessvars["entry"] + 1;
    var count = sessvars["count"] - 1;
    
    // clear html and hide appropriate pages
    $('#leftPage').html('');
    $('#rightPage').html('');
    $('#titlePage').hide();
    $('#newPage').hide();
    $('#leftPage').show();
    $('#rightPage').show();
    
    // show newer entries arrow
    $('#pageLeft').show();    
    
    // pass the next entry to create the html for the left hand page
    if (entry <= count)
    {
        $('#leftPage').html(formHTML(reply.entries[entry]));
        entry++;
        if (entry <= count)
        {
            $('#rightPage').html(formHTML(reply.entries[entry]));
        }
        sessvars["entry"] = entry;
    }
     // check to see if there are still older entries
     if (entry >= count)
     {
        $('#pageRight').hide();
     }
}

function moveLeft()
{
    // alert('move left');
    // get necessary session variables
    var reply = sessvars["guestbook"];
    var entry = sessvars["entry"] - 3;
    
    // clear html and hide appropriate pages
    $('#newPage').hide();    
    $('#rightPage').show();
    $('#rightPage').html('');
    $('#pageRight').show();
    
    // entry zero means we are back at the title page
    if (entry < 0)
    {
        $('#titlePage').show();
        $('#leftPage').hide();
        $('#pageLeft').hide();
        entry++;
        $('#rightPage').html(formHTML(reply.entries[entry]));
    }
    else
    {
        // pass the next entry to create the html for the left hand page
        $('#leftPage').html(formHTML(reply.entries[entry]));
        entry++;
        if (reply.entries[entry])
        {
            $('#rightPage').html(formHTML(reply.entries[entry]));
        }
    }
    sessvars["entry"] = entry;
}

function formHTML(guestEntry)
{
    var _Html = '<p><label class="label">Date of entry</label>';
    _Html += guestEntry.entryDate + '</p>';
    _Html += '<p><label class="label">Date of stay</label>';
    _Html += guestEntry.rentalDate + '</p>';
    _Html += '<p><label class="label">Comments</label>';
    _Html += '<span id="comments">' + guestEntry.entry + '</span></p>';
    _Html += '<p><label class="label">Signature</label>';
    _Html += '<span id="signature">' + guestEntry.guestName + '</span></p>';
    _Html += '<p><label class="label">Email</label>';
    _Html += guestEntry.email + '</p>';
    
    return _Html;
}

function pad(n, len) {
   
    s = n.toString();
    if (s.length < len) {
        s = ('0000' + n.toString()).slice(-len);
    }

    return s;
}

function addNewEntry()
{
    $('#leftPage').hide();
    $('#rightPage').hide();
    $('#titlePage').show();
    $('#newPage').show();
}
