summaryrefslogtreecommitdiff
path: root/new-reality/public/assets/js/app.js
blob: 25cfe65ebf3963d4466d866d0513ee2993b38fb3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
var app = (function() {

  var app = {}
  var last_t = 0, initial_t = 0

  app.init = function() {
    app.loader = new Loader ()
    app.okcms = new OKCMS ()
    app.okcms.getAll().done(function(data) {
      app.bind()
      app.build(data)
      app.resize()
      app.ready()
    }).fail(function(err) {
      console.error('error loading cms', err)
    })
  }

  app.bind = function() {
    if (is_mobile) {
      document.addEventListener('touchmove', function(e) {
        e.preventDefault()
      })
      FastClick.attach(document.body)
    }
    $(window).resize(app.resize)
  }

  app.build = function(data) {
    window.scrollTo(0,0)
    environment.init()
    app.views = {}
    app.nav = new NavView ()
//     app.views.home = new HomeView({
//       data: data.home
//     })
//     app.views.about = new AboutView({
//       data: data.about
//     })
  }

  app.ready = function() {
    if (last_t) return
    setTimeout(function () {
      $("html").removeClass("loading")
    }, 50)
    app.view = null
//     app.router = new SiteRouter()
//     app.router.launch()
    app.animate(0)
  }

  app.animate = function (t) {
    requestAnimationFrame(app.animate)
    if (! initial_t) {
      initial_t = t
      return
    }
    t -= initial_t
    var dt = t - last_t
    last_t = t
    environment.update(t, dt)
  }

  app.resize = function () {
    environment.resize && environment.resize()
  }

  app.iscroll_options = {
    mouseWheel: true,
    scrollbars: true,
    click: is_android,
  }

  return app

})()

document.addEventListener('DOMContentLoaded', app.init)