Ну вот, на вскидку, уже тут бред пошел:
if (el.name == "login" && value == "") errorList.push(1)
else if ((value.length)>10) errorList.push(7)
else if (reg_login.exec(login) == null) errorList.push(6);
К примеру, если el.name == "mail" то в этом if'е мы пойдем по ветке else, если длинна поля mail больше 10 символов, то этот проверяльщик выдаст "Длина логина не должна превышать 10 символов".