diff --git a/mod/feedback/db/upgrade.php b/mod/feedback/db/upgrade.php
index 6733a3452d5..80a482f90e8 100644
--- a/mod/feedback/db/upgrade.php
+++ b/mod/feedback/db/upgrade.php
@@ -37,7 +37,7 @@
defined('MOODLE_INTERNAL') || die();
function xmldb_feedback_upgrade($oldversion) {
- global $CFG;
+ global $CFG, $DB;
// Moodle v2.8.0 release upgrade line.
// Put any upgrade step following this.
@@ -48,5 +48,14 @@ function xmldb_feedback_upgrade($oldversion) {
// Moodle v3.0.0 release upgrade line.
// Put any upgrade step following this.
+ if ($oldversion < 2016031600) {
+ // Remove labels from all 'captcha' and 'label' items.
+ $DB->execute('UPDATE {feedback_item} SET label = ? WHERE typ = ? OR typ = ?',
+ array('', 'captcha', 'label'));
+
+ // Data savepoint reached.
+ upgrade_mod_savepoint(true, 2016031600, 'feedback');
+ }
+
return true;
}
diff --git a/mod/feedback/import.php b/mod/feedback/import.php
index 083ba2670a9..1339afd7a17 100644
--- a/mod/feedback/import.php
+++ b/mod/feedback/import.php
@@ -208,6 +208,10 @@ function feedback_import_loaded_data(&$data, $feedbackid) {
$newitem->typ = $typ;
$newitem->name = trim($item['#']['ITEMTEXT'][0]['#']);
$newitem->label = trim($item['#']['ITEMLABEL'][0]['#']);
+ if ($typ === 'captcha' || $typ === 'label') {
+ $newitem->label = '';
+ $newitem->name = '';
+ }
$newitem->options = trim($item['#']['OPTIONS'][0]['#']);
$newitem->presentation = trim($item['#']['PRESENTATION'][0]['#']);
//check old types of radio, check, and so on
diff --git a/mod/feedback/item/captcha/lib.php b/mod/feedback/item/captcha/lib.php
index 88847efd12d..66c24318e34 100644
--- a/mod/feedback/item/captcha/lib.php
+++ b/mod/feedback/item/captcha/lib.php
@@ -55,7 +55,7 @@ class feedback_item_captcha extends feedback_item_base {
$this->item->feedback = $feedback->id;
$this->item->template = 0;
$this->item->name = get_string('captcha', 'feedback');
- $this->item->label = get_string('captcha', 'feedback');
+ $this->item->label = '';
$this->item->presentation = '';
$this->item->typ = $this->type;
$this->item->hasvalue = $this->get_hasvalue();
@@ -139,8 +139,10 @@ class feedback_item_captcha extends feedback_item_base {
//print the question and label
echo '
';
- echo '('.$item->label.') ';
- echo format_text($item->name.$requiredmark, true, false, false);
+ if (strval($item->label) !== '') {
+ echo '('. format_string($item->label).') ';
+ }
+ echo format_text($item->name . $requiredmark, FORMAT_HTML, array('noclean' => true, 'para' => false));
echo '
';
}
@@ -192,8 +194,10 @@ class feedback_item_captcha extends feedback_item_base {
//print the question and label
echo '';
- echo '('.$item->label.') ';
- echo format_text($item->name.$requiredmark, true, false, false);
+ if (strval($item->label) !== '') {
+ echo '('. format_string($item->label).') ';
+ }
+ echo format_text($item->name . $requiredmark, FORMAT_HTML, array('noclean' => true, 'para' => false));
$inputname = 'name="'.$item->typ.'_'.$item->id.'"';
echo '';
echo '
';
@@ -259,26 +263,19 @@ class feedback_item_captcha extends feedback_item_base {
* @return void
*/
public function print_item_show_value($item, $value = '') {
- global $DB;
+ global $OUTPUT;
$align = right_to_left() ? 'right' : 'left';
- $cmid = 0;
- $feedbackid = $item->feedback;
- if ($feedbackid > 0) {
- $feedback = $DB->get_record('feedback', array('id'=>$feedbackid));
- if ($cm = get_coursemodule_from_instance("feedback", $feedback->id, $feedback->course)) {
- $cmid = $cm->id;
- }
- }
-
$requiredmark = '
';
//print the question and label
echo '';
- echo '('.$item->label.') ';
- echo format_text($item->name.$requiredmark, true, false, false);
+ if (strval($item->label) !== '') {
+ echo '('. format_string($item->label).') ';
+ }
+ echo format_text($item->name . $requiredmark, FORMAT_HTML, array('noclean' => true, 'para' => false));
echo '
';
}
diff --git a/mod/feedback/item/feedback_item_form_class.php b/mod/feedback/item/feedback_item_form_class.php
index e44ec33362a..f9b16d8fd13 100644
--- a/mod/feedback/item/feedback_item_form_class.php
+++ b/mod/feedback/item/feedback_item_form_class.php
@@ -76,7 +76,7 @@ abstract class feedback_item_form extends moodleform {
$mform->setType('template', PARAM_INT);
$mform->setType('name', PARAM_RAW);
- $mform->setType('label', PARAM_ALPHANUM);
+ $mform->setType('label', PARAM_NOTAGS);
$mform->addElement('hidden', 'typ', $this->type);
$mform->setType('typ', PARAM_ALPHA);
diff --git a/mod/feedback/item/info/lib.php b/mod/feedback/item/info/lib.php
index de56497abd1..2e2e24d8a03 100644
--- a/mod/feedback/item/info/lib.php
+++ b/mod/feedback/item/info/lib.php
@@ -150,7 +150,11 @@ class feedback_item_info extends feedback_item_base {
$data = $analysed_item->data;
if (is_array($data)) {
echo '| ';
- echo $itemnr.' ('.$item->label.') '.$item->name;
+ echo $itemnr . ' ';
+ if (strval($item->label) !== '') {
+ echo '('. format_string($item->label).') ';
+ }
+ echo format_text($item->name, FORMAT_HTML, array('noclean' => true, 'para' => false));
echo ' |
';
$sizeofdata = count($data);
for ($i = 0; $i < $sizeofdata; $i++) {
@@ -241,12 +245,14 @@ class feedback_item_info extends feedback_item_base {
//print the question and label
echo '';
- echo '('.$item->label.') ';
- echo format_text($item->name.$requiredmark, true, false, false);
+ if (strval($item->label) !== '') {
+ echo '('. format_string($item->label).') ';
+ }
+ echo format_text($item->name . $requiredmark, FORMAT_HTML, array('noclean' => true, 'para' => false));
if ($item->dependitem) {
if ($dependitem = $DB->get_record('feedback_item', array('id'=>$item->dependitem))) {
echo '
';
- echo '('.$dependitem->label.'->'.$item->dependvalue.')';
+ echo '('.format_string($dependitem->label).'->'.$item->dependvalue.')';
echo '';
}
}
@@ -330,7 +336,7 @@ class feedback_item_info extends feedback_item_base {
//print the question and label
echo '
';
echo '';
- echo format_text($item->name.$requiredmark, true, false, false);
+ echo format_text($item->name . $requiredmark, FORMAT_HTML, array('noclean' => true, 'para' => false));
echo '';
echo '
';
@@ -363,8 +369,10 @@ class feedback_item_info extends feedback_item_base {
//print the question and label
echo '
';
- echo '('.$item->label.') ';
- echo format_text($item->name . $requiredmark, true, false, false);
+ if (strval($item->label) !== '') {
+ echo '('. format_string($item->label).') ';
+ }
+ echo format_text($item->name . $requiredmark, FORMAT_HTML, array('noclean' => true, 'para' => false));
echo '
';
//print the presentation
diff --git a/mod/feedback/item/label/label_form.php b/mod/feedback/item/label/label_form.php
index b015cd15555..35099081b92 100644
--- a/mod/feedback/item/label/label_form.php
+++ b/mod/feedback/item/label/label_form.php
@@ -35,7 +35,7 @@ class feedback_label_form extends feedback_item_form {
$mform->setType('required', PARAM_INT);
$mform->addElement('hidden', 'name', 'label');
$mform->setType('template', PARAM_ALPHA);
- $mform->addElement('hidden', 'label', '-');
+ $mform->addElement('hidden', 'label', '');
$mform->setType('label', PARAM_ALPHA);
$mform->addElement('header', 'general', get_string($this->type, 'feedback'));
diff --git a/mod/feedback/item/label/lib.php b/mod/feedback/item/label/lib.php
index 6b6d4493743..d4ca8e078d6 100644
--- a/mod/feedback/item/label/lib.php
+++ b/mod/feedback/item/label/lib.php
@@ -184,7 +184,7 @@ class feedback_item_label extends feedback_item_base {
if ($item->dependitem) {
if ($dependitem = $DB->get_record('feedback_item', array('id'=>$item->dependitem))) {
echo '
';
- echo '('.$dependitem->label.'->'.$item->dependvalue.')';
+ echo '('.format_string($dependitem->label).'->'.$item->dependvalue.')';
echo '';
}
}
diff --git a/mod/feedback/item/multichoice/lib.php b/mod/feedback/item/multichoice/lib.php
index c8df4aa2460..5835b9b4ba2 100644
--- a/mod/feedback/item/multichoice/lib.php
+++ b/mod/feedback/item/multichoice/lib.php
@@ -231,7 +231,11 @@ class feedback_item_multichoice extends feedback_item_base {
if ($analysed_item) {
$itemname = $analysed_item[1];
echo '
| ';
- echo $itemnr.' ('.$item->label.') '.$itemname;
+ echo $itemnr . ' ';
+ if (strval($item->label) !== '') {
+ echo '('. format_string($item->label).') ';
+ }
+ echo $itemname;
echo ' |
|---|
';
$analysed_vals = $analysed_item[2];
@@ -320,12 +324,14 @@ class feedback_item_multichoice extends feedback_item_base {
if ($info->subtype == 'd') {
echo '