/// <summary>
        /// GetUIAccountManagementLabel method implementation
        /// </summary>
        public override string GetUIAccountManagementLabel(AuthenticationContext ctx)
        {
            ResourcesLocale Resources = new ResourcesLocale(ctx.Lcid);

            return(Resources.GetString(ResourcesLocaleKind.Html, "GLOBALManagement"));
        }
        /// <summary>
        /// GetUIDefaultChoiceLabel method implementation
        /// </summary>
        public override string GetUIDefaultChoiceLabel(AuthenticationContext ctx)
        {
            ResourcesLocale Resources = new ResourcesLocale(ctx.Lcid);

            return(Resources.GetString(ResourcesLocaleKind.Html, "GLOBALListChoiceDefaultLabel"));
        }
        /// <summary>
        /// GetUIWarningInternetLabel method implementation
        /// </summary>
        public override string GetUIWarningInternetLabel(AuthenticationContext ctx)
        {
            ResourcesLocale Resources = new ResourcesLocale(ctx.Lcid);

            return(Resources.GetString(ResourcesLocaleKind.Html, "GLOBALWarnOverNetwork"));
        }
        /// <summary>
        /// GetUIWarningThirdPartyLabel method implementation
        /// </summary>
        public override string GetUIWarningThirdPartyLabel(AuthenticationContext ctx)
        {
            ResourcesLocale Resources = new ResourcesLocale(ctx.Lcid);

            return(Resources.GetString(ResourcesLocaleKind.Html, "GLOBALWarnThirdParty"));
        }
        /// <summary>
        /// GetUIConfigLabel method implementation
        /// </summary>
        public override string GetUIConfigLabel(AuthenticationContext ctx)
        {
            if (!IsInitialized)
            {
                throw new Exception("Provider not initialized !");
            }

            GetAuthenticationContext(ctx);
            ResourcesLocale Resources = new ResourcesLocale(ctx.Lcid);

            switch (ctx.SelectedMethod)
            {
            case AuthenticationResponseKind.PhoneAppNotification:
                return(Resources.GetString(ResourcesLocaleKind.Html, "NOTIFConfigLabel"));

            case AuthenticationResponseKind.PhoneAppOTP:
                return(Resources.GetString(ResourcesLocaleKind.Html, "OTPConfigLabel"));

            case AuthenticationResponseKind.SmsOneWayOTPplusPin:
            case AuthenticationResponseKind.SmsOneWayOTP:
            case AuthenticationResponseKind.SmsTwoWayOTPplusPin:
            case AuthenticationResponseKind.SmsTwoWayOTP:
                if (string.IsNullOrEmpty(ctx.ExtraInfos))
                {
                    return(Resources.GetString(ResourcesLocaleKind.Html, "SMSConfigLabel"));
                }
                else
                {
                    return(string.Format(Resources.GetString(ResourcesLocaleKind.Html, "SMSConfigLabel2"), Utilities.StripPhoneNumber(ctx.ExtraInfos)));
                }

            case AuthenticationResponseKind.VoiceTwoWayMobilePlusPin:
            case AuthenticationResponseKind.VoiceTwoWayMobile:
                if (string.IsNullOrEmpty(ctx.ExtraInfos))
                {
                    return(Resources.GetString(ResourcesLocaleKind.Html, "VOICE1ConfigLabel"));
                }
                else
                {
                    return(string.Format(Resources.GetString(ResourcesLocaleKind.Html, "VOICE1ConfigLabel2"), Utilities.StripPhoneNumber(ctx.ExtraInfos)));
                }

            case AuthenticationResponseKind.VoiceTwoWayAlternateMobilePlusPin:
            case AuthenticationResponseKind.VoiceTwoWayAlternateMobile:
                if (string.IsNullOrEmpty(ctx.ExtraInfos))
                {
                    return(Resources.GetString(ResourcesLocaleKind.Html, "VOICE2ConfigLabel"));
                }
                else
                {
                    return(string.Format(Resources.GetString(ResourcesLocaleKind.Html, "VOICE2ConfigLabel2"), Utilities.StripPhoneNumber(ctx.ExtraInfos)));
                }

            case AuthenticationResponseKind.VoiceTwoWayOfficePlusPin:
            case AuthenticationResponseKind.VoiceTwoWayOffice:
                if (string.IsNullOrEmpty(ctx.ExtraInfos))
                {
                    return(Resources.GetString(ResourcesLocaleKind.Html, "VOICE3ConfigLabel"));
                }
                else
                {
                    return(string.Format(Resources.GetString(ResourcesLocaleKind.Html, "VOICE3ConfigLabel2"), Utilities.StripPhoneNumber(ctx.ExtraInfos)));
                }

            default:
                return(string.Empty);
            }
        }