18 import (
'lib.pkp.classes.reviewForm.ReviewFormResponse');
29 $sql =
'SELECT * FROM review_form_responses WHERE review_id = ? AND review_form_element_id = ?';
30 $params = array($reviewId, $reviewFormElementId);
31 $result = $this->
retrieve($sql, $params);
34 if ($result->RecordCount() != 0) {
56 $responseValue = $this->
convertFromDB($row[
'response_value'], $row[
'response_type']);
59 $reviewFormResponse->setReviewId($row[
'review_id']);
60 $reviewFormResponse->setReviewFormElementId($row[
'review_form_element_id']);
61 $reviewFormResponse->setValue($responseValue);
62 $reviewFormResponse->setResponseType($row[
'response_type']);
64 HookRegistry::call(
'ReviewFormResponseDAO::_returnReviewFormResponseFromRow', array(&$reviewFormResponse, &$row));
66 return $reviewFormResponse;
74 $responseValue = $this->
convertToDB($reviewFormResponse->getValue(), $reviewFormResponse->getResponseType());
76 'INSERT INTO review_form_responses
77 (review_form_element_id, review_id, response_type, response_value)
81 $reviewFormResponse->getReviewFormElementId(),
82 $reviewFormResponse->getReviewId(),
83 $reviewFormResponse->getResponseType(),
94 $responseValue = $this->
convertToDB($reviewFormResponse->getValue(), $reviewFormResponse->getResponseType());
96 'UPDATE review_form_responses
100 WHERE review_form_element_id = ? AND review_id = ?',
102 $reviewFormResponse->getResponseType(),
104 $reviewFormResponse->getReviewFormElementId(),
105 $reviewFormResponse->getReviewId()
117 return $this->
deleteById($reviewFormResponse->getReviewId(), $reviewFormResponse->getReviewFormElementId());
127 'DELETE FROM review_form_responses WHERE review_id = ? AND review_form_element_id = ?',
128 array($reviewId, $reviewFormElementId)
138 'DELETE FROM review_form_responses WHERE review_id = ?',
149 'DELETE FROM review_form_responses WHERE review_form_element_id = ?',
163 'SELECT * FROM review_form_responses WHERE review_id = ?',
167 while (!$result->EOF) {
168 $row = $result->GetRowAssoc(
false);
170 $returner[$reviewFormResponse->getReviewFormElementId()] = $reviewFormResponse->getValue();
185 $sql =
'SELECT COUNT(*) FROM review_form_responses WHERE review_id = ?';
186 $params = array($reviewId);
187 if ($reviewFormElementId !==
null) {
188 $sql .=
' AND review_form_element_id = ?';
189 $params[] = $reviewFormElementId;
191 $result = $this->
retrieve($sql, $params);
193 $returner = isset($result->fields[0]) && $result->fields[0] > 0 ? true :
false;