       currentRoute = Backbone.history.getFragment()
       canonicalPath = linksHelper.getPath('contents', {model: @model, page: pageId}, [])
       if (canonicalPath isnt "/#{currentRoute}")
-        router.navigate(canonicalPath, {replace: true})
+        # replace previous URL with the canonical path
+        history.replaceState({}, @model.get('title'), canonicalPath)
 
     updateTeacher: ($temp = @$el) ->
       $els = $temp.find('.os-teacher')

          window.location.hash = ''
          window.location.hash = hash

      $target = $(window.location.hash)
      if $target.prop('tagName')?.toLowerCase() is 'iframe'
        $target.on('load', jumpToHash)
      else
        jumpToHash()

    changePage: (e) ->
      # Don't intercept cmd/ctrl-clicks intended to open a link in a new tab


    goToPage: (pageNumber, href) ->
      @model.setPage(pageNumber)

      router.navigate href, {trigger: true, replace: false}, => @parent.parent.parent.trackAnalytics()

    getCoach: ->
      moduleUUID = @model.getUuid()?.split('?')[0]
