﻿Site = {}

/// <summary>
/// famap.KeyListener.init();
/// </summary>
$(document).ready(function() {
    Site.initExternalLinks();
    Site.initButtons();
    Site.initLoginLightbox();
})

/// <summary>
/// Toggles default text for input, e.g. 'Enter your username'
/// </summary>
Site.toggleDefaultTextForInput = function(inputId, defaultText) {

    // Get input element
    var $textInput = $('input#' + inputId);

    // Set default text value for input
    $textInput.val(defaultText);

    // On text input focus, empty value
    $textInput.focus(function() {
        if ($(this).val() == defaultText) {
            $(this).val('');
        }
    });

    // On text input blur, set default text if empty
    $textInput.blur(function() {
        if ($(this).val() == '') {
            $(this).val(defaultText);
        }
    });
}

/// <summary>
/// Links with rel attribute set to external will open a new window.
/// </summary>
Site.initExternalLinks = function() {
    $('ul.nav a[rel=external]').click(function() {
        window.open($(this).attr('href'));
        return false;
    });
}

/// <summary>
/// Init buttons
/// </summary>
Site.initButtons = function() {
    $("input.largeBtn").wrapperEffects({ wrapperClass: "largeButton" });
    $("a.largeBtn").wrapperEffects({ wrapperClass: "largeButton" });
    $("input.smallBtn").wrapperEffects({ wrapperClass: "smallButton" });
    $("a.smallBtn").wrapperEffects({ wrapperClass: "smallButton" });
    $("input.largeBtnInactivated").wrapperEffects({ wrapperClass: "largeButtonInactivated" });
    $("a.largeBtnInactivated").wrapperEffects({ wrapperClass: "largeButtonInactivated" });
}

/// <summary>
/// Set login link to show lightbox
/// </summary>
Site.initLoginLightbox = function() {
	
	$('a.loginlightbox').click(function() {
	    Site.showLoginLightbox(); return false;
        return false;
    });
}

/// <summary>
/// Show overlay (created in lightbox.js) and login lightbox
/// </summary>
Site.showLoginLightbox = function() {

    var objOverlay = document.getElementById('overlay');
    var objLoginLightbox = document.getElementById('loginlightbox');
    var objLoadingImage = document.getElementById('loadingImage');
    var objCloseButton = document.getElementById('closeButton');

    var arrayPageSize = getPageSize();
    var arrayPageScroll = getPageScroll();    

    // Set height of overlay to take up whole page and show
    objOverlay.style.height = (arrayPageSize[1] + 'px');
    objOverlay.style.display = 'block';

    // Hide login lightbox when clicking close button or overlay
    objOverlay.onclick = function() { Site.hideLoginLightbox(); return false; }

    // Hide loading image and show login light box
    if (objLoadingImage) { objLoadingImage.style.display = 'none'; }
    objLoginLightbox.style.display = 'block';
}

/// <summary>
/// Hide overlay (created in lightbox.js) and login lightbox
/// </summary>
Site.hideLoginLightbox = function() {

    var objOverlay = document.getElementById('overlay');
    var objLightbox = document.getElementById('lightbox');
    var objLoginLightbox = document.getElementById('loginlightbox');

    objOverlay.style.display = 'none';
    objLightbox.style.display = 'none';
    objLoginLightbox.style.display = 'none';

}

