<!--


var errorMessage = ''
var errorCount = 0
var everythingOK = true


function trim(s) {
	var j = s.length-1
	for (var i=0; (i <= j) && (s.charAt(i) <= ' '); i++);
	for (; (j > i) && (s.charAt(j) <= ' '); j--);
	return s.substring(i, j+1)
}


function formatField(Field) {
	Field.value = trim(Field.value)
}


function formatIntField(Field) {
	if (!Field.value) return true
	
	var n = parseInt(Field.value, 10)
	if (isNaN(n)) {
		return false
	} else {
		Field.value = n.toString()
		return true
	}
}

function checkIntField(Field, description) {
	if (formatIntField(Field)) {
		return true
	} else {
		addErrorMessage(description ? description : Field.name)
		return false
	}
}


function formatDateField(Field) {
	var s = trim(Field.value)
	
	if (!s) return true
	
	var p1, p2, len
	var d, m, y

	p1 = s.indexOf('.')
	p2 = s.lastIndexOf('.')
	
	if ((p1 < 1) || (p2 <= p1))
		return false

	len = s.length
	d = parseInt(s.substr(0, p1), 10)
	m = parseInt(s.substring(p1+1, p2), 10)
	y = parseInt(s.substr(p2+1), 10)
	
	if (isNaN(d) || isNaN(m))
		return false
	if ((d < 1) || (m < 1))
		return false
	if ((d > 31) || (m > 12))
		return false
	if (isNaN(y)) {
		y = new Date().getFullYear()
	} else {
		if (y < 100) {
			if (y < 20)
				y += 2000
			else
				y += 1900
		}
	}

	Field.value = d + '.' + m + '.' + y
	return true
}

function checkDateField(Field, description) {
	if (formatDateField(Field)) {
		return true
	} else {
		addErrorMessage(description ? description : Field.name)
		return false
	}
}


function checkEmailField(Field, description) {
	var s = Field.value
	if (!s) return true
	
	var RE = /([\w-]+\.)*[\w-]+@([\w-]+\.)+[\w-]+/
	var m = s.match(RE)
	if (m) {
		Field.value = m[0]
		return true
	} else {
		addErrorMessage(description ? description : Field.name)
		return false
	}
}


function formatGSMField(Field, silent) {
	var s = Field.value
	if (!s) return true
	
	var n = ''
	var i
	
	for (i=0; i<s.length; i++) {
		if ((s.charAt(i) <= '9') && (s.charAt(i) >= '0'))
			n = n + s.charAt(i)
	}
	
	if (n.length < 8) {
		if (!silent) alert('Please check the GSM number - it appears to be invalid.')
		return false
	}		
	
	if (n.substr(0,3) == '386')
		i = 3
	else if (n.charAt(0) == '0')
		i = 1
	else {
		if (!silent) alert('Note: The number you have entered is not a valid Slovenian GSM number.')
		return true
	}
		
	if (n.length-i < 8) {
		if (!silent) alert('Please check the GSM number - it appears to be invalid.')
		return false
	}		
	
	if (n.substr(i,2) == '41')
		s = '+386 41 ' + n.substr(i+2)
	else if (n.substr(i,2) == '31')
		s = '+386 31 ' + n.substr(i+2)
	else if (n.substr(i,2) == '40')
		s = '+386 40 ' + n.substr(i+2)
	else {
		if (!silent) alert('Please check the GSM number - it appears to be invalid.')
		return false
	}
	
	Field.value = s
	return true
}

function checkGSMField(Field, description) {
	if (formatGSMField(Field, true)) {
		return true
	} else {
		addErrorMessage(description ? description : Field.name)
		return false
	}
}


function checkFields() {
	var ec = 0
	for (var i=0; i<arguments.length; i+=2) {
		if (!arguments[i].value) {
			ec++
			if (ec == 1) {
				errorMessage = arguments[i+1]
			} else if (ec == 2) {
				errorMessage = 'Prosimo, izpolnite naslednja polja:\n\t- ' + errorMessage + '\n\t- ' + arguments[i+1]
			} else {
				errorMessage += '\n\t- ' + arguments[i+1]
			}
		}
	}
	if (ec > 0) {
		everythingOK = false
		if (ec == 1) {
			errorMessage = 'Prosimo, izpolnite polje "' + errorMessage + '".'
		}
		alert(errorMessage)
		return false
	} else {
		return true
	}
}


function addErrorMessage(message) {
	everythingOK = false
	errorCount++
	if (errorCount == 1) {
		errorMessage = 'Prosimo, popravite nepravilne vrednosti v naslednjih poljih:\n\t- ' + message
	} else {
		errorMessage += '\n\t- ' + message
	}
}


function showErrorMessage() {
	if (errorCount > 0) {
		alert(errorMessage)
		clearErrorMessage()
	}
}


function clearErrorMessage() {
	errorCount = 0
}


function assumeEverythingOK() {
	clearErrorMessage()
	everythingOK = true
}


// -->