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
b4585ffe
Commit
b4585ffe
authored
Jun 26, 2012
by
Matthew Mongeau
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Course navigation work
parent
79b9ba8f
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
35 additions
and
21 deletions
+35
-21
common/djangoapps/util/views.py
+1
-1
lms/djangoapps/courseware/content_parser.py
+0
-0
lms/djangoapps/courseware/module_render.py
+1
-0
lms/djangoapps/courseware/views.py
+14
-9
lms/djangoapps/staticbook/views.py
+4
-2
lms/templates/course_navigation.html
+8
-5
lms/urls.py
+7
-4
No files found.
common/djangoapps/util/views.py
View file @
b4585ffe
...
@@ -67,7 +67,7 @@ def info(request, course_id=None):
...
@@ -67,7 +67,7 @@ def info(request, course_id=None):
# We're bypassing the templating system for this part. We should cache
# We're bypassing the templating system for this part. We should cache
# this.
# this.
sections
=
[
"updates"
,
"handouts"
,
"guest_updates"
,
"guest_handouts"
]
sections
=
[
"updates"
,
"handouts"
,
"guest_updates"
,
"guest_handouts"
]
sections_to_content
=
{}
sections_to_content
=
{
'course'
:
course
}
for
section
in
sections
:
for
section
in
sections
:
filename
=
section
+
".html"
filename
=
section
+
".html"
with
open
(
course
.
path
/
"info"
/
filename
)
as
f
:
with
open
(
course
.
path
/
"info"
/
filename
)
as
f
:
...
...
lms/djangoapps/courseware/content_parser.py
0 → 100644
View file @
b4585ffe
This diff is collapsed.
Click to expand it.
lms/djangoapps/courseware/module_render.py
View file @
b4585ffe
...
@@ -44,6 +44,7 @@ class I4xSystem(object):
...
@@ -44,6 +44,7 @@ class I4xSystem(object):
filestore - A filestore ojbect. Defaults to an instance of OSFS based at
filestore - A filestore ojbect. Defaults to an instance of OSFS based at
settings.DATA_DIR.
settings.DATA_DIR.
'''
'''
self
.
course
=
course
self
.
ajax_url
=
ajax_url
self
.
ajax_url
=
ajax_url
self
.
track_function
=
track_function
self
.
track_function
=
track_function
self
.
filestore
=
filestore
self
.
filestore
=
filestore
...
...
lms/djangoapps/courseware/views.py
View file @
b4585ffe
...
@@ -70,7 +70,7 @@ def gradebook(request):
...
@@ -70,7 +70,7 @@ def gradebook(request):
if
'course_admin'
not
in
user_groups
(
request
.
user
):
if
'course_admin'
not
in
user_groups
(
request
.
user
):
raise
Http404
raise
Http404
course
name
=
multicourse_settings
.
get_coursename_from_request
(
request
)
course
=
settings
.
COURSES_BY_ID
[
course_id
]
student_objects
=
User
.
objects
.
all
()[:
100
]
student_objects
=
User
.
objects
.
all
()[:
100
]
student_info
=
[]
student_info
=
[]
...
@@ -89,15 +89,15 @@ def gradebook(request):
...
@@ -89,15 +89,15 @@ def gradebook(request):
'realname'
:
UserProfile
.
objects
.
get
(
user
=
student
)
.
name
'realname'
:
UserProfile
.
objects
.
get
(
user
=
student
)
.
name
})
})
return
render_to_response
(
'gradebook.html'
,
{
'students'
:
student_info
})
return
render_to_response
(
'gradebook.html'
,
{
'students'
:
student_info
,
'course'
:
course
})
@login_required
@login_required
@cache_control
(
no_cache
=
True
,
no_store
=
True
,
must_revalidate
=
True
)
@cache_control
(
no_cache
=
True
,
no_store
=
True
,
must_revalidate
=
True
)
def
profile
(
request
,
student_id
=
None
):
def
profile
(
request
,
course_id
=
None
,
student_id
=
None
):
''' User profile. Show username, location, etc, as well as grades .
''' User profile. Show username, location, etc, as well as grades .
We need to allow the user to change some of these settings .'''
We need to allow the user to change some of these settings .'''
course
=
settings
.
COURSES_BY_ID
[
course_id
]
if
student_id
is
None
:
if
student_id
is
None
:
student
=
request
.
user
student
=
request
.
user
else
:
else
:
...
@@ -197,12 +197,16 @@ def index(request, course=None, chapter=None, section=None,
...
@@ -197,12 +197,16 @@ def index(request, course=None, chapter=None, section=None,
if
not
settings
.
COURSEWARE_ENABLED
:
if
not
settings
.
COURSEWARE_ENABLED
:
return
redirect
(
'/'
)
return
redirect
(
'/'
)
course
=
clean
(
get_course
(
request
,
course
))
# course = clean(get_course(request, course))
if
not
multicourse_settings
.
is_valid_course
(
course
):
# if not multicourse_settings.is_valid_course(course):
return
redirect
(
'/'
)
# return redirect('/')
try
:
course
=
settings
.
COURSES_BY_ID
[
course_id
]
except
KeyError
:
raise
Http404
(
"Course not found"
)
# keep track of current course being viewed in django's request.session
# keep track of current course being viewed in django's request.session
request
.
session
[
'coursename'
]
=
course
request
.
session
[
'coursename'
]
=
course
.
title
chapter
=
clean
(
chapter
)
chapter
=
clean
(
chapter
)
section
=
clean
(
section
)
section
=
clean
(
section
)
...
@@ -210,7 +214,8 @@ def index(request, course=None, chapter=None, section=None,
...
@@ -210,7 +214,8 @@ def index(request, course=None, chapter=None, section=None,
context
=
{
context
=
{
'csrf'
:
csrf
(
request
)[
'csrf_token'
],
'csrf'
:
csrf
(
request
)[
'csrf_token'
],
'accordion'
:
render_accordion
(
request
,
course
,
chapter
,
section
),
'accordion'
:
render_accordion
(
request
,
course
,
chapter
,
section
),
'COURSE_TITLE'
:
multicourse_settings
.
get_course_title
(
course
),
'COURSE_TITLE'
:
course
.
title
,
'course'
:
course
,
'init'
:
''
,
'init'
:
''
,
'content'
:
''
'content'
:
''
}
}
...
...
lms/djangoapps/staticbook/views.py
View file @
b4585ffe
from
django.contrib.auth.decorators
import
login_required
from
django.contrib.auth.decorators
import
login_required
from
mitxmako.shortcuts
import
render_to_response
from
mitxmako.shortcuts
import
render_to_response
from
django.conf
import
settings
@login_required
@login_required
def
index
(
request
,
page
=
0
):
def
index
(
request
,
course_id
=
None
,
page
=
0
):
return
render_to_response
(
'staticbook.html'
,{
'page'
:
int
(
page
)})
course
=
settings
.
COURSES_BY_ID
[
course_id
]
return
render_to_response
(
'staticbook.html'
,{
'page'
:
int
(
page
),
'course'
:
course
})
def
index_shifted
(
request
,
page
):
def
index_shifted
(
request
,
page
):
return
index
(
request
,
int
(
page
)
+
24
)
return
index
(
request
,
int
(
page
)
+
24
)
lms/templates/course_navigation.html
View file @
b4585ffe
...
@@ -6,19 +6,22 @@ def url_class(url):
...
@@ -6,19 +6,22 @@ def url_class(url):
return
"
active
"
return
"
active
"
return
""
return
""
%
>
%
>
<
%!
from
django
.
core
.
urlresolvers
import
reverse
%
>
<nav
class=
"${active_page} course-material"
>
<nav
class=
"${active_page} course-material"
>
<div
class=
"inner-wrapper"
>
<div
class=
"inner-wrapper"
>
<ol
class=
"course-tabs"
>
<ol
class=
"course-tabs"
>
<li
class=
"courseware"
><a
href=
"${
MITX_ROOT_URL }/courseware/
"
class=
"${url_class('courseware')}"
>
Courseware
</a></li>
<li
class=
"courseware"
><a
href=
"${
reverse('courseware', args=[course.id])}
"
class=
"${url_class('courseware')}"
>
Courseware
</a></li>
<li
class=
"info"
><a
href=
"${
MITX_ROOT_URL }/info
"
class=
"${url_class('info')}"
>
Course Info
</a></li>
<li
class=
"info"
><a
href=
"${
reverse('info', args=[course.id])}
"
class=
"${url_class('info')}"
>
Course Info
</a></li>
% if user.is_authenticated():
% if user.is_authenticated():
<li
class=
"book"
><a
href=
"${
MITX_ROOT_URL }/book
"
class=
"${url_class('book')}"
>
Textbook
</a></li>
<li
class=
"book"
><a
href=
"${
reverse('book', args=[course.id])}
"
class=
"${url_class('book')}"
>
Textbook
</a></li>
<li
class=
"discussion"
><a
href=
"${ MITX_ROOT_URL }/discussion/questions/"
>
Discussion
</a></li>
<li
class=
"discussion"
><a
href=
"${ MITX_ROOT_URL }/discussion/questions/"
>
Discussion
</a></li>
% endif
% endif
<li
class=
"wiki"
><a
href=
"${
MITX_ROOT_URL }/wiki/view/
"
class=
"${url_class('wiki')}"
>
Wiki
</a></li>
<li
class=
"wiki"
><a
href=
"${
reverse('wiki_root')}
"
class=
"${url_class('wiki')}"
>
Wiki
</a></li>
% if user.is_authenticated():
% if user.is_authenticated():
<li
class=
"profile"
><a
href=
"${
MITX_ROOT_URL }/profile
"
class=
"${url_class('profile')}"
>
Profile
</a></li>
<li
class=
"profile"
><a
href=
"${
reverse('profile', args=[course.id])}
"
class=
"${url_class('profile')}"
>
Profile
</a></li>
% endif
% endif
</ol>
</ol>
</div>
</div>
...
...
lms/urls.py
View file @
b4585ffe
...
@@ -49,11 +49,10 @@ if settings.PERFSTATS:
...
@@ -49,11 +49,10 @@ if settings.PERFSTATS:
if
settings
.
COURSEWARE_ENABLED
:
if
settings
.
COURSEWARE_ENABLED
:
urlpatterns
+=
(
urlpatterns
+=
(
url
(
r'^courseware/$'
,
'courseware.views.index'
,
name
=
"courseware"
),
url
(
r'^wiki/'
,
include
(
'simplewiki.urls'
)),
url
(
r'^wiki/'
,
include
(
'simplewiki.urls'
)),
url
(
r'^masquerade/'
,
include
(
'masquerade.urls'
)),
url
(
r'^masquerade/'
,
include
(
'masquerade.urls'
)),
url
(
r'^courseware/(?P<course>[^/]*)/(?P<chapter>[^/]*)/(?P<section>[^/]*)/(?P<position>[^/]*)$'
,
'courseware.views.index'
),
url
(
r'^courseware/(?P<course>[^/]*)/(?P<chapter>[^/]*)/(?P<section>[^/]*)/(?P<position>[^/]*)$'
,
'courseware.views.index'
),
url
(
r'^courseware/(?P<course>[^/]*)/(?P<chapter>[^/]*)/(?P<section>[^/]*)/$'
,
'courseware.views.index'
,
name
=
"courseware_section"
),
#
url(r'^courseware/(?P<course>[^/]*)/(?P<chapter>[^/]*)/(?P<section>[^/]*)/$', 'courseware.views.index', name="courseware_section"),
url
(
r'^courseware/(?P<course>[^/]*)/(?P<chapter>[^/]*)/$'
,
'courseware.views.index'
,
name
=
"courseware_chapter"
),
url
(
r'^courseware/(?P<course>[^/]*)/(?P<chapter>[^/]*)/$'
,
'courseware.views.index'
,
name
=
"courseware_chapter"
),
url
(
r'^courseware/(?P<course>[^/]*)/$'
,
'courseware.views.index'
,
name
=
"courseware_course"
),
url
(
r'^courseware/(?P<course>[^/]*)/$'
,
'courseware.views.index'
,
name
=
"courseware_course"
),
url
(
r'^jumpto/(?P<probname>[^/]+)/$'
,
'courseware.views.jump_to'
),
url
(
r'^jumpto/(?P<probname>[^/]+)/$'
,
'courseware.views.jump_to'
),
...
@@ -74,8 +73,12 @@ if settings.COURSEWARE_ENABLED:
...
@@ -74,8 +73,12 @@ if settings.COURSEWARE_ENABLED:
# Multicourse related:
# Multicourse related:
url
(
r'^courses$'
,
'courseware.views.courses'
),
url
(
r'^courses$'
,
'courseware.views.courses'
),
url
(
r'^courses/(?P<course_id>[^/]*)/info$'
,
'util.views.info'
),
url
(
r'^courses/(?P<course_id>[^/]*)/info$'
,
'util.views.info'
,
name
=
"info"
),
url
(
r'^courses/(?P<course_id>[^/]*)/courseware$'
,
'courseware.views.index'
),
url
(
r'^courses/(?P<course_id>[^/]*)/book$'
,
'staticbook.views.index'
,
name
=
"book"
),
url
(
r'^courses/(?P<course_id>[^/]*)/courseware/?$'
,
'courseware.views.index'
,
name
=
"courseware"
),
url
(
r'^courses/(?P<course_id>[^/]*)/courseware/(?P<chapter>[^/]*)/(?P<section>[^/]*)/$'
,
'courseware.views.index'
,
name
=
"courseware_section"
),
url
(
r'^courses/(?P<course_id>[^/]*)/profile$'
,
'courseware.views.profile'
,
name
=
"profile"
),
url
(
r'^courses/(?P<course_id>[^/]*)/profile/(?P<student_id>[^/]*)/$'
,
'courseware.views.profile'
),
)
)
...
...
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