From 12e4beae904cf07b662e519b56c498b9c6c53c80 Mon Sep 17 00:00:00 2001 From: coderaiser Date: Mon, 12 May 2014 09:01:30 -0400 Subject: [PATCH] refactor(menu) getUploadToItems --- lib/client/menu.js | 37 +++++++++++++++++++++---------------- 1 file changed, 21 insertions(+), 16 deletions(-) diff --git a/lib/client/menu.js b/lib/client/menu.js index d56af4c2..9a7b08a8 100644 --- a/lib/client/menu.js +++ b/lib/client/menu.js @@ -67,31 +67,36 @@ var CloudCmd, Util, DOM, CloudFunc, $; /** * function get menu item object for Upload To */ - function getUploadToItems(pObjectName) { - var i, n, lStr, lObj = {}; - if (Util.isArray(pObjectName)) { - - n = pObjectName.length; - for (i = 0; i < n; i++) { - lStr = pObjectName[i]; - lObj[lStr] = getUploadToItems( lStr ); - } - } - else if (Util.isString(pObjectName)) { - lObj = function() { + function getUploadToItems(items) { + var str, func, + type = Util.getType(name), + obj = {}; + + switch(type) { + case 'array': + items.forEach(function(item) { + str = item; + obj[str] = getUploadToItems(str); + }); + break; + + case 'string': + func = function() { Info.getData(function(data) { var name = Info.name; - CloudCmd.execFromModule(pObjectName, 'uploadFile', { + + CloudCmd.execFromModule(items, 'uploadFile', { name: name, data: data }); }); - - Util.log('Uploading to ' + pObjectName+ '...'); + + Util.log('Uploading to ' + name + '...'); }; + break; } - return lObj; + return func || obj; } /**