Classroom details analytics

This commit is contained in:
Matt Lott 2015-12-04 14:11:17 -08:00
parent b21c20c08d
commit 3fb85463fa
3 changed files with 12 additions and 1 deletions

View file

@ -11,6 +11,10 @@ module.exports = class AddLevelSystemModal extends ModalView
initialize: (options) -> initialize: (options) ->
@classroom = options.classroom @classroom = options.classroom
if @classroom
application.tracker?.trackEvent 'Classroom started edit settings', category: 'Courses', classroomID: @classroom.id
else
application.tracker?.trackEvent 'Classroom started edit settings', category: 'Courses'
onClickSaveSettingsButton: -> onClickSaveSettingsButton: ->
name = $('.settings-name-input').val() name = $('.settings-name-input').val()

View file

@ -99,6 +99,7 @@ module.exports = class ClassroomView extends RootView
}) })
@openModalView(modal) @openModalView(modal)
modal.once 'redeem-users', -> document.location.reload() modal.once 'redeem-users', -> document.location.reload()
application.tracker?.trackEvent 'Classroom started enroll students', category: 'Courses'
onClickActivateSingleLicenseButton: (e) -> onClickActivateSingleLicenseButton: (e) ->
userID = $(e.target).data('user-id') userID = $(e.target).data('user-id')
@ -110,6 +111,7 @@ module.exports = class ClassroomView extends RootView
}) })
@openModalView(modal) @openModalView(modal)
modal.once 'redeem-users', -> document.location.reload() modal.once 'redeem-users', -> document.location.reload()
application.tracker?.trackEvent 'Classroom started enroll student', category: 'Courses', userID: userID
onClickEditClassDetailsLink: -> onClickEditClassDetailsLink: ->
modal = new ClassroomSettingsModal({classroom: @classroom}) modal = new ClassroomSettingsModal({classroom: @classroom})
@ -149,11 +151,13 @@ module.exports = class ClassroomView extends RootView
onClickAddStudentsButton: (e) -> onClickAddStudentsButton: (e) ->
modal = new InviteToClassroomModal({classroom: @classroom}) modal = new InviteToClassroomModal({classroom: @classroom})
@openModalView(modal) @openModalView(modal)
application.tracker?.trackEvent 'Classroom started add students', category: 'Courses', classroomID: @classroom.id
onClickEnableButton: (e) -> onClickEnableButton: (e) ->
courseInstance = @courseInstances.get($(e.target).data('course-instance-cid')) courseInstance = @courseInstances.get($(e.target).data('course-instance-cid'))
userID = $(e.target).data('user-id') userID = $(e.target).data('user-id')
$(e.target).attr('disabled', true) $(e.target).attr('disabled', true)
application.tracker?.trackEvent 'Course assign student', category: 'Courses', courseInstanceID: courseInstance.id, userID: userID
onCourseInstanceCreated = => onCourseInstanceCreated = =>
courseInstance.addMember(userID) courseInstance.addMember(userID)
@ -179,6 +183,7 @@ module.exports = class ClassroomView extends RootView
onStudentRemoved: (e) -> onStudentRemoved: (e) ->
@users.remove(e.user) @users.remove(e.user)
@render() @render()
application.tracker?.trackEvent 'Classroom removed student', category: 'Courses', courseInstanceID: @courseInstance.id, userID: e.user.id
levelPopoverContent: (level, session, i) -> levelPopoverContent: (level, session, i) ->
return null unless level return null unless level

View file

@ -4,7 +4,7 @@ template = require 'templates/courses/invite-to-classroom-modal'
module.exports = class InviteToClassroomModal extends ModalView module.exports = class InviteToClassroomModal extends ModalView
id: 'invite-to-classroom-modal' id: 'invite-to-classroom-modal'
template: template template: template
events: events:
'click #send-invites-btn': 'onClickSendInvitesButton' 'click #send-invites-btn': 'onClickSendInvitesButton'
'click #copy-url-btn, #join-url-input': 'copyURL' 'click #copy-url-btn, #join-url-input': 'copyURL'
@ -23,6 +23,7 @@ module.exports = class InviteToClassroomModal extends ModalView
url = @classroom.url() + '/invite-members' url = @classroom.url() + '/invite-members'
@$('#send-invites-btn, #invite-emails-textarea').addClass('hide') @$('#send-invites-btn, #invite-emails-textarea').addClass('hide')
@$('#invite-emails-sending-alert').removeClass('hide') @$('#invite-emails-sending-alert').removeClass('hide')
application.tracker?.trackEvent 'Classroom invite via email', category: 'Courses', classroomID: @classroom.id, emails: emails
$.ajax({ $.ajax({
url: url url: url
@ -39,6 +40,7 @@ module.exports = class InviteToClassroomModal extends ModalView
try try
document.execCommand('copy') document.execCommand('copy')
@$('#copied-alert').removeClass('hide') @$('#copied-alert').removeClass('hide')
application.tracker?.trackEvent 'Classroom copy URL', category: 'Courses', classroomID: @classroom.id, url: @joinURL
catch err catch err
console.log('Oops, unable to copy', err) console.log('Oops, unable to copy', err)
@$('#copy-failed-alert').removeClass('hide') @$('#copy-failed-alert').removeClass('hide')