Author: sevein
Date: Fri Aug 12 17:37:29 2011
New Revision: 9490
Log:
Copy i18 objects correctly in rights
Modified:
trunk/apps/qubit/modules/informationobject/actions/editAction.class.php
trunk/plugins/qtAccessionPlugin/modules/accession/actions/addInformationObjectAction.class.php
Modified:
trunk/apps/qubit/modules/informationobject/actions/editAction.class.php
==============================================================================
--- trunk/apps/qubit/modules/informationobject/actions/editAction.class.php
Fri Aug 12 17:08:19 2011 (r9489)
+++ trunk/apps/qubit/modules/informationobject/actions/editAction.class.php
Fri Aug 12 17:37:29 2011 (r9490)
@@ -408,21 +408,29 @@
foreach
(QubitRelation::getRelationsBySubjectId($sourceInformationObject->id,
array('typeId' => QubitTerm::RIGHT_ID)) as $item)
{
- $sourceRight = $sourceRight;
+ $sourceRight = $item->object;
if (false === array_search($this->context->routing->generate(null,
array($sourceRight, 'module' => 'right')), (array)$this->request->deleteRights))
{
$right = new QubitRights;
$right->act = $sourceRight->act;
- $right->restriction = $sourceRight->restriction;
$right->startDate = $sourceRight->startDate;
$right->endDate = $sourceRight->endDate;
- $right->rightsHolder = $sourceRight->rightsHolder;
- $right->rightNote = $sourceRight->rightNote;
$right->basis = $sourceRight->basis;
$right->copyrightStatus = $sourceRight->copyrightStatus;
$right->copyrightStatusDate = $sourceRight->copyrightStatusDate;
$right->copyrightJurisdiction = $sourceRight->copyrightJurisdiction;
+ $right->statuteNote = $sourceRight->statuteNote;
+
+ // Right holder
+ if (isset($sourceRight->rightsHolder))
+ {
+ $right->rightsHolder = $sourceRight->rightsHolder;
+ }
+
+ // I18n
+ $right->restriction = $sourceRight->restriction;
+ $right->rightNote = $sourceRight->rightNote;
$right->copyrightNote = $sourceRight->copyrightNote;
$right->licenseIdentifier = $sourceRight->licenseIdentifier;
$right->licenseTerms = $sourceRight->licenseTerms;
@@ -430,11 +438,10 @@
$right->statuteJurisdiction = $sourceRight->statuteJurisdiction;
$right->statuteCitation = $sourceRight->statuteCitation;
$right->statuteDeterminationDate =
$sourceRight->statuteDeterminationDate;
- $right->statuteNote = $sourceRight->statuteNote;
foreach ($sourceRight->rightsI18ns as $sourceRightI18n)
{
- if ($this->context->user->getCulture() == $sourceRight18n->culture)
+ if ($this->context->user->getCulture() ==
$sourceRightI18n->culture)
{
continue;
}
@@ -449,6 +456,7 @@
$rightI18n->statuteJurisdiction =
$sourceRightI18n->statuteJurisdiction;
$rightI18n->statuteCitation = $sourceRightI18n->statuteCitation;
$rightI18n->statuteNote = $sourceRightI18n->statuteNote;
+ $rightI18n->culture = $sourceRightI18n->culture;
$right->rightsI18ns[] = $rightI18n;
}
Modified:
trunk/plugins/qtAccessionPlugin/modules/accession/actions/addInformationObjectAction.class.php
==============================================================================
---
trunk/plugins/qtAccessionPlugin/modules/accession/actions/addInformationObjectAction.class.php
Fri Aug 12 17:08:19 2011 (r9489)
+++
trunk/plugins/qtAccessionPlugin/modules/accession/actions/addInformationObjectAction.class.php
Fri Aug 12 17:37:29 2011 (r9490)
@@ -43,12 +43,57 @@
// Copy (not link) rights
foreach (QubitRelation::getRelationsBySubjectId($this->resource->id,
array('typeId' => QubitTerm::RIGHT_ID)) as $item)
{
+ $sourceRight = $item->object;
+
$right = new QubitRights;
- $right->startDate = $item->object->startDate;
- $right->endDate = $item->object->endDate;
- $right->act = $item->object->act;
- $right->basis = $item->object->basis;
- $right->copyrightNote = $item->object->copyrightNote;
+ $right->act = $sourceRight->act;
+ $right->startDate = $sourceRight->startDate;
+ $right->endDate = $sourceRight->endDate;
+ $right->basis = $sourceRight->basis;
+ $right->copyrightStatus = $sourceRight->copyrightStatus;
+ $right->copyrightStatusDate = $sourceRight->copyrightStatusDate;
+ $right->copyrightJurisdiction = $sourceRight->copyrightJurisdiction;
+ $right->statuteNote = $sourceRight->statuteNote;
+
+ // Right holder
+ if (isset($sourceRight->rightsHolder))
+ {
+ $right->rightsHolder = $sourceRight->rightsHolder;
+ }
+
+ // I18n
+ $right->restriction = $sourceRight->restriction;
+ $right->rightNote = $sourceRight->rightNote;
+ $right->copyrightNote = $sourceRight->copyrightNote;
+ $right->licenseIdentifier = $sourceRight->licenseIdentifier;
+ $right->licenseTerms = $sourceRight->licenseTerms;
+ $right->licenseNote = $sourceRight->licenseNote;
+ $right->statuteJurisdiction = $sourceRight->statuteJurisdiction;
+ $right->statuteCitation = $sourceRight->statuteCitation;
+ $right->statuteDeterminationDate =
$sourceRight->statuteDeterminationDate;
+
+ foreach ($sourceRight->rightsI18ns as $sourceRightI18n)
+ {
+ if ($this->context->user->getCulture() == $sourceRightI18n->culture)
+ {
+ continue;
+ }
+
+ $rightI18n = new QubitRightsI18n;
+ $rightI18n->restriction = $sourceRightI18n->restriction;
+ $rightI18n->rightNote = $sourceRightI18n->rightNote;
+ $rightI18n->copyrightNote = $sourceRightI18n->copyrightNote;
+ $rightI18n->licenseIdentifier = $sourceRightI18n->licenseIdentifier;
+ $rightI18n->licenseTerms = $sourceRightI18n->licenseTerms;
+ $rightI18n->licenseNote = $sourceRightI18n->licenseNote;
+ $rightI18n->statuteJurisdiction =
$sourceRightI18n->statuteJurisdiction;
+ $rightI18n->statuteCitation = $sourceRightI18n->statuteCitation;
+ $rightI18n->statuteNote = $sourceRightI18n->statuteNote;
+ $rightI18n->culture = $sourceRightI18n->culture;
+
+ $right->rightsI18ns[] = $rightI18n;
+ }
+
$right->save();
$relation = new QubitRelation;
--
You received this message because you are subscribed to the Google Groups
"Qubit Toolkit Commits" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/qubit-commits?hl=en.