⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 grade_export_txt.php

📁 很棒的在线教学系统
💻 PHP
字号:
<?php/////////////////////////////////////////////////////////////////////////////                                                                       //// NOTICE OF COPYRIGHT                                                   ////                                                                       //// Moodle - Modular Object-Oriented Dynamic Learning Environment         ////          http://moodle.com                                            ////                                                                       //// Copyright (C) 1999 onwards  Martin Dougiamas  http://moodle.com       ////                                                                       //// This program is free software; you can redistribute it and/or modify  //// it under the terms of the GNU General Public License as published by  //// the Free Software Foundation; either version 2 of the License, or     //// (at your option) any later version.                                   ////                                                                       //// This program is distributed in the hope that it will be useful,       //// but WITHOUT ANY WARRANTY; without even the implied warranty of        //// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the         //// GNU General Public License for more details:                          ////                                                                       ////          http://www.gnu.org/copyleft/gpl.html                         ////                                                                       /////////////////////////////////////////////////////////////////////////////require_once($CFG->dirroot.'/grade/export/lib.php');class grade_export_txt extends grade_export {    var $plugin = 'txt';    var $separator; // default separator    function grade_export_txt($course, $groupid=0, $itemlist='', $export_feedback=false, $updatedgradesonly = false, $displaytype = GRADE_DISPLAY_TYPE_REAL, $decimalpoints = 2, $separator='comma') {        $this->grade_export($course, $groupid, $itemlist, $export_feedback, $updatedgradesonly, $displaytype, $decimalpoints);        $this->separator = $separator;    }    function process_form($formdata) {        parent::process_form($formdata);        if (isset($formdata->separator)) {            $this->separator = $formdata->separator;        }    }    function get_export_params() {        $params = parent::get_export_params();        $params['separator'] = $this->separator;        return $params;    }    function print_grades() {        global $CFG;        $export_tracking = $this->track_exports();        $strgrades = get_string('grades');        switch ($this->separator) {            case 'comma':                $separator = ",";                break;            case 'tab':            default:                $separator = "\t";        }        /// Print header to force download        @header('Cache-Control: private, must-revalidate, pre-check=0, post-check=0, max-age=0');        @header('Expires: '. gmdate('D, d M Y H:i:s', 0) .' GMT');        @header('Pragma: no-cache');        header("Content-Type: application/download\n");        $downloadfilename = clean_filename("{$this->course->shortname} $strgrades");        header("Content-Disposition: attachment; filename=\"$downloadfilename.txt\"");/// Print names of all the fields        echo get_string("firstname").$separator.             get_string("lastname").$separator.             get_string("idnumber").$separator.             get_string("institution").$separator.             get_string("department").$separator.             get_string("email");        foreach ($this->columns as $grade_item) {            echo $separator.$this->format_column_name($grade_item);            /// add a feedback column            if ($this->export_feedback) {                echo $separator.$this->format_column_name($grade_item, true);            }        }        echo "\n";/// Print all the lines of data.        $geub = new grade_export_update_buffer();        $gui = new graded_users_iterator($this->course, $this->columns, $this->groupid);        $gui->init();        while ($userdata = $gui->next_user()) {            $user = $userdata->user;            echo $user->firstname.$separator.$user->lastname.$separator.$user->idnumber.$separator.$user->institution.$separator.$user->department.$separator.$user->email;            foreach ($userdata->grades as $itemid => $grade) {                if ($export_tracking) {                    $status = $geub->track($grade);                }                echo $separator.$this->format_grade($grade);                if ($this->export_feedback) {                    echo $separator.$this->format_feedback($userdata->feedbacks[$itemid]);                }            }            echo "\n";        }        $gui->close();        $geub->close();        exit;    }}?>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -