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

Public Member Functions

 Questionnaire ()
 
 QuestionType ()
 
 Answers ($constraint="")
 
 isEditable ()
 Returns true if the question can be edited and false if it cannot. More...
 
 allowDelete ()
 Do not allow delete if there are answers linked to the question. More...
 
 Question ()
 
- Public Member Functions inherited from AbstractQuestion
 setDefaultValues ()
 Sets the default values for a question object: More...
 
 isFreeText ()
 
 isShortText ()
 
 isCheckList ()
 
 isRatings ()
 
 isMultiChoice ()
 
 isDropDown ()
 
 isHeading ()
 
 formatEditableMessage ()
 
 AbstractQuestion ()
 

Public Attributes

 $fields
 
 $relations
 
- Public Attributes inherited from AbstractQuestion
 $editable = true
 
 $fieldAliases
 

Detailed Description

Definition at line 136 of file question.inc.

Member Function Documentation

◆ allowDelete()

Question::allowDelete ( )

Do not allow delete if there are answers linked to the question.

Definition at line 190 of file question.inc.

191  {
192  if(!$this->question_id)
193  {
194  return false;
195  }
196 
197  $count = count($this->Answers());
198  return ($count > 0) ? false : true;
199  }
return false
Answers($constraint="")
Definition: question.inc:168

◆ Answers()

Question::Answers (   $constraint = "")

Definition at line 168 of file question.inc.

169  {
170  return $this->getRelatedList(QuestionnaireAnswer, "question_id", $constraint);
171  }
$constraint

◆ isEditable()

Question::isEditable ( )

Returns true if the question can be edited and false if it cannot.

Reimplemented from AbstractQuestion.

Definition at line 173 of file question.inc.

174  {
175  if(!$this->question_id)
176  {
177  return true;
178  }
179 
180  $count = Query::create(QuestionnaireAnswer, "WHERE question_id=:question_id")
181  ->bind(":question_id", $this->question_id)
182  ->executeValue("COUNT(1)");
183 
184  return ($count > 0) ? false : true;
185  }

◆ Question()

Question::Question ( )

Definition at line 201 of file question.inc.

202  {
203  $this->table = "question";
204  $this->primary_key = "question_id";
205 
206  $this->DataItem(func_get_args());
207  }

◆ Questionnaire()

Question::Questionnaire ( )

Definition at line 158 of file question.inc.

159  {
160  return $this->getRelated(Questionnaire);
161  }

◆ QuestionType()

Question::QuestionType ( )

Reimplemented from AbstractQuestion.

Definition at line 163 of file question.inc.

164  {
165  return $this->getRelated(QuestionType);
166  }

Member Data Documentation

◆ $fields

Question::$fields
Initial value:
= array ( "question_id" => Number,
"questionnaire_id" => Number,
"question_number" => Number,
"question_type_id" => Number,
"question" => HTML,
"question_name" => String,
"options" => Text,
"required" => Number,
"char_limit" => Number,
"num_rows" => Number,
"context_help" => Text
)

Definition at line 138 of file question.inc.

◆ $relations

Question::$relations
Initial value:
= array (
"Questionnaire" => Questionnaire,
"QuestionType" => QuestionType,
"Answers" => QuestionnaireAnswer,
)

Definition at line 151 of file question.inc.


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