Skip to content

Commit

Permalink
*6701* Attempt to remove article cover image leads to 404
Browse files Browse the repository at this point in the history
  • Loading branch information
mfelczak committed Jun 23, 2011
1 parent 260286a commit 94be24c
Show file tree
Hide file tree
Showing 8 changed files with 60 additions and 40 deletions.
23 changes: 23 additions & 0 deletions classes/submission/sectionEditor/SectionEditorAction.inc.php
Original file line number Diff line number Diff line change
Expand Up @@ -606,6 +606,29 @@ function setDueDate($articleId, $reviewId, $dueDate, $numWeeks, $logEntry, $requ
}
}

/**
* Remove cover page from article
* @param $submission object
* @param $formLocale string
* @return boolean true iff ready for redirect
*/
function removeArticleCoverPage($submission, $formLocale) {
$journal =& Request::getJournal();

import('classes.file.PublicFileManager');
$publicFileManager = new PublicFileManager();
$publicFileManager->removeJournalFile($journal->getId(),$submission->getFileName($formLocale));
$submission->setFileName('', $formLocale);
$submission->setOriginalFileName('', $formLocale);
$submission->setWidth('', $formLocale);
$submission->setHeight('', $formLocale);

$articleDao =& DAORegistry::getDAO('ArticleDAO');
$articleDao->updateArticle($submission);

return true;
}

/**
* Notifies an author that a submission was unsuitable.
* @param $sectionEditorSubmission object
Expand Down
9 changes: 7 additions & 2 deletions pages/author/TrackSubmissionHandler.inc.php
Original file line number Diff line number Diff line change
Expand Up @@ -371,10 +371,15 @@ function saveMetadata($args, $request) {
/**
* Remove cover page from article
*/
function removeCoverPage($args, $request) {
function removeArticleCoverPage($args, $request) {
$articleId = (int) array_shift($args);
$formLocale = array_shift($args);
$this->validate($request, $articleId);

$formLocale = array_shift($args);
if (!Locale::isLocaleValid($formLocale)) {
$request->redirect(null, null, 'viewMetadata', $articleId);
}

$submission =& $this->submission;
$journal =& $request->getJournal();

Expand Down
5 changes: 1 addition & 4 deletions pages/copyeditor/CopyeditorHandler.inc.php
Original file line number Diff line number Diff line change
Expand Up @@ -12,10 +12,7 @@
* @brief Handle requests for copyeditor functions.
*/

// $Id$


import ('classes.submission.copyeditor.CopyeditorAction');
import('classes.submission.copyeditor.CopyeditorAction');
import('classes.handler.Handler');

class CopyeditorHandler extends Handler {
Expand Down
25 changes: 10 additions & 15 deletions pages/copyeditor/SubmissionCopyeditHandler.inc.php
Original file line number Diff line number Diff line change
Expand Up @@ -277,25 +277,20 @@ function saveMetadata($args, &$request) {
/**
* Remove cover page from article
*/
function removeCoverPage($args) {
function removeArticleCoverPage($args, &$request) {
$articleId = isset($args[0]) ? (int)$args[0] : 0;
$formLocale = $args[1];
$this->validate($articleId);
$submission =& $this->submission;
$journal =& Request::getJournal();

import('classes.file.PublicFileManager');
$publicFileManager = new PublicFileManager();
$publicFileManager->removeJournalFile($journal->getId(),$submission->getFileName($formLocale));
$submission->setFileName('', $formLocale);
$submission->setOriginalFileName('', $formLocale);
$submission->setWidth('', $formLocale);
$submission->setHeight('', $formLocale);

$articleDao =& DAORegistry::getDAO('ArticleDAO');
$articleDao->updateArticle($submission);
$formLocale = $args[1];
if (!Locale::isLocaleValid($formLocale)) {
$request->redirect(null, null, 'viewMetadata', $articleId);
}

Request::redirect(null, null, 'viewMetadata', $articleId);
$submission =& $this->submission;
import('classes.submission.sectionEditor.SectionEditorAction');
if (SectionEditorAction::removeArticleCoverPage($submission, $formLocale)) {
$request->redirect(null, null, 'viewMetadata', $articleId);
}
}


Expand Down
11 changes: 8 additions & 3 deletions pages/editor/IssueManagementHandler.inc.php
Original file line number Diff line number Diff line change
Expand Up @@ -247,14 +247,19 @@ function editIssue($args, $request) {
/**
* Remove cover page from issue
*/
function removeCoverPage($args, $request) {
function removeIssueCoverPage($args, $request) {
$issueId = (int) array_shift($args);
$formLocale = array_shift($args);
$this->validate($issueId, true);

$formLocale = array_shift($args);
if (!Locale::isLocaleValid($formLocale)) {
$request->redirect(null, null, 'issueData', $issueId);
}

$journal =& $request->getJournal();
$issue =& $this->issue;

import('classes.file.PublicFileManager');
$journal =& $request->getJournal();
$publicFileManager = new PublicFileManager();
$publicFileManager->removeJournalFile($journal->getId(),$issue->getFileName($formLocale));
$issue->setFileName('', $formLocale);
Expand Down
2 changes: 1 addition & 1 deletion pages/editor/index.php
Original file line number Diff line number Diff line change
Expand Up @@ -171,7 +171,7 @@
case 'saveIssue':
case 'issueData':
case 'editIssue':
case 'removeCoverPage':
case 'removeIssueCoverPage':
case 'removeStyleFile':
case 'issueGalleys':
case 'uploadIssueGalley':
Expand Down
23 changes: 9 additions & 14 deletions pages/sectionEditor/SubmissionEditHandler.inc.php
Original file line number Diff line number Diff line change
Expand Up @@ -876,24 +876,19 @@ function saveMetadata($args, &$request) {
/**
* Remove cover page from article
*/
function removeCoverPage($args) {
function removeArticleCoverPage($args, &$request) {
$articleId = isset($args[0]) ? (int)$args[0] : 0;
$formLocale = $args[1];
$this->validate($articleId);
$submission =& $this->submission;

import('classes.file.PublicFileManager');
$publicFileManager = new PublicFileManager();
$publicFileManager->removeJournalFile($journal->getId(),$submission->getFileName($formLocale));
$submission->setFileName('', $formLocale);
$submission->setOriginalFileName('', $formLocale);
$submission->setWidth('', $formLocale);
$submission->setHeight('', $formLocale);

$articleDao =& DAORegistry::getDAO('ArticleDAO');
$articleDao->updateArticle($submission);
$formLocale = $args[1];
if (!Locale::isLocaleValid($formLocale)) {
$request->redirect(null, null, 'viewMetadata', $articleId);
}

Request::redirect(null, null, 'viewMetadata', $articleId);
$submission =& $this->submission;
if (SectionEditorAction::removeArticleCoverPage($submission, $formLocale)) {
$request->redirect(null, null, 'viewMetadata', $articleId);
}
}

//
Expand Down
2 changes: 1 addition & 1 deletion templates/editor/issues/issueData.tpl
Original file line number Diff line number Diff line change
Expand Up @@ -148,7 +148,7 @@
</tr>
<tr valign="top">
<td width="20%" class="label">{fieldLabel name="coverPage" key="editor.issues.coverPage"}</td>
<td width="80%" class="value"><input type="file" name="coverPage" id="coverPage" class="uploadField" />&nbsp;&nbsp;{translate key="form.saveToUpload"}<br />{translate key="editor.issues.coverPageInstructions"}<br />{translate key="editor.issues.uploaded"}:&nbsp;{if $fileName[$formLocale] }<a href="javascript:openWindow('{$publicFilesDir}/{$fileName[$formLocale]|escape:"url"}');" class="file">{$originalFileName[$formLocale]}</a>&nbsp;<a href="{url op="removeCoverPage" path=$issueId|to_array:$formLocale}" onclick="return confirm('{translate|escape:"jsparam" key="editor.issues.removeCoverPage"}')">{translate key="editor.issues.remove"}</a>{else}&mdash;{/if}</td>
<td width="80%" class="value"><input type="file" name="coverPage" id="coverPage" class="uploadField" />&nbsp;&nbsp;{translate key="form.saveToUpload"}<br />{translate key="editor.issues.coverPageInstructions"}<br />{translate key="editor.issues.uploaded"}:&nbsp;{if $fileName[$formLocale] }<a href="javascript:openWindow('{$publicFilesDir}/{$fileName[$formLocale]|escape:"url"}');" class="file">{$originalFileName[$formLocale]}</a>&nbsp;<a href="{url op="removeIssueCoverPage" path=$issueId|to_array:$formLocale}" onclick="return confirm('{translate|escape:"jsparam" key="editor.issues.removeCoverPage"}')">{translate key="editor.issues.remove"}</a>{else}&mdash;{/if}</td>
</tr>
<tr valign="top">
<td width="20%" class="label">{fieldLabel name="coverPageAltText" key="common.altText"}</td>
Expand Down

0 comments on commit 94be24c

Please sign in to comment.