refactor: Use new request parameters for network downloads endpoint

This commit is contained in:
Andrea Busi
2023-03-28 16:46:26 +02:00
parent 19c6b3d642
commit 01e8996572
2 changed files with 13 additions and 20 deletions
+1 -1
View File
@@ -33,7 +33,7 @@ static double const EQNMathKelvin = 273.15;
#pragma mark - Server APIs
/// Download reti sismiche
static NSString * const EQNServerUrlDownloadRetiSismiche = @"https://cache.earthquakenetwork.it/distquake_download_automatic21%@.php";
static NSString * const EQNServerUrlDownloadRetiSismiche = @"https://cache.earthquakenetwork.it/distquake_download_automatic21.php%@";
/// Recupera il tempo ancora disponibile per la versione Pro scontata
static NSString * const EQNServerUrlOfferTimeRemaining = @"https://srv.earthquakenetwork.it/distquake_download_offer_time_remaining.php";
/// Registra l'abbonamento acquistato dall'utente
+12 -19
View File
@@ -120,28 +120,21 @@
- (void)scaricaReteSismica
{
// Per ridurre i dati trasferiti tra app e server, ci sono degli endpoint dedicati
// in base alla magnitudo impostata dall'utente (per valori inferiori a 2.0).
// Se l'opzione `Mostra sismi di qualsiasi magnitudo se a meno di 50km` è attiva,
// dobbiamo utilizzare l'endpoint `_M0_0` perchè dobbiamo scaricare tutti i dati
NSString *queryString = @"";
double filterMagnitude = [[EQNSeismic shared].magnitudoMinima doubleValue];
bool filterAnyNearEarthquake = [EQNSeismic shared].sismiQualsiasiAbilitati;
if (filterMagnitude < 0.5 || filterAnyNearEarthquake) {
queryString = @"_M0_0";
} else if (filterMagnitude < 1.0) {
queryString = @"_M0_5";
} else if (filterMagnitude < 1.5) {
queryString = @"_M1_0";
} else if (filterMagnitude < 2.0) {
queryString = @"_M1_5";
// L'endpoint per lo scaricamento dei dati prende due parametri: pro per il provider selezionato, mag per la
// magnitudo minima. Se l'utente ha selezionato più di un provider, inviamo ALL. Mentre la magnitudo
// deve avere sempre una cifra decimale (es 2.0).
NSString *filterProvider = @"";
NSArray<NSString *> *networks = [EQNUserData.sharedData seismicNetworksSelected];
if (networks.count == 1) {
filterProvider = [networks firstObject];
} else {
// verrà usato l'url base
queryString = @"";
filterProvider = @"ALL";
}
NSString *filterMagnitude = [EQNSeismic shared].magnitudoMinima;
NSString *queryString = [NSString stringWithFormat:@"?pro=%@&mag=%@", filterProvider, filterMagnitude];
NSString *urlString = [NSString stringWithFormat:EQNServerUrlDownloadRetiSismiche, queryString];
NSURL *url = [NSURL URLWithString:urlString];
NSLog(@"[EQNManager] Url utilizzato per download reti sismiche: %@", url.absoluteURL);