From 6e0413b2e036b8fff997bcd1d6017681cdd91cfd Mon Sep 17 00:00:00 2001 From: RaNaN Date: Sat, 22 Dec 2012 20:32:58 +0100 Subject: improved modal dialogs, added one for link grabber --- module/web/static/js/utils/lazyRequire.js | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) (limited to 'module/web/static/js/utils/lazyRequire.js') diff --git a/module/web/static/js/utils/lazyRequire.js b/module/web/static/js/utils/lazyRequire.js index d20d78610..b381e0ce6 100644 --- a/module/web/static/js/utils/lazyRequire.js +++ b/module/web/static/js/utils/lazyRequire.js @@ -1,9 +1,9 @@ // Define the module. define( [ - "require" + "require", "underscore" ], - function( require ){ + function( require, _ ){ // Define the states of loading for a given set of modules @@ -31,7 +31,7 @@ define( var state = states.unloaded; var args; - var requireOnce = function( dependencies, loadCallback ){ + var requireOnce = function(dependencies, loadCallback ){ // Use the module state to determine which method to // invoke (or just to ignore the invocation). @@ -80,10 +80,17 @@ define( // -------------------------------------------------- // // -------------------------------------------------- // + // Set up holder for underscore + var instances = {}; + _.requireOnce = function(dependencies, loadCallback) { + if (!_.has(instances, dependencies)) + instances[dependencies] = lazyRequire.once(); - // Return the module definition. - return( lazyRequire ); + return instances[dependencies](dependencies, loadCallback) + }; + // Return the module definition. + return( lazyRequire ); } ); \ No newline at end of file -- cgit v1.2.3