first commit
This commit is contained in:
@@ -0,0 +1,30 @@
|
||||
{**
|
||||
* templates/reviewer/review/modal/regretMessage.tpl
|
||||
*
|
||||
* Copyright (c) 2014-2021 Simon Fraser University
|
||||
* Copyright (c) 2003-2021 John Willinsky
|
||||
* Distributed under the GNU GPL v3. For full terms see the file docs/COPYING.
|
||||
*
|
||||
* Display a field for reviewers to enter regret messages
|
||||
*
|
||||
*}
|
||||
|
||||
<script type="text/javascript">
|
||||
$(function() {ldelim}
|
||||
// Attach the form handler.
|
||||
$('#declineReviewForm').pkpHandler('$.pkp.controllers.form.AjaxFormHandler');
|
||||
{rdelim});
|
||||
</script>
|
||||
|
||||
<form class="pkp_form" id="declineReviewForm" method="post" action="{url op="saveDeclineReview" path=$submissionId|escape}">
|
||||
{csrf}
|
||||
<p>{translate key="reviewer.submission.declineReviewMessage"}</p>
|
||||
|
||||
{fbvFormArea id="declineReview"}
|
||||
{fbvFormSection}
|
||||
{fbvElement type="textarea" id="declineReviewMessage" value=$declineMessageBody rich=true}
|
||||
{/fbvFormSection}
|
||||
|
||||
{fbvFormButtons submitText="reviewer.submission.declineReview" hideCancel=true}
|
||||
{/fbvFormArea}
|
||||
</form>
|
||||
@@ -0,0 +1,20 @@
|
||||
{**
|
||||
* templates/reviewer/review/reviewCompleted.tpl
|
||||
*
|
||||
* Copyright (c) 2014-2021 Simon Fraser University
|
||||
* Copyright (c) 2003-2021 John Willinsky
|
||||
* Distributed under the GNU GPL v3. For full terms see the file docs/COPYING.
|
||||
*
|
||||
* Show the review completed page.
|
||||
*
|
||||
*}
|
||||
|
||||
<h2>{translate key="reviewer.complete"}</h2>
|
||||
<br />
|
||||
<div class="separator"></div>
|
||||
|
||||
<p>{translate key="reviewer.complete.whatNext"}</p>
|
||||
|
||||
<!-- Display queries grid -->
|
||||
{capture assign="queriesGridUrl"}{url router=\PKP\core\PKPApplication::ROUTE_COMPONENT component="grid.queries.QueriesGridHandler" op="fetchGrid" submissionId=$submission->getId() stageId=$reviewAssignment->getStageId() escape=false}{/capture}
|
||||
{load_url_in_div id="queriesGridComplete" url=$queriesGridUrl}
|
||||
@@ -0,0 +1,57 @@
|
||||
{**
|
||||
* templates/reviewer/review/reviewFormResponse.tpl
|
||||
*
|
||||
* Copyright (c) 2014-2021 Simon Fraser University
|
||||
* Copyright (c) 2003-2021 John Willinsky
|
||||
* Distributed under the GNU GPL v3. For full terms see the file docs/COPYING.
|
||||
*
|
||||
* Review form response components of review form.
|
||||
*}
|
||||
{iterate from=reviewFormElements item=reviewFormElement}
|
||||
{assign var=elementId value=$reviewFormElement->getId()}
|
||||
{assign var=value value=$reviewFormResponses.$elementId}
|
||||
|
||||
{if in_array($reviewFormElement->getElementType(), array($reviewFormElement::REVIEW_FORM_ELEMENT_TYPE_CHECKBOXES, $reviewFormElement::REVIEW_FORM_ELEMENT_TYPE_RADIO_BUTTONS))}
|
||||
{assign var=list value=true}
|
||||
{else}
|
||||
{assign var=list value=false}
|
||||
{/if}
|
||||
|
||||
{fbvFormSection translate=false title=$reviewFormElement->getLocalizedQuestion() list=$list required=$reviewFormElement->getRequired()}
|
||||
{assign var=description value=$reviewFormElement->getLocalizedDescription()}
|
||||
{if $description}<div class="description">{$description}</div>{/if}
|
||||
{if $reviewFormElement->getElementType() == $reviewFormElement::REVIEW_FORM_ELEMENT_TYPE_SMALL_TEXT_FIELD}
|
||||
{fbvElement name="reviewFormResponses[$elementId]" type="text" translate=false id="reviewFormResponses-$elementId" value=$value inline=true size=$fbvStyles.size.SMALL readonly=$disabled}
|
||||
{elseif $reviewFormElement->getElementType() == $reviewFormElement::REVIEW_FORM_ELEMENT_TYPE_TEXT_FIELD}
|
||||
{fbvElement name="reviewFormResponses[$elementId]" type="text" translate=false id="reviewFormResponses-$elementId" value=$value readonly=$disabled}
|
||||
{elseif $reviewFormElement->getElementType() == $reviewFormElement::REVIEW_FORM_ELEMENT_TYPE_TEXTAREA}
|
||||
{fbvElement name="reviewFormResponses[$elementId]" type="textarea" id="reviewFormResponses-$elementId" value=$value readonly=$disabled rows=4 cols=40}
|
||||
{elseif $reviewFormElement->getElementType() == $reviewFormElement::REVIEW_FORM_ELEMENT_TYPE_CHECKBOXES}
|
||||
{assign var=possibleResponses value=$reviewFormElement->getLocalizedPossibleResponses()}
|
||||
{foreach name=responses from=$possibleResponses key=responseId item=responseItem}
|
||||
{assign var=index value=$smarty.foreach.responses.index}
|
||||
{if !empty($reviewFormResponses[$elementId]) && in_array($index, $reviewFormResponses[$elementId])}
|
||||
{assign var=checked value=true}
|
||||
{else}
|
||||
{assign var=checked value=false}
|
||||
{/if}
|
||||
|
||||
{fbvElement type="checkbox" disabled=$disabled name="reviewFormResponses[$elementId][]" id="reviewFormResponses-$elementId-$index" value=$index checked=$checked label=$responseItem translate=false}
|
||||
{/foreach}
|
||||
{elseif $reviewFormElement->getElementType() == $reviewFormElement::REVIEW_FORM_ELEMENT_TYPE_RADIO_BUTTONS}
|
||||
{assign var=possibleResponses value=$reviewFormElement->getLocalizedPossibleResponses()}
|
||||
{foreach name=responses from=$possibleResponses key=responseId item=responseItem}
|
||||
{assign var=index value=$smarty.foreach.responses.index}
|
||||
{if isset($reviewFormResponses[$elementId]) && $index == $reviewFormResponses[$elementId]}
|
||||
{assign var=checked value=true}
|
||||
{else}
|
||||
{assign var=checked value=false}
|
||||
{/if}
|
||||
{fbvElement type="radio" disabled=$disabled name="reviewFormResponses[$elementId]" id="reviewFormResponses-$elementId-$index" value=$index checked=$checked label=$responseItem translate=false}
|
||||
{/foreach}
|
||||
{elseif $reviewFormElement->getElementType() == $reviewFormElement::REVIEW_FORM_ELEMENT_TYPE_DROP_DOWN_BOX}
|
||||
{assign var=possibleResponses value=$reviewFormElement->getLocalizedPossibleResponses()}
|
||||
{fbvElement type="select" subLabelTranslate=false translate=false name="reviewFormResponses[$elementId]" id="reviewFormResponses-$elementId" disabled=$disabled defaultLabel="" defaultValue="" from=$possibleResponses selected=$reviewFormResponses.$elementId size=$fbvStyles.size.MEDIUM}
|
||||
{/if}
|
||||
{/fbvFormSection}
|
||||
{/iterate}
|
||||
@@ -0,0 +1,38 @@
|
||||
{**
|
||||
* templates/reviewer/review/reviewStepHeader.tpl
|
||||
*
|
||||
* Copyright (c) 2014-2021 Simon Fraser University
|
||||
* Copyright (c) 2003-2021 John Willinsky
|
||||
* Distributed under the GNU GPL v3. For full terms see the file docs/COPYING.
|
||||
*
|
||||
* Header for the submission review pages.
|
||||
*}
|
||||
{extends file="layouts/backend.tpl"}
|
||||
|
||||
{block name="page"}
|
||||
<h1 class="app__pageHeading">
|
||||
{$pageTitle}
|
||||
</h1>
|
||||
|
||||
<script type="text/javascript">
|
||||
// Attach the JS file tab handler.
|
||||
$(function() {ldelim}
|
||||
$('#reviewTabs').pkpHandler(
|
||||
'$.pkp.pages.reviewer.ReviewerTabHandler',
|
||||
{ldelim}
|
||||
reviewStep: {$reviewStep|escape},
|
||||
selected: {$selected|escape}
|
||||
{rdelim}
|
||||
);
|
||||
{rdelim});
|
||||
</script>
|
||||
|
||||
<div id="reviewTabs" class="pkp_controllers_tab">
|
||||
<ul>
|
||||
<li><a href="{url op="step" path=$submission->getId() step=1}">{translate key="reviewer.reviewSteps.request"}</a></li>
|
||||
<li><a href="{url op="step" path=$submission->getId() step=2}">{translate key="reviewer.reviewSteps.guidelines"}</a></li>
|
||||
<li><a href="{url op="step" path=$submission->getId() step=3}">{translate key="reviewer.reviewSteps.download"}</a></li>
|
||||
<li><a href="{url op="step" path=$submission->getId() step=4}">{translate key="reviewer.reviewSteps.completion"}</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
{/block}
|
||||
@@ -0,0 +1,102 @@
|
||||
{**
|
||||
* templates/reviewer/review/step1.tpl
|
||||
*
|
||||
* Copyright (c) 2014-2021 Simon Fraser University
|
||||
* Copyright (c) 2003-2021 John Willinsky
|
||||
* Distributed under the GNU GPL v3. For full terms see the file docs/COPYING.
|
||||
*
|
||||
* Show the review step 1 page
|
||||
*
|
||||
*}
|
||||
<script type="text/javascript">
|
||||
$(function() {ldelim}
|
||||
// Attach the form handler.
|
||||
$('#reviewStep1Form').pkpHandler(
|
||||
'$.pkp.controllers.form.AjaxFormHandler'
|
||||
);
|
||||
$('#noCompetingInterests').click(function() {ldelim}
|
||||
$('#reviewerCompetingInterestsContainer').hide(100);
|
||||
{rdelim});
|
||||
$('#hasCompetingInterests').click(function() {ldelim}
|
||||
$('#reviewerCompetingInterestsContainer').show(100);
|
||||
{rdelim});
|
||||
if ({if $reviewerCompetingInterests}0{else}1{/if}) {ldelim}
|
||||
$('#reviewerCompetingInterestsContainer').hide();
|
||||
console.log('HIDING');
|
||||
{rdelim}
|
||||
{rdelim});
|
||||
</script>
|
||||
|
||||
<form class="pkp_form" id="reviewStep1Form" method="post" action="{url page="reviewer" op="saveStep" path=$submission->getId() step="1" escape=false}">
|
||||
{csrf}
|
||||
{include file="controllers/notification/inPlaceNotification.tpl" notificationId="reviewStep1FormNotification"}
|
||||
|
||||
{fbvFormArea id="reviewStep1"}
|
||||
{fbvFormSection title="reviewer.step1.request"}
|
||||
<p>{$reviewerRequest|nl2br}</p>
|
||||
{/fbvFormSection}
|
||||
{fbvFormSection label="submission.title"}
|
||||
{$submission->getLocalizedTitle()|strip_unsafe_html}
|
||||
{/fbvFormSection}
|
||||
{fbvFormSection label=$descriptionFieldKey}
|
||||
{$submission->getLocalizedAbstract()|strip_unsafe_html}
|
||||
{/fbvFormSection}
|
||||
|
||||
{fbvFormSection label="editor.submissionReview.reviewType"}
|
||||
{$reviewMethod|escape}
|
||||
{/fbvFormSection}
|
||||
|
||||
{if !$restrictReviewerFileAccess}
|
||||
{capture assign=reviewFilesGridUrl}{url router=\PKP\core\PKPApplication::ROUTE_COMPONENT component="grid.files.review.ReviewerReviewFilesGridHandler" op="fetchGrid" submissionId=$submission->getId() stageId=$reviewAssignment->getStageId() reviewRoundId=$reviewRoundId reviewAssignmentId=$reviewAssignment->getId() escape=false}{/capture}
|
||||
{load_url_in_div id="reviewFilesStep1" url=$reviewFilesGridUrl}
|
||||
{/if}
|
||||
|
||||
<div class="pkp_linkActions">
|
||||
{include file="linkAction/linkAction.tpl" action=$viewMetadataAction contextId="reviewStep1Form"}
|
||||
</div>
|
||||
<br /><br />
|
||||
|
||||
{fbvFormSection title="reviewer.submission.reviewSchedule"}
|
||||
{fbvElement type="text" id="dateNotified" label="reviewer.submission.reviewRequestDate" value=$reviewAssignment->getDateNotified()|date_format:$dateFormatShort readonly=true inline=true size=$fbvStyles.size.SMALL}
|
||||
{fbvElement type="text" id="responseDue" label="reviewer.submission.responseDueDate" value=$reviewAssignment->getDateResponseDue()|date_format:$dateFormatShort readonly=true inline=true size=$fbvStyles.size.SMALL}
|
||||
{fbvElement type="text" id="dateDue" label="reviewer.submission.reviewDueDate" value=$reviewAssignment->getDateDue()|date_format:$dateFormatShort readonly=true inline=true size=$fbvStyles.size.SMALL}
|
||||
{/fbvFormSection}
|
||||
<br /><br />
|
||||
<div class="pkp_linkActions">
|
||||
{include file="linkAction/linkAction.tpl" action=$aboutDueDatesAction contextId="reviewStep1"}
|
||||
</div>
|
||||
<br /><br />
|
||||
{if $competingInterestsAction}
|
||||
{fbvFormSection label="reviewer.submission.competingInterests" description="reviewer.submission.enterCompetingInterests"}
|
||||
<div class="pkp_linkActions">
|
||||
{include file="linkAction/linkAction.tpl" action=$competingInterestsAction contextId="reviewStep1"}
|
||||
</div>
|
||||
{/fbvFormSection}
|
||||
{/if}
|
||||
|
||||
{if $currentContext->getData('competingInterests')}
|
||||
{fbvFormSection list=true}
|
||||
{fbvElement type="radio" value="noCompetingInterests" id="noCompetingInterests" name="competingInterestOption" checked=!$reviewerCompetingInterests label="reviewer.submission.noCompetingInterests" disabled=$reviewIsClosed}
|
||||
{fbvElement type="radio" value="hasCompetingInterests" id="hasCompetingInterests" name="competingInterestOption" checked=!!$reviewerCompetingInterests label="reviewer.submission.hasCompetingInterests" disabled=$reviewIsClosed}
|
||||
{/fbvFormSection}
|
||||
|
||||
{fbvFormSection id="reviewerCompetingInterestsContainer"}
|
||||
{fbvElement type="textarea" name="reviewerCompetingInterests" id="reviewerCompetingInterests" value=$reviewerCompetingInterests size=$fbvStyles.size.MEDIUM disabled=$reviewIsClosed rich=true}
|
||||
{/fbvFormSection}
|
||||
{/if}
|
||||
|
||||
{if !$reviewAssignment->getDateConfirmed() && $currentContext->getData('privacyStatement')}
|
||||
{fbvFormSection list=true}
|
||||
{capture assign="privacyUrl"}{url router=\PKP\core\PKPApplication::ROUTE_PAGE page="about" op="privacy"}{/capture}
|
||||
{capture assign="privacyLabel"}{translate key="user.register.form.privacyConsent" privacyUrl=$privacyUrl}{/capture}
|
||||
{fbvElement type="checkbox" id="privacyConsent" required=true value=1 label=$privacyLabel translate=false checked=$privacyConsent}
|
||||
{/fbvFormSection}
|
||||
{/if}
|
||||
|
||||
{if $reviewAssignment->getDateConfirmed()}
|
||||
{fbvFormButtons hideCancel=true submitText="common.saveAndContinue" submitDisabled=$reviewIsClosed}
|
||||
{elseif !$reviewAssignment->getDateConfirmed()}
|
||||
{fbvFormButtons submitText="reviewer.submission.acceptReview" cancelText="reviewer.submission.declineReview" cancelAction=$declineReviewAction submitDisabled=$reviewIsClosed}
|
||||
{/if}
|
||||
{/fbvFormArea}
|
||||
</form>
|
||||
@@ -0,0 +1,32 @@
|
||||
{**
|
||||
* templates/reviewer/review/step2.tpl
|
||||
*
|
||||
* Copyright (c) 2014-2021 Simon Fraser University
|
||||
* Copyright (c) 2003-2021 John Willinsky
|
||||
* Distributed under the GNU GPL v3. For full terms see the file docs/COPYING.
|
||||
*
|
||||
* Show the step 2 review page
|
||||
*
|
||||
*}
|
||||
<script type="text/javascript">
|
||||
$(function() {ldelim}
|
||||
// Attach the form handler.
|
||||
$('#reviewStep2Form').pkpHandler(
|
||||
'$.pkp.controllers.form.AjaxFormHandler'
|
||||
);
|
||||
{rdelim});
|
||||
</script>
|
||||
|
||||
<form class="pkp_form" id="reviewStep2Form" method="post" action="{url page="reviewer" op="saveStep" path=$submission->getId() step="2" escape=false}">
|
||||
{csrf}
|
||||
{include file="controllers/notification/inPlaceNotification.tpl" notificationId="reviewStep2FormNotification"}
|
||||
|
||||
{fbvFormArea id="reviewStep2"}
|
||||
{fbvFormSection label="reviewer.submission.reviewerGuidelines"}
|
||||
<p>{$reviewerGuidelines}</p>
|
||||
{/fbvFormSection}
|
||||
|
||||
{capture assign=cancelUrl}{url page="reviewer" op="submission" path=$submission->getId() step=1 escape=false}{/capture}
|
||||
{fbvFormButtons submitText="reviewer.submission.continueToStepThree" cancelText="navigation.goBack" cancelUrl=$cancelUrl cancelUrlTarget="_self" submitDisabled=$reviewIsClosed}
|
||||
{/fbvFormArea}
|
||||
</form>
|
||||
@@ -0,0 +1,71 @@
|
||||
{**
|
||||
* templates/reviewer/review/step3.tpl
|
||||
*
|
||||
* Copyright (c) 2014-2021 Simon Fraser University
|
||||
* Copyright (c) 2003-2021 John Willinsky
|
||||
* Distributed under the GNU GPL v3. For full terms see the file docs/COPYING.
|
||||
*
|
||||
* Show the step 3 review page
|
||||
*}
|
||||
<script type="text/javascript">
|
||||
$(function() {ldelim}
|
||||
// Attach the form handler.
|
||||
$('#reviewStep3Form').pkpHandler(
|
||||
'$.pkp.controllers.form.reviewer.ReviewerReviewStep3FormHandler'
|
||||
);
|
||||
{rdelim});
|
||||
</script>
|
||||
|
||||
<form class="pkp_form" id="reviewStep3Form" method="post" action="{url op="saveStep" path=$submission->getId() step="3"}">
|
||||
<input type="hidden" name="isSave" />{* @see ReviewerReviewStep3FormHandler.js *}
|
||||
{csrf}
|
||||
{include file="controllers/notification/inPlaceNotification.tpl" notificationId="reviewStep3FormNotification"}
|
||||
|
||||
{fbvFormArea id="reviewStep3"}
|
||||
|
||||
{capture assign="reviewFilesGridUrl"}{url router=\PKP\core\PKPApplication::ROUTE_COMPONENT component="grid.files.review.ReviewerReviewFilesGridHandler" op="fetchGrid" submissionId=$submission->getId() stageId=$reviewAssignment->getStageId() reviewRoundId=$reviewRoundId reviewAssignmentId=$reviewAssignment->getId() escape=false}{/capture}
|
||||
{load_url_in_div id="reviewFilesStep3" url=$reviewFilesGridUrl}
|
||||
|
||||
{if $viewGuidelinesAction}
|
||||
{fbvFormSection title="reviewer.submission.reviewerGuidelines"}
|
||||
<div id="viewGuidelines">
|
||||
{include file="linkAction/linkAction.tpl" action=$viewGuidelinesAction contextId="viewGuidelines"}
|
||||
</div>
|
||||
{/fbvFormSection}
|
||||
{/if}
|
||||
|
||||
{if $reviewForm}
|
||||
{fbvFormSection}
|
||||
<h3>{$reviewForm->getLocalizedTitle()|escape}</h3>
|
||||
<p>{$reviewForm->getLocalizedDescription()}</p>
|
||||
|
||||
{include file="reviewer/review/reviewFormResponse.tpl"}
|
||||
{/fbvFormSection}
|
||||
{else}
|
||||
{fbvFormSection label="submission.review" description="reviewer.submission.reviewDescription"}
|
||||
{fbvFormSection label="submission.comments.canShareWithAuthor"}
|
||||
{fbvElement type="textarea" id="comments" name="comments" value=$comments readonly=$reviewIsClosed rich=true}
|
||||
{/fbvFormSection}
|
||||
{fbvFormSection label="submission.comments.cannotShareWithAuthor"}
|
||||
{fbvElement type="textarea" id="commentsPrivate" name="commentsPrivate" value=$commentsPrivate readonly=$reviewIsClosed rich=true}
|
||||
{/fbvFormSection}
|
||||
{/fbvFormSection}
|
||||
{/if}
|
||||
|
||||
{fbvFormSection label="common.upload" description="reviewer.submission.uploadDescription"}
|
||||
{capture assign="reviewAttachmentsGridUrl"}{url router=\PKP\core\PKPApplication::ROUTE_COMPONENT component="grid.files.attachment.ReviewerReviewAttachmentsGridHandler" op="fetchGrid" assocType=$smarty.const.ASSOC_TYPE_REVIEW_ASSIGNMENT assocId=$reviewAssignment->getId() submissionId=$submission->getId() stageId=$reviewAssignment->getStageId() reviewIsClosed=$reviewIsClosed escape=false}{/capture}
|
||||
{load_url_in_div id="reviewAttachmentsGridContainer" url=$reviewAttachmentsGridUrl}
|
||||
{/fbvFormSection}
|
||||
|
||||
<!-- Display queries grid -->
|
||||
{capture assign="queriesGridUrl"}{url router=\PKP\core\PKPApplication::ROUTE_COMPONENT component="grid.queries.QueriesGridHandler" op="fetchGrid" submissionId=$submission->getId() stageId=$smarty.const.WORKFLOW_STAGE_ID_EXTERNAL_REVIEW escape=false}{/capture}
|
||||
{load_url_in_div id="queriesGrid" url=$queriesGridUrl}
|
||||
|
||||
{$additionalFormFields}
|
||||
|
||||
{capture assign="cancelUrl"}{url page="reviewer" op="submission" path=$submission->getId() step=2 escape=false}{/capture}
|
||||
{fbvFormButtons submitText="reviewer.submission.submitReview" confirmSubmit="reviewer.confirmSubmit" saveText="reviewer.submission.saveReviewForLater" cancelText="navigation.goBack" cancelUrl=$cancelUrl cancelUrlTarget="_self" submitDisabled=$reviewIsClosed}
|
||||
{/fbvFormArea}
|
||||
|
||||
<p><span class="formRequired">{translate key="common.requiredField"}</span></p>
|
||||
</form>
|
||||
Reference in New Issue
Block a user