VRFS-2697 display errors from server-side site check

This commit is contained in:
Jonathan Kolyer 2015-01-31 18:45:10 +00:00
parent 9086fac76a
commit 9e777a84aa
4 changed files with 17 additions and 2 deletions

View File

@ -14,6 +14,7 @@ context.JK.WebsiteValidator = class WebsiteValidator
@site_status = null @site_status = null
init: () => init: () =>
this.renderErrors({})
validator = this validator = this
@url_input.bind 'blur', -> @url_input.bind 'blur', ->
if validator.show_format_status() if validator.show_format_status()
@ -50,10 +51,21 @@ context.JK.WebsiteValidator = class WebsiteValidator
processSiteCheck: (response) => processSiteCheck: (response) =>
if 'Valid Site' == response.message if 'Valid Site' == response.message
@site_status = 'valid' @site_status = 'valid'
this.renderErrors({})
else else
@site_status = 'invalid' @site_status = 'invalid'
this.renderErrors(response)
@logger.debug("site_status = "+@site_status) @logger.debug("site_status = "+@site_status)
processSiteCheckFail: () => processSiteCheckFail: (response) =>
@logger.error("site check error") @logger.error("site check error")
@site_status = 'invalid' @site_status = 'invalid'
renderErrors: (errors) =>
errdiv = @input_div.find('.error')
if errmsg = context.JK.format_errors("site", errors)
errdiv.show()
errdiv.html(errmsg)
else
errdiv.hide()
errdiv.html('')

View File

@ -9,4 +9,6 @@
.valid_checkmark { .valid_checkmark {
float: left; float: left;
} }
.error {
}
} }

View File

@ -709,7 +709,7 @@ class ApiUsersController < ApiController
render json: { message: 'Valid Site' }, status: 200 render json: { message: 'Valid Site' }, status: 200
else else
result =~ /curl: \(\d+\) (.*)/ result =~ /curl: \(\d+\) (.*)/
render json: { message: 'Invalid Site', errors: [$1] }, status: 200 render json: { message: 'Invalid Site', errors: { site: [$1] } }, status: 200
end end
else else
render json: { message: "blank data #{data}" }, status: :unprocessable_entity render json: { message: "blank data #{data}" }, status: :unprocessable_entity

View File

@ -1,4 +1,5 @@
div class="website_validator" id="#{siteid}_url" div class="website_validator" id="#{siteid}_url"
div class="valid_checkmark" &#x2713; div class="valid_checkmark" &#x2713;
input type='text' id="url_input_#{siteid}" maxlength="2000" input type='text' id="url_input_#{siteid}" maxlength="2000"
div class="error"