Proyectos de Subversion Moodle

Rev

Rev 1 | Mostrar el archivo completo | | | Autoría | Ultima modificación | Ver Log |

Rev 1 Rev 1441
Línea 16... Línea 16...
16
 
16
 
Línea 17... Línea 17...
17
namespace gradereport_user\report;
17
namespace gradereport_user\report;
18
 
18
 
-
 
19
use cache;
19
use cache;
20
use context_course;
20
use context_course;
21
use core_grades\penalty_manager;
21
use course_modinfo;
22
use course_modinfo;
22
use grade_grade;
23
use grade_grade;
23
use grade_helper;
24
use grade_helper;
Línea 222... Línea 223...
222
     * @param null|object $gpr grade plugin return tracking object
223
     * @param null|object $gpr grade plugin return tracking object
223
     * @param object $context
224
     * @param object $context
224
     * @param int $userid The id of the user
225
     * @param int $userid The id of the user
225
     * @param bool $viewasuser Set this to true when the current user is a mentor/parent of the targetted user.
226
     * @param bool $viewasuser Set this to true when the current user is a mentor/parent of the targetted user.
226
     */
227
     */
227
    public function __construct(int $courseid, ?object $gpr, object $context, int $userid, bool $viewasuser = null) {
228
    public function __construct(int $courseid, ?object $gpr, object $context, int $userid, ?bool $viewasuser = null) {
228
        global $DB, $CFG;
229
        global $DB, $CFG;
229
        parent::__construct($courseid, $gpr, $context);
230
        parent::__construct($courseid, $gpr, $context);
Línea 230... Línea 231...
230
 
231
 
231
        $this->showrank = grade_get_setting($this->courseid, 'report_user_showrank', $CFG->grade_report_user_showrank);
232
        $this->showrank = grade_get_setting($this->courseid, 'report_user_showrank', $CFG->grade_report_user_showrank);
Línea 522... Línea 523...
522
            }
523
            }
Línea 523... Línea 524...
523
 
524
 
Línea 524... Línea 525...
524
            $gradegrade->load_grade_item();
525
            $gradegrade->load_grade_item();
525
 
526
 
526
            // Hidden Items.
527
            // Hidden Items.
527
            if ($gradegrade->grade_item->is_hidden()) {
528
            if ($gradegrade->grade_item->is_hidden() && $this->canviewhidden) {
Línea 528... Línea 529...
528
                $hidden = ' dimmed_text';
529
                $hidden = ' dimmed_text';
529
            }
530
            }
Línea 586... Línea 587...
586
                    $class .= ($type == 'categoryitem' || $type == 'courseitem') ? " d$depth baggt b2b" : " item b1b";
587
                    $class .= ($type == 'categoryitem' || $type == 'courseitem') ? " d$depth baggt b2b" : " item b1b";
587
                } else {
588
                } else {
588
                    $class .= ($type == 'categoryitem' || $type == 'courseitem') ? " d$depth baggb" : " item b1b";
589
                    $class .= ($type == 'categoryitem' || $type == 'courseitem') ? " d$depth baggb" : " item b1b";
589
                }
590
                }
Línea 590... Línea 591...
590
 
591
 
591
                $itemicon = \html_writer::div(grade_helper::get_element_icon($element), 'mr-1');
592
                $itemicon = \html_writer::div(grade_helper::get_element_icon($element), 'me-1');
592
                $elementtype = grade_helper::get_element_type_string($element);
593
                $elementtype = grade_helper::get_element_type_string($element);
593
                $itemtype = \html_writer::span($elementtype, 'd-block text-uppercase small dimmed_text',
594
                $itemtype = \html_writer::span($elementtype, 'd-block text-uppercase small ' . $hidden,
Línea 594... Línea 595...
594
                    ['title' => $elementtype]);
595
                    ['title' => $elementtype]);
595
 
596
 
596
                if ($type == 'categoryitem' || $type == 'courseitem') {
597
                if ($type == 'categoryitem' || $type == 'courseitem') {
Línea 692... Línea 693...
692
                                get_string('strftimedatetimeshort')
693
                                get_string('strftimedatetimeshort')
693
                            ) . $gradestatus
694
                            ) . $gradestatus
694
                        );
695
                        );
695
                        $gradeitemdata['gradehiddenbydate'] = true;
696
                        $gradeitemdata['gradehiddenbydate'] = true;
696
                    } else if ($gradegrade->is_hidden()) {
697
                    } else if ($gradegrade->is_hidden()) {
697
                        $data['grade']['class'] = $class.' dimmed_text';
698
                        $data['grade']['class'] = $class;
698
                        $data['grade']['content'] = '-';
699
                        $data['grade']['content'] = '-';
Línea 699... Línea 700...
699
 
700
 
-
 
701
                        if ($this->canviewhidden) {
700
                        if ($this->canviewhidden) {
702
                            $data['grade']['class'] .= ' dimmed_text';
701
                            $gradeitemdata['graderaw'] = $gradeval;
703
                            $gradeitemdata['graderaw'] = $gradeval;
702
                            $data['grade']['content'] = grade_format_gradevalue($gradeval,
704
                            $data['grade']['content'] = grade_format_gradevalue($gradeval,
703
                                $gradegrade->grade_item,
705
                                $gradegrade->grade_item,
704
                                true) . $gradestatus;
706
                                true) . penalty_manager::show_penalty_indicator($gradegrade) . $gradestatus;
705
                        }
707
                        }
706
                    } else {
708
                    } else {
707
                        $gradestatusclass = '';
709
                        $gradestatusclass = '';
708
                        $gradepassicon = '';
710
                        $gradepassicon = '';
Línea 726... Línea 728...
726
                            }
728
                            }
727
                        }
729
                        }
Línea 728... Línea 730...
728
 
730
 
729
                        $data['grade']['class'] = "{$class} {$gradestatusclass}";
731
                        $data['grade']['class'] = "{$class} {$gradestatusclass}";
730
                        $data['grade']['content'] = $gradepassicon . grade_format_gradevalue($gradeval,
732
                        $data['grade']['content'] = $gradepassicon . grade_format_gradevalue($gradeval,
731
                                $gradegrade->grade_item, true) . $gradestatus;
733
                            $gradegrade->grade_item, true) . penalty_manager::show_penalty_indicator($gradegrade) . $gradestatus;
732
                        $gradeitemdata['graderaw'] = $gradeval;
734
                        $gradeitemdata['graderaw'] = $gradeval;
733
                    }
735
                    }
734
                    $data['grade']['headers'] = "$headercat $headerrow grade$userid";
736
                    $data['grade']['headers'] = "$headercat $headerrow grade$userid";
735
                    $gradeitemdata['gradeformatted'] = $data['grade']['content'];
737
                    $gradeitemdata['gradeformatted'] = $data['grade']['content'];
736
                    // If the current grade item need to show a grade action menu, generate the appropriate output.
738
                    // If the current grade item need to show a grade action menu, generate the appropriate output.
737
                    if ($gradeactionmenu = $this->gtree->get_grade_action_menu($gradegrade)) {
739
                    if ($gradeactionmenu = $this->gtree->get_grade_action_menu($gradegrade)) {
738
                        $gradecontainer = html_writer::div($data['grade']['content']);
740
                        $gradecontainer = html_writer::div($data['grade']['content']);
739
                        $grademenucontainer = html_writer::div($gradeactionmenu, 'pl-1 d-flex align-items-center');
741
                        $grademenucontainer = html_writer::div($gradeactionmenu, 'ps-1 d-flex align-items-center');
740
                        $data['grade']['content'] = html_writer::div($gradecontainer . $grademenucontainer,
742
                        $data['grade']['content'] = html_writer::div($gradecontainer . $grademenucontainer,
741
                            'd-flex align-items-center');
743
                            'd-flex align-items-center');
742
                    }
744
                    }
Línea 760... Línea 762...
760
                if ($this->showpercentage) {
762
                if ($this->showpercentage) {
761
                    if ($gradegrade->grade_item->needsupdate) {
763
                    if ($gradegrade->grade_item->needsupdate) {
762
                        $data['percentage']['class'] = $class.' gradingerror';
764
                        $data['percentage']['class'] = $class.' gradingerror';
763
                        $data['percentage']['content'] = get_string('error');
765
                        $data['percentage']['content'] = get_string('error');
764
                    } else if ($gradegrade->is_hidden()) {
766
                    } else if ($gradegrade->is_hidden()) {
765
                        $data['percentage']['class'] = $class.' dimmed_text';
767
                        $data['percentage']['class'] = $class;
766
                        $data['percentage']['content'] = '-';
768
                        $data['percentage']['content'] = '-';
767
                        if ($this->canviewhidden) {
769
                        if ($this->canviewhidden) {
-
 
770
                            $data['percentage']['class'] .= ' dimmed_text';
768
                            $data['percentage']['content'] = grade_format_gradevalue(
771
                            $data['percentage']['content'] = grade_format_gradevalue(
769
                                $gradeval,
772
                                $gradeval,
770
                                $gradegrade->grade_item,
773
                                $gradegrade->grade_item,
771
                                true,
774
                                true,
772
                                GRADE_DISPLAY_TYPE_PERCENTAGE
775
                                GRADE_DISPLAY_TYPE_PERCENTAGE
Línea 789... Línea 792...
789
                if ($this->showlettergrade) {
792
                if ($this->showlettergrade) {
790
                    if ($gradegrade->grade_item->needsupdate) {
793
                    if ($gradegrade->grade_item->needsupdate) {
791
                        $data['lettergrade']['class'] = $class.' gradingerror';
794
                        $data['lettergrade']['class'] = $class.' gradingerror';
792
                        $data['lettergrade']['content'] = get_string('error');
795
                        $data['lettergrade']['content'] = get_string('error');
793
                    } else if ($gradegrade->is_hidden()) {
796
                    } else if ($gradegrade->is_hidden()) {
794
                        $data['lettergrade']['class'] = $class.' dimmed_text';
797
                        $data['lettergrade']['class'] = $class;
795
                        if (!$this->canviewhidden) {
798
                        if (!$this->canviewhidden) {
-
 
799
                            $data['lettergrade']['class'] .= ' dimmed_text';
796
                            $data['lettergrade']['content'] = '-';
800
                            $data['lettergrade']['content'] = '-';
797
                        } else {
801
                        } else {
798
                            $data['lettergrade']['content'] = grade_format_gradevalue(
802
                            $data['lettergrade']['content'] = grade_format_gradevalue(
799
                                $gradeval,
803
                                $gradeval,
800
                                $gradegrade->grade_item,
804
                                $gradegrade->grade_item,
Línea 820... Línea 824...
820
                    $gradeitemdata['rank'] = 0;
824
                    $gradeitemdata['rank'] = 0;
821
                    if ($gradegrade->grade_item->needsupdate) {
825
                    if ($gradegrade->grade_item->needsupdate) {
822
                        $data['rank']['class'] = $class.' gradingerror';
826
                        $data['rank']['class'] = $class.' gradingerror';
823
                        $data['rank']['content'] = get_string('error');
827
                        $data['rank']['content'] = get_string('error');
824
                    } else if ($gradegrade->is_hidden()) {
828
                    } else if ($gradegrade->is_hidden()) {
825
                        $data['rank']['class'] = $class.' dimmed_text';
829
                        $data['rank']['class'] = $class;
826
                        $data['rank']['content'] = '-';
830
                        $data['rank']['content'] = '-';
-
 
831
                        if ($this->canviewhidden) {
-
 
832
                            $data['rank']['class'] .= ' dimmed_text';
-
 
833
                        }
827
                    } else if (is_null($gradeval)) {
834
                    } else if (is_null($gradeval)) {
828
                        // No grade, o rank.
835
                        // No grade, o rank.
829
                        $data['rank']['class'] = $class;
836
                        $data['rank']['class'] = $class;
830
                        $data['rank']['content'] = '-';
837
                        $data['rank']['content'] = '-';