gitlab-org--gitlab-foss/lib/gitlab/zoom_link_extractor.rb
Jacopo 6613a57772 Add system notes for when a zoom call was added/removed from an issue
Add a zoom link added / removed system note when a zoom link is being
added / removed to the issue description.
2019-07-29 21:51:16 +02:00

25 lines
603 B
Ruby

# frozen_string_literal: true
# Detect links matching the following formats:
# Zoom Start links: https://zoom.us/s/<meeting-id>
# Zoom Join links: https://zoom.us/j/<meeting-id>
# Personal Zoom links: https://zoom.us/my/<meeting-id>
# Vanity Zoom links: https://gitlab.zoom.us/j/<meeting-id> (also /s and /my)
module Gitlab
class ZoomLinkExtractor
ZOOM_REGEXP = %r{https://(?:[\w-]+\.)?zoom\.us/(?:s|j|my)/\S+}.freeze
def initialize(text)
@text = text.to_s
end
def links
@text.scan(ZOOM_REGEXP)
end
def match?
ZOOM_REGEXP.match?(@text)
end
end
end