var isInternetExplorer = (navigator.appName.indexOf("Microsoft") != -1);

/*
future references:
var keycode = isInternetExplorer ? event.keyCode : event.which;
*/
function change_click(method)
{
	var screenvalue=eval(document.getElementById("screen").value);
	if(isNaN(screenvalue))
		screenvalue=1;
	if(method=='up')
		document.getElementById("screen").value=screenvalue+1;
	else
		document.getElementById("screen").value=screenvalue-1;
	document.getElementById("frmtable").submit();
	
}
function countSpaces(obj){
	var iLength = obj.value.length;
	var strSpaces = obj.value.match(new RegExp("( )", "g"));
	var countSpaces = strSpaces ? strSpaces.length : 0;
	return countSpaces;
}

function countLineBreaks(obj){
	var iLength = obj.value.length;
	var strLineBreaks = obj.value.match(new RegExp("(\\n)", "g"));
	var countLineBreaks = strLineBreaks ? strLineBreaks.length : 0;
	return countLineBreaks;
}

function textCounter(field, counter_field, maxlimit) {
	var lineBreaks = countLineBreaks(field);
	var adjust = isInternetExplorer ? 1 : 0;
	if (field.value.length - lineBreaks * adjust > maxlimit){
		field.value = field.value.substring(0, maxlimit + lineBreaks * adjust);
		field.focus();
	} else {
		counter_field.value = maxlimit - field.value.length + lineBreaks * adjust;
	}
}

function backToSection(backToURL, forceBackToURL){
	if(forceBackToURL == null) forceBackToURL = false;
	if(history.length > 1 && !forceBackToURL) history.back(); else window.location.href = backToURL;
}

function hideStatus(){
	window.defaultStatus='';
	window.status='';
	return true;
}

function searchReset() {
	tot = document.search_form.elements.length;
	for(i=0;i<tot;i++) {
		if (document.search_form.elements[i].type == 'text') {
			document.search_form.elements[i].value = "";
		} else if (document.search_form.elements[i].type == 'checkbox' || document.search_form.elements[i].type == 'radio') {
			document.search_form.elements[i].checked = false;
		} else if (document.search_form.elements[i].type == 'select-one') {
			document.search_form.elements[i].selectedIndex = 0;
		}
	}
	if ((document.search_form.country_id) || (document.search_form.state_id) || (document.search_form.region_id) || (document.search_form.city_id) || (document.search_form.area_id)) {
		searchLocationReset();
	}
}

function easyFriendlyUrl(name2friendlyurl, target, validchars, separator) {
	var str = "";
	var i;
	var exp_reg = new RegExp("[" + validchars + separator + "]");
	var exp_reg_space = new RegExp("[ ]");
	name2friendlyurl.toString();
	for (i=0 ; i<name2friendlyurl.length; i++) {
		if (exp_reg.test(name2friendlyurl.charAt(i))) {
			str = str+name2friendlyurl.charAt(i);
		} else {
			if (exp_reg_space.test(name2friendlyurl.charAt(i))) {
				if (str.charAt(str.length-1) != separator) {
					str = str + separator;
				}
			}
		}
	}
	if (str.charAt(str.length-1) == separator) str = str.substr(0, str.length-1);
	document.getElementById(target).value = str;
	
	// add AJAX call to check if URL available - kchevalier@suntouchdesign.com. 2/15/10
	var targetJO = jQuery( '#' + target.toString() );
	var idJO = jQuery( '#id' );
	var messageJO = jQuery('p.AJAX_message');
	var passInputJO = jQuery('#friendly_url_pass');
	var messageText = 'Sorry, we could not validate this URL. Please try again.';
	var messageClass = 'AJAX_fail_message';
	var urlPass = 'false';
	var listingId = 0;
	var ajaxURL = '/validateURL-AJAX.php';
	
	if ( idJO.val() ) {
		listingId = idJO.val();
		ajaxURL = '/members/listing/validateURL-AJAX.php';
	}
	
	if ( str == '' ) {
		passInputJO.val( 'false' );
		var slideTime = 500;
		if ( messageJO.text() == '' ) slideTime = 0;
		messageJO.slideUp( slideTime, function() {
			messageJO.removeClass( 'AJAX_fail_message AJAX_success_message' );
			messageJO.addClass( 'AJAX_fail_message' );
			messageJO.text( "Please enter a URL for your profile." );
			messageJO.slideDown();
		});
	}
	else {
		jQuery.ajax({
			type: 'GET',
			url: ajaxURL,
			data: { url: targetJO.val(), id: listingId },
			dataType: 'xml',
			success: function( results, textStatus ){
				urlPass = jQuery(results).find('success').text();
				var urlMessage = jQuery(results).find('message');
				if ( urlPass == 'true' ) {
					messageText = urlMessage.text();
					messageClass = 'AJAX_success_message';
				}
				else {
					messageText = urlMessage.text();
				}
			},
			complete: function() {
				passInputJO.val( urlPass );
				var slideTime = 500;
				if ( messageJO.text() == '' ) slideTime = 0;
				messageJO.slideUp( slideTime, function() {
					messageJO.removeClass( 'AJAX_fail_message AJAX_success_message' );
					messageJO.addClass( messageClass );
					messageJO.text( messageText );
					messageJO.slideDown();
				});
			}
		});
	}
	
}

function searchLocationReset() {
	if (document.search_form.country_id) {
		if (document.search_form.state_id) {
			while (document.search_form.state_id.options.length>1) {
				deleteIndex=document.search_form.state_id.options.length-1;
				document.search_form.state_id.options[deleteIndex]=null;
			}
		}
		if (document.search_form.region_id) {
			while (document.search_form.region_id.options.length>1) {
				deleteIndex=document.search_form.region_id.options.length-1;
				document.search_form.region_id.options[deleteIndex]=null;
			}
		}
		if (document.search_form.city_id) {
			while (document.search_form.city_id.options.length>1) {
				deleteIndex=document.search_form.city_id.options.length-1;
				document.search_form.city_id.options[deleteIndex]=null;
			}
		}
		if (document.search_form.area_id) {
			while (document.search_form.area_id.options.length>1) {
				deleteIndex=document.search_form.area_id.options.length-1;
				document.search_form.area_id.options[deleteIndex]=null;
			}
		}
	} else if (document.search_form.state_id) {
		if (document.search_form.region_id) {
			while (document.search_form.region_id.options.length>1) {
				deleteIndex=document.search_form.region_id.options.length-1;
				document.search_form.region_id.options[deleteIndex]=null;
			}
		}
		if (document.search_form.city_id) {
			while (document.search_form.city_id.options.length>1) {
				deleteIndex=document.search_form.city_id.options.length-1;
				document.search_form.city_id.options[deleteIndex]=null;
			}
		}
		if (document.search_form.area_id) {
			while (document.search_form.area_id.options.length>1) {
				deleteIndex=document.search_form.area_id.options.length-1;
				document.search_form.area_id.options[deleteIndex]=null;
			}
		}
	} else if (document.search_form.region_id) {
		if (document.search_form.city_id) {
			while (document.search_form.city_id.options.length>1) {
				deleteIndex=document.search_form.city_id.options.length-1;
				document.search_form.city_id.options[deleteIndex]=null;
			}
		}
		if (document.search_form.area_id) {
			while (document.search_form.area_id.options.length>1) {
				deleteIndex=document.search_form.area_id.options.length-1;
				document.search_form.area_id.options[deleteIndex]=null;
			}
		}
	} else if (document.search_form.city_id) {
		if (document.search_form.area_id) {
			while (document.search_form.area_id.options.length>1) {
				deleteIndex=document.search_form.area_id.options.length-1;
				document.search_form.area_id.options[deleteIndex]=null;
			}
		}
	}
}

function $(id) {
	return document.getElementById(id);
}
