add project route
This commit is contained in:
parent
abaf667a82
commit
93642fb9b2
4 changed files with 81 additions and 28 deletions
|
|
@ -4,6 +4,8 @@ $children = $page->children()->map(function ($child) {
|
||||||
return [
|
return [
|
||||||
'title' => $child->title()->value(),
|
'title' => $child->title()->value(),
|
||||||
'url' => $child->url(),
|
'url' => $child->url(),
|
||||||
|
'uri' => $child->uri(),
|
||||||
|
'uri' => '/' . $child->uri(),
|
||||||
'modified' => $child->modified('Y-MM-d'),
|
'modified' => $child->modified('Y-MM-d'),
|
||||||
'status' => $child->status(),
|
'status' => $child->status(),
|
||||||
'logo' => $child->client()->toPage()->logo()->toFile()->url()
|
'logo' => $child->client()->toPage()->logo()->toFile()->url()
|
||||||
|
|
|
||||||
|
|
@ -52,7 +52,7 @@
|
||||||
<summary>Projets en cours</summary>
|
<summary>Projets en cours</summary>
|
||||||
<ul>
|
<ul>
|
||||||
<li v-for="project in currentProjects">
|
<li v-for="project in currentProjects">
|
||||||
<router-link :to="project.url" class="new">{{
|
<router-link :to="project.uri" class="new">{{
|
||||||
project.title
|
project.title
|
||||||
}}</router-link>
|
}}</router-link>
|
||||||
</li>
|
</li>
|
||||||
|
|
@ -62,7 +62,7 @@
|
||||||
<summary>Projets archivés</summary>
|
<summary>Projets archivés</summary>
|
||||||
<ul>
|
<ul>
|
||||||
<li v-for="project in archivedProjects">
|
<li v-for="project in archivedProjects">
|
||||||
<router-link :to="project.url" class="new">{{
|
<router-link :to="project.uri" class="new">{{
|
||||||
project.title
|
project.title
|
||||||
}}</router-link>
|
}}</router-link>
|
||||||
</li>
|
</li>
|
||||||
|
|
|
||||||
|
|
@ -3,6 +3,7 @@ import Home from "../views/Home.vue";
|
||||||
import Notifications from "../views/Notifications.vue";
|
import Notifications from "../views/Notifications.vue";
|
||||||
import Reunions from "../views/Reunions.vue";
|
import Reunions from "../views/Reunions.vue";
|
||||||
import Inspirations from "../views/Inspirations.vue";
|
import Inspirations from "../views/Inspirations.vue";
|
||||||
|
import Project from "../views/Project.vue";
|
||||||
import { useApiStore } from "../stores/api";
|
import { useApiStore } from "../stores/api";
|
||||||
import { usePageStore } from "../stores/page";
|
import { usePageStore } from "../stores/page";
|
||||||
import { getActivePinia } from "pinia";
|
import { getActivePinia } from "pinia";
|
||||||
|
|
@ -24,6 +25,10 @@ const routes = [
|
||||||
path: "/inspirations",
|
path: "/inspirations",
|
||||||
component: Inspirations,
|
component: Inspirations,
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
path: "/projects/:id",
|
||||||
|
component: Project,
|
||||||
|
},
|
||||||
];
|
];
|
||||||
|
|
||||||
const router = createRouter({
|
const router = createRouter({
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,7 @@
|
||||||
<template>
|
<template>
|
||||||
<main>
|
<main>
|
||||||
<header class="flex | bg-white | rounded-2xl | p-8">
|
<header class="flex | bg-white | rounded-2xl | p-8">
|
||||||
<h1 class="font-serif | px-8">{{ data.content.title }}</h1>
|
<h1 class="font-serif | px-8">{{ page.content.title }}</h1>
|
||||||
<button class="btn | ml-auto">Demander un RDV</button>
|
<button class="btn | ml-auto">Demander un RDV</button>
|
||||||
</header>
|
</header>
|
||||||
<div class="flex-columns">
|
<div class="flex-columns">
|
||||||
|
|
@ -9,15 +9,26 @@
|
||||||
<h2 id="votre-brief-label" data-icon="">Votre brief</h2>
|
<h2 id="votre-brief-label" data-icon="">Votre brief</h2>
|
||||||
<article class="card">
|
<article class="card">
|
||||||
<hgroup class="order-last">
|
<hgroup class="order-last">
|
||||||
<h3 class="card__title | font-serif | text-lg">Votre Brief</h3>
|
<h3 class="card__title | font-serif | text-lg">Votre Brief</h3>
|
||||||
</hgroup>
|
</hgroup>
|
||||||
<div class="flex">
|
<div class="flex">
|
||||||
<time class="card__date | text-grey-700" datetime="2024-06-12">12 juin 2024</time>
|
<time class="card__date | text-grey-700" datetime="2024-06-12"
|
||||||
|
>12 juin 2024</time
|
||||||
|
>
|
||||||
</div>
|
</div>
|
||||||
<figure class="card__images" data-count="13">
|
<figure class="card__images" data-count="13">
|
||||||
<img src="http://localhost:8888/media/pages/inspirations/shape-of-the-nature/6ed93d6950-1725442486/d82f18573c439d6edd434ffca62471a7.png" alt="">
|
<img
|
||||||
<img src="http://localhost:8888/media/pages/inspirations/shape-of-the-nature/a4222f5029-1725442486/22f8779f680ed826a2d0a1d2af6018c9.jpg" alt="">
|
src="http://localhost:8888/media/pages/inspirations/shape-of-the-nature/6ed93d6950-1725442486/d82f18573c439d6edd434ffca62471a7.png"
|
||||||
<img src="http://localhost:8888/media/pages/inspirations/shape-of-the-nature/1bbe051c5a-1725442486/0c41d3266e9ce2872f30608cceb28239.png" alt="">
|
alt=""
|
||||||
|
/>
|
||||||
|
<img
|
||||||
|
src="http://localhost:8888/media/pages/inspirations/shape-of-the-nature/a4222f5029-1725442486/22f8779f680ed826a2d0a1d2af6018c9.jpg"
|
||||||
|
alt=""
|
||||||
|
/>
|
||||||
|
<img
|
||||||
|
src="http://localhost:8888/media/pages/inspirations/shape-of-the-nature/1bbe051c5a-1725442486/0c41d3266e9ce2872f30608cceb28239.png"
|
||||||
|
alt=""
|
||||||
|
/>
|
||||||
</figure>
|
</figure>
|
||||||
</article>
|
</article>
|
||||||
</section>
|
</section>
|
||||||
|
|
@ -25,17 +36,28 @@
|
||||||
<h2 id="offre-commerciale-label" data-icon="">Offre Commerciale</h2>
|
<h2 id="offre-commerciale-label" data-icon="">Offre Commerciale</h2>
|
||||||
<article class="card">
|
<article class="card">
|
||||||
<hgroup class="order-last">
|
<hgroup class="order-last">
|
||||||
<h3 class="card__title | font-serif | text-lg">Offre - 2</h3>
|
<h3 class="card__title | font-serif | text-lg">Offre - 2</h3>
|
||||||
<p class="text-primary | font-medium">4 commentaires</p>
|
<p class="text-primary | font-medium">4 commentaires</p>
|
||||||
</hgroup>
|
</hgroup>
|
||||||
<div class="flex">
|
<div class="flex">
|
||||||
<time class="card__date | text-grey-700" datetime="2024-06-12">12 juin 2024</time>
|
<time class="card__date | text-grey-700" datetime="2024-06-12"
|
||||||
|
>12 juin 2024</time
|
||||||
|
>
|
||||||
<span class="text-primary | font-medium | ml-auto">Validé</span>
|
<span class="text-primary | font-medium | ml-auto">Validé</span>
|
||||||
</div>
|
</div>
|
||||||
<figure class="card__images">
|
<figure class="card__images">
|
||||||
<img src="http://localhost:8888/media/pages/inspirations/shape-of-the-nature/6ed93d6950-1725442486/d82f18573c439d6edd434ffca62471a7.png" alt="">
|
<img
|
||||||
<img src="http://localhost:8888/media/pages/inspirations/shape-of-the-nature/a4222f5029-1725442486/22f8779f680ed826a2d0a1d2af6018c9.jpg" alt="">
|
src="http://localhost:8888/media/pages/inspirations/shape-of-the-nature/6ed93d6950-1725442486/d82f18573c439d6edd434ffca62471a7.png"
|
||||||
<img src="http://localhost:8888/media/pages/inspirations/shape-of-the-nature/1bbe051c5a-1725442486/0c41d3266e9ce2872f30608cceb28239.png" alt="">
|
alt=""
|
||||||
|
/>
|
||||||
|
<img
|
||||||
|
src="http://localhost:8888/media/pages/inspirations/shape-of-the-nature/a4222f5029-1725442486/22f8779f680ed826a2d0a1d2af6018c9.jpg"
|
||||||
|
alt=""
|
||||||
|
/>
|
||||||
|
<img
|
||||||
|
src="http://localhost:8888/media/pages/inspirations/shape-of-the-nature/1bbe051c5a-1725442486/0c41d3266e9ce2872f30608cceb28239.png"
|
||||||
|
alt=""
|
||||||
|
/>
|
||||||
</figure>
|
</figure>
|
||||||
</article>
|
</article>
|
||||||
</section>
|
</section>
|
||||||
|
|
@ -43,32 +65,57 @@
|
||||||
<h2 id="brief-enrichi-label" data-icon="">Brief Enrichi</h2>
|
<h2 id="brief-enrichi-label" data-icon="">Brief Enrichi</h2>
|
||||||
<article class="card">
|
<article class="card">
|
||||||
<hgroup class="order-last">
|
<hgroup class="order-last">
|
||||||
<h3 class="card__title | font-serif | text-lg">Brief Enrichi</h3>
|
<h3 class="card__title | font-serif | text-lg">Brief Enrichi</h3>
|
||||||
</hgroup>
|
</hgroup>
|
||||||
<div class="flex">
|
<div class="flex">
|
||||||
<time class="card__date | text-grey-700" datetime="2024-06-12">12 juin 2024</time>
|
<time class="card__date | text-grey-700" datetime="2024-06-12"
|
||||||
|
>12 juin 2024</time
|
||||||
|
>
|
||||||
<span class="text-primary | font-medium | ml-auto">Validé</span>
|
<span class="text-primary | font-medium | ml-auto">Validé</span>
|
||||||
</div>
|
</div>
|
||||||
<figure class="card__images" data-count="15">
|
<figure class="card__images" data-count="15">
|
||||||
<img src="http://localhost:8888/media/pages/inspirations/shape-of-the-nature/6ed93d6950-1725442486/d82f18573c439d6edd434ffca62471a7.png" alt="">
|
<img
|
||||||
<img src="http://localhost:8888/media/pages/inspirations/shape-of-the-nature/a4222f5029-1725442486/22f8779f680ed826a2d0a1d2af6018c9.jpg" alt="">
|
src="http://localhost:8888/media/pages/inspirations/shape-of-the-nature/6ed93d6950-1725442486/d82f18573c439d6edd434ffca62471a7.png"
|
||||||
<img src="http://localhost:8888/media/pages/inspirations/shape-of-the-nature/1bbe051c5a-1725442486/0c41d3266e9ce2872f30608cceb28239.png" alt="">
|
alt=""
|
||||||
|
/>
|
||||||
|
<img
|
||||||
|
src="http://localhost:8888/media/pages/inspirations/shape-of-the-nature/a4222f5029-1725442486/22f8779f680ed826a2d0a1d2af6018c9.jpg"
|
||||||
|
alt=""
|
||||||
|
/>
|
||||||
|
<img
|
||||||
|
src="http://localhost:8888/media/pages/inspirations/shape-of-the-nature/1bbe051c5a-1725442486/0c41d3266e9ce2872f30608cceb28239.png"
|
||||||
|
alt=""
|
||||||
|
/>
|
||||||
</figure>
|
</figure>
|
||||||
</article>
|
</article>
|
||||||
</section>
|
</section>
|
||||||
<section aria-labelledby="echantillon-virtuel-label" data-status="current">
|
<section
|
||||||
|
aria-labelledby="echantillon-virtuel-label"
|
||||||
|
data-status="current"
|
||||||
|
>
|
||||||
<h2 id="echantillon-virtuel-label" data-icon="">Échantillon Virtuel</h2>
|
<h2 id="echantillon-virtuel-label" data-icon="">Échantillon Virtuel</h2>
|
||||||
<article class="card">
|
<article class="card">
|
||||||
<hgroup class="order-last">
|
<hgroup class="order-last">
|
||||||
<h3 class="card__title | font-serif | text-lg">Rendu 360°</h3>
|
<h3 class="card__title | font-serif | text-lg">Rendu 360°</h3>
|
||||||
</hgroup>
|
</hgroup>
|
||||||
<div class="flex">
|
<div class="flex">
|
||||||
<time class="card__date | text-grey-700" datetime="2024-06-12">12 juin 2024</time>
|
<time class="card__date | text-grey-700" datetime="2024-06-12"
|
||||||
|
>12 juin 2024</time
|
||||||
|
>
|
||||||
</div>
|
</div>
|
||||||
<figure class="card__images" data-count="13">
|
<figure class="card__images" data-count="13">
|
||||||
<img src="http://localhost:8888/media/pages/inspirations/shape-of-the-nature/6ed93d6950-1725442486/d82f18573c439d6edd434ffca62471a7.png" alt="">
|
<img
|
||||||
<img src="http://localhost:8888/media/pages/inspirations/shape-of-the-nature/a4222f5029-1725442486/22f8779f680ed826a2d0a1d2af6018c9.jpg" alt="">
|
src="http://localhost:8888/media/pages/inspirations/shape-of-the-nature/6ed93d6950-1725442486/d82f18573c439d6edd434ffca62471a7.png"
|
||||||
<img src="http://localhost:8888/media/pages/inspirations/shape-of-the-nature/1bbe051c5a-1725442486/0c41d3266e9ce2872f30608cceb28239.png" alt="">
|
alt=""
|
||||||
|
/>
|
||||||
|
<img
|
||||||
|
src="http://localhost:8888/media/pages/inspirations/shape-of-the-nature/a4222f5029-1725442486/22f8779f680ed826a2d0a1d2af6018c9.jpg"
|
||||||
|
alt=""
|
||||||
|
/>
|
||||||
|
<img
|
||||||
|
src="http://localhost:8888/media/pages/inspirations/shape-of-the-nature/1bbe051c5a-1725442486/0c41d3266e9ce2872f30608cceb28239.png"
|
||||||
|
alt=""
|
||||||
|
/>
|
||||||
</figure>
|
</figure>
|
||||||
</article>
|
</article>
|
||||||
</section>
|
</section>
|
||||||
|
|
@ -77,7 +124,7 @@
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script setup>
|
<script setup>
|
||||||
import { usePageStore } from "../stores/page"
|
import { usePageStore } from "../stores/page";
|
||||||
import { useUserStore } from "../stores/user";
|
import { useUserStore } from "../stores/user";
|
||||||
import { ref, computed } from "vue";
|
import { ref, computed } from "vue";
|
||||||
import { storeToRefs } from "pinia";
|
import { storeToRefs } from "pinia";
|
||||||
|
|
@ -86,5 +133,4 @@ const { page } = storeToRefs(usePageStore());
|
||||||
const user = useUserStore().user;
|
const user = useUserStore().user;
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style scope>
|
<style scope></style>
|
||||||
</style>
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue