fixes #40 - summary noJS messages
This commit is contained in:
parent
5d906c6ff4
commit
8640effbfc
@ -7,11 +7,11 @@
|
||||
return this.each(function(){
|
||||
var lineHeight = parseInt($(this).css('line-height'));
|
||||
var rows = Math.ceil(input / lineHeight);
|
||||
rows = rows == 0 ? 1 : rows;
|
||||
rows = rows === 0 ? 1 : rows;
|
||||
|
||||
$(this).attr('rows', rows);
|
||||
})
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
$('input[type="radio"]').on('change', function() {
|
||||
var inputName = $(this).attr('name');
|
||||
@ -40,7 +40,7 @@ var editClickHandler = function(e) {
|
||||
}
|
||||
else if(thisEd.find('input').attr('type') == 'checkbox') {
|
||||
$(thisEd.find('input')).each(function() {
|
||||
if($(this).prop('checked')==true) {
|
||||
if($(this).prop('checked') === true) {
|
||||
existingValue.push($(this).val());
|
||||
}
|
||||
});
|
||||
@ -91,7 +91,8 @@ var saveClickHandler = function(e) {
|
||||
var thisEd = $(e.delegateTarget);
|
||||
var data =[];
|
||||
var executeQuery;
|
||||
var questionId = thisEd.find('.button-edit').attr('data-questionid');
|
||||
var questionId = thisEd.find('.button-edit').attr('data-questionId');
|
||||
var answerId = thisEd.find('.button-edit').attr('data-answerId');
|
||||
|
||||
if (thisEd.hasClass('live_code-type')) {
|
||||
var htmlAnswer = $(thisEd.find('textarea.code-html')[0]).val();
|
||||
@ -103,27 +104,28 @@ var saveClickHandler = function(e) {
|
||||
'css': cssAnswer,
|
||||
'js': jsAnswer
|
||||
}
|
||||
}
|
||||
};
|
||||
} else if(thisEd.hasClass('radio-type')) {
|
||||
$(thisEd.find('input')).each(function() {
|
||||
if($(this).prop('checked')==true) {
|
||||
if($(this).prop('checked') === true) {
|
||||
data = ({
|
||||
'radio': $(this).val()
|
||||
})
|
||||
});
|
||||
}
|
||||
});
|
||||
} else if(thisEd.hasClass('checkbox-type')) {
|
||||
data = {'checkbox': []};
|
||||
|
||||
$(thisEd.find('input')).each(function() {
|
||||
if($(this).prop('checked')==true) {
|
||||
if($(this).prop('checked') === true) {
|
||||
data.checkbox.push($(this).val());
|
||||
}
|
||||
});
|
||||
} else {
|
||||
data = {'text': thisEd.find('textarea').val()};
|
||||
}
|
||||
if(data == '') {
|
||||
|
||||
if(data === '') {
|
||||
$(thisEd).before('<div class="error">Please select or enter a value.</div>');
|
||||
} else {
|
||||
thisEd.find('textarea:not(.code-answer)').replaceWith('<p class="text-answer answer-container">' + $.trim(thisEd.find('textarea').val()) + '</p>');
|
||||
@ -133,7 +135,7 @@ var saveClickHandler = function(e) {
|
||||
type: "POST",
|
||||
url: url,
|
||||
data: ({
|
||||
'answer': data,
|
||||
'answer': $.extend(data, {'question_id': questionId, 'answer_id': answerId}),
|
||||
'submit': true
|
||||
}),
|
||||
success: function(data){
|
||||
@ -143,12 +145,12 @@ var saveClickHandler = function(e) {
|
||||
executeQuery = false;
|
||||
}
|
||||
}).done(function() {
|
||||
if(executeQuery == true) {
|
||||
if(executeQuery === true) {
|
||||
$('.success, .error').remove();
|
||||
$(thisEd).before('<div class="success">Your answer has been updated successfully!</div>');
|
||||
$(thisEd).find('.code-answer').attr('disabled', true);
|
||||
}
|
||||
if(executeQuery == false) {
|
||||
if(executeQuery === false) {
|
||||
$('.error, .success').remove();
|
||||
$(thisEd).before('<div class="error">Oops! There was an error processing your request. Please try again.</div>');
|
||||
}
|
||||
@ -167,7 +169,7 @@ $('.answer-block').prop('disabled', true);
|
||||
// Question events
|
||||
$('.answer-sec')
|
||||
.find('.button-cancel, .button-save').hide().end()
|
||||
// // delegating events
|
||||
// delegating events
|
||||
.on('click', '.button-edit', editClickHandler)
|
||||
.on('click', '.button-cancel', cancelClickHandler)
|
||||
.on('click', '.button-save', saveClickHandler);
|
||||
|
@ -1,4 +1,4 @@
|
||||
<% if flash[:answer_error] == question.question_id %>
|
||||
<% if flash[:answer_error] == question.question_id && answer.present? %>
|
||||
<% answer.errors.messages[:answer].each do |message| %>
|
||||
<div class="error"><%= message %></div>
|
||||
<% end %>
|
||||
|
@ -11,18 +11,22 @@
|
||||
Please revisit this page with JavaScript enabled to modify your answer.
|
||||
</div> -->
|
||||
|
||||
<% unless params[:action] == 'summary' %>
|
||||
<div data-id="live-coder-finish-later">
|
||||
<p class="warning">
|
||||
This is a question where you will be asked to write code, and it utilizes a JavaScript-enabled
|
||||
environment. It looks like JavaScript is not loaded. Please check the box below
|
||||
to acknowledge that you agree to come back at a later time to finish answering this question
|
||||
before you can submit the test.
|
||||
environment. It looks like JavaScript is not loaded.
|
||||
<% unless params[:action] == 'summary' %>
|
||||
Please check the box below to acknowledge that you agree to come back at a later time to finish
|
||||
answering this question before you can submit the test.
|
||||
<% else %>
|
||||
You will need to enable JavaScript and answer this question before you can submit the test.
|
||||
<% end %>
|
||||
</p>
|
||||
<% unless params[:action] == 'summary' %>
|
||||
<%= form.check_box(:answer, checkbox_html, true, '') %>
|
||||
<%= form.label(option_id, 'I will come back later to finish this code question') %>
|
||||
</div>
|
||||
<% end %>
|
||||
</div>
|
||||
|
||||
<div data-id="live-coder-answer">
|
||||
<% # answers inserted dynamically via jQuery .load()
|
||||
|
@ -15,7 +15,7 @@
|
||||
<h3><%= question.question %></h3>
|
||||
</div>
|
||||
<div class="answer-buttons">
|
||||
<a href="<%= question_path(question.question_id) %>" class="tertiary-btn button-edit" data-questionId="<%= question.question_id %>">Edit</a>
|
||||
<a href="<%= question_path(question.question_id) %>" class="tertiary-btn button-edit" data-answerId="<%= question.answer_id %>" data-questionId="<%= question.question_id %>">Edit</a>
|
||||
<button class="tertiary-btn button-save">Save</button>
|
||||
<button class="tertiary-btn button-cancel">Cancel</button>
|
||||
</div>
|
||||
|
Loading…
Reference in New Issue
Block a user