/**
  * The place to check if the data set in the snippet is valid
  * to generate the snippet.
  *
  * When invalid data should result in an error, you can throw it
  * here but you can also perform the check in the
  * checkRegistryRequestsAnswers() function from the
  * {@see \MUtil_Registry_TargetInterface}.
  *
  * @return boolean
  */
 public function hasHtmlOutput()
 {
     return $this->respondentData && $this->request && parent::hasHtmlOutput();
 }
 /**
  * The place to check if the data set in the snippet is valid
  * to generate the snippet.
  *
  * When invalid data should result in an error, you can throw it
  * here but you can also perform the check in the
  * checkRegistryRequestsAnswers() function from the
  * {@see \MUtil_Registry_TargetInterface}.
  *
  * @return boolean
  */
 public function hasHtmlOutput()
 {
     if (!$this->respondentTrackId) {
         if (isset($this->trackData['gr2t_id_respondent_track'])) {
             $this->respondentTrackId = $this->trackData['gr2t_id_respondent_track'];
         } elseif (isset($this->trackData['gto_id_respondent_track'])) {
             $this->respondentTrackId = $this->trackData['gto_id_respondent_track'];
         } elseif ($this->request && ($respondentTrackId = $this->request->getParam(\Gems_Model::RESPONDENT_TRACK))) {
             $this->respondentTrackId = $respondentTrackId;
         }
     }
     if ($this->respondentTrackId) {
         return parent::hasHtmlOutput();
     } else {
         return false;
     }
 }