| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
| Name | Name | Last commit date | ||
|---|---|---|---|---|
⬇️ Install package: OJS 3.5 — or browse all Releases.
A generic plugin for Open Journal Systems (OJS) that makes sure authors of supervised work add their supervisor as a co-author while they still can: a prominent notice on the contributors step that reacts to the author list, and a last-chance notice on the review step with an acknowledgement the author must tick before submitting.
Developed and maintained by OJSBR. See the Credits & authorship section below.
| OJS version | Branch | Plugin release |
|---|---|---|
| OJS 3.5.x | stable-3_5_0 (default) | 1.0.1.0 |
Many journals publish work by undergraduate and graduate students, written under a supervisor. Students often submit alone, and two things then go wrong:
Some authors genuinely submit alone, so blocking single-author submissions is not an option. The author has to be warned unmistakably, at the right moment, and has to acknowledge it.
| Setting | Default | What it means |
|---|---|---|
| Notice heading / text (contributors step) | prefilled | Plain-text heading; the text accepts the HTML the journal allows (allowed_html) |
| Message with a single author / with co-authors | prefilled | The red and green status strips |
| Final notice heading / text (review step) | prefilled | Shown next to the contributors review panel |
| Require the acknowledgement | on | Off: the notices stay, without the checkbox and without blocking |
| Require it only for single-author submissions | off | On: with two or more authors the checkbox disappears |
| Acknowledgement text / error message | prefilled | The checkbox label and the message shown when submitting without it |
Where the acknowledgement is enforced. The tick that holds the Submit button is enforced in the browser: the plugin listens for the click before the wizard does and stops it while the box is not ticked. The server does not refuse a submission for a missing tick, and it is not meant to — this is a reminder to the author, not an editorial rule. A journal that needs a rule the server enforces should ask for the co-author in the metadata itself (see requiredAuthorMetadata).
Only official hooks, no core file is changed:
Why the submit button is gated by intercepting the click. The wizard's canSubmit depends on the options fields of the confirmSubmission section, but that section only exists when the journal has a copyright notice — on journals without one, a field injected there would silently vanish. The plugin uses its own checkbox and a capture-phase click listener on the wizard footer's primary button, which survives any Vue re-render of the button. The listener only acts while the checkbox is visible, and inactive steps are rendered with hidden, which is why the earlier "Continue" buttons are never blocked.
This is a browser-side check, exactly like the wizard's own copyright acknowledgement (ConfirmSubmission uses FormComponent::ACTION_EMIT, and its value never reaches the server).
Journal texts are never compiled by Vue. The wizard is a Vue template compiled from the page itself, and the browser decodes HTML entities before Vue reads it — so escaping {{ on the server does not stop a text such as {{ 7*7 }} from being evaluated. Every element holding a configured text carries v-pre. On top of that, plain-text settings are stripped and escaped, and HTML settings go through PKPString::stripUnsafeHtml() when saved and again when printed.
PHP suite (tests/): the plugin classes compiled against the running PKP version (an override whose return type does not match the parent is a fatal error that php -l does not catch), the language fallback rules, sanitization of what the settings form saves, the v-pre guarantee in the templates, and the completeness of every translation — OJS 3.5 has no locale fallback, so a missing key would be displayed as ##key##.
The suite runs on PKP's own PKPTestCase under PKP's PHPUnit, the way the official plugins do:
php lib/pkp/lib/vendor/bin/phpunit --configuration lib/pkp/tests/phpunit.xml plugins/generic/coauthorAlert/testsCypress (cypress/tests/functional/CoauthorAlert.cy.js): enabling the plugin, the prefilled settings round trip, the live status strip, the blocked submit, the acknowledgement and the fallback to the default text. It runs on the PKP test data by default and accepts contextPath, adminUser, adminPassword and submissionId through --env.
Issues and pull requests are welcome — see CONTRIBUTING.md. en is the master locale file; entries marked fuzzy are the ones still waiting for a native speaker.
Distributed under the GNU GPL v3. See LICENSE and docs/COPYING.
Plugin genérico para o Open Journal Systems (OJS) que garante que autores de trabalhos orientados incluam o orientador como coautor enquanto ainda é possível: um aviso destacado na etapa de contribuidores, que reage à lista de autores, e um aviso de última chance na etapa de revisão, com uma declaração de ciência que o autor precisa marcar antes de submeter.
Desenvolvido e mantido pela OJSBR.
| Versão do OJS | Branch | Release do plugin |
|---|---|---|
| OJS 3.5.x | stable-3_5_0 (padrão) | 1.0.1.0 |
Muitas revistas publicam trabalhos de alunos feitos sob orientação, e é comum o aluno submeter sozinho. Aí duas coisas dão errado: a lista de autores congela na submissão — depois de enviada, o autor não consegue mais incluir o orientador, e o trabalho pode deixar de valer para o que o aluno precisava (a validação como TCC, por exemplo); e o editor não sabe quem é o orientador, que pode acabar convidado a avaliar o trabalho do próprio aluno, comprometendo a avaliação duplo-cega.
Como há autores que de fato submetem sozinhos, bloquear submissão de autor único não é opção. É preciso avisar de forma inequívoca, no momento certo, e registrar que o autor foi avisado.
Instale em Configurações → Website → Plugins → Enviar um novo plugin, ou extraia a pasta em plugins/generic/ (ficando plugins/generic/coauthorAlert/). Não renomeie a pasta: o OJS deriva o namespace da classe do nome do diretório. Depois ative o plugin na lista de Genéricos e abra as Configurações para revisar os textos.
A marcação que segura o botão Enviar é exigida no navegador: o plugin escuta o clique antes do assistente e o interrompe enquanto a caixa não estiver marcada. O servidor não recusa a submissão por falta da marcação, e não é essa a intenção — isto é um aviso ao autor, não uma regra editorial. Revista que precise de uma regra exigida pelo servidor deve pedir o coautor nos próprios metadados (ver requiredAuthorMetadata).
Títulos e textos dos dois avisos, mensagens da faixa de autor único e de coautores incluídos, texto da declaração e mensagem de erro — todos por idioma. Duas opções: exigir a declaração (ligada por padrão; desligada, os avisos continuam sem caixa e sem bloqueio) e exigir só quando houver um único autor (desligada por padrão).
Suíte PHP em tests/ (compatibilidade das classes com a versão do PKP, regras de idioma, sanitização, garantia do v-pre nos templates e completude das traduções), sobre o PKPTestCase do próprio PKP, como nos plugins oficiais:
php lib/pkp/lib/vendor/bin/phpunit --configuration lib/pkp/tests/phpunit.xml plugins/generic/coauthorAlert/testsE teste Cypress em cypress/tests/functional/CoauthorAlert.cy.js, cobrindo ativação, configurações, faixa reativa, bloqueio do envio, declaração e volta ao texto padrão.
Distribuído sob a GNU GPL v3. Veja LICENSE e docs/COPYING.
| Back | FazBrowse Home | New Git URL |