|
|
@@ -4,10 +4,15 @@ class app.views.DocList extends app.View
|
|
|
@events:
|
|
|
open: 'onOpen'
|
|
|
close: 'onClose'
|
|
|
+ click: 'onClick'
|
|
|
|
|
|
@routes:
|
|
|
after: 'afterRoute'
|
|
|
|
|
|
+ @elements:
|
|
|
+ disabledTitle: '._list-title'
|
|
|
+ disabledList: '._disabled-list'
|
|
|
+
|
|
|
init: ->
|
|
|
@lists = {}
|
|
|
|
|
|
@@ -32,11 +37,23 @@ class app.views.DocList extends app.View
|
|
|
render: =>
|
|
|
@html @tmpl('sidebarDoc', app.docs.all())
|
|
|
@renderDisabled() unless app.isSingleDoc() or app.settings.hasDocs()
|
|
|
+ @refreshElements()
|
|
|
return
|
|
|
|
|
|
renderDisabled: ->
|
|
|
- @append @tmpl('sidebarDisabled') +
|
|
|
- @tmpl('sidebarDoc', app.disabledDocs.all(), disabled: true)
|
|
|
+ @append @tmpl('sidebarDisabled')
|
|
|
+ @renderDisabledList()
|
|
|
+ return
|
|
|
+
|
|
|
+ renderDisabledList: ->
|
|
|
+ @append @tmpl('sidebarDisabledList', docs: app.disabledDocs.all())
|
|
|
+ @refreshElements()
|
|
|
+ @disabledTitle.classList.add('open-title')
|
|
|
+ return
|
|
|
+
|
|
|
+ removeDisabledList: ->
|
|
|
+ @disabledList.remove()
|
|
|
+ @disabledTitle.classList.remove('open-title')
|
|
|
return
|
|
|
|
|
|
reset: ->
|
|
|
@@ -97,6 +114,15 @@ class app.views.DocList extends app.View
|
|
|
$.scrollTo @find("a[href='#{model.fullPath()}']"), null, 'top', margin: 0
|
|
|
return
|
|
|
|
|
|
+ onClick: (event) =>
|
|
|
+ return unless @disabledTitle and $.hasChild @disabledTitle, event.target
|
|
|
+ $.stopEvent(event)
|
|
|
+ if @disabledTitle.classList.contains('open-title')
|
|
|
+ @removeDisabledList()
|
|
|
+ else
|
|
|
+ @renderDisabledList()
|
|
|
+
|
|
|
+
|
|
|
afterRoute: (route, context) =>
|
|
|
if context.init
|
|
|
@reset()
|