You are here

public function QuizfileuploadQuestion::getAnsweringForm in Quiz File Upload 6

Same name and namespace in other branches
  1. 7.5 quizfileupload.classes.inc \QuizfileuploadQuestion::getAnsweringForm()
  2. 7 quizfileupload.classes.inc \QuizfileuploadQuestion::getAnsweringForm()
  3. 7.4 quizfileupload.classes.inc \QuizfileuploadQuestion::getAnsweringForm()

Generates the question form.

This is called whenever a question is rendered, either to an administrator or to a quiz taker.

File

./quizfileupload.classes.inc, line 116
The main classes for the multichoice question type.

Class

QuizfileuploadQuestion
Extension of QuizQuestion.

Code

public function getAnsweringForm(array $form_state = NULL, $rid) {
  $form = parent::getAnsweringForm($form_state, $rid);
  $form['#attributes'] = array(
    'enctype' => 'multipart/form-data',
  );
  $file = db_fetch_object(db_query('SELECT filename, filepath FROM {files} f
      INNER JOIN {quiz_fileupload_user_answers} qf ON (f.fid = qf.fid)
      WHERE question_nid = %d AND question_vid = %d AND result_id = %d', $this->node->nid, $this->node->vid, $this->node->rid));
  if (is_object($file)) {
    $form['previous_upload'] = array(
      '#title' => t('Previous upload'),
      '#type' => 'item',
      '#value' => is_object($file) ? l($file->filename, file_create_url($file->filepath)) : t('n/a'),
      '#description' => t('<strong>Upload a new file to replace previous upload.</strong>'),
    );
  }
  $form['tries'] = array(
    '#type' => 'file',
    '#title' => t('Upload'),
    '#description' => t('Allowed extensions !ext', array(
      '!ext' => $this->node->filetypes,
    )),
  );
  return $form;
}