Hawk
March 10, 2019, 6:25pm
1
Hi, i’m new to the OJS so please forgive me if it is an obvious question
When i access the crossref plugin to register any unregistered articles or maybe download the XML files it doesn’t work … whenever i click on download or register it takes me back to the previous page where i click on Manage DOIs again … it’s an endless cycle never working
What should i do?
Hawk
March 11, 2019, 6:20am
2
I noted that when i try to do anything t takes me back to the previous page and give me this message
Notification
An error occured updating this submission’s data in Dataverse.
The oddity of the notification error referencing Dataverse instead of Crossref was fixed in 2.4.8-2.
https://github.com/pkp/pkp-lib/issues/1894
The behavior you are describing (redirecting back to the plugin index) is almost certainly the result of this code:
// Redirect to the index page.
if ($result !== true) {
if (is_array($result)) {
foreach($result as $error) {
assert(is_array($error) && count($error) >= 1);
$this->_sendNotification(
$request,
$error[0],
NOTIFICATION_TYPE_ERROR,
(isset($error[1]) ? $error[1] : null)
);
}
}
$path = array('plugin', $this->getName());
$request->redirect(null, null, null, $path);
}
That means that these calls are failing:
$exportSpec[$exportType] = $objectIds;
}
}
} else {
assert(isset($objectTypes[$target]));
$exportSpec = array($objectTypes[$target] => (array) $request->getUserVar($target . 'Id'));
}
if ($request->getUserVar('export')) {
// Export selected objects.
$result = $this->exportObjects($request, $exportSpec, $journal);
} elseif ($request->getUserVar('markRegistered')) {
foreach($exportSpec as $exportType => $objectIds) {
// Normalize the object id(s) into an array.
if (is_scalar($objectIds)) $objectIds = array($objectIds);
// Retrieve the object(s).
$objects =& $this->_getObjectsFromIds($exportType, $objectIds, $journal->getId(), $errors);
$this->processMarkRegistered($request, $exportType, $objects, $journal);
}
// Redisplay the changed object list.
$listAction = $target . ($target == 'all' ? '' : 's');
and/or
// Redisplay the changed object list.
$listAction = $target . ($target == 'all' ? '' : 's');
$request->redirect(
null, null, null,
array('plugin', $this->getName(), $listAction),
($this->isTestMode($request) ? array('testMode' => 1) : null)
);
break;
} else { // Register selected objects.
assert($request->getUserVar('register'));
$result = $this->registerObjects($request, $exportSpec, $journal);
// Provide the user with some visual feedback that
// registration was successful.
if ($result === true) {
$this->_sendNotification(
$request,
'plugins.importexport.'.$this->getPluginId() .'.register.success',
NOTIFICATION_TYPE_SUCCESS
);
If you upgrade to 2.4.8-2 or later, you will get additional detail on what is failing.
Hawk
April 2, 2019, 6:19am
4
thanx for replying , i got this fixed there was a permission error from the admin side so it’s working now…
What’s not working is the automatic registeration