refactor: Add a type inside the SettingItem model

This commit is contained in:
Andrea Busi
2020-08-26 14:00:56 +02:00
parent b70bd95a6d
commit 1c0a449c05
6 changed files with 18 additions and 547 deletions
@@ -39,8 +39,8 @@ static NSString * const SegueIdentifierRetiSismiche = @"retiSismiche";
[super viewDidLoad];
self.settings = @[
[[SettingItem alloc] initWithTitle:NSLocalizedString(@"Notifiche segnalazioni utente", @"voce menu") segue:SegueIdentifierSegnalazioniUtente],
[[SettingItem alloc] initWithTitle:NSLocalizedString(@"Notifiche da reti sismiche", @"voce menu") segue:SegueIdentifierRetiSismiche]
[[SettingItem alloc] initWithType:SettingTypeDetail title:NSLocalizedString(@"Notifiche segnalazioni utente", @"voce menu") subtitle:nil icon:nil segue:SegueIdentifierSegnalazioniUtente],
[[SettingItem alloc] initWithType:SettingTypeDetail title:NSLocalizedString(@"Notifiche da reti sismiche", @"voce menu") subtitle:nil icon:nil segue:SegueIdentifierRetiSismiche]
];
[self.tableView registerClass:[SettingDetailTableViewCell class] forCellReuseIdentifier:SettingDetailTableViewCell.Identifier];
@@ -32,8 +32,8 @@
[self.tableView registerClass:[SettingSliderTableViewCell class] forCellReuseIdentifier:SettingSliderTableViewCell.Identifier];
self.settings = @[
[[SettingItem alloc] initWithTitle:NSLocalizedString(@"Abilitato", @"voce menu") subtitle:@"Ricevi le notifiche dei suoni segnalati manualmente dagli utenti" icon:nil segue:nil],
[[SettingItem alloc] initWithTitle:NSLocalizedString(@"Raggio dalla tua posizione", @"voce menu") subtitle:nil icon:nil segue:nil],
[[SettingItem alloc] initWithType:SettingTypeEnable title:NSLocalizedString(@"Abilitato", @"voce menu") subtitle:NSLocalizedString(@"Ricevi le notifiche dei suoni segnalati manualmente dagli utenti", @"") icon:nil segue:nil],
[[SettingItem alloc] initWithType:SettingTypeSlider title:NSLocalizedString(@"Raggio dalla tua posizione", @"voce menu") subtitle:nil icon:nil segue:nil]
];
if (![EQNNotificheSegnalazioniUtente center].distanzaPosizione)
@@ -97,7 +97,7 @@
{
SettingItem *setting = self.settings[indexPath.row];
if (indexPath.row == 0) {
if (setting.type == SettingTypeEnable) {
SettingEnableTableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:SettingEnableTableViewCell.Identifier forIndexPath:indexPath];
cell.toggleSwitch.on = self.notificationsEnabled;
cell.isDisabled = !self.notificationsEnabled;
@@ -114,7 +114,7 @@
};
return cell;
} else if (indexPath.row == 1) {
} else if (setting.type == SettingTypeSlider) {
SettingSliderTableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:SettingSliderTableViewCell.Identifier forIndexPath:indexPath];
cell.isDisabled = !self.notificationsEnabled;
cell.titleLabel.text = setting.displayTitle;
@@ -29,8 +29,8 @@ static NSString * const SegueIdentifierNotificheSismi = @"ShowNotificheSismi";
[self.tableView registerClass:[SettingDetailTableViewCell class] forCellReuseIdentifier:SettingDetailTableViewCell.Identifier];
self.settings = @[
[[SettingItem alloc] initWithTitle:NSLocalizedString(@"Allerta in tempo reale", @"voce menu") subtitle:nil icon:@"🚨" segue:SegueIdentifierAllertaSismica],
[[SettingItem alloc] initWithTitle:NSLocalizedString(@"Notifiche sismi", @"voce menu") subtitle:nil icon:@"🔔" segue:SegueIdentifierNotificheSismi]
[[SettingItem alloc] initWithType:SettingTypeDetail title:NSLocalizedString(@"Allerta in tempo reale", @"voce menu") subtitle:nil icon:@"🚨" segue:SegueIdentifierAllertaSismica],
[[SettingItem alloc] initWithType:SettingTypeDetail title:NSLocalizedString(@"Notifiche sismi", @"voce menu") subtitle:nil icon:@"🔔" segue:SegueIdentifierNotificheSismi]
];
}