]> _ Git - psq.git/commitdiff
Dev
authorsoufiane <soufiane@cubedesigners.com>
Thu, 8 May 2025 20:58:15 +0000 (22:58 +0200)
committersoufiane <soufiane@cubedesigners.com>
Thu, 8 May 2025 20:58:15 +0000 (22:58 +0200)
35 files changed:
app/Http/Controllers/AdvertisersController.php [new file with mode: 0644]
app/Http/Controllers/Auth/LoginController.php
app/Http/Controllers/FileController.php
app/View/Components/Cover.php
public/img/carousel/next.svg [new file with mode: 0644]
public/img/carousel/prev.svg [new file with mode: 0644]
public/img/fb_impression_x10.png [new file with mode: 0644]
public/img/fb_impression_x4.png [new file with mode: 0644]
public/img/offre_abonnement.png [new file with mode: 0644]
public/img/ombre-magazine.png [new file with mode: 0644]
public/img/pastille.png [new file with mode: 0644]
resources/js/app.js
resources/js/components/Contact/ContactForm.vue
resources/js/components/FileSearch/FileInstantSearch.vue
resources/sass/_covers.scss
resources/sass/_footer.scss
resources/sass/_home.scss
resources/sass/_nav.scss
resources/sass/_page.scss [new file with mode: 0644]
resources/sass/_popup.scss [new file with mode: 0644]
resources/sass/_variables.scss
resources/sass/app.scss
resources/views/admin/settings/strings.blade.php
resources/views/annonceurs/index.blade.php [new file with mode: 0644]
resources/views/auth/discover/index.blade.php
resources/views/auth/login.blade.php
resources/views/components/cover.blade.php
resources/views/contact/index.blade.php
resources/views/contact/subscription-request.blade.php
resources/views/home/index.blade.php
resources/views/layouts/app.blade.php
resources/views/layouts/vue.blade.php
resources/views/partials/footer.blade.php
resources/views/partials/nav-v2.blade.php
routes/web.php

diff --git a/app/Http/Controllers/AdvertisersController.php b/app/Http/Controllers/AdvertisersController.php
new file mode 100644 (file)
index 0000000..f624c46
--- /dev/null
@@ -0,0 +1,11 @@
+<?php
+
+namespace App\Http\Controllers;
+
+class AdvertisersController
+{
+    public function index()
+    {
+        return view('annonceurs.index');
+    }
+}
index c1e608c8b5cf5842e1ddbac5d2acf87385e92022..d839ef667eb8f8e30a0f8e8317913d23e4e9a07f 100644 (file)
@@ -50,7 +50,6 @@ class LoginController extends Controller
 
     public function showLoginForm()
     {
-        \View::share('hideFooter', true);
         return view('auth.login');
     }
 }
index 992ff5dcffbf643d47ed9221a7e2edebe23deb43..c7a7b06465092073cd9569d07b7c68362d38a174 100644 (file)
@@ -24,7 +24,8 @@ class FileController extends Controller
             return view('layouts.vue', [
                 'extends' => 'layouts.app',
                 'component' => 'file-instant-search',
-                'class' => 'psq-archives'
+                'class' => 'psq-archives',
+                'title' => 'Nos archives'
             ]);
         }
 
index 58e140148490fd0ceadd5487bf079a567534878e..92df0f395b20c60805bd67f9ceebb8ba6b8e70df 100644 (file)
@@ -13,6 +13,7 @@ class Cover extends Component
     public string $file;
     public string $link;
     public string $target;
+    public string $key;
 
     /**
      * Create a new component instance.
@@ -22,7 +23,7 @@ class Cover extends Component
      * @param string $linkTo edition or read
      * @param string $target
      */
-    public function __construct($pdf, $type, $linkTo = 'edition', $target = '_self')
+    public function __construct($pdf, $type, $linkTo = 'edition', $target = '_self', $key = 0)
     {
         $this->pdf = $pdf;
         $this->type = $type;
@@ -32,8 +33,7 @@ class Cover extends Component
             action('FileController@show', ['file' => $pdf]) :
             $this->pdf->getUrl();
         $this->target = $target;
-
-
+        $this->key = $key;
     }
 
     /**
diff --git a/public/img/carousel/next.svg b/public/img/carousel/next.svg
new file mode 100644 (file)
index 0000000..e09d19c
--- /dev/null
@@ -0,0 +1,6 @@
+<svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 0 48 48">
+    <g id="Groupe_8" data-name="Groupe 8" transform="translate(-176 -413)">
+        <rect id="Rectangle_13" data-name="Rectangle 13" width="48" height="48" rx="24" transform="translate(176 413)" fill="#dce0f5"/>
+    </g>
+    <path id="Tracé_52" data-name="Tracé 52" d="M5898.273,2455.328h12v12" transform="translate(-2413.717 -5891.388) rotate(45)" fill="none" stroke="#1d5198" stroke-width="2"/>
+</svg>
diff --git a/public/img/carousel/prev.svg b/public/img/carousel/prev.svg
new file mode 100644 (file)
index 0000000..62d05f0
--- /dev/null
@@ -0,0 +1,6 @@
+<svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 0 48 48">
+    <g id="Groupe_9" data-name="Groupe 9" transform="translate(224 461) rotate(180)">
+        <rect id="Rectangle_13" data-name="Rectangle 13" width="48" height="48" rx="24" transform="translate(176 413)" fill="#dce0f5"/>
+    </g>
+    <path id="Tracé_53" data-name="Tracé 53" d="M5898.273,2455.328h12v12" transform="translate(2461.717 5939.389) rotate(-135)" fill="none" stroke="#1d5198" stroke-width="2"/>
+</svg>
diff --git a/public/img/fb_impression_x10.png b/public/img/fb_impression_x10.png
new file mode 100644 (file)
index 0000000..7c852f7
Binary files /dev/null and b/public/img/fb_impression_x10.png differ
diff --git a/public/img/fb_impression_x4.png b/public/img/fb_impression_x4.png
new file mode 100644 (file)
index 0000000..d031ef5
Binary files /dev/null and b/public/img/fb_impression_x4.png differ
diff --git a/public/img/offre_abonnement.png b/public/img/offre_abonnement.png
new file mode 100644 (file)
index 0000000..6af1fe4
Binary files /dev/null and b/public/img/offre_abonnement.png differ
diff --git a/public/img/ombre-magazine.png b/public/img/ombre-magazine.png
new file mode 100644 (file)
index 0000000..9546419
Binary files /dev/null and b/public/img/ombre-magazine.png differ
diff --git a/public/img/pastille.png b/public/img/pastille.png
new file mode 100644 (file)
index 0000000..3142bbe
Binary files /dev/null and b/public/img/pastille.png differ
index 04a0f9e44642bb42a627c48fe1edb510ea271dac..1a131ff7547baf425da968a33f5ee85570e3c3cd 100644 (file)
@@ -5,6 +5,7 @@
  */
 
 require('./bootstrap');
+const Swal = require('sweetalert2')
 window.Vue = require('vue');
 /** @todo fix vue material design issue */
 
@@ -18,6 +19,8 @@ import InstantSearch from "vue-instantsearch";
 import 'instantsearch.css/themes/reset-min.css';
 import { MdProgress } from 'vue-material/dist/components'
 import Toasted from 'vue-toasted';
+import EmblaCarousel from 'embla-carousel';
+
 window.Vue.use( CKEditor );
 window.Vue.use(InstantSearch);
 window.Vue.use(MdProgress);
@@ -67,4 +70,67 @@ document.addEventListener("DOMContentLoaded", () => {
         document.querySelector("nav").classList.toggle("open");
         el.classList.toggle("open");
     });
+
+    const notConnectedLink = document.querySelector('.notConnected');
+    const notAuthorized = document.querySelector('body').getAttribute("data-not-authorized");
+
+    if(notAuthorized) {
+        const $title = 'Votre abonnement actuel ne vous permet pas de consulter les archives.';
+        const $text = "Pour toute demande, veuillez nous envoyer un <a class='underline' href='/contact'>message</a>."
+        popup($title,$text)
+    }
+
+    document.querySelectorAll('.notConnected').forEach(link => {
+        link.addEventListener('click', function (e) {
+            e.preventDefault();
+            const $title = 'Accès réservé aux abonnés';
+            const $text = `<p>Veuillez vous <a class="underline" href="/login">connecter</a> ou
+                        découvrez nos offres d'<a class="underline" href="">abonnement</a>
+                        </p>`;
+            popup($title,$text)
+        })
+    })
+
+    const emblaNode = document.querySelector('.embla')
+    const options = {
+        loop: false,
+        container: '.embla__container',
+        slides: '.embla__slide',
+        watchDrag: false,
+        watchResize: true,
+    }
+    const embla = EmblaCarousel(emblaNode, options)
+
+    const rootNode = document.querySelector('.embla')
+
+    // Grab button nodes
+    const prevButtonNode = rootNode.querySelector('.embla__prev')
+    const nextButtonNode = rootNode.querySelector('.embla__next')
+
+    // Add click listeners
+    prevButtonNode.addEventListener('click', embla.scrollPrev, false)
+    nextButtonNode.addEventListener('click', embla.scrollNext, false)
+
+    window.addEventListener("resize",embla.reInit())
 })
+
+function popup($title, $text) {
+    Swal.fire({
+        title: $title,
+        html: $text,
+        showCloseButton: true,
+        showConfirmButton: false,
+        closeButtonHtml: `<div><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 0 48 48">
+                <g id="Groupe_112" data-name="Groupe 112" transform="translate(-1158 -426)">
+                    <g id="Groupe_110" data-name="Groupe 110" transform="translate(1382 887) rotate(180)">
+                        <rect id="Rectangle_13" data-name="Rectangle 13" width="48" height="48" rx="24" transform="translate(176 413)" fill="#dce0f5"/>
+                    </g>
+                    <g id="Groupe_111" data-name="Groupe 111" transform="translate(47.511)">
+                        <line id="Ligne_16" data-name="Ligne 16" y1="17" transform="translate(1128.49 443.99) rotate(-45)" fill="none" stroke="#1d5198" stroke-width="2"/>
+                        <line id="Ligne_17" data-name="Ligne 17" y1="17" transform="translate(1140.51 443.99) rotate(45)" fill="none" stroke="#1d5198" stroke-width="2"/>
+                    </g>
+                </g>
+            </svg>
+            </div>`
+    })
+}
index db97d227ce444cc2ee022823bd0575fb060899cf..60e7cae7dc864dcce6114897e4ee36762da53f0d 100644 (file)
@@ -1,9 +1,9 @@
 <template>
     <div>
 
-        <div class="form-group row">
-            <label class="col-md-4 col-form-label text-md-right">Je suis</label>
-            <div class="col-md-8">
+        <div class="form-group">
+            <label class="col-form-label">Je suis</label>
+            <div class="form-option d-flex align-items-xl-center flex-column flex-xl-row">
                 <div class="custom-control custom-radio">
                     <input v-model="form.subscriber" class="custom-control-input" type="radio" :value="true" name="subscriber" id="subscriber-radio-1" required>
                     <label class="custom-control-label" for="subscriber-radio-1">
             </div>
         </div>
 
-        <div class="form-group row mb-5" v-show="form.subscriber !== null">
-            <label for="type" class="col-md-4 col-form-label text-md-right">Ma demande concerne :</label>
-            <div class="col-md-8">
-
+        <div class="form-group" v-show="form.subscriber !== null">
+            <label for="type" class="col-form-label">Ma demande concerne :</label>
+            <div class="">
                 <div class="custom-control custom-radio mb-2" v-for="(option, key) in options" >
                     <input class="custom-control-input" type="radio" :value="option" name="type" :id="'type_'+key" required>
                     <label class="custom-control-label" :for="'type_'+key">
index 18eb47d17ba8791f1b9ffe51a9ca0fddeab74995..34aab29902f9949557cd13634a7cf2bff99c782c 100644 (file)
@@ -1,6 +1,5 @@
 <template>
     <div>
-        <h1>Les archives de P.S.Q.</h1>
 
         <ais-instant-search
             :search-client="searchClient"
index 5c009e4bb689298a037a4c688ad55c9c4eea9506..7de01a9facf4ea348305f445b78d5f27e9c93dc5 100644 (file)
@@ -6,21 +6,36 @@ div.cover {
         width: 100%;
     }
 
-
+    .img-link {
+        position: relative;
+        /*&:after {
+            content: "";
+            position: absolute;
+            bottom: 0;
+            left: 0;
+            width: 90%;
+            height: 8%;
+            border-radius: 50%;
+            box-shadow: 0 12px 12px 0 rgba(0, 0, 0, 0.45);
+        }*/
+        img,
+        .cover-title {
+            position: relative;
+            z-index: 1;
+        }
+    }
 
     &.cover-pile-2 {
         img.cover-over {
             width: 71%;
-            left: 15%;
-            top: 3%;
         }
     }
 
     &.cover-pile-3 {
         img.cover-over {
             width: 60%;
-            left: 20%;
-            top: 5%;
+            box-shadow: 3px 3px 10px rgba(0,0,0,.25);
+            z-index: 1;
         }
     }
 
@@ -28,7 +43,6 @@ div.cover {
 
         width: fit-content;
         margin: auto;
-        position: relative;
         height: 30px;
 
         img {
index dcc6b73857a37e83f8e32d1567d53ca1d4c374cc..f9ecb354291eef8ccf16fa427c4436247897ca24 100644 (file)
@@ -31,6 +31,9 @@ footer {
 
     p {
         margin: 0 0 8px;
+        @include media-breakpoint-down(lg) {
+            text-align: center;
+        }
         @include media-breakpoint-up(lg) {
             margin: 0;
         }
index fc9f12e25009ac86ca4840e62155b4948af8a241..0bd2a532f4a0e0585e391373418a79e496b86829 100644 (file)
 .psq-home {
 
     &-banner {
-        padding: 64px 0;
+        padding: 32px 0;
+        position: relative;
+        text-align: center;
+
+        @include media-breakpoint-up(lg) {
+            padding: 64px 0;
+            text-align: left;
+        }
+
+        &:after,
+        &:before {
+            content: "";
+            position: absolute;
+            height: 100%;
+            top: 0;
+        }
+
+        &:after {
+            background-color: $waveblue;
+            @include media-breakpoint-up(lg) {
+                right: calc((-3rem) - (100vw - 100%) / 2);
+                width: calc(33.33333333% + (100vw - 100%) / 2);
+            }
+        }
+
+        &:before {
+            background-color: $clearblue;
+            @include media-breakpoint-up(lg) {
+                right: calc(33.33333333% - 3rem);
+                width: calc((66.66666667% + 3rem) + (100vw - 100%) / 2);
+            }
+        }
+
+        .col1 {
+            @include media-breakpoint-down(md) {
+                background-color: $clearblue;
+                padding-top: 32px;
+                margin-top: -32px;
+            }
+        }
 
         .col2 {
-            padding: 0 0 0 64px;
-            gap: 23px 0
+            gap: 23px 0;
+            align-items: center;
+
+            @include media-breakpoint-down(md) {
+                margin: 0;
+                z-index: 1;
+                background-color: $waveblue;
+                padding-top: 32px;
+                padding-bottom: 32px;
+            }
+
+            @include media-breakpoint-up(lg) {
+                align-items: initial;
+                padding: 0 25px 0 calc(2rem + 64px);
+            }
         }
     }
 
     &-pdfimage {
-        height: 369px;
-        width: 252px;
+        height: 238px;
+        width: 100%;
+        max-width: 266px;
+        position: relative;
+        margin-bottom: 42px;
+
+        @include media-breakpoint-up(lg) {
+            margin-bottom: 0;
+            height: 369px;
+            max-width: 252px;
+        }
 
         img {
-            width: 100%;
+            width: auto;
+            height: 100%;
+            position: absolute;
+            top: 0;
+            left: 0;
+
+            @include media-breakpoint-up(lg) {
+                position: static;
+                width: 100%;
+            }
+        }
+
+        .pastille {
+            position: absolute;
+            height: 187px;
+            width: 187px;
+            background-color: #FFCD6E;
+            border-radius: 100px;
+            text-align: center;
+            display: flex;
+            align-items: center;
+            padding: 10px;
+            font-size: 16px;
+            line-height: 20px;
+            font-weight: 600;
+            bottom: -46px;
+            box-shadow: 0 6px 12px rgba(#122846, .16);
+            @include media-breakpoint-up(lg) {
+                bottom: 55px;
+            }
+            @include media-breakpoint-up(xl) {
+                right: 0;
+                transform: translateX(50%);
+            }
+            @media (max-width: 1340px) {
+                right: 19%;
+            }
+            @include media-breakpoint-down(lg) {
+                right: -13%;
+            }
+            @include media-breakpoint-down(md) {
+                right: 0;
+            }
         }
     }
 
     &-edition-jour {
-        display: grid;
-        gap: 0 64px;
-        grid-template-columns: 387px 1fr;
-        grid-template-rows: 50% 50%;
-        width: 100%;
-        height: 557px;
+        display: flex;
+        flex-direction: column;
+        align-items: center;
+
+        @include media-breakpoint-up(lg) {
+            display: grid;
+            gap: 0 64px;
+            grid-template-columns: 387px 1fr;
+            grid-template-rows: 50% 50%;
+            width: 100%;
+            height: 557px;
+            align-items: initial;
+        }
 
         .grid-1 {
-            grid-column: 2;
-            grid-row: 1;
+            margin-bottom: 16px;
+            gap: 16px;
             display: flex;
             flex-direction: column;
-            gap: 16px;
+            align-items: center;
+
+            @include media-breakpoint-up(lg) {
+                transform: scale(.7);
+                transform-origin: top left;
+                transition: all .3s;
+
+                align-items: initial;
+                margin: 0;
+                grid-column: 2;
+                grid-row: 1;
+                max-width: 341px;
+            }
+
+            @include media-breakpoint-up(xl) {
+                transform: scale(1);
+            }
+
             .date {
-                font-size: 20px;
+                font-size: 16px;
+                @include media-breakpoint-up(lg) {
+                    font-size: 20px;
+                }
                 font-weight: 600;
             }
         }
 
         .cover {
-            grid-column: 1;
-            grid-row: 1 / 2;
+            max-width: 253px;
+
+            @include media-breakpoint-up(lg) {
+                max-width: 100%;
+                grid-column: 1;
+                grid-row: 1 / 2;
+            }
 
             img {
                 width: 100% !important;
         }
 
         .grid-2 {
-            grid-column: 2;
-            grid-row: 2;
+            padding-bottom: 32px;
+            margin-top: 25px;
+
             display: flex;
             flex-direction: column;
             gap: 8px;
-            margin-top: auto;
             padding-top: 32px;
             @extend .dotted;
+            max-width: 344px;
+            width: 100%;
+            @include media-breakpoint-up(lg) {
+                max-width: 321px;
+                width: auto;
+
+                transform: scale(.7);
+                transform-origin: bottom left;
+                transition: all .3s;
+
+                grid-column: 2;
+                grid-row: 2;
+                margin-top: auto;
+            }
+            @include media-breakpoint-up(xl) {
+                transform: scale(1);
+            }
+
+            h2,a {
+                @include media-breakpoint-up(lg) {
+                    max-width: 231px;
+                }
+            }
+
             h2 {
                 @extend .mediumtitle;
+                @include media-breakpoint-down(md) {
+                    margin: 0;
+                }
             }
 
             a {
                 font-size: 16px;
+                line-height: 20px;
+            }
+        }
+    }
+
+    &-last-edition {
+        h2 {
+            margin-bottom: 16px !important;
+            text-align: center;
+            @include media-breakpoint-up(lg) {
+                text-align: left;
+                margin-bottom: 32px !important;
+            }
+        }
+        #carousel {
+            position: relative;
+            .cover-title {
+                display: none;
+            }
+            &.embla {
+                @media (min-width: 992px) and (max-width: 1461px) {
+                    flex: 0 0 83.33333333%;
+                    max-width: 83.33333333%;
+                    margin: 0 auto !important;
+                }
+            }
+            .embla__viewport {
+                overflow: hidden;
+            }
+            .embla__container {
+                display: flex;
+                gap: 16px;
+                @include media-breakpoint-up(lg) {
+                    gap: 32px;
+                }
+            }
+            .embla__slide {
+                 flex: 0 0 calc((100% / 2) - 8px);
+                @include media-breakpoint-up(lg) {
+                    flex: 0 0 calc((100% / 4) - 16px);
+                }
+                @media (min-width: 1461px) {
+                    flex: 0 0 230px;
+                }
+                min-width: 0;
+                img {
+                    width: 100%;
+                }
+            }
+            button {
+                background: transparent;
+                margin-top: 20px;
+                &.embla__prev {
+                    margin-left: auto;
+                }
+                &.embla__next {
+                    margin-right: auto;
+                }
+                @include media-breakpoint-up(lg) {
+                    margin: 0;
+                    position: absolute;
+                    top: 50%;
+                    &.embla__prev {
+                        left: 0;
+                        transform: translate(calc(-100% - 35px), -50%);
+                    }
+                    &.embla__next {
+                        right: 0;
+                        transform: translate(calc(100% + 35px), -50%);
+                    }
+                }
+            }
+        }
+    }
+
+    &-section-footer {
+
+        margin-top: -25px;
+
+        & > div:first-child {
+            margin-bottom: 16px;
+            @include media-breakpoint-up(lg) {
+                margin: 0;
+            }
+        }
+
+        .thumbnail {
+            @include media-breakpoint-down(md) {
+                height: 343px;
+                width: 100% !important;
+                order: 1;
             }
+            img {
+                width: 100%;
+                height: 100%;
+                object-fit: cover;
+            }
+        }
+
+        .texts {
+            padding: 32px;
+            border-bottom-right-radius: 3px;
+            border-top-right-radius: 3px;
+
+            @include media-breakpoint-down(md) {
+                width: 100% !important;
+            }
+
+            @include media-breakpoint-up(lg) {
+                padding: 0 64px;
+            }
+
+            h3 {
+                margin-bottom: 16px;
+            }
+
+            p {
+                font-size: 16px;
+            }
+
+            .liltitle {
+                font-weight: 600;
+                margin-top: 16px;
+            }
+        }
+
+        .pdf-block {
+            gap: 24px;
+            h3 {
+                color: #ffffff;
+            }
+            img {
+                height: 200px;
+                object-fit: contain;
+            }
+        }
+    }
+
+    .line {
+        @include media-breakpoint-up(lg) {
+            display: block !important;
         }
     }
 }
index f782f428b958e38279a6160be1b461b3bd35a82f..e18af4e6493bae57c421699d16a9db4beee27e75 100644 (file)
@@ -1,10 +1,15 @@
 $pill-max-width: 100px;
 
 nav > ul {
-    gap: 7px;
+    gap: 32px;
     margin: 0;
     padding: 10px 0 0 16px;
+    text-align: center;
+    width: max-content !important;
+    align-items: center;
     @include media-breakpoint-up(lg) {
+        align-items: initial;
+        text-align: left;
         gap: 29px;
         padding: 0;
     }
@@ -58,21 +63,32 @@ nav > ul {
     top: 100%;
     z-index: 999;
     transition: left cubic-bezier(0,.32,.24,.84) .3s;
+
+    display: flex;
+    align-items: center;
+    justify-content: center;
     &.open {
         left: 0;
     }
+    li {
+        width: max-content;
+        font-size: 20px;
+        @include media-breakpoint-up(lg) {
+            font-size: 16px;
+        }
+    }
     &-item {
         display: flex;
         color: #ffffff !important;
-        @include media-breakpoint-up(lg) {
-            &:hover {
-                text-decoration: none;
-                border-bottom: 1px solid #ffffff;
-            }
+        &:hover,
+        &.active{
+            text-decoration: none;
+            border-bottom: 1px solid #ffffff;
         }
     }
 
     @include media-breakpoint-up(lg) {
+        display: block;
         font-size: 16px;
         height: auto !important;
         left: 50% !important;
diff --git a/resources/sass/_page.scss b/resources/sass/_page.scss
new file mode 100644 (file)
index 0000000..9bf31ec
--- /dev/null
@@ -0,0 +1,200 @@
+.psq {
+    &-text-image-banner {
+        &:not(.decouvrir) {
+            @include media-breakpoint-down(lg) {
+                padding-bottom: 0 !important;
+            }
+        }
+        &-container{
+            gap: 32px;
+            flex-direction: column;
+            @include media-breakpoint-up(xl) {
+                flex-direction: row;
+                gap: 64px;
+                margin: 0;
+            }
+        }
+        p {
+            margin: 0;
+        }
+        .bigtitle {
+            margin-bottom: 32px;
+        }
+        .bloc-img {
+            img {
+                width: 100%;
+            }
+        }
+
+        .psq {
+            &-bloc-text {
+                width: 100%;
+                @include media-breakpoint-up(xl) {
+                    max-width: 575px;
+                }
+            }
+            &-bloc-img {
+                width: 100%;
+                @include media-breakpoint-down(xl) {
+                    width: calc(100% + 32px);
+                    margin-left: -16px;
+                }
+                @include media-breakpoint-up(xl) {
+                    max-width: 641px;
+                }
+            }
+        }
+
+        .cover {
+            max-width: 384px;
+            @include media-breakpoint-down(xl) {
+                order: 1;
+                margin: 0 auto;
+                max-width: 253px;
+            }
+            img {
+                width: 100% !important;
+            }
+            &-title {
+                display: none;
+            }
+        }
+
+    }
+
+    &-banner {
+        text-align: center;
+        @include media-breakpoint-up(xl) {
+            text-align: left;
+        }
+        .lilline {
+            margin: 24px auto;
+            @include media-breakpoint-up(xl) {
+                margin: 24px 0;
+            }
+        }
+        .subtext {
+            font-size: 20px;
+            line-height: 25px;
+            font-weight: 600;
+        }
+        .subtext-2 {
+            font-size: 16px;
+            line-height: 20px;
+            font-weight: 600;
+            margin-bottom: 16px;
+        }
+    }
+
+    &-not-registered {
+        text-align: center;
+
+        .text-intro {
+            max-width: 832px;
+            margin: 0 auto !important;
+            font-weight: 600;
+        }
+        .text-intro-form {
+            font-weight: 600;
+            padding-bottom: 32px;
+            max-width: 329px;
+            width: 100%;
+            margin: 0 auto;
+            @include media-breakpoint-up(xl) {
+                max-width: 100%;
+                padding-bottom: 64px;
+                margin: 0;
+            }
+        }
+        input,input:focus {
+            outline: none !important;
+            box-shadow: none !important;
+        }
+    }
+
+    &-contact {
+        @include media-breakpoint-down(lg) {
+            padding-bottom: 0 !important;
+        }
+        .bigtitle {
+            margin-bottom: 64px;
+            @include media-breakpoint-down(lg) {
+                margin-bottom: 32px;
+            }
+        }
+        .psq-not-registered {
+            @include media-breakpoint-down(lg) {
+                padding: 0;
+            }
+        }
+        .form {
+            @include media-breakpoint-up(xl) {
+                margin: 0 0 0 auto !important;
+            }
+        }
+    }
+
+    &-login {
+        @include media-breakpoint-up(md) {
+            padding-top: 80px;
+        }
+        .form {
+            @include media-breakpoint-down(sm) {
+                max-width: 100%;
+                box-shadow: none !important;
+                border: 0 !important;
+            }
+            @include media-breakpoint-down(md) {
+                padding: 32px !important;
+            }
+        }
+        input {
+            @include media-breakpoint-down(sm) {
+                background-color: $clearblue;
+            }
+        }
+        .forgot-pwd {
+            text-align: left;
+            margin: 0;
+            padding: 16px 0 0;
+            @include media-breakpoint-up(lg) {
+                padding: 0 0 0 32px;
+            }
+        }
+    }
+
+    &-annonceur {
+        &-banner {
+            text-align: left;
+            .subtext {
+                margin-bottom: 41px;
+            }
+        }
+        .row {
+            padding-bottom: 64px;
+            @include media-breakpoint-down(md) {
+                gap: 31px;
+            }
+        }
+        .col-lg-4 {
+            gap: 16px;
+            @include media-breakpoint-down(md) {
+                gap: 50px;
+            }
+        }
+        &-impression-text {
+            margin-bottom: 8px;
+        }
+        &-impression-tarif {
+            color: $red;
+            text-transform: uppercase;
+            font-weight: 600;
+        }
+        .text-promotion {
+            font-weight: 600;
+            span {
+                color: $red;
+            }
+        }
+    }
+}
diff --git a/resources/sass/_popup.scss b/resources/sass/_popup.scss
new file mode 100644 (file)
index 0000000..fd36d29
--- /dev/null
@@ -0,0 +1,40 @@
+.swal2{
+    &-container {
+        background-color: rgba($blue,.9) !important;
+    }
+    &-popup {
+        margin: 0;
+        padding: 64px;
+        max-width: 754px;
+        width: 100%;
+        .underline {
+            text-decoration: underline;
+        }
+    }
+    &-title {
+        display: block;
+        padding: 0;
+        text-align: left;
+        font-size: 25px;
+        color: $blue;
+        margin-bottom: 32px;
+    }
+    &-html-container {
+        text-align: left !important;
+        padding: 0 !important;
+    }
+    &-close {
+        position: absolute;
+        right: -14px;
+        top: 9px;
+        transform: translateY(-50%);
+        svg {
+            overflow: visible;
+            display: block;
+        }
+        &:hover {
+            top: 9px !important;
+            transform: translateY(-50%);
+        }
+    }
+}
index 780562503c3711bd62fb253241696dac027bb0ec..4b89bfff366bcd66f455446d5c17ba3a35644362 100644 (file)
@@ -9,6 +9,8 @@ $line-height-base: 1.6;
 
 // Colors
 $blue: #1D5198;
+$clearblue: #EDEFFA;
+$waveblue: #DCE0F5;
 $indigo: #6574cd;
 $purple: #9561e2;
 $pink: #f66d9b;
@@ -19,6 +21,12 @@ $green: #38c172;
 $teal: #4dc0b5;
 $cyan: #6cb2eb;
 
+$colors: (
+    "blue": $blue,
+    "clearblue": $clearblue,
+    "waveblue": $waveblue
+);
+
 $grid-breakpoints: (
     xs: 0,
     sm: 576px,
@@ -29,10 +37,15 @@ $grid-breakpoints: (
 );
 
 $container-max-widths: (
-    sm: 540px,
+    sm: 100%,
     md: 720px,
     lg: 960px,
-    xl: 1280px,
-    xxl: 1280px
+    xl: calc(1280px + 32px), // 32px est la largeur de la gouttière
+    xxl: calc(1280px + 32px)
 );
 
+$grid-gutter-width: 4rem;
+
+@media (max-width:1120px) {
+    $grid-gutter-width: 2rem;
+}
index 6687b3b60ac731fabdd573e405e50d96499c09dc..0ddb763924ad159ec9d8c052beb7da0eaee6e557 100644 (file)
 @import "polls";
 @import "articles";
 @import "home";
+@import "page";
+@import "popup";
+
+html {
+    overflow-x: hidden;
+}
 
 body {
     margin-bottom: 0 !important;
+    overflow-x: hidden;
 }
 
 main {
-        min-height: calc(100vh - 360px);
+    min-height: calc(100vh - 160px);
 }
 
 p,a,h1,h2,h3,h4,span,li,div {
     color: $blue;
 }
 
+p {
+    font-size: 16px;
+    line-height: 20px;
+    margin: 0;
+}
+
 @media print {
     nav {
         display: none;
@@ -361,6 +374,8 @@ article {
     font-weight: 500;
     text-decoration: underline;
     transition: all .3s;
+    background: none;
+    border: 0;
     @include media-breakpoint-up(xl) {
         font-size: 16px;
     }
@@ -386,9 +401,16 @@ article {
 }
 
 .bigtitle {
-    font-size: 61px;
     font-weight: bold;
-    line-height: 61px;
+    line-height: 48px;
+    font-size: 39px;
+    margin-bottom: -12px;
+
+    @include media-breakpoint-up(lg) {
+        font-size: 61px;
+        line-height: 61px;
+        margin: 0;
+    }
 }
 
 .mediumtitle {
@@ -398,6 +420,12 @@ article {
     color: $blue;
 }
 
+.regulartitle {
+    font-size: 20px;
+    font-weight: 600;
+    line-height: 25px;
+}
+
 .btnorange {
     background-color: #D04D4B;
     border-radius: 24px;
@@ -409,9 +437,156 @@ article {
 }
 
 .text-decoration-underline {
+}
+
+.linkunderline {
+    font-size: 16px;
+    font-weight: 500;
+    line-height: 20px;
     text-decoration: underline;
 }
 
 .dotted {
     border-top: 1px dotted $blue;
 }
+
+.p-64 {
+    padding: 32px;
+    @include media-breakpoint-up(xl) {
+        padding: 64px;
+    }
+}
+
+.p-64-0 {
+    padding: 32px 0;
+    @include media-breakpoint-up(xl) {
+        padding: 64px 0;
+    }
+}
+
+.radius {
+    border-radius: 3px;
+}
+
+.lilline {
+    width: 32px;
+    height: 1px;
+    background-color: #8DA7CB;
+}
+
+.card {
+    &-container-form {
+        padding-bottom: 64px;
+        @include media-breakpoint-down(lg) {
+            padding: 0;
+        }
+        &.card-decouvrir-psq {
+            padding-top: 64px;
+        }
+    }
+    &.form {
+        max-width: 832px;
+        margin: 0 auto;
+        text-align: left;
+        padding: 32px 15px;
+        border: 1px solid #DCE0F5;
+        box-shadow: 0 3px 6px rgba(0, 0, 0, .16);
+        @include media-breakpoint-up(lg) {
+            padding: 64px;
+        }
+    }
+    &-header {
+        padding: 0;
+        background: transparent;
+        border: 0;
+        font-size: 25px;
+        margin-bottom: 31px;
+        font-weight: 600;
+    }
+    &-body {
+        padding: 0;
+
+        .form-group {
+            margin-bottom: 16px;
+        }
+
+        label {
+            font-weight: 500;
+        }
+
+        input {
+            border: 1px solid $waveblue;
+            &:hover,
+            &:focus {
+                box-shadow: none;
+                outline: none;
+            }
+        }
+
+        .separate-line {
+            margin: 16px 0;
+            @include media-breakpoint-up(md) {
+                margin: 32px 0;
+            }
+        }
+
+        .not-registered-button {
+            color: $red !important;
+            border: 1px solid $red;
+            @include media-breakpoint-down(sm) {
+                font-size: 14px;
+            }
+        }
+    }
+
+    .g-recaptcha {
+        margin-top: 28px;
+    }
+
+    .form-option {
+        gap: 4px;
+        @include media-breakpoint-up(xl) {
+            gap: 32px;
+        }
+    }
+}
+
+.underline {
+    text-decoration: underline;
+}
+
+.full-width {
+    @include media-breakpoint-down(xl) {
+        width: calc(100% + 32px);
+        margin-left: -16px;
+    }
+}
+
+.bg-white-to-blue {
+    background-color: #ffffff;
+    @include media-breakpoint-up(md) {
+        background-color: $clearblue;
+    }
+}
+
+@each $color, $color-value in $colors {
+    .bg-#{$color} {
+        background-color: $color-value;
+    }
+}
+
+$fs : (16,20,25);
+
+@each $fs in $fs {
+    .f-#{$fs} {
+        font-size: #{$fs}px !important;
+        @if $fs == 16 {
+            line-height: 20px !important;
+        } @else if $fs == 20 {
+            line-height: 25px !important;
+        } @else if $fs == 25 {
+            line-height: 27px !important;
+        }
+    }
+
+}
index 38920b0efb8f2d67c0df32eb6deb6f4d2e092e59..8912822454a0d5758f6effc834a2924dd022e34e 100644 (file)
@@ -1,43 +1,58 @@
-@extends('twill::layouts.settings', ['contentFieldsetLabel' => 'Modification du contenu statique'])
+@extends('twill::layouts.settings', [
+    'contentFieldsetLabel' => 'Contenu statique',
+    'additionalFieldsets' => []
+])
+
+@section('fieldsets')
+    @formField('wysiwyg', [
+        'label' => 'Titre principal',
+        'name' => 'main_title',
+        'maxlength' => 1000,
+        'required' => true,
+        'toolbarOptions' => \App\Helpers\Fields::fullToolbar(),
+    ])
+@stop
 
 @section('contentFields')
 
     @formField('wysiwyg', [
-        'label' => 'Texte Chroniques Pharma',
-        'name' => 'pharma_chronicles_text',
+        'label' => 'Titre principal',
+        'name' => 'main_title',
         'maxlength' => 1000,
         'required' => true,
         'toolbarOptions' => \App\Helpers\Fields::fullToolbar(),
     ])
+
     @formField('wysiwyg', [
-        'label' => 'Texte page pas encore abonné',
-        'name' => 'not_registered_text',
+        'label' => 'Date édition du jour',
+        'name' => 'not_register',
         'maxlength' => 1000,
         'required' => true,
         'toolbarOptions' => \App\Helpers\Fields::fullToolbar(),
     ])
+
     @formField('wysiwyg', [
-        'label' => 'Texte page pas encore abonné bas gauche',
-        'name' => 'not_registered_text_left',
+        'label' => 'Texte lien pas encore abonné',
+        'name' => 'not_register_link',
         'maxlength' => 1000,
         'required' => true,
         'toolbarOptions' => \App\Helpers\Fields::fullToolbar(),
     ])
+
     @formField('wysiwyg', [
-        'label' => 'Texte page pas encore abonné bas droite',
-        'name' => 'not_registered_text_right',
+        'label' => 'Titre nos précédentes éditions',
+        'name' => 'title_last_edition',
         'maxlength' => 1000,
         'required' => true,
         'toolbarOptions' => \App\Helpers\Fields::fullToolbar(),
     ])
 
     @formField('wysiwyg', [
-        'label' => 'Texte page pas encore abonné v2',
-        'name' => 'not_registered_text_v2',
+        'label' => 'Texte bloc image',
+        'name' => 'text_bloc_image',
         'maxlength' => 1000,
         'required' => true,
         'toolbarOptions' => \App\Helpers\Fields::fullToolbar(),
     ])
 
-
 @stop
diff --git a/resources/views/annonceurs/index.blade.php b/resources/views/annonceurs/index.blade.php
new file mode 100644 (file)
index 0000000..5bb6a84
--- /dev/null
@@ -0,0 +1,225 @@
+@extends('layouts.v2.center')
+@inject('settings', \A17\Twill\Repositories\SettingRepository::class)
+
+@section('content')
+    <div class="psq-text-image-banner bg-clearblue p-64-0">
+        <div class="container">
+            <div class="psq-text-image-banner-container d-flex justify-content-between">
+                <div class="psq-bloc-text psq-banner">
+                    <h1 class="bigtitle">Devenez annonceur de Prescription Santé</h1>
+                    <p class="subtext-2 f-20">2 300 lecteurs payants
+                        4 éditions par semaines</p>
+                    <p>un outil idéal pour votre communication
+                        Possibilité d’inclure dans vos pages de pub des liens vers votre site, ou vos campagnes.</p>
+                </div>
+                <div class="psq-bloc-img">
+                    <div class="bloc-img">
+                        <img src="{{ @asset('img/subscription_image.png')  }}" />
+                    </div>
+                </div>
+            </div>
+        </div>
+    </div>
+
+    <div class="psq-not-registered psq-annonceur">
+        <div class="container">
+            <div class="psq-banner psq-annonceur-banner p-64-0">
+                <p class="subtext text-lg-left text-center">Un coût contact imbattable</p>
+                <div class="row">
+                    <div class="col-lg-4 d-flex psq-annonceur-impression">
+                        <div class="psq-annonceur-impression-img">
+                            <img src="{{ @asset('img/fb_impression_x1.png') }}" />
+                        </div>
+                        <div>
+                            <div class="psq-annonceur-impression-text">Une pleine page diffusée dans une de nos éditions :</div>
+                            <p class="psq-annonceur-impression-tarif">350,00 € HT</p>
+                        </div>
+                    </div>
+                    <div class="col-lg-4 d-flex psq-annonceur-impression">
+                        <div class="psq-annonceur-impression-img">
+                            <img src="{{ @asset('img/fb_impression_x4.png') }}" />
+                        </div>
+                        <div>
+                            <div class="psq-annonceur-impression-text">Quatre pleines pages diffusées dans nos éditions
+                                selon votre calendrier :</div>
+                            <p class="psq-annonceur-impression-tarif">1200,00 € HT</p>
+                        </div>
+                    </div>
+                    <div class="col-lg-4 d-flex psq-annonceur-impression">
+                        <div class="psq-annonceur-impression-img">
+                            <img src="{{ @asset('img/fb_impression_x10.png') }}" />
+                        </div>
+                        <div>
+                            <div class="psq-annonceur-impression-text">Dix pleines pages diffusées dans nos éditions selon
+                                votre calendrier :</div>
+                            <p class="psq-annonceur-impression-tarif">2500,00 € HT</p>
+                        </div>
+                    </div>
+                </div>
+                <p class="text-center text-promotion">Si vous êtes abonné à notre quotidien :
+                    <br><span class="">-10% sur ces tarifs</span>
+                </p>
+            </div>
+        </div>
+
+        <div class="bg-clearblue">
+
+            <div class="container card-container-form">
+
+                <div class="text-intro-form p-64-0">
+                    <p>Pour en savoir plus, transmettez nous le questionnaire ci-dessous :</p>
+                </div>
+
+                <div class="card form">
+                    <div class="card-header text-lg-left text-center">
+                        Demande annonceur
+                    </div>
+
+                    <div class="card-body">
+                        <form method="POST" action="{{ route('annonceurs.store') }}">
+                            @csrf
+
+                            <div class="form-group">
+                                <label for="name" class="col-form-label">Nom complet</label>
+
+                                <div>
+                                    <input id="name" type="text" class="form-control @error('name') is-invalid @enderror" name="name" value="{{ old('name') }}" required autocomplete="full-name" autofocus>
+
+                                    @error('name')
+                                    <span class="invalid-feedback" role="alert">
+                                    <strong>{{ $message }}</strong>
+                                </span>
+                                    @enderror
+                                </div>
+                            </div>
+
+
+                            <div class="form-group">
+                                <label for="email" class="col-form-label">{{ __('E-Mail Address') }}</label>
+
+                                <div>
+                                    <input id="email" type="email" class="form-control @error('email') is-invalid @enderror" name="email" value="{{ old('email') }}" required autocomplete="email">
+
+                                    @error('email')
+                                    <span class="invalid-feedback" role="alert">
+                                    <strong>{{ $message }}</strong>
+                                </span>
+                                    @enderror
+                                </div>
+                            </div>
+
+                            <div class="form-group">
+                                <label for="organization" class="col-form-label">{{ __('Employeur') }}</label>
+
+                                <div>
+                                    <input id="organization" type="text" class="form-control @error('organization') is-invalid @enderror" name="organization" value="{{ old('organization') }}" required>
+
+                                    @error('organization')
+                                    <span class="invalid-feedback" role="alert">
+                                    <strong>{{ $message }}</strong>
+                                </span>
+                                    @enderror
+                                </div>
+                            </div>
+
+                            <div class="form-group">
+                                <label for="page" class="col-form-label">{{ __('Nombre de pages de pub envisagé') }}</label>
+
+                                <div>
+                                    <input id="page" type="text" class="form-control @error('page') is-invalid @enderror" name="page" value="{{ old('organization') }}" required>
+
+                                    @error('page')
+                                    <span class="invalid-feedback" role="alert">
+                                        <strong>{{ $message }}</strong>
+                                    </span>
+                                    @enderror
+                                </div>
+                            </div>
+
+                            <div class="form-group">
+                                <label for="comments" class="col-form-label">Commentaires (facultatif)</label>
+
+                                <div>
+                                    <textarea id="comments" rows="3" type="text" class="form-control @error('comments') is-invalid @enderror" name="comments" value="{{ old('comments') }}"></textarea>
+
+                                    @error('comments')
+                                    <span class="invalid-feedback" role="alert">
+                                    <strong>{{ $message }}</strong>
+                                </span>
+                                    @enderror
+                                </div>
+                            </div>
+
+                            {{--<request-subscription-form class="mb-4"></request-subscription-form>}}
+
+        {{--                            <div class="form-group row">--}}
+                            {{--                                <label for="plan" class="col-12 col-form-label">--}}
+                            {{--                                    Vous souhaitez découvrir nos tarifs pour :--}}
+                            {{--                                </label>--}}
+                            {{--                                <div class="col-md-4">--}}
+
+                            {{--                                </div>--}}
+
+                            {{--                                <div class="col-md-6">--}}
+
+                            {{--                                    @foreach(\App\ContactRequest::PLANS as $key => $value)--}}
+                            {{--                                        <div class="custom-control custom-radio">--}}
+                            {{--                                          <input type="radio" id="plan_{{$key}}" name="plan" class="custom-control-input  @error('plan') is-invalid @enderror" value="{{$key}}" >--}}
+                            {{--                                          <label class="custom-control-label" for="plan_{{$key}}">{{$value}}</label>--}}
+                            {{--                                        </div>--}}
+                            {{--                                    @endforeach--}}
+
+                            {{--                                    @error('plan')--}}
+                            {{--                                    <span class="invalid-feedback d-block" role="alert">--}}
+                            {{--                                        <strong>{{ $message }}</strong>--}}
+                            {{--                                    </span>--}}
+                            {{--                                    @enderror--}}
+                            {{--                                </div>--}}
+                            {{--                            </div>--}}
+
+
+
+                            <div class="form-group">
+                                <div>
+                                    {!! ReCaptcha::htmlFormSnippet() !!}
+                                    @error(recaptchaFieldName())
+                                    <span class="invalid-feedback d-block" role="alert">
+                                    <strong>{{ $message }}</strong>
+                                </span>
+                                    @enderror
+                                </div>
+                            </div>
+
+
+                            <div class="form-group mb-0 text-center text-xl-left">
+                                <div>
+                                    <button type="submit" class="btn btnorange">
+                                        Envoyer
+                                    </button>
+                                </div>
+                            </div>
+                            <div class="mt-3">
+                                {{--                                <div class="col-12">--}}
+                                {{--                                    <div class="alert alert-info">--}}
+                                {{--                                        Dès réception de ce formulaire, vous nous transmettrons un devis adapté à votre demande.--}}
+                                {{--                                    </div>--}}
+                                {{--                                </div>--}}
+                            </div>
+                            <div class="text text-center text-xl-left">*Champs obligatoires</div>
+                        </form>
+                    </div>
+
+                </div>
+            </div>
+
+        </div>
+    </div>
+
+
+@endsection
+<script>
+    import RequestSubscriptionForm from "../../js/components/Contact/RequestSubscriptionForm";
+    export default {
+        components: {RequestSubscriptionForm}
+    }
+</script>
index 209f8ac7425a33bc36840e85befea4269123bb5b..f229fc5845076b85a2847db6010f0dbe21285b5a 100644 (file)
 @extends('layouts.v2.app')
 
-@section('aside')
-    <img src="{!! asset('img/v2/img-a.jpg') !!}" alt="" class="w-100 mb-3">
-    <h2 class="text-center bold">Prescription Santé Quotidien</h2>
-    <p>L’actualité des acteurs du médicament et de ses partenaires en France et ailleurs dès 9h30 le matin dans votre boite mail</p>
-    <h2 class="bold">4 ÉDITIONS PAR SEMAINE<br>8 À 12 PAGES PAR ÉDITION</h2>
-    <p>Depuis 13 ans, plus de 2300 ABONNÉS, au sein de 95 laboratoires pharmaceutiques et 50 entreprises partenaires de l’industrie du médicament.</p>
-
-@endsection
-
-@section('main')
-
-
-        <img src="{{asset('img/v2/img-b.jpg')}}" alt="" class="w-100 mb-3">
-        <h2 class="uppercase text-center larger">
-            Notre offre découverte
-        </h2>
-        <p class="small text-center">(Sans engagement de votre part)</p>
-        <h2 class="text-center larger uppercase orange-2">
-            RECEVEZ GRATUITEMENT NOTRE QUOTIDIEN PENDANT 1 MOIS
-        </h2>
-        <p class="small text-center">(soit les 15 prochaines éditions)</p>
-
-        <form method="POST" action="{{ route('discover.register') }}">
-            @csrf
-            @if(request()->has('redirect_to'))
-                <input type="hidden" name="redirect_to" value="{{request()->redirect_to}}">
-            @endif
-            <div class="form-group">
-                <label for="first_name">{{ __('Prénom') }} *</label>
-
-                <div>
-                    <input id="first_name" type="text" class="form-control @error('first_name') is-invalid @enderror" name="first_name" value="{{ old('first_name') }}" required autocomplete="given-name" autofocus>
-
-                    @error('first_name')
-                    <span class="invalid-feedback" role="alert">
-                                        <strong>{{ $message }}</strong>
-                                    </span>
-                    @enderror
-                </div>
-            </div>
-
-            <div class="form-group">
-                <label for="last_name">{{ __('Nom') }} *</label>
-
-                <div>
-                    <input id="last_name" type="text" class="form-control @error('last_name') is-invalid @enderror" name="last_name" value="{{ old('last_name') }}" required autocomplete="family-name">
-
-                    @error('last_name')
-                    <span class="invalid-feedback" role="alert">
-                                        <strong>{{ $message }}</strong>
-                                    </span>
-                    @enderror
-                </div>
-            </div>
-
-            <div class="form-group">
-                <label for="email">{{ __('E-Mail Address') }} *</label>
-
-                <div>
-                    <input id="email" type="email" class="form-control @error('email') is-invalid @enderror" name="email" value="{{ old('email') }}" required autocomplete="email">
-
-                    @error('email')
-                    <span class="invalid-feedback" role="alert">
-                                        <strong>{{ $message }}</strong>
-                                    </span>
-                    @enderror
-                </div>
-            </div>
-
-            <div class="form-group">
-                <label for="employer">{{ __('Employeur') }} *</label>
-
-                <div>
-                    <input id="employer" type="text" class="form-control @error('employer') is-invalid @enderror" name="employer" value="{{ old('employer') }}" required>
-
-                    @error('employer')
-                    <span class="invalid-feedback" role="alert">
-                                        <strong>{{ $message }}</strong>
-                                    </span>
-                    @enderror
+@section('content')
+
+    <div class="psq-text-image-banner bg-waveblue p-64-0 decouvrir">
+        <div class="container">
+            <div class="psq-text-image-banner-container d-flex">
+                <x-cover :pdf="$last_pdf->first()" type="3">
+                </x-cover>
+                <div class="psq-bloc-text psq-banner">
+                    <h1 class="bigtitle">Découvrez gratuitement
+                        notre quotidien
+                        durant 1 mois</h1>
+                    <p class="subtext f-20">Recevez gratuitement nos prochaines éditions sans engagement de votre part.</p>
                 </div>
             </div>
-            <div class="form-group">
-                <label for="service">Service</label>
-
-                <div>
-                    <input id="service" type="text" class="form-control @error('service') is-invalid @enderror" name="service" value="{{ old('service') }}">
-
-                    @error('service')
-                    <span class="invalid-feedback" role="alert">
-                                        <strong>{{ $message }}</strong>
-                                    </span>
-                    @enderror
+        </div>
+    </div>
+
+    <div class="bg-clearblue">
+        <div class="container card-container-form card-decouvrir-psq">
+            <div class="card form">
+                <div class="card-header text-lg-left text-center">
+                    Notre offre découverte
                 </div>
-            </div>
-            <div class="form-group">
-                <label for="position">Fonction</label>
-
-                <div>
-                    <input id="position" type="text" class="form-control @error('position') is-invalid @enderror" name="position" value="{{ old('position') }}">
-
-                    @error('position')
-                    <span class="invalid-feedback" role="alert">
-                                        <strong>{{ $message }}</strong>
-                                    </span>
-                    @enderror
+                <div class="card-body">
+                    <form method="POST" action="{{ route('discover.register') }}">
+                        @csrf
+                        @if(request()->has('redirect_to'))
+                            <input type="hidden" name="redirect_to" value="{{request()->redirect_to}}">
+                        @endif
+                        <div class="form-group">
+                            <label for="last_name">{{ 'Nom complet' }} *</label>
+
+                            <div>
+                                <input id="last_name" type="text" class="form-control @error('last_name') is-invalid @enderror" name="last_name" value="{{ old('last_name') }}" required autocomplete="family-name">
+
+                                @error('last_name')
+                                <span class="invalid-feedback" role="alert">
+                                    <strong>{{ $message }}</strong>
+                                </span>
+                                @enderror
+                            </div>
+                        </div>
+
+                        <div class="form-group">
+                            <label for="email">{{ __('E-Mail Address') }} *</label>
+
+                            <div>
+                                <input id="email" type="email" class="form-control @error('email') is-invalid @enderror" name="email" value="{{ old('email') }}" required autocomplete="email">
+
+                                @error('email')
+                                <span class="invalid-feedback" role="alert">
+                                    <strong>{{ $message }}</strong>
+                                </span>
+                                @enderror
+                            </div>
+                        </div>
+
+                        <div class="form-group">
+                            <label for="employer">{{ __('Employeur') }} *</label>
+
+                            <div>
+                                <input id="employer" type="text" class="form-control @error('employer') is-invalid @enderror" name="employer" value="{{ old('employer') }}" required>
+
+                                @error('employer')
+                                <span class="invalid-feedback" role="alert">
+                                    <strong>{{ $message }}</strong>
+                                </span>
+                                @enderror
+                            </div>
+                        </div>
+                        <div class="form-group">
+                            <label for="comments" class="col-form-label">Commentaires (facultatif)</label>
+
+                            <div>
+                                <textarea id="comments" rows="3" type="text" class="form-control @error('comments') is-invalid @enderror" name="comments" value="{{ old('comments') }}"></textarea>
+
+                                @error('comments')
+                                <span class="invalid-feedback" role="alert">
+                                    <strong>{{ $message }}</strong>
+                                </span>
+                                @enderror
+                            </div>
+                        </div>
+
+                        <div class="form-group">
+                            @error(recaptchaFieldName())
+                            <span class="invalid-feedback" role="alert">
+                                    <strong>{{ $message }}</strong>
+                                </span>
+                            @enderror
+                            {!! ReCaptcha::htmlFormSnippet() !!}
+
+                        </div>
+
+
+                        <div class="form-group mb-0">
+                            <div>
+                                <button type="submit" class="btn btnorange">
+                                    Envoyer
+                                </button>
+                            </div>
+                        </div>
+                    </form>
                 </div>
             </div>
-
-            <div class="form-group">
-                <h2 class="text-center">PARTAGEZ CETTE OFFRE AVEC D’AUTRES SALARIES DE VOTRE ENTREPRISE</h2>
-                <label for="additional_emails">
-                    Transmettez-nous ci-dessous les adresses mails des personnes qui, au sein de votre entreprise, souhaitent-elles aussi recevoir notre quotidien :
-                </label>
-                <textarea id="additional_emails" rows="3" class="form-control @error('additional_emails') is-invalid @enderror" name="additional_emails" value="{{ old('additional_emails') }}" required>
-                        </textarea>
-                @error('additional_emails')
-                <span class="invalid-feedback" role="alert">
-                                        <strong>{{ $message }}</strong>
-                                    </span>
-                @enderror
-            </div>
-
-            <div class="form-group">
-                @error(recaptchaFieldName())
-                <span class="invalid-feedback" role="alert">
-                                        <strong>{{ $message }}</strong>
-                                    </span>
-                @enderror
-                {!! ReCaptcha::htmlFormSnippet() !!}
-
-            </div>
-
-
-            <div class="form-group mb-0">
-                <div class="offset-md-4">
-                    <button type="submit" class="btn btn-primary">
-                        Envoyer
-                    </button>
-                </div>
-            </div>
-        </form>
-
-
+        </div>
+    </div>
 
 @endsection
index 560250dfd7f19341012d0b95554bbead480b0060..42e40a7817aedf999b20d67bd2b0f236893b220b 100644 (file)
@@ -1,17 +1,12 @@
 @extends('layouts.app')
 
 @section('content')
-<div class="container">
+<div class="psq-login">
     <div class="row justify-content-center">
         <div class="col-md-8">
 
-            <div class="alert alert-info">
-                <p class="mb-0"><a href="{{route('register', ['redirect_to' => request()->redirect_to])}}">Cliquez ici si vous n'avez pas encore de compte.</a> </p>
-
-            </div>
-
-            <div class="card">
-                <div class="card-header">{{ __('Login') }}</div>
+            <div class="card form">
+                <div class="card-header text-center text-md-left">{{ __('Login') }}</div>
 
                 <div class="card-body">
                     <form method="POST" action="{{ route('login') }}">
                         <input type="hidden" name="redirect_to" value="{{request()->redirect_to}}">
                         @endif
 
-                        <div class="form-group row">
-                            <label for="email" class="col-md-4 col-form-label text-md-right">{{ __('E-Mail Address') }}</label>
+                        <div class="form-group">
+                            <label for="email" class="col-form-label">{{ __('E-Mail Address') }}</label>
 
-                            <div class="col-md-6">
+                            <div class="">
                                 <input id="email" type="email" class="form-control @error('email') is-invalid @enderror" name="email" value="{{ old('email') }}" required autocomplete="email" autofocus>
 
                                 @error('email')
                             </div>
                         </div>
 
-                        <div class="form-group row">
-                            <label for="password" class="col-md-4 col-form-label text-md-right">{{ __('Password') }}</label>
+                        <div class="form-group">
+                            <label for="password" class="col-form-label">{{ __('Password') }}</label>
 
-                            <div class="col-md-6">
+                            <div class="">
                                 <input id="password" type="password" class="form-control @error('password') is-invalid @enderror" name="password" required autocomplete="current-password">
 
                                 @error('password')
@@ -48,8 +43,8 @@
                             </div>
                         </div>
 
-                        <div class="form-group row">
-                            <div class="col-md-6 offset-md-4">
+                        <div class="form-group">
+                            <div class="">
                                 <div class="form-check">
                                     <input class="form-check-input" type="checkbox" name="remember" id="remember" checked>
 
                             </div>
                         </div>
 
-                        <div class="form-group row mb-0">
-                            <div class="col-md-8 offset-md-4">
-                                <button type="submit" class="btn btn-primary">
+                        <div class="form-group mb-0 psq-login-cta-container">
+                            <div class="d-flex flex-column flex-lg-row align-items-lg-center">
+                                <button type="submit" class="btn btnorange">
                                     {{ __('Login') }}
                                 </button>
 
                                 @if (Route::has('password.request'))
-                                    <a class="btn btn-link" href="{{ route('password.request') }}">
+                                    <a class="btn btn-link underline forgot-pwd" href="{{ route('password.request') }}">
                                         {{ __('Forgot Your Password?') }}
                                     </a>
                                 @endif
                             </div>
                         </div>
+
+                        <div class="dotted separate-line"></div>
+
+                        <div class="">
+                            <a href="#" class="btn btnorange bg-transparent not-registered-button">Pas encore inscrit ? créer un compte</a>
+                        </div>
                     </form>
                 </div>
             </div>
index f11adb76ebc185a0648e1072d6fb1695b8b4fef0..dd578540082e460085876d0c20dbf49b24828b9b 100644 (file)
@@ -1,7 +1,6 @@
 <div class="cover {{$class}}">
-
-    <a href="{{$link}}" target="{{$target}}">
-        <img class="cover-over" src="{{$pdf->coverUrl}}" alt="">
+    <a href="{{Auth::check() ? $link : '#'}}" class="img-link {{!Auth::check() ? 'notConnected' : ''}}" target="{{$target}}">
+        <img class="d-block cover-over" src="{{$pdf->coverUrl}}" alt="">
         <div class="cover-title">
             <p>{{$pdf->title}} - {{$pdf->created_at->format('d/m/Y')}}</p>
         </div>
index 453c3f21b27c64853d1fe730e353d4baff042651..caad70f980ccd759fb4f2ae741356e5e681bc893 100644 (file)
     @extends('layouts.v2.center')
     @inject('settings', \A17\Twill\Repositories\SettingRepository::class)
 
-    @section('center_content')
-        <div class="container psq-not-registered">
-            <h1>Demande de contact</h1>
-
-
-            <div class="card">
-
-                <div class="card-header">Demande de contact</div>
-
-                <div class="card-body">
-                    <form method="POST" action="{{ route('contact.store') }}">
-                        @csrf
-
-                        <div class="form-group row">
-                            <label for="name" class="col-md-4 col-form-label text-md-right">Nom complet</label>
-
-                            <div class="col-md-6">
-                                <input id="name" type="text" class="form-control @error('name') is-invalid @enderror" name="name" value="{{ old('name') }}" required autocomplete="full-name" autofocus>
-
-                                @error('name')
-                                <span class="invalid-feedback" role="alert">
+    @section('content')
+
+        <div class="bg-clearblue psq-contact p-64-0">
+            <div class="container psq-not-registered">
+                <div class="row">
+                    <div class="col-xl-3 psq-banner">
+                        <h1 class="bigtitle">Contact</h1>
+                        <p class="subtext">Prescription Santé Quotidien</p>
+                        <div class="lilline"></div>
+                        <p class="subtext-2">
+                            OPRA EDITING
+                            34 rue Penthièvre
+                            75008 paris
+                        </p>
+                    </div>
+                    <div class="col-xl-9 full-width m-0">
+                        <div class="card form">
+
+                        <div class="card-header text-lg-left text-center">Demande de contact</div>
+
+                        <div class="card-body">
+                            <form method="POST" action="{{ route('contact.store') }}">
+                                @csrf
+
+                                <div class="form-group">
+                                    <label for="name" class="col-form-label">Nom complet</label>
+
+                                    <div class="">
+                                        <input id="name" type="text" class="form-control @error('name') is-invalid @enderror" name="name" value="{{ old('name') }}" required autocomplete="full-name" autofocus>
+
+                                        @error('name')
+                                        <span class="invalid-feedback" role="alert">
                                             <strong>{{ $message }}</strong>
                                         </span>
-                                @enderror
-                            </div>
-                        </div>
+                                        @enderror
+                                    </div>
+                                </div>
 
 
-                        <div class="form-group row">
-                            <label for="email" class="col-md-4 col-form-label text-md-right">{{ __('E-Mail Address') }}</label>
+                                <div class="form-group">
+                                    <label for="email" class="col-form-label">{{ __('E-Mail Address') }}</label>
 
-                            <div class="col-md-6">
-                                <input id="email" type="email" class="form-control @error('email') is-invalid @enderror" name="email" value="{{ old('email') }}" required autocomplete="email">
+                                    <div class="">
+                                        <input id="email" type="email" class="form-control @error('email') is-invalid @enderror" name="email" value="{{ old('email') }}" required autocomplete="email">
 
-                                @error('email')
-                                <span class="invalid-feedback" role="alert">
-                                            <strong>{{ $message }}</strong>
-                                        </span>
-                                @enderror
-                            </div>
-                        </div>
+                                        @error('email')
+                                        <span class="invalid-feedback" role="alert">
+                                                    <strong>{{ $message }}</strong>
+                                                </span>
+                                        @enderror
+                                    </div>
+                                </div>
 
-                        <div class="form-group row">
-                            <label for="organization" class="col-md-4 col-form-label text-md-right">{{ __('Employeur') }}</label>
+                                <div class="form-group">
+                                    <label for="organization" class="col-form-label">{{ __('Employeur') }}</label>
 
-                            <div class="col-md-6">
-                                <input id="organization" type="text" class="form-control @error('organization') is-invalid @enderror" name="organization" value="{{ old('organization') }}" required>
+                                    <div class="">
+                                        <input id="organization" type="text" class="form-control @error('organization') is-invalid @enderror" name="organization" value="{{ old('organization') }}" required>
 
-                                @error('organization')
-                                <span class="invalid-feedback" role="alert">
+                                        @error('organization')
+                                        <span class="invalid-feedback" role="alert">
                                             <strong>{{ $message }}</strong>
                                         </span>
-                                @enderror
-                            </div>
-                        </div>
+                                        @enderror
+                                    </div>
+                                </div>
 
-                        <contact-form></contact-form>
+                                <contact-form></contact-form>
 
-                        <div class="form-group row">
-                            <label for="comments" class="col-md-4 col-form-label text-md-right">Commentaires</label>
+                                <div class="form-group">
+                                    <label for="comments" class="col-form-label">Votre message (facultatif)</label>
 
-                            <div class="col-md-6">
-                                <textarea id="comments" rows="3" type="text" class="form-control @error('comments') is-invalid @enderror" name="comments" value="{{ old('comments') }}"></textarea>
+                                    <div class="">
+                                        <textarea id="comments" rows="3" type="text" class="form-control @error('comments') is-invalid @enderror" name="comments" value="{{ old('comments') }}"></textarea>
 
-                                @error('comments')
-                                <span class="invalid-feedback" role="alert">
+                                        @error('comments')
+                                        <span class="invalid-feedback" role="alert">
                                             <strong>{{ $message }}</strong>
                                         </span>
-                                @enderror
-                            </div>
-                        </div>
-
-
-
-                        <div class="form-group row">
-                            <div class="col-4"></div>
-                            <div class="col-8">
-                                {!! ReCaptcha::htmlFormSnippet() !!}
-                                @error(recaptchaFieldName())
-                                <span class="invalid-feedback d-block" role="alert">
+                                        @enderror
+                                    </div>
+                                </div>
+
+                                <div class="form-group">
+                                    <div class="col-4"></div>
+                                    <div class="">
+                                        {!! ReCaptcha::htmlFormSnippet() !!}
+                                        @error(recaptchaFieldName())
+                                        <span class="invalid-feedback d-block" role="alert">
                                             <strong>{{ $message }}</strong>
                                         </span>
-                                @enderror
-                            </div>
-                        </div>
-
-
-                        <div class="form-group row mb-0">
-                            <div class="col-md-6 offset-md-4">
-                                <button type="submit" class="btn btn-primary">
-                                    Envoyer
-                                </button>
-                            </div>
-                        </div>
-                        <div class="row mt-3">
-                            {{--                                <div class="col-12">--}}
-                            {{--                                    <div class="alert alert-info">--}}
-                            {{--                                        Dès réception de ce formulaire, vous nous transmettrons un devis adapté à votre demande.--}}
-                            {{--                                    </div>--}}
-                            {{--                                </div>--}}
+                                        @enderror
+                                    </div>
+                                </div>
+
+
+                                <div class="form-group mb-0 text-lg-left text-center">
+                                    <button type="submit" class="btn btnorange">
+                                        Envoyer
+                                    </button>
+                                </div>
+                                <div class="mt-3">
+                                    {{--                                <div class="col-12">--}}
+                                    {{--                                    <div class="alert alert-info">--}}
+                                    {{--                                        Dès réception de ce formulaire, vous nous transmettrons un devis adapté à votre demande.--}}
+                                    {{--                                    </div>--}}
+                                    {{--                                </div>--}}
+                                </div>
+                                <div class="text text-center text-xl-left">*Champs obligatoires</div>
+                            </form>
                         </div>
-                    </form>
+                    </div>
+                    </div>
                 </div>
             </div>
-
-
-
         </div>
 
-
     @endsection
 
     <script>
index 9e9f820cd329ace811d3b4b318f86beb92f5cb0d..7a13cbb26df90685be54b8fb945ae3e7fcb99c97 100644 (file)
 @extends('layouts.v2.center')
 @inject('settings', \A17\Twill\Repositories\SettingRepository::class)
 
-@section('center_content')
-    <div class="container psq-not-registered">
-        <h1>Demande d'abonnement</h1>
+@section('content')
+    <div class="psq-text-image-banner bg-clearblue p-64-0">
+        <div class="container">
+            <div class="psq-text-image-banner-container d-flex justify-content-between">
+                <div class="psq-bloc-text psq-banner">
+                    <h1 class="bigtitle">Prescription Santé Quotidien</h1>
+                    <p class="subtext">L’actualité des acteurs du médicament et de ses partenaires en France et ailleurs
+                        avant 11h dans votre boite mail.</p>
+                    <div class="lilline"></div>
+                    <p class="subtext-2">4 ÉDITIONS PAR SEMAINE,
+                        8 À 12 PAGES PAR ÉDITION</p>
+                    <p>Depuis 2010, plus de 3300 abonnés, au sein de 95 laboratoires pharmaceutiques et 50 entreprises
+                        partenaires de l’industrie du médicament.</p>
+                </div>
+                <div class="psq-bloc-img">
+                    <div class="bloc-img">
+                        <img src="{{ @asset('img/subscription_image.png')  }}" />
+                    </div>
+                </div>
+            </div>
+        </div>
+    </div>
 
-                <div class="card">
 
-                    <div class="card-header">Demande d'abonnement</div>
+    <div class="psq-not-registered">
+        <div class="container">
+            <div class="text-intro p-64-0">
+                <p>Nos tarifs d’abonnement dépendent de l’entreprise concernée et de son importance –
+                Ils sont adaptés à la nature de l’activité.
 
-                    <div class="card-body">
-                        <form method="POST" action="{{ route('contact.subscribe.store') }}">
-                            @csrf
+                Seul des abonnements dits « illimités » sont possibles, ouvert ainsi à l’ensembles des salariés de
+                l’entreprise. La liste de diffusion que vous nous transmettrez pourra être modifiée aussi souvent que
+                nécessaire et par simple mail
+                </p>
+            </div>
+        </div>
 
-                            <div class="form-group row">
-                                <label for="name" class="col-md-4 col-form-label text-md-right">Nom complet</label>
+        <div class="bg-clearblue">
 
-                                <div class="col-md-6">
-                                    <input id="name" type="text" class="form-control @error('name') is-invalid @enderror" name="name" value="{{ old('name') }}" required autocomplete="full-name" autofocus>
+            <div class="container card-container-form">
 
-                                    @error('name')
-                                    <span class="invalid-feedback" role="alert">
-                                        <strong>{{ $message }}</strong>
-                                    </span>
-                                    @enderror
-                                </div>
-                            </div>
+            <div class="text-intro-form p-64-0">
+                <p>Pour connaître notre meilleure offre, merci de nous retourner le questionnaire ci-dessous</p>
+            </div>
+
+            <div class="card form">
+                <div class="card-header text-lg-left text-center">
+                    Demande d’abonnement
+                </div>
 
+                <div class="card-body">
+                    <form method="POST" action="{{ route('contact.subscribe.store') }}">
+                        @csrf
 
-                            <div class="form-group row">
-                                <label for="email" class="col-md-4 col-form-label text-md-right">{{ __('E-Mail Address') }}</label>
+                        <div class="form-group">
+                            <label for="name" class="col-form-label">Nom complet*</label>
 
-                                <div class="col-md-6">
-                                    <input id="email" type="email" class="form-control @error('email') is-invalid @enderror" name="email" value="{{ old('email') }}" required autocomplete="email">
+                            <div>
+                                <input id="name" type="text" class="form-control @error('name') is-invalid @enderror" name="name" value="{{ old('name') }}" required autocomplete="full-name" autofocus>
 
-                                    @error('email')
-                                    <span class="invalid-feedback" role="alert">
-                                        <strong>{{ $message }}</strong>
-                                    </span>
-                                    @enderror
-                                </div>
+                                @error('name')
+                                <span class="invalid-feedback" role="alert">
+                                    <strong>{{ $message }}</strong>
+                                </span>
+                                @enderror
                             </div>
+                        </div>
 
-                            <div class="form-group row">
-                                <label for="organization" class="col-md-4 col-form-label text-md-right">{{ __('Employeur') }}</label>
 
-                                <div class="col-md-6">
-                                    <input id="organization" type="text" class="form-control @error('organization') is-invalid @enderror" name="organization" value="{{ old('organization') }}" required>
+                        <div class="form-group">
+                            <label for="email" class="col-form-label">Adresse email Pro*</label>
 
-                                    @error('organization')
-                                    <span class="invalid-feedback" role="alert">
-                                        <strong>{{ $message }}</strong>
-                                    </span>
-                                    @enderror
-                                </div>
+                            <div>
+                                <input id="email" type="email" class="form-control @error('email') is-invalid @enderror" name="email" value="{{ old('email') }}" required autocomplete="email">
+
+                                @error('email')
+                                <span class="invalid-feedback" role="alert">
+                                    <strong>{{ $message }}</strong>
+                                </span>
+                                @enderror
                             </div>
+                        </div>
 
-                            <div class="form-group row">
-                                <label for="comments" class="col-md-4 col-form-label text-md-right">Commentaires (facultatif)</label>
+                        <div class="form-group">
+                            <label for="organization" class="col-form-label">{{ __('Employeur') }}*</label>
 
-                                <div class="col-md-6">
-                                    <textarea id="comments" rows="3" type="text" class="form-control @error('comments') is-invalid @enderror" name="comments" value="{{ old('comments') }}"></textarea>
+                            <div>
+                                <input id="organization" type="text" class="form-control @error('organization') is-invalid @enderror" name="organization" value="{{ old('organization') }}" required>
 
-                                    @error('comments')
-                                    <span class="invalid-feedback" role="alert">
-                                        <strong>{{ $message }}</strong>
-                                    </span>
-                                    @enderror
-                                </div>
+                                @error('organization')
+                                <span class="invalid-feedback" role="alert">
+                                    <strong>{{ $message }}</strong>
+                                </span>
+                                @enderror
                             </div>
+                        </div>
 
-                            {{--<request-subscription-form class="mb-4"></request-subscription-form>}}
-
-{{--                            <div class="form-group row">--}}
-{{--                                <label for="plan" class="col-12 col-form-label">--}}
-{{--                                    Vous souhaitez découvrir nos tarifs pour :--}}
-{{--                                </label>--}}
-{{--                                <div class="col-md-4">--}}
-
-{{--                                </div>--}}
-
-{{--                                <div class="col-md-6">--}}
-
-{{--                                    @foreach(\App\ContactRequest::PLANS as $key => $value)--}}
-{{--                                        <div class="custom-control custom-radio">--}}
-{{--                                          <input type="radio" id="plan_{{$key}}" name="plan" class="custom-control-input  @error('plan') is-invalid @enderror" value="{{$key}}" >--}}
-{{--                                          <label class="custom-control-label" for="plan_{{$key}}">{{$value}}</label>--}}
-{{--                                        </div>--}}
-{{--                                    @endforeach--}}
-
-{{--                                    @error('plan')--}}
-{{--                                    <span class="invalid-feedback d-block" role="alert">--}}
-{{--                                        <strong>{{ $message }}</strong>--}}
-{{--                                    </span>--}}
-{{--                                    @enderror--}}
-{{--                                </div>--}}
-{{--                            </div>--}}
-
-
-
-                            <div class="form-group row">
-                                <div class="col-4"></div>
-                                <div class="col-8">
-                                    {!! ReCaptcha::htmlFormSnippet() !!}
-                                    @error(recaptchaFieldName())
-                                    <span class="invalid-feedback d-block" role="alert">
-                                        <strong>{{ $message }}</strong>
-                                    </span>
-                                    @enderror
-                                </div>
-                            </div>
+                        <div class="form-group">
+                            <label for="comments" class="col-form-label">Commentaires (facultatif)</label>
 
+                            <div>
+                                <textarea id="comments" rows="3" type="text" class="form-control @error('comments') is-invalid @enderror" name="comments" value="{{ old('comments') }}"></textarea>
 
-                            <div class="form-group row mb-0">
-                                <div class="col-md-6 offset-md-4">
-                                    <button type="submit" class="btn btn-primary">
-                                        Envoyer
-                                    </button>
-                                </div>
+                                @error('comments')
+                                <span class="invalid-feedback" role="alert">
+                                    <strong>{{ $message }}</strong>
+                                </span>
+                                @enderror
                             </div>
-                            <div class="row mt-3">
-{{--                                <div class="col-12">--}}
-{{--                                    <div class="alert alert-info">--}}
-{{--                                        Dès réception de ce formulaire, vous nous transmettrons un devis adapté à votre demande.--}}
-{{--                                    </div>--}}
-{{--                                </div>--}}
+                        </div>
+
+                        {{--<request-subscription-form class="mb-4"></request-subscription-form>}}
+
+    {{--                            <div class="form-group row">--}}
+    {{--                                <label for="plan" class="col-12 col-form-label">--}}
+    {{--                                    Vous souhaitez découvrir nos tarifs pour :--}}
+    {{--                                </label>--}}
+    {{--                                <div class="col-md-4">--}}
+
+    {{--                                </div>--}}
+
+    {{--                                <div class="col-md-6">--}}
+
+    {{--                                    @foreach(\App\ContactRequest::PLANS as $key => $value)--}}
+    {{--                                        <div class="custom-control custom-radio">--}}
+    {{--                                          <input type="radio" id="plan_{{$key}}" name="plan" class="custom-control-input  @error('plan') is-invalid @enderror" value="{{$key}}" >--}}
+    {{--                                          <label class="custom-control-label" for="plan_{{$key}}">{{$value}}</label>--}}
+    {{--                                        </div>--}}
+    {{--                                    @endforeach--}}
+
+    {{--                                    @error('plan')--}}
+    {{--                                    <span class="invalid-feedback d-block" role="alert">--}}
+    {{--                                        <strong>{{ $message }}</strong>--}}
+    {{--                                    </span>--}}
+    {{--                                    @enderror--}}
+    {{--                                </div>--}}
+    {{--                            </div>--}}
+
+
+
+                        <div class="form-group">
+                            <div>
+                                {!! ReCaptcha::htmlFormSnippet() !!}
+                                @error(recaptchaFieldName())
+                                <span class="invalid-feedback d-block" role="alert">
+                                    <strong>{{ $message }}</strong>
+                                </span>
+                                @enderror
                             </div>
-                        </form>
-                    </div>
+                        </div>
 
-        </div>
 
+                        <div class="form-group mb-0 text-center text-xl-left">
+                            <div>
+                                <button type="submit" class="btn btnorange">
+                                    Envoyer
+                                </button>
+                            </div>
+                        </div>
+                        <div class="mt-3">
+    {{--                                <div class="col-12">--}}
+    {{--                                    <div class="alert alert-info">--}}
+    {{--                                        Dès réception de ce formulaire, vous nous transmettrons un devis adapté à votre demande.--}}
+    {{--                                    </div>--}}
+    {{--                                </div>--}}
+                        </div>
+                        <div class="text text-center text-xl-left">*Champs obligatoires</div>
+                    </form>
+                </div>
+
+            </div>
+        </div>
 
+        </div>
     </div>
 
 
index 7a51d7db18fcaa4c06edaf75e7012efd15765c3e..549a494f7b598d662825fba927e6eca7f164ebc3 100644 (file)
@@ -40,8 +40,7 @@
 
         <div class="psq-home-banner">
             <div class="row">
-                <div class="col-md-8">
-
+                <div class="col-lg-8 col1">
                     <div class="psq-home-edition-jour">
                         <div class="grid-1">
                             <h1 class="bigtitle">L'édition du jour</h1>
@@ -52,7 +51,7 @@
                         </x-cover>
                         <div class="grid-2">
                             <h2>Pas encore abonné ?</h2>
-                            <a href="">Découvrez notre offre d’abonnement.</a>
+                            <a href="" class="underline">Découvrez notre offre d’abonnement.</a>
                         </div>
                     </div>
                     {{--@foreach($last_pdf->first()->headlines ?? [] as $headline)
                         </x-headline>
 
                     @endforeach--}}
-
                 </div>
-                <div class="col-md-4 col2 d-flex flex-column">
-                    <h2 class="m-0">Découvrez gratuitement notre quotidien durant 1 mois</h2>
+                <div class="col-lg-4 col2 d-flex flex-column position-relative right-block" style="z-index:1;">
+                    <h2 class="m-0 regulartitle">Découvrez gratuitement notre quotidien durant 1 mois</h2>
                     <div class="psq-home-pdfimage">
-                        <img src="{{ $last_pdf->first()->coverUrl }}" alt="" />
+                        <img src="{{ $last_pdf->first()->coverUrl }}" alt="" class="fb" />
+                        <div class="pastille">
+                            Recevez gratuitement nos prochaines éditions sans engagement de votre part.
+                        </div>
                     </div>
-                    <a href="" class="btnorange">Offre découverte</a>
+
+                    <a href="{{ route('discover.index') }}" class="btnorange">Offre découverte</a>
                 </div>
             </div>
         </div>
 
-        <h1>L'actualité du médicament à la une de notre quotidien</h1>
-        <div class="row justify-content-center pt-3">
-            <div class="col-md-4">
-                <ul class="leaders">
-                    <li><span>à la une aujourd'hui</span><span></span></li>
-                </ul>
-
-                <x-cover :pdf="$last_pdf->first()" type="3">
-                </x-cover>
-
-                @foreach($last_pdf->first()->headlines ?? [] as $headline)
-
-                    <x-headline :headline="$headline" class="mt-3">
-                    </x-headline>
-
-                @endforeach
-
+        <div class="psq-home-last-edition row p-64-0">
+            <div class="col-12 d-flex flex-column">
+                <h2 class="mediumtitle m-0">Nos précédentes éditions</h2>
+                <div id="carousel" class="row m-0 embla">
+                    <div class="embla__viewport">
+                        <div class="embla__container">
+                            @foreach($last_pdf->slice(0, 7) as $key => $pdf)
+                                <div class="item embla__slide">
+                                    <x-cover :pdf="$pdf" type="2">
+                                    </x-cover>
+                                </div>
+                                <div class="item embla__slide">
+                                    <x-cover :pdf="$pdf" type="2">
+                                    </x-cover>
+                                </div>
+                                <div class="item embla__slide">
+                                    <x-cover :pdf="$pdf" type="2">
+                                    </x-cover>
+                                </div>
+                            @endforeach
+                        </div>
+                    </div>
+                    <button class="embla__prev border-0">
+                        <img src="{{ @asset('img/carousel/prev.svg') }}" alt="Précédent"/>
+                    </button>
+                    <button class="embla__next border-0">
+                        <img src="{{ @asset('img/carousel/next.svg') }}" alt="Suivant"/>
+                    </button>
+                </div>
             </div>
+        </div>
 
 
-            <div class="col-md-8">
-                <ul class="leaders">
-                    <li><span>Nos précédentes éditions</span><span></span></li>
-                </ul>
-
-                <div class="row mb-3">
-                    @foreach($last_pdf->slice(1, 3) as $pdf)
-                        <div class="col-sm-4">
-                            <x-cover :pdf="$pdf" type="2">
-                            </x-cover>
+        <div class="line col-12 dotted d-none"></div>
 
-                        </div>
-                    @endforeach
+        <div class="psq-home-section-footer row p-64-0">
+            <div class="col-12 col-lg-8 d-flex flex-column flex-lg-row">
+                <div class="thumbnail w-50">
+                    <img src="{{ @asset('img/offre_abonnement.png') }}" />
                 </div>
-
-                <div class="row mt-3">
-                    @foreach($last_pdf->slice(4, 3) as $pdf)
-                        <div class="col-sm-4">
-                            <x-cover :pdf="$pdf" type="2">
-                            </x-cover>
-
-                        </div>
-                    @endforeach
+                <div class="texts bg-clearblue w-50 d-flex flex-column justify-content-center">
+                    <h3 class="regulartitle">L’actualité des acteurs du médicament et de ses partenaires en France et
+                        ailleurs avant 11h dans votre boite mail.</h3>
+                    <div class="lilline"></div>
+                    <p class="liltitle">4 éditions par semaine
+                        8 à 12 pages par édition</p>
+                    <p>Depuis 13 ans, plus de 2300 ABONNÉS, au sein de 95 laboratoires pharmaceutiques et 50 entreprises
+                        partenaires de l’industrie du médicament.</p>
+                    <a href="#" class="linkunderline">Découvrez notre offre d’abonnement.</a>
                 </div>
-
-
-
             </div>
-
-        </div>
-        <div class="row justify-content-center pt-5">
-            <div class="col-sm-4">
-
-            </div>
-            <div class="col-sm-8">
-
+            <div class="col-lg-4">
+                <div class="p-64 bg-blue d-flex flex-column justify-content-center align-items-center pdf-block radius">
+                    <h3 class="title-feuilleter regulartitle">Feuilletez gratuitement un de nos anciens numéros</h3>
+                    <img src="{{ $last_pdf->first()->coverUrl }}" alt="" />
+                    <a href="#" class="btnorange">Feuilleter un quotidien</a>
+                </div>
             </div>
-
         </div>
 
     </div>
index 295a1e97eb09fe39b4654287ee92effcf607317f..e1d0ad8fd62b925abf0ef2d3fbc00dc1e2ffcced 100644 (file)
         <meta property="og:type" content="article" />
         <meta property="og:locale" content="fr_FR" />
     @endif
-
-
 </head>
-<body>
+<body {{ Route::currentRouteName() === "archives.index" ? "data-not-authorized=1" : "" }}>
     <div id="app">
         <header class="headersite bg-blue">
             <div class="container d-flex justify-content-between align-items-center">
@@ -91,7 +89,7 @@
 
         @endif
 
-        <main class="pill-box-theme-{{$theme ?? 'logo-blue'}}">
+        <main class="{{ Route::currentRouteName() === "login" ? 'bg-white-to-blue' : '' }} pill-box-theme-{{$theme ?? 'logo-blue'}}">
             @yield('content')
         </main>
 
     </div>
 
     <!-- Global site tag (gtag.js) - Google Analytics -->
-<script async src="https://www.googletagmanager.com/gtag/js?id=UA-177866246-1"></script>
-<script>
-  window.dataLayer = window.dataLayer || [];
-  function gtag(){dataLayer.push(arguments);}
-  gtag('js', new Date());
-
-  gtag('config', 'UA-177866246-1');
-  @auth
-      gtag('set', {'user_id': '{{\Auth::user()->id}}'});
-  @endauth
-</script>
+    <script async src="https://www.googletagmanager.com/gtag/js?id=UA-177866246-1"></script>
+    <script>
+      window.dataLayer = window.dataLayer || [];
+      function gtag(){dataLayer.push(arguments);}
+      gtag('js', new Date());
+
+      gtag('config', 'UA-177866246-1');
+      @auth
+          gtag('set', {'user_id': '{{\Auth::user()->id}}'});
+      @endauth
+    </script>
 
 
     <script type="text/javascript">
         {!! \App\PhpVars::output() !!}
 
     </script>
+    <script src="https://unpkg.com/embla-carousel/embla-carousel.umd.js"></script>
+    <script src="https://unpkg.com/embla-carousel-autoplay/embla-carousel-autoplay.umd.js"></script>
+    <script src="https://cdn.jsdelivr.net/npm/sweetalert2@11"></script>
 </body>
 </html>
index 62710741f10034cd64128758f930d2513dc0ac55..5b0d82474825fe8a1ff562bae26096a83382188c 100644 (file)
@@ -1,15 +1,17 @@
 @extends($extends)
 
 @section('content')
+    <div class="bg-clearblue p-64-0">
+        <div class="container {{$class ?? ''}}">
+            @if(isset($title))
+                <h1 class="bigtitle">{{$title}}</h1>
+            @endif
+            @if(isset($title2))
+                <h2 class="text-center">{{$title2}}</h2>
+            @endif
+        </div>
+    </div>
     <div class="container {{$class ?? ''}}">
-        @if(isset($title))
-            <h1>{{$title}}</h1>
-        @endif
-        @if(isset($title2))
-            <h2 class="text-center">{{$title2}}</h2>
-        @endif
-
-
         <component is="{{$component}}"></component>
     </div>
 @endsection
index 45ced67b637cae65c8a0c8f6ed7c6bad6a10bcd9..00607da45fb52d3dccbeb75637cd56e0242aa534 100644 (file)
@@ -1,4 +1,4 @@
-<footer class="container-fluid pl-0 pr-0">
+<footer class="container-fluid pl-0 pr-0 m-0">
     <div class="container d-flex justify-content-between align-items-center flex-column flex-lg-row">
         <img src="{{ @asset("img/logo_top.svg") }}" class="header-logo logo" alt="Prescription Quotidien" />
         <p>Copyright © Prescription santé Quotidien.</p>
index 033c5aeaf807797356e539560759ad7fd3c8edf5..a2960aead45360da069c8099c07dfd2adde789f0 100644 (file)
@@ -4,15 +4,16 @@
 </div>
 <nav class="nav-2 vh-100 vw-100 max-w-100">
     <ul class="d-flex flex-column flex-lg-row container">
-        <li><a href="{{route('archives.index')}}" class="nav-2-item">Accueil</a></li>
-        <li><a href="{{route('contact.subscribe')}}" class="nav-2-item">Abonnements</a></li>
-        <li><a href="{{route('archives.index')}}" class="nav-2-item">Archives</a></li>
-        <li><a href="{{route('contact.index')}}" class="nav-2-item">Contact</a></li>
+        <li><a href="/" class="nav-2-item {{ Route::currentRouteName() === "home" ? 'active' : ''  }} ">Accueil</a></li>
+        <li><a href="{{route('contact.subscribe')}}" class="nav-2-item {{ Route::currentRouteName() === "contact.subscribe" ? 'active' : ''  }}">Abonnements</a></li>
+        <li><a href="{{route('archives.index')}}" class="nav-2-item {{ Route::currentRouteName() === "archives.index" ? 'active' : ''  }}">Archives</a></li>
+        <li><a href="{{route('annonceurs.index')}}" class="nav-2-item {{ Route::currentRouteName() === "annonceurs.index" ? 'active' : ''  }}">Annonceurs</a></li>
+        <li><a href="{{route('contact.index')}}" class="nav-2-item {{ Route::currentRouteName() === "contact.index" ? 'active' : ''  }}">Contact</a></li>
     </ul>
 
 </nav>
 <div>
-    <div class="header-auth d-flex">
+    <div class="header-auth d-flex align-items-center">
         @auth
             <a href="{{route('account.index')}}">
                 <p class="username img-link d-lg-none circlebutton bg-transparent border border-1" style="border-color:#E6E7F2;">
@@ -23,9 +24,9 @@
                     {{ Auth::user()->last_name }}
                 </p>
             </a>
-            <a href="{{ route('logout') }}" class="logout d-none d-lg-block">Déconnexion</a>
-            <form id="logout-form" action="{{ route('logout') }}" method="POST" style="display: none;">
+            <form id="logout-form" action="{{ route('logout') }}" class="m-0" method="POST">
                 @csrf
+                <button type="submit" class="logout d-none d-lg-block">Déconnexion</button>
             </form>
         @endif
     </div>
index ea557a79b4e7e640a7372e35dac81180b4896560..6159ca7612c2607af49b578bbd733a3468f0a8eb 100644 (file)
@@ -139,6 +139,9 @@ Route::domain(env('CLIENT_DOMAIN_NAME'))->group(function() {
     Route::get('/l/{link:slug}', 'TrackedLinkController@redirect')->name('track');
 
     Route::get('site-ferme', 'WallController@wall');
+
+    Route::get('devenez-annonceurs', 'AdvertisersController@index')->name('annonceurs.index');
+    Route::post('devenez-annonceurs', 'AdvertisersController@store')->name('annonceurs.store');
 });