/*
 * Функция позволяет вводить только цифры.
 */
function NumbersOnly(ev) {
	// Получение кода символа
	if(typeof ev.charCode != "undefined") mykeyCode=ev.charCode;
	else if(window.event) mykeyCode=window.event.keyCode;
	if(!mykeyCode) return true;
	// Проверка кода символа
	if(mykeyCode < 48 || mykeyCode > 57) {
		if(ev.charCode) ev.preventDefault();
		else if(window.event) window.event.returnValue=false;
		return false;
	}
	return true;
};

/*
 * Функция позволяет вводить только цифры и точку.
 */
function DateOnly(ev) {
	// Получение кода символа
	if(typeof ev.charCode != "undefined") mykeyCode=ev.charCode;
	else if(window.event) mykeyCode=window.event.keyCode;
	if(!mykeyCode) return true;
	// Проверка кода символа
	if((mykeyCode < 48 || mykeyCode > 57) && !(mykeyCode == 46)) {
		if(ev.charCode) ev.preventDefault();
		else if(window.event) window.event.returnValue=false;
		return false;
	}
	return true;
};

/*
 * Функция позволяет вводить только цифры, точку с запятой, дефис, скобки, пробел.
 */
function PhoneOnly(ev) {
	// Получение кода символа
	if(typeof ev.charCode != "undefined") mykeyCode=ev.charCode;
	else if(window.event) mykeyCode=window.event.keyCode;
	if(!mykeyCode) return true;
	// Проверка кода символа
	if((mykeyCode < 48 || mykeyCode > 57) && !(mykeyCode == 32) && !(mykeyCode == 40) && !(mykeyCode == 41) && !(mykeyCode == 45) && !(mykeyCode == 59)) {
		if(ev.charCode) ev.preventDefault();
		else if(window.event) window.event.returnValue=false;
		return false;
	}
	return true;
};

/*
 * Функция позволяет вводить только цифры, латинские буквы, знак подчёркивания, точку, дефис, @.
 */
function EmailOnly(ev) {
	// Получение кода символа
	if(typeof ev.charCode != "undefined") mykeyCode=ev.charCode;
	else if(window.event) mykeyCode=window.event.keyCode;
	if(!mykeyCode) return true;
	// alert(mykeyCode);
	// Проверка кода символа
	if(!((mykeyCode >= 48 && mykeyCode <= 57) || (mykeyCode >= 65 && mykeyCode <= 90) || (mykeyCode >= 97 && mykeyCode <= 122) || (mykeyCode == 95) || (mykeyCode == 45) || (mykeyCode == 46) || (mykeyCode == 64) || (mykeyCode == 59))) {
		if(ev.charCode) ev.preventDefault();
		else if(window.event) window.event.returnValue=false;
		return false;
	}
	return true;
}

/*
 * Функция позволяет вводить только цифры, буквы и знак подчёркивания.
 */
function AlphaNumOnly(ev) {
	// Получение кода символа
	if(typeof ev.charCode != "undefined") mykeyCode=ev.charCode;
	else if(window.event) mykeyCode=window.event.keyCode;
	if(!mykeyCode) return true;
	// alert(mykeyCode);
	// Проверка кода символа
	if(!((mykeyCode >= 48 && mykeyCode <= 57) || (mykeyCode >= 65 && mykeyCode <= 90) || (mykeyCode >= 97 && mykeyCode <= 122) || (mykeyCode >= 1040 && mykeyCode <= 1103) || (mykeyCode == 1025) || (mykeyCode == 1105) || (mykeyCode == 95))) {
		if(ev.charCode) ev.preventDefault();
		else if(window.event) window.event.returnValue=false;
		return false;
	}
	return true;
}

/*
 * Функция позволяет вводить только цифры, буквы, дефис, %, #.
 */
function DpOnly(ev) {
	// Получение кода символа
	if(typeof ev.charCode != "undefined") mykeyCode=ev.charCode;
	else if(window.event) mykeyCode=window.event.keyCode;
	if(!mykeyCode) return true;
	// alert(mykeyCode);
	// Проверка кода символа
	if(!((mykeyCode >= 48 && mykeyCode <= 57) || (mykeyCode >= 65 && mykeyCode <= 90) || (mykeyCode >= 97 && mykeyCode <= 122) || (mykeyCode >= 1040 && mykeyCode <= 1103) || (mykeyCode == 1025) || (mykeyCode == 1105)  || (mykeyCode == 45) || (mykeyCode == 35) || (mykeyCode == 37))) {
		if(ev.charCode) ev.preventDefault();
		else if(window.event) window.event.returnValue=false;
		return false;
	}
	return true;
}

/*
 * Функция позволяет вводить только русские буквы, дефис и пробел.
 */
function RusSpaceOnly(ev) {
	// Получение кода символа
	if(typeof ev.charCode != "undefined") mykeyCode=ev.charCode;
	else if(window.event) mykeyCode=window.event.keyCode;
	if(!mykeyCode) return true;
	// alert(mykeyCode);
	// Проверка кода символа
	if(!((mykeyCode >= 1040 && mykeyCode <= 1103) || (mykeyCode == 1025) || (mykeyCode == 1105) || (mykeyCode == 32) || (mykeyCode == 45))) {
		if(ev.charCode) ev.preventDefault();
		else if(window.event) window.event.returnValue=false;
		return false;
	}
	return true;
}

/*
 * Функция позволяет вводить только цифры, русские буквы, пробел, дефис, точку, точку с запятой, скобки, /, кавычки.
 */
function AddrOnly(ev) {
	// Получение кода символа
	if(typeof ev.charCode != "undefined") mykeyCode=ev.charCode;
	else if(window.event) mykeyCode=window.event.keyCode;
	if(!mykeyCode) return true;
	// alert(mykeyCode);
	// Проверка кода символа
	if(!((mykeyCode >= 48 && mykeyCode <= 57) || (mykeyCode >= 1040 && mykeyCode <= 1103) || (mykeyCode == 1025) || (mykeyCode == 1105) || (mykeyCode == 32) || (mykeyCode == 45) || (mykeyCode == 46) || (mykeyCode == 40) || (mykeyCode == 41) || (mykeyCode == 59) || (mykeyCode == 47) || (mykeyCode == 34))) {
		if(ev.charCode) ev.preventDefault();
		else if(window.event) window.event.returnValue=false;
		return false;
	}
	return true;
}

/*
 * Всего лишь реализация trim()
 */
function trim(str) {
	return str.replace(/^\s\s*/, '').replace(/\s\s*$/, '');
}

/*
 * Склеивание
 */
function glue(arr) {
	//arr.sort();
	var str='|';
	if(arr.length) str=str+arr.join('|')+'|';
	return str;
}

/*
 * Всплывающее окошко
 */
function show_popup(popup_link,popup_height,popup_width) {
	popupWin = window.open(popup_link,'_blank','left=20,top=20,width='+popup_width+',height='+popup_height+',toolbar=no,menubar=yes,status=no,scrollbars=yes,resizable=no');
	popupWin.focus();
	return true;
}

/*
 * Вызывается из галереи категории 
 */
function show_catg_popup(img_url) {
	var b = document.getElementsByTagName('base');
 	var id=parseInt(img_url.substring(img_url.lastIndexOf('img_')+4,img_url.lastIndexOf('.jpg')));
 	var plink='show_catg_large.php?id='+id;
 	if (b && b[0] && b[0].href) {
		plink = b[0].href + plink;
	}
	show_popup(plink,caths[id],catws[id]);
}

