MOBILE-2567 settings: Don't display free space

main
Dani Palou 2018-08-31 12:09:46 +02:00
parent 7e809080c8
commit 13307322fa
3 changed files with 11 additions and 36 deletions

View File

@ -20,9 +20,5 @@
<p>{{ 'core.settings.total' | translate }}</p>
<p item-end>{{ totalUsage | coreBytesToSize }}</p>
</ion-item-divider>
<ion-item-divider color="light" *ngIf="showFreeSpace">
<p>{{ 'core.settings.estimatedfreespace' | translate }}</p>
<p item-end>{{ freeSpace | coreBytesToSize }}</p>
</ion-item-divider>
</core-loading>
</ion-content>

View File

@ -16,7 +16,6 @@ import { Component, } from '@angular/core';
import { IonicPage } from 'ionic-angular';
import { TranslateService } from '@ngx-translate/core';
import { CoreAppProvider } from '@providers/app';
import { CoreFileProvider } from '@providers/file';
import { CoreFilepoolProvider } from '@providers/filepool';
import { CoreSitesProvider } from '@providers/sites';
import { CoreTextUtilsProvider } from '@providers/utils/text';
@ -36,14 +35,11 @@ export class CoreSettingsSpaceUsagePage {
sites = [];
currentSiteId = '';
totalUsage = 0;
freeSpace = 0;
showFreeSpace = true;
constructor(private fileProvider: CoreFileProvider, private filePoolProvider: CoreFilepoolProvider,
constructor(private filePoolProvider: CoreFilepoolProvider,
private sitesProvider: CoreSitesProvider, private textUtils: CoreTextUtilsProvider,
private translate: TranslateService, private domUtils: CoreDomUtilsProvider, appProvider: CoreAppProvider) {
this.currentSiteId = this.sitesProvider.getCurrentSiteId();
this.showFreeSpace = !appProvider.isDesktop();
}
/**
@ -91,26 +87,7 @@ export class CoreSettingsSpaceUsagePage {
}
/**
* Convenience function to calculate free space in the device.
*
* @return {Promise<any>} Resolved when done.
*/
protected calculateFreeSpace(): Promise<any> {
if (this.fileProvider.isAvailable()) {
return this.fileProvider.calculateFreeSpace().then((freeSpace) => {
this.freeSpace = freeSpace;
}).catch(() => {
this.freeSpace = 0;
});
} else {
this.freeSpace = 0;
return Promise.resolve(null);
}
}
/**
* Convenience function to calculate space usage and free space in the device.
* Convenience function to calculate space usage.
*
* @return {Promise<any>} Resolved when done.
*/
@ -119,10 +96,6 @@ export class CoreSettingsSpaceUsagePage {
this.calculateSizeUsage().then(() => this.calculateTotalUsage()),
];
if (this.showFreeSpace) {
promises.push(this.calculateFreeSpace());
}
return Promise.all(promises);
}
@ -138,7 +111,7 @@ export class CoreSettingsSpaceUsagePage {
}
/**
* Convenience function to update site size, along with total usage and free space.
* Convenience function to update site size, along with total usage.
*
* @param {any} site Site object with space usage.
* @param {number} newUsage New space usage of the site in bytes.
@ -147,7 +120,6 @@ export class CoreSettingsSpaceUsagePage {
const oldUsage = site.spaceUsage;
site.spaceUsage = newUsage;
this.totalUsage -= oldUsage - newUsage;
this.freeSpace += oldUsage - newUsage;
}
/**

View File

@ -360,12 +360,19 @@ export class CoreFileProvider {
/**
* Calculate the free space in the disk.
* Please notice that this function isn't reliable and it's not documented in the Cordova File plugin.
*
* @return {Promise<number>} Promise resolved with the estimated free space in bytes.
*/
calculateFreeSpace(): Promise<number> {
return this.file.getFreeDiskSpace().then((size) => {
return size; // GetFreeDiskSpace returns KB.
if (this.platform.is('ios')) {
// In iOS the size is in bytes.
return Number(size);
}
// The size is in KB, convert it to bytes.
return Number(size) * 1024;
});
}