// --------------------------------------------------
// $id: search site, $last: 11.12.2003 11:00:00
// $ver: 0.05
// --------------------------------------------------

// --------------------------------------------------
// redir() - redirection
// --------------------------------------------------
function redir(url) {
	window.location.href=url;
} // redir()

function gopage(pno) {
	with (document.ssform) {
		page.value=pno
		submit()
	}
}

function gosort(crit) {
	with (document.ssform) {
		sort.value = crit
		submit()
	}
}

// --------------------------------------------------
// validate_search()
// --------------------------------------------------
function validate_search(q,formname) {
// "String." below must be Uppercase!
var char34 = String.fromCharCode(34)
var char39 = String.fromCharCode(39)

wronglen			= "введите строку для поиска (2 - 25 символов)";
illegalchars 	= 'в строке поиска недопустимы символы:\n          / \\ + - * [ ] ( ) '+char34+" "+char39;

	frmKey=document[formname]
	if (!frmKey) frmKey=document.formname
	
	if (!frmKey) {
		if (q) return
		else return false
	}
	
	qval=frmKey.ss.value
	
	if (qval.length==0) {
		alert(wronglen)
		if (q) return
		else return false
	}
	qval.trim()
	
	// check for illegal chars (preg_replace fails)
	if (qval.indexOf(char34) != -1) {
		alert(illegalchars)
		frmKey.ss.focus()
		if (q) return
		else return false
	}
	if (qval.indexOf(char39) != -1) {
		alert(illegalchars)
		frmKey.ss.focus()
		if (q) return
		else return false
	}
	if (qval.indexOf("/") != -1) {
		alert(illegalchars)
		frmKey.ss.focus()
		if (q) return
		else return false
	}
	if (qval.indexOf("\\") != -1) {
		alert(illegalchars)
		frmKey.ss.focus()
		if (q) return
		else return false
	}
	if (qval.indexOf("+") != -1) {
		alert(illegalchars)
		frmKey.ss.focus()
		if (q) return
		else return false
	}
	if (qval.indexOf("-") != -1) {
		alert(illegalchars)
		frmKey.ss.focus()
		if (q) return
		else return false
	}
	if (qval.indexOf("*") != -1) {
		alert(illegalchars)
		frmKey.ss.focus()
		if (q) return
		else return false
	}
	if (qval.indexOf("[") != -1) {
		alert(illegalchars)
		frmKey.ss.focus()
		if (q) return
		else return false
	}
	if (qval.indexOf("]") != -1) {
		alert(illegalchars)
		frmKey.ss.focus()
		if (q) return
		else return false
	}
	if (qval.indexOf("(") != -1) {
		alert(illegalchars)
		frmKey.ss.focus()
		if (q) return
		else return false
	}
	if (qval.indexOf(")") != -1) {
		alert(illegalchars)
		frmKey.ss.focus()
		if (q) return
		else return false
	}

	// check for min/max length
	if (qval.length < 2) {
		alert(wronglen)
		frmKey.ss.focus()
		if (q) return
		else return false
	}

	if (qval.length > 25) {
		alert(wronglen)
		frmKey.ss.focus()
		if (q) return
		else return false
	}

	if (q) frmKey.submit()
	else return true
} // validate_search()

