From e1f1b2a951a47865787413f6d3302f237e7b92c4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timoth=C3=A9e?= <tpoussard@neogeo.fr> Date: Thu, 21 Apr 2022 17:07:47 +0200 Subject: [PATCH] fix regression on disappeared isOnline & retrieve lost style --- src/assets/styles/base.css | 10 +- .../Project/Detail/ProjectFeatureTypes.vue | 42 +++--- .../Project/Detail/ProjectHeader.vue | 128 +++++++++--------- 3 files changed, 95 insertions(+), 85 deletions(-) diff --git a/src/assets/styles/base.css b/src/assets/styles/base.css index a38205b5..df8db274 100644 --- a/src/assets/styles/base.css +++ b/src/assets/styles/base.css @@ -71,13 +71,15 @@ body { .no-margin { margin: 0 !important; } - .margin-top { margin-top: 1rem; } -/* ---------------------------------- */ - /* UTILS */ -/* ---------------------------------- */ +.margin-bottom { + margin-bottom: 1rem; +} +.tiny-margin { + margin: 0.1rem 0 0.1rem 0.1rem !important; +} .ellipsis { text-overflow: ellipsis; overflow: hidden; diff --git a/src/components/Project/Detail/ProjectFeatureTypes.vue b/src/components/Project/Detail/ProjectFeatureTypes.vue index f6401e62..8ffd93f5 100644 --- a/src/components/Project/Detail/ProjectFeatureTypes.vue +++ b/src/components/Project/Detail/ProjectFeatureTypes.vue @@ -43,7 +43,9 @@ icon right floated - button button-hover-green + button + button-hover-green + tiny-margin " data-tooltip="Ajouter un signalement" data-position="top right" @@ -59,7 +61,7 @@ project && permissions && permissions.can_create_feature_type && - isOffline() !== true + isOnline " :to="{ name: 'dupliquer-type-signalement', @@ -72,7 +74,9 @@ icon right floated - button button-hover-green + button + button-hover-green + tiny-margin " data-tooltip="Dupliquer un type de signalement" data-position="top right" @@ -97,7 +101,7 @@ v-else > <a - v-if="isProjectAdmin && isOffline() !== true" + v-if="isProjectAdmin && isOnline" class=" ui compact @@ -105,7 +109,9 @@ icon right floated - button button-hover-red + button + button-hover-red + tiny-margin " data-tooltip="Supprimer le type de signalement" data-position="top center" @@ -122,7 +128,7 @@ project && permissions && permissions.can_create_feature_type && - isOffline() !== true + isOnline " :to="{ name: 'editer-symbologie-signalement', @@ -135,7 +141,9 @@ icon right floated - button button-hover-orange + button + button-hover-orange + tiny-margin " data-tooltip="Éditer la symbologie du type de signalement" data-position="top center" @@ -152,7 +160,7 @@ type.is_editable && permissions && permissions.can_create_feature_type && - isOffline() !== true + isOnline " :to="{ name: 'editer-type-signalement', @@ -165,7 +173,9 @@ icon right floated - button button-hover-orange + button + button-hover-orange + tiny-margin " data-tooltip="Éditer le type de signalement" data-position="top center" @@ -190,7 +200,7 @@ v-if=" permissions && permissions.can_update_project && - isOffline() !== true + isOnline " :to="{ name: 'ajouter-type-signalement', @@ -210,7 +220,7 @@ v-if=" permissions && permissions.can_update_project && - isOffline() !== true + isOnline " class=" ui @@ -289,7 +299,7 @@ IDGO && permissions && permissions.can_update_project && - isOffline() !== true + isOnline " :to="{ name: 'catalog-import', @@ -429,7 +439,8 @@ export default { ...mapState([ 'configuration', 'isOnline', - 'user_permissions' + 'user_permissions', + 'isOnline', ]), ...mapState('feature-type', [ 'feature_types', @@ -518,10 +529,6 @@ export default { return false; }, - isOffline() { - return navigator.onLine === false; - }, - toNewGeojsonFeatureType() { this.importing = true; this.$router.push({ @@ -704,5 +711,4 @@ export default { line-height: 2em; color: teal; } - </style> diff --git a/src/components/Project/Detail/ProjectHeader.vue b/src/components/Project/Detail/ProjectHeader.vue index dd049e9e..8526c9ac 100644 --- a/src/components/Project/Detail/ProjectHeader.vue +++ b/src/components/Project/Detail/ProjectHeader.vue @@ -2,52 +2,54 @@ <div class="project-header ui grid stackable"> <div class="row"> <div class="three wide middle aligned column"> - <img - class="ui small spaced image" - alt="Thumbnail du projet" - :src=" - project.thumbnail.includes('default') - ? require('@/assets/img/default.png') - : DJANGO_BASE_URL + project.thumbnail + refreshId() - " - > - <div class="ui hidden divider" /> - <div - class="ui basic teal label" - data-tooltip="Membres" - > - <i - class="user icon" - aria-hidden="true" - />{{ project.nb_contributors }} - </div> - <div - class="ui basic teal label" - data-tooltip="Signalements publiés" - > - <i - class="map marker icon" - aria-hidden="true" - />{{ project.nb_published_features }} + <div class="margin-bottom"> + <img + class="ui small centered image" + alt="Thumbnail du projet" + :src=" + project.thumbnail.includes('default') + ? require('@/assets/img/default.png') + : DJANGO_BASE_URL + project.thumbnail + refreshId() + " + > </div> - <div - class="ui basic teal label" - data-tooltip="Commentaires" - > - <i - class="comment icon" - aria-hidden="true" - />{{ - project.nb_published_features_comments - }} + <div class="centered"> + <div + class="ui basic teal label tiny-margin" + data-tooltip="Membres" + > + <i + class="user icon" + aria-hidden="true" + />{{ project.nb_contributors }} + </div> + <div + class="ui basic teal label tiny-margin" + data-tooltip="Signalements publiés" + > + <i + class="map marker icon" + aria-hidden="true" + />{{ project.nb_published_features }} + </div> + <div + class="ui basic teal label tiny-margin" + data-tooltip="Commentaires" + > + <i + class="comment icon" + aria-hidden="true" + />{{ + project.nb_published_features_comments + }} + </div> </div> </div> <div class="nine wide column"> - <h1 class="ui header"> + <h1 class="ui header margin-bottom"> {{ project.title }} </h1> - <div class="ui hidden divider" /> <div class="sub header"> {{ project.description }} </div> @@ -60,10 +62,10 @@ user && permissions && permissions.can_view_project && - isOffline() !== true + isOnline " id="subscribe-button" - class="ui button button-hover-green" + class="ui button button-hover-green tiny-margin" data-tooltip="S'abonner au projet" data-position="top center" data-variation="mini" @@ -78,10 +80,10 @@ v-if=" permissions && permissions.can_update_project && - isOffline() !== true + isOnline " :to="{ name: 'project_edit', params: { slug } }" - class="ui button button-hover-orange" + class="ui button button-hover-orange tiny-margin" data-tooltip="Modifier le projet" data-position="top center" data-variation="mini" @@ -92,9 +94,9 @@ /> </router-link> <a - v-if="isProjectAdmin && isOffline() !== true" + v-if="isProjectAdmin && isOnline" id="delete-button" - class="ui button button-hover-red" + class="ui button button-hover-red tiny-margin" data-tooltip="Supprimer le projet" data-position="top center" data-variation="mini" @@ -109,7 +111,7 @@ <button v-if="isProjectAdmin && !isSharedProject && project.generate_share_link" - class="ui teal left labeled icon button share-button" + class="ui teal left labeled icon button share-button tiny-margin" @click="copyLink" > <i @@ -134,10 +136,13 @@ </div> </div> - <div v-if="arraysOffline.length > 0"> - {{ arraysOffline.length }} modification<span v-if="arraysOffline.length>1">s</span> en attente + <div + v-if="arraysOffline.length > 0" + class="centered" + > + {{ arraysOffline.length }} modification<span v-if="arraysOffline.length > 1">s</span> en attente <button - :disabled="isOffline" + :disabled="!isOnline" class="ui fluid labeled teal icon button" @click="sendOfflineFeatures" > @@ -188,7 +193,8 @@ export default { ]), ...mapState([ 'user', - 'user_permissions' + 'user_permissions', + 'isOnline', ]), ...mapGetters([ 'permissions' @@ -208,9 +214,6 @@ export default { }, methods: { - ...mapState([ - 'isOnline' - ]), ...mapMutations('modals', [ 'OPEN_PROJECT_MODAL' ]), @@ -221,10 +224,6 @@ export default { return '?ver=' + crypto.getRandomValues(array); // Compliant for security-sensitive use cases }, - isOffline() { - return navigator.onLine === false; - }, - copyLink() { const sharedLink = window.location.href.replace('projet', 'projet-partage'); navigator.clipboard.writeText(sharedLink).then(()=> { @@ -280,14 +279,17 @@ export default { display: flex; flex-direction: column; - .ui.button, .ui.button .button, .tiny-margin { - margin: 0.1rem 0 0.1rem 0.1rem !important; - } - - .share-button { - margin: 1em 0 0 0; + .ui.buttons { + justify-content: flex-end; + a.ui.button { + flex-grow: 0; /* avoid stretching buttons */ + } } } + .centered { + margin: auto; + text-align: center; + } } } -- GitLab