root_page.js 777 B

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. class app.views.RootPage extends app.View
  2. @events:
  3. click: 'onClick'
  4. init: ->
  5. @setHidden false unless @isHidden() # reserve space in local storage
  6. @render()
  7. return
  8. render: ->
  9. @empty()
  10. tmpl = if app.isAndroidWebview()
  11. 'androidWarning'
  12. else if @isHidden()
  13. 'splash'
  14. else if app.isMobile()
  15. 'mobileIntro'
  16. else
  17. 'intro'
  18. @append @tmpl(tmpl)
  19. return
  20. hideIntro: ->
  21. @setHidden true
  22. @render()
  23. return
  24. setHidden: (value) ->
  25. app.settings.set 'hideIntro', value
  26. return
  27. isHidden: ->
  28. app.isSingleDoc() or app.settings.get 'hideIntro'
  29. onRoute: ->
  30. onClick: (event) =>
  31. if $.eventTarget(event).hasAttribute 'data-hide-intro'
  32. $.stopEvent(event)
  33. @hideIntro()
  34. return