﻿var BaseUI = 
{
    SearchTB:   null,
    SearchBTN:  null,
    Initialize: function()
    {
        dojo.require('dojo.fx')
        
        BaseUI.SearchTB  = dojo.byId('seSearchTB')
        BaseUI.SearchBTN = dojo.byId('seSearchBTN')
        
        BaseUI.InitializeSearch()
    },
    InitializeSearch: function()
    {
        BaseUI.SearchTB.Mask  = BaseUI.SearchTB.getAttribute('Mask')
        BaseUI.SearchTB.value = BaseUI.SearchTB.Mask
        
        dojo.connect(BaseUI.SearchBTN, 'onclick', null, function()
        {
            BaseUI.SearchBTN_Click()
        })
        dojo.connect(BaseUI.SearchTB, 'onfocus', null, function()
        {
            if (this.value==BaseUI.SearchTB.Mask) { this.value='' }
        })
        dojo.connect(BaseUI.SearchTB, 'onblur', null, function()
        {
            if (this.value == '') { this.value = BaseUI.SearchTB.Mask }
        })
        dojo.connect(BaseUI.SearchTB, 'onkeydown', null, function(e)
        {
            if (e.keyCode == dojo.keys.ENTER)
            {
                e.preventDefault()
                BaseUI.SearchBTN_Click()
                return false
            }
            return true 
        })
    },
    SearchBTN_Click: function()
    {
        var theSearchValue = BaseUI.SearchTB.value == BaseUI.SearchTB.Mask ? '' : BaseUI.SearchTB.value
        
        if (theSearchValue != '')
        {
            document.location.href = '/search-results/?search=' + encodeURIComponent(theSearchValue)
        }
    },
    ToggleBookNowForm: function()
    {
        var bookNowForm            = dojo.byId("book_now_form")
        var bookNowSubmit          = dojo.byId("button_submit")
        var bookNowCancel          = dojo.byId("button_close")
        var bookNowUnSubmittedForm = dojo.byId("start_form")
        var bookNowSubmittedForm   = dojo.byId("submitted_form")

        bookNowForm.style.visibility = "visible"
        bookNowSubmittedForm.style.display = "none"
        
        var wipeArgs = 
        {
            node: bookNowForm,
            duration: 500
        }
        
        dojo.fx.wipeIn(wipeArgs).play();

        dojo.connect(bookNowSubmit, "onclick", function() 
        {
            var anim = dojox.fx.flip(
            {
                node:     "book_now_form",
                dir:      "right",
                duration: 300
            })
            dojo.connect(anim, "onEnd", this, function() 
            {
                bookNowSubmittedForm.style.display = "block"
                
                var wipeArgs = 
                {
                    node:     bookNowForm,
                    duration: 1500,
                    delay:    1000
                }
                
                dojo.fx.wipeOut(wipeArgs).play()
            })
            
            anim.play()
        })

        dojo.connect(bookNowCancel, "onclick", function() 
        {
            var wipeArgs = 
            {
                node:     bookNowForm,
                duration: 500
            };
            
            dojo.fx.wipeOut(wipeArgs).play()
        })
    },
    Expand: function(el)
    {
        if (el)
        {
            el.style.visibility = 'visible';
            el.style.display    = 'block';
        }
    },
    Collapse: function(el)
    {
        if (el)
        {
            el.style.visibility = 'hidden';
            el.style.display    = 'none';
        }
    }
}

dojo.addOnLoad(BaseUI.Initialize)

