function getRadioValue(elem) {
 theGroup = elem;
 for (i=0; i<= theGroup.length; i++) {
     if (theGroup[i].checked) {
	 return theGroup[i].value;
	 }
 }
 return 0;
}

// Удаление пробелов начале и конце строки
function trim(string)
{
	return string.replace(/(^\s+)|(\s+$)/g, "");
}


// Проверка отмеченных чекбоксов и установка максимального кол-ва разрешенного для отмечания
function checkChecked(name, min, max) {
	var check = document.getElementsByName(name);
	count = 0;
	for (var i=0; i<check.length; i++) {
      if (check[i].checked) count++;
	}
	if (count<=max && count>=min) return true; 
	else return false;
}

// Отметить все чекбоксы или снять
function setChecked(obj) 
   {
   var str = document.getElementById("text").innerHTML;
   str = (str == "отметить" ? "снять" : "отметить");
   document.getElementById("text").innerHTML = str;
   
   var check = document.getElementsByName("id[]");
   for (var i=0; i<check.length; i++) 
      {
      check[i].checked = obj.checked;
      }
}

// Отправка формы при нажатии Enter
function submitViaEnter(evt, form_obj) {
    evt = (evt) ? evt : event;
    var target = (evt.target) ? evt.target : evt.srcElement;
    var form = target.form;
    var charCode = (evt.charCode) ? evt.charCode :
        ((evt.which) ? evt.which : evt.keyCode);
    if (charCode == 13 || charCode == 3) {
        //if (validateForm(form)) {
            form_obj.submit();
            return false;
        //}
    }
    return true;
}

// Проверка валидности E-mail
function isEMailAddr(elem) {
	var str = elem.value;
    str = str.toLowerCase( );
    if (str.indexOf("@") > 1) {
        var addr = str.substring(0, str.indexOf("@"));
        var domain = str.substring(str.indexOf("@") + 1, str.length);
        // at least one top level domain required
        if (domain.indexOf(".") == -1) {
            alert("Проверьте e-mail");
            return false;
        }
        // parse address portion first, character by character
        for (var i = 0; i < addr.length; i++) {
            oneChar = addr.charAt(i).charCodeAt(0);
            // dot or hyphen not allowed in first position; dot in last
            if ((i == 0 && (oneChar == 45 || oneChar == 46))  || 
                (i == addr.length-1 && oneChar == 46)) {
                alert("Проверьте email");
                return false;
            }
            // acceptable characters (- . _ 0-9 a-z)
            if (oneChar == 45 || oneChar == 46 || oneChar == 95 || 
                (oneChar > 47 && oneChar < 58) || (oneChar > 96 && oneChar < 123)) {
                continue;
            } else {
                alert("Проверьте email");
                return false;
            }
        }
        for (i = 0; i < domain.length; i++) {
            oneChar = domain.charAt(i).charCodeAt(0);
            if ((i == 0 && (oneChar == 45 || oneChar == 46)) || ((i == domain.length - 1  || i == domain.length - 2) && oneChar == 46)) {
                alert("Проверьте e-mail");
                return false;
            }
            if (oneChar == 45 || oneChar == 46 || oneChar == 95 || 
                (oneChar > 47 && oneChar < 58) || (oneChar > 96 && oneChar < 123)) {
                continue;
            } else {
                alert("Проверьте e-mail");
                return false;
            }
        }
        return true;
    }
    //alert("Проверьте Email!");
    return false;
}

function checkDate(fld) {
    var mo, day, yr;
    var entry = fld.value;
    var re = /\b\d{1,2}[.]\d{1,2}[.]\d{4}\b/;
    if (re.test(entry)) {
        var delimChar = ".";
        var delim1 = entry.indexOf(delimChar);
        var delim2 = entry.lastIndexOf(delimChar);
        day = parseInt(entry.substring(0, delim1), 10);
        mo = parseInt(entry.substring(delim1+1, delim2), 10);
        yr = parseInt(entry.substring(delim2+1), 10);
        var testDate = new Date(yr, mo-1, day);
        alert(testDate)
        if (testDate.getDate( ) == day) {
            if (testDate.getMonth( ) + 1 == mo) {
                if (testDate.getFullYear( ) == yr) {
                    return true;
                } else {
                    alert("Проверьте дату!");
                }
            } else {
                alert("Проверьте дату!");
            }
        } else {
            alert("Проверьте дату!");
        }
    } else {
        alert("Проверьте дату! Требуемый формат: дд.мм.гггг");
    }
    return false;
}
