diff options
Diffstat (limited to 'StoneIsland/platforms/android/assets/www/js/index.js')
| -rwxr-xr-x | StoneIsland/platforms/android/assets/www/js/index.js | 157 |
1 files changed, 157 insertions, 0 deletions
diff --git a/StoneIsland/platforms/android/assets/www/js/index.js b/StoneIsland/platforms/android/assets/www/js/index.js new file mode 100755 index 00000000..9b54ad44 --- /dev/null +++ b/StoneIsland/platforms/android/assets/www/js/index.js @@ -0,0 +1,157 @@ +var app = (function(){ + var app = {} + + app.init = function(){ + console.log("init") + + if (window.location.hostname === 'lvh.me' || window.location.hostname === 'dev.stone.giraffe.life' || window.location.hostname === 'staging.stone.giraffe.life') { + console.log('launching in test mode') + sdk.init({ env: "test" }) + } + else { + sdk.init({ env: "production" }) + } + + app.bind() + app.build() + + app.iscroll_options = { + mouseWheel: true, + scrollbars: true, + } + + if (window.cordova) { + document.addEventListener('deviceready', app.ready, false) + } + else { + app.ready() + } + } + + app.bind = function(){ + document.addEventListener('touchmove', function(e){ e.preventDefault() }) + FastClick.attach(document.body) + } + + app.build = function(){ + app.blog = new BlogView () + app.archive = new ArchiveView () + app.hub = new HubView () + app.story = new StoryView () + app.cart = new CartView () + + app.intro = new IntroView () + app.header = new HeaderView () + app.footer = new FooterView () + app.curtain = new CurtainView () + app.nav = new NavView () + + app.account = new AccountView () + app.login = new LoginView () + app.logout = new LogoutView () + app.signup = new SignupView () + app.profile = new ProfileView () + app.payment = new PaymentView () + app.shipping = new ShippingView () + app.settings = new SettingsView () + app.orders = new OrdersView () + + app.terms = new PageView ({ page: "terms" }) + app.privacy = new PageView ({ page: "privacy" }) + app.returns = new PageView ({ page: "returns" }) + app.care = new PageView ({ page: "care" }) + + app.collection = new CollectionView () + app.product = new ProductView () + app.closed = new ClosedStoreView () + app.search = new SearchView () + + app.selector = new Selector () + } + + app.ready = function(){ + console.log(">> READY") + if (window.cordova) { + document.addEventListener('pause', app.paused, false) + document.addEventListener('resume', app.resumed, false) + document.addEventListener('online', app.online, false) + document.addEventListener('offline', app.offline, false) + cordova.plugins.Keyboard.disableScroll(true) + cordova.plugins.Keyboard.hideKeyboardAccessoryBar(false) + geo.fetch() + sim.fetch(app.api_ready) + var image = new Image + image.src = "./img/compass-logo.png" + } + else { + app.api_ready() + } + } + + app.api_ready = function(){ + if (is_iphone_x) { + StatusBar.hide() + } + + app.view = null + app.router = new SiteRouter () + +// if (sdk.env == "test") { +// app.router.launch() +// } +// else { +// } + + if (navigator.onLine) { + app.account.connect(window.deepLinkRoute || '/intro') + app.blog.fetch(function(){ + console.log("navigating to deep link route after fetch") + app.router.initial_route = window.deepLinkRoute || "/intro" + app.router.launch() + }) + } + else { + console.log(">> LAUNCHED WHILE OFFLINE") + app.router.go("intro") + app.finished_launching() + } + + push.init() + } + + app.finished_launching = function(){ + console.log(">> FINISHED LAUNCHING") + if (window.cordova) { + navigator.splashscreen.hide() + } + if (window.deepLinkRoute) { + app.router.go(window.deepLinkRoute) + } + app.fullscreenViewer = ImageViewer() + $("body").removeClass("loading") + } + + var refresh_time = +Date.now() + app.paused = function(){} + app.resumed = function(){ + console.log( "app is ready?", app.is_ready ) + + geo.fetch() + var now = +Date.now() + if (now - refresh_time > 60 * 60 * 1000) { + refresh_time = now + app.blog.refresh() + } + } + + app.online = function(){ + console.log(">> ONLINE") + } + app.offline = function(){ + console.log(">> OFFLINE") + } + + return app +})() + +app.init() |
