﻿/// <reference path="jquery-1.2.6-vsdoc.js" />

$(function() {
    subscribeToPublihers();
    setupHardwoodButton();
});

function subscribeToPublihers() {
    setupHardwoodButton.subscribe(AjaxManager.Operation.onOperationChanged);
}

function setupHardwoodButton() {
    var button = $('.jq_HardwoodEstimate');
    var operation = AjaxManager.Operation.getOperation();
    if (operation === null || operation === undefined) {
        return;
    }

    var doesHardwood = operation.DoesHardwoodDeepCleaning || operation.DoesHardwoodDeepCleaningOnline;

    if (doesHardwood) {
        button.show();
        button.click(jq_HardwoodEstimate_click);
    } else {
        button.hide();
        button.unbind();
    }
}

function jq_HardwoodEstimate_click(e) {
    SchedulingTool.checkHardwoodEstimate();
    fadeMessage();
}

function fadeMessage() {
    var button = $('.jq_HardwoodEstimate');
    var container = $(div());
    var off = $.browser.msie && $.browser.version.search(/^7\..+/) > -1 ? 0 : 30;
    var offLeft = $.browser.safari ? 208 : 0;

    with (container) {
        css('width', '115px');
        css('background-color', '#FFFFCC');
        css('border', 'solid 1px #FDCB36');
        css('position', 'absolute');
        css('margin-left', button.css('margin-left'));
        css('margin-right', button.css('margin-right'));
        css('margin-top', button.css('margin-top'));
        css('margin-bottom', button.css('margin-bottom'));
        css('float', button.css('float'));
        css('padding', '2px');
        css('text-align', 'center');
        css('top', (button.position().top - off) + 'px');
        css('left', (button.position().left - offLeft) + 'px');
        css('z-index', '1000');
        append('When you’re ready to schedule your free in-home hardwood cleaning estimate, '
         + 'click “Schedule Now” in the “No Obligation Quote” box on the left.');
    }

    button.after(container);
    container.fadeIn('normal', function() {
        setTimeout(function() {
            container.fadeOut(1000, function() {
                container.remove();
            });
        }, 4000);
    });
}