first commit

This commit is contained in:
CHIEFSOFT\ameye
2024-06-08 17:09:23 -04:00
commit df3a033196
17887 changed files with 8637778 additions and 0 deletions
+27
View File
@@ -0,0 +1,27 @@
{**
* templates/submission/complete.tpl
*
* Copyright (c) 2014-2022 Simon Fraser University
* Copyright (c) 2003-2022 John Willinsky
* Distributed under the GNU GPL v3. For full terms see the file docs/COPYING.
*
* The page shown to the user when they submit their submission.
*}
{extends file="layouts/backend.tpl"}
{block name="page"}
<h1 class="app__pageHeading app__pageHeading--center app__pageHeading--spacious">
{translate key="submission.submit.submissionComplete"}
</h1>
<div class="app__contentPanel">
<p>{translate key="submission.submit.whatNext.description"}</p>
<p>{translate key="submission.submit.whatNext.forNow"}</p>
<ul>
<li><a href={$workflowUrl}>{translate key="submission.submit.whatNext.review"}</a></li>
<li><a href={url page="submission"}>{translate key="submission.submit.whatNext.create"}</a></li>
<li><a href={url page="submissions"}>{translate key="submission.submit.whatNext.return"}</a></li>
</ul>
</div>
{/block}
@@ -0,0 +1,72 @@
{**
* templates/submission/review-contributors-step.tpl
*
* Copyright (c) 2014-2022 Simon Fraser University
* Copyright (c) 2003-2022 John Willinsky
* Distributed under the GNU GPL v3. For full terms see the file docs/COPYING.
*
* The template in the submission wizard when reviewing the contributors step.
*}
<div class="submissionWizard__reviewPanel">
<div class="submissionWizard__reviewPanel__header">
<h3 id="review{$step.id|escape}">
{$step.reviewName|escape}
</h3>
<pkp-button
aria-describedby="review{$step.id|escape}"
class="submissionWizard__reviewPanel__edit"
@click="openStep('{$step.id|escape}')"
>
{translate key="common.edit"}
</pkp-button>
</div>
<div
class="
submissionWizard__reviewPanel__body
submissionWizard__reviewPanel__body--{$step.id|escape}
"
>
<notification v-if="!publication.authors.length" type="warning" class="submissionWizard__reviewEmptyWarning">
<icon icon="exclamation-triangle" :inline="true"></icon>
{translate key="submission.wizard.noContributors"}
</notification>
<ul
v-else
class="submissionWizard__reviewPanel__list"
>
<li
v-for="(error, i) in errors.contributors"
:key="i"
>
<notification type="warning">
<icon icon="exclamation-triangle" :inline="true"></icon>
{{ error }}
</notification>
</li>
<li
v-for="author in publication.authors"
:key="author.id"
class="submissionWizard__reviewPanel__item__value"
>
<span
class="submissionWizard__reviewPanel__list__name"
>
{{ getAuthorName(author) }}
</span>
<span
class="submissionWizard__reviewPanel__list__actions"
>
<badge
v-if="publication.primaryContactId === author.id"
:is-primary="true"
>
{translate key="author.users.contributor.principalContact"}
</badge>
<badge>{{ localize(author.userGroupName) }}</badge>
</span>
</li>
{call_hook name="Template::SubmissionWizard::Section::Review::Contributors" submission=$submission step=$step.id}
</ul>
</div>
</div>
@@ -0,0 +1,74 @@
{**
* templates/submission/review-details-step.tpl
*
* Copyright (c) 2014-2022 Simon Fraser University
* Copyright (c) 2003-2022 John Willinsky
* Distributed under the GNU GPL v3. For full terms see the file docs/COPYING.
*
* The template in the submission wizard when reviewing the details step.
*}
{foreach from=$locales item=$locale key=$localeKey}
<div class="submissionWizard__reviewPanel">
<div class="submissionWizard__reviewPanel__header">
<h3 id="review{$step.id|escape}">
{if count($locales) > 1}
{translate key="common.withParenthesis" item=$step.reviewName|escape inParenthesis=$locale}
{else}
{$step.reviewName|escape}
{/if}
</h3>
<pkp-button
aria-describedby="review{$step.id|escape}"
class="submissionWizard__reviewPanel__edit"
@click="openStep('{$step.id|escape}')"
>
{translate key="common.edit"}
</pkp-button>
</div>
<div
class="
submissionWizard__reviewPanel__body
submissionWizard__reviewPanel__body--{$step.id|escape}
"
>
{include file="/submission/review-publication-field.tpl" prop="title" inLocale=$localeKey name="{translate key="common.title"}" type="html"}
{if in_array($currentContext->getData('keywords'), [$currentContext::METADATA_REQUEST, $currentContext::METADATA_REQUIRE])}
{include file="/submission/review-publication-field.tpl" prop="keywords" inLocale=$localeKey name="{translate key="common.keywords"}" type="array"}
{/if}
{include file="/submission/review-publication-field.tpl" prop="abstract" inLocale=$localeKey name="{translate key="common.abstract"}" type="html"}
{if in_array($currentContext->getData('citations'), [$currentContext::METADATA_REQUEST, $currentContext::METADATA_REQUIRE])}
{if $localeKey === $submission->getData('locale')}
<div class="submissionWizard__reviewPanel__item">
<template v-if="errors.citationsRaw">
<notification
v-for="(error, i) in errors.citationsRaw"
:key="i"
type="warning"
>
<icon icon="exclamation-triangle"></icon>
{{ error }}
</notification>
</template>
<h4 class="submissionWizard__reviewPanel__item__header">
{translate key="submission.citations"}
</h4>
<div class="submissionWizard__reviewPanel__item__value">
<template v-if="!publication.citationsRaw">
{translate key="common.noneProvided"}
</template>
<div
v-else
v-for="(citation, index) in publication.citationsRaw.trim().split(/(?:\r\n|\r|\n)/g).filter(c => c)"
:key="index"
class="submissionWizard__reviewPanel__citation"
>
{{ citation }}
</div>
</div>
</div>
{/if}
{/if}
{call_hook name="Template::SubmissionWizard::Section::Review::Details" submission=$submission step=$step.id}
</div>
</div>
{/foreach}
@@ -0,0 +1,103 @@
{**
* templates/submission/review-editors-step.tpl
*
* Copyright (c) 2014-2022 Simon Fraser University
* Copyright (c) 2003-2022 John Willinsky
* Distributed under the GNU GPL v3. For full terms see the file docs/COPYING.
*
* The template in the submission wizard when reviewing the For the Editors step.
*}
{foreach from=$locales item=$locale key=$localeKey}
<div class="submissionWizard__reviewPanel">
<div class="submissionWizard__reviewPanel__header">
<h3 id="review{$step.id|escape}">
{if count($locales) > 1}
{translate key="common.withParenthesis" item=$step.reviewName|escape inParenthesis=$locale}
{else}
{$step.reviewName|escape}
{/if}
</h3>
<pkp-button
aria-describedby="review{$step.id|escape}"
class="submissionWizard__reviewPanel__edit"
@click="openStep('{$step.id|escape}')"
>
{translate key="common.edit"}
</pkp-button>
</div>
<div
class="
submissionWizard__reviewPanel__body
submissionWizard__reviewPanel__body--{$step.id|escape}
"
>
{if in_array($currentContext->getData('subjects'), [$currentContext::METADATA_REQUEST, $currentContext::METADATA_REQUIRE])}
{include file="/submission/review-publication-field.tpl" prop="subjects" inLocale=$localeKey name="{translate key="common.subjects"}" type="array"}
{/if}
{if in_array($currentContext->getData('disciplines'), [$currentContext::METADATA_REQUEST, $currentContext::METADATA_REQUIRE])}
{include file="/submission/review-publication-field.tpl" prop="disciplines" inLocale=$localeKey name="{translate key="search.discipline"}" type="array"}
{/if}
{if in_array($currentContext->getData('languages'), [$currentContext::METADATA_REQUEST, $currentContext::METADATA_REQUIRE])}
{include file="/submission/review-publication-field.tpl" prop="languages" inLocale=$localeKey name="{translate key="common.languages"}" type="array"}
{/if}
{if in_array($currentContext->getData('agencies'), [$currentContext::METADATA_REQUEST, $currentContext::METADATA_REQUIRE])}
{include file="/submission/review-publication-field.tpl" prop="supportingAgencies" inLocale=$localeKey name="{translate key="submission.supportingAgencies"}" type="array"}
{/if}
{if in_array($currentContext->getData('coverage'), [$currentContext::METADATA_REQUEST, $currentContext::METADATA_REQUIRE])}
{include file="/submission/review-publication-field.tpl" prop="coverage" inLocale=$localeKey name="{translate key="manager.setup.metadata.coverage"}" type="string"}
{/if}
{if in_array($currentContext->getData('rights'), [$currentContext::METADATA_REQUEST, $currentContext::METADATA_REQUIRE])}
{include file="/submission/review-publication-field.tpl" prop="rights" inLocale=$localeKey name="{translate key="submission.rights"}" type="string"}
{/if}
{if in_array($currentContext->getData('source'), [$currentContext::METADATA_REQUEST, $currentContext::METADATA_REQUIRE])}
{include file="/submission/review-publication-field.tpl" prop="source" inLocale=$localeKey name="{translate key="common.source"}" type="string"}
{/if}
{if in_array($currentContext->getData('type'), [$currentContext::METADATA_REQUEST, $currentContext::METADATA_REQUIRE])}
{include file="/submission/review-publication-field.tpl" prop="type" inLocale=$localeKey name="{translate key="common.type"}" type="string"}
{/if}
{if in_array($currentContext->getData('dataAvailability'), [$currentContext::METADATA_REQUEST, $currentContext::METADATA_REQUIRE])}
{include file="/submission/review-publication-field.tpl" prop="dataAvailability" inLocale=$localeKey name="{translate key="submission.dataAvailability"}" type="html"}
{/if}
{if $localeKey === $submission->getData('locale')}
{if $isCategoriesEnabled}
<div class="submissionWizard__reviewPanel__item">
<h4 class="submissionWizard__reviewPanel__item__header">
{translate key="submission.submit.placement.categories"}
</h4>
<ul
v-if="currentCategoryTitles.length"
class="submissionWizard__reviewPanel__item__value"
>
<li
v-for="currentCategoryTitle in currentCategoryTitles"
:key="currentCategoryTitle"
>
{{ currentCategoryTitle }}
</li>
</ul>
<div
v-else
class="submissionWizard__reviewPanel__item__value"
>
{translate key="common.noneSelected"}
</div>
</div>
{/if}
<div class="submissionWizard__reviewPanel__item">
<h4 class="submissionWizard__reviewPanel__item__header">
{translate key="submission.submit.coverNote"}
</h4>
<div
v-if="submission.commentsForTheEditors"
class="submissionWizard__reviewPanel__item__value"
v-strip-unsafe-html="submission.commentsForTheEditors"
></div>
<div v-else class="submissionWizard__reviewPanel__item__value">
{translate key="common.none"}
</div>
</div>
{/if}
{call_hook name="Template::SubmissionWizard::Section::Review::Editors" submission=$submission step=$step.id}
</div>
</div>
{/foreach}
@@ -0,0 +1,61 @@
{**
* templates/submission/review-files-step.tpl
*
* Copyright (c) 2014-2022 Simon Fraser University
* Copyright (c) 2003-2022 John Willinsky
* Distributed under the GNU GPL v3. For full terms see the file docs/COPYING.
*
* The template in the submission wizard when reviewing the upload files step.
*}
<div class="submissionWizard__reviewPanel">
<div class="submissionWizard__reviewPanel__header">
<h3 id="review{$step.id|escape}">
{$step.reviewName|escape}
</h3>
<pkp-button
aria-describedby="review{$step.id|escape}"
class="submissionWizard__reviewPanel__edit"
@click="openStep('{$step.id|escape}')"
>
{translate key="common.edit"}
</pkp-button>
</div>
<div
class="
submissionWizard__reviewPanel__body
submissionWizard__reviewPanel__body--{$step.id|escape}
"
>
<notification
v-for="(error, i) in errors.files"
:key="i"
type="warning"
class="submissionWizard__reviewEmptyWarning"
>
<icon icon="exclamation-triangle" :inline="true"></icon>
{{ error }}
</notification>
<ul class="submissionWizard__reviewPanel__list">
<li
v-for="file in components.submissionFiles.items"
:key="file.id"
class="submissionWizard__reviewPanel__item__value"
>
<a :href="file.url" class="submissionWizard__reviewPanel__fileLink">
<file
:document-type="file.documentType"
:name="localize(file.name)"
></file>
</a>
<span
class="submissionWizard__reviewPanel__list__actions"
>
<badge v-if="file.genreId" :is-primary="!file.genreIsSupplementary">
{{ localize(file.genreName) }}
</badge>
</span>
</li>
{call_hook name="Template::SubmissionWizard::Section::Review::Files" submission=$submission step=$step.id}
</ul>
</div>
</div>
@@ -0,0 +1,67 @@
{**
* templates/submission/review-publication-field.tpl
*
* Copyright (c) 2014-2022 Simon Fraser University
* Copyright (c) 2003-2022 John Willinsky
* Distributed under the GNU GPL v3. For full terms see the file docs/COPYING.
*
* A helper template to show the value of a publication property.
*
* @uses string $prop The name of the property, eg `keywords`
* @uses string $inLocale The locale key to show. Only include this for localized data
* @uses string $name The user-facing name of this property, eg "Keywords"
* @uses string $type The type of the value. Accepts `string`, `array`, `html`
*}
{if $inLocale}
{assign var="localizedProp" value=$prop|cat:"."|cat:$inLocale}
{else}
{assign var="localizedProp" value=$prop}
{/if}
<div class="submissionWizard__reviewPanel__item">
<template v-if="errors.{$prop|escape} && errors.{$localizedProp|escape}">
<notification
v-for="(error, i) in errors.{$localizedProp|escape}"
:key="i"
type="warning"
>
<icon icon="exclamation-triangle"></icon>
{{ error }}
</notification>
</template>
<h4 class="submissionWizard__reviewPanel__item__header">
{$name}
</h4>
<div
class="submissionWizard__reviewPanel__item__value"
{if $type === 'html'}
v-strip-unsafe-html="publication.{$localizedProp|escape}
? publication.{$localizedProp|escape}
: '{translate key="common.noneProvided"}'"
{/if}
>
{if $type === 'array'}
<template v-if="publication.{$localizedProp|escape} && publication.{$localizedProp|escape}.length">
{{
publication.{$localizedProp|escape}
.join(
__('common.commaListSeparator')
)
}}
</template>
<template v-else>
{translate key="common.noneProvided"}
</template>
{elseif $type === 'html'}
{* empty. see v-strip-unsafe-html above *}
{else}
<template v-if="publication.{$localizedProp|escape}">
{{ publication.{$localizedProp|escape} }}
</template>
<template v-else>
{translate key="common.noneProvided"}
</template>
{/if}
</div>
</div>
+28
View File
@@ -0,0 +1,28 @@
{**
* templates/submission/start.tpl
*
* Copyright (c) 2014-2022 Simon Fraser University
* Copyright (c) 2003-2022 John Willinsky
* Distributed under the GNU GPL v3. For full terms see the file docs/COPYING.
*
* The initial step for a new submission before launching the submission wizard
*}
{extends file="layouts/backend.tpl"}
{block name="page"}
<h1 class="app__pageHeading app__pageHeading--center app__pageHeading--spacious">
{translate key="submission.wizard.saved"}
</h1>
<div class="app__contentPanel">
<p>{translate key="submission.wizard.saved.description"}</p>
<p>
<a href="{$submissionWizardUrl}">
{$submission->getCurrentPublication()->getShortAuthorString()|escape}
{$submission->getCurrentPublication()->getLocalizedFullTitle(null, 'html')|strip_unsafe_html}
</a>
</p>
<p>{translate key="submission.wizard.saved.emailConfirmation" email=$email|escape}</p>
</div>
{/block}
+32
View File
@@ -0,0 +1,32 @@
{**
* templates/submission/start.tpl
*
* Copyright (c) 2014-2022 Simon Fraser University
* Copyright (c) 2003-2022 John Willinsky
* Distributed under the GNU GPL v3. For full terms see the file docs/COPYING.
*
* The initial step for a new submission before launching the submission wizard
*}
{extends file="layouts/backend.tpl"}
{block name="page"}
<h1 class="app__pageHeading app__pageHeading--center app__pageHeading--spacious">
{translate key="submission.wizard.title"}
</h1>
{if $currentContext->getData('disableSubmissions')}
<notification>
{translate key="manager.setup.disableSubmissions.notAccepting"}
</notification>
{else}
<panel>
<panel-section>
<start-submission-form
class="startSubmissionPage__form"
v-bind="form"
@set="updateForm"
></start-submission-form>
</panel-section>
</panel>
{/if}
{/block}
+189
View File
@@ -0,0 +1,189 @@
{**
* templates/submission/wizard.tpl
*
* Copyright (c) 2014-2022 Simon Fraser University
* Copyright (c) 2003-2022 John Willinsky
* Distributed under the GNU GPL v3. For full terms see the file docs/COPYING.
*
* The submission wizard screen with all steps to complete for submission.
*}
{extends file="layouts/backend.tpl"}
{block name="page"}
<div class="submissionWizard">
<div class="submissionWizard__submissionDetails">
{{ submission.id }}
<template v-if="publication.authorsStringShort">
<span class="app__breadcrumbsSeparator" aria-hidden="true">/</span>
{{ publication.authorsStringShort }}
</template>
<template v-if="localize(publication.title)">
<span class="app__breadcrumbsSeparator" aria-hidden="true">/</span>
<span v-strip-unsafe-html="localize(publication.title)">
</template>
</div>
<h1 class="app__pageHeading" ref="pageTitle">
{{ pageTitle }}
<pkp-button
:is-disabled="isDisconnected"
@click="saveForLater"
>
{translate key="reviewer.submission.saveReviewForLater"}
</pkp-button>
</h1>
{if $submittingTo}
<div id="submission-configuration" class="submissionWizard__submissionConfiguration">
{$submittingTo}
<button
class="-linkButton"
aria-describedby="submission-configuration"
@click="$modal.show('config')"
>
{translate key="manager.reviewerSearch.change"}
</button>
<modal
close-label="{translate key="common.close"}"
name="config"
title="{translate key="submission.wizard.changeSubmission"}"
>
<pkp-form
v-bind="components.reconfigureSubmission"
@set="set"
@success="reconfigureSubmission"
></pkp-form>
</modal>
</div>
{/if}
<steps
class="submissionWizard__steps"
:current="currentStep.id"
:started-steps="startedSteps"
label="{translate key="submission.wizard.completeSteps"}"
progress-label="{translate key="common.showingSteps"}"
:scroll-to="$refs.pageTitle"
show-steps-label="{translate key="common.showAllSteps"}"
@step:open="openStep"
>
<step
v-for="step in steps"
:key="step.id"
:id="step.id"
:label="step.name"
>
<panel>
<panel-section v-for="section in step.sections" :key="section.id">
<template slot="header">
<h2>{{ section.name }}</h2>
<div v-strip-unsafe-html="section.description" />
</template>
<pkp-form
v-if="section.type === 'form'"
v-bind="section.form"
ref="autosaveForms"
class="submissionWizard__stepForm"
@set="updateAutosaveForm"
></pkp-form>
<submission-files-list-panel
v-else-if="section.type === 'files'"
v-bind="components.submissionFiles"
@set="set"
></submission-files-list-panel>
<contributors-list-panel
v-else-if="section.type === 'contributors'"
v-bind="components.contributors"
:items="publication.authors"
:publication="publication"
@updated:contributors="setContributors"
@updated:publication="setPublication"
></contributors-list-panel>
<template v-else-if="section.type === 'review'">
<notification
v-if="Object.keys(errors).length" type="warning"
class="submissionWizard__review_errors"
>
{translate key="submission.wizard.errors"}
</notification>
<template>
{foreach from=$reviewSteps item=$step}
{if $step.reviewTemplate}
{include file=$step.reviewTemplate}
{/if}
{call_hook name="Template::SubmissionWizard::Section::Review" submission=$submission step=$step.id}
{/foreach}
</template>
<transition name="submissionWizard__reviewLoading">
<span
v-if="isAutosaving || isValidating"
role="alert"
class="submissionWizard__loadingReview"
>
<spinner></spinner>
{translate key="submission.wizard.validating"}
</span>
</transition>
</template>
<pkp-form
v-if="section.type === 'confirm'"
v-bind="section.form"
class="submissionWizard__stepForm"
@set="updateForm"
></pkp-form>
{call_hook name="Template::SubmissionWizard::Section" submission=$submission}
</panel-section>
</panel>
</step>
</steps>
<button-row class="submissionWizard__footer">
<template slot="end">
<pkp-button
v-if="!isOnFirstStep"
:is-warnable="true"
@click="previousStep"
>
{translate key="common.back"}
</pkp-button>
<!--
Leave this v-else in so that the slot
is never empty.
-->
<span v-else></span>
</template>
<span
role="status"
aria-live="polite"
class="submissionWizard__lastSaved"
:class="isDisconnected ? 'submissionWizard__lastSaved--disconnected' : ''"
>
<spinner v-if="isAutosaving || isDisconnected"></spinner>
<template v-if="isAutosaving">
{translate key="common.saving"}
</template>
<template v-else-if="isDisconnected">
{translate key="common.reconnecting"}
</template>
<template v-else-if="lastAutosavedMessage">
{{ lastAutosavedMessage }}
</template>
</span>
<pkp-button
:is-disabled="isDisconnected"
@click="saveForLater"
>
{translate key="reviewer.submission.saveReviewForLater"}
</pkp-button>
<pkp-button
:is-primary="true"
:is-disabled="isOnLastStep && !canSubmit"
@click="nextStep"
>
<template v-if="isOnLastStep">
{translate key="form.submit"}
</template>
<template v-else>
{translate key="common.continue"}
</template>
</pkp-button>
</button-row>
</div>
{/block}