MDL-5583 mod_data: Add required fields
This is implemented for most fields but not all. The reason is that there are
some fields for which this does not make sense because no entry is a valid entry.
The supported fields are:
checkbox
file
latlong
menu
number
picture
radio
text
textarea
url
The unsupported fields are:
date
multimenu
This commit is contained in:
+29
-15
@@ -146,6 +146,7 @@ switch ($mode) {
|
||||
|
||||
$field->field->name = $fieldinput->name;
|
||||
$field->field->description = $fieldinput->description;
|
||||
$field->field->required = !empty($fieldinput->required) ? 1 : 0;
|
||||
|
||||
for ($i=1; $i<=10; $i++) {
|
||||
if (isset($fieldinput->{'param'.$i})) {
|
||||
@@ -264,7 +265,13 @@ if (($mode == 'new') && (!empty($newtype)) && confirm_sesskey()) { ///
|
||||
} else { //else print quiz style list of fields
|
||||
|
||||
$table = new html_table();
|
||||
$table->head = array(get_string('fieldname','data'), get_string('type','data'), get_string('fielddescription', 'data'), get_string('action','data'));
|
||||
$table->head = array(
|
||||
get_string('fieldname','data'),
|
||||
get_string('type', 'data'),
|
||||
get_string('required', 'data'),
|
||||
get_string('fielddescription', 'data'),
|
||||
get_string('action','data'),
|
||||
);
|
||||
$table->align = array('left','left','left', 'center');
|
||||
$table->wrap = array(false,false,false,false);
|
||||
|
||||
@@ -273,21 +280,28 @@ if (($mode == 'new') && (!empty($newtype)) && confirm_sesskey()) { ///
|
||||
|
||||
$field = data_get_field($ff, $data);
|
||||
|
||||
$baseurl = new moodle_url('/mod/data/field.php', array(
|
||||
'd' => $data->id,
|
||||
'fid' => $field->field->id,
|
||||
'sesskey' => sesskey(),
|
||||
));
|
||||
|
||||
$displayurl = new moodle_url($baseurl, array(
|
||||
'mode' => 'display',
|
||||
));
|
||||
|
||||
$deleteurl = new moodle_url($baseurl, array(
|
||||
'mode' => 'delete',
|
||||
));
|
||||
|
||||
$table->data[] = array(
|
||||
|
||||
'<a href="field.php?mode=display&d='.$data->id.
|
||||
'&fid='.$field->field->id.'&sesskey='.sesskey().'">'.$field->field->name.'</a>',
|
||||
|
||||
$field->image().' '.get_string($field->type, 'data'),
|
||||
|
||||
shorten_text($field->field->description, 30),
|
||||
|
||||
'<a href="field.php?d='.$data->id.'&mode=display&fid='.$field->field->id.'&sesskey='.sesskey().'">'.
|
||||
'<img src="'.$OUTPUT->pix_url('t/edit') . '" class="iconsmall" alt="'.get_string('edit').'" title="'.get_string('edit').'" /></a>'.
|
||||
' '.
|
||||
'<a href="field.php?d='.$data->id.'&mode=delete&fid='.$field->field->id.'&sesskey='.sesskey().'">'.
|
||||
'<img src="'.$OUTPUT->pix_url('t/delete') . '" class="iconsmall" alt="'.get_string('delete').'" title="'.get_string('delete').'" /></a>'
|
||||
|
||||
html_writer::link($displayurl, $field->field->name),
|
||||
$field->image() . ' ' . get_string($field->type, 'data'),
|
||||
$field->field->required ? get_string('yes') : get_string('no'),
|
||||
shorten_text($field->field->description, 30),
|
||||
html_writer::link($displayurl, $OUTPUT->pix_icon('t/edit', get_string('edit'))) .
|
||||
' ' .
|
||||
html_writer::link($deleteurl, $OUTPUT->pix_icon('t/delete', get_string('delete'))),
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user