window.addEvent('domready', function() {
    window.include = function (destination) {
        var element = window.document.createElement('script');
        element.setAttribute('src', destination);
        window.document.body.appendChild(element);
    }

    var modifyBoxes = function()
    {
        var boxes = $(document.body).getElements('*.box');
        var i = boxes.length; while(i--)
        {
            var box = boxes[i];
            var content = box.innerHTML;
            box.innerHTML = '';
            new Element('div', {'class': 'corner TL'}).inject(box);
            new Element('div', {'class': 'corner TR'}).inject(box);
            new Element('div', {'class': 'corner BL'}).inject(box);
            new Element('div', {'class': 'corner BR'}).inject(box);
            var innerBox = new Element('div', {'class': 'cornerBoxInner'});
            innerBox.innerHTML = content;
            innerBox.inject(box);
        }
    }

    var setHintedFields = function()
    {
        var inputElements = $$('input.hint');
        var i = inputElements.length; while(i--)
        {
            var inputElement = inputElements[i];
            inputElement.value = inputElement.title;
            inputElement.addClass('hinted');
            if (inputElement.hasClass('password'))
            {
                try{ inputElement.type = 'text';} catch(e) {} // IE can't set type property. Read-only.
            }

            inputElement.addEvent('focus', function()
            {
                if (this.value === this.title)
                {
                    this.value = '';
                    if (this.hasClass('password'))
                    {
                        try{ this.type = 'password';} catch(e) {}
                        this.focus();
                    }
                    inputElement.removeClass('hinted');
                }
            });
            inputElement.addEvent('blur', function()
            {
                if (this.value === '')
                {
                    this.value = this.title;
                    if (this.hasClass('password'))
                    {
                        try{ this.type = 'text';} catch(e) {}
                    }
                    inputElement.addClass('hinted');
                }
            });
        }
    }

    modifyBoxes();
    setHintedFields();

});

