diff --git a/app/assets/javascripts/admin/addon/components/permalink-form.js b/app/assets/javascripts/admin/addon/components/permalink-form.js index a5a8a95e35a..da8f947170c 100644 --- a/app/assets/javascripts/admin/addon/components/permalink-form.js +++ b/app/assets/javascripts/admin/addon/components/permalink-form.js @@ -69,9 +69,13 @@ export default Component.extend({ this.set("formSubmitted", false); let error; - if (e.responseJSON && e.responseJSON.errors) { + if ( + e.jqXHR && + e.jqXHR.responseJSON && + e.jqXHR.responseJSON.errors + ) { error = I18n.t("generic_error_with_reason", { - error: e.responseJSON.errors.join(". "), + error: e.jqXHR.responseJSON.errors.join(". "), }); } else { error = I18n.t("generic_error"); diff --git a/app/models/permalink.rb b/app/models/permalink.rb index 844678923d8..11ea908d9f6 100644 --- a/app/models/permalink.rb +++ b/app/models/permalink.rb @@ -8,6 +8,8 @@ class Permalink < ActiveRecord::Base before_validation :normalize_url + validates :url, uniqueness: true + class Normalizer attr_reader :source