mirror of
https://framagit.org/framasoft/framadate/funky-framadate-front.git
synced 2023-08-25 13:53:14 +02:00
about page and landing content
This commit is contained in:
parent
d009f42a56
commit
83b66d9899
@ -6,7 +6,7 @@
|
|||||||
<mat-sidenav-content>
|
<mat-sidenav-content>
|
||||||
<div id="big_container" [class]="themeClass">
|
<div id="big_container" [class]="themeClass">
|
||||||
<app-header [appTitle]="appTitle" [appLogo]="appLogo"></app-header>
|
<app-header [appTitle]="appTitle" [appLogo]="appLogo"></app-header>
|
||||||
<div [class.container]="onHomePage">
|
<div [class.container]="!onHomePage">
|
||||||
<main [@routeAnimations]="prepareRoute(outlet)">
|
<main [@routeAnimations]="prepareRoute(outlet)">
|
||||||
<router-outlet #outlet></router-outlet>
|
<router-outlet #outlet></router-outlet>
|
||||||
</main>
|
</main>
|
||||||
|
@ -130,6 +130,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<a
|
<a
|
||||||
|
*ngIf="environment.display_routes"
|
||||||
class="has-text-black"
|
class="has-text-black"
|
||||||
href="/#/administration/key/8Ubcg2YI99f69xz946cn4O64bQAebi11012P70trL5372qJ9JOem1Ks2fz7XD0b09p-8Ubcg2YI99f69xz946cn4O64bQAeb"
|
href="/#/administration/key/8Ubcg2YI99f69xz946cn4O64bQAebi11012P70trL5372qJ9JOem1Ks2fz7XD0b09p-8Ubcg2YI99f69xz946cn4O64bQAeb"
|
||||||
>
|
>
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
:host {
|
:host {
|
||||||
|
margin: 0;
|
||||||
.demo {
|
.demo {
|
||||||
margin: 1em;
|
margin: 1em;
|
||||||
}
|
}
|
||||||
|
@ -1,297 +1,169 @@
|
|||||||
<section class="hero">
|
<section>
|
||||||
<div class="hero-body">
|
<div class="landing-box">
|
||||||
<div class="columns presentation">
|
<div class="landing container content">
|
||||||
<div class="column">
|
<div class="columns presentation">
|
||||||
<h2 class="title is-2">
|
|
||||||
Organisez des évènements ou récoltez l’opinion de vos proches, simplement, librement.
|
|
||||||
</h2>
|
|
||||||
<p>
|
|
||||||
Grâce à Framadate planifiez, organisez et prenez des décisions rapidement, simplement et sans
|
|
||||||
inscription.
|
|
||||||
</p>
|
|
||||||
</div>
|
|
||||||
<div class="column">
|
|
||||||
<img src="assets/img/icone_home.png" alt="calendrier icone framadate" />
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="container">
|
|
||||||
<div class="column">
|
|
||||||
<section class="creation">
|
|
||||||
<h1 class="title is-1 is-centered">
|
|
||||||
{{ 'home.create_button' | translate }}
|
|
||||||
</h1>
|
|
||||||
<p class="subtitle">
|
|
||||||
{{
|
|
||||||
'SENTENCES.framadate-is-an-online-service-for-planning-an-appointment-or-making-a-decision-quickly-and-easily'
|
|
||||||
| translate
|
|
||||||
}}
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<div class="container is-max-desktop">
|
|
||||||
<a role="button" class="button is-fullwidth is-primary is-size-3" routerLink="administration">
|
|
||||||
{{ 'config.letsgo' | translate }}
|
|
||||||
</a>
|
|
||||||
</div>
|
|
||||||
<div
|
|
||||||
*ngIf="environment.showDemoWarning"
|
|
||||||
class="demo demo-warning well has-background-warning-light padded marged"
|
|
||||||
>
|
|
||||||
<h3 class="title is-3">
|
|
||||||
Ce que l'on peut faire sur cette démo:
|
|
||||||
</h3>
|
|
||||||
<ul>
|
|
||||||
<li>
|
|
||||||
☑️ Créer un nouveau sondage
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
☑️ accéder à un sondage existant en tant que visiteur, ajouter une réponse (StackOfVote)
|
|
||||||
et un commentaire.
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
☑️
|
|
||||||
<a
|
|
||||||
href="https://framagit.org/framasoft/framadate/funky-framadate-front/-/tree/master/docs"
|
|
||||||
>lire la documentation</a
|
|
||||||
>
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
<h3 class="title is-3">
|
|
||||||
Ce qu'on ne peut pas encore faire:
|
|
||||||
</h3>
|
|
||||||
<ul>
|
|
||||||
<li>
|
|
||||||
🚴️ mettre à jour son vote à un sondage
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
🚴 modifier un de ses sondages existants par un lien d'administration
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
🚴 recevoir immédiatement les emails. Ceux ci nécessitent un vidage du spool d'emails
|
|
||||||
du backend sur demande (mesure anti spam).
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
<section class="search">
|
|
||||||
<h1 class="title is-1 is-centered">
|
|
||||||
{{ 'home.search_title' | translate }}
|
|
||||||
</h1>
|
|
||||||
|
|
||||||
<img src="assets/img/where-is-it.jpg" alt="batman veut savoir où sont ses sondages" />
|
|
||||||
<div class="poll-list">
|
|
||||||
<ul>
|
|
||||||
<li *ngFor="let p of storageService.userPolls">
|
|
||||||
<a
|
|
||||||
class="button is-fullwidth padded"
|
|
||||||
[routerLink]="'poll/' + p.custom_url + '/consultation'"
|
|
||||||
>
|
|
||||||
{{ p.title }}
|
|
||||||
<i class="fa fa-arrow-right pull-right"></i>
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<form (ngSubmit)="searchMyPolls()">
|
|
||||||
<div class="search-others">
|
|
||||||
<label for="search_email">
|
|
||||||
{{ 'home.search_subtitle' | translate }}
|
|
||||||
</label>
|
|
||||||
<input
|
|
||||||
type="email"
|
|
||||||
name="search_email"
|
|
||||||
id="search_email"
|
|
||||||
placeholder="moi@example.com"
|
|
||||||
[ngClass]="{
|
|
||||||
'has-background-success': email_sent,
|
|
||||||
'ng-invalid has-background-warning':
|
|
||||||
nonexistent_email === storageService.vote_stack.owner.email
|
|
||||||
}"
|
|
||||||
[(ngModel)]="storageService.vote_stack.owner.email"
|
|
||||||
/>
|
|
||||||
<div class="email_sent has-background-success padded" *ngIf="email_sent">
|
|
||||||
<i class="fa fa-envelope"></i> C'est envoyé! Vérifiez votre boite email, ainsi que votre
|
|
||||||
dossier de spam.
|
|
||||||
</div>
|
|
||||||
<div
|
|
||||||
class="email_error has-background-warning padded"
|
|
||||||
*ngIf="nonexistent_email === storageService.vote_stack.owner.email"
|
|
||||||
>
|
|
||||||
<i class="fa fa-warning"></i> Aucun sondage enregistré pour cet email.
|
|
||||||
</div>
|
|
||||||
<button
|
|
||||||
type="submit"
|
|
||||||
role="button"
|
|
||||||
class="button is-outlined is-fullwidth is-info is-size-3"
|
|
||||||
[disabled]="
|
|
||||||
!storageService.vote_stack.owner.email.length ||
|
|
||||||
nonexistent_email === storageService.vote_stack.owner.email
|
|
||||||
"
|
|
||||||
routerLink="user/polls"
|
|
||||||
>
|
|
||||||
<i class="fa fa-search"></i>
|
|
||||||
{{ 'home.search_button' | translate }}
|
|
||||||
</button>
|
|
||||||
</div>
|
|
||||||
</form>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<blockquote class="notification is-info is-light content is-size-3 has-text-weight-light">
|
|
||||||
<h1 class="title">
|
|
||||||
{{ 'home.title' | translate }}
|
|
||||||
{{ environment.appTitle }}
|
|
||||||
</h1>
|
|
||||||
<i class="fa fa-poll"></i>
|
|
||||||
{{
|
|
||||||
'SENTENCES.framadate-is-an-online-service-for-planning-an-appointment-or-making-a-decision-quickly-and-easily'
|
|
||||||
| translate
|
|
||||||
}}
|
|
||||||
</blockquote>
|
|
||||||
|
|
||||||
<img src="assets/img/undraw_group_selfie_ijc6.svg" alt="image WIP" />
|
|
||||||
</div>
|
|
||||||
<div class="columns">
|
|
||||||
<div class="column">
|
<div class="column">
|
||||||
<h2 class="subtitle">
|
<h2 class="title is-2">
|
||||||
{{ 'home.subtitle' | translate }}
|
{{ 'config.landing_title' | translate }}
|
||||||
</h2>
|
</h2>
|
||||||
</div>
|
<p class="subtitle">
|
||||||
<div class="column"></div>
|
{{ 'config.landing_subtitle' | translate }}
|
||||||
</div>
|
</p>
|
||||||
<div class="columns">
|
<div class="columns">
|
||||||
<div class="column">
|
<div class="column">
|
||||||
<img src="assets/img/kind/date.jpeg" alt="sondage date" />
|
<a role="button" class="button is-fullwidth is-white" routerLink="administration">
|
||||||
</div>
|
{{ 'config.letsgo' | translate }}
|
||||||
<div class="column">
|
|
||||||
<img src="assets/img/kind/classic.jpeg" alt="sondage classique" />
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="column">
|
|
||||||
<div class="columns">
|
|
||||||
<div class="column">
|
|
||||||
<h2 class="title is-2">
|
|
||||||
<i class="fa fa-format-paint"></i>
|
|
||||||
{{ 'SENTENCES.here-is-how-it-works' | translate }}
|
|
||||||
</h2>
|
|
||||||
<p>
|
|
||||||
{{ 'SENTENCES.send-the-poll-link-to-your-friends-or-colleagues' | translate }}
|
|
||||||
|
|
||||||
{{ 'SENTENCES.what-you-can-do' | translate }}
|
|
||||||
</p>
|
|
||||||
<h2 class="title is-2">
|
|
||||||
<i class="fa fa-format-paint"></i>
|
|
||||||
{{ 'SENTENCES.view-an-example' | translate }}
|
|
||||||
</h2>
|
|
||||||
<p>
|
|
||||||
<a href="/poll/orange-ou-citron/consultation" class="btn btn-info">
|
|
||||||
<i class="fa fa-biking"></i> Orange ou citron?
|
|
||||||
</a>
|
</a>
|
||||||
</p>
|
</div>
|
||||||
<p>
|
<div class="column">
|
||||||
<i class="fa fa-gavel"></i>
|
<a role="button" class="button is-fullwidth is-secondary" routerLink="about">
|
||||||
|
{{ 'config.discover' | translate }}
|
||||||
{{ 'SENTENCES.framadate-is-licensed-under-the' | translate }}
|
</a>
|
||||||
<span class="licence has-text-weight-medium">
|
</div>
|
||||||
<i class="fa fa-gnu"></i>
|
|
||||||
GNU Affero v3 Licence
|
|
||||||
</span>
|
|
||||||
</p>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="column">
|
|
||||||
<h2 class="title is-2">
|
|
||||||
<i class="fa fa-seeding"></i>
|
|
||||||
{{ 'SENTENCES.grow-your-own' | translate }}
|
|
||||||
</h2>
|
|
||||||
<p>
|
|
||||||
{{
|
|
||||||
'SENTENCES.if-you-want-to-install-the-software-for-your-own-use-and-thus-increase-your-independence-we-can-help'
|
|
||||||
| translate
|
|
||||||
}}
|
|
||||||
{{
|
|
||||||
'SENTENCES.to-participate-in-the-software-development-suggest-improvements-or-simply-download-it-please-visit'
|
|
||||||
| translate
|
|
||||||
}}
|
|
||||||
{{ 'SENTENCES.the-development-site' | translate }}
|
|
||||||
</p>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
<div class="column">
|
||||||
<!-- statistiques-->
|
<img src="assets/img/icone_home.png" alt="calendrier icone framadate" />
|
||||||
<p class="title">Statistiques</p>
|
|
||||||
<app-wip-todo></app-wip-todo>
|
|
||||||
<div class="tile is-ancestor">
|
|
||||||
<div class="tile is-4 is-vertical is-parent">
|
|
||||||
<div class="tile is-child box">
|
|
||||||
<div class="title">
|
|
||||||
<i class="fa fa-check-circle"></i>
|
|
||||||
62 346
|
|
||||||
</div>
|
|
||||||
<p>sondages</p>
|
|
||||||
</div>
|
|
||||||
<div class="tile is-child box">
|
|
||||||
<div class="title">
|
|
||||||
<i class="fa fa-tachometer"></i>
|
|
||||||
223 124
|
|
||||||
</div>
|
|
||||||
<p>votes</p>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="tile is-child box">
|
|
||||||
<div class="title">
|
|
||||||
<i class="fa fa-comment-o"></i>
|
|
||||||
41 875
|
|
||||||
</div>
|
|
||||||
<p>commentaires</p>
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
<div class="tile is-parent">
|
|
||||||
<div class="tile is-child box">
|
|
||||||
<div class="title">
|
|
||||||
<i class="fa fa-calendar-check-o"></i>
|
|
||||||
44 985
|
|
||||||
</div>
|
|
||||||
<p>sondages de type date</p>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="tile is-child box">
|
|
||||||
<div class="title">
|
|
||||||
<i class="fa fa-file-epub"></i>
|
|
||||||
22 985
|
|
||||||
</div>
|
|
||||||
<p>sondages de type classique</p>
|
|
||||||
</div>
|
|
||||||
<div class="tile is-child box">
|
|
||||||
<div class="title">
|
|
||||||
<i class="fa fa-check-circle-o"></i>
|
|
||||||
123
|
|
||||||
</div>
|
|
||||||
<p>consensus parfaits</p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="box">
|
|
||||||
<h2 class="title">Nos Mentions légales</h2>
|
|
||||||
<ul>
|
|
||||||
<li>
|
|
||||||
<a routerLink="/legal">
|
|
||||||
mentions légales,
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<a routerLink="/cgu">
|
|
||||||
CGU, CPU,
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<a routerLink="/privacy">
|
|
||||||
politique de confidentialité.
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<div class="container home-content">
|
||||||
|
<div class="column">
|
||||||
|
<section class="search">
|
||||||
|
<!-- <img src="assets/img/where-is-it.jpg" alt="batman veut savoir où sont ses sondages"/>-->
|
||||||
|
|
||||||
|
<form (ngSubmit)="searchMyPolls()">
|
||||||
|
<div class="search-others-box">
|
||||||
|
<div class="columns">
|
||||||
|
<div class="search-others column is-three-fifths-desktop marged-auto">
|
||||||
|
<h2 class="title is-2">
|
||||||
|
{{ 'home.search_title' | translate }}
|
||||||
|
</h2>
|
||||||
|
<div class="search-description">
|
||||||
|
{{ 'home.search_subtitle' | translate }}
|
||||||
|
</div>
|
||||||
|
<label for="search_email">
|
||||||
|
{{ 'home.search_label' | translate }}
|
||||||
|
</label>
|
||||||
|
<input
|
||||||
|
type="email"
|
||||||
|
class="is-full input"
|
||||||
|
name="search_email"
|
||||||
|
id="search_email"
|
||||||
|
placeholder="moi@example.com"
|
||||||
|
[ngClass]="{
|
||||||
|
'has-background-success': email_sent,
|
||||||
|
'ng-invalid has-background-warning':
|
||||||
|
nonexistent_email === storageService.vote_stack.owner.email
|
||||||
|
}"
|
||||||
|
[(ngModel)]="storageService.vote_stack.owner.email"
|
||||||
|
/>
|
||||||
|
<div class="email_sent has-background-success padded" *ngIf="email_sent">
|
||||||
|
<i class="fa fa-envelope"></i> C'est envoyé! Vérifiez votre boite email, ainsi que
|
||||||
|
votre dossier de spam.
|
||||||
|
</div>
|
||||||
|
<div
|
||||||
|
class="email_error has-background-warning padded"
|
||||||
|
*ngIf="nonexistent_email === storageService.vote_stack.owner.email"
|
||||||
|
>
|
||||||
|
<i class="fa fa-warning"></i> Aucun sondage enregistré pour cet email.
|
||||||
|
</div>
|
||||||
|
<button
|
||||||
|
type="submit"
|
||||||
|
role="button"
|
||||||
|
class="button is-outlined is-fullwidth is-info button-submit"
|
||||||
|
[disabled]="
|
||||||
|
!storageService.vote_stack.owner.email.length ||
|
||||||
|
nonexistent_email === storageService.vote_stack.owner.email
|
||||||
|
"
|
||||||
|
routerLink="user/polls"
|
||||||
|
>
|
||||||
|
<i class="fa fa-search"></i>
|
||||||
|
{{ 'home.search_button' | translate }}
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</form>
|
||||||
|
|
||||||
|
<div class="poll-list">
|
||||||
|
<ul>
|
||||||
|
<li *ngFor="let p of storageService.userPolls">
|
||||||
|
<a
|
||||||
|
class="button is-fullwidth padded"
|
||||||
|
[routerLink]="'poll/' + p.custom_url + '/consultation'"
|
||||||
|
>
|
||||||
|
{{ p.title }}
|
||||||
|
<i class="fa fa-arrow-right pull-right"></i>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<section class="demo-capabilities">
|
||||||
|
<div
|
||||||
|
*ngIf="environment.showDemoWarning"
|
||||||
|
class="demo demo-warning well has-background-warning-light padded marged"
|
||||||
|
>
|
||||||
|
<h3 class="title is-3">
|
||||||
|
Ce que l'on peut faire sur cette démo:
|
||||||
|
</h3>
|
||||||
|
<ul>
|
||||||
|
<li>
|
||||||
|
☑️ Créer un nouveau sondage
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
☑️ accéder à un sondage existant en tant que visiteur, ajouter une réponse (StackOfVote) et
|
||||||
|
un commentaire.
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
☑️
|
||||||
|
<a href="https://framagit.org/framasoft/framadate/funky-framadate-front/-/tree/master/docs"
|
||||||
|
>lire la documentation</a
|
||||||
|
>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
<h3 class="title is-3">
|
||||||
|
Ce qu'on ne peut pas encore faire:
|
||||||
|
</h3>
|
||||||
|
<ul>
|
||||||
|
<li>
|
||||||
|
🚴️ mettre à jour son vote à un sondage
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
🚴 modifier un de ses sondages existants par un lien d'administration
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
🚴 recevoir immédiatement les emails. Ceux ci nécessitent un vidage du spool d'emails du
|
||||||
|
backend sur demande (mesure anti spam).
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="box">
|
||||||
|
<h2 class="title">Nos Mentions légales</h2>
|
||||||
|
<ul>
|
||||||
|
<li>
|
||||||
|
<a routerLink="/legal">
|
||||||
|
mentions légales,
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<a routerLink="/cgu">
|
||||||
|
CGU, CPU,
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<a routerLink="/privacy">
|
||||||
|
politique de confidentialité.
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
</section>
|
</section>
|
||||||
|
@ -1,19 +1,65 @@
|
|||||||
@import '../../../../styles/variables';
|
@import '../../../../styles/variables';
|
||||||
|
|
||||||
:host {
|
:host {
|
||||||
text-align: center;
|
.landing-box {
|
||||||
margin-left: -2em;
|
background: $secondary_color;
|
||||||
margin-right: -2em;
|
padding: 0 1em 6em;
|
||||||
a .fa {
|
|
||||||
margin-right: 1ch;
|
|
||||||
}
|
}
|
||||||
|
.title {
|
||||||
|
color: $white;
|
||||||
|
margin-bottom: 1rem;
|
||||||
|
text-align: left;
|
||||||
|
}
|
||||||
|
|
||||||
|
.button {
|
||||||
|
color: $secondary_color !important;
|
||||||
|
background: $secondary_color;
|
||||||
|
text-align: center;
|
||||||
|
|
||||||
|
&.is-white {
|
||||||
|
background: $white;
|
||||||
|
}
|
||||||
|
&.is-secondary {
|
||||||
|
color: $white !important;
|
||||||
|
background: $secondary_color !important;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
.subtitle {
|
.subtitle {
|
||||||
|
text-align: left;
|
||||||
|
margin-top: 1rem;
|
||||||
min-height: 4em;
|
min-height: 4em;
|
||||||
|
color: $white;
|
||||||
}
|
}
|
||||||
.poll-list {
|
.poll-list {
|
||||||
margin: 2em 0;
|
margin: 2em 0;
|
||||||
}
|
}
|
||||||
.presentation {
|
|
||||||
background: $secondary_color;
|
a .fa {
|
||||||
|
margin-right: 1ch;
|
||||||
|
}
|
||||||
|
|
||||||
|
.home-content {
|
||||||
|
.title,
|
||||||
|
.subtitle {
|
||||||
|
color: $primary_color;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.search {
|
||||||
|
margin-top: 2em;
|
||||||
|
.search-others {
|
||||||
|
padding: 1em;
|
||||||
|
background: $d-grey;
|
||||||
|
border-radius: 0.25em;
|
||||||
|
}
|
||||||
|
#search_email {
|
||||||
|
background: $white;
|
||||||
|
}
|
||||||
|
.button-submit {
|
||||||
|
background: $d-grey;
|
||||||
|
color: $secondary_color;
|
||||||
|
border-color: $secondary_color;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -0,0 +1,166 @@
|
|||||||
|
<div class="static-page content">
|
||||||
|
<article>
|
||||||
|
<section class="hero is-info">
|
||||||
|
<div class="hero-body">
|
||||||
|
<p class="title">
|
||||||
|
À propos
|
||||||
|
</p>
|
||||||
|
<p class="subtitle">
|
||||||
|
...
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
<section class="hero is-info">
|
||||||
|
<div class="hero-body">
|
||||||
|
<p class="title">
|
||||||
|
...
|
||||||
|
</p>
|
||||||
|
<p class="subtitle">
|
||||||
|
Détails de l'à propos
|
||||||
|
</p>
|
||||||
|
<div class="content">
|
||||||
|
<blockquote class="notification is-info is-light content is-size-3 has-text-weight-light">
|
||||||
|
<h1 class="title">
|
||||||
|
{{ 'home.title' | translate }}
|
||||||
|
{{ environment.appTitle }}
|
||||||
|
</h1>
|
||||||
|
<i class="fa fa-poll"></i>
|
||||||
|
{{
|
||||||
|
'SENTENCES.framadate-is-an-online-service-for-planning-an-appointment-or-making-a-decision-quickly-and-easily'
|
||||||
|
| translate
|
||||||
|
}}
|
||||||
|
</blockquote>
|
||||||
|
|
||||||
|
<img src="assets/img/undraw_group_selfie_ijc6.svg" alt="image WIP" />
|
||||||
|
|
||||||
|
<div class="columns">
|
||||||
|
<div class="column">
|
||||||
|
<h2 class="subtitle">
|
||||||
|
{{ 'home.subtitle' | translate }}
|
||||||
|
</h2>
|
||||||
|
</div>
|
||||||
|
<div class="column"></div>
|
||||||
|
</div>
|
||||||
|
<div class="columns">
|
||||||
|
<div class="column">
|
||||||
|
<img src="assets/img/kind/date.jpeg" alt="sondage date" />
|
||||||
|
</div>
|
||||||
|
<div class="column">
|
||||||
|
<img src="assets/img/kind/classic.jpeg" alt="sondage classique" />
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<!-- old text-->
|
||||||
|
<div class="column">
|
||||||
|
<div class="columns">
|
||||||
|
<div class="column">
|
||||||
|
<h2 class="title is-2">
|
||||||
|
<i class="fa fa-format-paint"></i>
|
||||||
|
{{ 'SENTENCES.here-is-how-it-works' | translate }}
|
||||||
|
</h2>
|
||||||
|
<p>
|
||||||
|
{{ 'SENTENCES.send-the-poll-link-to-your-friends-or-colleagues' | translate }}
|
||||||
|
|
||||||
|
{{ 'SENTENCES.what-you-can-do' | translate }}
|
||||||
|
</p>
|
||||||
|
<h2 class="title is-2">
|
||||||
|
<i class="fa fa-format-paint"></i>
|
||||||
|
{{ 'SENTENCES.view-an-example' | translate }}
|
||||||
|
</h2>
|
||||||
|
<p>
|
||||||
|
<a href="/poll/orange-ou-citron/consultation" class="btn btn-info">
|
||||||
|
<i class="fa fa-biking"></i> Orange ou citron?
|
||||||
|
</a>
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
<i class="fa fa-gavel"></i>
|
||||||
|
|
||||||
|
{{ 'SENTENCES.framadate-is-licensed-under-the' | translate }}
|
||||||
|
<span class="licence has-text-weight-medium">
|
||||||
|
<i class="fa fa-gnu"></i>
|
||||||
|
GNU Affero v3 Licence
|
||||||
|
</span>
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="column">
|
||||||
|
<h2 class="title is-2">
|
||||||
|
<i class="fa fa-seeding"></i>
|
||||||
|
{{ 'SENTENCES.grow-your-own' | translate }}
|
||||||
|
</h2>
|
||||||
|
<p>
|
||||||
|
{{
|
||||||
|
'SENTENCES.if-you-want-to-install-the-software-for-your-own-use-and-thus-increase-your-independence-we-can-help'
|
||||||
|
| translate
|
||||||
|
}}
|
||||||
|
{{
|
||||||
|
'SENTENCES.to-participate-in-the-software-development-suggest-improvements-or-simply-download-it-please-visit'
|
||||||
|
| translate
|
||||||
|
}}
|
||||||
|
{{ 'SENTENCES.the-development-site' | translate }}
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<!-- statistiques-->
|
||||||
|
<p class="title">Statistiques</p>
|
||||||
|
<app-wip-todo></app-wip-todo>
|
||||||
|
<div class="tile is-ancestor">
|
||||||
|
<div class="tile is-4 is-vertical is-parent">
|
||||||
|
<div class="tile is-child box">
|
||||||
|
<div class="title">
|
||||||
|
<i class="fa fa-check-circle"></i>
|
||||||
|
62 346
|
||||||
|
</div>
|
||||||
|
<p>sondages</p>
|
||||||
|
</div>
|
||||||
|
<div class="tile is-child box">
|
||||||
|
<div class="title">
|
||||||
|
<i class="fa fa-tachometer"></i>
|
||||||
|
223 124
|
||||||
|
</div>
|
||||||
|
<p>votes</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="tile is-child box">
|
||||||
|
<div class="title">
|
||||||
|
<i class="fa fa-comment-o"></i>
|
||||||
|
41 875
|
||||||
|
</div>
|
||||||
|
<p>commentaires</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="tile is-parent">
|
||||||
|
<div class="tile is-child box">
|
||||||
|
<div class="title">
|
||||||
|
<i class="fa fa-calendar-check-o"></i>
|
||||||
|
44 985
|
||||||
|
</div>
|
||||||
|
<p>sondages de type date</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="tile is-child box">
|
||||||
|
<div class="title">
|
||||||
|
<i class="fa fa-file-epub"></i>
|
||||||
|
22 985
|
||||||
|
</div>
|
||||||
|
<p>sondages de type classique</p>
|
||||||
|
</div>
|
||||||
|
<div class="tile is-child box">
|
||||||
|
<div class="title">
|
||||||
|
<i class="fa fa-check-circle-o"></i>
|
||||||
|
123
|
||||||
|
</div>
|
||||||
|
<p>consensus parfaits</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<button class="button is-primary" [routerLink]="['']">
|
||||||
|
Retour
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
</article>
|
||||||
|
</div>
|
@ -0,0 +1,24 @@
|
|||||||
|
import { async, ComponentFixture, TestBed } from '@angular/core/testing';
|
||||||
|
|
||||||
|
import { AboutComponent } from './about.component';
|
||||||
|
|
||||||
|
describe('AboutComponent', () => {
|
||||||
|
let component: AboutComponent;
|
||||||
|
let fixture: ComponentFixture<AboutComponent>;
|
||||||
|
|
||||||
|
beforeEach(async(() => {
|
||||||
|
TestBed.configureTestingModule({
|
||||||
|
declarations: [AboutComponent],
|
||||||
|
}).compileComponents();
|
||||||
|
}));
|
||||||
|
|
||||||
|
beforeEach(() => {
|
||||||
|
fixture = TestBed.createComponent(AboutComponent);
|
||||||
|
component = fixture.componentInstance;
|
||||||
|
fixture.detectChanges();
|
||||||
|
});
|
||||||
|
|
||||||
|
it('should create', () => {
|
||||||
|
expect(component).toBeTruthy();
|
||||||
|
});
|
||||||
|
});
|
@ -0,0 +1,14 @@
|
|||||||
|
import { Component, OnInit } from '@angular/core';
|
||||||
|
import { environment } from 'src/environments/environment';
|
||||||
|
|
||||||
|
@Component({
|
||||||
|
selector: 'app-about',
|
||||||
|
templateUrl: './about.component.html',
|
||||||
|
styleUrls: ['./about.component.scss'],
|
||||||
|
})
|
||||||
|
export class AboutComponent implements OnInit {
|
||||||
|
public environment = environment;
|
||||||
|
constructor() {}
|
||||||
|
|
||||||
|
ngOnInit(): void {}
|
||||||
|
}
|
@ -8,6 +8,7 @@ import { CguComponent } from './features/shared/components/ui/static-pages/cgu/c
|
|||||||
import { LegalComponent } from './features/shared/components/ui/static-pages/legal/legal.component';
|
import { LegalComponent } from './features/shared/components/ui/static-pages/legal/legal.component';
|
||||||
import { PrivacyComponent } from './features/shared/components/ui/static-pages/privacy/privacy.component';
|
import { PrivacyComponent } from './features/shared/components/ui/static-pages/privacy/privacy.component';
|
||||||
import { CipheringComponent } from './features/shared/components/ui/static-pages/ciphering/ciphering.component';
|
import { CipheringComponent } from './features/shared/components/ui/static-pages/ciphering/ciphering.component';
|
||||||
|
import { AboutComponent } from './features/shared/components/ui/static-pages/about/about.component';
|
||||||
|
|
||||||
export const routes: Routes = [
|
export const routes: Routes = [
|
||||||
{ path: '', component: HomeComponent, data: { animation: 'HomePage' } },
|
{ path: '', component: HomeComponent, data: { animation: 'HomePage' } },
|
||||||
@ -49,6 +50,10 @@ export const routes: Routes = [
|
|||||||
path: 'ciphering',
|
path: 'ciphering',
|
||||||
component: CipheringComponent,
|
component: CipheringComponent,
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
path: 'about',
|
||||||
|
component: AboutComponent,
|
||||||
|
},
|
||||||
{ path: 'page-not-found', component: PageNotFoundComponent },
|
{ path: 'page-not-found', component: PageNotFoundComponent },
|
||||||
{ path: '**', redirectTo: 'page-not-found', pathMatch: 'full' },
|
{ path: '**', redirectTo: 'page-not-found', pathMatch: 'full' },
|
||||||
];
|
];
|
||||||
|
@ -30,8 +30,11 @@ import { ErrorsListComponent } from '../features/shared/components/ui/form/error
|
|||||||
import { ShortcutsHelpComponent } from '../features/shared/components/ui/shortcuts-help/shortcuts-help.component';
|
import { ShortcutsHelpComponent } from '../features/shared/components/ui/shortcuts-help/shortcuts-help.component';
|
||||||
import { ConfirmDialogModule } from 'primeng/confirmdialog';
|
import { ConfirmDialogModule } from 'primeng/confirmdialog';
|
||||||
import { ConfirmationService } from 'primeng/api';
|
import { ConfirmationService } from 'primeng/api';
|
||||||
|
import { AboutComponent } from '../features/shared/components/ui/static-pages/about/about.component';
|
||||||
|
import { RouterModule } from '@angular/router';
|
||||||
|
|
||||||
const COMPONENTS = [
|
const COMPONENTS = [
|
||||||
|
AboutComponent,
|
||||||
ChoiceDetailsComponent,
|
ChoiceDetailsComponent,
|
||||||
CommentsComponent,
|
CommentsComponent,
|
||||||
FeedbackComponent,
|
FeedbackComponent,
|
||||||
@ -65,7 +68,7 @@ const MATERIAL_MODULES = [
|
|||||||
|
|
||||||
@NgModule({
|
@NgModule({
|
||||||
declarations: COMPONENTS,
|
declarations: COMPONENTS,
|
||||||
imports: [...ANGULAR_MODULES, ...MATERIAL_MODULES, ConfirmDialogModule],
|
imports: [...ANGULAR_MODULES, ...MATERIAL_MODULES, ConfirmDialogModule, RouterModule],
|
||||||
exports: [...ANGULAR_MODULES, ...MATERIAL_MODULES, ...COMPONENTS],
|
exports: [...ANGULAR_MODULES, ...MATERIAL_MODULES, ...COMPONENTS],
|
||||||
providers: [ConfirmationService],
|
providers: [ConfirmationService],
|
||||||
})
|
})
|
||||||
|
@ -7,6 +7,7 @@
|
|||||||
"subtitle": "Se consulter simplement pour s’organiser collectivement.",
|
"subtitle": "Se consulter simplement pour s’organiser collectivement.",
|
||||||
"search_title": "Vous avez déjà créé un sondage et vous souhaitez y accéder ?",
|
"search_title": "Vous avez déjà créé un sondage et vous souhaitez y accéder ?",
|
||||||
"search_subtitle": "Saisissez votre adresse e-mail et nous vous enverrons le lien vers votre sondage. ",
|
"search_subtitle": "Saisissez votre adresse e-mail et nous vous enverrons le lien vers votre sondage. ",
|
||||||
|
"search_label": "Votre adresse e-mail",
|
||||||
"create_button": "Créer un nouveau sondage ",
|
"create_button": "Créer un nouveau sondage ",
|
||||||
"search_button": "Rechercher"
|
"search_button": "Rechercher"
|
||||||
},
|
},
|
||||||
@ -20,7 +21,10 @@
|
|||||||
"continue": "Continuer",
|
"continue": "Continuer",
|
||||||
"perfect": "C'est parfait",
|
"perfect": "C'est parfait",
|
||||||
"title": "Créer un sondage",
|
"title": "Créer un sondage",
|
||||||
"letsgo": "C'est parti !",
|
"landing_title": "Organisez des évènements ou récoltez l’opinion de vos proches, simplement, librement.",
|
||||||
|
"landing_subtitle": "Grâce à Framadate planifiez, organisez et prenez des décisions rapidement, simplement et sans inscription.",
|
||||||
|
"letsgo": "Créer un nouveau sondage",
|
||||||
|
"discover": "Découvrir Framadate",
|
||||||
"description": "Planifiez des rendez-vous avec vos amis ou votre famille ou créez un sondage avec du texte, des images ou des liens… un sondage quoi !",
|
"description": "Planifiez des rendez-vous avec vos amis ou votre famille ou créez un sondage avec du texte, des images ou des liens… un sondage quoi !",
|
||||||
"find_my_polls": "Mes sondages",
|
"find_my_polls": "Mes sondages",
|
||||||
"find_helper": "Je cherche d'autres sondages qui correspondent à mon mail",
|
"find_helper": "Je cherche d'autres sondages qui correspondent à mon mail",
|
||||||
|
@ -36,3 +36,6 @@
|
|||||||
.marged {
|
.marged {
|
||||||
margin: 1em;
|
margin: 1em;
|
||||||
}
|
}
|
||||||
|
.marged-auto {
|
||||||
|
margin: 0 auto;
|
||||||
|
}
|
||||||
|
@ -8,7 +8,3 @@ main {
|
|||||||
width: 100%;
|
width: 100%;
|
||||||
margin: 0 auto;
|
margin: 0 auto;
|
||||||
}
|
}
|
||||||
|
|
||||||
.search {
|
|
||||||
@extend main;
|
|
||||||
}
|
|
||||||
|
@ -7,8 +7,6 @@
|
|||||||
background: $white;
|
background: $white;
|
||||||
}
|
}
|
||||||
.big-header {
|
.big-header {
|
||||||
margin-bottom: 1em;
|
|
||||||
|
|
||||||
.container {
|
.container {
|
||||||
padding-bottom: 5em;
|
padding-bottom: 5em;
|
||||||
.column:last-of-type {
|
.column:last-of-type {
|
||||||
|
@ -60,9 +60,6 @@ $theme-color-tertiary: #ccc;
|
|||||||
color: $theme-color-secondary !important;
|
color: $theme-color-secondary !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
.big-header {
|
|
||||||
margin-bottom: 22px;
|
|
||||||
}
|
|
||||||
label {
|
label {
|
||||||
color: $theme-color-tertiary;
|
color: $theme-color-tertiary;
|
||||||
}
|
}
|
||||||
|
@ -26,6 +26,7 @@ $beige-lighter: #eff0eb;
|
|||||||
$d-primary: #3e3882; // bleu 800
|
$d-primary: #3e3882; // bleu 800
|
||||||
$d-primary-intense: #6359cf; // bleu 600
|
$d-primary-intense: #6359cf; // bleu 600
|
||||||
$d-grey: #f6f5fd; // bleu 300
|
$d-grey: #f6f5fd; // bleu 300
|
||||||
|
$d-blue30: #f6f5fd; // bleu 300
|
||||||
$d-rule: #e2e0fa; // bleu 100
|
$d-rule: #e2e0fa; // bleu 100
|
||||||
$d-neutral: #767486;
|
$d-neutral: #767486;
|
||||||
$d-alt: #a9607f;
|
$d-alt: #a9607f;
|
||||||
|
Loading…
Reference in New Issue
Block a user