$("#report-issue-modal-window").html("<%= escape_javascript(render partial: 'report_issue_popup') %>");
+$("#report-issue-modal-window .modal").modal('show');
-// reset form input fields, for the next time around
-function reset_form() {
- $('#report_issue_text').val("");
- $('#additional_info').val("");
-}
+// Disable the submit button on modal loading
+$submit = $('#report-issue-submit');
+$submit.prop('disabled', true);
-// ajax handling for report-issue function
-$(document).
- on('ajax:send', function() {
- var $sendButton = $('#report-issue-submit');
- if ($sendButton) {
- $sendButton.html('Sending...');
- $sendButton.attr('disabled',true);
- }
- var $cancelButton = $('#report-issue-cancel');
- if ($cancelButton) {
- $cancelButton.html('Close');
- }
- $('div').remove('.modal-footer-status');
- }).
- on('ajax:success', function() {
- var $sendButton = $('#report-issue-submit');
- if ($sendButton && $sendButton.prop('disabled')) {
- $sendButton.html('Report sent');
- $('div').remove('.modal-footer-status');
- $('.modal-footer').append('<div class="modal-footer-status alert alert-success"><div><p align="left">Thanks for reporting this issue!</p></div></div>');
- }
- }).
- on('ajax:failure', function() {
- var $sendButton = $('#report-issue-submit');
- if ($sendButton && $sendButton.prop('disabled')) {
- $('div').remove('.modal-footer-status');
- $('.modal-footer').append('<div class="modal-footer-status alert alert-danger"></br><p align="left">We are sorry. We could not submit your report! We really want this to work, though -- please try again.</p></div>');
- $sendButton.html('Report issue');
- $sendButton.attr('disabled',false);
- }
- var $cancelButton = $('#report-issue-cancel');
- if ($cancelButton) {
- var text = document.getElementById('report-issue-cancel').firstChild;
- $cancelButton.html('Cancel');
- }
- });
+// capture events to enable submit button when applicable
+$('#report_issue_text').bind('input propertychange', function() {
+ var problem_desc = document.forms["report-issue-form"]["report_issue_text"].value;
+ $submit.prop('disabled', (problem_desc === null) || (problem_desc === ""));
+});