var stock = {
	skipSymbolCheck : false,
	checkboxes   : ['marketOpen','marketClose','abovePrice','belowPrice','percentUpFromOpen','percentDownFromOpen'],
	chkInputMap  : {'fld_abovePrice':'abovePrice', 'fld_belowPrice':'belowPrice', 'sel_percentUpFromOpen':'percentUpFromOpen', 'sel_percentDownFromOpen':'percentDownFromOpen'},
	onPriceClick : function(obj) {
		if (stock.chkInputMap[obj.id]) _chk(stock.chkInputMap[obj.id], 1);
	}
}

function validateInput() {
	var alertObjectId = 'userAlertObject';
	
	if (!stock.skipSymbolCheck && !_trim(_val(alertObjectId))) {
		alert('Please enter a stock or fund symbol.');
		_foc(alertObjectId);
		return false;
	}
	
	var abovePrice = _trim(_val('fld_abovePrice'));
	if (!abovePrice) { _chk('abovePrice', 0); }
	else if (!valHelper.isPrice(abovePrice) && _isChecked('fld_abovePrice')) {
		alert('Above price is invalid.');
		return false;
	}
	
	var belowPrice = _trim(_val('fld_belowPrice'));
	if (!belowPrice) { _chk('belowPrice', 0); }
	else if (!valHelper.isPrice(belowPrice) && _isChecked('fld_belowPrice')) {
		alert('Below price is invalid.');
		return false;
	}
	
	if (!atLeastOneChecked(stock.checkboxes)) {
		alert(ERROR.CHOOSE_WHEN);
		return false;
	}		
	
	return true;
}