2020-10-13 21:04:50 +02:00
|
|
|
<h3 *ngIf="formTitle" class="uk-margin-auto">{{formTitle}}</h3>
|
2022-01-12 13:12:30 +01:00
|
|
|
<ng-content select="[title]"></ng-content>
|
2019-12-03 13:50:39 +01:00
|
|
|
<div *ngIf="errorMessage" class="uk-width-1-1 uk-alert uk-alert-danger uk-text-center"
|
|
|
|
role="alert">{{errorMessage}}</div>
|
|
|
|
<div class="uk-margin-top" uk-grid [formGroup]="contactForm">
|
2020-12-02 09:41:00 +01:00
|
|
|
<div *ngIf="contactForm.get('name')" class="uk-width-1-2@s uk-margin-medium-top">
|
2022-01-12 13:12:30 +01:00
|
|
|
<input class="uk-input" type="text" placeholder="Name *" formControlName="name"
|
|
|
|
[class.uk-form-danger]="contactForm.get('name').invalid && contactForm.get('name').touched">
|
2019-12-03 13:50:39 +01:00
|
|
|
</div>
|
2020-12-02 09:41:00 +01:00
|
|
|
<div *ngIf="contactForm.get('surname')" class="uk-width-1-2@s uk-margin-medium-top">
|
2022-01-12 13:12:30 +01:00
|
|
|
<input class="uk-input" type="text" placeholder="Surname *" formControlName="surname"
|
2019-12-03 13:50:39 +01:00
|
|
|
[class.uk-form-danger]="contactForm.get('surname').invalid && contactForm.get('surname').touched">
|
|
|
|
</div>
|
2020-12-02 09:41:00 +01:00
|
|
|
<div *ngIf="contactForm.get('email')" class="uk-width-1-2@s uk-margin-medium-top">
|
2022-01-12 13:12:30 +01:00
|
|
|
<input class="uk-input" type="text" placeholder="Email *" formControlName="email"
|
2019-12-03 13:50:39 +01:00
|
|
|
[class.uk-form-danger]="contactForm.get('email').invalid && contactForm.get('email').touched">
|
|
|
|
</div>
|
2020-12-02 09:41:00 +01:00
|
|
|
<div *ngIf="contactForm.get('job')" class="uk-width-1-2@s uk-margin-medium-top">
|
2022-01-12 13:12:30 +01:00
|
|
|
<input class="uk-input" type="text" placeholder="Job Title *" formControlName="job"
|
2020-06-23 22:50:46 +02:00
|
|
|
[class.uk-form-danger]="contactForm.get('job').invalid && contactForm.get('job').touched">
|
|
|
|
</div>
|
2020-12-02 09:41:00 +01:00
|
|
|
<div *ngIf="contactForm.get('affiliation')" class="uk-width-1-2@s uk-margin-medium-top">
|
2022-01-12 13:12:30 +01:00
|
|
|
<input class="uk-input" type="text" placeholder="Affiliation *" formControlName="affiliation"
|
2019-12-03 13:50:39 +01:00
|
|
|
[class.uk-form-danger]="contactForm.get('affiliation').invalid && contactForm.get('affiliation').touched">
|
|
|
|
</div>
|
2020-12-02 09:41:00 +01:00
|
|
|
<div *ngIf="contactForm.get('community')" class="uk-width-1-2@s uk-margin-medium-top">
|
2022-01-12 13:12:30 +01:00
|
|
|
<input class="uk-input uk-width-1" type="text" placeholder="Research Community or Infrastructure *" formControlName="community"
|
2019-12-03 13:50:39 +01:00
|
|
|
[class.uk-form-danger]="contactForm.get('community').invalid && contactForm.get('community').touched">
|
|
|
|
</div>
|
2020-12-02 09:41:00 +01:00
|
|
|
<div *ngIf="contactForm.get('organization')" class="uk-width-1-2@s uk-margin-medium-top">
|
2022-01-12 13:12:30 +01:00
|
|
|
<input class="uk-input uk-width-1-1" type="text" placeholder="Organization *" formControlName="organization"
|
2020-06-23 22:50:46 +02:00
|
|
|
[class.uk-form-danger]="contactForm.get('organization').invalid && contactForm.get('organization').touched">
|
|
|
|
</div>
|
2020-12-02 09:41:00 +01:00
|
|
|
<div *ngIf="contactForm.get('organizationType')" class="uk-width-1-2@s uk-margin-medium-top">
|
2021-04-08 17:23:41 +02:00
|
|
|
<select class="uk-select uk-width-1-1" formControlName="organizationType">
|
2022-01-12 13:12:30 +01:00
|
|
|
<option [value]="''" hidden selected>Organization Type *</option>
|
2021-04-08 17:23:41 +02:00
|
|
|
<option *ngFor="let option of organizationTypes" [value]="option">{{option}}</option>
|
|
|
|
</select>
|
2019-12-03 13:50:39 +01:00
|
|
|
</div>
|
2020-12-02 09:41:00 +01:00
|
|
|
<div *ngIf="contactForm.get('subject')" class="uk-width-1-1@s uk-margin-medium-top">
|
2022-01-12 13:12:30 +01:00
|
|
|
<input class="uk-input uk-width-1-1" type="text" placeholder="Subject *" formControlName="subject"
|
2020-06-11 19:03:03 +02:00
|
|
|
[class.uk-form-danger]="contactForm.get('subject').invalid && contactForm.get('subject').touched">
|
|
|
|
</div>
|
2020-12-02 09:41:00 +01:00
|
|
|
<div *ngIf="contactForm.get('message')" class="uk-width-1-1 uk-margin-medium-top">
|
2022-01-12 13:12:30 +01:00
|
|
|
<textarea rows="4" class="uk-textarea" placeholder="Comments *" formControlName="message"
|
2019-12-03 13:50:39 +01:00
|
|
|
[class.uk-form-danger]="contactForm.get('message').invalid && contactForm.get('message').touched">
|
|
|
|
</textarea>
|
|
|
|
</div>
|
2020-12-02 09:41:00 +01:00
|
|
|
<div *ngIf="contactForm.get('description')" class="uk-width-1-1 uk-margin-medium-top">
|
2022-01-12 13:12:30 +01:00
|
|
|
<textarea rows="4" class="uk-textarea" placeholder="Description *" formControlName="description"
|
2020-09-14 17:08:34 +02:00
|
|
|
[class.uk-form-danger]="contactForm.get('description').invalid && contactForm.get('description').touched">
|
|
|
|
</textarea>
|
|
|
|
</div>
|
|
|
|
<div *ngIf="contactForm.get('recaptcha')" class="uk-width-1-2@s uk-margin-top">
|
2019-12-03 13:50:39 +01:00
|
|
|
<re-captcha (resolved)="handleRecaptcha($event)" [(siteKey)]="properties.reCaptchaSiteKey">
|
|
|
|
</re-captcha>
|
|
|
|
</div>
|
2020-10-23 19:46:13 +02:00
|
|
|
<div class="uk-margin-medium-top uk-width-1-1">
|
2022-01-12 13:12:30 +01:00
|
|
|
<button class="uk-button" [class.uk-button-primary]="!buttonClass" [ngClass]="buttonClass" (click)="send()">Send</button>
|
2019-12-03 13:50:39 +01:00
|
|
|
</div>
|
|
|
|
</div>
|