You are here

function quiz_question_node_presave in Quiz 7.5

Same name and namespace in other branches
  1. 8.6 question_types/quiz_question/quiz_question.module \quiz_question_node_presave()
  2. 8.4 question_types/quiz_question/quiz_question.module \quiz_question_node_presave()
  3. 8.5 question_types/quiz_question/quiz_question.module \quiz_question_node_presave()
  4. 7.6 question_types/quiz_question/quiz_question.module \quiz_question_node_presave()
  5. 7 question_types/quiz_question/quiz_question.module \quiz_question_node_presave()
  6. 7.4 question_types/quiz_question/quiz_question.module \quiz_question_node_presave()

Implements hook_node_presave().

File

question_types/quiz_question/quiz_question.module, line 429
Quiz Question module.

Code

function quiz_question_node_presave($node) {
  $q_types = quiz_question_get_info();
  foreach ($q_types as $q_type => $info) {
    if ($node->type == $q_type) {
      if (drupal_strlen($node->title) == 0) {
        $body = field_view_field('node', $node, 'body', array(
          'label' => 'hidden',
        ));
        $markup = strip_tags(drupal_render($body));
        if (drupal_strlen($markup) > variable_get('quiz_autotitle_length', 50)) {
          $node->title = drupal_substr($markup, 0, variable_get('quiz_autotitle_length', 50) - 3) . '...';
        }
        else {
          $node->title = $markup;
        }
      }
    }
  }
}