30 $publication =
Services::get(
'publication')->get($publicationFormat->getData(
'publicationId'));
32 $monograph = $submissionDao->getById($publication->getData(
'submissionId'));
34 $series = $seriesDao->getById($monograph->getSeriesId());
39 $dataObjectTombstoneDao->deleteByDataObjectId($publicationFormat->getId());
41 if (is_a($series,
'Series')) {
42 $setSpec = urlencode($press->getPath()) .
':' . urlencode($series->getPath());
43 $setName = $series->getLocalizedTitle();
45 $setSpec = urlencode($press->getPath());
46 $setName = $press->getLocalizedName();
48 $oaiIdentifier =
'oai:' .
Config::getVar(
'oai',
'repository_id') .
':' .
'publicationFormat/' . $publicationFormat->getId();
49 $OAISetObjectsIds = array(
50 ASSOC_TYPE_PRESS => $monograph->getPressId(),
51 ASSOC_TYPE_SERIES => $monograph->getSeriesId()
54 $publicationFormatTombstone = $dataObjectTombstoneDao->newDataObject();
55 $publicationFormatTombstone->setDataObjectId($publicationFormat->getId());
56 $publicationFormatTombstone->stampDateDeleted();
57 $publicationFormatTombstone->setSetSpec($setSpec);
58 $publicationFormatTombstone->setSetName($setName);
59 $publicationFormatTombstone->setOAIIdentifier($oaiIdentifier);
60 $publicationFormatTombstone->setOAISetObjectsIds($OAISetObjectsIds);
61 $dataObjectTombstoneDao->insertObject($publicationFormatTombstone);
63 if (
HookRegistry::call(
'PublicationFormatTombstoneManager::insertPublicationFormatTombstone', array(&$publicationFormatTombstone, &$publicationFormat, &$press)))
return;
72 foreach($publicationFormats as $publicationFormat) {
83 $submissionsIterator =
Services::get(
'submission')->getMany([
'contextId' => $press->getId(),
'status' => STATUS_PUBLISHED,
'count' => 2000]);
84 foreach ($submissionsIterator as $submission) {
85 foreach ($submission->getData(
'publications') as $publication) {
96 foreach ($publicationFormats as $publicationFormat) {
98 $tombstoneDao->deleteByDataObjectId($publicationFormat->getId());
107 $submissionsIterator =
Services::get(
'submission')->getMany([
'contextId' => $pressId,
'status' => STATUS_PUBLISHED,
'count' => 2000]);
108 foreach ($submissionsIterator as $submission) {
109 foreach ($submission->getData(
'publications') as $publication) {