Add gallery, about and error pages
This commit is contained in:
parent
fab69b64a1
commit
d272a8752b
48 changed files with 1424 additions and 1138 deletions
53
assets/css/_animations.scss
Normal file
53
assets/css/_animations.scss
Normal file
|
@ -0,0 +1,53 @@
|
||||||
|
// main: style.scss
|
||||||
|
|
||||||
|
// ===========================================================================
|
||||||
|
// ANIMATIONS
|
||||||
|
// ===========================================================================
|
||||||
|
|
||||||
|
@-webkit-keyframes wave-up {
|
||||||
|
0% {
|
||||||
|
top: 0;
|
||||||
|
}
|
||||||
|
60% {
|
||||||
|
top: -0.5rem;
|
||||||
|
}
|
||||||
|
100% {
|
||||||
|
top: 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@keyframes wave-up {
|
||||||
|
0% {
|
||||||
|
top: 0;
|
||||||
|
}
|
||||||
|
60% {
|
||||||
|
top: -0.5rem;
|
||||||
|
}
|
||||||
|
100% {
|
||||||
|
top: 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@-webkit-keyframes wave-down {
|
||||||
|
0% {
|
||||||
|
bottom: 0;
|
||||||
|
}
|
||||||
|
60% {
|
||||||
|
bottom: -0.5rem;
|
||||||
|
}
|
||||||
|
100% {
|
||||||
|
bottom: 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@keyframes wave-down {
|
||||||
|
0% {
|
||||||
|
bottom: 0;
|
||||||
|
}
|
||||||
|
60% {
|
||||||
|
bottom: -0.5rem;
|
||||||
|
}
|
||||||
|
100% {
|
||||||
|
bottom: 0;
|
||||||
|
}
|
||||||
|
}
|
72
assets/css/_fonts.scss
Normal file
72
assets/css/_fonts.scss
Normal file
|
@ -0,0 +1,72 @@
|
||||||
|
// main: style.scss
|
||||||
|
|
||||||
|
// ===========================================================================
|
||||||
|
// FONTS
|
||||||
|
// ===========================================================================
|
||||||
|
|
||||||
|
// Nunito
|
||||||
|
|
||||||
|
@font-face {
|
||||||
|
font-family: 'Nunito';
|
||||||
|
src: url(../fonts/nunito/Nunito-Regular.ttf) format('truetype');
|
||||||
|
font-weight: 400;
|
||||||
|
font-style: normal;
|
||||||
|
}
|
||||||
|
|
||||||
|
@font-face {
|
||||||
|
font-family: 'Nunito';
|
||||||
|
src: url(../fonts/nunito/Nunito-Italic.ttf) format('truetype');
|
||||||
|
font-weight: 400;
|
||||||
|
font-style: italic;
|
||||||
|
}
|
||||||
|
|
||||||
|
@font-face {
|
||||||
|
font-family: 'Nunito';
|
||||||
|
src: url(../fonts/nunito/Nunito-Medium.ttf) format('truetype');
|
||||||
|
font-weight: 500;
|
||||||
|
font-style: normal;
|
||||||
|
}
|
||||||
|
|
||||||
|
@font-face {
|
||||||
|
font-family: 'Nunito';
|
||||||
|
src: url(../fonts/nunito/Nunito-MediumItalic.ttf) format('truetype');
|
||||||
|
font-weight: 500;
|
||||||
|
font-style: italic;
|
||||||
|
}
|
||||||
|
|
||||||
|
@font-face {
|
||||||
|
font-family: 'Nunito';
|
||||||
|
src: url(../fonts/nunito/Nunito-SemiBold.ttf) format('truetype');
|
||||||
|
font-weight: 600;
|
||||||
|
font-style: normal;
|
||||||
|
}
|
||||||
|
|
||||||
|
@font-face {
|
||||||
|
font-family: 'Nunito';
|
||||||
|
src: url(../fonts/nunito/Nunito-SemiBoldItalic.ttf) format('truetype');
|
||||||
|
font-weight: 600;
|
||||||
|
font-style: italic;
|
||||||
|
}
|
||||||
|
|
||||||
|
@font-face {
|
||||||
|
font-family: 'Nunito';
|
||||||
|
src: url(../fonts/nunito/Nunito-Bold.ttf) format('truetype');
|
||||||
|
font-weight: 700;
|
||||||
|
font-style: normal;
|
||||||
|
}
|
||||||
|
|
||||||
|
@font-face {
|
||||||
|
font-family: 'Nunito';
|
||||||
|
src: url(../fonts/nunito/Nunito-BoldItalic.ttf) format('truetype');
|
||||||
|
font-weight: 700;
|
||||||
|
font-style: italic;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Gloria Hallelujah
|
||||||
|
|
||||||
|
@font-face {
|
||||||
|
font-family: 'Gloria Hallelujah';
|
||||||
|
src: url(../fonts/gloria-hallelujah/GloriaHallelujah-Regular.ttf) format('truetype');
|
||||||
|
font-weight: 400;
|
||||||
|
font-style: normal;
|
||||||
|
}
|
80
assets/css/_minireset.css
Normal file
80
assets/css/_minireset.css
Normal file
|
@ -0,0 +1,80 @@
|
||||||
|
/* main: style.scss */
|
||||||
|
|
||||||
|
/* ===========================================================================
|
||||||
|
MINIRESET V0.0.6
|
||||||
|
=========================================================================== */
|
||||||
|
|
||||||
|
html,
|
||||||
|
body,
|
||||||
|
p,
|
||||||
|
ol,
|
||||||
|
ul,
|
||||||
|
li,
|
||||||
|
dl,
|
||||||
|
dt,
|
||||||
|
dd,
|
||||||
|
blockquote,
|
||||||
|
figure,
|
||||||
|
fieldset,
|
||||||
|
legend,
|
||||||
|
textarea,
|
||||||
|
pre,
|
||||||
|
iframe,
|
||||||
|
hr,
|
||||||
|
h1,
|
||||||
|
h2,
|
||||||
|
h3,
|
||||||
|
h4,
|
||||||
|
h5,
|
||||||
|
h6 {
|
||||||
|
margin: 0;
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
h1,
|
||||||
|
h2,
|
||||||
|
h3,
|
||||||
|
h4,
|
||||||
|
h5,
|
||||||
|
h6 {
|
||||||
|
font-size: 100%;
|
||||||
|
font-weight: normal;
|
||||||
|
}
|
||||||
|
|
||||||
|
ul {
|
||||||
|
list-style: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
button,
|
||||||
|
input,
|
||||||
|
select {
|
||||||
|
margin: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
html {
|
||||||
|
box-sizing: border-box;
|
||||||
|
}
|
||||||
|
|
||||||
|
*, *::before, *::after {
|
||||||
|
box-sizing: inherit;
|
||||||
|
}
|
||||||
|
|
||||||
|
img,
|
||||||
|
video {
|
||||||
|
height: auto;
|
||||||
|
max-width: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
iframe {
|
||||||
|
border: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
table {
|
||||||
|
border-collapse: collapse;
|
||||||
|
border-spacing: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
td,
|
||||||
|
th {
|
||||||
|
padding: 0;
|
||||||
|
}
|
83
assets/css/_variables.scss
Normal file
83
assets/css/_variables.scss
Normal file
|
@ -0,0 +1,83 @@
|
||||||
|
// main: style.scss
|
||||||
|
|
||||||
|
// ===========================================================================
|
||||||
|
// VARIABLES
|
||||||
|
// ===========================================================================
|
||||||
|
|
||||||
|
:root {
|
||||||
|
|
||||||
|
// Fonts
|
||||||
|
|
||||||
|
--text-font-family: 'Nunito', Verdana, sans-serif;
|
||||||
|
--logo-font-family: 'Gloria Hallelujah', Verdana, sans-serif;
|
||||||
|
--regular-font-weight: 400;
|
||||||
|
--medium-font-weight: 500;
|
||||||
|
--semi-bold-font-weight: 600;
|
||||||
|
--bold-font-weight: 700;
|
||||||
|
--text-font-size: 1rem;
|
||||||
|
--caption-font-size: 0.9rem;
|
||||||
|
--footnote-font-size: 0.8rem;
|
||||||
|
--text-line-height: 1.6rem;
|
||||||
|
--h1-font-size: 1.8rem;
|
||||||
|
--h2-font-size: 1.4rem;
|
||||||
|
--h3-font-size: 1.4rem;
|
||||||
|
--h4-font-size: 1.2rem;
|
||||||
|
|
||||||
|
// Dimensions
|
||||||
|
|
||||||
|
--content-max-width: 140rem;
|
||||||
|
--text-max-width: 70rem;
|
||||||
|
--icon-size: 2.5rem;
|
||||||
|
--header-bar-vertical-padding: 2rem;
|
||||||
|
--header-bar-horizontal-padding: 2rem;
|
||||||
|
--header-bar-height: calc((var(--header-bar-vertical-padding) * 2) + var(--h1-font-size));
|
||||||
|
--footer-bar-vertical-padding: 1rem;
|
||||||
|
--footer-bar-horizontal-padding: 2rem;
|
||||||
|
--footer-bar-height: calc((var(--footer-bar-vertical-padding) * 2) + var(--icon-size) + 1rem + var(--text-font-size));
|
||||||
|
--generic-section-vertical-padding: 3rem;
|
||||||
|
--generic-section-horizontal-padding: 2rem;
|
||||||
|
--home-section-vertical-padding: 2rem;
|
||||||
|
--home-section-horizontal-padding: 2rem;
|
||||||
|
--home-section-min-height: calc(100vh - var(--header-bar-height) - var(--footer-bar-height));
|
||||||
|
--home-nav-gap: 1rem;
|
||||||
|
--home-nav-item-size: 2rem;
|
||||||
|
--home-nav-item-translation: 0;
|
||||||
|
--home-nav-image-max-height: calc(100vh - var(--header-bar-height) - ((var(--generic-section-vertical-padding) + var(--home-nav-item-size) + var(--home-nav-gap)) * 2) - var(--footer-bar-height));
|
||||||
|
|
||||||
|
// Colors
|
||||||
|
|
||||||
|
--black: #000;
|
||||||
|
--jet: #333333;
|
||||||
|
--white: #fff;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Media queries
|
||||||
|
|
||||||
|
$tablet-media-query: 48rem;
|
||||||
|
$desktop-media-query: 62rem;
|
||||||
|
|
||||||
|
@media screen and (min-width: $tablet-media-query) {
|
||||||
|
|
||||||
|
:root {
|
||||||
|
|
||||||
|
// Fonts
|
||||||
|
|
||||||
|
--text-font-size: 1.2rem;
|
||||||
|
--caption-font-size: 1.1rem;
|
||||||
|
--footnote-font-size: 1rem;
|
||||||
|
--h1-font-size: 2rem;
|
||||||
|
--h2-font-size: 1.6rem;
|
||||||
|
--h3-font-size: 1.6rem;
|
||||||
|
--h4-font-size: 1.4rem;
|
||||||
|
|
||||||
|
// Dimensions
|
||||||
|
|
||||||
|
--icon-size: 3rem;
|
||||||
|
--header-bar-horizontal-padding: 4rem;
|
||||||
|
--footer-bar-vertical-padding: 2rem;
|
||||||
|
--footer-bar-horizontal-padding: 4rem;
|
||||||
|
--footer-bar-height: calc((var(--footer-bar-vertical-padding) * 2) + var(--icon-size));
|
||||||
|
--generic-section-horizontal-padding: 4rem;
|
||||||
|
--home-section-horizontal-padding: 4rem;
|
||||||
|
}
|
||||||
|
}
|
1
assets/css/minireset.min.css
vendored
1
assets/css/minireset.min.css
vendored
|
@ -1 +0,0 @@
|
||||||
/*! minireset.css v0.0.6 | MIT License | github.com/jgthms/minireset.css */html,body,p,ol,ul,li,dl,dt,dd,blockquote,figure,fieldset,legend,textarea,pre,iframe,hr,h1,h2,h3,h4,h5,h6{margin:0;padding:0}h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal}ul{list-style:none}button,input,select{margin:0}html{box-sizing:border-box}*,*::before,*::after{box-sizing:inherit}img,video{height:auto;max-width:100%}iframe{border:0}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}
|
|
2
assets/css/style.min.css
vendored
2
assets/css/style.min.css
vendored
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large
Load diff
226
assets/js/app.js
226
assets/js/app.js
|
@ -25,168 +25,168 @@ const circleTypes = [];
|
||||||
|
|
||||||
// Convert rem to pixels by getting font-size CSS property
|
// Convert rem to pixels by getting font-size CSS property
|
||||||
function convertRemToPixels(rem) {
|
function convertRemToPixels(rem) {
|
||||||
let fontSize = parseFloat(window.getComputedStyle(document.body).getPropertyValue('font-size'));
|
let fontSize = parseFloat(window.getComputedStyle(document.body).getPropertyValue('font-size'));
|
||||||
return rem * fontSize;
|
return rem * fontSize;
|
||||||
}
|
}
|
||||||
|
|
||||||
// HOME NAVIGATION DISPLAY //
|
// HOME NAVIGATION DISPLAY //
|
||||||
|
|
||||||
// Calculate navigation grid inner width
|
// Calculate navigation grid inner width
|
||||||
function calculateNavGridInnerWidth() {
|
function calculateNavGridInnerWidth() {
|
||||||
if (root) {
|
if (root) {
|
||||||
let navGridGapProperty = window.getComputedStyle(root).getPropertyValue('--home-nav-gap');
|
let navGridGapProperty = window.getComputedStyle(root).getPropertyValue('--home-nav-gap');
|
||||||
let navGridGap = parseFloat(navGridGapProperty.slice(0, -3));
|
let navGridGap = parseFloat(navGridGapProperty.slice(0, -3));
|
||||||
return navImage.getBoundingClientRect().width + (convertRemToPixels(navGridGap) * 2);
|
return navImage.getBoundingClientRect().width + (convertRemToPixels(navGridGap) * 2);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Calculate navigation grid inner diagonal
|
// Calculate navigation grid inner diagonal
|
||||||
function calculateNavGridInnerDiagonal() {
|
function calculateNavGridInnerDiagonal() {
|
||||||
return calculateNavGridInnerWidth() * Math.sqrt(2);
|
return calculateNavGridInnerWidth() * Math.sqrt(2);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Create new instance of CircleType for each navigation link, set radius and direction
|
// Create new instance of CircleType for each navigation link, set radius and direction
|
||||||
function curveNavLinks() {
|
function curveNavLinks() {
|
||||||
if (navLinks && circleTypes) {
|
if (navLinks && circleTypes) {
|
||||||
if (navLinks.length < 7) {
|
if (navLinks.length < 7) {
|
||||||
for (let i = 0; i < (navLinks.length - 1); i++) {
|
for (let i = 0; i < (navLinks.length - 1); i++) {
|
||||||
circleTypes[i] = new CircleType(navLinks[i]);
|
circleTypes[i] = new CircleType(navLinks[i]);
|
||||||
circleTypes[i].radius(calculateNavGridInnerWidth() / 2);
|
circleTypes[i].radius(calculateNavGridInnerWidth() / 2);
|
||||||
}
|
}
|
||||||
for (let i = (navLinks.length - 1); i < navLinks.length; i++) {
|
for (let i = (navLinks.length - 1); i < navLinks.length; i++) {
|
||||||
circleTypes[i] = new CircleType(navLinks[i]);
|
circleTypes[i] = new CircleType(navLinks[i]);
|
||||||
circleTypes[i].dir(-1);
|
circleTypes[i].dir(-1);
|
||||||
circleTypes[i].radius(calculateNavGridInnerWidth() / 2);
|
circleTypes[i].radius(calculateNavGridInnerWidth() / 2);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
for (let i = 0; i < (navLinks.length - 3); i++) {
|
for (let i = 0; i < (navLinks.length - 3); i++) {
|
||||||
circleTypes[i] = new CircleType(navLinks[i]);
|
circleTypes[i] = new CircleType(navLinks[i]);
|
||||||
circleTypes[i].radius(calculateNavGridInnerWidth() / 2);
|
circleTypes[i].radius(calculateNavGridInnerWidth() / 2);
|
||||||
}
|
}
|
||||||
for (let i = (navLinks.length - 3); i < navLinks.length; i++) {
|
for (let i = (navLinks.length - 3); i < navLinks.length; i++) {
|
||||||
circleTypes[i] = new CircleType(navLinks[i]);
|
circleTypes[i] = new CircleType(navLinks[i]);
|
||||||
circleTypes[i].dir(-1);
|
circleTypes[i].dir(-1);
|
||||||
circleTypes[i].radius(calculateNavGridInnerWidth() / 2);
|
circleTypes[i].radius(calculateNavGridInnerWidth() / 2);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// Set --home-nav-item-translation CSS property
|
// Set --home-nav-item-translation CSS property
|
||||||
function setNavItemTranslationProperty() {
|
function setNavItemTranslationProperty() {
|
||||||
let navItemTranslation = (calculateNavGridInnerDiagonal() - calculateNavGridInnerWidth()) / 2;
|
let navItemTranslation = (calculateNavGridInnerDiagonal() - calculateNavGridInnerWidth()) / 2;
|
||||||
if (root) {
|
if (root) {
|
||||||
root.style.setProperty('--home-nav-item-translation', navItemTranslation + 'px');
|
root.style.setProperty('--home-nav-item-translation', navItemTranslation + 'px');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Set navigation grid display depending on number of links
|
// Set navigation grid display depending on number of links
|
||||||
function setNavGridDisplay() {
|
function setNavGridDisplay() {
|
||||||
if (navEl && navLinks) {
|
if (navEl && navLinks) {
|
||||||
if (navLinks.length === 2) {
|
if (navLinks.length === 2) {
|
||||||
navEl.classList.add('home__nav--2-items');
|
navEl.classList.add('home__nav--2-items');
|
||||||
} else if (navLinks.length === 3) {
|
} else if (navLinks.length === 3) {
|
||||||
navEl.classList.add('home__nav--3-items');
|
navEl.classList.add('home__nav--3-items');
|
||||||
} else if (navLinks.length === 4) {
|
} else if (navLinks.length === 4) {
|
||||||
navEl.classList.add('home__nav--4-items');
|
navEl.classList.add('home__nav--4-items');
|
||||||
} else if (navLinks.length === 5) {
|
} else if (navLinks.length === 5) {
|
||||||
navEl.classList.add('home__nav--5-items');
|
navEl.classList.add('home__nav--5-items');
|
||||||
} else if (navLinks.length === 6) {
|
} else if (navLinks.length === 6) {
|
||||||
navEl.classList.add('home__nav--6-items');
|
navEl.classList.add('home__nav--6-items');
|
||||||
} else if (navLinks.length === 7) {
|
} else if (navLinks.length === 7) {
|
||||||
navEl.classList.add('home__nav--7-items');
|
navEl.classList.add('home__nav--7-items');
|
||||||
} else if (navLinks.length === 8) {
|
} else if (navLinks.length === 8) {
|
||||||
navEl.classList.add('home__nav--8-items');
|
navEl.classList.add('home__nav--8-items');
|
||||||
|
}
|
||||||
|
for (let i = 0; i < navLinks.length; i++) {
|
||||||
|
navLinks[i].classList.add('home__nav-link--visible');
|
||||||
|
}
|
||||||
}
|
}
|
||||||
for (let i = 0; i < navLinks.length; i++) {
|
|
||||||
navLinks[i].classList.add('home__nav-link--visible');
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// Edit navigation links radius and translation on window resize event
|
// Edit navigation links radius and translation on window resize event
|
||||||
function editNavLinksOnResize() {
|
function editNavLinksOnResize() {
|
||||||
window.addEventListener('resize', function(e) {
|
window.addEventListener('resize', function(e) {
|
||||||
if (navLinks && circleTypes) {
|
if (navLinks && circleTypes) {
|
||||||
for (let i = 0; i < navLinks.length; i++) {
|
for (let i = 0; i < navLinks.length; i++) {
|
||||||
circleTypes[i].radius(calculateNavGridInnerWidth() / 2);
|
circleTypes[i].radius(calculateNavGridInnerWidth() / 2);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
setNavItemTranslationProperty();
|
setNavItemTranslationProperty();
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
// Add wave up animation to a single letter and remove it on animationend event
|
// Add wave up animation to a single letter and remove it on animationend event
|
||||||
function waveNavLetterUp(navLetter) {
|
function waveNavLetterUp(navLetter) {
|
||||||
navLetter.classList.add('home__nav-letter--wave-up');
|
navLetter.classList.add('home__nav-letter--wave-up');
|
||||||
navLetter.addEventListener('animationend', function(e) {
|
navLetter.addEventListener('animationend', function(e) {
|
||||||
navLetter.classList.remove('home__nav-letter--wave-up');
|
navLetter.classList.remove('home__nav-letter--wave-up');
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
// Add wave down animation to a single letter and remove it on animationend event
|
// Add wave down animation to a single letter and remove it on animationend event
|
||||||
function waveNavLetterDown(navLetter) {
|
function waveNavLetterDown(navLetter) {
|
||||||
navLetter.classList.add('home__nav-letter--wave-down');
|
navLetter.classList.add('home__nav-letter--wave-down');
|
||||||
navLetter.addEventListener('animationend', function(e) {
|
navLetter.addEventListener('animationend', function(e) {
|
||||||
navLetter.classList.remove('home__nav-letter--wave-down');
|
navLetter.classList.remove('home__nav-letter--wave-down');
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
// Add wave up animation to every letters of a single link with a slight delay
|
// Add wave up animation to every letters of a single link with a slight delay
|
||||||
function waveNavLinkUp(navLink) {
|
function waveNavLinkUp(navLink) {
|
||||||
let navLinkLetters = navLink.querySelectorAll('span');
|
let navLinkLetters = navLink.querySelectorAll('span');
|
||||||
let animationDelay = 0;
|
let animationDelay = 0;
|
||||||
for (let i = 0; i < navLinkLetters.length; i++) {
|
for (let i = 0; i < navLinkLetters.length; i++) {
|
||||||
setTimeout(waveNavLetterUp, animationDelay, navLinkLetters[i]);
|
setTimeout(waveNavLetterUp, animationDelay, navLinkLetters[i]);
|
||||||
animationDelay += 50;
|
animationDelay += 50;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Add wave down animation to every letters of a single link with a slight delay
|
// Add wave down animation to every letters of a single link with a slight delay
|
||||||
function waveNavLinkDown(navLink) {
|
function waveNavLinkDown(navLink) {
|
||||||
let navLinkLetters = navLink.querySelectorAll('span');
|
let navLinkLetters = navLink.querySelectorAll('span');
|
||||||
let animationDelay = 0;
|
let animationDelay = 0;
|
||||||
for (let i = 0; i < navLinkLetters.length; i++) {
|
for (let i = 0; i < navLinkLetters.length; i++) {
|
||||||
setTimeout(waveNavLetterDown, animationDelay, navLinkLetters[i]);
|
setTimeout(waveNavLetterDown, animationDelay, navLinkLetters[i]);
|
||||||
animationDelay += 50;
|
animationDelay += 50;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Add wave (up or down) animation to every letters of each link on mouseover event
|
// Add wave (up or down) animation to every letters of each link on mouseover event
|
||||||
function waveNavLinksOnHover() {
|
function waveNavLinksOnHover() {
|
||||||
if (navLinks) {
|
if (navLinks) {
|
||||||
if (navLinks.length < 7) {
|
if (navLinks.length < 7) {
|
||||||
for (let i = 0; i < (navLinks.length - 1); i++) {
|
for (let i = 0; i < (navLinks.length - 1); i++) {
|
||||||
navLinks[i].addEventListener('mouseover', function(e) {
|
navLinks[i].addEventListener('mouseover', function(e) {
|
||||||
waveNavLinkUp(navLinks[i]);
|
waveNavLinkUp(navLinks[i]);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
for (let i = (navLinks.length - 1); i < navLinks.length; i++) {
|
for (let i = (navLinks.length - 1); i < navLinks.length; i++) {
|
||||||
navLinks[i].addEventListener('mouseover', function(e) {
|
navLinks[i].addEventListener('mouseover', function(e) {
|
||||||
waveNavLinkDown(navLinks[i]);
|
waveNavLinkDown(navLinks[i]);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
for (let i = 0; i < (navLinks.length - 3); i++) {
|
for (let i = 0; i < (navLinks.length - 3); i++) {
|
||||||
navLinks[i].addEventListener('mouseover', function(e) {
|
navLinks[i].addEventListener('mouseover', function(e) {
|
||||||
waveNavLinkUp(navLinks[i]);
|
waveNavLinkUp(navLinks[i]);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
for (let i = (navLinks.length - 3); i < navLinks.length; i++) {
|
for (let i = (navLinks.length - 3); i < navLinks.length; i++) {
|
||||||
navLinks[i].addEventListener('mouseover', function(e) {
|
navLinks[i].addEventListener('mouseover', function(e) {
|
||||||
waveNavLinkDown(navLinks[i]);
|
waveNavLinkDown(navLinks[i]);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
function handleNavDisplay() {
|
function handleNavDisplay() {
|
||||||
curveNavLinks();
|
curveNavLinks();
|
||||||
setNavItemTranslationProperty();
|
setNavItemTranslationProperty();
|
||||||
setNavGridDisplay();
|
setNavGridDisplay();
|
||||||
editNavLinksOnResize();
|
editNavLinksOnResize();
|
||||||
waveNavLinksOnHover();
|
waveNavLinksOnHover();
|
||||||
}
|
}
|
||||||
|
|
||||||
// ----------------------------------------------------------------------------
|
// ----------------------------------------------------------------------------
|
||||||
|
@ -195,10 +195,10 @@ function handleNavDisplay() {
|
||||||
|
|
||||||
document.addEventListener('DOMContentLoaded', function() {
|
document.addEventListener('DOMContentLoaded', function() {
|
||||||
|
|
||||||
document.addEventListener("touchstart", function() {},false); // Enable CSS :active pseudo-class in Safari Mobile
|
document.addEventListener("touchstart", function() {},false); // Enable CSS :active pseudo-class in Safari Mobile
|
||||||
|
|
||||||
// HOME NAVIGATION DISPLAY //
|
// HOME NAVIGATION DISPLAY //
|
||||||
|
|
||||||
handleNavDisplay();
|
handleNavDisplay();
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
|
@ -2,7 +2,7 @@ Alt-text:
|
||||||
|
|
||||||
----
|
----
|
||||||
|
|
||||||
Caption:
|
Caption: Voici la légende de la premère image.
|
||||||
|
|
||||||
----
|
----
|
||||||
|
|
||||||
|
|
|
@ -2,7 +2,7 @@ Alt-text:
|
||||||
|
|
||||||
----
|
----
|
||||||
|
|
||||||
Caption:
|
Caption: Voilà la légende de la deuxième image.
|
||||||
|
|
||||||
----
|
----
|
||||||
|
|
||||||
|
|
|
@ -8,13 +8,13 @@ Meta-description: Site internet de l'artiste Xiao Wang.
|
||||||
|
|
||||||
Meta-image:
|
Meta-image:
|
||||||
|
|
||||||
- background-image-exemple-3000x1333px.png
|
- xiao-wang-accueil.png
|
||||||
|
|
||||||
----
|
----
|
||||||
|
|
||||||
Og-image:
|
Og-image:
|
||||||
|
|
||||||
- background-image-exemple-3000x1333px.png
|
- xiao-wang-accueil.png
|
||||||
|
|
||||||
----
|
----
|
||||||
|
|
||||||
|
@ -24,7 +24,7 @@ Og-type: website
|
||||||
|
|
||||||
Twitter-image:
|
Twitter-image:
|
||||||
|
|
||||||
- background-image-exemple-3000x1333px.png
|
- xiao-wang-accueil.png
|
||||||
|
|
||||||
----
|
----
|
||||||
|
|
||||||
|
|
|
@ -22,11 +22,11 @@ Meta-author: Xiao Wang
|
||||||
|
|
||||||
----
|
----
|
||||||
|
|
||||||
Og-image:
|
Og-image: - background-image-exemple-3000x1333px.png
|
||||||
|
|
||||||
----
|
----
|
||||||
|
|
||||||
Twitter-image:
|
Twitter-image: - background-image-exemple-3000x1333px.png
|
||||||
|
|
||||||
----
|
----
|
||||||
|
|
||||||
|
|
|
@ -1,16 +1,16 @@
|
||||||
title: Artwork
|
title: Artwork
|
||||||
accept:
|
accept:
|
||||||
mime: image/jpeg, image/png, video/mp4
|
mime: image/jpeg, image/png, video/mp4
|
||||||
fields:
|
fields:
|
||||||
alt_text:
|
alt_text:
|
||||||
when:
|
when:
|
||||||
file_type: image
|
file_type: image
|
||||||
label:
|
label:
|
||||||
en: Alternative text
|
en: Alternative text
|
||||||
fr: Texte alternatif
|
fr: Texte alternatif
|
||||||
type: text
|
type: text
|
||||||
caption:
|
caption:
|
||||||
label:
|
label:
|
||||||
en: Caption
|
en: Caption
|
||||||
fr: Légende
|
fr: Légende
|
||||||
type: text
|
type: text
|
||||||
|
|
|
@ -1,3 +1,3 @@
|
||||||
title: Favicon
|
title: Favicon
|
||||||
accept:
|
accept:
|
||||||
mime: image/png
|
mime: image/png
|
||||||
|
|
|
@ -1,14 +1,14 @@
|
||||||
title: Image
|
title: Image
|
||||||
accept:
|
accept:
|
||||||
mime: image/jpeg, image/png
|
mime: image/jpeg, image/png
|
||||||
fields:
|
fields:
|
||||||
alt_text:
|
alt_text:
|
||||||
label:
|
label:
|
||||||
en: Alternative text
|
en: Alternative text
|
||||||
fr: Texte alternatif
|
fr: Texte alternatif
|
||||||
type: text
|
type: text
|
||||||
caption:
|
caption:
|
||||||
label:
|
label:
|
||||||
en: Caption
|
en: Caption
|
||||||
fr: Légende
|
fr: Légende
|
||||||
type: text
|
type: text
|
||||||
|
|
|
@ -1,17 +1,17 @@
|
||||||
title:
|
title:
|
||||||
en: About
|
en: About
|
||||||
fr: À propos
|
fr: À propos
|
||||||
icon: text
|
icon: text
|
||||||
status:
|
status:
|
||||||
draft: true
|
draft: true
|
||||||
unlisted: true
|
unlisted: true
|
||||||
options:
|
options:
|
||||||
changeSlug: false
|
changeSlug: false
|
||||||
changeStatus: false
|
changeStatus: false
|
||||||
changeTemplate: false
|
changeTemplate: false
|
||||||
changeTitle: false
|
changeTitle: false
|
||||||
delete: false
|
delete: false
|
||||||
duplicate: false
|
duplicate: false
|
||||||
tabs:
|
tabs:
|
||||||
content: tabs/about_content
|
content: tabs/about_content
|
||||||
seo: tabs/about_seo
|
seo: tabs/about_seo
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
title:
|
title:
|
||||||
en: Error
|
en: Error
|
||||||
fr: Erreur
|
fr: Erreur
|
||||||
options:
|
options:
|
||||||
read: false
|
read: false
|
||||||
|
|
|
@ -1,10 +1,10 @@
|
||||||
title:
|
title:
|
||||||
en: Gallery
|
en: Gallery
|
||||||
fr: Galerie
|
fr: Galerie
|
||||||
icon: file-image
|
icon: file-image
|
||||||
status:
|
status:
|
||||||
draft: true
|
draft: true
|
||||||
listed: true
|
listed: true
|
||||||
tabs:
|
tabs:
|
||||||
content: tabs/gallery_content
|
content: tabs/gallery_content
|
||||||
seo: tabs/gallery_seo
|
seo: tabs/gallery_seo
|
||||||
|
|
|
@ -1,17 +1,17 @@
|
||||||
title:
|
title:
|
||||||
en: Home
|
en: Home
|
||||||
fr: Accueil
|
fr: Accueil
|
||||||
icon: home
|
icon: home
|
||||||
status:
|
status:
|
||||||
draft: true
|
draft: true
|
||||||
unlisted: true
|
unlisted: true
|
||||||
options:
|
options:
|
||||||
changeSlug: false
|
changeSlug: false
|
||||||
changeStatus: false
|
changeStatus: false
|
||||||
changeTemplate: false
|
changeTemplate: false
|
||||||
changeTitle: false
|
changeTitle: false
|
||||||
delete: false
|
delete: false
|
||||||
duplicate: false
|
duplicate: false
|
||||||
tabs:
|
tabs:
|
||||||
content: tabs/home_content
|
content: tabs/home_content
|
||||||
seo: tabs/home_seo
|
seo: tabs/home_seo
|
||||||
|
|
|
@ -1,9 +1,9 @@
|
||||||
type: fields
|
type: fields
|
||||||
fields:
|
fields:
|
||||||
text:
|
text:
|
||||||
label:
|
label:
|
||||||
en: Presentation text
|
en: Presentation text
|
||||||
fr: Texte de présentation
|
fr: Texte de présentation
|
||||||
type: textarea
|
type: textarea
|
||||||
size: large
|
size: large
|
||||||
required: true
|
required: true
|
||||||
|
|
|
@ -1,11 +1,11 @@
|
||||||
headline:
|
headline:
|
||||||
en: Artworks
|
en: Artworks
|
||||||
fr: Œuvres
|
fr: Œuvres
|
||||||
type: files
|
type: files
|
||||||
template: artwork
|
template: artwork
|
||||||
min: 1
|
min: 1
|
||||||
layout: cards
|
layout: cards
|
||||||
size: small
|
size: small
|
||||||
image:
|
image:
|
||||||
ratio: 1/1
|
ratio: 1/1
|
||||||
back: white
|
back: white
|
||||||
|
|
|
@ -1,8 +1,17 @@
|
||||||
type: fields
|
type: fields
|
||||||
fields:
|
fields:
|
||||||
text:
|
text:
|
||||||
label:
|
label:
|
||||||
en: Introduction text
|
en: Introduction text
|
||||||
fr: Texte d'introduction
|
fr: Texte d'introduction
|
||||||
type: textarea
|
type: textarea
|
||||||
size: medium
|
size: medium
|
||||||
|
buttons:
|
||||||
|
- bold
|
||||||
|
- italic
|
||||||
|
- '|'
|
||||||
|
- link
|
||||||
|
- email
|
||||||
|
- '|'
|
||||||
|
- ul
|
||||||
|
- '|'
|
||||||
|
|
|
@ -1,55 +1,56 @@
|
||||||
type: fields
|
type: fields
|
||||||
fields:
|
fields:
|
||||||
meta_description:
|
meta_description:
|
||||||
label: Description
|
label: Description
|
||||||
type: textarea
|
type: textarea
|
||||||
size: small
|
size: small
|
||||||
buttons: false
|
buttons: false
|
||||||
# required: true
|
# required: true
|
||||||
help:
|
help:
|
||||||
en: "Short description of the page displayed by search engines and social networks (recommended maximum length: 160 characters)."
|
en: "Short description of the page displayed by search engines and social networks (recommended maximum length: 160 characters)."
|
||||||
fr: "Courte description de la page affichée par les moteurs de recherche et les réseaux sociaux (taille maximale conseillée : 160 caractères)."
|
fr: "Courte description de la page affichée par les moteurs de recherche et les réseaux sociaux (taille maximale conseillée : 160 caractères)."
|
||||||
width: 3/4
|
width: 3/4
|
||||||
gap:
|
gap:
|
||||||
type: gap
|
type: gap
|
||||||
width: 1/4
|
width: 1/4
|
||||||
meta_image:
|
meta_image:
|
||||||
label: Image
|
label: Image
|
||||||
type: files
|
type: files
|
||||||
layout: cardlets
|
layout: cardlets
|
||||||
image:
|
image:
|
||||||
cover: true
|
cover: true
|
||||||
multiple: false
|
back: white
|
||||||
# required: true
|
multiple: false
|
||||||
help:
|
# required: true
|
||||||
en: "Image displayed by social networks (format: JPEG or PNG)."
|
help:
|
||||||
fr: "Image affichée par les réseaux sociaux (format : JPEG ou PNG)."
|
en: "Image displayed by social networks (format: JPEG or PNG)."
|
||||||
width: 1/4
|
fr: "Image affichée par les réseaux sociaux (format : JPEG ou PNG)."
|
||||||
# Hidden fields
|
width: 1/4
|
||||||
og_image:
|
# Hidden fields
|
||||||
type: hidden
|
og_image:
|
||||||
default:
|
type: hidden
|
||||||
og_type:
|
default:
|
||||||
type: hidden
|
og_type:
|
||||||
default: article
|
type: hidden
|
||||||
twitter_image:
|
default: article
|
||||||
type: hidden
|
twitter_image:
|
||||||
default:
|
type: hidden
|
||||||
twitter_card_type:
|
default:
|
||||||
type: hidden
|
twitter_card_type:
|
||||||
default: summary_large_image
|
type: hidden
|
||||||
robots_noindex:
|
default: summary_large_image
|
||||||
type: hidden
|
robots_noindex:
|
||||||
default: default
|
type: hidden
|
||||||
robots_nofollow:
|
default: default
|
||||||
type: hidden
|
robots_nofollow:
|
||||||
default: default
|
type: hidden
|
||||||
robots_noarchive:
|
default: default
|
||||||
type: hidden
|
robots_noarchive:
|
||||||
default: default
|
type: hidden
|
||||||
robots_noimageindex:
|
default: default
|
||||||
type: hidden
|
robots_noimageindex:
|
||||||
default: default
|
type: hidden
|
||||||
robots_nosnippet:
|
default: default
|
||||||
type: hidden
|
robots_nosnippet:
|
||||||
default: default
|
type: hidden
|
||||||
|
default: default
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
headline:
|
headline:
|
||||||
en: Background image
|
en: Background image
|
||||||
fr: Image de fond
|
fr: Image de fond
|
||||||
type: files
|
type: files
|
||||||
template: image
|
template: image
|
||||||
min: 1
|
min: 1
|
||||||
|
@ -8,5 +8,5 @@ max: 1
|
||||||
layout: cards
|
layout: cards
|
||||||
size: medium
|
size: medium
|
||||||
image:
|
image:
|
||||||
ratio: 1/1
|
ratio: 1/1
|
||||||
back: white
|
back: white
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
headline:
|
headline:
|
||||||
en: Galleries
|
en: Galleries
|
||||||
fr: Galeries
|
fr: Galeries
|
||||||
type: pages
|
type: pages
|
||||||
template: gallery
|
template: gallery
|
||||||
min: 1
|
min: 1
|
||||||
|
@ -8,6 +8,6 @@ max: 7
|
||||||
layout: cards
|
layout: cards
|
||||||
size: small
|
size: small
|
||||||
image:
|
image:
|
||||||
ratio: 1/1
|
ratio: 1/1
|
||||||
cover: true
|
cover: true
|
||||||
back: white
|
back: white
|
||||||
|
|
|
@ -1,12 +1,12 @@
|
||||||
headline:
|
headline:
|
||||||
en: Pages
|
en: Pages
|
||||||
fr: Pages
|
fr: Pages
|
||||||
type: pages
|
type: pages
|
||||||
templates:
|
templates:
|
||||||
- home
|
- home
|
||||||
- about
|
- about
|
||||||
create: false
|
create: false
|
||||||
layout: cardlets
|
layout: cardlets
|
||||||
image:
|
image:
|
||||||
cover: true
|
cover: true
|
||||||
back: white
|
back: white
|
||||||
|
|
|
@ -1,20 +1,20 @@
|
||||||
type: fields
|
type: fields
|
||||||
fields:
|
fields:
|
||||||
email:
|
email:
|
||||||
label:
|
label:
|
||||||
en: Email
|
en: Email
|
||||||
fr: Adresse e-mail
|
fr: Adresse e-mail
|
||||||
type: email
|
type: email
|
||||||
required: true
|
required: true
|
||||||
width: 1/2
|
width: 1/2
|
||||||
gap:
|
gap:
|
||||||
type: gap
|
type: gap
|
||||||
width: 1/2
|
width: 1/2
|
||||||
instagram:
|
instagram:
|
||||||
type: url
|
type: url
|
||||||
label:
|
label:
|
||||||
en: Instagram account
|
en: Instagram account
|
||||||
fr: Compte Instagram
|
fr: Compte Instagram
|
||||||
icon: instagram
|
icon: instagram
|
||||||
required: true
|
required: true
|
||||||
width: 1/2
|
width: 1/2
|
||||||
|
|
|
@ -1,13 +1,13 @@
|
||||||
type: fields
|
type: fields
|
||||||
fields:
|
fields:
|
||||||
favicon:
|
favicon:
|
||||||
label: Favicon
|
label: Favicon
|
||||||
type: files
|
type: files
|
||||||
template: favicon
|
template: favicon
|
||||||
layout: cardlets
|
layout: cardlets
|
||||||
multiple: false
|
multiple: false
|
||||||
required: true
|
required: true
|
||||||
help:
|
help:
|
||||||
en: "Image displayed on web browser tabs (file format: PNG)."
|
en: "Image displayed on web browser tabs (file format: PNG)."
|
||||||
fr: "Image affichée sur les onglets des navigateurs internet (format : PNG)."
|
fr: "Image affichée sur les onglets des navigateurs internet (format : PNG)."
|
||||||
width: 1/4
|
width: 1/4
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
title:
|
title:
|
||||||
en: Website
|
en: Website
|
||||||
fr: Site web
|
fr: Site web
|
||||||
tabs:
|
tabs:
|
||||||
content: tabs/site_content
|
content: tabs/site_content
|
||||||
seo: tabs/site_informations
|
seo: tabs/site_informations
|
||||||
analytics: tabs/site_analytics
|
analytics: tabs/site_analytics
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
label:
|
label:
|
||||||
en: Content
|
en: Content
|
||||||
fr: Contenu
|
fr: Contenu
|
||||||
icon: text
|
icon: text
|
||||||
sections:
|
sections:
|
||||||
presentation: sections/about_content_presentation
|
presentation: sections/about_content_presentation
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
label:
|
label:
|
||||||
en: SEO
|
en: SEO
|
||||||
fr: Référencement
|
fr: Référencement
|
||||||
icon: search
|
icon: search
|
||||||
sections:
|
sections:
|
||||||
seo_basic_meta: sections/generic_seo_metadata
|
seo_basic_meta: sections/generic_seo_metadata
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
label:
|
label:
|
||||||
en: Content
|
en: Content
|
||||||
fr: Contenu
|
fr: Contenu
|
||||||
icon: text
|
icon: text
|
||||||
sections:
|
sections:
|
||||||
introduction: sections/gallery_content_introduction
|
introduction: sections/gallery_content_introduction
|
||||||
artworks: sections/gallery_content_artworks
|
artworks: sections/gallery_content_artworks
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
label:
|
label:
|
||||||
en: SEO
|
en: SEO
|
||||||
fr: Référencement
|
fr: Référencement
|
||||||
icon: search
|
icon: search
|
||||||
sections:
|
sections:
|
||||||
seo_basic_meta: sections/generic_seo_metadata
|
seo_basic_meta: sections/generic_seo_metadata
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
label:
|
label:
|
||||||
en: Content
|
en: Content
|
||||||
fr: Contenu
|
fr: Contenu
|
||||||
icon: text
|
icon: text
|
||||||
sections:
|
sections:
|
||||||
background_image: sections/home_content_background_image
|
background_image: sections/home_content_background_image
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
label:
|
label:
|
||||||
en: SEO
|
en: SEO
|
||||||
fr: Référencement
|
fr: Référencement
|
||||||
icon: search
|
icon: search
|
||||||
sections:
|
sections:
|
||||||
seo_basic_meta: sections/generic_seo_metadata
|
seo_basic_meta: sections/generic_seo_metadata
|
||||||
|
|
|
@ -1,15 +1,15 @@
|
||||||
label:
|
label:
|
||||||
en: Analytics
|
en: Analytics
|
||||||
fr: Audience
|
fr: Audience
|
||||||
icon: chart
|
icon: chart
|
||||||
columns:
|
columns:
|
||||||
- width: 1/4
|
- width: 1/4
|
||||||
sticky: true
|
sticky: true
|
||||||
sections:
|
sections:
|
||||||
sidebar:
|
sidebar:
|
||||||
type: matomo-sidebar
|
type: matomo-sidebar
|
||||||
link: false
|
link: false
|
||||||
- width: 3/4
|
- width: 3/4
|
||||||
sections:
|
sections:
|
||||||
main:
|
main:
|
||||||
type: matomo-main
|
type: matomo-main
|
||||||
|
|
|
@ -1,12 +1,12 @@
|
||||||
label:
|
label:
|
||||||
en: Website
|
en: Website
|
||||||
fr: Site web
|
fr: Site web
|
||||||
icon: home
|
icon: home
|
||||||
columns:
|
columns:
|
||||||
- width: 1/4
|
- width: 1/4
|
||||||
sticky: true
|
sticky: true
|
||||||
sections:
|
sections:
|
||||||
pages: sections/site_content_pages
|
pages: sections/site_content_pages
|
||||||
- width: 3/4
|
- width: 3/4
|
||||||
sections:
|
sections:
|
||||||
galleries: sections/site_content_galleries
|
galleries: sections/site_content_galleries
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
label: Informations
|
label: Informations
|
||||||
icon: info
|
icon: info
|
||||||
sections:
|
sections:
|
||||||
seo_favicon: sections/site_informations_favicon
|
seo_favicon: sections/site_informations_favicon
|
||||||
seo_informations: sections/site_informations_contact
|
seo_informations: sections/site_informations_contact
|
||||||
|
|
|
@ -1,20 +1,18 @@
|
||||||
title:
|
title:
|
||||||
en: Administrator
|
en: Administrator
|
||||||
fr: Administrateur·ice
|
fr: Administrateur·ice
|
||||||
|
|
||||||
description:
|
description:
|
||||||
en: The Administrator has all rights
|
en: The Administrator has all rights
|
||||||
fr: L'Administrateur·ice dispose de tous les droits
|
fr: L'Administrateur·ice dispose de tous les droits
|
||||||
|
|
||||||
sections:
|
sections:
|
||||||
info:
|
info:
|
||||||
headline:
|
headline:
|
||||||
en: Website
|
en: Website
|
||||||
fr: Site internet
|
fr: Site internet
|
||||||
theme: none
|
theme: none
|
||||||
width: 1/2
|
width: 1/2
|
||||||
text:
|
text:
|
||||||
en: |
|
en: |
|
||||||
(link: https://paulnicoue.com text: paulnicoue.com target: _blank)
|
(link: https://paulnicoue.com text: paulnicoue.com target: _blank)
|
||||||
fr: |
|
fr: |
|
||||||
(link: https://www.paulnicoue.com text: paulnicoue.com target: _blank)
|
(link: https://www.paulnicoue.com text: paulnicoue.com target: _blank)
|
||||||
|
|
|
@ -1,31 +1,29 @@
|
||||||
title:
|
title:
|
||||||
en: Editor
|
en: Editor
|
||||||
fr: Éditeur·ice
|
fr: Éditeur·ice
|
||||||
|
|
||||||
description:
|
description:
|
||||||
en: The Editor can create and edit pages
|
en: The Editor can create and edit pages
|
||||||
fr: L'éditeur·ice peut créer et modifier des pages
|
fr: L'éditeur·ice peut créer et modifier des pages
|
||||||
|
|
||||||
permissions:
|
permissions:
|
||||||
access:
|
access:
|
||||||
settings: false
|
settings: false
|
||||||
languages:
|
languages:
|
||||||
create: false
|
create: false
|
||||||
delete: false
|
delete: false
|
||||||
site:
|
site:
|
||||||
changeTitle: false
|
changeTitle: false
|
||||||
user:
|
user:
|
||||||
changeRole: false
|
changeRole: false
|
||||||
delete: false
|
delete: false
|
||||||
users:
|
users:
|
||||||
changeEmail: false
|
changeEmail: false
|
||||||
changeLanguage: false
|
changeLanguage: false
|
||||||
changeName: false
|
changeName: false
|
||||||
changePassword: false
|
changePassword: false
|
||||||
changeRole: false
|
changeRole: false
|
||||||
create: false
|
create: false
|
||||||
delete: false
|
delete: false
|
||||||
update: false
|
update: false
|
||||||
|
|
||||||
sections:
|
sections:
|
||||||
info: false
|
info: false
|
||||||
|
|
|
@ -45,7 +45,7 @@ return [
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
// Thumbs
|
// Thumbnails and srcsets presets
|
||||||
'thumbs' => [
|
'thumbs' => [
|
||||||
'srcsets' => [
|
'srcsets' => [
|
||||||
'default' => [500, 1000, 1500]
|
'default' => [500, 1000, 1500]
|
||||||
|
|
16
site/templates/about.twig
Normal file
16
site/templates/about.twig
Normal file
|
@ -0,0 +1,16 @@
|
||||||
|
{% extends "base.twig" %}
|
||||||
|
|
||||||
|
{% block main %}
|
||||||
|
<main>
|
||||||
|
|
||||||
|
<section class="about-section">
|
||||||
|
|
||||||
|
<article class="about">
|
||||||
|
<h2 class="about__title">{{ page.title }}</h2>
|
||||||
|
<div class="about__presentation">{{ page.text.kirbytext|raw }}</div>
|
||||||
|
</article>
|
||||||
|
|
||||||
|
</section>
|
||||||
|
|
||||||
|
</main>
|
||||||
|
{% endblock %}
|
|
@ -11,7 +11,7 @@
|
||||||
<link rel="icon" type="image/png" href="{{ site.favicon }}" />
|
<link rel="icon" type="image/png" href="{{ site.favicon }}" />
|
||||||
|
|
||||||
{% block stylesheets %}
|
{% block stylesheets %}
|
||||||
<link rel="stylesheet" href="{{ asset('assets/css/minireset.min.css') }}"/>
|
<link rel="stylesheet" href="https://cdn.plyr.io/3.6.12/plyr.css" />
|
||||||
<link rel="stylesheet" href="{{ asset('assets/css/style.min.css') }}"/>
|
<link rel="stylesheet" href="{{ asset('assets/css/style.min.css') }}"/>
|
||||||
{% endblock %}
|
{% endblock %}
|
||||||
|
|
||||||
|
@ -25,7 +25,7 @@
|
||||||
<div class="header-bar">
|
<div class="header-bar">
|
||||||
|
|
||||||
<div class="header-bar__logo" aria-hidden="true">
|
<div class="header-bar__logo" aria-hidden="true">
|
||||||
<a class="header-bar__logo-link" href="{{ site.homePage.url }}" target="_self" aria-label="Accéder à la page d'accueil de {{ site.title }}" tabindex="-1">
|
<a class="header-bar__logo-link" href="{{ site.homePage.url }}" target="_self" aria-label="Accéder à la page d'accueil de {{ site.title }}">
|
||||||
<h1 class="header-bar__logo-title">{{ site.title }}</h1>
|
<h1 class="header-bar__logo-title">{{ site.title }}</h1>
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
|
@ -73,6 +73,7 @@
|
||||||
|
|
||||||
{% block javascripts %}
|
{% block javascripts %}
|
||||||
<script src="https://cdn.jsdelivr.net/npm/circletype@2.3.0/dist/circletype.min.js"></script>
|
<script src="https://cdn.jsdelivr.net/npm/circletype@2.3.0/dist/circletype.min.js"></script>
|
||||||
|
<script src="https://cdn.plyr.io/3.6.12/plyr.polyfilled.js"></script>
|
||||||
<script src="{{ asset('assets/js/app.js') }}"></script>
|
<script src="{{ asset('assets/js/app.js') }}"></script>
|
||||||
{% endblock %}
|
{% endblock %}
|
||||||
|
|
||||||
|
|
21
site/templates/error.twig
Normal file
21
site/templates/error.twig
Normal file
|
@ -0,0 +1,21 @@
|
||||||
|
{% extends "base.twig" %}
|
||||||
|
|
||||||
|
{% block main %}
|
||||||
|
<main>
|
||||||
|
|
||||||
|
<section class="error-section">
|
||||||
|
<article class="error">
|
||||||
|
<h2 class="error__title">Erreur {{ kirby.response.code }}</h2>
|
||||||
|
{% if kirby.response.code == 404 %}
|
||||||
|
<p class="error__message">La page que vous demandez n'existe pas...</p>
|
||||||
|
{% else %}
|
||||||
|
<p class="error__message">Une erreur est survenue...</p>
|
||||||
|
{% endif %}
|
||||||
|
<div class="error__button">
|
||||||
|
<a href="{{ site.homePage.url }}" target="_self">Retourner à la page d'accueil</a>
|
||||||
|
</div>
|
||||||
|
</article>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
</main>
|
||||||
|
{% endblock %}
|
29
site/templates/gallery.twig
Normal file
29
site/templates/gallery.twig
Normal file
|
@ -0,0 +1,29 @@
|
||||||
|
{% extends "base.twig" %}
|
||||||
|
|
||||||
|
{% block main %}
|
||||||
|
<main>
|
||||||
|
|
||||||
|
<section class="gallery-section">
|
||||||
|
|
||||||
|
<article class="gallery">
|
||||||
|
<h2 class="gallery__title">{{ page.title }}</h2>
|
||||||
|
{% if page.text.isNotEmpty %}
|
||||||
|
<div class="gallery__introduction">{{ page.text.kirbytext|raw }}</div>
|
||||||
|
{% endif %}
|
||||||
|
<div class="gallery__artworks">
|
||||||
|
{% for file in page.files %}
|
||||||
|
{% if file.type == 'image' %}
|
||||||
|
<figure class="gallery__image">
|
||||||
|
<img src="{{ file.url }}" srcset="{{ file.srcset() }}" alt="{{ file.alt_text }}">
|
||||||
|
<figcaption>{{ file.caption }}</figcaption>
|
||||||
|
</figure>
|
||||||
|
{% elseif file.type == 'video' %}
|
||||||
|
{% endif %}
|
||||||
|
{% endfor %}
|
||||||
|
</div>
|
||||||
|
</article>
|
||||||
|
|
||||||
|
</section>
|
||||||
|
|
||||||
|
</main>
|
||||||
|
{% endblock %}
|
|
@ -2,6 +2,7 @@
|
||||||
|
|
||||||
{% block main %}
|
{% block main %}
|
||||||
<main>
|
<main>
|
||||||
|
|
||||||
<section class="home-section">
|
<section class="home-section">
|
||||||
|
|
||||||
<div class="home">
|
<div class="home">
|
||||||
|
@ -23,5 +24,6 @@
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
</main>
|
</main>
|
||||||
{% endblock %}
|
{% endblock %}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue