You are here

function quiz_question_add_body_field in Quiz 7

Same name and namespace in other branches
  1. 7.6 question_types/quiz_question/quiz_question.module \quiz_question_add_body_field()
  2. 7.4 question_types/quiz_question/quiz_question.module \quiz_question_add_body_field()
  3. 7.5 question_types/quiz_question/quiz_question.module \quiz_question_add_body_field()

Add body field to quiz_question nodes.

6 calls to quiz_question_add_body_field()
long_answer_install in question_types/long_answer/long_answer.install
Implements hook_install().
matching_install in question_types/matching/matching.install
Implements hook_install().
multichoice_install in question_types/multichoice/multichoice.install
Implements hook_install().
scale_install in question_types/scale/scale.install
Implements hook_install().
short_answer_install in question_types/short_answer/short_answer.install
Implements hook_install().

... See full list

File

question_types/quiz_question/quiz_question.module, line 887
Quiz Question module. This module provides the basic facilities for adding quiz question types to a quiz.

Code

function quiz_question_add_body_field($type) {
  node_types_rebuild();
  $node_type = node_type_get_type($type);
  if (!$node_type) {
    watchdog('quiz', 'Attempt to add body field was failed as question content type %type is not defined.', array(
      '%type' => $type,
    ), WATCHDOG_ERROR);
    watchdog('quiz', '<pre>' . print_r(node_type_get_types(), 1), array(), WATCHDOG_ERROR);
    return;
  }
  node_add_body_field($node_type, 'Question');

  // Override default weight to make body field appear first
  $instance = field_read_instance('node', 'body', $type);
  $instance['widget']['weight'] = -10;
  $instance['widget']['settings']['rows'] = 6;
  field_update_instance($instance);
}