Commit 4e843456 authored by Anthony Gautreau's avatar Anthony Gautreau
Browse files

FIX CI

parent 8d28efc8
Loading
Loading
Loading
Loading
+5 −0
Changes for .gitlab-ci.yml: 5 added lines, 0 removed lines.
Original line number Diff line number Diff line
@@ -7,6 +7,11 @@ stages:
variables:
  PHP_DIR: api
  JS_DIR: frontend
  # Neutralise un éventuel proxy mal formé hérité des variables CI/CD du groupe/projet
  HTTP_PROXY: ""
  HTTPS_PROXY: ""
  http_proxy: ""
  https_proxy: ""

default:
  artifacts:
+3185 −2987

File changed.

Preview size limit exceeded, changes collapsed.

+1 −1

File changed.

Preview size limit exceeded, changes collapsed.

+2 −1
Changes for frontend/package.json: 2 added lines, 1 removed line.
Original line number Diff line number Diff line
@@ -33,5 +33,6 @@
    "sass-embedded": "^1.89.1",
    "vite": "^6.3.1",
    "vue": "^3.5"
  }
  },
  "packageManager": "pnpm@10.33.0+sha512.10568bb4a6afb58c9eb3630da90cc9516417abebd3fabbe6739f0ae795728da1491e9db5a544c76ad8eb7570f5c4bb3d6c637b2cb41bfdcdb47fa823c8649319"
}
+39 −3
Changes for frontend/src/components/UserPermissionsCard/UserPermissionsDrawer.vue: 39 added lines, 3 removed lines.
Original line number Diff line number Diff line

<template>
  <q-drawer
    ref="drawerRef"
    :model-value="modelValue"
    @update:model-value="emit('update:modelValue', $event)"
    side="right"
@@ -11,8 +12,18 @@
  >

    <!-- Header -->
    <div class="q-pa-md text-h6">
      {{ user?.username ?? user?.email }}
    <div class="q-pa-md text-h6 row items-center no-wrap">
      <div class="col">{{ user?.username ?? user?.email }}</div>
      <q-btn
          flat
          round
          dense
          icon="close"
          aria-label="Fermer"
          @click="close"
      >
        <q-tooltip>Fermer</q-tooltip>
      </q-btn>
    </div>

    <q-card
@@ -86,7 +97,7 @@
</template>

<script setup>
import { computed, ref, watch } from 'vue'
import { computed, ref, watch, nextTick, onBeforeUnmount } from 'vue'

import UserPermissionCard from "@/components/UserPermissionsCard/UserPermissionCard.vue";
import UserPermissionEditor from "@/components/UserPermissionsCard/UserPermissionEditor.vue";
@@ -170,6 +181,31 @@ function close() {
  emit('update:modelValue', false)
}

const drawerRef = ref(null)

// Ferme le drawer si on clique en dehors. On teste le panneau (.q-drawer) et non
// le container, car le container inclut le backdrop. On ignore les clics sur les
// portails Quasar (menus, dropdowns de q-select, dialogs, tooltips) rendus dans
// le body, sinon sélectionner une option fermerait le drawer par erreur.
function onDocumentPointerDown(e) {
  const root = drawerRef.value?.$el
  const aside = root?.matches?.('.q-drawer') ? root : root?.querySelector?.('.q-drawer')
  if (!aside || aside.contains(e.target)) return
  if (e.target.closest?.('.q-menu, .q-dialog, .q-tooltip, .q-select__dropdown')) return
  close()
}

watch(() => props.modelValue, (open) => {
  if (open) {
    // nextTick pour ne pas capter le clic qui vient d'ouvrir le drawer
    nextTick(() => document.addEventListener('mousedown', onDocumentPointerDown, true))
  } else {
    document.removeEventListener('mousedown', onDocumentPointerDown, true)
  }
})

onBeforeUnmount(() => document.removeEventListener('mousedown', onDocumentPointerDown, true))

async function saveUserDraft() {
  if (userDraft.value['@id'] === 'new') {
    console.log('create User')