mirror of
https://github.com/moodle/moodle.git
synced 2025-02-15 21:36:58 +01:00
192 lines
5.6 KiB
PHP
192 lines
5.6 KiB
PHP
<?php
|
|
// This file is part of Moodle - http://moodle.org/
|
|
//
|
|
// Moodle 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 3 of the License, or
|
|
// (at your option) any later version.
|
|
//
|
|
// Moodle 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.
|
|
//
|
|
// You should have received a copy of the GNU General Public License
|
|
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
|
|
|
|
abstract class feedback_item_base {
|
|
protected $type;
|
|
|
|
/**
|
|
* constructor
|
|
*
|
|
*/
|
|
public function __construct() {
|
|
$this->init();
|
|
}
|
|
|
|
//this function only can used after the call of build_editform()
|
|
public function show_editform() {
|
|
$this->item_form->display();
|
|
}
|
|
|
|
public function is_cancelled() {
|
|
return $this->item_form->is_cancelled();
|
|
}
|
|
|
|
public function get_data() {
|
|
if ($this->item = $this->item_form->get_data()) {
|
|
return true;
|
|
}
|
|
return false;
|
|
}
|
|
|
|
public function value_type() {
|
|
return PARAM_RAW;
|
|
}
|
|
|
|
public function value_is_array() {
|
|
return false;
|
|
}
|
|
|
|
abstract public function init();
|
|
abstract public function build_editform($item, $feedback, $cm);
|
|
abstract public function save_item();
|
|
abstract public function check_value($value, $item);
|
|
abstract public function create_value($data);
|
|
abstract public function compare_value($item, $dbvalue, $dependvalue);
|
|
abstract public function get_presentation($data);
|
|
abstract public function get_hasvalue();
|
|
abstract public function can_switch_require();
|
|
|
|
/**
|
|
* @param object $worksheet a reference to the pear_spreadsheet-object
|
|
* @param integer $row_offset
|
|
* @param object $item the db-object from feedback_item
|
|
* @param integer $groupid
|
|
* @param integer $courseid
|
|
* @return integer the new row_offset
|
|
*/
|
|
abstract public function excelprint_item(&$worksheet, $row_offset,
|
|
$xls_formats, $item,
|
|
$groupid, $courseid = false);
|
|
|
|
/**
|
|
* @param $item the db-object from feedback_item
|
|
* @param string $itemnr
|
|
* @param integer $groupid
|
|
* @param integer $courseid
|
|
* @return integer the new itemnr
|
|
*/
|
|
abstract public function print_analysed($item, $itemnr = '', $groupid = false, $courseid = false);
|
|
|
|
/**
|
|
* @param object $item the db-object from feedback_item
|
|
* @param string $value a item-related value from feedback_values
|
|
* @return string
|
|
*/
|
|
abstract public function get_printval($item, $value);
|
|
|
|
/**
|
|
* returns an Array with three values(typ, name, XXX)
|
|
* XXX is also an Array (count of responses on type $this->type)
|
|
* each element is a structure (answertext, answercount)
|
|
* @param $item the db-object from feedback_item
|
|
* @param $groupid if given
|
|
* @param $courseid if given
|
|
* @return array
|
|
*/
|
|
abstract public function get_analysed($item, $groupid = false, $courseid = false);
|
|
|
|
/**
|
|
* print the item at the edit-page of feedback
|
|
*
|
|
* @global object
|
|
* @param object $item
|
|
* @return void
|
|
*/
|
|
abstract public function print_item_preview($item);
|
|
|
|
/**
|
|
* print the item at the complete-page of feedback
|
|
*
|
|
* @global object
|
|
* @param object $item
|
|
* @param string $value
|
|
* @param bool $highlightrequire
|
|
* @return void
|
|
*/
|
|
abstract public function print_item_complete($item, $value = '', $highlightrequire = false);
|
|
|
|
/**
|
|
* print the item at the complete-page of feedback
|
|
*
|
|
* @global object
|
|
* @param object $item
|
|
* @param string $value
|
|
* @return void
|
|
*/
|
|
abstract public function print_item_show_value($item, $value = '');
|
|
|
|
/**
|
|
* cleans the userinput while submitting the form
|
|
*
|
|
* @param mixed $value
|
|
* @return mixed
|
|
*/
|
|
abstract public function clean_input_value($value);
|
|
|
|
}
|
|
|
|
//a dummy class to realize pagebreaks
|
|
class feedback_item_pagebreak extends feedback_item_base {
|
|
protected $type = "pagebreak";
|
|
|
|
public function show_editform() {
|
|
}
|
|
public function is_cancelled() {
|
|
}
|
|
public function get_data() {
|
|
}
|
|
public function init() {
|
|
}
|
|
public function build_editform($item, $feedback, $cm) {
|
|
}
|
|
public function save_item() {
|
|
}
|
|
public function check_value($value, $item) {
|
|
}
|
|
public function create_value($data) {
|
|
}
|
|
public function compare_value($item, $dbvalue, $dependvalue) {
|
|
}
|
|
public function get_presentation($data) {
|
|
}
|
|
public function get_hasvalue() {
|
|
}
|
|
public function excelprint_item(&$worksheet, $row_offset,
|
|
$xls_formats, $item,
|
|
$groupid, $courseid = false) {
|
|
}
|
|
|
|
public function print_analysed($item, $itemnr = '', $groupid = false, $courseid = false) {
|
|
}
|
|
public function get_printval($item, $value) {
|
|
}
|
|
public function get_analysed($item, $groupid = false, $courseid = false) {
|
|
}
|
|
public function print_item_preview($item) {
|
|
}
|
|
public function print_item_complete($item, $value = '', $highlightrequire = false) {
|
|
}
|
|
public function print_item_show_value($item, $value = '') {
|
|
}
|
|
public function can_switch_require() {
|
|
}
|
|
public function value_type() {
|
|
}
|
|
public function clean_input_value($value) {
|
|
}
|
|
|
|
}
|