/**
  * Check question's form data for valid response. Override this is type has specific format requirements.
  *
  * @param object $responsedata The data entered into the response.
  * @return boolean
  */
 public function response_valid($responsedata)
 {
     if (isset($responsedata->{'q' . $this->id})) {
         return $responsedata->{'q' . $this->id} == '' || is_numeric($responsedata->{'q' . $this->id});
     } else {
         return parent::response_valid($responsedata);
     }
 }
 /**
  * Check question's form data for valid response. Override this is type has specific format requirements.
  *
  * @param object $responsedata The data entered into the response.
  * @return boolean
  */
 public function response_valid($responsedata)
 {
     if (isset($responsedata->{'q' . $this->id}) && strpos($responsedata->{'q' . $this->id}, 'other_') !== false) {
         // False if "other" choice is checked but text box is empty.
         return !empty($responsedata->{'q' . $this->id . '' . substr($responsedata->{'q' . $this->id}, 5)});
     } else {
         return parent::response_valid($responsedata);
     }
 }