PKPSubmissionMetadataFormImplementation::initData PHP Method

initData() public method

Initialize form data from current submission.
public initData ( $submission )
$submission Submission
    function initData($submission)
    {
        if (isset($submission)) {
            $formData = array('title' => $submission->getTitle(null, false), 'prefix' => $submission->getPrefix(null), 'subtitle' => $submission->getSubtitle(null), 'abstract' => $submission->getAbstract(null), 'coverage' => $submission->getCoverage(null), 'type' => $submission->getType(null), 'source' => $submission->getSource(null), 'rights' => $submission->getRights(null), 'citations' => $submission->getCitations(), 'locale' => $submission->getLocale());
            foreach ($formData as $key => $data) {
                $this->_parentForm->setData($key, $data);
            }
            // get the supported locale keys
            $locales = array_keys($this->_parentForm->supportedLocales);
            // load the persisted metadata controlled vocabularies
            $submissionKeywordDao = DAORegistry::getDAO('SubmissionKeywordDAO');
            $submissionSubjectDao = DAORegistry::getDAO('SubmissionSubjectDAO');
            $submissionDisciplineDao = DAORegistry::getDAO('SubmissionDisciplineDAO');
            $submissionAgencyDao = DAORegistry::getDAO('SubmissionAgencyDAO');
            $submissionLanguageDao = DAORegistry::getDAO('SubmissionLanguageDAO');
            $this->_parentForm->setData('subjects', $submissionSubjectDao->getSubjects($submission->getId(), $locales));
            $this->_parentForm->setData('keywords', $submissionKeywordDao->getKeywords($submission->getId(), $locales));
            $this->_parentForm->setData('disciplines', $submissionDisciplineDao->getDisciplines($submission->getId(), $locales));
            $this->_parentForm->setData('agencies', $submissionAgencyDao->getAgencies($submission->getId(), $locales));
            $this->_parentForm->setData('languages', $submissionLanguageDao->getLanguages($submission->getId(), $locales));
            $this->_parentForm->setData('abstractsRequired', $this->_getAbstractsRequired($submission));
        }
    }

Usage Example

 /**
  * Initialize form data from current submission.
  * @param $submission Submission
  */
 function initData($submission)
 {
     parent::initData($submission);
     $seriesDao = DAORegistry::getDAO('SeriesDAO');
     if (isset($submission)) {
         $this->_parentForm->setData('series', $seriesDao->getById($submission->getSeriesId()));
     }
 }