Exemplo n.º 1
0
        protected override void OnAppearing()
        {
            _book = DaisyPlayer.Instance.GetDaisyBook();

            if (_book != null)
            {
                int selectedLevel = DaisyPlayer.Instance.GetPlayerInfo().Position.NavigationLevel;
                _model.Items = _book.Body.Where(w => w.Level <= selectedLevel).ToList();
                listView.SetBinding(ListView.ItemsSourceProperty, new Binding("."));
                listView.BindingContext = _model.Items;
            }

            _model.Loading = false;

            UserDialogs.Instance.HideLoading();
        }
Exemplo n.º 2
0
        protected override void OnAppearing()
        {
            _dbook = DaisyPlayer.Instance.GetDaisyBook();

            if (_dbook == null || _dbook.Id != _id)
            {
                if (Directory.Exists($"{Session.Instance.GetDataDir()}/{this._id}") &&
                    File.Exists($"{Session.Instance.GetDataDir()}/{this._id}/ncc.json"))
                {
                    var abookJson = File.ReadAllText($"{Session.Instance.GetDataDir()}/{this._id}/ncc.json");

                    _dbook = JsonConvert.DeserializeObject <DaisyBook>(abookJson);

                    DaisyPlayer.Instance.LoadBook(_dbook);

                    _model.Title = _dbook.Title;

                    _model.Loading = false;

                    // Update status
                    Instance_StatusUpdate(DaisyPlayer.Instance.GetPlayerInfo());
                }
                else
                {
                    UserDialogs.Instance.Alert(
                        new AlertConfig
                    {
                        Title    = "Aviso",
                        Message  = "Audiolibro no encontrado, por favor descárgalo de nuevo.",
                        OkText   = "Aceptar",
                        OnAction = async() =>
                        {
                            await AudioBookStore.Instance.Delete(this._id);

                            DaisyPlayer.Instance.CleanupPlayerInfo();

                            DaisyPlayer.Instance.CleanupDaisyBook();

                            await Navigation.PopToRootAsync(true);
                        }
                    }
                        );
                }
            }

            _model.Loading = false;
        }