if (!window.HAAMER)
{
    HAAMER = {}
}

HAAMER.Utils = 
{
    LoadScript: function(flSrc)
    {
        var head;
        var script;
 
        head = $$('head')[0];
        if (head)
        {
            script = new Element('script', { type: 'text/javascript', src: flSrc });
            head.appendChild(script);
        }
    },
    LoadHelp: function(ixHelp)
    {
        new Ajax.Request('help.php', {
            method: 'get',
            parameters: {ixHelp: ixHelp},
            onSuccess: function(response) 
            {
                $('elHelp').down('.helpContent').innerHTML = response.responseText;
                $('elHelp').removeClassName('hidden');
                $('elHelp').down('.helpContent').innerHTML += "<div style='clear: both;'></div>";
                $$('.PSite .content .menuitem.help')[0].addClassName('selected');
                $$('.PSite .content .menuitem.help .isNotSelected')[0].addClassName('hidden');
                $$('.PSite .content .menuitem.help .isSelected')[0].removeClassName('hidden');
            }
        });
    },
    HideHelp: function()
    {
        $('elHelp').addClassName('hidden');
        $$('.PSite .content .menuitem.help')[0].removeClassName('selected');
        $$('.PSite .content .menuitem.help .isSelected')[0].addClassName('hidden');
        $$('.PSite .content .menuitem.help .isNotSelected')[0].removeClassName('hidden');
    },
    ToggleHelp: function()
    {
        if ($('elHelp').hasClassName('hidden'))
        {
            HAAMER.Utils.LoadHelp($('elHelp').getAttribute('ixhelp'));
        }
        else
        {
            HAAMER.Utils.HideHelp();
        }
    },
    CreateCookie: function(ixCookie, oValue, tsExpiry) {
        if (tsExpiry) {
            var date = new Date();
            date.setTime(date.getTime() + tsExpiry);
            sExpires = "; expires=" + date.toGMTString();
        }
        else sExpires = "";
        document.cookie = ixCookie + "=" + oValue + sExpires + "; path=/";
    },

    GetCookie: function(ixCookie) {
        var nameEQ = ixCookie + "=";
        var ca = document.cookie.split(';');
        for (var i = 0; i < ca.length; i++) {
            var c = ca[i];
            while (c.charAt(0) == ' ') c = c.substring(1, c.length);
            if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length, c.length);
        }
        return null;
    },

    RemoveCookie: function(ixCookie) 
    {
        HAAMER.Utils.CreateCookie(ixCookie, "", -1);
    },

    IsCookiePossible: function() 
    {
        var r = false;
        HAAMER.Utils.CreateCookie("isHaamerCookiePossible", "Yes", 3600);
        if (HAAMER.Utils.GetCookie("isHaamerCookiePossible") != null) 
        {
            r = true;
            HAAMER.Utils.RemoveCookie("isHaamerCookiePossible");
        }
        if (!r)
        {
            $('elCookieError').show();
        }
        return r;
    },

    AddWantlist: function(ixAuctionItem)
    {
         new Ajax.Request('ajaxWantlist.php', {
            method: 'post',
            parameters: {ixAuctionItem: ixAuctionItem, action: 'add'},
            onSuccess: function(response) 
            {
                $('elAddWantlist_' + ixAuctionItem).hide();
                $('elRemoveWantlist_' + ixAuctionItem).show();
            }
        });
    },
    RemoveWantlist: function(ixAuctionItem)
    {
         new Ajax.Request('ajaxWantlist.php', {
            method: 'post',
            parameters: {ixAuctionItem: ixAuctionItem, action: 'remove'},
            onSuccess: function(response) 
            {
                $('elAddWantlist_' + ixAuctionItem.toString()).show();
                $('elRemoveWantlist_' + ixAuctionItem.toString()).hide();
            }
        });
    },

    UpdateEmailNotification: function(el)
    {
        if (el.checked)
        {
            var action = 'hasEmailNotificationOn';
        }
        else
        {
            var action = 'hasEmailNotificationOff';
        }
        new Ajax.Request('ajaxUserProfile.php', {
            method: 'post',
            parameters: {action: action}
        });
    },
    ixCurrentAd: 0,
    oTimeoutAppear: null,
    oTimeoutNext: null,
    rsEl: [],
    CycleFrontpageAds: function()
    {
        HAAMER.Utils.rsEl = $$('.fadeable').toArray();
        $$('.fadeable').each(function(el){ if (el.style.display !== 'none') { el.fade({duration: 0.5}); }});
        
        HAAMER.Utils.oTimeoutAppear = setTimeout(
            function () 
            {
                HAAMER.Utils.rsEl[HAAMER.Utils.ixCurrentAd].appear({duration: 0.5});
                $$('.slide').each(function(el){el.removeClassName('active');});
                $('slide_' + HAAMER.Utils.ixCurrentAd.toString()).addClassName('active');
                if (HAAMER.Utils.ixCurrentAd >= HAAMER.Utils.rsEl.length-1)
                {
                    HAAMER.Utils.ixCurrentAd = 0;
                }
                else
                {
                    HAAMER.Utils.ixCurrentAd++;
                }
            },500);
        HAAMER.Utils.oTimeoutNext = setTimeout(HAAMER.Utils.CycleFrontpageAds, 5000);

    },
    ShowAd: function(ixAd)
    {
        clearTimeout(HAAMER.Utils.oTimeoutAppear);
        clearTimeout(HAAMER.Utils.oTimeoutNext);
        HAAMER.Utils.ixCurrentAd = ixAd;
        $$('.fadeable').each(function(el){ if (el.style.display !== 'none') { el.fade({duration: 0.5}); }});
        
        HAAMER.Utils.oTimeoutAppear = setTimeout(function () {HAAMER.Utils.rsEl[HAAMER.Utils.ixCurrentAd].appear({duration: 0.5});},500);
        $$('.slide').each(function(el){el.removeClassName('active');});
        $('slide_' + HAAMER.Utils.ixCurrentAd.toString()).addClassName('active');
    }
}

document.observe("dom:loaded", HAAMER.Utils.IsCookiePossible);
