return function (sResult, oData) { if (Enums.StorageResultType.Success !== sResult || !oData || !oData.Result) { if (oData && oData.ErrorCode) { self.packagesError(Utils.getNotification(oData.ErrorCode)); } else { self.packagesError(Utils.getNotification( bInstall ? Enums.Notification.CantInstallPackage : Enums.Notification.CantDeletePackage)); } } _.each(Data.packages(), function (oItem) { if (oItem && oPackage && oItem['loading']() && oPackage['file'] === oItem['file']) { oPackage['loading'](false); oItem['loading'](false); } }); if (Enums.StorageResultType.Success === sResult && oData && oData.Result && oData.Result['Reload']) { window.location.reload(); } else { require('App/Admin').reloadPackagesList(); } };
Remote.packagesList(function (sResult, oData) { Data.packagesLoading(false); if (Enums.StorageResultType.Success === sResult && oData && oData.Result) { Data.packagesReal(!!oData.Result.Real); Data.packagesMainUpdatable(!!oData.Result.MainUpdatable); var aList = [], aLoading = {} ; _.each(Data.packages(), function (oItem) { if (oItem && oItem['loading']()) { aLoading[oItem['file']] = oItem; } }); if (Utils.isArray(oData.Result.List)) { aList = _.compact(_.map(oData.Result.List, function (oItem) { if (oItem) { oItem['loading'] = ko.observable(!Utils.isUnd(aLoading[oItem['file']])); return 'core' === oItem['type'] && !oItem['canBeInstalled'] ? null : oItem; } return null; })); } Data.packages(aList); } else { Data.packagesReal(false); } });