mirror of
https://github.com/moodle/moodle.git
synced 2025-08-09 19:06:41 +02:00
MDL-19489 - add conditional branching (my first try)
This commit is contained in:
parent
f53fde9f47
commit
73043833e9
29 changed files with 1597 additions and 1088 deletions
|
@ -35,6 +35,22 @@ class feedback_label_form extends feedback_item_form {
|
|||
////////////////////////////////////////////////////////////////////////
|
||||
//the following is used in all itemforms
|
||||
////////////////////////////////////////////////////////////////////////
|
||||
//itemdepending
|
||||
if($common['items']) {
|
||||
$mform->addElement('select',
|
||||
'dependitem',
|
||||
get_string('dependitem', 'feedback').' ',
|
||||
$common['items']
|
||||
);
|
||||
$mform->addHelpButton('dependitem', 'depending', 'feedback');
|
||||
$mform->addElement('text', 'dependvalue', get_string('dependvalue', 'feedback'), array('size="'.FEEDBACK_ITEM_LABEL_TEXTBOX_SIZE.'"','maxlength="255"'));
|
||||
}else {
|
||||
$mform->addElement('hidden', 'dependitem', 0);
|
||||
$mform->setType('dependitem', PARAM_INT);
|
||||
$mform->addElement('hidden', 'dependvalue', '');
|
||||
$mform->setType('dependitem', PARAM_ALPHA);
|
||||
}
|
||||
|
||||
$position_select = $mform->addElement('select',
|
||||
'position',
|
||||
get_string('position', 'feedback').' ',
|
||||
|
|
|
@ -34,9 +34,12 @@ class feedback_item_label extends feedback_item_base {
|
|||
//the elements for position dropdownlist
|
||||
$positionlist = array_slice(range(0,$i_formselect_last),1,$i_formselect_last,true);
|
||||
|
||||
//all items for dependitem
|
||||
$feedbackitems = feedback_get_depend_candidates_for_item($feedback, $item);
|
||||
$commonparams = array('cmid'=>$cm->id,
|
||||
'id'=>isset($item->id) ? $item->id : NULL,
|
||||
'typ'=>$item->typ,
|
||||
'items'=>$feedbackitems,
|
||||
'feedback'=>$feedback->id);
|
||||
|
||||
$this->context = get_context_instance(CONTEXT_MODULE, $cm->id);
|
||||
|
@ -128,6 +131,13 @@ class feedback_item_label extends feedback_item_base {
|
|||
* @return void
|
||||
*/
|
||||
function print_item_preview($item) {
|
||||
global $OUTPUT, $DB;
|
||||
|
||||
if($item->dependitem) {
|
||||
if($dependitem = $DB->get_record('feedback_item', array('id'=>$item->dependitem))) {
|
||||
echo ' <span class="feedback_depend">('.$dependitem->label.'->'.$item->dependvalue.')</span>';
|
||||
}
|
||||
}
|
||||
$this->print_item($item);
|
||||
}
|
||||
|
||||
|
@ -160,6 +170,10 @@ class feedback_item_label extends feedback_item_base {
|
|||
return false;
|
||||
}
|
||||
|
||||
function compare_value($item, $dbvalue, $dependvalue) {
|
||||
return false;
|
||||
}
|
||||
|
||||
//used by create_item and update_item functions,
|
||||
//when provided $data submitted from feedback_show_edit
|
||||
function get_presentation($data) {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue