Skip to content
Commits on Source (24)
......@@ -10,13 +10,6 @@
<h1 class="is-title is-neutral is-main is-mb-0">
{{ application.title }}
</h1>
<!-- Application disponible ou non -->
<p v-if="application.isDisabled" class="is-text is-mini-text has-text-danger">
{{ $t('common.unavailable') }}
</p>
<p v-else class="is-text is-mini-text has-text-success">
{{ $t('common.available') }}
</p>
<p class="is-text has-text-primary">
{{ application.subtitle }}
</p>
......
......@@ -5,12 +5,6 @@
<icon aria-hidden="true" :icon="application.icon" size="is-large" card :type="application.isDisabled ? 'is-danger' : null" />
<div class="item-titles">
<h3 class="item-title">
<div
v-if="showAvailable"
class="status-indicator"
:class="[application.isDisabled ? 'not-available' : 'available']"
>
</div>
{{ application.title }}
</h3>
<p class="is-text has-text-primary">
......@@ -127,4 +121,4 @@ export default {
font-weight: bold;
}
}
</style>
\ No newline at end of file
</style>
......@@ -35,9 +35,6 @@ export default {
}
</script>
<style lang="scss">
.application {
padding: 0.5rem;
}
.applications-list-title {
@include title;
@include mobile {
......
<template>
<div class="app_externe" v-if="app_externe">
<!-- Entête -->
<div class="columns is-mb-2">
<div class="column">
<!-- Titres -->
<div class="titles-container">
<icon aria-hidden="true" :icon="app_externe.icon" size="is-large" card/>
<div class="item-titles">
<h1 class="is-title is-neutral is-main is-mb-0">
{{ app_externe.title }}
</h1>
<p class="is-text has-text-primary">
{{ app_externe.subtitle }}
</p>
</div>
</div>
</div>
<div class="column">
<div class="action-container">
<platform-btn/>
</div>
</div>
</div>
<!-- Textes sur l'application -->
<div class="apps_externes-texts" v-if="app_externe.texts">
<div :class="['text-container', !text.title ? 'no-title' : null]" v-for="(text, index) in app_externe.texts" :key="index">
<div v-if="text.title" class="text-title" v-html="text.title">
</div>
<div v-if="text.body" class="text-body" v-html="text.body">
</div>
</div>
</div>
<!-- Ressources -->
<template v-if="app_externe.resources">
<h2 class="resources-title">
{{ $t('apps_externes.resources.title') }}
</h2>
<div class="resources">
<div class="resource" v-for="resource in app_externe.resources" :key="resource.id">
<app_externe-resource-item :resource="resource"/>
</div>
</div>
</template>
<!-- Stats applis -->
<!-- @TODO à reactiver quand on aura les vrais stats -->
<!-- <application-stats v-if="keyStatEnabled" :application="application" /> -->
</div>
</template>
<script>
import App_externeResourceItem from './App_externeResourceItem';
import App_externeStats from './App_externeStats';
export default {
components: {
App_externeResourceItem,
App_externeStats
},
props: {
app_externe: {
type: Object,
default: null
}
},
data() {
return {
keyStatEnabled: process.env.keyStatEnabled
}
}
}
</script>
<style lang="scss">
.apps_externes-texts {
@include texts;
}
</style>
<style lang="scss" scoped>
.app_externe {
/* Textes et Descriptions */
.is-disabled-notice {
margin-bottom: 1rem;
}
.is-mini-text {
font-size: 0.875rem;
}
.text-title {
@include text;
font-weight: 600;
color: $neutral;
}
.text-body {
color: $neutral;
}
.text-title + .text-body {
margin-top: 1rem;
}
.text-container + .text-container {
margin-top: 2rem
}
.text-container.no-title + .text-container,
.text-body + .text-body {
margin-top: 1.5rem;
}
.action-container {
display: flex;
@include from($tablet) {
justify-content: flex-end;
}
}
/* Ressources */
.resources-title {
@include title;
color: $neutral;
margin-top: 2rem;
margin-bottom: 1rem;
}
.resources {
display: flex;
flex-direction: column;
}
.resource {
width: 100%;
}
.resource + .resource {
margin-top: 1rem;
}
@include from ($tablet) {
.resource {
width: 50%;
}
}
/* Titres */
.titles-container {
display: flex;
align-items: center;
.item-titles {
padding-left: 1rem;
}
.item-title {
@include title;
margin-bottom: 0;
}
}
}
</style>
\ No newline at end of file
<template>
<card role="button" tabindex="0" v-if="app_externe" class="item" @click.native="clickApp_externe" :key="app_externe.id">
<div class="container">
<div class="content">
<icon class="logo" aria-hidden="true" :icon="app_externe.icon" size="is-large" card :type="app_externe.isDisabled ? 'is-danger' : null" />
<div class="item-titles">
<h3 class="item-title">
{{ app_externe.title }}
</h3>
<p class="is-text has-text-primary">
{{ app_externe.subtitle }}
</p>
<!-- @TODO à reactiver quand on aura les stats -->
<!-- <p v-if="keyStatEnabled && application.keyStat" class="key-stat is-text has-text-primary">
{{ application.keyStat }}
</p> -->
</div>
</div>
</div>
<div class="icon-container">
<b-icon aria-hidden="true" role="img" icon="information-outline" size="is-medium"></b-icon>
</div>
</card>
</template>
<script>
export default {
props: {
app_externe: {
type: Object,
default: null
}
},
data() {
return {
showAvailable: true,
keyStatEnabled: process.env.keyStatEnabled
}
},
methods: {
async clickApp_externe() {
await this.$router.push({name: 'apps_externes-id', params: {id: this.app_externe.id}});
}
}
}
</script>
<style scoped>
.status-indicator {
position: relative;
width: 12px;
height: 12px;
margin-right: 8px;
flex-shrink: 0;
cursor: pointer;
border-radius: 50%;
box-shadow: 0 0 0 0.5px rgb(0 0 0 / 20%);
}
.status-indicator.available {
background-color: green;
}
.status-indicator.not-available {
background-color: red;
}
</style>
<style lang="scss" scoped>
.item {
background-color: white;
width: 100%;
border: none;
cursor: pointer;
display: flex;
justify-content: space-between;
align-items: center;
box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
transition: all 0.6s cubic-bezier(0.165, 0.84, 0.44, 1);
&::after {
content: "";
border-radius: 5px;
position: absolute;
z-index: -1;
top: 0;
left: 0;
width: 100%;
height: 100%;
box-shadow: 0 5px 15px rgba(0, 0, 0, 0.3);
opacity: 0;
transition: all 0.6s cubic-bezier(0.165, 0.84, 0.44, 1);
}
&:focus,
&:hover {
transform: scale(1.02, 1.02);
}
&:focus::after,
&:hover::after {
opacity: 1;
}
.is-mini-text {
font-size: 0.875rem;
}
.content {
display: flex;
align-items: center;
}
.item-titles {
padding-left: 1rem;
}
.item-title {
@include title;
margin-bottom: 0;
display: flex;
align-items: center;
}
.icon-container .icon {
color: $primary-accent;
}
.key-stat {
font-weight: bold;
}
}
</style>
\ No newline at end of file
<template>
<card v-if="resource" class="app_externe-resource-item" :key="resource.id">
<div class="container">
<div class="content">
<icon aria-hidden="true" class="is-hidden-mobile" :icon="resource.icon" size="is-medium"/>
<div class="item-titles">
<h2 class="item-title">{{ resource.title }}</h2>
<p class="is-text has-text-primary">{{ resource.subtitle }} </p>
</div>
</div>
</div>
<div class="icon-container">
<b-icon icon="chevron-right" size="is-medium"></b-icon>
</div>
</card>
</template>
<script>
export default {
props: {
resource: {
type: Object,
default: null
}
}
}
</script>
<style lang="scss" scoped>
.app_externe-resource-item {
padding: 1rem;
cursor: pointer;
display: flex;
justify-content: space-between;
align-items: center;
.content {
display: flex;
align-items: center;
}
.item-titles {
padding-left: 1rem;
}
.item-title {
@include title;
margin-bottom: 0;
}
.icon-container .icon {
color: $primary-accent;
}
}
</style>
\ No newline at end of file
<template>
<div v-if="app_externe" class="app_externe-stats">
<h2 class="app_externe-stats__title is-title is-neutral is-main is-mt-2">
Les chiffres clefs de {{ app_externe.title }}
</h2>
<div class="stats-section__content">
<div class="columns is-multiline">
<div class="column is-half-tablet is-one-third-fullhd">
<div class="stats-section__number-item">
<div class="big-number">
2498 📺
</div>
<div class="label">
vidéos mises en ligne sur Peertube
</div>
</div>
</div>
<div class="column is-half-tablet is-one-third-fullhd">
<div class="stats-section__number-item">
<div class="big-number">
13048 👤
</div>
<div class="label">
utilisateur mensuels sur LaBoîte
</div>
</div>
</div>
<div class="column is-half-tablet is-one-third-fullhd">
<div class="stats-section__number-item">
<div class="big-number">
239487 📁
</div>
<div class="label">
fichiers partagés sur Nextcloud
</div>
</div>
</div>
<div class="column is-half-tablet is-one-third-fullhd">
<div class="stats-section__number-item">
<div class="big-number">
33900 📝
</div>
<div class="label">
tâches réalisées sur l'Atelier
</div>
</div>
</div>
<div class="column is-half-tablet is-one-third-fullhd">
<div class="stats-section__number-item">
<div class="big-number">
3947 🗊
</div>
<div class="label">
pads coécrits sur CodiMD
</div>
</div>
</div>
</div>
<!--
<div class="stats-section__text">
<p>Aliquam in scelerisque tortor. Etiam a tempus libero. Duis et dolor quam. Etiam tortor massa, imperdiet sit amet porta vitae, sodales in odio. Sed arcu nisi, interdum ac commodo at, tristique ut ipsum. Maecenas porttitor pretium tellus id pretium. Fusce vel malesuada lacus. Praesent pellentesque eros nec fringilla consectetur. Fusce posuere purus hendrerit aliquet hendrerit. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed pretium dolor ante, et semper quam aliquam ac. Integer interdum libero sit amet nibh blandit, quis pellentesque urna dictum. Morbi massa leo, pellentesque quis rhoncus eu, porttitor vel nisl.</p>
</div> -->
</div>
</div>
</template>
<script>
export default {
props: {
app_externe: {
type: Object,
default: null
}
}
};
</script>
<style lang="scss" scoped>
$font-color: $primary;
.app_externe-stats__title,
.stats-section__number-item {
display: flex;
flex-direction: column;
align-items: center;
@include from($tablet) {
align-items: flex-start;
}
}
.stats-section__number-item {
display: flex;
padding: 1rem;
.label {
color: $font-color;
}
.big-number {
font-size: 2rem;
font-weight: bold;
color: $font-color;
}
}
.stats-section__text {
color: $font-color;
p {
margin-bottom: 1rem;
}
}
</style>
\ No newline at end of file
<template>
<div class="apps_externes-list">
<h2 class="apps_externes-list-title is-large">
{{ title }}
</h2>
<div class="columns is-multiline">
<div class="app_externe column is-half-tablet is-one-third-fullhd" v-for="(app_externe, index) in apps_externes" :key="index">
<app_externe-item
:app_externe="app_externe"
/>
</div>
</div>
</div>
</template>
<script>
import App_externeItem from './App_externeItem';
export default {
props: {
title: {
type: String,
default() {
return this.$t('apps_externes.listTitle');
}
},
apps_externes: {
type: Array,
default() {
return []
}
}
},
components: {
App_externeItem
}
}
</script>
<style lang="scss">
.app_externe {
padding: 0.5rem;
padding-left: 15px;
padding-right: 15px;
padding-bottom: 20px;
}
.apps_externes-list-title {
@include title;
@include mobile {
margin-bottom: 9px;
}
padding: 8px;
}
.apps_externes-list {
background-color: #FFFACD;
border-radius: 15px;
padding: 10px;
padding-bottom: 20px;
}
</style>
\ No newline at end of file
......@@ -30,7 +30,82 @@ const appIcons = {
</svg>`,
etherpad: `<svg width="36" height="36" viewBox="0 0 12 12" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M9.33317 4.66589L6.83317 2.16589L0.166504 8.83256V11.3326H2.6665L9.33317 4.66589ZM11.3065 2.69256C11.5665 2.43256 11.5665 2.01256 11.3065 1.75256L9.7465 0.192559C9.4865 -0.0674414 9.0665 -0.0674414 8.8065 0.192559L7.49984 1.49923L9.99984 3.99923L11.3065 2.69256Z" fill="#011CAA"/>
</svg>`
</svg>`,
visio_agents: `<svg xmlns="http://www.w3.org/2000/svg" width="36" height="36" viewBox="0 0 16 12" fill="none">
<path d="M13.9046 0H1.90462C1.16462 0 0.571289 0.593333 0.571289 1.33333V9.33333C0.571289 10.0667 1.16462 10.6667 1.90462 10.6667H5.23796V12H10.5713V10.6667H13.9046C14.638 10.6667 15.2313 10.0667 15.2313 9.33333L15.238 1.33333C15.238 0.593333 14.638 0 13.9046 0ZM13.9046 9.33333H1.90462V1.33333H13.9046V9.33333ZM10.5713 5.33333L5.90462 8V2.66667L10.5713 5.33333Z" fill="#011CAA"/>
</svg>`,
evento: `<svg width="30pt" height="30pt" viewBox="0 0 100.000000 100.000000" fill="none" xmlns="http://www.w3.org/2000/svg">
<g transform="translate(0.000000,100.000000) scale(0.100000,-0.100000)"
fill="#011CAA" stroke="none">
<path d="M146 929 c-48 -38 -38 -64 94 -249 66 -93 120 -174 120 -181 0 -6
-54 -87 -120 -180 -132 -185 -142 -210 -94 -248 26 -20 38 -21 349 -21 311 0
323 1 349 21 47 37 37 61 -99 252 l-125 176 125 177 c136 192 146 216 99 253
-26 20 -38 21 -349 21 -311 0 -323 -1 -349 -21z m654 -55 c0 -7 -145 -215
-193 -276 l-28 -38 -26 30 c-33 40 -76 41 -118 1 l-30 -30 -65 92 c-36 50 -87
122 -113 159 l-48 68 310 0 c171 0 311 -3 311 -6z m-270 -364 c5 -10 0 -25
-15 -43 l-22 -29 -22 31 -22 31 22 31 c21 30 23 31 36 13 8 -11 18 -26 23 -34z
m-63 -129 c26 -13 60 -3 87 28 11 11 23 21 27 21 7 0 219 -294 219 -304 0 -3
-138 -6 -306 -6 -225 0 -305 3 -302 11 2 7 51 79 108 160 l105 148 20 -23 c11
-13 30 -29 42 -35z fill="#011CAA"/>
</g>
</svg>`,
filesender: `<svg width="30pt" height="30pt" viewBox="0 0 100.000000 100.000000" fill="none" xmlns="http://www.w3.org/2000/svg">
<g transform="translate(0.000000,100.000000) scale(0.100000,-0.100000)"
fill="#011CAA" stroke="none">
<path d="M488 816 c-64 -17 -126 -62 -159 -114 -16 -25 -44 -52 -70 -65 -24
-13 -55 -40 -68 -60 -13 -20 -31 -37 -39 -37 -8 0 -32 -10 -54 -22 -120 -68
-117 -256 5 -320 36 -19 62 -23 175 -26 139 -4 176 4 151 34 -9 11 -44 14
-146 14 -151 0 -178 8 -212 63 -27 44 -28 112 -2 151 24 36 69 66 101 66 19 0
30 10 45 38 13 24 36 46 67 62 32 17 58 41 77 71 47 75 110 109 199 109 102
-1 185 -59 221 -155 16 -43 24 -51 59 -63 106 -35 151 -171 88 -264 -45 -67
-63 -73 -220 -76 l-143 -3 -22 27 c-18 23 -21 40 -21 126 l0 100 36 -31 c34
-30 54 -33 54 -8 0 7 -25 37 -55 67 l-55 54 -55 -54 c-30 -30 -55 -60 -55 -66
0 -25 29 -21 56 7 l29 30 5 -114 c5 -104 7 -118 29 -141 37 -40 81 -49 210
-44 124 5 172 20 218 70 33 35 63 108 63 153 0 45 -30 118 -63 153 -12 13 -43
35 -69 48 -35 18 -48 31 -53 53 -9 42 -86 124 -137 149 -58 27 -133 34 -190
18z fill="#011CAA"/>
</g>
</svg>`,
france_transfert: `<svg width="30pt" height="35pt" viewBox="0 0 27.000000 33.000000" fill="none" xmlns="http://www.w3.org/2000/svg">
<g transform="translate(0.000000,33.000000) scale(0.100000,-0.100000)"
fill="#011CAA" stroke="none">
<path d="M93 275 c-58 -59 -63 -63 -63 -40 0 8 -7 15 -15 15 -11 0 -15 -12
-15 -45 0 -30 4 -45 13 -45 13 0 167 150 167 163 0 22 -41 0 -87 -48z"/>
<path d="M137 202 c-69 -70 -91 -102 -69 -102 4 0 34 27 67 60 62 62 75 70 75
45 0 -21 18 -19 25 4 6 21 -3 71 -14 71 -3 0 -41 -35 -84 -78z fill="#011CAA"/>
</g>
</svg>`,
rendez_vous: `<svg width="30pt" height="30pt" viewBox="0 0 100.000000 100.000000" fill="none" xmlns="http://www.w3.org/2000/svg">
<g transform="translate(0.000000,100.000000) scale(0.100000,-0.100000)"
fill="#011CAA" stroke="none">
<path d="M62 847 c-22 -23 -22 -30 -22 -306 l0 -282 25 -24 c23 -24 30 -25
145 -25 l120 0 0 -40 0 -40 165 0 165 0 0 40 0 40 120 0 c115 0 122 1 145 25
l25 24 0 279 c0 267 -1 280 -21 306 l-20 26 -413 0 -413 0 -21 -23z m808 -307
l0 -250 -375 0 -375 0 0 250 0 250 375 0 375 0 0 -250z"/>
<path d="M370 539 c0 -88 4 -159 8 -157 29 11 272 154 272 159 0 7 -263 159
-274 159 -3 0 -6 -72 -6 -161z fill="#011CAA"/>
</g>
</svg>`,
tchap: `<svg width="30pt" height="30pt" viewBox="0 0 180.000000 180.000000" fill="none" xmlns="http://www.w3.org/2000/svg">
<g transform="translate(0.000000,180.000000) scale(0.100000,-0.100000)"
fill="#011CAA" stroke="none">
<path d="M289 1727 c-103 -43 -162 -100 -210 -201 l-29 -61 0 -566 0 -566 35
-70 c41 -83 103 -144 183 -181 l57 -27 575 0 575 0 66 32 c79 39 140 102 177
181 l27 57 0 575 0 575 -32 66 c-39 79 -102 140 -181 177 l-57 27 -565 2 -565
3 -56 -23z m772 -316 c85 -49 197 -113 249 -144 l95 -55 2 -293 3 -294 -132
-75 c-72 -41 -187 -107 -255 -147 l-123 -72 -183 106 c-100 58 -215 124 -255
146 l-72 41 2 295 3 295 230 133 c127 73 237 138 245 143 8 5 20 10 26 10 5 0
80 -40 165 -89z"/>
<path d="M620 1040 l0 -100 40 0 40 0 0 60 0 60 85 0 85 0 0 -235 0 -235 40 0
40 0 0 235 0 235 130 0 130 0 0 40 0 40 -295 0 -295 0 0 -100z fill="#011CAA"/>
</g>
</svg>`,
tribu: "tribu"
};
export default {
props: {
......
<template>
<card class="bonnes-pratiques-card">
<div class="columns">
<div class="column is-half-widescreen">
<h2 class="is-title is-large is-mb-1">
{{ $t('home.bonnesPratiques.title') }}
</h2>
<p class="has-text-primary text">
{{ $t('home.bonnesPratiques.description') }}
</p>
<btn :to="{name: 'bonnes-pratiques'}" size="large">
{{ $t('home.bonnesPratiques.link.default') }}
</btn>
</div>
<div class="column is-half-widescreen bonnes-pratiques-illustration-container">
<img aria-hidden="true" role="presentation" class="bonnes-pratiques-illustration" src="~/assets/images/illus-todos.png" :alt="$t('home.bonnesPratiques.imageAltText')"/>
</div>
</div>
</card>
</template>
<style lang="scss" scoped>
.bonnes-pratiques-card {
&:hover,
&:focus {
box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
}
@include hollow;
padding: 1.5rem;
@include from($tablet) {
padding: 2.5rem;
}
.text {
margin-bottom: 1.5rem;
}
.bonnes-pratiques-illustration-container {
@include mobile {
display: none;
}
display: flex;
justify-content: flex-end;
position: relative;
}
.bonnes-pratiques-illustration {
max-width: 50%;
position: absolute;
right: 60px;
&:hover,
&:focus {
border: 1px solid $primary-accent;
}
}
}
</style>
\ No newline at end of file
<template>
<div>
<h1 class="is-title is-main is-mb-3 has-text-primary-darker">
{{ bonnesPratiques.faq.title }}
</h1>
<p class="is-text is-semi-bold has-text-primary-darker is-mb-3" v-for="(tip, index) in bonnesPratiques.faq.tips" :key="index">
{{ tip }}
</p>
<template v-if="isSectionsEnabled">
<b-collapse
animation="slide"
v-for="(bonnePratique, index) of bonnesPratiques.sections"
:key="index"
:open="isSectionsOpen == index"
@open="isSectionsOpen = index"
>
<div slot="trigger" slot-scope="props" role="button">
<!-- Entête bonne pratique -->
<div class="bonnes-pratiques-header">
<h2 class="is-title is-large has-text-primary-darker">
{{ bonnePratique.title }}
</h2>
<a>
<b-icon :icon="props.open ? 'chevron-up' : 'chevron-down'"></b-icon>
</a>
</div>
</div>
<!-- Textes de la bonne pratique -->
<div v-if="bonnePratique.texts">
<div v-for="(text, textIndex) in bonnePratique.texts" class="has-text-neutral is-mb-1" :key="textIndex">
<div v-if="text.title" v-html="text.title" class="is-text is-semi-bold has-text-primary is-mb-1">
</div>
<div class="has-text-neutral is-mb-1" v-html="text.body">
</div>
</div>
</div>
</b-collapse>
</template>
</div>
</template>
<script>
export default {
props: {
bonnesPratiques: {
type: Object,
default() {
return {}
}
}
},
data() {
return {
isSectionsEnabled: false,
isSectionsOpen: -1
};
}
};
</script>
<style lang="scss" scoped>
.bonnes-pratiques-header {
cursor: pointer;
margin-bottom: 2rem;
display: flex;
justify-content: space-between;
align-items: center;
border-bottom: solid 1px $primary-darker;
}
</style>
\ No newline at end of file
......@@ -37,7 +37,6 @@ export default {
box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
}
.tchap-link {
display: flex;
align-items: center;
text-decoration: underline;
.icon-content {
......
......@@ -12,9 +12,6 @@
<nuxt-link to="/statut" class="navbar-item">
{{ $t('navbar.statut') }}
</nuxt-link>
<nuxt-link to="/bonnes-pratiques" class="navbar-item">
{{ $t('navbar.bonnesPratiques') }}
</nuxt-link>
<nuxt-link to="/#a-propos" class="navbar-item">
{{ $t('navbar.aPropos') }}
</nuxt-link>
......
......@@ -127,7 +127,27 @@ export default [
<p>`
}
]
},
{
id: "visio_agents",
title: "Visio-Agents",
subtitle: "Visio-conférence entre agents",
description: "",
keyStat: "",
icon: "visio_agents",
texts: [
{
title: "Service de vidéoconférence et réunions de travail à distance du ministère de l’Éducation nationale",
body: `<p>
Service de visioconférence pour des réunions entre agents, Webinaire permet à plusieurs dizaines de personnes -jusqu’à 550, déjà testé avec les caméras non activées- de faire des réunions en visioconférence.
<p>Tout utilisateur peut créer un ou plusieurs salons depuis son interface de gestion, laquelle lui donne ensuite la possibilité de donner accès à ce salon à 2 type de participants : les modérateurs et les participants.</p>
<p> Il lui est aussi offert la possibilité de personnaliser sa salle avec titre et texte d’accueil. Dans le salon, il est possible à un présentateur de présenter et de partager des documents et des vidéos. Tous les participants peuvent discuter ensemble par écrit dans un outil de chat, et prendre des notes partagées.</p>
<p> Il est aussi possible pour les modérateurs de créer des sondages parmi les participants, dont les résultats seront partagés pendant la session. Si l’organisateur l’a prévu, la session pourra être enregistrée et mise à disposition ultérieurement au téléchargement. Dans un cadre pédagogique, il peut être intéressant de profiter de la fonction de sous-salon pour diviser les participants en sous-groupes.
<p>`
}
]
}
/* pas d'atelier pour le moment
{
......
export default[
{
id: "evento",
title: "Evento",
subtitle: "Planification d'événements",
description: "",
keyStat: "",
icon: "evento",
texts: [
{
title: "Planifiez vos événements en quelques clics!",
body: `<p>Evento est un service d'aide qui vous permet de facilement planifier vos événements.</p>
<p> Le service Evento est développé par RENATER et est une personnalisation de l'application Moment. </p>
<p> Ce service est disponible à l'ensemble des établissements connectés à RENATER.
Les personnes extérieures à la communauté peuvent participer aux Eventos, qu’elles soient à l’étranger ou en France, mais seuls les membres de la communauté peuvent créer des Eventos, en s’authentifiant au préalable via la fédération d’identité </p>`
}
]
},
{
id: "filesender",
title: "Filesender",
subtitle: "Échange de fichiers",
description: "",
keyStat: "",
icon: "filesender",
texts: [
{
title: "Le transfert sécurisé de fichiers volumineux",
body:`<p>FileSender vous permet de partager des fichiers pouvant atteindre jusqu’à 100Go tout en étant certifié que vos données sont sécurisées. Vos fichiers restent disponibles au téléchargement jusqu’à 30 jours. </p>
<p> Pourquoi l'utiliser: </p>
<ul>
<li>À l’aide d’une invitation par mail ou d’un lien URL, tout utilisateur peut accéder aux documents, qu’il fasse partie de la communauté Éducation-Recherche ou non</li>
<li>Vos interlocuteurs hors de la communauté Éducation-Recherche peuvent aussi vous envoyer des fichiers volumineux via une invitation.</li>
<li> Vous pouvez suivre le nombre de téléchargements de vos documents par vos interlocuteurs en temps réel.</li>
</ul>`
}
]
},
{
id: "france_transfert",
title: "France Transfert",
subtitle: "Transfert de fichiers",
description: "",
keyStat: "",
icon: "france_transfert",
texts: [
{
title: "Transfert de fichiers par des personnes externes",
body:`<p>Un service interministériel d’envoi de fichiers volumineux, simple et sécurisé, entre agents de l’État, mais aussi avec les usagers, partenaires et prestataires.</p>
<p>Envoyez facilement des fichiers, en toute sécurité</p>
<ul>
<li>Agent de l’État, vous souhaitez envoyer des fichiers lourds ?</li>
<li>Un usager doit vous faire parvenir des pièces justificatives qui ne passent pas par courriel ?.</li>
<li> Votre prestataire doit rapidement vous transmettre des documents volumineux?</li>
</ul>
<p> Développé et opéré par l’État, le service en ligne France transfert vous permet de partager des fichiers non sensibles très simplement entre agents et avec vos usagers et partenaires.</p>
<p> Seul prérequis : le destinataire OU l’expéditeur doit être un agent de l’État. </p>`
}
]
},
{
id: "rendez_vous",
title: "Rendez-vous",
subtitle: "Échanger en audio et vidéo",
description: "",
keyStat: "",
icon: "rendez_vous",
texts: [
{
title: "Échanger en audio et vidéo en petit groupe",
body:`<p>Ce service de webconférence mis à disposition du Ministère de l’Education nationale et de la Jeunesse par Renater, opérateur national du MENJS.</p>
<p>Il permet notamment :</p>
<ul>
<li>de créer simplement une webconférence en invitant des participants éloignés par l'envoi des informations de connexion.</li>
<li>de communiquer et d'échanger en partageant des écrans, des présentations;</li>
<li>d'échanger par messagerie instantanée lors de la conférence;</li>
</ul>
<p>Basé sur le logiciel libre Jitsi Meet, Jitsi peut également être utilisé via une application mobile.
Ce service est compatible avec l'ensemble des navigateurs web récents quel que soit le terminal utilisé. Il favorise les interactions, les échanges et la mutualisation au sein d'un large public. </p>
`
}
]
},
{
id: "tchap",
title: "Tchap",
subtitle: "Messagerie instantanée",
description: "",
keyStat: "",
icon: "tchap",
texts: [
{
title: "Messagerie instantanée et sécurisée des agents de l’Etat",
body:`<p>Tchap est ouvert aux agents de la fonction publique, quel que soit leur statut, pour leur permettre de communiquer facilement et en toute sécurité.</p>
<p>Plus en détail:</p>
<ul>
<li>Accédez à Tchap sur ordinateur et mobile.</li>
<li>Trouvez facilement vos interlocuteurs de la fonction publique grâce à un annuaire intégré.</li>
<li>Ne fournissez plus votre numéro de téléphone.</li>
<li>Envoyez des messages, des fichiers, des photos et des messages vocaux.</li>
<li>Invitez vos interlocuteurs externes à échanger sur vos salons privés</li>
<li>Garantissez la confidentialité de vos messages privés grâce à un chiffrement de bout en bout. Même Tchap n’a pas accès aux messages des utilisateurs.</li>
</ul>
<p>Pour plus d'informations : https://tchap.beta.gouv.fr/?mtm_campaign=portail-apps-education-fr</p> `
}
]
},
{
id: "tribu",
title: "Tribu",
subtitle: "Espace collaboratif",
description: "",
keyStat: "",
icon: "tribu",
texts: [
{
title: "Service des espaces collaboratifs de l'Éducation nationale",
body:`<p>Tribu est un service qui permet à un groupe d'utilisateurs de partager un espace collaboratif sécurisé dédié à un projet. Tribu permet à la communauté de partager des documents, des agendas, des taches, des forums de discussion. Il offre la possibilité d'être libre de son organisation et permet de travailler en ligne.</p>
`
}
]
}
];
\ No newline at end of file
export default {
faq: {
title: '10 conseils pour adopter des gestes reponsables pour un usage partagé des outils numériques',
tips: [
'1. Sur mon poste de travail professionnel, je réserve mes consultations internet à un usage strictement professionnel.',
'2. Je limite le nombre de mes terminaux (ordinateur ou mobile) connectés en même temps aux services numériques du ministère.',
'3. Lorsque c’est possible, je privilégie la connexion internet de mon domicile plutôt que le réseau de téléphonie mobile.',
'4. Quand je peux gérer mes messages dans mon client mail, je n’utilise pas le webmail.',
'5. Pour les mails : je limite le nombre et la taille des pièces jointes, je supprime les images de ma signature. Je partage mes fichiers via les espaces partagés ou les sites collaboratifs.',
'6. Pour bien préparer mes réunions, je partage les documents en amont afin de pouvoir étaler les téléchargements.',
'7. J’utilise des messageries instantanées comme Tchap pour garder le contact avec mes collègues.',
'8. Pour aller plus vite, je n’hésite pas à envoyer des SMS.',
'9. Pour tenir une réunion à distance, je privilégie le téléphone ou l’audioconférence.',
'10. Lors d\'une visioconférence, je n\'utilise la fonction vidéo que si elle est nécessaire.'
]
},
sections: [
{
"title": 'Je veux partager une vidéo, comment faire ?',
"texts": [
{"title": "Test", "body": "Sunt labore id laborum veniam magna minim enim nulla culpa duis laborum. Ut mollit exercitation irure consectetur officia in. Irure dolore sunt consequat cillum. Aliquip adipisicing commodo fugiat et. Fugiat anim nisi nulla reprehenderit culpa. Magna est sunt amet tempor ea sunt irure sint labore nisi aliqua amet ad velit. Velit ea fugiat laborum laborum deserunt sint consequat aliquip ut consectetur ad. Ex cillum elit occaecat veniam ea laboris excepteur tempor. Aliqua mollit qui sunt sint sunt velit adipisicing amet ipsum dolor dolore non. Cillum minim velit elit amet laborum incididunt minim."},
{"title": "Test", "body": "Sunt labore id laborum veniam magna minim enim nulla culpa duis laborum. Ut mollit exercitation irure consectetur officia in. Irure dolore sunt consequat cillum. Aliquip adipisicing commodo fugiat et. Fugiat anim nisi nulla reprehenderit culpa. Magna est sunt amet tempor ea sunt irure sint labore nisi aliqua amet ad velit. Velit ea fugiat laborum laborum deserunt sint consequat aliquip ut consectetur ad. Ex cillum elit occaecat veniam ea laboris excepteur tempor. Aliqua mollit qui sunt sint sunt velit adipisicing amet ipsum dolor dolore non. Cillum minim velit elit amet laborum incididunt minim."},
]
},
{
"title": 'Communiquer avec des collègues',
"texts": [
{"title": "Test", "body": "Sunt labore id laborum veniam magna minim enim nulla culpa duis laborum. Ut mollit exercitation irure consectetur officia in. Irure dolore sunt consequat cillum. Aliquip adipisicing commodo fugiat et. Fugiat anim nisi nulla reprehenderit culpa. Magna est sunt amet tempor ea sunt irure sint labore nisi aliqua amet ad velit. Velit ea fugiat laborum laborum deserunt sint consequat aliquip ut consectetur ad. Ex cillum elit occaecat veniam ea laboris excepteur tempor. Aliqua mollit qui sunt sint sunt velit adipisicing amet ipsum dolor dolore non. Cillum minim velit elit amet laborum incididunt minim."},
{"title": "Test", "body": "Sunt labore id laborum veniam magna minim enim nulla culpa duis laborum. Ut mollit exercitation irure consectetur officia in. Irure dolore sunt consequat cillum. Aliquip adipisicing commodo fugiat et. Fugiat anim nisi nulla reprehenderit culpa. Magna est sunt amet tempor ea sunt irure sint labore nisi aliqua amet ad velit. Velit ea fugiat laborum laborum deserunt sint consequat aliquip ut consectetur ad. Ex cillum elit occaecat veniam ea laboris excepteur tempor. Aliqua mollit qui sunt sint sunt velit adipisicing amet ipsum dolor dolore non. Cillum minim velit elit amet laborum incididunt minim."},
]
},
{
"title": 'Lorem ipsum',
"texts": [
{"title": "Test", "body": "Sunt labore id laborum veniam magna minim enim nulla culpa duis laborum. Ut mollit exercitation irure consectetur officia in. Irure dolore sunt consequat cillum. Aliquip adipisicing commodo fugiat et. Fugiat anim nisi nulla reprehenderit culpa. Magna est sunt amet tempor ea sunt irure sint labore nisi aliqua amet ad velit. Velit ea fugiat laborum laborum deserunt sint consequat aliquip ut consectetur ad. Ex cillum elit occaecat veniam ea laboris excepteur tempor. Aliqua mollit qui sunt sint sunt velit adipisicing amet ipsum dolor dolore non. Cillum minim velit elit amet laborum incididunt minim."},
{"title": "Test", "body": "Sunt labore id laborum veniam magna minim enim nulla culpa duis laborum. Ut mollit exercitation irure consectetur officia in. Irure dolore sunt consequat cillum. Aliquip adipisicing commodo fugiat et. Fugiat anim nisi nulla reprehenderit culpa. Magna est sunt amet tempor ea sunt irure sint labore nisi aliqua amet ad velit. Velit ea fugiat laborum laborum deserunt sint consequat aliquip ut consectetur ad. Ex cillum elit occaecat veniam ea laboris excepteur tempor. Aliqua mollit qui sunt sint sunt velit adipisicing amet ipsum dolor dolore non. Cillum minim velit elit amet laborum incididunt minim."},
]
},
{
"title": 'Lorem ipsum',
"texts": [
{"title": "Test", "body": "Sunt labore id laborum veniam magna minim enim nulla culpa duis laborum. Ut mollit exercitation irure consectetur officia in. Irure dolore sunt consequat cillum. Aliquip adipisicing commodo fugiat et. Fugiat anim nisi nulla reprehenderit culpa. Magna est sunt amet tempor ea sunt irure sint labore nisi aliqua amet ad velit. Velit ea fugiat laborum laborum deserunt sint consequat aliquip ut consectetur ad. Ex cillum elit occaecat veniam ea laboris excepteur tempor. Aliqua mollit qui sunt sint sunt velit adipisicing amet ipsum dolor dolore non. Cillum minim velit elit amet laborum incididunt minim."},
{"title": "Test", "body": "Sunt labore id laborum veniam magna minim enim nulla culpa duis laborum. Ut mollit exercitation irure consectetur officia in. Irure dolore sunt consequat cillum. Aliquip adipisicing commodo fugiat et. Fugiat anim nisi nulla reprehenderit culpa. Magna est sunt amet tempor ea sunt irure sint labore nisi aliqua amet ad velit. Velit ea fugiat laborum laborum deserunt sint consequat aliquip ut consectetur ad. Ex cillum elit occaecat veniam ea laboris excepteur tempor. Aliqua mollit qui sunt sint sunt velit adipisicing amet ipsum dolor dolore non. Cillum minim velit elit amet laborum incididunt minim."},
]
},
{
"title": 'Lorem ipsum',
"texts": [
{"title": "Test", "body": "Sunt labore id laborum veniam magna minim enim nulla culpa duis laborum. Ut mollit exercitation irure consectetur officia in. Irure dolore sunt consequat cillum. Aliquip adipisicing commodo fugiat et. Fugiat anim nisi nulla reprehenderit culpa. Magna est sunt amet tempor ea sunt irure sint labore nisi aliqua amet ad velit. Velit ea fugiat laborum laborum deserunt sint consequat aliquip ut consectetur ad. Ex cillum elit occaecat veniam ea laboris excepteur tempor. Aliqua mollit qui sunt sint sunt velit adipisicing amet ipsum dolor dolore non. Cillum minim velit elit amet laborum incididunt minim."},
{"title": "Test", "body": "Sunt labore id laborum veniam magna minim enim nulla culpa duis laborum. Ut mollit exercitation irure consectetur officia in. Irure dolore sunt consequat cillum. Aliquip adipisicing commodo fugiat et. Fugiat anim nisi nulla reprehenderit culpa. Magna est sunt amet tempor ea sunt irure sint labore nisi aliqua amet ad velit. Velit ea fugiat laborum laborum deserunt sint consequat aliquip ut consectetur ad. Ex cillum elit occaecat veniam ea laboris excepteur tempor. Aliqua mollit qui sunt sint sunt velit adipisicing amet ipsum dolor dolore non. Cillum minim velit elit amet laborum incididunt minim."},
]
}
]
}
\ No newline at end of file
export {default as applications} from './applications';
export {default as platform} from './platform';
export {default as bonnesPratiques} from './bonnesPratiques';
export {default as cgu} from './cgu';
export {default as accessibilite} from './accessibilite';
export {default as legal} from './legal';
export{default as apps_externes} from './apps_externes';
export {default as donneesPersonnelles} from './donneesPersonnelles';
\ No newline at end of file
# Changelog
## [2.1.0](https://gitlab.mim-libre.fr/alphabet/apps.education-front/compare/release/2.0.7...release/2.1.0) (2023-06-23)
### Features
* ajout de visio-agents dans les applications proposees ([d39f51a](https://gitlab.mim-libre.fr/alphabet/apps.education-front/commit/d39f51a6951c92e9a1faeefd7507d0d39adda6ea))
* ajout des apps externes proposees ([1977c7b](https://gitlab.mim-libre.fr/alphabet/apps.education-front/commit/1977c7ba50fb3857865896518c67d3965a5f2fdb))
* ajout des apps externes proposees ([0161f65](https://gitlab.mim-libre.fr/alphabet/apps.education-front/commit/0161f657b81f0ca4e38e2a979caf842b1b2e3175))
* ajout des apps externes proposees ([c73b96d](https://gitlab.mim-libre.fr/alphabet/apps.education-front/commit/c73b96d85578a3443faa3ab7040d71c68b5aec6f))
* ajout des apps externes proposees ([4de7817](https://gitlab.mim-libre.fr/alphabet/apps.education-front/commit/4de781709714d985638ada3069de0beb0e0d1350))
* ajout des apps externes proposees ([37e6c00](https://gitlab.mim-libre.fr/alphabet/apps.education-front/commit/37e6c00940b46c2b02b2766a8f206bbb2032f001))
### Bug Fixes
* ajout apps_externes dans index ([55f36ce](https://gitlab.mim-libre.fr/alphabet/apps.education-front/commit/55f36ce2d6e35aa0b69c3edf2f3bee81ad6f1ac5))
* **content:** suppression de toutes les mentions de bonnes pratiques ([3d78154](https://gitlab.mim-libre.fr/alphabet/apps.education-front/commit/3d78154b16d76c9c43486f3db9c99622650d9bd6))
* merge branch 'dev' into '23-remonter-le-projet ([ba53c08](https://gitlab.mim-libre.fr/alphabet/apps.education-front/commit/ba53c082906a984ebc5e6f566bd7dca59eac6c75))
### Styles
* **content:** change la place du texte qui explique le projet apps ([329940e](https://gitlab.mim-libre.fr/alphabet/apps.education-front/commit/329940e1a99004dcb246f81759881944485de88f))
* **content:** suppression du bouton vert a côté des applications ([4e73583](https://gitlab.mim-libre.fr/alphabet/apps.education-front/commit/4e7358303f12b391ad092ecb6b437401d8338347))
* **content:** supression du label disponible dans les details de app ([6e226a3](https://gitlab.mim-libre.fr/alphabet/apps.education-front/commit/6e226a33c2329b45ae94c64241d6952157967522))
* modification du link tchap qui etait trop longue ([28cca20](https://gitlab.mim-libre.fr/alphabet/apps.education-front/commit/28cca20de76876e4676da912a834cb32e7e3481d))
* suppression bouton vert pour apps extrenes ([c5cde0e](https://gitlab.mim-libre.fr/alphabet/apps.education-front/commit/c5cde0eee1ca82fd7e611678c9b99a2955151074))
### [2.0.7](https://gitlab.mim-libre.fr/alphabet/apps.education-front/compare/release/2.0.6...release/2.0.7) (2023-05-24)
......
......@@ -2,7 +2,6 @@
"siteTitle": "Apps.education.fr",
"navbar": {
"home": "Le projet",
"bonnesPratiques": "Les bonnes pratiques",
"aPropos": "À propos",
"statut": "Statut",
"siteLogo": {
......@@ -52,17 +51,9 @@
"default": "Rejoignez la communauté de contributeurs sur Tchap",
"placeholder": "nom@email.com"
}
}
},
"bonnesPratiques": {
"title": "Bonnes pratiques",
"description": "Dans ce contexte, afin de ne pas surcharger les réseaux, il est important d’avoir un comportement responsable avec les outils numériques. Voici quelques bonnes pratiques pour mieux travailler tous ensemble.",
"link": {
"mobile": "Consulter",
"default": "Retrouver toutes les bonnes pratiques"
},
"imageAltText": "Liste de cases cochées illustrant les bonnes pratiques de l'usage partagé des outils numériques"
}
},
"aPropos": {
"pageTitle": "À propos",
"title": "À propos",
......@@ -78,6 +69,13 @@
"title": "Ressources"
}
},
"apps_externes": {
"listTitle": "Les applications externes proposées",
"resources": {
"title": "Ressources"
}
},
"bonnesPratiques": {
"pageTitle": "Les bonnes pratiques",
"title": "Les bonnes pratiques"
......
......@@ -113,7 +113,7 @@ export default {
/*
** Static files
*/
generate: {
generate: {
dir: "public",
async routes() {
let routes = [];
......@@ -121,7 +121,13 @@ export default {
routes = routes.concat(
applications.map(application => "/applications/" + application.id)
);
const apps_externes = await Api.findAllApplications_externes();
routes = routes.concat(
apps_externes.map(app_externe => "/apps_externes/" + app_externe.id)
);
return routes;
}
}
};