first commit
This commit is contained in:
20
templates/about/index.html.twig
Normal file
20
templates/about/index.html.twig
Normal file
@@ -0,0 +1,20 @@
|
||||
{% extends 'base.html.twig' %}
|
||||
|
||||
{% block title %}Hello AboutController!{% endblock %}
|
||||
|
||||
{% block body %}
|
||||
<style>
|
||||
.example-wrapper { margin: 1em auto; max-width: 800px; width: 95%; font: 18px/1.5 sans-serif; }
|
||||
.example-wrapper code { background: #F5F5F5; padding: 2px 6px; }
|
||||
</style>
|
||||
|
||||
<div class="example-wrapper">
|
||||
<h1>Hello {{ controller_name }}! ✅</h1>
|
||||
|
||||
This friendly message is coming from:
|
||||
<ul>
|
||||
<li>Your controller at <code><a href="{{ 'C:/xampp/htdocs/portfolio/src/Controller/AboutController.php'|file_link(0) }}">src/Controller/AboutController.php</a></code></li>
|
||||
<li>Your template at <code><a href="{{ 'C:/xampp/htdocs/portfolio/templates/about/index.html.twig'|file_link(0) }}">templates/about/index.html.twig</a></code></li>
|
||||
</ul>
|
||||
</div>
|
||||
{% endblock %}
|
||||
35
templates/album/album.html.twig
Normal file
35
templates/album/album.html.twig
Normal file
@@ -0,0 +1,35 @@
|
||||
{% extends 'base.html.twig' %}
|
||||
|
||||
{% block title %}Home -
|
||||
{{ album }}
|
||||
{% endblock %}
|
||||
|
||||
{% block album %}
|
||||
|
||||
<div class="my_album">
|
||||
{% for album_1, albums_1 in items %}
|
||||
{% for album_2, albums_2 in albums_1 %}
|
||||
<div class="my_album_child card bg-base-50 shadow-xl">
|
||||
<figure class="px-2 pt-2">
|
||||
<img class="rounded-xl" src="{{ asset('images/gallery') }}/{{ album_1 }}/{{ album_2 }}"/>
|
||||
</figure>
|
||||
<div class="p-6">
|
||||
|
||||
<div class="flex flex-row">
|
||||
<div class="basis-1/2 justify-items-start gallery">
|
||||
<a href="{{ asset('images/gallery') }}/{{ album_1 }}/{{ album_2 }}">
|
||||
<button type="button" class="inline-block px-6 py-2.5 bg-blue-600 text-white font-medium text-xs leading-tight uppercase rounded shadow-md hover:bg-blue-700 hover:shadow-lg focus:bg-blue-700 focus:shadow-lg focus:outline-none focus:ring-0 active:bg-blue-800 active:shadow-lg transition duration-150 ease-in-out">DiaShow</button>
|
||||
</a>
|
||||
</div>
|
||||
<div class="basis-1/2 justify-items-end">
|
||||
<a href="{{ path ('album.details',{album_id: album_1, image_id:album_2}) }}">
|
||||
<button type="button" class="inline-block px-6 py-2.5 bg-blue-600 text-white font-medium text-xs leading-tight uppercase rounded shadow-md hover:bg-blue-700 hover:shadow-lg focus:bg-blue-700 focus:shadow-lg focus:outline-none focus:ring-0 active:bg-blue-800 active:shadow-lg transition duration-150 ease-in-out">Details</button>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{% endfor %}
|
||||
{% endfor %}
|
||||
</div>
|
||||
{% endblock %}
|
||||
63
templates/album/details.html.twig
Normal file
63
templates/album/details.html.twig
Normal file
@@ -0,0 +1,63 @@
|
||||
{% extends 'base.html.twig' %}
|
||||
|
||||
{% block title %}Home -
|
||||
{{ album }}
|
||||
-
|
||||
{{ image }}
|
||||
{% endblock %}
|
||||
|
||||
{% block details %}
|
||||
|
||||
<div class="card bg-base-50 shadow-xl">
|
||||
<figure class="px-2 pt-2">
|
||||
<img class="rounded-xl" src="{{ asset('images/gallery') }}/{{ album }}/{{ image }}"/>
|
||||
</figure>
|
||||
|
||||
<div class="card-body items-left text-left">
|
||||
<p>
|
||||
<div class="stats shadow">
|
||||
<div class="stat">
|
||||
<div class="stat-title">Blende</div>
|
||||
<div class="stat-value text-lg">{{ items.ApertureFNumber }}</div>
|
||||
</div>
|
||||
<div class="stat">
|
||||
<div class="stat-title">Brennweite</div>
|
||||
<div class="stat-value text-lg">{{ items.FocalLength }}
|
||||
mm</div>
|
||||
</div>
|
||||
<div class="stat">
|
||||
<div class="stat-title">Verschlusszeit</div>
|
||||
<div class="stat-value text-lg">{{ items.ExposureTime }}
|
||||
sek.</div>
|
||||
</div>
|
||||
<div class="stat">
|
||||
<div class="stat-title">ISO Wert</div>
|
||||
<div class="stat-value text-lg">{{ items.ISOSpeedRatings }}</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="stats shadow">
|
||||
<div class="stat">
|
||||
<div class="stat-title">Objektiv</div>
|
||||
<div class="stat-value text-lg">{{ items.Lens }}</div>
|
||||
</div>
|
||||
<div class="stat">
|
||||
<div class="stat-title">Aufnahmedatum</div>
|
||||
<div class="stat-value text-lg">{{ items.DateTimeOriginal }}</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="stats shadow">
|
||||
<div class="stat">
|
||||
<div class="stat-title">Tags</div>
|
||||
<div class="stat-value text-lg">
|
||||
{% if items.Tags is not null %}
|
||||
{% for tag_1, tags_1 in tags %}
|
||||
#{{ tags_1 }}
|
||||
{% endfor %}
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
{% endblock %}
|
||||
46
templates/base.html.twig
Normal file
46
templates/base.html.twig
Normal file
@@ -0,0 +1,46 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1.0"/>
|
||||
|
||||
<title>
|
||||
{% block title %}{% endblock %}
|
||||
</title>
|
||||
{{ vite_entry_link_tags('app') }}
|
||||
|
||||
</head>
|
||||
|
||||
|
||||
<!-- ANCHOR Body -->
|
||||
<body>
|
||||
{% block body %}
|
||||
|
||||
{# {% block navigation %}
|
||||
<div class="my_navigation">{% include 'navigation.html.twig' %}</div>
|
||||
{% endblock %} #}
|
||||
|
||||
{% block breadcrumbs %}
|
||||
<div class="my_breadcrumbs">{% include 'breadcrumbs.html.twig' %}</div>
|
||||
{% endblock %}
|
||||
|
||||
<div class="my_container">
|
||||
{% block gallery %}{% endblock %}
|
||||
{% block album %}{% endblock %}
|
||||
{% block details %}{% endblock %}
|
||||
</div>
|
||||
|
||||
{% endblock %}
|
||||
|
||||
{# {% block pagination %}
|
||||
<div class="my_pagination">{% include 'pagination.html.twig' %}</div>
|
||||
{% endblock %} #}
|
||||
|
||||
<!-- ANCHOR JS -->
|
||||
<script src="https://kit.fontawesome.com/ea07098c7f.js" crossorigin="anonymous"></script>
|
||||
|
||||
|
||||
{{ vite_entry_script_tags('app') }}
|
||||
|
||||
</body>
|
||||
</html>
|
||||
24
templates/breadcrumbs.html.twig
Normal file
24
templates/breadcrumbs.html.twig
Normal file
@@ -0,0 +1,24 @@
|
||||
{% block breadcrumbs %}
|
||||
<div class="text-xl breadcrumbs">
|
||||
|
||||
<ul>
|
||||
<li>
|
||||
<a href="{{ path ('gallery.base') }}">Home</a>
|
||||
</li>
|
||||
|
||||
{% if album is defined %}
|
||||
<li>
|
||||
<a href="{{ path ('album.index',{album_id: album}) }}">{{ album }}</a>
|
||||
</li>
|
||||
{% endif %}
|
||||
|
||||
{% if image is defined %}
|
||||
<li>
|
||||
{{ image }}
|
||||
</li>
|
||||
{% endif %}
|
||||
|
||||
</ul>
|
||||
|
||||
</div>
|
||||
{% endblock %}
|
||||
35
templates/gallery/gallery.html.twig
Normal file
35
templates/gallery/gallery.html.twig
Normal file
@@ -0,0 +1,35 @@
|
||||
{% extends 'base.html.twig' %}
|
||||
|
||||
{% block title %}Gallerien
|
||||
{% endblock %}
|
||||
|
||||
{% block gallery %}
|
||||
|
||||
<div class="my_gallery">
|
||||
{% for album_1, albums_1 in items %}
|
||||
{% for album_2, albums_2 in albums_1 %}
|
||||
{% if loop.index == 1 %}
|
||||
|
||||
<a href="{{ path ('album.index',{album_id: album_1}) }}/?page=1">
|
||||
<div class="my_card card" style="--cards:5">
|
||||
<div class="my_gallery_child rounded-xl">
|
||||
<div class="my_gallery_child-title">
|
||||
<button class="btn btn-warning">{{ album_1 }}</button>
|
||||
</div>
|
||||
</div>
|
||||
<div class="my_gallery_child rounded-xl">
|
||||
<img src="{{ asset('images/gallery') }}/{{ album_1 }}/{{ album_2 }}" alt="{{ album_1 }}" class="object-cover">
|
||||
</div>
|
||||
<div class="my_gallery_child"></div>
|
||||
<div class="my_gallery_child"></div>
|
||||
<div class="my_gallery_child"></div>
|
||||
<div class="my_gallery_child"></div>
|
||||
</div>
|
||||
</a>
|
||||
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
{% endfor %}
|
||||
</div>
|
||||
|
||||
{% endblock %}
|
||||
60
templates/navigation.html.twig
Normal file
60
templates/navigation.html.twig
Normal file
@@ -0,0 +1,60 @@
|
||||
<div class="my_border navbar bg-base-100">
|
||||
<div class="navbar-start">
|
||||
<div class="dropdown">
|
||||
<label tabindex="0" class="btn btn-ghost lg:hidden">
|
||||
<svg xmlns="http://www.w3.org/2000/svg" class="h-5 w-5" fill="none" viewbox="0 0 24 24" stroke="currentColor"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M4 6h16M4 12h8m-8 6h16"/></svg>
|
||||
</label>
|
||||
<ul tabindex="0" class="menu menu-compact dropdown-content mt-3 p-2 shadow bg-base-100 rounded-box w-52">
|
||||
<li>
|
||||
<a>Item 1</a>
|
||||
</li>
|
||||
<li tabindex="0">
|
||||
<a class="justify-between">
|
||||
Parent
|
||||
<svg class="fill-current" xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewbox="0 0 24 24"><path d="M8.59,16.58L13.17,12L8.59,7.41L10,6L16,12L10,18L8.59,16.58Z"/></svg>
|
||||
</a>
|
||||
<ul class="p-2 bg-base-100">
|
||||
<li>
|
||||
<a>Submenu 1</a>
|
||||
</li>
|
||||
<li>
|
||||
<a>Submenu 2</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a>Item 3</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<a href="{{ path ('gallery.base') }}" class="btn btn-ghost normal-case text-xl">mschwab.net</a>
|
||||
|
||||
|
||||
</div>
|
||||
<div class="navbar-center hidden lg:flex">
|
||||
<ul class="menu menu-horizontal p-0">
|
||||
<li>
|
||||
<a href="{{ path ('gallery.base') }}">Home</a>
|
||||
</li>
|
||||
<li tabindex="0">
|
||||
<a>
|
||||
Gallery
|
||||
<svg class="fill-current" xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewbox="0 0 24 24"><path d="M7.41,8.58L12,13.17L16.59,8.58L18,10L12,16L6,10L7.41,8.58Z"/></svg>
|
||||
</a>
|
||||
<ul class="p-2">
|
||||
<li>
|
||||
<a>Submenu 1</a>
|
||||
</li>
|
||||
<li>
|
||||
<a>Submenu 2</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
<a>About</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
Reference in New Issue
Block a user