CMS  Version 3.9
SurveyResponse Class Reference
+ Inheritance diagram for SurveyResponse:
+ Collaboration diagram for SurveyResponse:

Public Member Functions

 Questions ()
 
 Survey ()
 
 Answers ($constraint="")
 
 Questionnaire ()
 
 isSubmitted ()
 
 isEditable ()
 
 setStatus ($status)
 Set the response status and save. More...
 
 setDefaults ()
 
 getEditUrl ()
 
 getIntroUrl ()
 
 isTester ()
 
 excludeResponse ($include_in_results=false)
 
 reset ()
 reinitialize token for a test user. More...
 
 SurveyResponse ()
 
- Public Member Functions inherited from AbstractQuestionnaireResponse
 AbstractQuestionnaireResponse ()
 
 Answers ()
 If key field is not null, retrieve the answers linked to this respondent. More...
 

Static Public Member Functions

static findResponseByToken ($survey_id, $token)
 

Public Attributes

 $fields
 
 $fieldAliases
 
 $relations
 
 $statusTypes
 

Detailed Description

Definition at line 41 of file survey_response.inc.

Member Function Documentation

◆ Answers()

SurveyResponse::Answers (   $constraint = "")

Definition at line 84 of file survey_response.inc.

85  {
86  $answers = array();
87  $questions = $this->Questions();
88  foreach($questions as $question)
89  {
90  $answer = querySingle(SurveyAnswer, "WHERE response_id = {$this->response_id} AND survey_question_id = $question->survey_question_id");
91  if($answer)
92  array_push($answers, $answer);
93  }
94 
95  return $answers;
96  }
$question
$answers

◆ excludeResponse()

SurveyResponse::excludeResponse (   $include_in_results = false)

Definition at line 168 of file survey_response.inc.

169  {
170  $this->include_in_results = false;
171  $this->filter = new InclusionFilter("include_in_results");
172  $this->save();
173  }
$table filter
$response include_in_results

◆ findResponseByToken()

static SurveyResponse::findResponseByToken (   $survey_id,
  $token 
)
static

Definition at line 122 of file survey_response.inc.

123  {
124  $responses = Query::create(SurveyResponse, "WHERE survey_id=:survey_id AND token=:token")
125  ->bind(":survey_id", $survey_id, ":token", $token)
126  ->execute();
127 
128  return (count($responses) > 0) ? $responses[0] : null;
129  }
$survey_id

◆ getEditUrl()

SurveyResponse::getEditUrl ( )

Definition at line 146 of file survey_response.inc.

147  {
148  $mgr = new SurveyResponseManager($this);
149  return $mgr->getEditUrl($this->Survey());
150  }

◆ getIntroUrl()

SurveyResponse::getIntroUrl ( )
 Called by merge code and response tester block
Returns
string

Definition at line 157 of file survey_response.inc.

158  {
159  $mgr = new SurveyResponseManager($this);
160  return $mgr->getIntroUrl($this->Survey());
161  }

◆ isEditable()

SurveyResponse::isEditable ( )

Reimplemented from AbstractQuestionnaireResponse.

Definition at line 108 of file survey_response.inc.

109  {
110  return ($this->status != "submitted") ? true : false;
111  }
$progress status
$table column("Redirect From", "<a href='redirect_form?redirect_id={redirect_id}'>{redirect_from}</a>", true, "width: 30%") -> column("Redirect To", "<a href='{redirect_to}' target='_blank'>{redirect_to}</a>", true, "width: 30%") ->column("Last Modified", "{last_modified}", true, "width: 20%; text-align: center") ->column("Override", "{ override true
Definition: redirects.inc:9

◆ isSubmitted()

SurveyResponse::isSubmitted ( )

Reimplemented from AbstractQuestionnaireResponse.

Definition at line 103 of file survey_response.inc.

104  {
105  return ($this->status != "submitted") ? false : true;
106  }
return false

◆ isTester()

SurveyResponse::isTester ( )

Definition at line 163 of file survey_response.inc.

164  {
165  return ($this->include_in_results) ? false : true;
166  }

◆ Questionnaire()

SurveyResponse::Questionnaire ( )

Definition at line 98 of file survey_response.inc.

99  {
100  return $this->Survey()->Questionnaire();
101  }

◆ Questions()

SurveyResponse::Questions ( )

Reimplemented from AbstractQuestionnaireResponse.

Definition at line 69 of file survey_response.inc.

70  {
71  $survey = $this->Survey();
72 
73  if($survey)
74  $questions = $survey->Questions();
75 
76  return $questions;
77  }
if(! $survey_id) $survey

◆ reset()

SurveyResponse::reset ( )

reinitialize token for a test user.

Definition at line 179 of file survey_response.inc.

180  {
181  if(!$this->response_id) return;
182  if(!$this->isTester()) return;
183 
184  $this->setStatus("not_started");
185  $answer = new SurveyAnswer();
186  $answer->delete("WHERE response_id={$this->response_id}");
187  }
setStatus($status)
Set the response status and save.

◆ setDefaults()

SurveyResponse::setDefaults ( )

Reimplemented from AbstractQuestionnaireResponse.

Definition at line 132 of file survey_response.inc.

133  {
134  $this->status = "not_started";
135  $this->include_in_results = true;
136  }

◆ setStatus()

SurveyResponse::setStatus (   $status)

Set the response status and save.

Reimplemented from AbstractQuestionnaireResponse.

Definition at line 114 of file survey_response.inc.

115  {
116  $this->last_modified = date('Y-m-d');
117  $this->filter = new InclusionFilter("status", "last_modified");
118  $this->status = $status;
119  $rtn = $this->save();
120  }

◆ Survey()

SurveyResponse::Survey ( )

Definition at line 79 of file survey_response.inc.

80  {
81  return $this->getRelated(Survey);
82  }

◆ SurveyResponse()

SurveyResponse::SurveyResponse ( )

Definition at line 190 of file survey_response.inc.

191  {
192  $this->table = "survey_response";
193  $this->primary_key = "response_id";
194  $this->answer_class = SurveyAnswer;
195 
196  $this->DataItem(func_get_args());
197  }

Member Data Documentation

◆ $fieldAliases

SurveyResponse::$fieldAliases
Initial value:
= array(
"include_in_results" => "Include in Reslts",
)

Definition at line 53 of file survey_response.inc.

◆ $fields

SurveyResponse::$fields
Initial value:
= array (
"response_id" => Number,
"survey_id" => Number,
"token" => String,
"email" => String,
"last_modified" => Date,
"status" => String,
"include_in_results" => Boolean,
)

Definition at line 43 of file survey_response.inc.

◆ $relations

SurveyResponse::$relations
Initial value:
= array (
"Questions" => Questions,
"Answers" => SurveyAnswer,
"Survey" => Survey,
)

Definition at line 57 of file survey_response.inc.

◆ $statusTypes

SurveyResponse::$statusTypes
Initial value:
= array(
"not_started" => "Not Started",
"in_progress" => "In Progress",
"submitted" => "Submitted",
)

Definition at line 63 of file survey_response.inc.


The documentation for this class was generated from the following file: