Beispiel #1
0
 /**
  * Form definition
  */
 public function definition()
 {
     $mform = $this->_form;
     $mform->addElement('hidden', 'id', $this->get_cm()->id);
     $mform->setType('id', PARAM_INT);
     $mform->addElement('hidden', 'courseid', $this->get_current_course_id());
     $mform->setType('courseid', PARAM_INT);
     $mform->addElement('hidden', 'gopage');
     $mform->setType('gopage', PARAM_INT);
     $mform->addElement('hidden', 'lastpage');
     $mform->setType('lastpage', PARAM_INT);
     $mform->addElement('hidden', 'startitempos');
     $mform->setType('startitempos', PARAM_INT);
     $mform->addElement('hidden', 'lastitempos');
     $mform->setType('lastitempos', PARAM_INT);
     if (isloggedin() && !isguestuser() && $this->mode != self::MODE_EDIT && $this->mode != self::MODE_VIEW_TEMPLATE && $this->mode != self::MODE_VIEW_RESPONSE) {
         // Output information about the current mode (anonymous or not) in some modes.
         if ($this->structure->is_anonymous()) {
             $anonymousmodeinfo = get_string('anonymous', 'feedback');
         } else {
             $anonymousmodeinfo = get_string('non_anonymous', 'feedback');
         }
         $element = $mform->addElement('static', 'anonymousmode', '', get_string('mode', 'feedback') . ': ' . $anonymousmodeinfo);
         $element->setAttributes($element->getAttributes() + ['class' => 'feedback_mode']);
     }
     // Add buttons to go to previous/next pages and submit the feedback.
     if ($this->mode == self::MODE_COMPLETE) {
         $buttonarray = array();
         $buttonarray[] =& $mform->createElement('submit', 'gopreviouspage', get_string('previous_page', 'feedback'));
         $buttonarray[] =& $mform->createElement('submit', 'gonextpage', get_string('next_page', 'feedback'), array('class' => 'form-submit'));
         $buttonarray[] =& $mform->createElement('submit', 'savevalues', get_string('save_entries', 'feedback'), array('class' => 'form-submit'));
         $buttonarray[] =& $mform->createElement('static', 'buttonsseparator', '', '<br>');
         $buttonarray[] =& $mform->createElement('cancel');
         $mform->addGroup($buttonarray, 'buttonar', '', array(' '), false);
         $mform->closeHeaderBefore('buttonar');
     }
     if ($this->mode == self::MODE_COMPLETE) {
         $this->definition_complete();
     } else {
         $this->definition_preview();
     }
     // Set data.
     $this->set_data(array('gopage' => $this->gopage));
 }
Beispiel #2
0
    } else {
        $responsetitle = get_string('response_nr', 'feedback') . ': ' . $completedrecord->random_response . ' (' . get_string('anonymous', 'feedback') . ')';
    }
    echo $OUTPUT->heading($responsetitle, 4);
    $form = new mod_feedback_complete_form(mod_feedback_complete_form::MODE_VIEW_RESPONSE, $feedbackstructure, 'feedback_viewresponse_form');
    $form->display();
    list($prevresponseurl, $returnurl, $nextresponseurl) = $userid ? $responsestable->get_reponse_navigation_links($completedrecord) : $anonresponsestable->get_reponse_navigation_links($completedrecord);
    echo html_writer::start_div('response_navigation');
    echo $prevresponseurl ? html_writer::link($prevresponseurl, get_string('prev'), ['class' => 'prev_response']) : '';
    echo html_writer::link($returnurl, get_string('back'), ['class' => 'back_to_list']);
    echo $nextresponseurl ? html_writer::link($nextresponseurl, get_string('next'), ['class' => 'next_response']) : '';
    echo html_writer::end_div();
} else {
    // Print the list of responses.
    $courseselectform->display();
    // Show non-anonymous responses (always retrieve them even if current feedback is anonymous).
    $totalrows = $responsestable->get_total_responses_count();
    if (!$feedbackstructure->is_anonymous() || $totalrows) {
        echo $OUTPUT->heading(get_string('non_anonymous_entries', 'feedback', $totalrows), 4);
        $responsestable->display();
    }
    // Show anonymous responses (always retrieve them even if current feedback is not anonymous).
    $feedbackstructure->shuffle_anonym_responses();
    $totalrows = $anonresponsestable->get_total_responses_count();
    if ($feedbackstructure->is_anonymous() || $totalrows) {
        echo $OUTPUT->heading(get_string('anonymous_entries', 'feedback', $totalrows), 4);
        $anonresponsestable->display();
    }
}
// Finish the page.
echo $OUTPUT->footer();