You are here

function _quiz_update_resultoptions in Quiz 6.6

Same name and namespace in other branches
  1. 8.4 quiz.module \_quiz_update_resultoptions()
  2. 5.2 quiz.module \_quiz_update_resultoptions()
  3. 6.2 quiz.module \_quiz_update_resultoptions()
  4. 6.3 quiz.module \_quiz_update_resultoptions()
  5. 6.4 quiz.module \_quiz_update_resultoptions()
  6. 6.5 quiz.module \_quiz_update_resultoptions()
  7. 7.6 quiz.module \_quiz_update_resultoptions()
  8. 7 quiz.module \_quiz_update_resultoptions()
  9. 7.4 quiz.module \_quiz_update_resultoptions()
  10. 7.5 quiz.module \_quiz_update_resultoptions()

Modify result of option-specific updates.

Parameters

$node: The quiz node.

1 call to _quiz_update_resultoptions()
quiz_update in ./quiz.module
Implementation of hook_update().

File

./quiz.module, line 2141
Quiz Module

Code

function _quiz_update_resultoptions($node) {
  if (empty($node->resultoptions)) {
    return;
  }
  foreach ($node->resultoptions as $option) {

    // MPB: Added this when empty options started showing up.
    // FIXME: Need to find the source of the empty options and remove it.
    if (empty($option['option_name'])) {
      return;
    }
    elseif (!empty($option['option_name']) && empty($option['option_id'])) {

      // Oops, this is actually a new result option.
      $option['nid'] = $node->nid;
      $option['vid'] = $node->vid;

      // ...so insert it.
      _quiz_insert_result_option($option);
    }
    else {

      // Update an existing result option.
      $sql = "UPDATE {quiz_node_result_options}\n        SET option_name='%s', option_summary='%s', option_start = %d,  option_end = %d\n        WHERE nid=%d AND vid=%d AND option_id=%d";
      $values = array(
        $option['option_name'],
        $option['option_summary'],
        $option['option_start'],
        $option['option_end'],
        $node->nid,
        $node->vid,
        $option['option_id'],
      );
      db_query($sql, $values);
    }
  }
}