//Touch-Screen-Friendly-Magento-Menus-Prototype
//Event.observe(window, 'load', function(){
//	   var el = document.createElement('div');
//	   var regClick = 0;
//	   el.setAttribute('ongesturestart', 'return;');
//	   var navEl = $$('#nav>li>a');
//	   if(typeof el.ongesturestart == "function"){
//	   	  navEl.invoke('observe', 'click', function(navClick){
//	   	      if(regClick == 0){
//	   	          Event.stop(navClick);
//	   	          regClick = 1;
//	   	      }else{
//	   	          regClick = 0;
//	   	      }
//
//	   	  });
//	   }
//});

jQuery.arrayIntersect = function(a, b) {
        return jQuery.grep(a, function(i)
        {
            return jQuery.inArray(i, b) > -1;
        });
};

function toggleValidationElement(element) {
    var classList = element.className.split(/\s+/);
    var validateString = 'validate-';
    var offString = 'voff-';
    for (var i = 0; i < classList.length; i++) {
        if (classList[i] === 'required-entry' || classList[i].slice(0, validateString.length) == validateString) {
            element.addClassName(offString+classList[i]);
            element.removeClassName(classList[i]);
        } else if (classList[i].slice(0, offString.length) == offString) {
            element.addClassName(classList[i].slice(offString.length));
            element.removeClassName(classList[i]);
        }
    }    
}

function toggleValueElementsReadyonly(checkbox, container, excludedElements, checked) {
    if(container && checkbox) {
        var ignoredElements = [checkbox];
        if (typeof excludedElements != 'undefined') {
            if (Object.prototype.toString.call(excludedElements) != '[object Array]') {
                excludedElements = [excludedElements];
            }
            for (var i = 0; i < excludedElements.length; i++) {
                ignoredElements.push(excludedElements[i]);
            }
        }
        //var elems = container.select('select', 'input');
        var elems = Element.select(container, ['select', 'input', 'textarea', 'button', 'img']);
        var isDisabled = (checked != undefined ? checked : checkbox.checked);
        elems.each(function (elem) {
            if (checkByProductPriceType(elem)) {
                var i = ignoredElements.length;
                while (i-- && elem != ignoredElements[i]);
                if (i != -1) {
                    return;
                }
                if (isDisabled) {
                    elem.setAttribute('readonly',isDisabled);
                    elem.addClassName('disabled');
                    toggleValidationElement(elem);
                } else {
                    elem.removeAttribute('readonly');
                    elem.removeClassName('disabled');
                    toggleValidationElement(elem);
                }
                if (elem.nodeName.toLowerCase() == 'img') {
                    isDisabled ? elem.hide() : elem.show();
                }
            }
        });
    }
}

jQuery(document).ready(function(){
    let emailFields = (document.querySelectorAll('.validate-email').length !== 0 ? document.querySelectorAll('.validate-email') : document.querySelectorAll('input[name="email"]'));
    if(emailFields.length !== 0){
        emailFields.forEach(element => {
            element.addEventListener('keyup', (ev)=>{
                ev.target.value = ev.target.value.toLowerCase();
            });
        });
    }
});