Esempio n. 1
0
        public async Task <IEnumerable <TMDbMovie> > GetUpcommingMoviesAsync(int page = 1)
        {
            if (currentPage == null || currentPage.TotalPages >= page)
            {
                var currentCulture = localize.GetCurrentCultureInfo();
                var language       = currentCulture.Name;
                currentPage = await client.GetAsync <TMDbPage>(
                    $"movie/upcoming?api_key={API_KEY}&page={page}&language={language}");

                return(currentPage?.Results.Distinct());
            }

            return(null);
        }
        private async Task GetLanguageAsync()
        {
            await Task.Run(() =>
            {
                var data     = _secureStorage.Retrieve <byte[]>(StorageConstants.KEY_USER_LANGUAGE);
                var language = data != null ? Encoding.UTF8.GetString(data, 0, data.Length) : "";
                if (!string.IsNullOrEmpty(language))
                {
                    AppConfig.DefaultLanguage = language;
                }
                else
                {
                    if (!string.IsNullOrEmpty(AppConfig.DefaultLanguage))
                    {
                        AppConfig.DefaultLanguage = _localize.GetLanguage(AppConfig?.DefaultLanguage);
                    }
                    else
                    {
                        AppConfig.DefaultLanguage = _localize.GetLanguage();
                    }
                }

                LanguageInfo          = _localize.GetCurrentCultureInfo(AppConfig.DefaultLanguage);
                TextResources.Culture = LanguageInfo;
            });
        }
Esempio n. 3
0
 public Translate()
 {
     if (Device.RuntimePlatform == Device.Android)
     {
         ILocalize service = DependencyService.Get <ILocalize>();
         ci = service.GetCurrentCultureInfo();
     }
 }
 public TranslateExtension()
 {
     if (Device.RuntimePlatform == Device.iOS || Device.RuntimePlatform == Device.Android)
     {
         ILocalize nativeImpl = null;
         nativeImpl = DependencyService.Get <ILocalize>();
         ci         = nativeImpl.GetCurrentCultureInfo();
     }
 }
        public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
        {
            double result;

            if (double.TryParse((value as string), NumberStyles.Currency, _Localize.GetCurrentCultureInfo(), out result))
            {
                return(result);
            }
            return(value);
        }
Esempio n. 6
0
 public TranslateExtension()
 {
     _localize = DependencyService.Get <ILocalize>();
     if (App.Configuration?.LanguageInfo == null)
     {
         App.Configuration.LanguageInfo = _localize.GetCurrentCultureInfo("en-US");
     }
     TextResources.Culture = App.Configuration.LanguageInfo;
     ci = App.Configuration.LanguageInfo;
 }
Esempio n. 7
0
        public App(IPlatformInitializer initializer = null) : base(initializer)
        {
            var localize = Container.Resolve <ILocalize>();

            _localize = localize;
            if (Device.OS == TargetPlatform.iOS || Device.OS == TargetPlatform.Android)
            {
                LanguageSettings.CurrentCulture = _localize.GetCurrentCultureInfo();
                AppResources.Culture            = LanguageSettings.CurrentCulture; // set the RESX for resource localization
                _localize.SetLocale(LanguageSettings.CurrentCulture);              // set the Thread for locale-aware methods
            }
        }
Esempio n. 8
0
        public App()
        {
            this.InitializeComponent();

            // Setting language display in following: https://docs.microsoft.com/en-us/xamarin/xamarin-forms/app-fundamentals/localization?tabs=vswin#displaying-the-correct-language
            ILocalize   localize = ViewModelLocator.Resolve <ILocalize>();
            CultureInfo ci       = localize.GetCurrentCultureInfo();

            // Set the RESX for resource localization
            Resx.AppResources.Culture = ci;

            // Set the Thread for locale-aware methods
            localize.SetLocale(ci);
        }
        /// <summary>
        /// Get iamge resource route with current culture
        /// </summary>
        /// <param name="Name">resource name</param>
        /// <returns></returns>
        public static string GetImageRouteCurrentCulture(string Name)
        {
            var currentCulture = _localize?.GetCurrentCultureInfo();

            if (currentCulture != null && !currentCulture.Name.Equals("en"))
            {
                var nameWithouExt = Path.GetFileNameWithoutExtension(Name);
                var extension     = Path.GetExtension(Name);
                var fullRoute     = string.Join(
                    ".", RESOURCE_PREFIX, "Images", nameWithouExt, string.Concat(currentCulture.Name, extension));

                return(fullRoute);
            }

            return(Name);
        }
Esempio n. 10
0
        /// <summary>
        /// Get the current locale and apply it.
        /// </summary>
        public void UpdateLocale()
        {
            // determine the correct, supported .NET culture
            var ci = localize.GetCurrentCultureInfo();

            SetCultureInfo(ci);
            if (Device.RuntimePlatform == Device.Tizen)
            {
                // Whenever language has been changed, CurrentCulture will be updated.
                MessagingCenter.Subscribe <ILocalize, CultureInfo>(this, "LanguageChanged", (obj, culture) =>
                {
                    SetCultureInfo(culture);
                    MessagingCenter.Send <App>(this, "UpdateUIByLanguageChanges");
                });
            }
        }
Esempio n. 11
0
        public App()
        {
            InitializeComponent();

            // Configurar idioma cada vez que el app inicializa
            ILocalize   localizeDependency = DependencyService.Get <ILocalize>();
            CultureInfo ci = localizeDependency.GetCurrentCultureInfo();

            ConfigureCultureIdiomsApp(ci);

            // Inicializamos locker del app instance
            if (_lockeable == null)
            {
                _lockeable = FreshIOC.Container.Resolve <ILockeable>();
            }

            // Solo se necesita inicializar sonidos cuando se reproduce un sound personalizado, con PlaySound
            // Si usar PlayNotificationDefaultSound no se necesita
            //// Inicializamos sonidos
            //if (Device.RuntimePlatform == Device.Android)
            //{
            //    InicializarSoundsFiles();
            //}

            if (!string.IsNullOrWhiteSpace(RecordedPerson) && !string.IsNullOrWhiteSpace(RecordedIdiomPerson) && !string.IsNullOrWhiteSpace(RecordedUser) && !string.IsNullOrWhiteSpace(RecordedPasswordUser))
            {
                MainPage = FreshPageModelResolver.ResolvePageModel <LottieLoadPageModel>();
            }
            else
            {
                FreshNavigationContainer basicNavContainer = ConfigureNavigationContainer();
                MainPage = basicNavContainer;
            }

            _appInicializada = true;
        }
 public ResourceContainer(ResourceManager manager, ILocalize localize)
 {
     _cultureInfo     = localize.GetCurrentCultureInfo();
     _resourceManager = manager;
 }