ojuso-map/apps/map/validators.py

24 lines
750 B
Python
Raw Normal View History

from django.core.validators import RegexValidator
# Supported formats:
# - http://(www.)youtube.com/watch?v=Dhjiu89G3
# - http://(www.)youtube.com/watch/Dhjiu89G3
# - http://youtu.be/Dhjiu89G3
2019-08-19 21:37:32 +00:00
class YoutubeURLValidator(RegexValidator):
2019-08-19 21:37:32 +00:00
regex = r"https?:\/\/(((www.)?youtube.com\/((watch\?v=)|(watch\/)))|(youtu.be\/))([A-z0-9]{1,11}).+"
# Supported Vimeo formats:
# - http://(www.)vimeo.com/258651879
# - http://player.vimeo.com/video/258651879
2019-08-19 21:37:32 +00:00
class VimeoURLValidator(RegexValidator):
2019-08-19 21:37:32 +00:00
regex = r"https?:\/\/(player|www.)?vimeo.com\/([0-9]{1,11}).+"
class YouTubeOrVimeoValidator(RegexValidator):
2019-08-19 21:52:27 +00:00
regex = r"https?:\/\/(player.|www.)?(vimeo\.com|youtu(be\.com|\.be))\/(video\/|embed\/|watch\?v=|v\/)?([A-Za-z0-9]{1,11}).+" # noqa