diff --git a/app/models/enterprise_group.rb b/app/models/enterprise_group.rb index c6160fb404..47a0ef4303 100644 --- a/app/models/enterprise_group.rb +++ b/app/models/enterprise_group.rb @@ -74,6 +74,16 @@ class EnterpriseGroup < ApplicationRecord permalink end + # Remove any unsupported HTML. + def long_description + HtmlSanitizer.sanitize(super) + end + + # Remove any unsupported HTML. + def long_description=(html) + super(HtmlSanitizer.sanitize(html)) + end + private def sanitize_permalink diff --git a/spec/models/enterprise_group_spec.rb b/spec/models/enterprise_group_spec.rb index 8902e7cb4e..aa2c10f2ed 100644 --- a/spec/models/enterprise_group_spec.rb +++ b/spec/models/enterprise_group_spec.rb @@ -118,4 +118,16 @@ RSpec.describe EnterpriseGroup do end end end + + describe "serialisation" do + it "sanitises HTML in long_description" do + subject.long_description = "Hello dearest monster." + expect(subject.long_description).to eq "Hello alert dearest monster." + end + + it "sanitises existing HTML in long_description" do + subject[:long_description] = "Hello dearest monster." + expect(subject.long_description).to eq "Hello alert dearest monster." + end + end end