public ActionResult Settings() { Trace.Assert(Context.DistrictId.HasValue); Trace.Assert(Context.PersonId.HasValue); var messagingSettings = MessagingSettingsViewData.Create(MasterLocator.SchoolService.GetDistrictMessaginSettings(Context.DistrictId.Value)); PrepareJsonData(messagingSettings, ViewConstants.MESSAGING_SETTINGS); var allApps = MasterLocator.ApplicationService.GetApplications(live: true) .Where(x => x.HasDistrictAdminSettings) .Select(BaseApplicationViewData.Create) .ToList(); if (ApplicationSecurity.HasAssessmentEnabled(Context) && Context.Claims.HasPermission(ClaimInfo.ASSESSMENT_ADMIN)) { var assessement = MasterLocator.ApplicationService.GetAssessmentApplication(); if (assessement != null && assessement.HasDistrictAdminSettings && !allApps.Exists(x => x.Id == assessement.Id)) { allApps.Add(BaseApplicationViewData.Create(assessement)); } } else { var assessmentId = SchoolLocator.ServiceLocatorMaster.ApplicationService.GetAssessmentId(); allApps = allApps.Where(x => x.Id != assessmentId).ToList(); } return(Json(DistrictAdminSettingsViewData.Create(messagingSettings, allApps))); }
private District PrepareCommonViewData() { District district = null; if (Context.DistrictId.HasValue && Context.SchoolLocalId.HasValue) { district = MasterLocator.DistrictService.GetByIdOrNull(Context.DistrictId.Value); if (Context.DeveloperId != null) { ViewData[ViewConstants.IS_DEV] = true; } if (district.IsDemoDistrict) { ViewData[ViewConstants.STUDENT_ROLE] = CoreRoles.STUDENT_ROLE.Name; ViewData[ViewConstants.TEACHER_ROLE] = CoreRoles.TEACHER_ROLE.Name; ViewData[ViewConstants.DISTRICT_ADMIN_ROLE] = CoreRoles.DISTRICT_ADMIN_ROLE.Name; ViewData[ViewConstants.DEMO_PICTURE_DISTRICT_REF] = DEMO_PICTURE_DISTRICT_REF; ViewData[ViewConstants.IS_DEMO_DISTRICT] = true; } ViewData[ViewConstants.LAST_SYNC_DATE] = district.LastSync.HasValue ? district.LastSync.Value.ToString("yyyy/MM/dd hh:mm:ss") : ""; ViewData[ViewConstants.DISTRICT_ID] = district.Id.ToString(); var messagingSettings = MessagingSettingsViewData.Create(MasterLocator.SchoolService.GetDistrictMessaginSettings(Context.DistrictId.Value)); PrepareJsonData(messagingSettings, ViewConstants.MESSAGING_SETTINGS); //TODO : maybe added this to startup data ... only needs for school persons var school = SchoolLocator.SchoolService.GetSchool(Context.SchoolLocalId.Value); ViewData[ViewConstants.SCHOOL_NAME] = school.Name; } ViewData[ViewConstants.CURRENT_USER_ROLE_ID] = Context.RoleId; ViewData[ViewConstants.ROLE_NAME] = Context.Role.LoweredName; ViewData[ViewConstants.AZURE_PICTURE_URL] = PictureService.GetPicturesRelativeAddress(); ViewData[ViewConstants.DEMO_AZURE_PICTURE_URL] = PictureService.GeDemoPicturesRelativeAddress(); ViewData[ViewConstants.CURR_SCHOOL_YEAR_ID] = GetCurrentSchoolYearId(); ViewData[ViewConstants.VERSION] = CompilerHelper.Version; ViewData[ViewConstants.CROCODOC_API_URL] = PreferenceService.Get(Preference.CROCODOC_URL).Value; ViewData[ViewConstants.SERVER_TIME] = Context.NowSchoolTime.ToString(DATE_TIME_FORMAT); ViewData[ViewConstants.SCHOOL_YEAR_SERVER_TIME] = Context.NowSchoolYearTime.ToString(DATE_TIME_FORMAT); ViewData[ViewConstants.STUDY_CENTER_ENABLED] = Context.SCEnabled; ViewData[ViewConstants.ASSESSMENT_ENABLED] = Context.AssessmentEnabled; ViewData[ViewConstants.MESSAGING_DISABLED] = Context.MessagingDisabled; ViewData[ViewConstants.ASSESSMENT_APLICATION_ID] = MasterLocator.ApplicationService.GetAssessmentId(); ViewData[ViewConstants.SIS_API_VERSION] = Context.SisApiVersion; ViewData[ViewConstants.USER_LOGIN] = Context.Login; ViewData[ViewConstants.LOGIN_TIME_OUT] = Context.LoginTimeOut; var leParams = SchoolLocator.LeService.GetLEParams(); PrepareJsonData(leParams, ViewConstants.LE_PARAMS); PrepareJsonData(PersonClaimViewData.Create(Context.Claims), ViewConstants.USER_CLAIMS); return(district); }