mirror of
https://github.com/DSpace/dspace-angular.git
synced 2025-10-07 10:04:11 +00:00
[CST-4875] Fixes requested by Tim Gitlab
This commit is contained in:
@@ -27,8 +27,14 @@
|
|||||||
class="alert">
|
class="alert">
|
||||||
<ds-error *ngIf="feedbackForm.controls.message.errors?.required" message="{{'info.feedback.error.message.required' | translate}}"></ds-error>
|
<ds-error *ngIf="feedbackForm.controls.message.errors?.required" message="{{'info.feedback.error.message.required' | translate}}"></ds-error>
|
||||||
</ng-container>
|
</ng-container>
|
||||||
<input class="form-control" formControlName="page" name="page" type="hidden" [value]="routeService.getPreviousUrl() | async"
|
<!-- <input class="form-control" readonly formControlName="page" name="page" type="text" [value]="routeService.getPreviousUrl() | async"/> -->
|
||||||
/>
|
<div class="row">
|
||||||
|
<div class="control-group col-sm-12">
|
||||||
|
<label class="control-label" for="page">{{ 'info.feedback.page-label' | translate }} </label>
|
||||||
|
<input id="page" readonly class="form-control" name="page" type="text" value="" formControlName="page" autofocus="autofocus" title="{{ 'info.feedback.page_help' | translate }}">
|
||||||
|
<p class="help-block">{{ 'info.feedback.page_help' | translate }}</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
<div class="row py-2">
|
<div class="row py-2">
|
||||||
<div class="control-group col-sm-12 text-right">
|
<div class="control-group col-sm-12 text-right">
|
||||||
<button [disabled]="!feedbackForm.valid" class="btn btn-primary" name="submit" type="submit">{{ 'info.feedback.send' | translate }}</button>
|
<button [disabled]="!feedbackForm.valid" class="btn btn-primary" name="submit" type="submit">{{ 'info.feedback.send' | translate }}</button>
|
||||||
|
@@ -9,6 +9,7 @@ import { TranslateService } from '@ngx-translate/core';
|
|||||||
import { AuthService } from '../../../core/auth/auth.service';
|
import { AuthService } from '../../../core/auth/auth.service';
|
||||||
import { EPerson } from '../../../core/eperson/models/eperson.model';
|
import { EPerson } from '../../../core/eperson/models/eperson.model';
|
||||||
import { getFirstCompletedRemoteData } from '../../../core/shared/operators';
|
import { getFirstCompletedRemoteData } from '../../../core/shared/operators';
|
||||||
|
import { Router } from '@angular/router';
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
selector: 'ds-feedback-form',
|
selector: 'ds-feedback-form',
|
||||||
@@ -35,7 +36,8 @@ export class FeedbackFormComponent implements OnInit {
|
|||||||
protected notificationsService: NotificationsService,
|
protected notificationsService: NotificationsService,
|
||||||
protected translate: TranslateService,
|
protected translate: TranslateService,
|
||||||
private feedbackDataService: FeedbackDataService,
|
private feedbackDataService: FeedbackDataService,
|
||||||
private authService: AuthService) {
|
private authService: AuthService,
|
||||||
|
private router: Router) {
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -50,6 +52,9 @@ export class FeedbackFormComponent implements OnInit {
|
|||||||
});
|
});
|
||||||
|
|
||||||
this.routeService.getPreviousUrl().subscribe((url: string) => {
|
this.routeService.getPreviousUrl().subscribe((url: string) => {
|
||||||
|
if (!url) {
|
||||||
|
url = '/home';
|
||||||
|
}
|
||||||
this.feedbackForm.patchValue({ page: url });
|
this.feedbackForm.patchValue({ page: url });
|
||||||
});
|
});
|
||||||
|
|
||||||
@@ -59,10 +64,12 @@ export class FeedbackFormComponent implements OnInit {
|
|||||||
* Function to create the feedback from form values
|
* Function to create the feedback from form values
|
||||||
*/
|
*/
|
||||||
createFeedback(): void {
|
createFeedback(): void {
|
||||||
|
const url = this.feedbackForm.value.page;
|
||||||
this.feedbackDataService.create(this.feedbackForm.value).pipe(getFirstCompletedRemoteData()).subscribe((response: RemoteData<NoContent>) => {
|
this.feedbackDataService.create(this.feedbackForm.value).pipe(getFirstCompletedRemoteData()).subscribe((response: RemoteData<NoContent>) => {
|
||||||
if (response.isSuccess) {
|
if (response.isSuccess) {
|
||||||
this.notificationsService.success(this.translate.instant('info.feedback.create.success'));
|
this.notificationsService.success(this.translate.instant('info.feedback.create.success'));
|
||||||
this.feedbackForm.reset();
|
this.feedbackForm.reset();
|
||||||
|
this.router.navigateByUrl(url);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user