Add multi-variant test sets
This commit is contained in:
@@ -9,6 +9,13 @@ HTMLHelper::_('behavior.formvalidator');
|
||||
?>
|
||||
<form action="<?php echo Route::_('index.php?option=com_testquestions&view=set&layout=edit&id=' . (int) $this->item->id); ?>" method="post" name="adminForm" id="adminForm" class="form-validate">
|
||||
<fieldset class="adminform">
|
||||
<?php echo $this->form->renderField('parent_id'); ?>
|
||||
<?php if ((int) $this->item->parent_id > 0) : ?>
|
||||
<div class="alert alert-info"><?php echo \Joomla\CMS\Language\Text::_('COM_TESTQUESTIONS_SET_PARENT'); ?>: <?php echo $this->escape($this->item->parent_title ?? ''); ?></div>
|
||||
<input type="hidden" name="jform[set_type]" value="variant">
|
||||
<?php else : ?>
|
||||
<?php echo $this->form->renderField('set_type'); ?>
|
||||
<?php endif; ?>
|
||||
<?php echo $this->form->renderField('title'); ?>
|
||||
<?php echo $this->form->renderField('subject_id'); ?>
|
||||
<?php echo $this->form->renderField('duration'); ?>
|
||||
@@ -17,6 +24,26 @@ HTMLHelper::_('behavior.formvalidator');
|
||||
<?php echo $this->form->renderField('image'); ?>
|
||||
<?php echo $this->form->renderField('description'); ?>
|
||||
<?php echo $this->form->renderField('published'); ?>
|
||||
<?php if ((int) $this->item->id > 0 && (string) $this->item->set_type === 'multi') : ?>
|
||||
<fieldset class="mb-3">
|
||||
<legend><?php echo \Joomla\CMS\Language\Text::_('COM_TESTQUESTIONS_SET_VARIANTS'); ?></legend>
|
||||
<?php if ($this->variants) : ?>
|
||||
<ul class="list-group mb-3">
|
||||
<?php foreach ($this->variants as $variant) : ?>
|
||||
<li class="list-group-item d-flex justify-content-between align-items-center">
|
||||
<a href="<?php echo Route::_('index.php?option=com_testquestions&task=set.edit&id=' . (int) $variant->id); ?>"><?php echo $this->escape($variant->title); ?></a>
|
||||
<span class="badge <?php echo (int) $variant->published ? 'bg-success' : 'bg-secondary'; ?>"><?php echo (int) $variant->published ? \Joomla\CMS\Language\Text::_('JPUBLISHED') : \Joomla\CMS\Language\Text::_('JUNPUBLISHED'); ?></span>
|
||||
</li>
|
||||
<?php endforeach; ?>
|
||||
</ul>
|
||||
<?php else : ?>
|
||||
<p><?php echo \Joomla\CMS\Language\Text::_('COM_TESTQUESTIONS_SET_NO_VARIANTS'); ?></p>
|
||||
<?php endif; ?>
|
||||
<a class="btn btn-secondary" href="<?php echo Route::_('index.php?option=com_testquestions&task=set.addvariant&parent_id=' . (int) $this->item->id); ?>">
|
||||
<?php echo \Joomla\CMS\Language\Text::_('COM_TESTQUESTIONS_SET_ADD_VARIANT'); ?>
|
||||
</a>
|
||||
</fieldset>
|
||||
<?php endif; ?>
|
||||
<fieldset class="mb-3">
|
||||
<legend><?php echo \Joomla\CMS\Language\Text::_('COM_TESTQUESTIONS_SET_SELECTED_QUESTIONS'); ?></legend>
|
||||
<div id="set-selected-question-list" class="border rounded p-3">
|
||||
|
||||
@@ -38,6 +38,7 @@ HTMLHelper::_('behavior.multiselect');
|
||||
<tr>
|
||||
<th scope="col" class="w-1"><?php echo HTMLHelper::_('grid.checkall'); ?></th>
|
||||
<th scope="col"><?php echo \Joomla\CMS\Language\Text::_('COM_TESTQUESTIONS_SET_TITLE'); ?></th>
|
||||
<th scope="col"><?php echo \Joomla\CMS\Language\Text::_('COM_TESTQUESTIONS_SET_TYPE'); ?></th>
|
||||
<th scope="col"><?php echo \Joomla\CMS\Language\Text::_('COM_TESTQUESTIONS_SUBJECT'); ?></th>
|
||||
<th scope="col" class="w-15"><?php echo \Joomla\CMS\Language\Text::_('COM_TESTQUESTIONS_SET_QUESTION_COUNT'); ?></th>
|
||||
<th scope="col" class="w-15"><?php echo \Joomla\CMS\Language\Text::_('JSTATUS'); ?></th>
|
||||
@@ -48,7 +49,8 @@ HTMLHelper::_('behavior.multiselect');
|
||||
<?php foreach ($this->items as $i => $item) : ?>
|
||||
<tr>
|
||||
<td><?php echo HTMLHelper::_('grid.id', $i, $item->id); ?></td>
|
||||
<th scope="row"><a href="<?php echo Route::_('index.php?option=com_testquestions&task=set.edit&id=' . (int) $item->id); ?>"><?php echo $this->escape($item->title); ?></a></th>
|
||||
<th scope="row"><a href="<?php echo Route::_('index.php?option=com_testquestions&task=set.edit&id=' . (int) $item->id); ?>"><?php echo (int) $item->parent_id > 0 ? '↳ ' : ''; ?><?php echo $this->escape($item->title); ?></a><?php if ((int) $item->parent_id > 0 && $item->parent_title) : ?> <small class="text-muted">(<?php echo $this->escape($item->parent_title); ?>)</small><?php endif; ?></th>
|
||||
<td><?php echo $this->escape($item->set_type === 'multi' ? \Joomla\CMS\Language\Text::_('COM_TESTQUESTIONS_SET_TYPE_MULTI') : ($item->set_type === 'variant' ? \Joomla\CMS\Language\Text::_('COM_TESTQUESTIONS_SET_TYPE_VARIANT') : \Joomla\CMS\Language\Text::_('COM_TESTQUESTIONS_SET_TYPE_ORDINARY'))); ?></td>
|
||||
<td><?php echo $this->escape($item->subject_title ?: '—'); ?></td>
|
||||
<td><?php echo (int) $item->question_count; ?></td>
|
||||
<td><?php echo HTMLHelper::_('jgrid.published', $item->published, $i, 'sets.', true, 'cb'); ?></td>
|
||||
|
||||
Reference in New Issue
Block a user