EVOLUTION-MANAGER
Edit File: package-form.js
(function ($) { function addFieldError($field, errorMessage) { if (!$field.hasClass('field-has-errors')) { $field.addClass('field-has-errors'); $field.prepend($('<ul/>', {'class': 'field-error-list'})); } $field.find('.field-error-list').append($('<ul/>').text(errorMessage)); } function removeFieldErrors($field) { $field.removeClass('field-has-errors').find('.field-error-list').remove(); } $(document).ready(function () { var $form = $('form#create_pack'); if ($form.length) { // Handle input changes $form.find('input[name=OS]').change(function () { $form.find('.form-frame-user-messages').toggle(this.id == 'OS_WINDOWS'); }); $form.find('input[name=ACTION]').change(function () { $form.find('label[for=ACTION_INPUT]').html($form.find('.action-input-' + $(this).val()).html()); }); $form.find('#DEPLOY_SPEED').change(function () { if ($(this).val() == 'CUSTOM') { $form.find('#PRIORITY, #NB_FRAGS').prop('disabled', false); } else { $form.find('#PRIORITY, #NB_FRAGS').prop('disabled', true); } }); $form.find('#NOTIFY_USER').change(function () { $form.find('.notify-fields').toggle(this.checked); }); $form.find('#NEED_DONE_ACTION').change(function () { $form.find('.done-action-fields').toggle(this.checked); }); $form.find('#REDISTRIB_USE').change(function () { $form.find('.redistrib-fields').toggle(this.checked); }); // Handle file upload $form.find('#FILE').fileupload({ url: 'ajax.php' + window.location.search, dataType: 'json', done: function (e, data) { var fileData = data.result; $form.find('.package-progress-bar').hide().find('.progress-bar').css('width', '0%'); $form.find('input[type=submit]').attr('disabled', false); if (fileData.status == 'success') { // Display file info $form.find('.file-type span').text(fileData.type); $form.find('.file-size span').text(fileData.size); $form.find('.file-info').show(); } else { // Display error message addFieldError($form.find('.field-FILE'), fileData.message); $form.find('.file-field').show(); } }, fail: function (e, data) { addFieldError($form.find('.field-FILE'), 'An error has occurred during file upload'); $form.find('.file-field').show(); $form.find('.package-progress-bar').hide().find('.progress-bar').css('width', '0%'); $form.find('input[type=submit]').attr('disabled', false); }, progressall: function (e, data) { var progress = parseInt(data.loaded / data.total * 100, 10); $form.find('.package-progress-bar .progress-bar').css('width', progress + '%'); } }).change(function () { $form.find('.file-field').hide(); $form.find('.package-progress-bar').show(); $form.find('input[type=submit]').attr('disabled', true); removeFieldErrors($form.find('.field-FILE')); }); } }); })(jQuery);