Joomla.submitbutton = function(task) { var messages = {"error": []}; if (task === 'submissions.importtask') { var headers = document.getElementsByName('header[]'); var selectedAValue = false; main_loop: for (var i = 0; i < headers.length; i++) { if (headers[i].value.length > 0) { selectedAValue = true; for (var j = 0; j < headers.length; j++) { if (i !== j && headers[i].value === headers[j].value) { messages.error.push(Joomla.JText._('COM_RSFORM_YOU_HAVE_SELECTED_MULTIPLE_FIELDS').replace('%s', headers[i].value)); break main_loop; } } } } if (!selectedAValue) { messages.error.push(Joomla.JText._('COM_RSFORM_PLEASE_MAP_AT_LEAST_A_FIELD_FROM_THE_DROPDOWN')); } } if (messages.error.length > 0) { Joomla.renderMessages(messages); return false; } Joomla.submitform(task); } function importProcess(start, limit, total) { var xml = buildXmlHttp(); var formId = document.getElementById('formId').value; xml.onreadystatechange = function () { if (xml.readyState == 4) { var post = xml.responseText; if (post.indexOf('END') > -1) { document.getElementById('progressBar').style.width = document.getElementById('progressBar').innerHTML = '100%'; Joomla.renderMessages({'message': [Joomla.JText._('COM_RSFORM_IMPORT_HAS_FINISHED')]}); } else if (post.indexOf('ERROR') > -1) { Joomla.renderMessages({'error': [Joomla.JText._('COM_RSFORM_AN_ERROR_HAS_OCCURRED_DURING_IMPORT')]}); } else { var start = post; document.getElementById('progressBar').style.width = Math.ceil(start * 100 / total) + '%'; document.getElementById('progressBar').innerHTML = Math.ceil(start * 100 / total) + '%'; importProcess(start, limit, total); } } }; xml.open('POST', 'index.php?option=com_rsform&task=submissions.importprocess&formId=' + formId + '&importStart=' + start + '&importLimit=' + limit, true); xml.send(null); }