﻿function CMSFieldOnFocus(o) {
    if ((o != null) && (o.attributes['emptyText'] != null) && (o.value == o.attributes['emptyText'].value))
        o.value = '';
}
function CMSFieldOnBlur(o) {
    if ((o != null) && (o.attributes['emptyText'] != null) && (o.value == ''))
        o.value = o.attributes['emptyText'].value;
}
function CMSFieldInitializeEmptyValue(o) {
    if ((o != null) && (o.attributes['emptyText'] != null) && (o.value == ''))
        o.value = o.attributes['emptyText'].value;
}

function CMSOverlayLabel(inputControlClientID, labelControlClientID) {
    this.inputControl = document.getElementById(inputControlClientID);
    this.labelControl = document.getElementById(labelControlClientID);

    this.hideLabel = function(event) {
        event = event || window.event;
        var eventTarget = event.target || event.srcElement;
        if (!eventTarget || !eventTarget.overlayObject) return;

        eventTarget.overlayObject.labelControl.style.display = 'none';
        eventTarget.overlayObject.inputControl.focus();
    };

    this.showLabel = function(event) {
        event = event || window.event;
        var eventTarget = event.target || event.srcElement;
        if (!eventTarget || !eventTarget.overlayObject) return;

        if (eventTarget.overlayObject.inputControl.value.length <= '0') {
            eventTarget.overlayObject.labelControl.style.display = '';
        }
    };

    ///////////////////////////////////////////////////////////////////////////////////
    // Initialization
    this.Init = function() {
        if (!this.labelControl || !this.inputControl) return;

        this.labelControl.overlayObject = this;
        this.inputControl.overlayObject = this;

        var imputControlDim = getDimensions(this.inputControl);
        this.labelControl.style.height = imputControlDim.height + 'px';
        this.labelControl.style.width = imputControlDim.width + 'px';
        this.labelControl.style.position = 'absolute';
        this.labelControl.style.lineHeight = imputControlDim.height + 'px';
        //this.labelControl.style.textAlign = 'center';

        if ((this.inputControl.disabled == null) || (this.inputControl.disabled == undefined) ||
            !this.inputControl.disabled) {
            attachEventToElement(this.labelControl, 'click', this.hideLabel);
            attachEventToElement(this.inputControl, 'focus', this.hideLabel);
            attachEventToElement(this.inputControl, 'blur', this.showLabel);
        }

        if (this.inputControl.value.length <= '0') {
            this.labelControl.style.display = '';
        }
        else {
            this.labelControl.style.display = 'none';
        }
    }
    this.Init();
}

function BuyButtonPerformAction(buttonClientID, hiddenFieldClientID, articleData) {
    buttonControl = document.getElementById(buttonClientID);
    hiddenFieldControl = document.getElementById(hiddenFieldClientID);
    if (!buttonControl || !hiddenFieldControl) return;

    hiddenFieldControl.value = articleData;
    buttonControl.click();
    return false;
}