diff --git a/src/app/app.component.html b/src/app/app.component.html
index 5fe0ccca..222bd836 100644
--- a/src/app/app.component.html
+++ b/src/app/app.component.html
@@ -3,6 +3,7 @@
+
diff --git a/src/app/app.module.ts b/src/app/app.module.ts
index 06a910e4..020415da 100644
--- a/src/app/app.module.ts
+++ b/src/app/app.module.ts
@@ -22,6 +22,7 @@ import { AppComponent } from './app.component';
import { CoreModule } from './core/core.module';
import { OldStuffModule } from './features/old-stuff/old-stuff.module';
import { SharedModule } from './shared/shared.module';
+import { ParticipationModule } from './features/participation/participation.module';
export class MyMissingTranslationHandler implements MissingTranslationHandler {
public handle(params: MissingTranslationHandlerParams): string {
@@ -59,7 +60,7 @@ export function HttpLoaderFactory(http: HttpClient): TranslateHttpLoader {
},
useDefaultLang: false,
}),
- OldStuffModule,
+ ParticipationModule,
],
providers: [Title, TranslateService],
bootstrap: [AppComponent],
diff --git a/src/app/features/participation/participation.module.ts b/src/app/features/participation/participation.module.ts
index 3fa82ffa..457931c2 100644
--- a/src/app/features/participation/participation.module.ts
+++ b/src/app/features/participation/participation.module.ts
@@ -10,5 +10,6 @@ import { PollComponent } from './poll/poll.component';
@NgModule({
declarations: [ParticipationComponent, PollComponent],
imports: [CommonModule, ParticipationRoutingModule, SharedModule, TranslateModule.forChild({ extend: true })],
+ exports: [],
})
export class ParticipationModule {}
diff --git a/src/app/shared/components/feedback/feedback.component.html b/src/app/shared/components/feedback/feedback.component.html
new file mode 100644
index 00000000..ab8e07fe
--- /dev/null
+++ b/src/app/shared/components/feedback/feedback.component.html
@@ -0,0 +1,23 @@
+
diff --git a/src/app/shared/components/feedback/feedback.component.scss b/src/app/shared/components/feedback/feedback.component.scss
new file mode 100644
index 00000000..b5963fdb
--- /dev/null
+++ b/src/app/shared/components/feedback/feedback.component.scss
@@ -0,0 +1,39 @@
+:host {
+ position: fixed;
+ bottom: 1em;
+ right: 1em;
+ color: white;
+ .feedback-choices {
+ &.active {
+ background: #0c5593;
+ border-radius: 0.5em;
+ padding: 1em;
+ margin-bottom: 0.5em;
+ }
+ }
+ .link {
+ margin: 1ch;
+ display: block;
+ max-width: 10em;
+ color: white;
+ padding: 0.5rem 1rem;
+ &:hover {
+ background: white;
+ color: black;
+ }
+ }
+ i {
+ color: white;
+ margin: 1ch;
+ }
+ .button {
+ float: right;
+ color: white;
+ background: #0c5593;
+ padding: 1em;
+ border-radius: 2em;
+ &.active {
+ background: #2e6da4;
+ }
+ }
+}
diff --git a/src/app/shared/components/feedback/feedback.component.spec.ts b/src/app/shared/components/feedback/feedback.component.spec.ts
new file mode 100644
index 00000000..406df874
--- /dev/null
+++ b/src/app/shared/components/feedback/feedback.component.spec.ts
@@ -0,0 +1,24 @@
+import { async, ComponentFixture, TestBed } from '@angular/core/testing';
+
+import { FeedbackComponent } from './feedback.component';
+
+describe('FeedbackComponent', () => {
+ let component: FeedbackComponent;
+ let fixture: ComponentFixture;
+
+ beforeEach(async(() => {
+ TestBed.configureTestingModule({
+ declarations: [FeedbackComponent],
+ }).compileComponents();
+ }));
+
+ beforeEach(() => {
+ fixture = TestBed.createComponent(FeedbackComponent);
+ component = fixture.componentInstance;
+ fixture.detectChanges();
+ });
+
+ it('should create', () => {
+ expect(component).toBeTruthy();
+ });
+});
diff --git a/src/app/shared/components/feedback/feedback.component.ts b/src/app/shared/components/feedback/feedback.component.ts
new file mode 100644
index 00000000..90609c93
--- /dev/null
+++ b/src/app/shared/components/feedback/feedback.component.ts
@@ -0,0 +1,13 @@
+import { Component, OnInit } from '@angular/core';
+
+@Component({
+ selector: 'app-feedback',
+ templateUrl: './feedback.component.html',
+ styleUrls: ['./feedback.component.scss'],
+})
+export class FeedbackComponent implements OnInit {
+ private isOpen = false;
+
+ constructor() {}
+ ngOnInit(): void {}
+}
diff --git a/src/app/shared/shared.module.ts b/src/app/shared/shared.module.ts
index 4c19901e..266abaf1 100644
--- a/src/app/shared/shared.module.ts
+++ b/src/app/shared/shared.module.ts
@@ -17,9 +17,10 @@ import { ConfirmationService, MessageService } from 'primeng/api';
import { PageNotFoundComponent } from './components/page-not-found/page-not-found.component';
import { PollPageComponent } from './components/poll-page/poll-page.component';
+import { FeedbackComponent } from './components/feedback/feedback.component';
@NgModule({
- declarations: [PageNotFoundComponent, PollPageComponent],
+ declarations: [PageNotFoundComponent, PollPageComponent, FeedbackComponent],
imports: [
CommonModule,
ChartsModule,
@@ -38,6 +39,7 @@ import { PollPageComponent } from './components/poll-page/poll-page.component';
ChartsModule,
ConfirmDialogModule,
DialogModule,
+ FeedbackComponent,
InputSwitchModule,
InputTextareaModule,
MessageModule,