public function validate()
 {
     $result = parent::validate();
     if (intval($this->OriginSurveyID) <= 0) {
         $result->error('you need to specify a origin survey!');
     }
     if (intval($this->OriginFieldID) <= 0) {
         $result->error('you need to specify a origin field!');
     }
     $survey_id = isset($_REQUEST['survey_template_id']) ? intval($_REQUEST['survey_template_id']) : $this->TargetSurveyID;
     $current_template = SurveyTemplate::get()->byID($survey_id);
     $old_mapping = $current_template->MigrationMappings()->first();
     if (!is_null($old_mapping) && intval($old_mapping->OriginSurveyID) !== intval($this->OriginSurveyID)) {
         $result->error('you need to specify the same origin survey for all your mappings');
     }
     return $result;
 }