Commit 1f446702 by Troy Sankey

begin adding support for alt_location across all APIs and serializers

parent 348d2138
...@@ -59,6 +59,7 @@ def create_video(video_data): ...@@ -59,6 +59,7 @@ def create_video(video_data):
client_video_id: client ID of video client_video_id: client ID of video
encoded_video: a list of EncodedVideo dicts encoded_video: a list of EncodedVideo dicts
url: url of the video url: url of the video
alt_location: domain agnostic location of the video
file_size: size of the video in bytes file_size: size of the video in bytes
profile: ID of the profile profile: ID of the profile
courses: Courses associated with this video courses: Courses associated with this video
...@@ -94,6 +95,7 @@ def update_video(video_data): ...@@ -94,6 +95,7 @@ def update_video(video_data):
client_video_id: client ID of video client_video_id: client ID of video
encoded_video: a list of EncodedVideo dicts encoded_video: a list of EncodedVideo dicts
url: url of the video url: url of the video
alt_location: domain agnostic location of the video
file_size: size of the video in bytes file_size: size of the video in bytes
profile: ID of the profile profile: ID of the profile
courses: Courses associated with this video courses: Courses associated with this video
...@@ -490,6 +492,7 @@ def get_video_info(edx_video_id): ...@@ -490,6 +492,7 @@ def get_video_info(edx_video_id):
client_video_id: client ID of video client_video_id: client ID of video
encoded_video: a list of EncodedVideo dicts encoded_video: a list of EncodedVideo dicts
url: url of the video url: url of the video
alt_location:
file_size: size of the video in bytes file_size: size of the video in bytes
profile: ID of the profile profile: ID of the profile
} }
...@@ -509,7 +512,8 @@ def get_video_info(edx_video_id): ...@@ -509,7 +512,8 @@ def get_video_info(edx_video_id):
'client_video_id': u'The example video', 'client_video_id': u'The example video',
'encoded_videos': [ 'encoded_videos': [
{ {
'url': u'http://www.example.com', 'url': u'http://www.example.com/name-of-video.mp4',
'alt_location': u'name-of-video.mp4',
'file_size': 25556, 'file_size': 25556,
'bitrate': 9600, 'bitrate': 9600,
'profile': u'mobile' 'profile': u'mobile'
...@@ -651,6 +655,7 @@ def get_video_info_for_course_and_profiles(course_id, profiles): ...@@ -651,6 +655,7 @@ def get_video_info_for_course_and_profiles(course_id, profiles):
'profiles': { 'profiles': {
profile_name: { profile_name: {
'url': url of the encoding 'url': url of the encoding
'alt_location': domain agnostic location of the encoding
'file_size': size of the file in bytes 'file_size': size of the file in bytes
}, },
} }
...@@ -664,10 +669,12 @@ def get_video_info_for_course_and_profiles(course_id, profiles): ...@@ -664,10 +669,12 @@ def get_video_info_for_course_and_profiles(course_id, profiles):
u'profiles': { u'profiles': {
u'mobile': { u'mobile': {
'url': u'http: //www.example.com/meow', 'url': u'http: //www.example.com/meow',
'alt_location': u'meow',
'file_size': 2222 'file_size': 2222
}, },
u'desktop': { u'desktop': {
'url': u'http: //www.example.com/woof', 'url': u'http: //www.example.com/woof',
'alt_location': u'woof',
'file_size': 4444 'file_size': 4444
} }
} }
...@@ -677,10 +684,12 @@ def get_video_info_for_course_and_profiles(course_id, profiles): ...@@ -677,10 +684,12 @@ def get_video_info_for_course_and_profiles(course_id, profiles):
u'profiles': { u'profiles': {
u'mobile': { u'mobile': {
'url': u'http: //www.example.com/roar', 'url': u'http: //www.example.com/roar',
'alt_location': u'roar',
'file_size': 6666 'file_size': 6666
}, },
u'desktop': { u'desktop': {
'url': u'http: //www.example.com/bzzz', 'url': u'http: //www.example.com/bzzz',
'alt_location': u'bzzz',
'file_size': 8888 'file_size': 8888
} }
} }
...@@ -712,6 +721,7 @@ def get_video_info_for_course_and_profiles(course_id, profiles): ...@@ -712,6 +721,7 @@ def get_video_info_for_course_and_profiles(course_id, profiles):
return_dict[enc_vid.video.edx_video_id].setdefault("profiles", {}).update( return_dict[enc_vid.video.edx_video_id].setdefault("profiles", {}).update(
{enc_vid.profile.profile_name: { {enc_vid.profile.profile_name: {
"url": enc_vid.url, "url": enc_vid.url,
# do something here Tyler
"file_size": enc_vid.file_size, "file_size": enc_vid.file_size,
}} }}
) )
......
...@@ -170,6 +170,7 @@ class EncodedVideo(models.Model): ...@@ -170,6 +170,7 @@ class EncodedVideo(models.Model):
created = models.DateTimeField(auto_now_add=True) created = models.DateTimeField(auto_now_add=True)
modified = models.DateTimeField(auto_now=True) modified = models.DateTimeField(auto_now=True)
url = models.CharField(max_length=200) url = models.CharField(max_length=200)
alt_location = models.CharField(max_length=200)
file_size = models.PositiveIntegerField() file_size = models.PositiveIntegerField()
bitrate = models.PositiveIntegerField() bitrate = models.PositiveIntegerField()
......
...@@ -38,6 +38,7 @@ class EncodedVideoSerializer(serializers.ModelSerializer): ...@@ -38,6 +38,7 @@ class EncodedVideoSerializer(serializers.ModelSerializer):
"created", "created",
"modified", "modified",
"url", "url",
"alt_location",
"file_size", "file_size",
"bitrate", "bitrate",
"profile", "profile",
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment