var $dom = {
    'element': function(elementid) {
        return document.getElementById(elementid);
    },
    'tag': function (tagName) {
       return document.getElementsByTagName(tagName);
    }
};
 
var $validate = {
    'settings': {
        'error': {
            'background_color': '#FFFFCC',
            'background_image': "url(http://www.hotelplaza.hr/test-0/rezervacija/exclamation.png)",
            'background_position': "right",
            'background_repeat': 'no-repeat'
        }
    },
    'required': function(elementid) {
        elem = $dom.element(elementid);
        if(elem != null) {
            if(elem.value.length == 0) {
                $validate.__render_error($dom.element(elementid));
                return false;            
            }
            $validate.__clear_error($dom.element(elementid));
            return true;
        }
        return true;
    },
    'date_compare': function(elementid, date1, date2) {
        var d1 = Date.parse(date1);
        var d2 = Date.parse(date2);
        if(d1 >= d2) {
            $validate.__render_error($dom.element(elementid));
            return false;
        }
        $validate.__clear_error($dom.element(elementid));
        return true;
    },
    'email': function(elementid) {
        if(!$dom.element(elementid).value.match(/^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/)) {
            $validate.__render_error($dom.element(elementid));
            return false;
        }
        $validate.__clear_error($dom.element(elementid));
        return true;        
    },
    '__render_error': function(element) {
        element.focus();
        element.style.backgroundColor = $validate.settings.error.background_color;
        element.style.backgroundImage = $validate.settings.error.background_image;
        element.style.backgroundRepeat = $validate.settings.error.background_repeat;
        element.style.backgroundPosition = $validate.settings.error.background_position;
    },
    '__clear_error': function(element) {
        element.style.backgroundColor = '';
        element.style.backgroundImage = '';
        element.style.backgroundRepeat = '';
        element.style.backgroundPosition = '';
    }
};
 
 










