refactor(loader) anyLoadInParallel

This commit is contained in:
coderaiser 2014-02-04 03:24:20 -05:00
parent f950daad43
commit 75a1b4a5b6

View file

@ -144,36 +144,39 @@ var Util, DOM;
* we pop number of function and
* if it's last we call pCallBack
*
* @param pParams_a
* @param pFunc - onload function
* @param params
* @param callback - onload function
*/
this.anyLoadInParallel = function(pParams_a, pFunc) {
var lDone = [],
this.anyLoadInParallel = function(params, callback) {
var i, n, param, func,
done = [],
lDoneFunc = function (pCallBack) {
Util.exec(pCallBack);
doneFunc = function (func) {
Util.exec(func);
if (!lDone.pop())
Util.exec(pFunc);
if (!done.pop())
Util.exec(callback);
};
if (!Util.isArray(pParams_a)) {
pParams_a = [pParams_a];
}
if (!Util.isArray(params))
params = [params];
for(var i = 0, n = pParams_a.length; i < n; i++) {
var lParam = pParams_a.pop();
n = params.length;
for (i = 0; i < n; i++) {
param = params.pop();
if (lParam) {
lDone.push(i);
if (param) {
done.push(i);
if (Util.isString(lParam))
lParam = { src : lParam };
if (Util.isString(param))
param = { src : param };
else
func = param.func;
var lFunc = lParam.func;
lParam.func = Util.retExec(lDoneFunc, lFunc);
param.func = Util.retExec(doneFunc, func);
Loader.anyload(lParam);
Loader.anyload(param);
}
}