Fix Public View & add General Config

This commit is contained in:
Mathieu Lagace
2019-08-26 10:17:11 -04:00
parent db63c4ea4d
commit 1cb85d50ca
17 changed files with 250 additions and 70 deletions

View File

@@ -72,6 +72,19 @@ class ConfigController extends Controller
$configs = [
'is_schedule_public',
'is_schedule_build',
'escadron_name_full',
'escadron_name_short',
'escadron_number',
'escadron_phone',
'escadron_element',
'element_title',
'escadron_address',
'escadron_direct_googlemap_link',
'media_facebook',
'media_twitter',
'media_instagram',
'media_email',
];
foreach ($configs as $config) {

View File

@@ -216,6 +216,11 @@ class ConfigsTableSeeder extends Seeder
'name' => 'admin_level_in_schedule_nb',
'state' => 0,
'data' => '["3"]'
],
[
'name' => 'public_index_img_url',
'state' => 0,
'data' => '["./assets/img/bg2.jpg"]'
]
];

15
public/css/custom.css vendored
View File

@@ -2,6 +2,21 @@
margin-top: 50px;
}
.news-body-small {
height: 15rem;
overflow: hidden;
}
.picture-desc-small {
height: 5rem;
overflow: hidden;
}
.a-without-effect {
text-decoration: none;
color: inherit;
}
.calendar-body-column {
display: flex;
}

View File

BIN
public/favicon.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 150 KiB

15
resources/custom.css vendored
View File

@@ -2,6 +2,21 @@
margin-top: 50px;
}
.news-body-small {
height: 15rem;
overflow: hidden;
}
.picture-desc-small {
height: 5rem;
overflow: hidden;
}
.a-without-effect {
text-decoration: none;
color: inherit;
}
.calendar-body-column {
display: flex;
}

View File

@@ -8,11 +8,99 @@
</div>
<div class="card-body mt-5">
<form action="/admin/config/general/edit" method="POST">
@csrf
<div class="row ml-2">
<div class="col-md-6">
<div class="col-md-6 p-2">
<div class="form-group">
<label for="exampleInputEmail1">Nom complet du CC</label>
<input type="text" class="form-control" id="escadron_name_full" name="escadron_name_full" aria-describedby="emailHelp" value="{{\App\Config::getData('escadron_name_full')}}">
<small id="emailHelp" class="form-text text-muted">Nom complet du CC.</small>
</div>
</div>
<div class="col-md-6 p-2">
<div class="form-group">
<label for="exampleInputEmail1">Nom court du CC</label>
<input type="text" class="form-control" name="escadron_name_short" aria-describedby="emailHelp" value="{{\App\Config::getData('escadron_name_short')}}">
<small id="emailHelp" class="form-text text-muted">Nom court du CC.</small>
</div>
</div>
<div class="col-md-6 p-2">
<div class="form-group">
<label for="exampleInputEmail1">Numéro du CC</label>
<input type="text" class="form-control" name="escadron_number" aria-describedby="emailHelp" value="{{\App\Config::getData('escadron_number')}}">
<small id="emailHelp" class="form-text text-muted">Numéro du CC.</small>
</div>
</div>
<div class="col-md-6 p-2">
<div class="form-group">
<label for="exampleInputEmail1">Numéro de téléphone du CC</label>
<input type="text" class="form-control" name="escadron_phone" aria-describedby="emailHelp" value="{{\App\Config::getData('escadron_phone')}}">
<small id="emailHelp" class="form-text text-muted">Numéro de téléphone du CC.</small>
</div>
</div>
<div class="col-md-6 p-2">
<div class="form-group">
<label for="exampleInputEmail1">Élement du CC</label>
<select class="form-control selectpicker" data-style="btn btn-link" name="escadron_element">
<option value="Aviation" @if(\App\Config::getData('escadron_element') == 'Aviation') selected @endif>Aviation</option>
<option value="Armé" @if(\App\Config::getData('escadron_element') == 'Armé') selected @endif>Armé</option>
<option value="Marine" @if(\App\Config::getData('escadron_element') == 'Marine') selected @endif>Marine</option>
</select>
</div>
</div>
<div class="col-md-6 p-2">
<div class="form-group">
<label for="exampleInputEmail1">Titre Officiel du CC</label>
<select class="form-control selectpicker" data-style="btn btn-link" name="element_title">
<option value="Cadet de l'aviation royale du Canada" @if(\App\Config::getData('element_title') == "Cadet de l'aviation royale du Canada") selected @endif>Cadet de l'aviation royale du Canada</option>
<option value="Cadets royaux de lArmée canadienne" @if(\App\Config::getData('element_title') == "Cadets royaux de lArmée canadienne") selected @endif>Cadets royaux de lArmée canadienne</option>
<option value="Cadets de la Marine royale canadienne" @if(\App\Config::getData('element_title') == "Cadets de la Marine royale canadienne") selected @endif>Cadets de la Marine royale canadienne</option>
</select>
</div>
</div>
<div class="col-md-6 p-2">
<div class="form-group">
<label>Adresse du CC</label>
<input type="text" class="form-control" name="escadron_address" aria-describedby="emailHelp" value="{{\App\Config::getData('escadron_address')}}">
<small id="emailHelp" class="form-text text-muted">Adresse du CC.</small>
</div>
</div>
<div class="col-md-6 p-2">
<div class="form-group">
<label for="exampleInputEmail1">Lien Google Map du CC</label>
<input type="text" class="form-control" name="escadron_direct_googlemap_link" aria-describedby="emailHelp" value="{{\App\Config::getData('escadron_direct_googlemap_link')}}">
<small id="emailHelp" class="form-text text-muted">Lien Google Map du CC.</small>
</div>
</div>
<div class="col-md-6 p-2">
<div class="form-group">
<label>Lien vers la page Facebook du CC</label>
<input type="text" class="form-control" name="media_facebook" aria-describedby="emailHelp" value="{{\App\Config::getData('media_facebook')}}">
<small id="emailHelp" class="form-text text-muted">Lien vers la page Facebook du CC. Laisser vide si aucun</small>
</div>
</div>
<div class="col-md-6 p-2">
<div class="form-group">
<label for="exampleInputEmail1">Lien vers le compte twitter du CC</label>
<input type="text" class="form-control" name="media_twitter" aria-describedby="emailHelp" value="{{\App\Config::getData('media_twitter')}}">
<small id="emailHelp" class="form-text text-muted">Lien vers le compte twitter du CC. Laisser vide si aucun</small>
</div>
</div>
<div class="col-md-6 p-2">
<div class="form-group">
<label>Lien vers le compte instagram du CC</label>
<input type="text" class="form-control" name="media_instagram" aria-describedby="emailHelp" value="{{\App\Config::getData('media_instagram')}}">
<small id="emailHelp" class="form-text text-muted">Lien vers le compte instagram du CC. Laisser vide si aucun</small>
</div>
</div>
<div class="col-md-6 p-2">
<div class="form-group">
<label for="exampleInputEmail1">Email du CC</label>
<input type="text" class="form-control" name="media_email" aria-describedby="emailHelp" value="{{\App\Config::getData('media_email')}}">
<small id="emailHelp" class="form-text text-muted">Email du CC. Laisser vide si aucun</small>
</div>
</div>
<div class="col-md-6 p-2">
<div class="form-check">
<label class="form-check-label">
<input class="form-check-input" name="is_schedule_public" type="checkbox" value="true" @if(\App\Config::getData('is_schedule_public') === "true") checked @endif>
@@ -23,7 +111,7 @@
</label>
</div>
</div>
<div class="col-md-6">
<div class="col-md-6 p-2">
<div class="form-check">
<label class="form-check-label">
<input class="form-check-input" name="is_schedule_build" type="checkbox" value="true" @if(\App\Config::getData('is_schedule_build') === "true") checked @endif>
@@ -34,7 +122,7 @@
</label>
</div>
</div>
<div class="col-md-12">
<div class="col-md-12 p-2">
<button type="submit" class="btn btn-primary">Sauvegarder</button>
</div>
</div>

View File

@@ -18,11 +18,10 @@
<head>
<meta charset="utf-8"/>
<link rel="apple-touch-icon" sizes="76x76" href="../../assets/img/apple-icon.png">
<link rel="icon" type="image/png" href="../../assets/img/favicon.png">
<link rel="icon" type="image/png" href="/favicon.png">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"/>
<title>
Material Dashboard PRO by Creative Tim
Connexion - C-CMS
</title>
<meta content='width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0, shrink-to-fit=no'
name='viewport'/>

View File

@@ -7,6 +7,7 @@
<title>C-CMS - Espace Administration</title>
<meta charset="utf-8">
<meta content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0" name="viewport" />
<link rel="icon" type="image/png" href="/favicon.png">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
<!-- CSRF Token -->

View File

@@ -1,4 +1,4 @@
<div id="header" class="page-header pricing-page header-filter" style="background-image: url('/assets/public/images/banner.jpg')">
<div id="header" class="page-header pricing-page header-filter" style="background-image: url({{'"'.\App\Config::getData('public_index_img_url').'"'}})">
<div class="container mt-lg-5 pt-md-5">
<div class="row mt-sm-5 pt-md-5">
<div class="col-md-6 ml-auto mr-auto text-center">

View File

@@ -1,10 +1,18 @@
<nav class="float-left">
<ul>
<li>
@if(App\Config::getData('media_twitter'))
<li><a href="{{ App\Config::getData('media_twitter')}}" class="icon"><i class="fab fa-twitter mr-2"></i><span class="label">Twitter</span></a>@if(request()->has('editMode'))<a class="badge badge-primary edit-btn" href="/admin/public/edit/media_twitter"><i class="fa fa-pencil" aria-hidden="true"></i></a>@endif</li>
@endif
@if(App\Config::getData('media_facebook'))
<li><a href="{{ App\Config::getData('media_facebook')}}" class="icon"><i class="fab fa-facebook mr-2"></i><span class="label">Facebook</span></a>@if(request()->has('editMode'))<a class="badge badge-primary edit-btn" href="/admin/public/edit/media_facebook"><i class="fa fa-pencil" aria-hidden="true"></i></a>@endif</li>
@endif
@if(App\Config::getData('media_instagram'))
<li><a href="{{ App\Config::getData('media_instagram')}}" class="icon"><i class="fab fa-instagram mr-2"></i><span class="label">Instagram</span></a>@if(request()->has('editMode'))<a class="badge badge-primary edit-btn" href="/admin/public/edit/media_instagram"><i class="fa fa-pencil" aria-hidden="true"></i></a>@endif</li>
@endif
@if(App\Config::getData('media_email'))
<li><a href="mailto:{{ App\Config::getData('media_email')}}" class="icon"><i class="fas fa-envelope mr-2"></i><span class="label">Email</span></a>@if(request()->has('editMode'))<a class="badge badge-primary edit-btn" href="/admin/public/edit/media_email"><i class="fa fa-pencil" aria-hidden="true"></i></a>@endif</li>
@endif
</li>
</ul>
</nav>

View File

@@ -3,6 +3,7 @@
<meta charset="utf-8">
<meta content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0" name="viewport" />
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
<link rel="icon" type="image/png" href="/favicon.png">
<!-- Fonts and icons -->
<link rel="stylesheet" type="text/css" href="https://fonts.googleapis.com/css?family=Roboto:300,400,500,700|Roboto+Slab:400,700|Material+Icons" />

View File

@@ -8,14 +8,14 @@
@endif
<div id="carouselExampleIndicators" class="carousel slide" data-ride="carousel">
<ol class="carousel-indicators">
@foreach ($pictures as $picture)
<li data-target="#carouselExampleIndicators" data-slide-to="0"></li>
@endforeach
<li data-target="#carouselExampleIndicators" data-slide-to="0" class="active"></li>
<li data-target="#carouselExampleIndicators" data-slide-to="1"></li>
<li data-target="#carouselExampleIndicators" data-slide-to="2"></li>
</ol>
<div class="carousel-inner">
@foreach ($pictures as $picture)
<div class="carousel-item">
<img class="d-block w-100" src="{{$picture->url}}" alt="{{$picture->title}}">
@foreach($pictures as $picture)
<div class="carousel-item @if($loop->first) active @endif">
<img class="d-block w-100" src="{{$picture->url}}" alt="First slide">
</div>
@endforeach
</div>

View File

@@ -1,11 +1,21 @@
@extends('layouts.public.main')
@section('content')
<article id="main">
<section class="wrapper style5">
<div class="inner">
<h2>Nouvelles</h2>
<p>Aliquam ut ex ut interdum donec amet imperdiet eleifend</p>
<div class="page-header header-filter clear-filter purple-filter" data-parallax="true" style="background-image: url({{'"'.\App\Config::getData('public_index_img_url').'"'}});">
<div class="container">
<div class="row">
<div class="col-md-8 ml-auto mr-auto">
<div class="brand">
<h2>{{ App\Config::getData('text_public_news_title')}}</h2>
<p>{{ App\Config::getData('text_public_news_desc')}}</p>
</div>
</div>
</div>
</div>
</div>
<div class="main main-raised">
<div class="container">
<div class="section">
@if ($news->isEmpty())
<h4 class="text-center">Aucune nouvelles</h4>
@endif
@@ -13,7 +23,7 @@
@foreach ($news as $new)
<div class="col-md-4">
<h3>{{ $new->title }}</h3>
<p class="news-body-full">
<p class="news-body-small">
{{ $new->body }}
</p>
<span class="news-small">{{ \App\User::find($new->user_id)->fullname()}}, {{ $new->created_at }}</span>
@@ -26,6 +36,5 @@
</div>
<a href="/" class="btn button primary">Retour</a>
</div>
</section>
</article>
</div>
@endsection

View File

@@ -1,32 +1,39 @@
@extends('layouts.public.main')
@section('content')
<article id="main">
<section class="wrapper style5">
<div class="inner">
<header class="major">
<div class="page-header header-filter clear-filter purple-filter" data-parallax="true" style="background-image: url({{'"'.\App\Config::getData('public_index_img_url').'"'}});">
<div class="container">
<div class="row">
<div class="col-md-8 ml-auto mr-auto">
<div class="brand">
<h2>{{ App\Config::getData('text_public_picture_title')}}</h2>
<p>{{ App\Config::getData('text_public_picture_desc')}}</p>
</header>
<ul class="features">
</div>
</div>
</div>
</div>
</div>
<div class="main main-raised">
<div class="container">
<div class="section">
<div class="row">
@if ($pictures->isEmpty())
<h4 class="text-center">Aucune Photo</h4>
@endif
@foreach ($pictures as $picture)
<li>
<div class="col-md-4">
<a class="a-without-effect" href="/picture/{{$picture->id}}">
<h3><img src="{{$picture->url}}" alt="{{$picture->title}}" width="100%"></h3>
<p>{{$picture->desc}}</p>
<p class="picture-desc-small">{{$picture->desc}}</p>
<span class="news-small">{{ $picture->created_at }}</span>
</a>
</li>
</div>
@endforeach
</ul>
</div>
<div class="m-3" role="group">
{{ $pictures->links() }}
</div>
<a href="/" class="btn button primary">Retour</a>
</div>
</section>
</article>
</div>
@endsection

View File

@@ -1,12 +1,22 @@
@extends('layouts.public.main')
@section('content')
<article id="main">
<section class="wrapper style5">
<div class="inner">
<div class="page-header header-filter clear-filter purple-filter" data-parallax="true" style="background-image: url({{'"'.\App\Config::getData('public_index_img_url').'"'}});">
<div class="container">
<div class="row">
<div class="col-md-8 ml-auto mr-auto">
<div class="brand">
<h2>{{ $new->title }}</h2>
</div>
</div>
</div>
</div>
</div>
<div class="main main-raised">
<div class="container">
<div class="section">
<div class="row">
<div class="col-md-12">
<h2>{{ $new->title }}</h2>
<div class="row gtr-50 gtr-uniform">
@foreach ($new->pictures as $picture)
<div @if ($loop->first)
@@ -20,10 +30,10 @@
{{ $new->body }}
</p>
<span class="news-small">{{ \App\User::find($new->user_id)->fullname()}}, {{ $new->created_at }}</span>
</div>
</div>
<a href="{{ url()->previous() }}" class="btn button primary">Retour</a>
</div>
</div>
</div>
</section>
</article>
@endsection

View File

@@ -1,13 +1,24 @@
@extends('layouts.public.main')
@section('content')
<article id="main">
<section class="wrapper style5">
<div class="inner">
<div class="page-header header-filter clear-filter purple-filter" data-parallax="true" style="background-image: url({{'"'.\App\Config::getData('public_index_img_url').'"'}});">
<div class="container">
<div class="row">
<div class="col-md-12">
<h2>{{ $picture->title }}</h2>
<div><span class="image fit"><img src="{{ $picture->url }}" alt="{{ $picture->title }}"></span></div>
<div class="col-md-8 ml-auto mr-auto">
<div class="brand">
<h2>{{ App\Config::getData('text_public_picture_title')}}</h2>
<p>{{ App\Config::getData('text_public_picture_desc')}}</p>
</div>
</div>
</div>
</div>
</div>
<div class="main main-raised">
<div class="container">
<div class="section">
<div>
<h2 class="title">{{ $picture->title }}</h2>
<div><img class="img-responsive w-100" src="{{ $picture->url }}" alt="{{ $picture->title }}"></div>
<p>
{{ $picture->desc }}
</p>
@@ -16,6 +27,4 @@
</div>
</div>
</div>
</section>
</article>
@endsection