Separate URLs for /courses/students and /courses/teachers

This commit is contained in:
Matt Lott 2015-10-07 14:37:41 -07:00
parent 32441f1c8d
commit 7390f2d1e4
2 changed files with 7 additions and 7 deletions

View file

@ -65,6 +65,8 @@ module.exports = class CocoRouter extends Backbone.Router
'courses/mock1/enroll/:courseID': go('courses/mock1/CourseEnrollView') 'courses/mock1/enroll/:courseID': go('courses/mock1/CourseEnrollView')
'courses/mock1/:courseID': go('courses/mock1/CourseDetailsView') 'courses/mock1/:courseID': go('courses/mock1/CourseDetailsView')
'courses': go('courses/CoursesView') 'courses': go('courses/CoursesView')
'courses/students': go('courses/CoursesView')
'courses/teachers': go('courses/CoursesView')
'courses/enroll(/:courseID)': go('courses/CourseEnrollView') 'courses/enroll(/:courseID)': go('courses/CourseEnrollView')
'courses/:courseID(/:courseInstanceID)': go('courses/CourseDetailsView') 'courses/:courseID(/:courseInstanceID)': go('courses/CourseDetailsView')

View file

@ -20,7 +20,7 @@ module.exports = class CoursesView extends RootView
constructor: (options) -> constructor: (options) ->
super(options) super(options)
@praise = utils.getCoursePraise() @praise = utils.getCoursePraise()
@studentMode = utils.getQueryVariable('student', false) or options.studentMode @studentMode = Backbone.history.getFragment()?.indexOf('courses/students') >= 0
@courses = new CocoCollection([], { url: "/db/course", model: Course}) @courses = new CocoCollection([], { url: "/db/course", model: Course})
@supermodel.loadCollection(@courses, 'courses') @supermodel.loadCollection(@courses, 'courses')
@courseInstances = new CocoCollection([], { url: "/db/user/#{me.id}/course_instances", model: CourseInstance}) @courseInstances = new CocoCollection([], { url: "/db/user/#{me.id}/course_instances", model: CourseInstance})
@ -89,17 +89,15 @@ module.exports = class CoursesView extends RootView
Backbone.Mediator.publish 'router:navigate', navigationEvent Backbone.Mediator.publish 'router:navigate', navigationEvent
onClickStudent: (e) -> onClickStudent: (e) ->
route = "/courses?student=true" route = "/courses/students"
viewClass = require 'views/courses/CoursesView' viewClass = require 'views/courses/CoursesView'
viewArgs = [studentMode: true] navigationEvent = route: route, viewClass: viewClass, viewArgs: []
navigationEvent = route: route, viewClass: viewClass, viewArgs: viewArgs
Backbone.Mediator.publish 'router:navigate', navigationEvent Backbone.Mediator.publish 'router:navigate', navigationEvent
onClickTeacher: (e) -> onClickTeacher: (e) ->
route = "/courses?student=false" route = "/courses/teachers"
viewClass = require 'views/courses/CoursesView' viewClass = require 'views/courses/CoursesView'
viewArgs = [studentMode: false] navigationEvent = route: route, viewClass: viewClass, viewArgs: []
navigationEvent = route: route, viewClass: viewClass, viewArgs: viewArgs
Backbone.Mediator.publish 'router:navigate', navigationEvent Backbone.Mediator.publish 'router:navigate', navigationEvent
courseEnroll: (prepaidCode) -> courseEnroll: (prepaidCode) ->