//requires error container wirh id = "errorContainer" and "error_{fileld_validated}"
var TopInsApi = new function() {
	
	this.validate = function(formId) {

		var form = $('#'+formId);

		var errorContainer = $('#errorContainer');
		
		errorContainer.html('');
		$('p.valid').html('');
		$('#'+formId+' :input').removeClass('error');
		
		$.ajax({
			type: 'POST',
			url: "api.php",
			data: form.serialize(),
			dataType: 'json',
			success: function(data) {

				if (!data) {
					// invalid response
					errorContainer.html('Invalid service response');
					form.submit();
				} else if (data['status'] == 'success') {
					form.submit();
				} else if (data['status'] == 'error') {
					$.each(data['data'], function(index, info) {
						$('#'+info.field).addClass('error');
						$('#error_'+info.field).html(info.message);
					});
				} else {
					errorContainer.html('Problem accessing validation service');
					form.submit();
				}
				
			},
			error: function(data) {
				// if api doesnt work just submit form
				form.submit();
			}
		});
	};
};