Exemplo n.º 1
0
        public Grading_Participants(int participantId)
        {
            Title = Variables.true_assign.name;

            var grading_Part_Layout = new StackLayout();

            goToCommentOnAnswerPage = new Command(Go_To_Comments_On_Answer_Page);
            goToEditCommentOnGrade  = new Command(Go_To_Edit_Comment_On_Grade);

            var save_Result = new ToolbarItem
            {
                Text             = "Сохранить",
                Command          = new Command <int>(this.Save_Result),
                CommandParameter = participantId
            };

            this.ToolbarItems.Add(save_Result);

            Variables.submissionInfo = Task.Run(
                () => API.Get_Mod_Assign_Submission_Status(Variables.assignId, participantId)).Result;

            commentLabel = Structure_Label.Description_Label(
                Function.Check_Feedback_Plugins_For_Comments(Variables.submissionInfo.feedback));

            //Если задание оценено то берем информацию о том кто оценил
            if (Variables.submissionInfo.feedback != null)
            {
                var userInf = Task.Run(() => API.Get_Core_user_get_users_by_field(
                                           "id", Variables.submissionInfo.feedback.grade.grader.ToString()));
                foreach (var item in userInf.Result)
                {
                    if (item.id == Variables.submissionInfo.feedback.grade.grader)
                    {
                        Variables.grader_inf = item;
                    }
                }
                ;
            }

            Variables.sumbissionComments = Task.Run(
                () => API.Get_core_comment_get_comments("module", Variables.true_assign.cmid, "assignsubmission_comments",
                                                        Variables.submissionInfo.lastattempt.submission.id, "submission_comments", 0)).Result;

            var participantInformationList = Task.Run(() => API.Get_Core_user_get_users_by_field(
                                                          "id", participantId.ToString())).Result;
            var participantInformation = participantInformationList.Find(x => x.id == participantId);;

            var participantInformationFrame = Structure_Frame.Participants_Information_Frame(
                Variables.submissionInfo.lastattempt.submission.status,
                Variables.submissionInfo.lastattempt.gradingstatus,
                participantInformation.profileimageurl, participantInformation.fullname);

            grading_Part_Layout.Children.Add(participantInformationFrame);

            var tab_control = new Segmented_Control_Grading_Participant();

            grading_Part_Layout.Children.Add(tab_control);

            Padding         = 1;
            BackgroundColor = Color.FromHex("#293991");

            var scroll_View = new ScrollView
            {
                Content = grading_Part_Layout
            };

            this.Content = scroll_View;

            this.BindingContext = this;
        }