diff --git a/src/Banquale/Banquale/Model/Account.cs b/src/Banquale/Banquale/Model/Account.cs index d11a7af..2da4503 100644 --- a/src/Banquale/Banquale/Model/Account.cs +++ b/src/Banquale/Banquale/Model/Account.cs @@ -63,12 +63,25 @@ namespace Banquale.Model } private string iban; + public string IBANHide + { + get => ibanHide; + set + { + if (ibanHide == value) + return; + ibanHide = value; + OnPropertyChanged(nameof(IBANHide)); + } + } + private string ibanHide; public Account(int balance, string name, string iban) { Balance = balance; Name = name; IBAN = iban; + IBANHide = IBANToString(); } [DataMember] @@ -117,6 +130,18 @@ namespace Banquale.Model throw new NotImplementedException(); } + public string IBANToString() + { + char[] res = IBAN.ToCharArray(); + for (int i = 5; i< IBAN.Length - 4; i++ ) + { + if (res[i] == ' ') + continue; + res[i] = '*'; + } + return new string(res); + } + public bool Equals(Account other) { if(other == null) return false; diff --git a/src/Banquale/Banquale/Model/Manager.cs b/src/Banquale/Banquale/Model/Manager.cs index ba1a3e4..2571e38 100644 --- a/src/Banquale/Banquale/Model/Manager.cs +++ b/src/Banquale/Banquale/Model/Manager.cs @@ -35,6 +35,17 @@ namespace Banquale.Model private Account selectedAccount; + public Transactions SelectedTransaction + { + get => selectedTransaction; + set + { + selectedTransaction = value; + } + } + + private Transactions selectedTransaction; + public IPersistenceManager Persistence { get; set; } public Manager(IPersistenceManager persistence) { diff --git a/src/Banquale/Banquale/Model/Transactions.cs b/src/Banquale/Banquale/Model/Transactions.cs index 2ebf0dd..424de11 100644 --- a/src/Banquale/Banquale/Model/Transactions.cs +++ b/src/Banquale/Banquale/Model/Transactions.cs @@ -97,6 +97,7 @@ namespace Banquale.Model Date = date; } + public event PropertyChangedEventHandler PropertyChanged; } } diff --git a/src/Banquale/Banquale/Views/Balance/BalancePage.xaml.cs b/src/Banquale/Banquale/Views/Balance/BalancePage.xaml.cs index d11d362..2f64a78 100644 --- a/src/Banquale/Banquale/Views/Balance/BalancePage.xaml.cs +++ b/src/Banquale/Banquale/Views/Balance/BalancePage.xaml.cs @@ -17,6 +17,7 @@ public partial class BalancePage : ContentPage public async void Transaction_Clicked(System.Object sender, Microsoft.Maui.Controls.TappedEventArgs e) { + Mgr.SelectedTransaction = Mgr.SelectedAccount.TransactionsList[0]; await Shell.Current.Navigation.PushAsync(new TransactionsPage()); } public async void Balance_Clicked(object sender, EventArgs e) diff --git a/src/Banquale/Banquale/Views/TransactionsPage.xaml b/src/Banquale/Banquale/Views/TransactionsPage.xaml index 4a60037..f60afc6 100644 --- a/src/Banquale/Banquale/Views/TransactionsPage.xaml +++ b/src/Banquale/Banquale/Views/TransactionsPage.xaml @@ -38,51 +38,52 @@