當前位置: 首頁>>代碼示例>>PHP>>正文


PHP Track::setTrackId方法代碼示例

本文整理匯總了PHP中Track::setTrackId方法的典型用法代碼示例。如果您正苦於以下問題:PHP Track::setTrackId方法的具體用法?PHP Track::setTrackId怎麽用?PHP Track::setTrackId使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在Track的用法示例。


在下文中一共展示了Track::setTrackId方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。

示例1: handleTrackNode


//.........這裏部分代碼省略.........
     // existing track, but not the same track, throw an error.
     $track = null;
     $foundTrackId = $foundTrackTitle = null;
     $index = 0;
     foreach ($titles as $locale => $title) {
         $track = $trackDao->getTrackByTitle($title, $schedConf->getId());
         if ($track) {
             $trackId = $track->getId();
             if ($foundTrackId) {
                 if ($foundTrackId != $trackId) {
                     // Mismatching tracks found. Throw an error.
                     $errors[] = array('plugins.importexport.native.import.error.trackTitleMismatch', array('track1Title' => $title, 'track2Title' => $foundTrackTitle));
                     return false;
                 }
             } else {
                 if ($index > 0) {
                     // the current title matches, but the prev titles didn't => error
                     $errors[] = array('plugins.importexport.native.import.error.trackTitleMatch', array('trackTitle' => $title));
                     return false;
                 }
             }
             $foundTrackId = $trackId;
             $foundTrackTitle = $title;
         } else {
             if ($foundTrackId) {
                 // a prev title matched, but the current doesn't => error
                 $errors[] = array('plugins.importexport.native.import.error.trackTitleMatch', array('trackTitle' => $foundTrackTitle));
                 return false;
             }
         }
         $index++;
     }
     // check abbrevs:
     $abbrevTrack = null;
     $foundTrackId = $foundTrackAbbrev = null;
     $index = 0;
     foreach ($abbrevs as $locale => $abbrev) {
         $abbrevTrack = $trackDao->getTrackByAbbrev($abbrev, $schedConf->getId());
         if ($abbrevTrack) {
             $trackId = $abbrevTrack->getTrackId();
             if ($foundTrackId) {
                 if ($foundTrackId != $trackId) {
                     // Mismatching tracks found. Throw an error.
                     $errors[] = array('plugins.importexport.native.import.error.trackAbbrevMismatch', array('track1Abbrev' => $abbrev, 'track2Abbrev' => $foundTrackAbbrev));
                     return false;
                 }
             } else {
                 if ($index > 0) {
                     // the current abbrev matches, but the prev abbrevs didn't => error
                     $errors[] = array('plugins.importexport.native.import.error.trackAbbrevMatch', array('trackAbbrev' => $trackAbbrev));
                     return false;
                 }
             }
             $foundTrackId = $trackId;
             $foundTrackAbbrev = $abbrev;
         } else {
             if ($foundTrackId) {
                 // a prev abbrev matched, but the current doesn't => error
                 $errors[] = array('plugins.importexport.native.import.error.trackAbbrevMatch', array('trackAbbrev' => $foundTrackAbbrev));
                 return false;
             }
         }
         $index++;
     }
     if (!$track && !$abbrevTrack) {
         // The track was not matched. Create one.
         // Note that because tracks are global-ish,
         // we're not maintaining a list of created
         // tracks to delete in case the import fails.
         unset($track);
         $track = new Track();
         $track->setTitle($titles, null);
         $track->setAbbrev($abbrevs, null);
         $track->setIdentifyType($identifyTypes, null);
         $track->setPolicy($policies, null);
         $track->setSchedConfId($schedConf->getId());
         $track->setSequence(REALLY_BIG_NUMBER);
         $track->setMetaIndexed(1);
         $track->setEditorRestricted(1);
         $track->setTrackId($trackDao->insertTrack($track));
         $trackDao->resequenceTracks($schedConf > getSchedConfId());
     }
     if (!$track && $abbrevTrack) {
         unset($track);
         $track =& $abbrevTrack;
     }
     // $track *must* now contain a valid track, whether it was
     // found amongst existing tracks or created anew.
     $hasErrors = false;
     for ($index = 0; $node = $trackNode->getChildByName('paper', $index); $index++) {
         if (!NativeImportDom::handlePaperNode($conference, $schedConf, $node, $track, $paper, $publishedPaper, $paperErrors, $user, $isCommandLine, $dependentItems)) {
             $errors = array_merge($errors, $paperErrors);
             $hasErrors = true;
         }
     }
     if ($hasErrors) {
         return false;
     }
     return true;
 }
開發者ID:jalperin,項目名稱:ocs,代碼行數:101,代碼來源:NativeImportDom.inc.php


注:本文中的Track::setTrackId方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。