Esempio n. 1
0
 /**
  * Save track.
  */
 function execute()
 {
     $schedConf =& Request::getSchedConf();
     $trackDao =& DAORegistry::getDAO('TrackDAO');
     if (isset($this->trackId)) {
         $track =& $trackDao->getTrack($this->trackId);
     }
     if (!isset($track)) {
         $track = new Track();
         $track->setSchedConfId($schedConf->getId());
         $track->setSequence(REALLY_BIG_NUMBER);
     }
     $track->setTitle($this->getData('title'), null);
     // Localized
     $track->setAbbrev($this->getData('abbrev'), null);
     // Localized
     $reviewFormId = $this->getData('reviewFormId');
     if ($reviewFormId === '') {
         $reviewFormId = null;
     }
     $track->setReviewFormId($reviewFormId);
     $track->setMetaReviewed($this->getData('metaNotReviewed') ? 0 : 1);
     $track->setIdentifyType($this->getData('identifyType'), null);
     // Localized
     $track->setDirectorRestricted($this->getData('directorRestriction') ? 1 : 0);
     $track->setPolicy($this->getData('policy'), null);
     // Localized
     $track->setHideAbout($this->getData('hideAbout'));
     $track->setDisableComments($this->getData('disableComments') ? 1 : 0);
     $track->setAbstractWordCount($this->getData('wordCount'));
     if ($track->getId() != null) {
         $trackDao->updateTrack($track);
         $trackId = $track->getId();
     } else {
         $trackId = $trackDao->insertTrack($track);
         $trackDao->resequenceTracks($schedConf->getId());
     }
     // Save assigned directors
     $trackDirectorsDao =& DAORegistry::getDAO('TrackDirectorsDAO');
     $trackDirectorsDao->deleteDirectorsByTrackId($trackId, $schedConf->getId());
     $directors = explode(':', Request::getUserVar('assignedDirectors'));
     foreach ($directors as $edUserId) {
         if (!empty($edUserId)) {
             $trackDirectorsDao->insertDirector($schedConf->getId(), $trackId, $edUserId);
         }
     }
 }
Esempio n. 2
0
 /**
  * Internal function to return a Track object from a row.
  * @param $row array
  * @return Track
  */
 function &_returnTrackFromRow(&$row)
 {
     $track = new Track();
     $track->setId($row['track_id']);
     $track->setSchedConfId($row['sched_conf_id']);
     $track->setReviewFormId($row['review_form_id']);
     $track->setSequence($row['seq']);
     $track->setMetaReviewed($row['meta_reviewed']);
     $track->setDirectorRestricted($row['director_restricted']);
     $track->setHideAbout($row['hide_about']);
     $track->setDisableComments($row['disable_comments']);
     $track->setAbstractWordCount($row['abstract_word_count']);
     $this->getDataObjectSettings('track_settings', 'track_id', $row['track_id'], $track);
     HookRegistry::call('TrackDAO::_returnTrackFromRow', array(&$track, &$row));
     return $track;
 }