// Load #1, load as little as possible because we are in a race to get the loading screen up. define([ '/bower_components/nthen/index.js', '/api/config', '/common/dom-ready.js', '/common/sframe-common-outer.js', '/common/outer/local-store.js', '/common/outer/login-block.js', ], function (nThen, ApiConfig, DomReady, SFCommonO, LocalStore, Block) { // Loaded in load #2 nThen(function (waitFor) { DomReady.onReady(waitFor()); }).nThen(function (waitFor) { SFCommonO.initIframe(waitFor); }).nThen(function (/*waitFor*/) { var category; if (window.location.hash) { category = window.location.hash.slice(1); window.location.hash = ''; } var addData = function (obj) { if (category) { obj.category = category; } var hash = LocalStore.getBlockHash(); if (!hash) { return; } var parsed = Block.parseBlockHash(hash); if (!parsed || !parsed.href) { return; } obj.blockLocation = parsed.href; }; SFCommonO.start({ noRealtime: true, addData: addData }); }); });