protected override async Task OnStart() { if (!this.IsPostBack) { string studentID = Request.QueryString["StudentId"]; StudentPublicData = await PublicUserData.GetById(studentID); Image1.ImageUrl = StudentPublicData.ProfilePic != null?StudentPublicData.ProfilePic.Url.ToString() : "Images/default_prof_pic.png"; await PrivateTutorData.Students.FetchAllIfNeededAsync(); } FixButtonVisibility(); if (Common.ParseContains(PrivateTutorData.Students, StudentPublicData)) { pnlAssignedQuestions.Visible = true; pnlAnalyticsHolder.Visible = true; grdAssignedQuestions.DataSource = await SuggestedQuestion.GetAssignedQuestionsBetweenStudentTutor(StudentPublicData, PublicUserData); grdAssignedQuestions.DataBind(); } else { pnlAssignedQuestions.Visible = false; pnlAnalyticsHolder.Visible = false; } }
protected async Task AssignQuestionToStudent(string questionObjectId, string studentObjectId) { var query = new ParseQuery <PublicUserData>(); PublicUserData pud = await query.GetAsync(studentObjectId); //Student student = await pud.Student.FetchIfNeededAsync(); //PrivateStudentData psd = await student.PrivateStudentData.FetchIfNeededAsync(); Question question = Question.CreateWithoutData <Question>(questionObjectId); SuggestedQuestion suggestedQuestion = new SuggestedQuestion(); suggestedQuestion.Answered = false; suggestedQuestion.Question = question; suggestedQuestion.Response = null; suggestedQuestion.StudentBaseUserId = pud.BaseUserId; suggestedQuestion.Tutor = PublicUserData; await suggestedQuestion.SaveAsync(); //psd.AssignedQuestions.Add(suggestedQuestion); //await psd.SaveAsync(); IDictionary <string, object> parameters = new Dictionary <string, object> { { "baseUserId", pud.BaseUserId }, { "suggestedQuestionId", suggestedQuestion.ObjectId } }; await ParseCloud.CallFunctionAsync <string>("assignQuestion", parameters); }
protected async Task AssignQuestionToStudent(string questionObjectId, string studentObjectId) { var query = new ParseQuery<PublicUserData>(); PublicUserData pud = await query.GetAsync(studentObjectId); //Student student = await pud.Student.FetchIfNeededAsync(); //PrivateStudentData psd = await student.PrivateStudentData.FetchIfNeededAsync(); Question question = Question.CreateWithoutData<Question>(questionObjectId); SuggestedQuestion suggestedQuestion = new SuggestedQuestion(); suggestedQuestion.Answered = false; suggestedQuestion.Question = question; suggestedQuestion.Response = null; suggestedQuestion.StudentBaseUserId = pud.BaseUserId; suggestedQuestion.Tutor = PublicUserData; await suggestedQuestion.SaveAsync(); //psd.AssignedQuestions.Add(suggestedQuestion); //await psd.SaveAsync(); IDictionary<string, object> parameters = new Dictionary<string, object> { { "baseUserId", pud.BaseUserId }, { "suggestedQuestionId", suggestedQuestion.ObjectId} }; await ParseCloud.CallFunctionAsync<string>("assignQuestion", parameters); }