private DataModels.Card getFirstDefaultCard() { string lastUsedCardIDC = DataModels.Card.getLastUsedIDC(); DataModels.Card cardToReturn = null; foreach (DataModels.Card card in Cards) { if (card.CardP2PParameters.IsDefaultForTransfers) { cardToReturn = card; break; } if (card.CardP2PParameters.IsDefaultForPurchases) { cardToReturn = card; continue; } if (cardToReturn == null && card.Idc == lastUsedCardIDC) { cardToReturn = card; } } return(cardToReturn); }
// Fills the array of cards with the retrieved data public void fillObservableCardArray(System.Collections.Generic.List <Business.Network.Cards.Models.Card> cardsList) { CardMapper cardMapper = new CardMapper(); Cards = new ObservableCollection <DataModels.Card>(); foreach (Business.Network.Cards.Models.Card item in cardsList) { DataModels.Card card = cardMapper.MapFrom(item); // For UI Update if (!AppServiceParameters.IsWithdrawalMBWayFunctionalityActive && card.CardInhibitionParameters != null) { card.CardInhibitionParameters.IsAllowedToWithdrawalMBWAY = false; } Cards.Add(card); } if (SelectedIndexCard >= Cards.Count) { SelectedIndexCard = 0; } SelectedCard = Cards[SelectedIndexCard]; checkAndSetAvailableSelectedCard(); }
private void checkAndSetAvailableSelectedCard() { if (StorageUtils.IsStoredFlagActive(StorageUtils.kNotificationApproveTransfer)) { // Has to do 'EnumPushNotificationType.APPROVED_TRANSFER' StorageUtils.storeFlagState(StorageUtils.kNotificationApproveTransfer, false); } if (!SelectedCard.CardP2PParameters.IsDefaultForTransfers) { DataModels.Card mDefaultCard = getFirstDefaultCard(); if (mDefaultCard == null) { // Default Logic remains the same setSelectedCardToFirstAvailable(); } else { SelectedCard = mDefaultCard; SelectedIndexCard = Cards.IndexOf(SelectedCard); } } }