]> git.mjollnir.org Git - moodle.git/commitdiff
MDL-18529 - the editing textbox of questions now has a with of 80 chars.
authoragrabs <agrabs>
Thu, 12 Mar 2009 11:04:21 +0000 (11:04 +0000)
committeragrabs <agrabs>
Thu, 12 Mar 2009 11:04:21 +0000 (11:04 +0000)
additionally I added the item information from feedback for 1.9

mod/feedback/item/captcha/captcha_form.php
mod/feedback/item/feedback_item_form_class.php
mod/feedback/item/info/info_form.php [new file with mode: 0644]
mod/feedback/item/info/lib.php [new file with mode: 0644]
mod/feedback/item/multichoice/multichoice_form.php
mod/feedback/item/multichoicerated/multichoicerated_form.php
mod/feedback/item/numeric/numeric_form.php
mod/feedback/item/textarea/textarea_form.php
mod/feedback/item/textfield/textfield_form.php
mod/feedback/version.php

index d05ebf9ad4fd7a254cce5d66481c43b3df90503a..2e92b449ca53527d4174459da8e99b245829b437 100644 (file)
@@ -14,7 +14,7 @@ class feedback_captcha_form extends feedback_item_form {
         $mform->addElement('header', 'general', get_string($this->type, 'feedback'));
         $this->requiredcheck = $mform->addElement('checkbox', 'required', get_string('required', 'feedback'));
         
-        $this->itemname = $mform->addElement('text', 'itemname', get_string('item_name', 'feedback'), array('size="40"','maxlength="255"'));
+        $this->itemname = $mform->addElement('text', 'itemname', get_string('item_name', 'feedback'), array('size="'.FEEDBACK_ITEM_NAME_TEXTBOX_SIZE.'"','maxlength="255"'));
         
         $this->select = $mform->addElement('select',
                                             'count_of_nums', 
index 178c76c90353b3c55f65dde1f2f855c9bff3a6db..ab1fa2a35ceda42c7cc982a3c3b38f1dda34ad58 100644 (file)
@@ -2,6 +2,7 @@
 
 require_once $CFG->libdir.'/formslib.php';
 
+define('FEEDBACK_ITEM_NAME_TEXTBOX_SIZE', 80);
 class feedback_item_form extends moodleform {
     
     function get_item_form() {
diff --git a/mod/feedback/item/info/info_form.php b/mod/feedback/item/info/info_form.php
new file mode 100644 (file)
index 0000000..998d736
--- /dev/null
@@ -0,0 +1,27 @@
+<?php
+
+require_once($CFG->dirroot.'/mod/feedback/item/feedback_item_form_class.php');
+
+class feedback_info_form extends feedback_item_form {
+    var $type = "info";
+    var $requiredcheck;
+    var $itemname;
+    var $infotype;
+    
+    function definition() {
+        $mform =& $this->_form;
+        
+        $mform->addElement('header', 'general', get_string($this->type, 'feedback'));
+        $this->requiredcheck = &$mform->addElement('hidden', 'required');
+        
+        $this->itemname = &$mform->addElement('text', 'itemname', get_string('item_name', 'feedback'), array('size="'.FEEDBACK_ITEM_NAME_TEXTBOX_SIZE.'"','maxlength="255"'));
+        
+        $options=array();
+        $options[1]  = get_string('responsetime', 'feedback');
+        $options[2]  = get_string('coursename', 'feedback');
+        $options[3]  = get_string('coursecategory', 'feedback');
+        $this->infotype = &$mform->addElement('select', 'infotype', get_string('infotype', 'feedback'), $options);
+
+    }
+}
+?>
diff --git a/mod/feedback/item/info/lib.php b/mod/feedback/item/info/lib.php
new file mode 100644 (file)
index 0000000..3020b00
--- /dev/null
@@ -0,0 +1,171 @@
+<?php  // $Id$
+defined('FEEDBACK_INCLUDE_TEST') OR die('not allowed');
+require_once($CFG->dirroot.'/mod/feedback/item/feedback_item_class.php');
+
+class feedback_item_info extends feedback_item_base {
+    var $type = "info";
+    function init() {
+    
+    }
+    
+    function &show_edit($item) {
+        global $CFG;
+        
+        require_once('info_form.php');
+        
+        $item_form = new feedback_info_form();
+        
+        $item->presentation = empty($item->presentation) ? '' : $item->presentation;
+        $item->name = empty($item->name) ? '' : htmlspecialchars($item->name);
+        
+        $item_form->requiredcheck->setValue(false);
+
+        $item_form->itemname->setValue($item->name);
+
+        $item_form->infotype->setValue($item->presentation);
+        
+        return $item_form;
+    }
+
+    //liefert eine Struktur ->name, ->data = array(mit Antworten)
+    function get_analysed($item, $groupid = false, $courseid = false) {
+        
+        $presentation = $item->presentation;
+        $aVal = null;
+        $aVal->data = null;
+        $aVal->name = $item->name;
+        //$values = get_records('feedback_value', 'item', $item->id);
+        $values = feedback_get_group_values($item, $groupid, $courseid);
+        if($values) {
+            $data = array();
+            $datavalue = new object();
+            foreach($values as $value) {
+                
+                switch($presentation) {
+                    case 1:
+                        $datavalue->value = $value->value;
+                        $datavalue->show = UserDate($datavalue->value);
+                        break;
+                    case 2:
+                        $datavalue->value = $value->value;
+                        $datavalue->show = $datavalue->value;
+                        break;
+                    case 3:
+                        $datavalue->value = $value->value;
+                        $datavalue->show = $datavalue->value;
+                        break;
+                }
+
+                $data[] = $datavalue;
+            }
+            $aVal->data = $data;
+        }
+        return $aVal;
+    }
+
+    function get_printval($item, $value) {
+        
+        if(!isset($value->value)) return '';
+        return UserDate($value->value);
+    }
+
+    function print_analysed($item, $itemnr = '', $groupid = false, $courseid = false) {
+        $analysed_item = $this->get_analysed($item, $groupid, $courseid);
+        $data = $analysed_item->data;
+        if(is_array($data)) {
+            echo '<tr><th colspan="2" align="left">'. $itemnr . '&nbsp;' . $item->name .'</th></tr>';
+            for($i = 0; $i < sizeof($data); $i++) {
+                echo '<tr><td colspan="2" valign="top" align="left">-&nbsp;&nbsp;' . str_replace("\n", '<br />', $data[$i]->show) . '</td></tr>';
+            }
+        }
+        // return $itemnr;
+    }
+
+    function excelprint_item(&$worksheet, $rowOffset, $item, $groupid, $courseid = false) {
+        $analysed_item = $this->get_analysed($item, $groupid, $courseid);
+
+        $worksheet->setFormat("<l><f><ro2><vo><c:green>");
+        $worksheet->write_string($rowOffset, 0, $item->name);
+        $data = $analysed_item->data;
+        if(is_array($data)) {
+            $worksheet->setFormat("<l><ro2><vo>");
+            $worksheet->write_string($rowOffset, 1, $data[0]->show);
+            $rowOffset++;
+            for($i = 1; $i < sizeof($data); $i++) {
+                $worksheet->setFormat("<l><vo>");
+                $worksheet->write_string($rowOffset, 1, $data[$i]->show);
+                $rowOffset++;
+            }
+        }
+        $rowOffset++;
+        return $rowOffset;
+    }
+
+    function print_item($item, $value = false, $readonly = false, $edit = false, $highlightrequire = false){
+        global $USER, $DB;
+        $align = get_string('thisdirection') == 'ltr' ? 'left' : 'right';
+        
+        $presentation = $item->presentation;
+        if($highlightrequire AND $item->required AND strval($value) == '') {
+            $highlight = 'bgcolor="#FFAAAA" class="missingrequire"';
+        }else {
+            $highlight = '';
+        }
+        $requiredmark =  ($item->required == 1)?'<span class="feedback_required_mark">*</span>':'';
+    ?>
+        <td <?php echo $highlight;?> valign="top" align="<?php echo $align;?>"><?php echo format_text($item->name . $requiredmark, true, false, false);?></td>
+        <td valign="top" align="<?php echo $align;?>">
+    <?php
+        if($readonly){
+            // print_simple_box_start($align);
+            print_box_start('generalbox boxalign'.$align);
+            echo $value ? UserDate($value):'&nbsp;';
+            // print_simple_box_end();
+            print_box_end();
+        }else {
+            $feedback = $DB->get_record('feedback', array('id'=>$item->feedback));
+            $course = $DB->get_record('course', array('id'=>$feedback->course));
+            $coursecategory = $DB->get_record('course_categories', array('id'=>$course->category));
+            switch($presentation) {
+                case 1:
+                    $itemvalue = time();
+                    $itemshowvalue = UserDate($itemvalue);
+                    break;
+                case 2:
+                    $itemvalue = $course->shortname;
+                    $itemshowvalue = $itemvalue;
+                    break;
+                case 3:
+                    $itemvalue = $coursecategory->name;
+                    $itemshowvalue = $itemvalue;
+                    break;
+            }
+    ?>
+            <input type="hidden" name="<?php echo $item->typ . '_' . $item->id;?>"
+                                    value="<?php echo $itemvalue;?>" />
+            <span><?php echo $itemshowvalue;?></span>
+    <?php
+        }
+    ?>
+        </td>
+    <?php
+    }
+
+    function check_value($value, $item) {
+        return true;
+    }
+
+    function create_value($data) {
+        $data = addslashes(clean_text($data));
+        return $data;
+    }
+
+    function get_presentation($data) {
+        return $data->infotype;
+    }
+
+    function get_hasvalue() {
+        return 1;
+    }
+}
+?>
index 585b38865457dff1da3158b0cc15ed4d30e09de7..abf2f8ab871e9959f2890488533498193a2030db 100644 (file)
@@ -17,7 +17,7 @@ class feedback_multichoice_form extends feedback_item_form {
         
         $this->requiredcheck = $mform->addElement('checkbox', 'required', get_string('required', 'feedback'));
         
-        $this->itemname = $mform->addElement('text', 'itemname', get_string('item_name', 'feedback'), array('size="40"','maxlength="255"'));
+        $this->itemname = $mform->addElement('text', 'itemname', get_string('item_name', 'feedback'), array('size="'.FEEDBACK_ITEM_NAME_TEXTBOX_SIZE.'"','maxlength="255"'));
 
         $this->selectadjust = $mform->addElement('select',
                                             'horizontal', 
@@ -33,7 +33,7 @@ class feedback_multichoice_form extends feedback_item_form {
 
         $mform->addElement('static', 'hint', get_string('multichoice_values', 'feedback'), get_string('use_one_line_for_each_value', 'feedback'));
         
-        $this->values = $mform->addElement('textarea', 'itemvalues', '', 'wrap="virtual" rows="10" cols="30"');
+        $this->values = $mform->addElement('textarea', 'itemvalues', '', 'wrap="virtual" rows="10" cols="65"');
 
     }
 }
index b049a68fdcf043b1ca3208b6a065193226f52e9d..c771ec864846271114634392e47ddb7b80efcbd1 100644 (file)
@@ -17,7 +17,7 @@ class feedback_multichoicerated_form extends feedback_item_form {
         
         $this->requiredcheck = $mform->addElement('checkbox', 'required', get_string('required', 'feedback'));
         
-        $this->itemname = $mform->addElement('text', 'itemname', get_string('item_name', 'feedback'), array('size="40"','maxlength="255"'));
+        $this->itemname = $mform->addElement('text', 'itemname', get_string('item_name', 'feedback'), array('size="'.FEEDBACK_ITEM_NAME_TEXTBOX_SIZE.'"','maxlength="255"'));
 
         $this->selectadjust = $mform->addElement('select',
                                             'horizontal', 
@@ -32,7 +32,7 @@ class feedback_multichoicerated_form extends feedback_item_form {
 
         $mform->addElement('static', 'hint', get_string('multichoice_values', 'feedback'), get_string('use_one_line_for_each_value', 'feedback'));
         
-        $this->values = $mform->addElement('textarea', 'itemvalues', '', 'wrap="virtual" rows="10" cols="30"');
+        $this->values = $mform->addElement('textarea', 'itemvalues', '', 'wrap="virtual" rows="10" cols="65"');
 
     }
 }
index 85b95910de94cc39aaeb346b6e5f6e3c632510d8..ac25ea463e1e086263963486fc3de9bc6903d906 100644 (file)
@@ -15,7 +15,7 @@ class feedback_numeric_form extends feedback_item_form {
         $mform->addElement('header', 'general', get_string($this->type, 'feedback'));
         $this->requiredcheck = $mform->addElement('checkbox', 'required', get_string('required', 'feedback'));
         
-        $this->itemname = $mform->addElement('text', 'itemname', get_string('item_name', 'feedback'), array('size="40"','maxlength="255"'));
+        $this->itemname = $mform->addElement('text', 'itemname', get_string('item_name', 'feedback'), array('size="'.FEEDBACK_ITEM_NAME_TEXTBOX_SIZE.'"','maxlength="255"'));
         
         $this->selectfrom = $mform->addElement('text', 'numericrangefrom', get_string('numeric_range_from', 'feedback'), array('size="10"','maxlength="10"'));
         
index bde373d14e18bbf909b432dae1bc8bad8ef9ac36..8579cf40024f881bdb9bacfbfeae371ce57558fa 100644 (file)
@@ -15,7 +15,7 @@ class feedback_textarea_form extends feedback_item_form {
         $mform->addElement('header', 'general', get_string($this->type, 'feedback'));
         $this->requiredcheck = $mform->addElement('checkbox', 'required', get_string('required', 'feedback'));
         
-        $this->itemname = $mform->addElement('text', 'itemname', get_string('item_name', 'feedback'), array('size="40"','maxlength="255"'));
+        $this->itemname = $mform->addElement('text', 'itemname', get_string('item_name', 'feedback'), array('size="'.FEEDBACK_ITEM_NAME_TEXTBOX_SIZE.'"','maxlength="255"'));
         
         $this->selectwith = $mform->addElement('select',
                                             'itemwidth', 
index 02d923061f362f3607a7dc46abd51ec7126481a7..16b47aa65c8d6965e6185bcfa0667ff7cb54a6fa 100644 (file)
@@ -15,17 +15,17 @@ class feedback_textfield_form extends feedback_item_form {
         $mform->addElement('header', 'general', get_string($this->type, 'feedback'));
         $this->requiredcheck = $mform->addElement('checkbox', 'required', get_string('required', 'feedback'));
         
-        $this->itemname = $mform->addElement('text', 'itemname', get_string('item_name', 'feedback'), array('size="40"','maxlength="255"'));
+        $this->itemname = $mform->addElement('text', 'itemname', get_string('item_name', 'feedback'), array('size="'.FEEDBACK_ITEM_NAME_TEXTBOX_SIZE.'"','maxlength="255"'));
         
         $this->selectwith = $mform->addElement('select',
                                             'itemsize', 
                                             get_string('textfield_size', 'feedback').'&nbsp;', 
-                                            array_slice(range(0,80),5,80,true));
+                                            array_slice(range(0,255),5,255,true));
 
         $this->selectheight = $mform->addElement('select',
                                             'itemmaxlength', 
                                             get_string('textfield_maxlength', 'feedback').'&nbsp;', 
-                                            array_slice(range(0,40),5,40,true));
+                                            array_slice(range(0,255),5,255,true));
 
     }
 }
index ba3ad5a919fa0b448dfef40fa2d6601199ea394a..c406e32a1e011e3a50a790915d49c22dd56cb803 100644 (file)
@@ -10,7 +10,7 @@
 */
 
    
-    $module->version = 2009030604; // The current module version (Date: YYYYMMDDXX)
+    $module->version = 2009031201; // The current module version (Date: YYYYMMDDXX)
     $module->requires = 2008072401;  // Requires this Moodle version
     $feedback_version_intern = 1; //this version is used for restore older backups
     $module->cron = 0; // Period for cron to check this module (secs)