Exemplo n.º 1
0
        async void DoOpenLOMapCommand(lo_by_circle_wrapper learningobj)
        {
            //await  _mLearningService.OpenLearningObject(learningobj.lo.id,learningobj.lo.url_package,UserID);

            try
            {
                List <lo_by_circle> list = LearningOjectsList.Select(lo => lo.lo).ToList();



                //await BlockDownload.TryLoadByteVector<MLearning.Core.ViewModels.MainViewModel.lo_by_circle_wrapper>(LearningOjectsList.ToList(),
                //    (pos, bytes) => { },
                //    (lo) => { return lo.lo.url_background; }
                //    );


                //Download all the data of the selected LO

                /*foreach (var item in LearningOjectsList)
                 * {
                 *      if (item.lo.id == learningobj.lo.id)
                 *      {
                 *              await FetchLOData(item.lo.id, true);
                 *      }
                 *      else
                 *      {
                 *              await FetchLOData(item.lo.id, false);
                 *      }
                 *
                 *
                 *
                 * }*/


                string serialized = JsonConvert.SerializeObject(list);
                ShowViewModel <LOMapViewModel>(new { lo_id = learningobj.lo.id,
                                                     serialized_los_in_circle = serialized,
                                                     _currentCurso            = this._currentCurso,
                                                     _currentUnidad           = this._currentUnidad,
                                                     _currentSection          = this._currentSection });
            }
            catch (WebException e)
            {
                ConnectionOK = false;
            }
            catch (HttpRequestException e)
            {
                ConnectionOK = false;
            }
            catch (MobileServiceInvalidOperationException e)
            {
                Mvx.Trace("MobileServiceInvalidOperationException " + e.Message);
                OperationOK = false;
            }
        }
Exemplo n.º 2
0
        async Task LoadLearningObjects(int circle_id)
        {
            if (LearningOjectsList != null)
            {
                LearningOjectsList.Clear();
            }

            var list = await _mLearningService.GetLOByCircleAndUser(circle_id, UserID);

            int circleIndex = CirclesList.IndexOf(CirclesList.Where(c => c.id == circle_id).First());

            var circleLOList = new List <lo_by_circle_wrapper>();



            foreach (var item in list)
            {
                circleLOList.Add(new lo_by_circle_wrapper {
                    lo = item
                });
            }

            CirclesLearningObjects[circleIndex] = new ObservableCollection <lo_by_circle_wrapper>(circleLOList);

            LearningOjectsList = CirclesLearningObjects[circleIndex];


            await BlockDownload.TryPutBytesInVector <MLearning.Core.ViewModels.MainViewModel.lo_by_circle_wrapper>(LearningOjectsList.ToList(),
                                                                                                                   (pos, bytes) => {
                if (pos < LearningOjectsList.Count)
                {
                    LearningOjectsList[pos].background_bytes = bytes;
                }
            },
                                                                                                                   (lo) => { return(lo.lo.url_background); }
                                                                                                                   );


            _locover_manager.Clear();

            CurrentIndexDisplaying = 0;

            await UpdateLOImages(CurrentIndexDisplaying, CirclesLearningObjects[CirclesList.IndexOf(CirclesList.Where(c => c.id == CircleID).First())]);
        }