public function save(WpProQuiz_Model_Question $question, $auto = false)
 {
     $sort = null;
     if ($auto && $question->getId()) {
         $statisticMapper = new WpProQuiz_Model_StatisticMapper();
         if ($statisticMapper->isStatisticByQuestionId($question->getId())) {
             $this->setOnlineOff($question->getId());
             $question->setQuizId($this->getQuizId($question->getId()));
             $sort = $this->getSortByQuestionId($question->getId());
             $question->setId(0);
         }
     }
     if ($question->getId() != 0) {
         $this->_wpdb->update($this->_table, array('title' => $question->getTitle(), 'points' => $question->getPoints(), 'question' => $question->getQuestion(), 'correct_msg' => $question->getCorrectMsg(), 'incorrect_msg' => $question->getIncorrectMsg(), 'correct_same_text' => (int) $question->isCorrectSameText(), 'tip_enabled' => (int) $question->isTipEnabled(), 'tip_msg' => $question->getTipMsg(), 'answer_type' => $question->getAnswerType(), 'show_points_in_box' => (int) $question->isShowPointsInBox(), 'answer_points_activated' => (int) $question->isAnswerPointsActivated(), 'answer_data' => $question->getAnswerData(true), 'category_id' => $question->getCategoryId(), 'answer_points_diff_modus_activated' => (int) $question->isAnswerPointsDiffModusActivated(), 'disable_correct' => (int) $question->isDisableCorrect(), 'matrix_sort_answer_criteria_width' => $question->getMatrixSortAnswerCriteriaWidth()), array('id' => $question->getId()), array('%s', '%d', '%s', '%s', '%s', '%d', '%d', '%s', '%s', '%d', '%d', '%s', '%d', '%d', '%d', '%d'), array('%d'));
     } else {
         $this->_wpdb->insert($this->_table, array('quiz_id' => $question->getQuizId(), 'online' => 1, 'sort' => $sort !== null ? $sort : $this->getMaxSort($question->getQuizId()) + 1, 'title' => $question->getTitle(), 'points' => $question->getPoints(), 'question' => $question->getQuestion(), 'correct_msg' => $question->getCorrectMsg(), 'incorrect_msg' => $question->getIncorrectMsg(), 'correct_same_text' => (int) $question->isCorrectSameText(), 'tip_enabled' => (int) $question->isTipEnabled(), 'tip_msg' => $question->getTipMsg(), 'answer_type' => $question->getAnswerType(), 'show_points_in_box' => (int) $question->isShowPointsInBox(), 'answer_points_activated' => (int) $question->isAnswerPointsActivated(), 'answer_data' => $question->getAnswerData(true), 'category_id' => $question->getCategoryId(), 'answer_points_diff_modus_activated' => (int) $question->isAnswerPointsDiffModusActivated(), 'disable_correct' => (int) $question->isDisableCorrect(), 'matrix_sort_answer_criteria_width' => $question->getMatrixSortAnswerCriteriaWidth()), array('%d', '%d', '%d', '%s', '%d', '%s', '%s', '%s', '%d', '%d', '%s', '%s', '%d', '%d', '%s', '%d', '%d', '%d', '%d'));
         $question->setId($this->_wpdb->insert_id);
     }
     return $question;
 }