diff --git a/angular.json b/angular.json
index c86c8402..4848a4f1 100644
--- a/angular.json
+++ b/angular.json
@@ -22,10 +22,16 @@
"main": "src/main.ts",
"polyfills": "src/polyfills.ts",
"tsConfig": "tsconfig.app.json",
- "assets": ["src/favicon.ico", "src/assets"],
+ "assets": [
+ "src/favicon.ico",
+ "src/assets"
+ ],
"styles": [
"node_modules/fork-awesome/css/fork-awesome.min.css",
"node_modules/bulma-switch/dist/css/bulma-switch.min.css",
+ "node_modules/primeicons/primeicons.css",
+ "node_modules/primeng/resources/themes/saga-blue/theme.css",
+ "node_modules/primeng/resources/primeng.min.css",
"src/styles.scss"
],
"scripts": [
@@ -93,8 +99,14 @@
"lint": {
"builder": "@angular-devkit/build-angular:tslint",
"options": {
- "tsConfig": ["tsconfig.app.json", "tsconfig.spec.json", "e2e/tsconfig.json"],
- "exclude": ["**/node_modules/**"]
+ "tsConfig": [
+ "tsconfig.app.json",
+ "tsconfig.spec.json",
+ "e2e/tsconfig.json"
+ ],
+ "exclude": [
+ "**/node_modules/**"
+ ]
}
},
"e2e": {
diff --git a/package.json b/package.json
index d5c23125..33e64a2c 100644
--- a/package.json
+++ b/package.json
@@ -59,6 +59,7 @@
"ngx-markdown": "^9.0.0",
"ngx-webstorage": "^5.0.0",
"node-forge": "^0.10.0",
+ "primeicons": "^5.0.0",
"primeng": "^11.0.0",
"quill": "^1.3.7",
"rxjs": "^6.5.5",
diff --git a/src/app/app.component.ts b/src/app/app.component.ts
index dde91e65..834fb389 100644
--- a/src/app/app.component.ts
+++ b/src/app/app.component.ts
@@ -101,7 +101,7 @@ export class AppComponent implements OnInit, OnDestroy, AfterViewInit {
});
// debug cors
- this.apiService.getAllAvailablePolls();
+ // this.apiService.getAllAvailablePolls();
}
ngAfterViewInit(): void {
diff --git a/src/app/features/administration/administration.module.ts b/src/app/features/administration/administration.module.ts
index 70e204ed..c310d712 100644
--- a/src/app/features/administration/administration.module.ts
+++ b/src/app/features/administration/administration.module.ts
@@ -28,6 +28,7 @@ import { DayListComponent } from './form/date/list/day/day-list.component';
import { PickerComponent } from './form/date/picker/picker.component';
import { TimeListComponent } from './form/date/list/time/time-list.component';
import { AdminConsultationComponent } from './consultation/consultation.component';
+import { ConfirmDialogModule } from 'primeng/confirmdialog';
@NgModule({
declarations: [
@@ -62,6 +63,7 @@ import { AdminConsultationComponent } from './consultation/consultation.componen
FormsModule,
TranslateModule.forChild({ extend: true }),
DragDropModule,
+ ConfirmDialogModule,
],
})
export class AdministrationModule {}
diff --git a/src/app/features/administration/form/steps/step-one/step-one.component.html b/src/app/features/administration/form/steps/step-one/step-one.component.html
index f133ba0b..3a227930 100644
--- a/src/app/features/administration/form/steps/step-one/step-one.component.html
+++ b/src/app/features/administration/form/steps/step-one/step-one.component.html
@@ -58,10 +58,31 @@
+
+
+ {{ 'creation.dialog' | translate }}
+
+
+
+
+
+
-
diff --git a/src/app/features/administration/form/steps/step-one/step-one.component.ts b/src/app/features/administration/form/steps/step-one/step-one.component.ts
index 24414959..d39ec912 100644
--- a/src/app/features/administration/form/steps/step-one/step-one.component.ts
+++ b/src/app/features/administration/form/steps/step-one/step-one.component.ts
@@ -2,6 +2,8 @@ import { Component, Inject, Input, OnInit } from '@angular/core';
import { FormGroup } from '@angular/forms';
import { PollService } from '../../../../../core/services/poll.service';
import { DOCUMENT } from '@angular/common';
+import { ConfirmationService } from 'primeng/api';
+import { Router } from '@angular/router';
@Component({
selector: 'app-step-one',
@@ -9,13 +11,18 @@ import { DOCUMENT } from '@angular/common';
styleUrls: ['./step-one.component.scss'],
})
export class StepOneComponent implements OnInit {
- constructor(public pollService: PollService, @Inject(DOCUMENT) private document: any) {}
-
@Input()
step_max: any;
@Input()
form: FormGroup;
+ constructor(
+ public pollService: PollService,
+ @Inject(DOCUMENT) private document: any,
+ private router: Router,
+ private confirmationService: ConfirmationService
+ ) {}
+
ngOnInit(): void {
this.pollService.step_current = 1;
const selector = '#title';
@@ -24,4 +31,13 @@ export class StepOneComponent implements OnInit {
firstField.focus();
}
}
+
+ cancelCreationDialog() {
+ this.confirmationService.confirm({
+ message: 'Quitter la création de sondage?',
+ accept: () => {
+ this.router.navigate(['/']);
+ },
+ });
+ }
}
diff --git a/src/app/features/administration/form/steps/step-two/step-two.component.html b/src/app/features/administration/form/steps/step-two/step-two.component.html
index 5cfbfba4..d5c44a03 100644
--- a/src/app/features/administration/form/steps/step-two/step-two.component.html
+++ b/src/app/features/administration/form/steps/step-two/step-two.component.html
@@ -20,6 +20,7 @@
diff --git a/src/app/features/administration/stepper/stepper.component.html b/src/app/features/administration/stepper/stepper.component.html
index 697b6b74..2090b4e2 100644
--- a/src/app/features/administration/stepper/stepper.component.html
+++ b/src/app/features/administration/stepper/stepper.component.html
@@ -1,4 +1,4 @@
-
+
@@ -52,4 +64,28 @@
+
+
+
+
+ {{ 'creation.dialog' | translate }}
+
+
+
+
+
+
+
diff --git a/src/app/features/administration/stepper/stepper.component.ts b/src/app/features/administration/stepper/stepper.component.ts
index 9f4fc3e7..f37f750c 100644
--- a/src/app/features/administration/stepper/stepper.component.ts
+++ b/src/app/features/administration/stepper/stepper.component.ts
@@ -1,6 +1,7 @@
import { Component, Input, OnInit } from '@angular/core';
import { PollService } from '../../../core/services/poll.service';
import { environment } from '../../../../environments/environment';
+import { ConfirmationService } from 'primeng/api';
@Component({
selector: 'app-stepper',
@@ -13,5 +14,14 @@ export class StepperComponent {
@Input()
public step_max: number = 5;
public show_shortcuts = environment.showStepperShortcuts;
- constructor(public pollService: PollService) {}
+ constructor(public pollService: PollService, private confirmationService: ConfirmationService) {}
+
+ cancelDialog() {
+ this.confirmationService.confirm({
+ message: 'Quitter la création de sondage?',
+ accept: () => {
+ this.router.navigate(['/']);
+ },
+ });
+ }
}
diff --git a/src/app/features/administration/success/success.component.scss b/src/app/features/administration/success/success.component.scss
index f354ac03..be5620d6 100644
--- a/src/app/features/administration/success/success.component.scss
+++ b/src/app/features/administration/success/success.component.scss
@@ -11,6 +11,7 @@ a {
max-width: 20em;
@extend .truncate;
}
+.admin-ok pre,
.truncate {
white-space: nowrap;
overflow: hidden;
diff --git a/src/app/shared/shared.module.ts b/src/app/shared/shared.module.ts
index 940a564d..b9e6e287 100644
--- a/src/app/shared/shared.module.ts
+++ b/src/app/shared/shared.module.ts
@@ -28,6 +28,8 @@ import { ErasableInputComponent } from './components/ui/erasable-input/erasable-
import { WipTodoComponent } from './components/ui/wip-todo/wip-todo.component';
import { ErrorsListComponent } from '../features/shared/components/ui/form/errors-list/errors-list.component';
import { ShortcutsHelpComponent } from '../features/shared/components/ui/shortcuts-help/shortcuts-help.component';
+import { ConfirmDialogModule } from 'primeng/confirmdialog';
+import { ConfirmationService } from 'primeng/api';
const COMPONENTS = [
ChoiceDetailsComponent,
@@ -63,7 +65,8 @@ const MATERIAL_MODULES = [
@NgModule({
declarations: COMPONENTS,
- imports: [...ANGULAR_MODULES, ...MATERIAL_MODULES],
+ imports: [...ANGULAR_MODULES, ...MATERIAL_MODULES, ConfirmDialogModule],
exports: [...ANGULAR_MODULES, ...MATERIAL_MODULES, ...COMPONENTS],
+ providers: [ConfirmationService],
})
export class SharedModule {}
diff --git a/src/assets/i18n/FR.json b/src/assets/i18n/FR.json
index 95cb5e88..b2e61b61 100644
--- a/src/assets/i18n/FR.json
+++ b/src/assets/i18n/FR.json
@@ -29,6 +29,7 @@
"creation": {
"title": "Créer un sondage",
"want": "Choisissez le type de sondage",
+ "dialog": "Quitter la création de sondage?",
"advanced": "Options avancées",
"kind": {
"classic": "Propositions",
@@ -143,6 +144,10 @@
"choiceNotColorblind": "Je ne suis pas",
"colorblindText": "daltonien."
},
+ "dialogs" : {
+ "no": "non",
+ "yes": "oui"
+ },
"selectors": {
"lang": "Sélectionner la langue"
},
diff --git a/src/environments/environment.ts b/src/environments/environment.ts
index 8b3a6a3c..84964537 100644
--- a/src/environments/environment.ts
+++ b/src/environments/environment.ts
@@ -12,16 +12,14 @@ export const environment = {
production: false,
display_routes: true, // demo paths to test polls
autofill_creation: true,
- advanced_options_display: true,
- autofill_participation: true,
- // autofill: false,
+ advanced_options_display: false,
+ autofill_participation: false,
showDemoWarning: false,
- // autoSendNewPoll: true,
autoSendNewPoll: false,
showStepperShortcuts: true,
interval_days_default: 7,
expiresDaysDelay: 60,
- maxCountOfAnswers: 150,
+ maxCountOfAnswers: 300,
appTitle: 'Framadate',
appVersion: '0.6.0',
appLogo: 'assets/img/logo.png',
diff --git a/yarn.lock b/yarn.lock
index a1ff46b2..d27cddcb 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -9463,6 +9463,11 @@ pretty-format@^26.0.0, pretty-format@^26.1.0:
ansi-styles "^4.0.0"
react-is "^16.12.0"
+primeicons@^5.0.0:
+ version "5.0.0"
+ resolved "https://registry.yarnpkg.com/primeicons/-/primeicons-5.0.0.tgz#73a0b6028a77c58a9eeb331ad13aaf085e8451ee"
+ integrity sha512-heygWF0X5HFI1otlZE62pp6ye7sZ8om78J9au2BRkg8O7Y8AHTZ9qKMRzchZUHLe8zUAvdi6hZzzm9XxgwIExw==
+
primeng@^11.0.0:
version "11.4.5"
resolved "https://registry.yarnpkg.com/primeng/-/primeng-11.4.5.tgz#128137d727d555f68c212a1dcb1f2af3b0f4afd4"