Skip to content

Commit

Permalink
feat: removed styling from course update notification (#35680)
Browse files Browse the repository at this point in the history
  • Loading branch information
muhammadadeeltajamul authored Oct 21, 2024
1 parent f078b14 commit 968f4f7
Show file tree
Hide file tree
Showing 2 changed files with 17 additions and 17 deletions.
15 changes: 14 additions & 1 deletion cms/djangoapps/contentstore/tests/test_utils.py
Original file line number Diff line number Diff line change
Expand Up @@ -960,4 +960,17 @@ def test_course_update_notification_sent(self):
send_course_update_notification(self.course.id, content, self.user)
assert Notification.objects.all().count() == 1
notification = Notification.objects.first()
assert notification.content == "<p><strong><p>content</p></strong></p>"
assert notification.content == "<p><strong>content</strong></p>"

def test_if_content_is_plain_text(self):
"""
Test that the course_update notification is sent.
"""
user = UserFactory()
CourseEnrollment.enroll(user=user, course_key=self.course.id)
assert Notification.objects.all().count() == 0
content = "<p>content<p>Sub content</p><h1>heading</h1></p><img src='' />"
send_course_update_notification(self.course.id, content, self.user)
assert Notification.objects.all().count() == 1
notification = Notification.objects.first()
assert notification.content == "<p><strong>content Sub content heading</strong></p>"
19 changes: 3 additions & 16 deletions cms/djangoapps/contentstore/utils.py
Original file line number Diff line number Diff line change
Expand Up @@ -2248,22 +2248,9 @@ def clean_html_body(html_body):
Get html body, remove tags and limit to 500 characters
"""
html_body = BeautifulSoup(Truncator(html_body).chars(500, html=True), 'html.parser')

tags_to_remove = [
"a", "link", # Link Tags
"img", "picture", "source", # Image Tags
"video", "track", # Video Tags
"audio", # Audio Tags
"embed", "object", "iframe", # Embedded Content
"script"
]

# Remove the specified tags while keeping their content
for tag in tags_to_remove:
for match in html_body.find_all(tag):
match.unwrap()

return str(html_body)
text_content = html_body.get_text(separator=" ").strip()
text_content = text_content.replace('\n', '').replace('\r', '')
return text_content


def send_course_update_notification(course_key, content, user):
Expand Down

0 comments on commit 968f4f7

Please sign in to comment.