You are here

function quiz_question_schema in Quiz 6.5

Same name and namespace in other branches
  1. 8.4 question_types/quiz_question/quiz_question.install \quiz_question_schema()
  2. 6.3 question_types/quiz_question/quiz_question.install \quiz_question_schema()
  3. 6.4 question_types/quiz_question/quiz_question.install \quiz_question_schema()
  4. 7.6 question_types/quiz_question/quiz_question.install \quiz_question_schema()
  5. 7 question_types/quiz_question/quiz_question.install \quiz_question_schema()
  6. 7.4 question_types/quiz_question/quiz_question.install \quiz_question_schema()
  7. 7.5 question_types/quiz_question/quiz_question.install \quiz_question_schema()

Implementation of hook_schema().

File

question_types/quiz_question/quiz_question.install, line 25
The installer file for quiz_question.

Code

function quiz_question_schema() {

  //////////////////////

  // TRUE/FALSE tables.

  //////////////////////

  // Extensions to nodes for T/F
  $schema['quiz_truefalse_node'] = array(
    'fields' => array(
      // Nid/vid of the question
      'nid' => array(
        'type' => 'int',
        'unsigned' => TRUE,
        'not null' => TRUE,
      ),
      'vid' => array(
        'type' => 'int',
        'unsigned' => TRUE,
        'not null' => TRUE,
      ),
      // The actual answer the user gave. True or false.
      'correct_answer' => array(
        'type' => 'int',
        'unsigned' => TRUE,
        'size' => 'tiny',
        'default' => 0,
      ),
      'feedback' => array(
        'type' => 'text',
      ),
    ),
    'primary key' => array(
      'vid',
      'nid',
    ),
  );

  // Place to store user answers for T/F questions
  $schema['quiz_truefalse_user_answers'] = array(
    'fields' => array(
      // Nid/vid of the question
      'question_nid' => array(
        'type' => 'int',
        'unsigned' => TRUE,
        'not null' => TRUE,
      ),
      'question_vid' => array(
        'type' => 'int',
        'unsigned' => TRUE,
        'not null' => TRUE,
      ),
      // User's result set
      'result_id' => array(
        'type' => 'int',
        'unsigned' => TRUE,
        'not null' => TRUE,
      ),
      // The actual answer the user gave. True or false.
      'answer' => array(
        'type' => 'int',
        'unsigned' => TRUE,
        'size' => 'tiny',
        'default' => 0,
      ),
      'score' => array(
        'type' => 'int',
        'unsigned' => TRUE,
        'not null' => TRUE,
        'default' => 0,
      ),
    ),
    'primary key' => array(
      'result_id',
      'question_nid',
      'question_vid',
    ),
  );
  return $schema;
}