getObject($params); $source_prefix = $this->Application->Parser->GetParam('SourcePrefix'); $source_tp = $this->Application->recallTagProcessor($source_prefix); $params['name'] = 'fld_'.$object->GetDBField('FormFieldId'); if (isset($params['verify'])) $params['name'] .= '_verify'; return $source_tp->InputName($params); } function SubmissionTag($params) { $object = $this->getObject($params); $params['field'] = 'fld_'.$object->GetDBField('FormFieldId'); $source_prefix = $this->Application->Parser->GetParam('SourcePrefix'); return $this->Application->ProcessParsedTag($source_prefix, $params['tag'], $params); } /** * Allows to modify block params & current list record before PrintList parses record * * @param kDBList $object * @param Array $block_params */ function PrepareListElementParams(&$object, &$block_params) { if (!array_key_exists('SourcePrefix', $block_params)) { // don't have source prefix in administrative console $object->SetDBField('DirectOptions', false); return ; } /** @var kDBItem $submission */ $submission = $this->Application->recallObject( $block_params['SourcePrefix'] ); $options = $submission->GetFieldOptions('fld_' . $object->GetID()); $object->SetDBField('DirectOptions', array_key_exists('options', $options) ? $options['options'] : false); } }