You are here

function scale_user in Quiz 6.4

Same name and namespace in other branches
  1. 6.6 question_types/scale/scale.module \scale_user()

Implementation of hook user.

File

question_types/scale/scale.module, line 135
The main file for scale.

Code

function scale_user($op, &$edit, &$account, $category = NULL) {
  switch ($op) {
    case 'delete':

      //Remove the users presets if they aren't in use.
      $sql = 'SELECT id
              FROM {quiz_scale_answer_collection} ac
              JOIN {quiz_scale_user} u ON(ac.id = u.answer_collection_id)
              WHERE uid = %d
              AND ac.for_all = 0
              AND ac.id NOT IN
                (SELECT answer_collection_id
                 FROM {quiz_scale_node_properties})
              AND ac.id NOT IN
                (SELECT answer_collection_id
                 FROM {quiz_scale_user}
                 WHERE NOT uid = %d)';
      $res = db_query($sql, $account->uid, $account->uid);
      while ($res_o = db_fetch_object($res)) {
        $sql = 'DELETE FROM {quiz_scale_answer}
            WHERE answer_collection_id = %d';
        db_query($sql, $res_o->id);
        $sql = 'DELETE FROM {quiz_scale_answer_collection}
            WHERE id = %d';
        db_query($sql, $res_o->id);
        $sql = 'DELETE FROM {quiz_scale_user}
            WHERE uid = %d';
        db_query($sql, $account->uid);
      }
      break;
  }
}