MCPcopy
hub / github.com/Flotype/now / scriptLoaded

Function scriptLoaded

lib/client/now.js:544–585  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

542 var dependenciesLoaded = 0;
543
544 var scriptLoaded = function () {
545 dependenciesLoaded++;
546 if (dependenciesLoaded !== dependencies.length) {
547 return;
548 }
549 socket = io.connect(uri + '/', now.core.options.socketio || {});
550 now.core.socketio = socket;
551 socket.on('connect', function () {
552 now.core.clientId = socket.socket.sessionid;
553 lib.handleNewConnection(socket);
554 // Begin intermittent scope traversal
555
556 setTimeout(function () {
557 lib.processNowScope();
558 socket.emit('rd');
559 if (++readied === 2) {
560 nowReady = true;
561 util.emit('ready');
562 }
563 }, 100);
564
565 util.emit('connect');
566 });
567 socket.on('disconnect', function () {
568 // y-combinator trick
569 (function (y) {
570 y(y, now);
571 }(function (fn, obj) {
572 for (var i in obj) {
573 if (obj[i] && typeof obj[i] === 'object' &&
574 obj[i] !== document && obj[i] !== now.core) {
575 fn(fn, obj[i]);
576 }
577 else if (typeof obj[i] === 'function' && obj[i].remote) {
578 delete obj[i];
579 }
580 }
581 }));
582 // Clear all sorts of stuff in preparation for reconnecting.
583 fqnMap.data = {};
584 });
585 };
586
587 for (var i = 0, ii = dependencies.length; i < ii; i++) {
588 if (window[dependencies[i]['key']]) {

Callers 1

noConflictFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected