public ActionResult List(DateTime?date, int?classId, int?personId) { Trace.Assert(Context.PersonId.HasValue); DateTime start, end; MonthCalendar(ref date, out start, out end); var schoolYearId = GetCurrentSchoolYearId(); int?studentId, teacherId; PrepareUsersIdsForCalendar(SchoolLocator, personId, out teacherId, out studentId); //var isAdmin = BaseSecurity.IsDistrictAdmin(Context); //var announcements = isAdmin // ? SchoolLocator.AnnouncementService.GetAdminAnnouncements(null, null, start, end, 0, int.MaxValue, true, studentId) // : SchoolLocator.AnnouncementService.GetAnnouncements(start, end, false, classId, true); var announcementList = SchoolLocator.AnnouncementFetchService.GetAnnouncementComplexList(start, end, false, classId, studentId, teacherId, false); if (personId.HasValue) { var classes = SchoolLocator.ClassService.GetClasses(schoolYearId, studentId, teacherId); announcementList.LessonPlans = announcementList.LessonPlans.Where(l => classes.Any(c => c.Id == l.ClassRef)).ToList(); announcementList.ClassAnnouncements = announcementList.ClassAnnouncements.Where(a => classes.Any(c => c.Id == a.ClassRef)).ToList(); announcementList.SupplementalAnnouncements = announcementList.SupplementalAnnouncements.Where(a => classes.Any(c => c.Id == a.ClassRef)).ToList(); } if (DemoUserService.IsDemoUser(Context)) { //announcements = announcements.Where(x => x.State == AnnouncementState.Created).ToList(); } var days = SchoolLocator.CalendarDateService.GetLastDays(schoolYearId, true, start, end); return(Json(PrepareMonthCalendar(start, end, date.Value, (dateTime, isCurrentMonth) => AnnouncementMonthCalendarViewData.Create(dateTime, isCurrentMonth, announcementList, days, Context.Claims)))); }
private UserContext DemoUserLogin(User user, UnitOfWork uow, int?schoolYearId = null) { if (user == null) { return(null); } if (!user.District.IsDemoDistrict) { throw new ChalkableException("This login is allowed to demo district only"); } Guid?developerId = null; var developer = new DeveloperDataAccess(uow).GetDeveloper(user.District.Id); if (developer != null) { developerId = developer.Id; } var schoolUser = user.SchoolUsers.First(); var schoolYear = DemoSchoolYearService.GetDemoSchoolYear(); int roleId; var personId = DemoPersonService.GetPersonDataForLogin(schoolUser.User, out roleId); var res = new UserContext(user, CoreRoles.GetById(roleId), user.District, schoolUser.School, developerId, personId, null, schoolYear) { Claims = ClaimInfo.Create(DemoUserService.GetDemoClaims()) }; return(res); }
static void Main(string[] args) { Console.WriteLine("Great Social Community System - Please Login..."); Console.Write("Name: "); string loginname = Console.ReadLine(); Console.Write("PW: "); string password = Console.ReadLine(); IUserService srv = new DemoUserService(); User loginUser = new User(); loginUser.Login = loginname; loginUser.Password = password; if (srv.Login(loginUser)) { Console.WriteLine("Hello: " + loginname); Console.WriteLine("Your demo friend collection in the system: "); List <User> friends = srv.GetFriendsFromUser(loginUser).ToList(); foreach (User friend in friends) { Console.WriteLine(" + " + friend.Login + " - Id: " + friend.Id); } } else { Console.WriteLine("Login failed"); } Console.ReadLine(); }
public static FeedComplexViewData GetAnnouncementForFeedList(IServiceLocatorSchool schoolL, int?start, int?count , bool?complete, int?classId, FeedSettingsInfo settings, IList <AnnouncementInputModel> createdAnnouncements) { start = start ?? 0; count = count ?? (DemoUserService.IsDemoUser(schoolL.Context) ? int.MaxValue : 10); var list = schoolL.AnnouncementFetchService.GetAnnouncementsForFeed(complete, classId, settings, start.Value, count.Value); List <AnnouncementComplex> createdAnns = new List <AnnouncementComplex>(); if (createdAnnouncements != null) { var lpIds = createdAnnouncements.Where(x => x.AnnouncementType == (int)AnnouncementTypeEnum.LessonPlan) .Select(x => x.AnnouncementId).ToList(); var clAnnIds = createdAnnouncements.Where(x => x.AnnouncementType == (int)AnnouncementTypeEnum.Class) .Select(x => x.AnnouncementId).ToList(); var suppAnnIds = createdAnnouncements.Where(x => x.AnnouncementType == (int)AnnouncementTypeEnum.Supplemental) .Select(x => x.AnnouncementId).ToList(); if (clAnnIds.Count > 0) { createdAnns.AddRange(schoolL.ClassAnnouncementService.GetAnnouncementsByIds(clAnnIds)); } if (lpIds.Count > 0) { createdAnns.AddRange(schoolL.LessonPlanService.GetAnnouncementsByIds(lpIds)); } if (suppAnnIds.Count > 0) { createdAnns.AddRange(schoolL.SupplementalAnnouncementService.GetAnnouncementsByIds(suppAnnIds)); } } return(PrepareFeedComplexViewData(schoolL, list, settings, createdAnns)); }
protected UserContext LogOn(bool remember, IUserService userService, Func <IUserService, UserContext> logOnAction) { var context = logOnAction(userService); if (context != null) { ChalkableAuthentication.SignIn(context, false); if (context.DeveloperId.HasValue && !DemoUserService.IsDemoUser(context)) { DeveloperAuthentication.SignIn(context, remember); } } return(context); }
public User GetByLogin(string login) { if (DemoUserService.IsDemoUser(login)) { return(DemoUserService.GetDemoUser(login)); } using (var uow = Read()) { var da = new UserDataAccess(uow); var res = da.GetUser(login, null, null); return(res); } }
public static IServiceLocatorSchool CreateSchoolLocator(UserContext context) { IServiceLocatorSchool locator; if (context != null && DemoUserService.IsDemoUser(context)) { locator = CreateDemoSchoolLocator(context); } else { var masterLocator = new ServiceLocatorMaster(context); locator = new ServiceLocatorSchool(masterLocator); } return(locator); }
public static int GetPersonDataForLogin(User user, out int roleId) { var prefix = user.DistrictRef.ToString(); var localIds = new Dictionary <string, KeyValuePair <int, int> > { { DemoUserService.BuildDemoUserName(CoreRoles.TEACHER_ROLE.LoweredName, prefix), new KeyValuePair <int, int>(DemoSchoolConstants.TeacherId, CoreRoles.TEACHER_ROLE.Id) }, { DemoUserService.BuildDemoUserName(CoreRoles.STUDENT_ROLE.LoweredName, prefix), new KeyValuePair <int, int>(DemoSchoolConstants.Student1, CoreRoles.STUDENT_ROLE.Id) } }; var res = localIds[user.Login]; roleId = res.Value; return(res.Key); }
public static IList <AnnouncementViewData> PrepareAnnouncementsComplexViewData(IServiceLocatorSchool schoolL, IList <AnnouncementComplex> announcements) { if (DemoUserService.IsDemoUser(schoolL.Context)) { announcements = announcements.Where(x => x.State == AnnouncementState.Created).Take(10).ToList(); } var annsIdsWithApp = announcements.Where(x => x.ApplicationCount == 1).Select(x => x.Id).ToList(); var annApps = schoolL.ApplicationSchoolService.GetAnnouncementApplicationsByAnnIds(annsIdsWithApp, true); var apps = schoolL.ServiceLocatorMaster.ApplicationService.GetApplicationsByIds(annApps.Select(x => x.ApplicationRef).ToList()); annApps = annApps.Where(x => apps.Any(a => a.Id == x.ApplicationRef)).ToList(); var stAnns = announcements.Where(x => x.CurrentStudentScore != null).Select(x => { StudentAnnouncement res = x.CurrentStudentScore; return(res); }).ToList(); return(AnnouncementViewData.Create(announcements, annApps, apps, schoolL.Context.Claims, stAnns)); }
private User GetDemoUser(string roleName, string prefix) { return(DemoUserService.GetDemoUser(roleName, prefix)); }