
//var no_of_criteria_div, no_of_criteria_span, form_rows; 

function adjust_criteria_caption(form_rows, ndiv, nspan) {
	var cnt = form_rows.filter('.selected').length;
	if (cnt) {
		nspan.html(cnt);
		ndiv.removeClass('hidden');
	} else {
		ndiv.addClass('hidden');
	}
}

function criteria_remove(ahref) {
	var tr = jQuery(ahref);
	while (tr[0].tagName != 'TR') tr = tr.parent();
	var tr_criteria = tr.prev();
	jQuery(':input[skip!=true]', tr_criteria).val('').change();
//	if (tr_criteria.hasClass('warning-third')) tr_criteria.addClass('warning-third-no-criteria');
//	tr.remove();
}

function markrow_with_values(tr) {
	var found = false;
	jQuery(':input[skip!=true]', tr).each(function() {
		if (jQuery(this).val() && (jQuery(this).val() != jQuery(this).attr('default'))) {
			found = true;
		}
	});
	if (found) {
		if (!tr.next().hasClass('criteria-remover')) {
			if (tr.hasClass('warning-third')) {
				tr
					.addClass('selected')
					.removeClass('warning-third-no-criteria')
					.after('<tr class="warning-fourth criteria-remover" align="left"><td colspan="3" ><a href="javascript:void(0);" onclick="criteria_remove(this);">' + criteria_remove_caption + '</a></td></tr>');
			} else { 
				tr
					.addClass('selected')
					.removeClass('warning-third-no-criteria')
					.after('<tr class="criteria-remover"><td class="dotted-line"><a href="javascript:void(0);" onclick="criteria_remove(this);">' + criteria_remove_caption + '</a></td><td class="flat-line" colspan="2">&nbsp;</td></tr>');
			}
		}
	} else {
		tr
			.removeClass('selected')
			.removeClass('warning-third-no-criteria');
	} 
} 

jQuery(function() {
	var rdesc = jQuery('.registar-form-description');
	var sdesc = jQuery('.short-desc', rdesc);
	var ldesc = jQuery('.long-desc', rdesc);
	jQuery('.more-desc', rdesc).click(function() {
		sdesc.addClass('hidden');
		ldesc.removeClass('hidden');
	});
	jQuery('.less-desc', rdesc).click(function() {
		sdesc.removeClass('hidden');
		ldesc.addClass('hidden');
	});

	var regform = jQuery('#regform-form');
	regform.submit(function() {
		inputs.each(function(t) {
			if (jQuery(this).val() == jQuery(this).attr('default')) jQuery(this).val('');
		});
	});	
	
	var inputs = jQuery(':input[skip!=true]', regform);
	var no_of_criteria_div = jQuery('.no-of-criterias-selected', regform);
	var no_of_criteria_span = jQuery('SPAN', no_of_criteria_div);
	var form_rows = jQuery('.table-form > TBODY > TR'); 

	inputs.each(function() {
		if (jQuery(this).val() == '') jQuery(this).val(jQuery(this).attr('default'));
	});
	form_rows
		.addClass('table-form-row')
		.removeClass('selected')
		.each(function() { markrow_with_values(jQuery(this)) });

	inputs.change(function() {
		var $this = jQuery(this);
		var tr = $this.parent();
		while (!tr.hasClass('table-form-row')) tr = tr.parent();
		markrow_with_values(tr);
		if (($this.val() == '')) {
			if (tr.next().hasClass('criteria-remover')) {
				tr.next().remove();
				if (tr.hasClass('warning-third')) tr.addClass('warning-third-no-criteria');
			}
			$this.val($this.attr('default'));
		}
		adjust_criteria_caption(form_rows, no_of_criteria_div, no_of_criteria_span);
	});
	
	inputs.filter('INPUT')
		.focus(function() {
			var $this = jQuery(this);
			if ($this.val() == $this.attr('default')) $this.val('');
		})
		.blur(function() {
			var $this = jQuery(this);
			if ($this.val() == '') $this.val($this.attr('default'));
		});
	adjust_criteria_caption(form_rows, no_of_criteria_div, no_of_criteria_span);
});
