﻿/// <reference name="MicrosoftAjax.js"/>

Type.registerNamespace("OlympusShopSite");

OlympusShopSite.ImageSwitcherExtenderBehavior = function(element) {
    OlympusShopSite.ImageSwitcherExtenderBehavior.initializeBase(this, [element]);
}

OlympusShopSite.ImageSwitcherExtenderBehavior.prototype = {

    _params: {},
    imgPreload: null,
    mouse$handler: null,


    initialize: function() {
        OlympusShopSite.ImageSwitcherExtenderBehavior.callBaseMethod(this, 'initialize');

        this.imgPreload = new Image();
        this.imgPreload.src = this._params.switchImageUrl;

        this.mouse$handler = Function.createDelegate(this, this.onmouse);
        var element = this.get_element();
        $addHandler(element, "mouseover", this.mouse$handler);
    },

    onmouse: function(e) {
        var imgElement = $get(this._params.targetImageId);
        if(imgElement.src != this.imgPreload.src) {
            imgElement.src = this.imgPreload.src;
        }

    },

    dispose: function() {

        var element = this.get_element();
        $removeHandler(element, "mouseover", this.mouse$handler);
        OlympusShopSite.ImageSwitcherExtenderBehavior.callBaseMethod(this, 'dispose');
    }
}
OlympusShopSite.ImageSwitcherExtenderBehavior.registerClass('OlympusShopSite.ImageSwitcherExtenderBehavior', Sys.UI.Behavior);

if (typeof(Sys) !== 'undefined') Sys.Application.notifyScriptLoaded();

