﻿/// <reference path="jquery-1.3.2-vsdoc2.js" />
$(
    function() 
    {
        //AddClickToElement();
    
         //  Laminated Map
        AddFinishingOptionHome($(".pmlaminated"), $("#pmlaminatedpopup"), $("#closelaminatedpopup"));

        //  Valances
        AddFinishingOptionHome($(".pmvalances"), $("#pmvalancepopup"), $("#closevalancepopup"));

        //  Maps on Rails
        AddFinishingOptionHome($(".pmrails"), $("#pmrailspopup"), $("#closerailspopup"));
        
        //  Spring Rollers
        AddFinishingOptionHome($(".pmspringrollers"), $("#pmspringrollerspopup"), $("#closespringrollerspopup"));
        
        //  Framed Map (old Mounted)
        AddFinishingOptionHome($(".pmframed"), $("#pmframedpopup"), $("#closeframedpopup"));
        
        //  Magnetic Map
        AddFinishingOptionHome($(".pmmagnetic"), $("#pmmagneticpopup"), $("#closemagneticpopup"));  
    }
);

function AddSelectionOptionHome(Button, PopUp, ClosePopUp) {
    AddSelectionClickHome(Button, PopUp);
    AddCloseButtonHome(ClosePopUp, PopUp);
    AddMouseEventsHome(Button);
    AddMouseEventsHome(ClosePopUp);
}

function AddFinishingOptionHome(Button, PopUp, ClosePopUp) {
    AddClickHome(Button, PopUp);
    AddCloseButtonHome(ClosePopUp, PopUp);
    AddMouseEventsHome(Button);
    AddMouseEventsHome(ClosePopUp);
}

//  Adds effect and positions the extended finishing option popups
function AddSelectionClickHome(Element, PopUp) {
    Element.click(function() {
        var _element = $(this);
        var _popup = PopUp;
        
        _popup
            .css("top", _element.offset().top + _element.outerHeight(false))
            .css("left", _element.offset().left + _element.outerWidth(false) - _popup.outerWidth(false) );

        if(_popup.is(":visible")) {
            _popup.slideUp("normal");
        } else {
            _popup.slideDown("normal");
        }
    });
}

//  Adds effect and positions all finishing option 'learn more' popups
function AddClickHome(Element, PopUp) {
    Element.click(function() {
        var _element = $(this);
        var _popup = PopUp;
        
        //  Close all other popups
        var _pmPopUps = $("div[id^='pm']");
        _pmPopUps.slideUp("normal");

//        _popup
//            .css("top", _element.offset().top + _element.outerHeight(false) + 5)
//            .css("left", _element.offset().left - _popup.outerWidth(false) + _element.outerWidth(false) - 18);
//        
        _popup
            .css("top", _element.offset().top  + _element.outerHeight(false) + 5)
            .css("left", _element.offset().left - _popup.outerWidth(false) + _element.outerWidth(false));

        if(_popup.is(":visible")) {
            _popup.slideUp("normal");
        } else {
            _popup.slideDown("normal");
        }
    });
}

//  Adds functionality to the close buttons on the popups
function AddCloseButtonHome(Element, PopUp) {
    Element.click(function() {
        var _popup = PopUp;
        
        if(_popup.is(":visible")) {
            _popup.slideUp("normal");
        }
    });
}

//  Adds mouse effects for non-link, clickable elements
function AddMouseEventsHome(Element) {
    Element.mouseover(function() { $(this).css("cursor", "pointer"); });
    Element.mouseout(function() { $(this).css("cursor", "default"); });
}


