Esempio n. 1
0
        public async Task <IActionResult> Current(
            string?searchString  = null,
            string?sortBy        = null,
            string sortDirection = BaseSearchablePageViewModel.Descending,
            int page             = 1
            )
        {
            sortBy ??= CourseSortByOptions.LastAccessed.PropertyName;
            var delegateId      = User.GetCandidateIdKnownNotNull();
            var currentCourses  = courseDataService.GetCurrentCourses(delegateId);
            var bannerText      = GetBannerText();
            var selfAssessments =
                selfAssessmentService.GetSelfAssessmentsForCandidate(delegateId);
            var learningResources = await GetIncompleteActionPlanResourcesIfSignpostingEnabled(delegateId);

            var model = new CurrentPageViewModel(
                currentCourses,
                searchString,
                sortBy,
                sortDirection,
                selfAssessments,
                learningResources,
                bannerText,
                page
                );

            return(View("Current/Current", model));
        }
Esempio n. 2
0
        public void Current_courses_should_return_correct_number_of_search_results()
        {
            var courses = new[]
            {
                CurrentCourseHelper.CreateDefaultCurrentCourse(courseName: "a course 1"),
                CurrentCourseHelper.CreateDefaultCurrentCourse(courseName: "b course 2"),
                CurrentCourseHelper.CreateDefaultCurrentCourse(courseName: "c course 3"),
                CurrentCourseHelper.CreateDefaultCurrentCourse(courseName: "d course 4"),
                CurrentCourseHelper.CreateDefaultCurrentCourse(courseName: "e course 5"),
                CurrentCourseHelper.CreateDefaultCurrentCourse(courseName: "f course 6"),
                CurrentCourseHelper.CreateDefaultCurrentCourse(courseName: "g course 7"),
                CurrentCourseHelper.CreateDefaultCurrentCourse(courseName: "h course 8"),
                CurrentCourseHelper.CreateDefaultCurrentCourse(courseName: "i course 9"),
                CurrentCourseHelper.CreateDefaultCurrentCourse(courseName: "j course 10"),
                CurrentCourseHelper.CreateDefaultCurrentCourse(courseName: "k course 11"),
            };

            selfAssessments = new SelfAssessment[]
            {
                SelfAssessmentHelper.CreateDefaultSelfAssessment(),
                    SelfAssessmentHelper.CreateDefaultSelfAssessment(),
            };
            model = new CurrentPageViewModel(
                courses,
                "Course",
                "Name",
                "Ascending",
                selfAssessments,
                actionPlanResources,
                null,
                1
                );

            model.MatchingSearchResults.Should().Be(11);
        }
        private void ChangeViewModel(IPageViewModel viewModel)
        {
            if (!PageViewModels.Contains(viewModel))
            {
                PageViewModels.Add(viewModel);
            }

            CurrentPageViewModel = PageViewModels
                                   .FirstOrDefault(vm => vm == viewModel);
            CurrentPageViewModel.workWithBoundingBox();
        }
Esempio n. 4
0
 private void BrowseBack()
 {
     if (CurrentPageViewModel.HasBackStack)
     {
         CurrentPageViewModel.Back();
     }
     else if (CurrentPageViewModel.CanClose)
     {
         CurrentPageViewModel = null;
     }
 }
Esempio n. 5
0
 private void NextViewModel()
 {
     if (CurrentPageViewModel.SaveContent())
     {
         int current_index = PageViewModels.FindIndex(vm => vm == CurrentPageViewModel);
         if (current_index + 1 != PageViewModels.Count)
         {
             CurrentPageViewModel = PageViewModels[current_index + 1];
         }
     }
 }
Esempio n. 6
0
        private void ChangeViewModel(IPageViewModel viewModel)
        {
            if (!PageViewModels.Contains(viewModel))
            {
                PageViewModels.Add(viewModel);
            }

            CurrentPageViewModel = PageViewModels
                                   .FirstOrDefault(vm => vm == viewModel);

            CurrentPageViewModel.Init();
        }
Esempio n. 7
0
        public async Task Current_action_should_return_view_result_with_correct_api_accessibility_flag(
            bool apiIsAccessible
            )
        {
            // Given
            var currentCourses = new[]
            {
                CurrentCourseHelper.CreateDefaultCurrentCourse(),
           CurrentCourseHelper.CreateDefaultCurrentCourse(),
            };
            var selfAssessments = new[]
            {
                SelfAssessmentHelper.CreateDefaultSelfAssessment(),
                SelfAssessmentHelper.CreateDefaultSelfAssessment(),
            };
            var actionPlanResources = Builder <ActionPlanResource> .CreateListOfSize(2).Build().ToArray();

            var bannerText = "bannerText";

            A.CallTo(() => courseDataService.GetCurrentCourses(CandidateId)).Returns(currentCourses);
            A.CallTo(() => selfAssessmentService.GetSelfAssessmentsForCandidate(CandidateId)).Returns(selfAssessments);
            A.CallTo(() => actionPlanService.GetIncompleteActionPlanResources(CandidateId))
            .Returns((actionPlanResources, apiIsAccessible));
            A.CallTo(() => centresDataService.GetBannerText(CentreId)).Returns(bannerText);
            A.CallTo(() => config[ConfigurationExtensions.UseSignposting]).Returns("true");
            var allItems = currentCourses.Cast <CurrentLearningItem>().ToList();

            allItems.AddRange(selfAssessments);
            allItems.AddRange(actionPlanResources);
            SearchSortFilterAndPaginateTestHelper
            .GivenACallToSearchSortFilterPaginateServiceReturnsResult <CurrentLearningItem>(
                searchSortFilterPaginateService
                );

            // When
            var result = await controller.Current();

            // Then
            var expectedModel = new CurrentPageViewModel(
                new SearchSortFilterPaginationResult <CurrentLearningItem>(
                    new PaginationResult <CurrentLearningItem>(allItems, 1, 1, 10, 6, true),
                    null,
                    "LastAccessed",
                    "Descending",
                    null
                    ),
                apiIsAccessible,
                bannerText
                );

            result.Should().BeViewResult()
            .Model.Should().BeEquivalentTo(expectedModel);
        }
Esempio n. 8
0
        private void ExecuteCreateCommand()
        {
            var typeVM = CurrentPageViewModel.GetType().ToString();

            if (typeVM.Equals("DemoApp.ViewModel.AllGroupsViewModel"))
            {
                CreateNewGroup();
            }
            else
            {
                CreateNewChild();
            }
        }
Esempio n. 9
0
 private void ChangeViewModel(IPageViewModel viewModel)
 {
     /*
      * if (!PageViewModels.Contains(viewModel))
      * {
      *  PageViewModels.Add(viewModel);
      * }
      */
     if (CurrentPageViewModel.SaveContent())
     {
         CurrentPageViewModel = PageViewModels.FirstOrDefault(vm => vm == viewModel);
     }
 }
Esempio n. 10
0
        private void SetUpPages()
        {
            _pageViewModels.Add(new HomeViewModel());
            IPageViewModel login = new LoginViewModel(this, _dao);

            _pageViewModels.Add(login);
            _removeAfterLogin.Add(login);
            IPageViewModel register = new RegisterViewModel(_dao);

            _pageViewModels.Add(register);
            _removeAfterLogin.Add(register);
            CurrentPageViewModel = PageViewModels[0];
            CurrentPageViewModel.OnEntry();
        }
Esempio n. 11
0
        public ApplicationViewModel()
        {
            LoginModel loginM = new LoginModel(cp);
            RoomModel  roomM  = new RoomModel(cp);

            _pageViewModels.Add(new StartViewModel(loginM));
            _pageViewModels.Add(new LoginViewModel(loginM));
            _pageViewModels.Add(new UserViewModel(loginM, roomM));

            foreach (var vm in _pageViewModels)
            {
                vm.ViewChanged += ChangeViewModel;
            }

            CurrentPageViewModel = _pageViewModels[0];
            CurrentPageViewModel.SwitchedToThis();
        }
Esempio n. 12
0
        public async Task <IActionResult> Current(
            string?searchString  = null,
            string?sortBy        = null,
            string sortDirection = GenericSortingHelper.Descending,
            int page             = 1
            )
        {
            sortBy ??= CourseSortByOptions.LastAccessed.PropertyName;
            var delegateId      = User.GetCandidateIdKnownNotNull();
            var currentCourses  = courseDataService.GetCurrentCourses(delegateId);
            var bannerText      = GetBannerText();
            var selfAssessments =
                selfAssessmentService.GetSelfAssessmentsForCandidate(delegateId);

            var(learningResources, apiIsAccessible) =
                await GetIncompleteActionPlanResourcesIfSignpostingEnabled(delegateId);

            var allItems = currentCourses.Cast <CurrentLearningItem>().ToList();

            allItems.AddRange(selfAssessments);
            allItems.AddRange(learningResources);

            var searchSortPaginationOptions = new SearchSortFilterAndPaginateOptions(
                new SearchOptions(searchString),
                new SortOptions(sortBy, sortDirection),
                null,
                new PaginationOptions(page)
                );

            var result = searchSortFilterPaginateService.SearchFilterSortAndPaginate(
                allItems,
                searchSortPaginationOptions
                );

            var model = new CurrentPageViewModel(
                result,
                apiIsAccessible,
                bannerText
                );

            return(View("Current/Current", model));
        }
Esempio n. 13
0
        public async Task Current_action_should_return_view_result()
        {
            // Given
            var currentCourses = new[]
            {
                CurrentCourseHelper.CreateDefaultCurrentCourse(),
           CurrentCourseHelper.CreateDefaultCurrentCourse(),
            };
            var selfAssessments = new[]
            {
                SelfAssessmentHelper.CreateDefaultSelfAssessment(),
                SelfAssessmentHelper.CreateDefaultSelfAssessment(),
            };
            var actionPlanResources = Builder <ActionPlanResource> .CreateListOfSize(2).Build().ToArray();

            var bannerText = "bannerText";

            A.CallTo(() => courseDataService.GetCurrentCourses(CandidateId)).Returns(currentCourses);
            A.CallTo(() => selfAssessmentService.GetSelfAssessmentsForCandidate(CandidateId)).Returns(selfAssessments);
            A.CallTo(() => actionPlanService.GetIncompleteActionPlanResources(CandidateId))
            .Returns(actionPlanResources);
            A.CallTo(() => centresDataService.GetBannerText(CentreId)).Returns(bannerText);
            A.CallTo(() => config[ConfigHelper.UseSignposting]).Returns("true");

            // When
            var result = await controller.Current();

            // Then
            var expectedModel = new CurrentPageViewModel(
                currentCourses,
                null,
                "LastAccessed",
                "Descending",
                selfAssessments,
                actionPlanResources,
                bannerText,
                1
                );

            result.Should().BeViewResult()
            .Model.Should().BeEquivalentTo(expectedModel);
        }
Esempio n. 14
0
        public void Current_courses_should_correctly_return_the_second_page_of_courses()
        {
            var courses = new[]
            {
                CurrentCourseHelper.CreateDefaultCurrentCourse(courseName: "a course 1"),
                CurrentCourseHelper.CreateDefaultCurrentCourse(courseName: "b course 2"),
                CurrentCourseHelper.CreateDefaultCurrentCourse(courseName: "c course 3"),
                CurrentCourseHelper.CreateDefaultCurrentCourse(courseName: "d course 4"),
                CurrentCourseHelper.CreateDefaultCurrentCourse(courseName: "e course 5"),
                CurrentCourseHelper.CreateDefaultCurrentCourse(courseName: "f course 6"),
                CurrentCourseHelper.CreateDefaultCurrentCourse(courseName: "g course 7"),
                CurrentCourseHelper.CreateDefaultCurrentCourse(courseName: "h course 8"),
                CurrentCourseHelper.CreateDefaultCurrentCourse(courseName: "i course 9"),
                CurrentCourseHelper.CreateDefaultCurrentCourse(courseName: "j course 10"),
                CurrentCourseHelper.CreateDefaultCurrentCourse(courseName: "k course 11"),
            };

            selfAssessments = new SelfAssessment[]
            {
                SelfAssessmentHelper.CreateDefaultSelfAssessment(),
                    SelfAssessmentHelper.CreateDefaultSelfAssessment(),
            };
            actionPlanResources = Builder <ActionPlanResource> .CreateListOfSize(2).Build().ToArray();

            model = new CurrentPageViewModel(
                courses,
                null,
                "Name",
                "Ascending",
                selfAssessments,
                actionPlanResources,
                null,
                2
                );

            model.CurrentActivities.Count().Should().Be(5);
            model.CurrentActivities.First().Name.Should().Be("k course 11");
        }
Esempio n. 15
0
        public void Current_courses_should_default_to_returning_the_first_ten_courses()
        {
            var courses = new[]
            {
                CurrentCourseHelper.CreateDefaultCurrentCourse(courseName: "a course 1"),
                CurrentCourseHelper.CreateDefaultCurrentCourse(courseName: "b course 2"),
                CurrentCourseHelper.CreateDefaultCurrentCourse(courseName: "c course 3"),
                CurrentCourseHelper.CreateDefaultCurrentCourse(courseName: "d course 4"),
                CurrentCourseHelper.CreateDefaultCurrentCourse(courseName: "e course 5"),
                CurrentCourseHelper.CreateDefaultCurrentCourse(courseName: "f course 6"),
                CurrentCourseHelper.CreateDefaultCurrentCourse(courseName: "g course 7"),
                CurrentCourseHelper.CreateDefaultCurrentCourse(courseName: "h course 8"),
                CurrentCourseHelper.CreateDefaultCurrentCourse(courseName: "i course 9"),
                CurrentCourseHelper.CreateDefaultCurrentCourse(courseName: "j course 10"),
                CurrentCourseHelper.CreateDefaultCurrentCourse(courseName: "k course 11"),
            };

            selfAssessments = new SelfAssessment[]
            {
                SelfAssessmentHelper.CreateDefaultSelfAssessment(),
                    SelfAssessmentHelper.CreateDefaultSelfAssessment(),
            };

            model = new CurrentPageViewModel(
                courses,
                null,
                "Name",
                "Ascending",
                selfAssessments,
                actionPlanResources,
                null,
                1
                );

            model.CurrentActivities.Count().Should().Be(10);
            model.CurrentActivities.FirstOrDefault(course => course.Name == "k course 11").Should().BeNull();
        }
Esempio n. 16
0
 public void New()
 {
     CurrentPageViewModel = _pageViewModels.Find(x => x.DisplayName == "MainView");
     CurrentPageViewModel.New();
 }
Esempio n. 17
0
 private void animateCurrentPageViewModel()
 {
     CurrentPageViewModel.animateOut();
 }
Esempio n. 18
0
        public void SetUp()
        {
            currentCourses = new[]
            {
                new CurrentCourse
                {
                    Id                   = 71,
                    Name                 = "B: Course",
                    HasDiagnostic        = true,
                    HasLearning          = true,
                    IsAssessed           = true,
                    StartedDate          = new DateTime(2010, 1, 31),
                    LastAccessed         = new DateTime(2010, 2, 22),
                    CompleteByDate       = new DateTime(2010, 3, 22),
                    DiagnosticScore      = 123,
                    Passes               = 4,
                    Sections             = 6,
                    SupervisorAdminId    = 0,
                    GroupCustomisationId = 0,
                },
                new CurrentCourse
                {
                    Id                   = 72,
                    Name                 = "C: Course",
                    HasDiagnostic        = true,
                    HasLearning          = true,
                    IsAssessed           = false,
                    StartedDate          = new DateTime(2010, 2, 1),
                    LastAccessed         = new DateTime(2011, 2, 22),
                    CompleteByDate       = new DateTime(2011, 3, 22),
                    DiagnosticScore      = 0,
                    Passes               = 14,
                    Sections             = 16,
                    SupervisorAdminId    = 12,
                    GroupCustomisationId = 34,
                },
                new CurrentCourse
                {
                    Id                   = 73,
                    Name                 = "A: Course",
                    HasDiagnostic        = false,
                    HasLearning          = true,
                    IsAssessed           = true,
                    StartedDate          = new DateTime(2001, 1, 22),
                    LastAccessed         = new DateTime(2011, 2, 23),
                    CompleteByDate       = null,
                    DiagnosticScore      = 0,
                    Passes               = 0,
                    Sections             = 6,
                    SupervisorAdminId    = 0,
                    GroupCustomisationId = 0,
                },
            };
            selfAssessments = new[]
            {
                new SelfAssessment
                {
                    Id          = 1,
                    Name        = "Self Assessment 1",
                    Description = "Self Assessment 1 Description"
                },
                new SelfAssessment
                {
                    Id          = 1,
                    Name        = "Self Assessment 2",
                    Description = "Self Assessment 2 Description"
                },
            };
            actionPlanResources = Builder <ActionPlanResource> .CreateListOfSize(2).Build().ToArray();

            model = new CurrentPageViewModel(
                currentCourses,
                null,
                "Name",
                "Ascending",
                selfAssessments,
                actionPlanResources,
                null,
                1
                );
        }