Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
E
edx-platform
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
edx-platform
Commits
c089ea42
Commit
c089ea42
authored
Nov 01, 2016
by
Matthew Piatetsky
Committed by
GitHub
Nov 01, 2016
Browse files
Options
Browse Files
Download
Plain Diff
Merge pull request #13880 from edx/release
Merge release into master
parents
9d1e77e0
333c6866
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
5 additions
and
34 deletions
+5
-34
lms/djangoapps/course_api/forms.py
+0
-2
lms/djangoapps/course_api/serializers.py
+0
-11
lms/djangoapps/course_api/tests/test_forms.py
+3
-7
lms/djangoapps/course_api/tests/test_serializers.py
+0
-1
lms/djangoapps/course_api/views.py
+0
-4
lms/djangoapps/courseware/courses.py
+2
-9
No files found.
lms/djangoapps/course_api/forms.py
View file @
c089ea42
...
...
@@ -54,10 +54,8 @@ class CourseListGetForm(UsernameValidatorMixin, Form):
filter_type
=
namedtuple
(
'filter_type'
,
[
'param_name'
,
'field_name'
])
supported_filters
=
[
filter_type
(
param_name
=
'mobile'
,
field_name
=
'mobile_available'
),
filter_type
(
param_name
=
'include_hidden'
,
field_name
=
'include_hidden'
),
]
mobile
=
ExtendedNullBooleanField
(
required
=
False
)
include_hidden
=
ExtendedNullBooleanField
(
required
=
False
)
def
clean
(
self
):
"""
...
...
lms/djangoapps/course_api/serializers.py
View file @
c089ea42
...
...
@@ -72,21 +72,10 @@ class CourseSerializer(serializers.Serializer): # pylint: disable=abstract-meth
start_type
=
serializers
.
CharField
()
pacing
=
serializers
.
CharField
()
mobile_available
=
serializers
.
BooleanField
()
hidden
=
serializers
.
SerializerMethodField
()
# 'course_id' is a deprecated field, please use 'id' instead.
course_id
=
serializers
.
CharField
(
source
=
'id'
,
read_only
=
True
)
def
get_hidden
(
self
,
course_overview
):
"""
Get the representation for SerializerMethodField `hidden`
Represents whether course is hidden in LMS
"""
catalog_visibility
=
course_overview
.
catalog_visibility
if
catalog_visibility
in
[
'about'
,
'none'
]:
return
True
return
False
def
get_blocks_url
(
self
,
course_overview
):
"""
Get the representation for SerializerMethodField `blocks_url`
...
...
lms/djangoapps/course_api/tests/test_forms.py
View file @
c089ea42
...
...
@@ -5,7 +5,7 @@ Tests for Course API forms.
import
ddt
from
django.contrib.auth.models
import
AnonymousUser
from
django.http
import
QueryDict
from
itertools
import
product
,
chain
from
itertools
import
product
from
urllib
import
urlencode
from
openedx.core.djangoapps.util.test_forms
import
FormTestMixin
...
...
@@ -66,7 +66,6 @@ class TestCourseListGetForm(FormTestMixin, UsernameTestMixin, SharedModuleStoreT
'org'
:
''
,
'mobile'
:
None
,
'filter_'
:
None
,
'include_hidden'
:
None
,
}
def
test_basic
(
self
):
...
...
@@ -79,13 +78,10 @@ class TestCourseListGetForm(FormTestMixin, UsernameTestMixin, SharedModuleStoreT
self
.
assert_valid
(
self
.
cleaned_data
)
@ddt.data
(
*
chain
(
product
(
*
product
(
[(
'mobile'
,
'mobile_available'
)],
[(
True
,
True
),
(
False
,
False
),
(
'1'
,
True
),
(
'0'
,
False
),
(
None
,
None
)],
),
product
(
[(
'include_hidden'
,
'include_hidden'
)],
[(
True
,
True
),
(
False
,
False
),
(
'1'
,
True
),
(
'0'
,
False
),
(
None
,
None
)],
))
)
)
@ddt.unpack
def
test_filter
(
self
,
param_field_name
,
param_field_value
):
...
...
lms/djangoapps/course_api/tests/test_serializers.py
View file @
c089ea42
...
...
@@ -68,7 +68,6 @@ class TestCourseSerializer(CourseApiFactoryMixin, ModuleStoreTestCase):
'effort'
:
u'6 hours'
,
'pacing'
:
'instructor'
,
'mobile_available'
:
False
,
'hidden'
:
False
,
# 'course_id' is a deprecated field, please use 'id' instead.
'course_id'
:
u'edX/toy/2012_Fall'
,
...
...
lms/djangoapps/course_api/views.py
View file @
c089ea42
...
...
@@ -152,10 +152,6 @@ class CourseListView(DeveloperErrorViewMixin, ListAPIView):
If specified, only visible `CourseOverview` objects that are
designated as mobile_available are returned.
include_hidden (optional):
If specified, courses that are hidden in the LMS, will be returned
with a hidden flag set to true.
**Returns**
* 200 on success, with a list of course discovery objects as returned
...
...
lms/djangoapps/courseware/courses.py
View file @
c089ea42
...
...
@@ -376,7 +376,6 @@ def get_courses(user, org=None, filter_=None):
Returns a list of courses available, sorted by course.number and optionally
filtered by org code (case-insensitive).
"""
include_hidden
=
filter_
.
pop
(
'include_hidden'
,
False
)
if
filter_
else
False
courses
=
branding
.
get_visible_courses
(
org
=
org
,
filter_
=
filter_
)
permission_name
=
configuration_helpers
.
get_value
(
...
...
@@ -384,14 +383,8 @@ def get_courses(user, org=None, filter_=None):
settings
.
COURSE_CATALOG_VISIBILITY_PERMISSION
)
# see_in_catalog is the permission that checks the catalog visibility setting.
# include_hidden refers to showing courses that are normally not visible due to this setting.
# We don't want to show courses that are hidden for other reasons, which is why we don't
# use the override for other permissions.
if
permission_name
is
'see_in_catalog'
:
courses
=
[
c
for
c
in
courses
if
include_hidden
or
has_access
(
user
,
permission_name
,
c
)]
else
:
courses
=
[
c
for
c
in
courses
if
has_access
(
user
,
permission_name
,
c
)]
courses
=
[
c
for
c
in
courses
if
has_access
(
user
,
permission_name
,
c
)]
return
courses
...
...
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