Skip to content

Commit

Permalink
Merge pull request #5808 from deNBI/dev
Browse files Browse the repository at this point in the history
Dev
  • Loading branch information
qqmok authored Jul 21, 2023
2 parents e8aa492 + 638c23d commit 0dee04c
Show file tree
Hide file tree
Showing 10 changed files with 388 additions and 503 deletions.
574 changes: 209 additions & 365 deletions package-lock.json

Large diffs are not rendered by default.

30 changes: 15 additions & 15 deletions package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@denbi/cloud-portal-webapp",
"version": "4.724.0",
"version": "4.727.0",
"description": "de.NBI Cloud Portal",
"scripts": {
"ng": "ng serve",
Expand All @@ -19,19 +19,19 @@
"private": true,
"dependencies": {
"@angular-eslint/eslint-plugin": "^16.0.3",
"@angular/animations": "16.1.5",
"@angular/animations": "16.1.6",
"@angular/cdk": "16.1.5",
"@angular/common": "16.1.5",
"@angular/compiler": "16.1.5",
"@angular/core": "16.1.5",
"@angular/forms": "16.1.5",
"@angular/localize": "16.1.5",
"@angular/platform-browser": "16.1.5",
"@angular/platform-browser-dynamic": "16.1.5",
"@angular/router": "16.1.5",
"@angular/service-worker": "16.1.5",
"@angular/upgrade": "16.1.5",
"@coreui/angular": "4.5.8",
"@angular/common": "16.1.6",
"@angular/compiler": "16.1.6",
"@angular/core": "16.1.6",
"@angular/forms": "16.1.6",
"@angular/localize": "16.1.6",
"@angular/platform-browser": "16.1.6",
"@angular/platform-browser-dynamic": "16.1.6",
"@angular/router": "16.1.6",
"@angular/service-worker": "16.1.6",
"@angular/upgrade": "16.1.6",
"@coreui/angular": "4.5.10",
"@coreui/coreui": "4.2.6",
"@coreui/icons-angular": "4.5.8",
"@ng-bootstrap/ng-bootstrap": "^15.0.1",
Expand Down Expand Up @@ -71,7 +71,7 @@
"ngx-cookie-service": "16.0.0",
"ngx-csv": "^0.3.2",
"ngx-owl-carousel-o": "16.0.0",
"ngx-scrollbar": "13.0.1",
"ngx-scrollbar": "13.0.3",
"pdfmake": "0.2.7",
"postcss-loader": "7.3.3",
"postcss-url": "10.1.3",
Expand All @@ -92,7 +92,7 @@
"@angular-eslint/schematics": "16.1.0",
"@angular-eslint/template-parser": "16.1.0",
"@angular/cli": "^16.1.4",
"@angular/compiler-cli": "16.1.5",
"@angular/compiler-cli": "16.1.6",
"@compodoc/compodoc": "1.1.21",
"@playwright/test": "1.36.1",
"@types/jasmine": "4.3.5",
Expand Down
6 changes: 0 additions & 6 deletions src/app/api-connector/news.service.ts
Original file line number Diff line number Diff line change
Expand Up @@ -94,12 +94,6 @@ export class NewsService {
});
}

uploadImageTest(formData: FormData): Observable<any> {
return this.http.post<any>(`${ApiSettings.getApiBaseURL()}wagtail-management/imagetest/`, formData, {
withCredentials: true,
});
}

sendTestimonialDraft(
title: string,
text: string,
Expand Down
137 changes: 74 additions & 63 deletions src/app/projectmanagement/overview.component.html

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
Expand Up @@ -19,15 +19,27 @@ <h5 class="alert-heading">Project migrated to new SimpleVM platform</h5>
This machine is part of a project migrated to the new SimpleVM platform. You are not able to control this
machine using the current platform.
</p>
<p *ngIf="WIKI_SVM_MIGRATION_LINK?.toString().length > 0">
Information about the new SimpleVM platform is available
<a class="alert-link" href="{{ WIKI_SVM_MIGRATION_LINK }}" target="_blank" rel="noopener noreferrer">here</a>.
</p>
<p>
Machines and other cloud components that have already been started or created are not affected by this migration
and can still be accessed and managed via the new platform. Project applications, extension and change requests
are still processed via the platform you are already familiar with.
</p>
<hr />
<div>
We hope that you are satisfied with the SimpleVM platform. Since the early days of the de.NBI Cloud in 2017, we,
the de.NBI Cloud Portal Team, have been working tirelessly to improve the user experience and develop features
that help you to focus on your research while using the de.NBI Cloud. Due to the growing complexity of SimpleVM
as part of the de.NBI Cloud Portal, we have decided that SimpleVM will continue to live as its own independent
software. This will also allow the SimpleVM stack to run independently of the de.NBI organization. We will start
migrating SimpleVM projects from the old platform to the new one.
<hr />
<strong>What does this mean for you and your project?</strong><br />

Once your project has been migrated, you can only control your resources via the new platform. You will have
access to the same resources you requested.
<hr />
<strong>Will all projects be migrated?</strong><br />

Sooner or later all projects will be migrated, but we will start with the standard projects and continue with
workshop and cluster projects with special project settings. Please feel free to
<a href="mailto:{{ CLOUD_PORTAL_SUPPORT_MAIL }}" target="_blank" rel="noopener norefferer">contact us</a> if you
have any questions.
</div>
<hr />
<p class="mb-0">
You can get to the new platform
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ import {
Component, OnInit, OnDestroy, Input,
} from '@angular/core';
import { Subscription } from 'rxjs';
import { NEW_SVM_KEYCLOAK_LOGIN, WIKI_SVM_MIGRATION_LINK } from '../../../../links/links';
import { CLOUD_PORTAL_SUPPORT_MAIL, NEW_SVM_KEYCLOAK_LOGIN } from '../../../../links/links';

@Component({
selector: 'app-migration-information',
Expand All @@ -12,9 +12,8 @@ import { NEW_SVM_KEYCLOAK_LOGIN, WIKI_SVM_MIGRATION_LINK } from '../../../../lin
export class MigrationInformationComponent implements OnInit, OnDestroy {
subscription: Subscription = new Subscription();

WIKI_SVM_MIGRATION_LINK: string = WIKI_SVM_MIGRATION_LINK;

NEW_SVM_KEYCLOAK_LOGIN: string = NEW_SVM_KEYCLOAK_LOGIN;
CLOUD_PORTAL_SUPPORT_MAIL: string = CLOUD_PORTAL_SUPPORT_MAIL;

@Input() isCreationPage: boolean = false;
@Input() affectedProjects: string[] = [];
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,18 @@ <h5 class="card-title">Add testimonial draft</h5>
<div class="col-md-auto mx-auto">
<div class="alert alert-info">
An overview of the testimonials already published can be found
<a href="{{ TESTIMONIAL_PAGE_LINK }}" target="_blank" rel="noopener norefferer">here</a>. For both the text and
the excerpt, you can use the examples found there as a guide.
<a class="alert-link" href="{{ TESTIMONIAL_PAGE_LINK }}" target="_blank" rel="noopener norefferer">here</a>.
Good examples of how long and in what form the text for the excerpt should be is provided by the testimonials
given on this page.
<br />
<strong>Please consider</strong>:
<p>
<a class="alert-link" href="{{ SINGLE_TESTIMONIAL_PAGE_LINK }}" target="_blank" rel="noopener norefferer"
>This testimonial</a
>
serves as a good example of how long the text should be and what content it should cover. You can find more
information below.
</p>
<hr />
<strong>On the procedure:</strong>
<p>
Expand All @@ -26,16 +36,16 @@ <h5 class="card-title">Add testimonial draft</h5>
<div class="card-body" *ngIf="!testimonialSent && testimonialFormGroup && !this.hideTestimonialForm">
<form id="testimonialForm" [formGroup]="testimonialFormGroup" class="form-horizontal">
<div class="form-group row">
<div class="col-md-4">
<label class="col-md-4 form-control-label">
<div class="col-md-3">
<label class="form-control-label">
<strong
>Title*
<i class="icon-question" data-toggle="tooltip" title="The title of your testimonial"> </i>
</strong>
</label>
</div>

<div class="col-md-8">
<div class="col-md-9">
<div class="input-group">
<input
class="form-control"
Expand All @@ -51,22 +61,24 @@ <h5 class="card-title">Add testimonial draft</h5>
}"
/>
</div>
<div class="form-text">Please provide a title that specifies your project or work in the cloud.</div>
</div>
</div>
<div class="form-group row">
<div class="col-md-4">
<label class="col-md-4 form-control-label">
<div class="col-md-3">
<label class="form-control-label">
<strong
>Text*
<i class="icon-question" data-toggle="tooltip" title="The text of your testimonial"> </i>
</strong>
</label>
</div>

<div class="col-md-8">
<div class="col-md-9">
<div class="input-group">
<textarea
required
rows="20"
[ngClass]="{
'is-invalid': testimonialFormGroup.controls.testimonial_text?.invalid,
'is-valid': testimonialFormGroup.controls.testimonial_text?.valid
Expand All @@ -77,39 +89,50 @@ <h5 class="card-title">Add testimonial draft</h5>
id="testimonial_text"
></textarea>
</div>
<div class="form-text">
Please describe what you are working on in your project and what you have used the de.NBI Cloud for (for
example, what are the requirements of your research or what tools you use). What benefits have you gained from
working within our cloud? Which functions of the cloud have been particularly helpful or made your work
easier?
</div>
</div>
</div>

<div class="form-group row">
<div class="col-md-4">
<label class="col-md-4 form-control-label">
<div class="col-md-3">
<label class="form-control-label">
<strong
>Excerpt*
<i class="icon-question" data-toggle="tooltip" title="The excerpt of your testimonial"> </i>
</strong>
</label>
</div>

<div class="col-md-8">
<div class="col-md-9">
<div class="input-group">
<textarea
class="form-control"
name="testimonial_excerpt"
formControlName="testimonial_excerpt"
id="testimonial_excerpt"
required
rows="4"
[ngClass]="{
'is-invalid': testimonialFormGroup.controls.testimonial_excerpt?.invalid,
'is-valid': testimonialFormGroup.controls.testimonial_excerpt?.valid
}"
></textarea>
</div>
<div class="form-text">
Please summarise your positive experiences in the cloud in 3-4 sentences. If your main text contains such a
section, you can copy it into this field.
</div>
</div>
</div>

<div class="form-group row">
<div class="col-md-4">
<label class="col-md-4 form-control-label">
<div class="col-md-3">
<label class="form-control-label">
<strong
>Contributor*
<i
Expand All @@ -122,7 +145,7 @@ <h5 class="card-title">Add testimonial draft</h5>
</label>
</div>

<div class="col-md-8">
<div class="col-md-9">
<div class="input-group">
<input
class="form-control"
Expand All @@ -138,12 +161,16 @@ <h5 class="card-title">Add testimonial draft</h5>
}"
/>
</div>
<div class="form-text">
Please provide the person responsible for the testimonial or the person on whose behalf the testimonial is
written.
</div>
</div>
</div>

<div class="form-group row">
<div class="col-md-4">
<label class="col-md-4 form-control-label">
<div class="col-md-3">
<label class="form-control-label">
<strong
>Institute*
<i
Expand All @@ -156,7 +183,7 @@ <h5 class="card-title">Add testimonial draft</h5>
</label>
</div>

<div class="col-md-8">
<div class="col-md-9">
<div class="input-group">
<input
class="form-control"
Expand All @@ -172,20 +199,21 @@ <h5 class="card-title">Add testimonial draft</h5>
}"
/>
</div>
<div class="form-text">Please provide the institute of your working group.</div>
</div>
</div>

<div class="form-group row">
<div class="col-md-4">
<label class="col-md-4 form-control-label">
<div class="col-md-3">
<label class="form-control-label">
<strong
>Workgroup*
<i class="icon-question" data-toggle="tooltip" title="The working group behind the project."> </i>
</strong>
</label>
</div>

<div class="col-md-8">
<div class="col-md-9">
<div class="input-group">
<input
class="form-control"
Expand All @@ -201,12 +229,13 @@ <h5 class="card-title">Add testimonial draft</h5>
}"
/>
</div>
<div class="form-text">Please provide your working group.</div>
</div>
</div>

<div class="form-group row">
<div class="col-md-4">
<label class="col-md-4 form-control-label">
<div class="col-md-3">
<label class="form-control-label">
<strong
>Photography*
<i
Expand All @@ -219,7 +248,7 @@ <h5 class="card-title">Add testimonial draft</h5>
</label>
</div>

<div class="col-md-8">
<div class="col-md-9">
<div class="input-group">
<div class="custom-file">
<input
Expand All @@ -233,6 +262,10 @@ <h5 class="card-title">Add testimonial draft</h5>
<label class="custom-file-label" for="testimonialPhotoInput">{{ file ? file.name : 'Choose Image' }}</label>
</div>
</div>
<div class="form-text">
At best, upload a picture of the responsible person or working group here. Please only upload pictures that
can be publicly used. By uploading the image, we assume that the image may be used publicly by us.
</div>
</div>
</div>
</form>
Expand Down Expand Up @@ -266,7 +299,7 @@ <h5 class="card-title">Add testimonial draft</h5>
Please provide a longer text.
</li>
<li class="list-group-item" *ngIf="testimonialFormGroup?.controls['testimonial_excerpt'].invalid">
Please provide an excerpt, which is at least 50 characters long but does not exceed 1000 characters.
Please provide an excerpt, which is at least 200 characters long but does not exceed 1000 characters.
</li>
<li class="list-group-item" *ngIf="testimonialFormGroup?.controls['testimonial_contributor'].invalid">
Please provide a contributor.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ import {
import { Subscription } from 'rxjs';
import { ModalDirective } from 'ngx-bootstrap/modal';
import { UntypedFormBuilder, UntypedFormGroup, Validators } from '@angular/forms';
import { TESTIMONIAL_PAGE_LINK, CLOUD_PORTAL_SUPPORT_MAIL } from '../../../../links/links';
import { TESTIMONIAL_PAGE_LINK, CLOUD_PORTAL_SUPPORT_MAIL, SINGLE_TESTIMONIAL_PAGE_LINK } from '../../../../links/links';
import { NewsService } from '../../../api-connector/news.service';
import { Application } from '../../../applications/application.model/application.model';

Expand All @@ -18,6 +18,7 @@ export class TestimonialFormComponent implements OnInit, OnDestroy {
subscription: Subscription = new Subscription();

TESTIMONIAL_PAGE_LINK: string = TESTIMONIAL_PAGE_LINK;
SINGLE_TESTIMONIAL_PAGE_LINK: string = SINGLE_TESTIMONIAL_PAGE_LINK;
CLOUD_PORTAL_SUPPORT_MAIL: string = CLOUD_PORTAL_SUPPORT_MAIL;
@ViewChild('testimonialModal') testimonialModal: ModalDirective;

Expand Down Expand Up @@ -66,10 +67,10 @@ export class TestimonialFormComponent implements OnInit, OnDestroy {
createFormGroup(): void {
this.testimonialFormGroup = this.formBuilder.group({
testimonial_title: [this.title, Validators.compose([Validators.required, Validators.minLength(5)])],
testimonial_text: [this.text, Validators.compose([Validators.required, Validators.minLength(200)])],
testimonial_text: [this.text, Validators.compose([Validators.required, Validators.minLength(1500)])],
testimonial_excerpt: [
this.excerpt,
Validators.compose([Validators.required, Validators.minLength(50), Validators.maxLength(1000)]),
Validators.compose([Validators.required, Validators.minLength(200), Validators.maxLength(1000)]),
],
testimonial_contributor: [this.contributor, Validators.required],
testimonial_institution: [this.institution, Validators.required],
Expand Down
Loading

0 comments on commit 0dee04c

Please sign in to comment.