/**
  * Handle a child node of the submission file element; add new files, if
  * any, to $submissionFiles
  * @param $node DOMElement
  * @param $stageId int SUBMISSION_FILE_...
  * @param $submissionFiles array
  */
 function handleChildElement($node, $stageId, &$submissionFiles)
 {
     switch ($node->tagName) {
         case 'caption':
             $submissionFiles[count($submissionFiles) - 1]->setCaption($node->textContent);
             break;
         case 'credit':
             $submissionFiles[count($submissionFiles) - 1]->setCredit($node->textContent);
             break;
         case 'copyright_owner':
             $submissionFiles[count($submissionFiles) - 1]->setCopyrightOwner($node->textContent);
             break;
         case 'copyright_owner_contact':
             $submissionFiles[count($submissionFiles) - 1]->setCopyrightOwnerContact($node->textContent);
             break;
         case 'permission_terms':
             $submissionFiles[count($submissionFiles) - 1]->setPermissionTerms($node->textContent);
             break;
         default:
             return parent::handleChildElement($node, $stageId, $submissionFiles);
     }
 }
 /**
  * Handle a child node of the submission file element; add new files, if
  * any, to $submissionFiles
  * @param $node DOMElement
  * @param $stageId int SUBMISSION_FILE_...
  * @param $fileId int File id
  * @param $submissionFiles array
  */
 function handleChildElement($node, $stageId, $fileId, &$submissionFiles)
 {
     $deployment = $this->getDeployment();
     $submission = $deployment->getSubmission();
     $localizedSetterMappings = $this->_getLocalizedSupplementaryFileSetterMappings();
     if (isset($localizedSetterMappings[$node->tagName])) {
         // If applicable, call a setter for localized content.
         $setterFunction = $localizedSetterMappings[$node->tagName];
         list($locale, $value) = $this->parseLocalizedContent($node);
         if (empty($locale)) {
             $locale = $submission->getLocale();
         }
         $submissionFiles[count($submissionFiles) - 1]->{$setterFunction}($value, $locale);
     } else {
         switch ($node->tagName) {
             case 'date_created':
                 $submissionFiles[count($submissionFiles) - 1]->setDateCreated(strtotime($node->textContent));
                 break;
             case 'language':
                 $submissionFiles[count($submissionFiles) - 1]->setLanguage($node->textContent);
                 break;
             default:
                 parent::handleChildElement($node, $stageId, $fileId, $submissionFiles);
         }
     }
 }