Skip to content

Commit a7c6adf

Browse files
authored
Fix - Preprints bugs (#337)
* fix(metadata-step): Made Publication DOI field optional * fix(preprints-landing): Contact Us button titlecased, Show example button link fixed * fix(create-new-version): Handled back button * fix(preprint-moderation): Fixed sorting for submissions * fix(license-component): Clearing all fields on cancel button click * fix(preprint-stepper): Fixed add-project-form
1 parent e7e52e7 commit a7c6adf

File tree

11 files changed

+40
-39
lines changed

11 files changed

+40
-39
lines changed
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
export enum PreprintSubmissionsSort {
22
TitleAZ = 'title',
33
TitleZA = '-title',
4-
Oldest = 'date_last_transitioned',
5-
Newest = '-date_last_transitioned',
4+
Oldest = '-date_last_transitioned',
5+
Newest = 'date_last_transitioned',
66
}

src/app/features/preprints/components/preprint-details/general-information/general-information.component.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ <h3>{{ 'preprints.preprintStepper.common.labels.abstract' | translate }}</h3>
1414
@if (preprintValue.nodeId) {
1515
<section class="flex flex-column gap-2">
1616
<h3>{{ 'preprints.details.supplementalMaterials' | translate }}</h3>
17-
<a [routerLink]="nodeLink()" class="flex gap-1">
17+
<a [href]="nodeLink()" class="flex gap-1">
1818
{{ nodeLink() }}
1919
<osf-icon iconClass="fa fa-external-link-alt" />
2020
</a>

src/app/features/preprints/components/preprint-provider-hero/preprint-provider-hero.component.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ <h1 class="preprint-provider-name">{{ preprintProvider()!.name }}</h1>
5555
<p-skeleton width="10%" height="1rem" />
5656
} @else if (preprintProvider()?.examplePreprintId) {
5757
<p>
58-
<a class="font-bold" [routerLink]="['preprints', preprintProvider()!.id, preprintProvider()!.examplePreprintId]"
58+
<a class="font-bold" [routerLink]="['/preprints', preprintProvider()!.id, preprintProvider()!.examplePreprintId]"
5959
>{{ 'preprints.showExample' | translate }}
6060
</a>
6161
</p>

src/app/features/preprints/components/stepper/metadata-step/metadata-step.component.html

Lines changed: 14 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -22,25 +22,6 @@ <h2 class="mb-2">{{ 'shared.license.title' | translate }}</h2>
2222
/>
2323
</p-card>
2424

25-
<p-card styleClass="m-t-24" class="card">
26-
<div>
27-
<h2>{{ 'preprints.preprintStepper.metadata.publicationDoi.title' | translate }}</h2>
28-
29-
<input id="doi" class="m-t-24" pInputText type="text" [formControl]="metadataForm.controls['doi']" />
30-
@let doiControl = metadataForm.controls['doi'];
31-
@if (doiControl.errors?.['required'] && (doiControl.touched || doiControl.dirty)) {
32-
<p-message class="simple-variant flex mt-1" severity="error" variant="simple" size="small">
33-
{{ INPUT_VALIDATION_MESSAGES.required | translate }}
34-
</p-message>
35-
}
36-
@if (doiControl.errors?.['pattern'] && (doiControl.touched || doiControl.dirty)) {
37-
<p-message class="simple-variant flex mt-1" severity="error" variant="simple" size="small"
38-
>{{ 'preprints.preprintStepper.metadata.publicationDoi.patternError' | translate }}
39-
</p-message>
40-
}
41-
</div>
42-
</p-card>
43-
4425
<div class="m-t-24">
4526
<osf-preprints-affiliated-institutions [preprintId]="createdPreprint()?.id" [provider]="provider()" />
4627
</div>
@@ -59,6 +40,20 @@ <h2>{{ 'preprints.preprintStepper.metadata.tagsTitle' | translate }}</h2>
5940
</div>
6041
</p-card>
6142

43+
<p-card styleClass="m-t-24" class="card">
44+
<div>
45+
<h2>{{ 'preprints.preprintStepper.metadata.publicationDoi.title' | translate }}</h2>
46+
47+
<input id="doi" class="m-t-24" pInputText type="text" [formControl]="metadataForm.controls['doi']" />
48+
@let doiControl = metadataForm.controls['doi'];
49+
@if (doiControl.errors?.['pattern'] && (doiControl.touched || doiControl.dirty)) {
50+
<p-message class="simple-variant flex mt-1" severity="error" variant="simple" size="small"
51+
>{{ 'preprints.preprintStepper.metadata.publicationDoi.patternError' | translate }}
52+
</p-message>
53+
}
54+
</div>
55+
</p-card>
56+
6257
<p-card styleClass="m-t-24" class="card">
6358
<h2>{{ 'preprints.preprintStepper.metadata.publicationDateTitle' | translate }}</h2>
6459

src/app/features/preprints/components/stepper/metadata-step/metadata-step.component.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ import {
2121
SaveLicense,
2222
UpdatePreprint,
2323
} from '@osf/features/preprints/store/preprint-stepper';
24-
import { CustomValidators, findChangedFields } from '@osf/shared/helpers';
24+
import { findChangedFields } from '@osf/shared/helpers';
2525
import { IconComponent, LicenseComponent, TagsInputComponent, TextInputComponent } from '@shared/components';
2626
import { INPUT_VALIDATION_MESSAGES } from '@shared/constants';
2727
import { LicenseModel, LicenseOptions } from '@shared/models';
@@ -87,7 +87,7 @@ export class MetadataStepComponent implements OnInit {
8787
this.metadataForm = new FormGroup<MetadataForm>({
8888
doi: new FormControl(this.createdPreprint()?.doi || null, {
8989
nonNullable: true,
90-
validators: [CustomValidators.requiredTrimmed(), Validators.pattern(this.inputLimits.doi.pattern)],
90+
validators: [Validators.pattern(this.inputLimits.doi.pattern)],
9191
}),
9292
originalPublicationDate: new FormControl(publicationDate ? new Date(publicationDate) : null, {
9393
nonNullable: false,

src/app/features/preprints/components/stepper/review-step/review-step.component.html

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -87,13 +87,15 @@ <h3>{{ 'preprints.preprintStepper.review.sections.metadata.license' | translate
8787
</p-accordion>
8888
</section>
8989

90-
<section class="flex flex-column gap-2">
91-
<h3>{{ 'preprints.preprintStepper.review.sections.metadata.publicationDoi' | translate }}</h3>
90+
@if (preprint()?.articleDoiLink) {
91+
<section class="flex flex-column gap-2">
92+
<h3>{{ 'preprints.preprintStepper.review.sections.metadata.publicationDoi' | translate }}</h3>
9293

93-
<a [href]="preprint()?.articleDoiLink">
94-
{{ preprint()?.articleDoiLink }}
95-
</a>
96-
</section>
94+
<a [href]="preprint()?.articleDoiLink">
95+
{{ preprint()?.articleDoiLink }}
96+
</a>
97+
</section>
98+
}
9799

98100
<section class="flex flex-column gap-2">
99101
<h3>{{ 'preprints.preprintStepper.review.sections.metadata.subjects' | translate }}</h3>

src/app/features/preprints/pages/create-new-version/create-new-version.component.ts

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ import {
1818
signal,
1919
} from '@angular/core';
2020
import { toSignal } from '@angular/core/rxjs-interop';
21-
import { ActivatedRoute } from '@angular/router';
21+
import { ActivatedRoute, Router } from '@angular/router';
2222

2323
import { FileStepComponent, ReviewStepComponent } from '@osf/features/preprints/components';
2424
import { createNewVersionStepsConst } from '@osf/features/preprints/constants';
@@ -45,7 +45,8 @@ import { BrandService } from '@shared/services';
4545
export class CreateNewVersionComponent implements OnInit, OnDestroy, CanDeactivateComponent {
4646
@HostBinding('class') classes = 'flex-1 flex flex-column w-full';
4747

48-
private readonly route = inject(ActivatedRoute);
48+
private route = inject(ActivatedRoute);
49+
private router = inject(Router);
4950

5051
private providerId = toSignal(this.route.params.pipe(map((params) => params['providerId'])) ?? of(undefined));
5152
private preprintId = toSignal(this.route.params.pipe(map((params) => params['preprintId'])) ?? of(undefined));
@@ -114,7 +115,8 @@ export class CreateNewVersionComponent implements OnInit, OnDestroy, CanDeactiva
114115
}
115116

116117
moveToPreviousStep() {
117-
this.currentStep.set(this.newVersionSteps[this.currentStep()?.index - 1]);
118+
const id = this.preprintId().split('_')[0];
119+
this.router.navigate([id]);
118120
}
119121

120122
@HostListener('window:beforeunload', ['$event'])

src/app/features/preprints/pages/landing/preprints-landing.component.html

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ <h1>{{ 'preprints.title' | translate }}</h1>
4040
} @else if (osfPreprintProvider()!.examplePreprintId) {
4141
<a
4242
class="font-bold"
43-
[routerLink]="['preprints', osfPreprintProvider()!.id, osfPreprintProvider()!.examplePreprintId]"
43+
[routerLink]="['/preprints', osfPreprintProvider()!.id, osfPreprintProvider()!.examplePreprintId]"
4444
>{{ 'preprints.showExample' | translate }}
4545
</a>
4646
}
@@ -79,6 +79,6 @@ <h2 class="text-2xl">{{ 'preprints.createServer.title' | translate }}</h2>
7979
</div>
8080

8181
<p-button severity="success" class="link-button">
82-
<a [href]="'mailto:' + supportEmail">{{ 'preprints.createServer.contactUs' | translate }}</a>
82+
<a [href]="'mailto:' + supportEmail">{{ 'preprints.createServer.contactUs' | translate | titlecase }}</a>
8383
</p-button>
8484
</section>

src/app/features/preprints/preprints.routes.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ import { PreprintState } from '@osf/features/preprints/store/preprint';
88
import { PreprintProvidersState } from '@osf/features/preprints/store/preprint-providers';
99
import { PreprintStepperState } from '@osf/features/preprints/store/preprint-stepper';
1010
import { ConfirmLeavingGuard } from '@shared/guards';
11-
import { CitationsState, ContributorsState, SubjectsState } from '@shared/stores';
11+
import { CitationsState, ContributorsState, ProjectsState, SubjectsState } from '@shared/stores';
1212

1313
import { PreprintModerationState } from '../moderation/store/preprint-moderation';
1414

@@ -62,6 +62,7 @@ export const preprintsRoutes: Routes = [
6262
(c) => c.SubmitPreprintStepperComponent
6363
),
6464
canDeactivate: [ConfirmLeavingGuard],
65+
providers: [provideStates([ProjectsState])],
6566
},
6667
{
6768
path: ':providerId/edit/:preprintId',
@@ -71,6 +72,7 @@ export const preprintsRoutes: Routes = [
7172
(c) => c.UpdatePreprintStepperComponent
7273
),
7374
canDeactivate: [ConfirmLeavingGuard],
75+
providers: [provideStates([ProjectsState])],
7476
},
7577
{
7678
path: ':providerId/moderation',

src/app/shared/components/license/license.component.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -112,7 +112,7 @@ export class LicenseComponent {
112112

113113
cancel() {
114114
this.licenseForm.reset({
115-
year: this.currentYear.getFullYear().toString(),
115+
year: '',
116116
copyrightHolders: '',
117117
});
118118
}

0 commit comments

Comments
 (0)