private async Task HandleLogin() { var token = await RequestToken(); if (token != null) { // save token and continue SaveContext(Email, token, true, null); var currentContext = GetContext(); var synchronizer = new Domain.Services.Sync.Synchronizer(); await synchronizer.SyncAllAndWait(); var membersRealm = new Domain.Services.Realms.Members(); var profile = GetCurrentUser().Profile; var member = membersRealm.Get(x => x.Profile == profile); currentContext.SchoolName = member.School.Name; SaveContext(currentContext); Application.Current.Properties["Context"] = JsonConvert.SerializeObject(currentContext); App.LaunchMasterDetailPage?.Invoke(this, EventArgs.Empty); } else { DisplayAlert("Login failed", "Either wrong credentials or no such user."); } }
private async void Save() { if (!IsValidInput()) { DisplayAlert("Invalid input", "Cannot be empty."); return; } var membersRealm = new Domain.Services.Realms.Members(); await EvaluationsRealm.WriteAsync(realm => { var eval = IsEditingExistingEvaluation ? realm.Get(EvaluationLocalId) : realm.CreateObject(); eval.Name = Name; if (!IsEditingExistingEvaluation) { eval.Member = membersRealm.Get(MemberLocalId); } eval.Synced = false; }); var synchronizer = new Domain.Services.Sync.Synchronizer(); synchronizer.SyncPostsAndContinue(); await LeavePage(); }
public Domain.Models.Member GetCurrentMember() { var currentUser = GetCurrentUser(); var membersRealm = new Domain.Services.Realms.Members(); var profile = currentUser.Profile; var member = membersRealm.Get(x => x.Profile == profile); return(member); }
public bool UserIsTeacher() { var currentUser = GetCurrentUser(); var membersRealm = new Domain.Services.Realms.Members(); var profile = currentUser.Profile; var member = membersRealm.Get(x => x.Profile == profile); return(member.IsTeacher); }
public override void RefreshData() { var profileModel = GetCurrentUser().Profile; var membersRealm = new Domain.Services.Realms.Members(); var memberModel = membersRealm.Get(x => x.Profile == profileModel); var evals = EvaluationsRealm.GetAll(x => x.Member == memberModel).ToList(); var evalsContainer = new List <ViewModels.Controls.PrettyListViewItems.Evaluation>(); foreach (var evalModel in evals) { evalsContainer.Add(new ViewModels.Controls.PrettyListViewItems.Evaluation(evalModel)); } EvaluationsList.Clear(); EvaluationsList.AddRange(evalsContainer); }
private async Task <Domain.Models.Member> SaveMember(Domain.Models.Member memberModel, Domain.Models.School school, Domain.Models.Profile profile) { var membersRealm = new Domain.Services.Realms.Members(); var profilesRealm = new Domain.Services.Realms.Profiles(); var schoolsRealm = new Domain.Services.Realms.Schools(); var profileLocalId = profile.LocalId; var schoolLocalId = school.LocalId; var memberLocalId = 0; await membersRealm.WriteAsync(realm => { realm.Manage(memberModel); memberLocalId = memberModel.LocalId; memberModel.Profile = profilesRealm.Get(profileLocalId); memberModel.School = schoolsRealm.Get(schoolLocalId); memberModel.Synced = true; }); var member = membersRealm.Get(memberLocalId); return(member); }
private async void AddEvaluation() { var membersRealm = new Domain.Services.Realms.Members(); var member = membersRealm.Get(x => x.Profile == ProfileModel); await Navigator.PushNewEvaluationEditorPageAsync(Navigation, member.LocalId); }