Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
C
course-discovery
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
edx
course-discovery
Commits
f55d20b0
Commit
f55d20b0
authored
Oct 27, 2017
by
Simon Chen
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
We need to fix the course image resolution so the aspect ratio on course image is maintained
parent
44c4418d
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
19 additions
and
3 deletions
+19
-3
course_discovery/apps/api/serializers.py
+2
-0
course_discovery/apps/api/tests/test_serializers.py
+1
-0
course_discovery/apps/course_metadata/models.py
+8
-2
course_discovery/apps/course_metadata/tests/test_models.py
+8
-1
No files found.
course_discovery/apps/api/serializers.py
View file @
f55d20b0
...
@@ -586,6 +586,7 @@ class CourseSerializer(MinimalCourseSerializer):
...
@@ -586,6 +586,7 @@ class CourseSerializer(MinimalCourseSerializer):
sponsors
=
OrganizationSerializer
(
many
=
True
,
source
=
'sponsoring_organizations'
)
sponsors
=
OrganizationSerializer
(
many
=
True
,
source
=
'sponsoring_organizations'
)
course_runs
=
CourseRunSerializer
(
many
=
True
)
course_runs
=
CourseRunSerializer
(
many
=
True
)
marketing_url
=
serializers
.
SerializerMethodField
()
marketing_url
=
serializers
.
SerializerMethodField
()
original_image
=
ImageField
(
read_only
=
True
,
source
=
'original_image_url'
)
@classmethod
@classmethod
def
prefetch_queryset
(
cls
,
partner
,
queryset
=
None
,
course_runs
=
None
):
def
prefetch_queryset
(
cls
,
partner
,
queryset
=
None
,
course_runs
=
None
):
...
@@ -607,6 +608,7 @@ class CourseSerializer(MinimalCourseSerializer):
...
@@ -607,6 +608,7 @@ class CourseSerializer(MinimalCourseSerializer):
fields
=
MinimalCourseSerializer
.
Meta
.
fields
+
(
fields
=
MinimalCourseSerializer
.
Meta
.
fields
+
(
'short_description'
,
'full_description'
,
'level_type'
,
'subjects'
,
'prerequisites'
,
'prerequisites_raw'
,
'short_description'
,
'full_description'
,
'level_type'
,
'subjects'
,
'prerequisites'
,
'prerequisites_raw'
,
'expected_learning_items'
,
'video'
,
'sponsors'
,
'modified'
,
'marketing_url'
,
'syllabus_raw'
,
'outcome'
,
'expected_learning_items'
,
'video'
,
'sponsors'
,
'modified'
,
'marketing_url'
,
'syllabus_raw'
,
'outcome'
,
'original_image'
,
)
)
def
get_marketing_url
(
self
,
obj
):
def
get_marketing_url
(
self
,
obj
):
...
...
course_discovery/apps/api/tests/test_serializers.py
View file @
f55d20b0
...
@@ -165,6 +165,7 @@ class CourseSerializerTests(MinimalCourseSerializerTests):
...
@@ -165,6 +165,7 @@ class CourseSerializerTests(MinimalCourseSerializerTests):
'prerequisites_raw'
:
course
.
prerequisites_raw
,
'prerequisites_raw'
:
course
.
prerequisites_raw
,
'syllabus_raw'
:
course
.
syllabus_raw
,
'syllabus_raw'
:
course
.
syllabus_raw
,
'outcome'
:
course
.
outcome
,
'outcome'
:
course
.
outcome
,
'original_image'
:
ImageField
()
.
to_representation
(
course
.
original_image_url
),
})
})
return
expected
return
expected
...
...
course_discovery/apps/course_metadata/models.py
View file @
f55d20b0
...
@@ -305,7 +305,7 @@ class Course(TimeStampedModel):
...
@@ -305,7 +305,7 @@ class Course(TimeStampedModel):
null
=
True
,
null
=
True
,
variations
=
{
variations
=
{
'original'
:
(
2120
,
1192
),
'original'
:
(
2120
,
1192
),
'small'
:
(
318
,
210
)
'small'
:
(
318
,
178
)
},
},
help_text
=
_
(
'Please provide a course preview image'
)
help_text
=
_
(
'Please provide a course preview image'
)
)
)
...
@@ -333,11 +333,17 @@ class Course(TimeStampedModel):
...
@@ -333,11 +333,17 @@ class Course(TimeStampedModel):
@property
@property
def
image_url
(
self
):
def
image_url
(
self
):
if
self
.
image
:
if
self
.
image
:
return
self
.
image
.
url
return
self
.
image
.
small
.
url
return
self
.
card_image_url
return
self
.
card_image_url
@property
@property
def
original_image_url
(
self
):
if
self
.
image
:
return
self
.
image
.
url
return
None
@property
def
marketing_url
(
self
):
def
marketing_url
(
self
):
url
=
None
url
=
None
if
self
.
partner
.
marketing_site_url_root
:
if
self
.
partner
.
marketing_site_url_root
:
...
...
course_discovery/apps/course_metadata/tests/test_models.py
View file @
f55d20b0
...
@@ -45,11 +45,18 @@ class TestCourse:
...
@@ -45,11 +45,18 @@ class TestCourse:
def
test_image_url
(
self
):
def
test_image_url
(
self
):
course
=
factories
.
CourseFactory
()
course
=
factories
.
CourseFactory
()
assert
course
.
image_url
==
course
.
image
.
url
assert
course
.
image_url
==
course
.
image
.
small
.
url
course
.
image
=
None
course
.
image
=
None
assert
course
.
image_url
==
course
.
card_image_url
assert
course
.
image_url
==
course
.
card_image_url
def
test_original_image_url
(
self
):
course
=
factories
.
CourseFactory
()
assert
course
.
original_image_url
==
course
.
image
.
url
course
.
image
=
None
assert
course
.
original_image_url
is
None
@ddt.ddt
@ddt.ddt
class
CourseRunTests
(
TestCase
):
class
CourseRunTests
(
TestCase
):
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment