mirror of
https://github.com/ZuneDev/ZuneShell.dll.git
synced 2026-07-27 13:11:51 -07:00
86 lines
3.1 KiB
C#
86 lines
3.1 KiB
C#
// Decompiled with JetBrains decompiler
|
|
// Type: ZuneUI.CreditCardHelper
|
|
// Assembly: ZuneShell, Version=4.7.0.0, Culture=neutral, PublicKeyToken=ddd0da4d3e678217
|
|
// MVID: FC8028F3-A47B-4FB4-B35B-11D1752D8264
|
|
// Assembly location: C:\Program Files\Zune\ZuneShell.dll
|
|
|
|
using Microsoft.Zune.Service;
|
|
using System;
|
|
using System.Collections;
|
|
|
|
namespace ZuneUI
|
|
{
|
|
public static class CreditCardHelper
|
|
{
|
|
private static string[] s_CardTypeStrs;
|
|
private static string[] s_SupportedCardTypeStrs;
|
|
private static string[] s_JpnSupportedCardTypeStrs;
|
|
|
|
public static string CardTypeToString(CreditCardType cardType) => CardTypeToString((int)cardType);
|
|
|
|
public static string CardTypeToString(int cardType)
|
|
{
|
|
string[] creditCardMappings = CreditCardMappings;
|
|
return cardType >= 0 && cardType < creditCardMappings.Length ? creditCardMappings[cardType] : null;
|
|
}
|
|
|
|
public static CreditCardType CardTypeFromString(string cardTypeStr)
|
|
{
|
|
string[] creditCardMappings = CreditCardMappings;
|
|
for (int index = 0; index < creditCardMappings.Length; ++index)
|
|
{
|
|
if (creditCardMappings[index] == cardTypeStr)
|
|
return (CreditCardType)index;
|
|
}
|
|
return CreditCardType.Unknown;
|
|
}
|
|
|
|
public static IList CardTypes
|
|
{
|
|
get
|
|
{
|
|
if (s_SupportedCardTypeStrs == null || s_JpnSupportedCardTypeStrs == null)
|
|
{
|
|
string[] creditCardMappings = CreditCardMappings;
|
|
s_SupportedCardTypeStrs = new string[4]
|
|
{
|
|
creditCardMappings[2],
|
|
creditCardMappings[3],
|
|
creditCardMappings[1],
|
|
creditCardMappings[0]
|
|
};
|
|
s_JpnSupportedCardTypeStrs = new string[4]
|
|
{
|
|
creditCardMappings[2],
|
|
creditCardMappings[1],
|
|
creditCardMappings[0],
|
|
creditCardMappings[4]
|
|
};
|
|
Array.Sort(s_SupportedCardTypeStrs);
|
|
Array.Sort(s_JpnSupportedCardTypeStrs);
|
|
}
|
|
return SignIn.Instance.SignedIn && string.Compare(SignIn.Instance.CountryCode, "JP", StringComparison.OrdinalIgnoreCase) == 0 ? s_JpnSupportedCardTypeStrs : s_SupportedCardTypeStrs;
|
|
}
|
|
}
|
|
|
|
private static string[] CreditCardMappings
|
|
{
|
|
get
|
|
{
|
|
if (s_CardTypeStrs == null)
|
|
s_CardTypeStrs = new string[7]
|
|
{
|
|
Shell.LoadString(StringId.IDS_BILLING_CC_VISA),
|
|
Shell.LoadString(StringId.IDS_BILLING_CC_MASTERCARD),
|
|
Shell.LoadString(StringId.IDS_BILLING_CC_AMEX),
|
|
Shell.LoadString(StringId.IDS_BILLING_CC_DISCOVER),
|
|
Shell.LoadString(StringId.IDS_BILLING_CC_JCB),
|
|
Shell.LoadString(StringId.IDS_BILLING_CC_DINERS),
|
|
Shell.LoadString(StringId.IDS_BILLING_CC_KLCC)
|
|
};
|
|
return s_CardTypeStrs;
|
|
}
|
|
}
|
|
}
|
|
}
|