Merge branch 'MDL-61135-master-fixes' of https://github.com/lameze/moodle
This commit is contained in:
@@ -238,4 +238,42 @@ class custom_view extends \core_question\bank\view {
|
||||
protected function create_new_question_form($category, $canadd) {
|
||||
// Don't display this.
|
||||
}
|
||||
|
||||
/**
|
||||
* Override the base implementation in \core_question\bank\view
|
||||
* because we don't want to print the headers in the fragment
|
||||
* for the modal.
|
||||
*/
|
||||
protected function display_question_bank_header() {
|
||||
}
|
||||
|
||||
/**
|
||||
* Override the base implementation in \core_question\bank\view
|
||||
* because we don't want it to read from the $_POST global variables
|
||||
* for the sort parameters since they are not present in a fragment.
|
||||
*
|
||||
* Unfortunately the best we can do is to look at the URL for
|
||||
* those parameters (only marginally better really).
|
||||
*/
|
||||
protected function init_sort_from_params() {
|
||||
$this->sort = [];
|
||||
for ($i = 1; $i <= self::MAX_SORTS; $i++) {
|
||||
if (!$sort = $this->baseurl->param('qbs' . $i)) {
|
||||
break;
|
||||
}
|
||||
// Work out the appropriate order.
|
||||
$order = 1;
|
||||
if ($sort[0] == '-') {
|
||||
$order = -1;
|
||||
$sort = substr($sort, 1);
|
||||
if (!$sort) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
// Deal with subsorts.
|
||||
list($colname, $subsort) = $this->parse_subsort($sort);
|
||||
$this->requiredcolumns[$colname] = $this->get_column_type($colname);
|
||||
$this->sort[$sort] = $order;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,77 +0,0 @@
|
||||
<?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/>.
|
||||
|
||||
/**
|
||||
* Defines the custom question bank view used in the question bank modal.
|
||||
*
|
||||
* @package mod_quiz
|
||||
* @category question
|
||||
* @copyright 2018 Ryan Wyllie <[email protected]>
|
||||
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
|
||||
*/
|
||||
|
||||
namespace mod_quiz\question\bank;
|
||||
defined('MOODLE_INTERNAL') || die();
|
||||
|
||||
|
||||
/**
|
||||
* Subclass to customise the view of the question bank for a fragment.
|
||||
*
|
||||
* This view is to be used when returning the question bank as part of
|
||||
* a fragment.
|
||||
*
|
||||
* @copyright 2018 Ryan Wyllie <[email protected]>
|
||||
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
|
||||
*/
|
||||
class fragment_view extends custom_view {
|
||||
/**
|
||||
* Override the base implementation in \core_question\bank\view
|
||||
* because we don't want to print the headers in the fragment
|
||||
* for the modal.
|
||||
*/
|
||||
protected function display_question_bank_header() {
|
||||
}
|
||||
|
||||
/**
|
||||
* Override the base implementation in \core_question\bank\view
|
||||
* because we don't want it to read from the $_POST global variables
|
||||
* for the sort parameters since they are not present in a fragment.
|
||||
*
|
||||
* Unfortunately the best we can do is to look at the URL for
|
||||
* those parameters (only marginally better really).
|
||||
*/
|
||||
protected function init_sort_from_params() {
|
||||
$this->sort = [];
|
||||
for ($i = 1; $i <= self::MAX_SORTS; $i++) {
|
||||
if (!$sort = $this->baseurl->param('qbs' . $i)) {
|
||||
break;
|
||||
}
|
||||
// Work out the appropriate order.
|
||||
$order = 1;
|
||||
if ($sort[0] == '-') {
|
||||
$order = -1;
|
||||
$sort = substr($sort, 1);
|
||||
if (!$sort) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
// Deal with subsorts.
|
||||
list($colname, $subsort) = $this->parse_subsort($sort);
|
||||
$this->requiredcolumns[$colname] = $this->get_column_type($colname);
|
||||
$this->sort[$sort] = $order;
|
||||
}
|
||||
}
|
||||
}
|
||||
+1
-1
@@ -2436,7 +2436,7 @@ function mod_quiz_output_fragment_quiz_question_bank($args) {
|
||||
require_capability('mod/quiz:manage', $contexts->lowest());
|
||||
|
||||
// Create quiz question bank view.
|
||||
$questionbank = new mod_quiz\question\bank\fragment_view($contexts, $thispageurl, $course, $cm, $quiz);
|
||||
$questionbank = new mod_quiz\question\bank\custom_view($contexts, $thispageurl, $course, $cm, $quiz);
|
||||
$questionbank->set_quiz_has_attempts(quiz_has_attempts($quiz->id));
|
||||
|
||||
// Output.
|
||||
|
||||
Reference in New Issue
Block a user