parent
69b8e21f94
commit
9dd29d0441
@ -0,0 +1,10 @@ |
||||
{#! |
||||
# SeaCMS 1.0.0-alpha.2 (https://git.defis.info/SeaCMS/seacms) |
||||
# Licensed under EUPL (https://git.defis.info/SeaCMS/seacms/src/branch/master/LICENCE) |
||||
#} |
||||
|
||||
{% extends "index.twig" %} |
||||
|
||||
{% block content %} |
||||
{% include "includes/_home_content.twig" %} |
||||
{% endblock content %} |
@ -1,8 +1,8 @@ |
||||
{# SPDX-License-Identifier: EUPL-1.2 #} |
||||
|
||||
{% from "includes/markdown_by_paragraph.twig" import markdown_by_paragraph %} |
||||
{% from "includes/actions.twig" import actions %} |
||||
{% from "includes/video.twig" import video %} |
||||
{% from "includes/macros/markdown_by_paragraph.twig" import markdown_by_paragraph %} |
||||
{% from "includes/macros/actions.twig" import actions %} |
||||
{% from "includes/macros/video.twig" import video %} |
||||
<!-- Content Section--> |
||||
<section class="page-section content" id="content"> |
||||
<div class="container"> |
@ -1,7 +1,7 @@ |
||||
{# SPDX-License-Identifier: EUPL-1.2 #} |
||||
|
||||
{% from "includes/markdown_by_paragraph.twig" import markdown_by_paragraph %} |
||||
{% from "includes/actions.twig" import actions %} |
||||
{% from "includes/macros/markdown_by_paragraph.twig" import markdown_by_paragraph %} |
||||
{% from "includes/macros/actions.twig" import actions %} |
||||
{% if not (index.location.disabled and index.social.disabled and index.footer.disabled) %} |
||||
<!-- Footer--> |
||||
<footer role="contentinfo"> |
@ -1,8 +1,8 @@ |
||||
{# SPDX-License-Identifier: EUPL-1.2 #} |
||||
|
||||
{% from "includes/markdown_by_paragraph.twig" import markdown_by_paragraph %} |
||||
{% from "includes/actions.twig" import actions %} |
||||
{% from "includes/video.twig" import video %} |
||||
{% from "includes/macros/markdown_by_paragraph.twig" import markdown_by_paragraph %} |
||||
{% from "includes/macros/actions.twig" import actions %} |
||||
{% from "includes/macros/video.twig" import video %} |
||||
<section id="hero" class="layout-maxed bg-blue"> |
||||
<div class="layout-hero bg-section bg-overlay bg-gradient sm:py-36 py-8" <?php bg('bg-hero')?>> |
||||
<div class="hero-content grid md:grid-cols-2 flex flex-wrap sm:my-36 my-8 sm:py-36 py-8"> |
@ -1,23 +0,0 @@ |
||||
{# SPDX-License-Identifier: EUPL-1.2 #} |
||||
|
||||
{% from "includes/markdown_by_paragraph.twig" import markdown_by_paragraph %} |
||||
{% from "includes/actions.twig" import actions %} |
||||
<!-- About Section--> |
||||
<section class="page-section bg-primary text-white mb-0" id="about"> |
||||
<div class="container"> |
||||
<!-- About Section Heading--> |
||||
<h2 class="page-section-heading text-center text-uppercase text-white">{{ index.about.title ? index.about.title : "About" }}</h2> |
||||
<!-- Icon Divider--> |
||||
<div class="divider-custom divider-light"> |
||||
<div class="divider-custom-line"></div> |
||||
<div class="divider-custom-icon"><i class="fas fa-{{ index.about.divider ? index.about.divider : 'star' }}"></i></div> |
||||
<div class="divider-custom-line"></div> |
||||
</div> |
||||
<!-- About Section Content--> |
||||
<div class="row"> |
||||
{{ markdown_by_paragraph(index.about.content ? index.about.content : config.theme_config.demo.about.content, "about") }} |
||||
</div> |
||||
<!-- About Section Buttons--> |
||||
{{ actions(index.about.actions ? index.about.actions : not index.about.content ? config.theme_config.demo.about.actions, "about") }} |
||||
</div> |
||||
</section> |
@ -1,107 +0,0 @@ |
||||
{# SPDX-License-Identifier: EUPL-1.2 #} |
||||
|
||||
<!-- Contact Section--> |
||||
<section class="page-section" id="contact"> |
||||
<div class="container"> |
||||
<!-- Contact Section Heading--> |
||||
<h2 class="page-section-heading text-center text-uppercase text-secondary mb-0">{{ index.contact.title ? index.contact.title : "Contact Me" }}</h2> |
||||
<!-- Icon Divider--> |
||||
<div class="divider-custom"> |
||||
<div class="divider-custom-line"></div> |
||||
<div class="divider-custom-icon"><i class="fas fa-{{ index.contact.divider ? index.contact.divider : 'star' }}"></i></div> |
||||
<div class="divider-custom-line"></div> |
||||
</div> |
||||
{% if index.contact.form.enabled %} |
||||
<!-- Contact Section Form--> |
||||
<div class="row justify-content-center"> |
||||
<div class="col-lg-8 col-xl-7"> |
||||
<form id="contactForm" class="needs-validation" {% if index.contact.form.action %} action="{{ index.contact.form.action|url }}" {% endif %} {% if index.contact.form.method %} method="{{ index.contact.form.method }}" {% endif %} novalidate> |
||||
<!-- Name input--> |
||||
<div class="form-floating mb-3"> |
||||
<input class="form-control" id="name" name="name" type="text" placeholder="Enter your name..." required /> |
||||
<label for="name">Full name</label> |
||||
<div class="invalid-feedback">A name is required.</div> |
||||
</div> |
||||
<!-- Email address input--> |
||||
<div class="form-floating mb-3"> |
||||
<input class="form-control" id="email" name="email" type="email" placeholder="name@example.com" required /> |
||||
<label for="email">Email address</label> |
||||
<div class="invalid-feedback">An email is required.</div> |
||||
<div class="invalid-feedback">Email is not valid.</div> |
||||
</div> |
||||
<!-- Phone number input--> |
||||
<div class="form-floating mb-3"> |
||||
<input class="form-control" id="phone" name="phone" type="tel" placeholder="(123) 456-7890" required /> |
||||
<label for="phone">Phone number</label> |
||||
<div class="invalid-feedback">A phone number is required.</div> |
||||
</div> |
||||
<!-- Message input--> |
||||
<div class="form-floating mb-3"> |
||||
<textarea class="form-control" id="message" name="message" placeholder="Enter your message here..." style="height: 10rem" required></textarea> |
||||
<label for="message">Message</label> |
||||
<div class="invalid-feedback">A message is required.</div> |
||||
</div> |
||||
<!-- Submit success message--> |
||||
<!----> |
||||
<!-- This is what your users will see when the form--> |
||||
<!-- has successfully submitted--> |
||||
<div class="d-none" id="submitSuccessMessage"> |
||||
<div class="text-center mb-3"> |
||||
<div class="fw-bolder">Form submission successful!</div> |
||||
</div> |
||||
</div> |
||||
<!-- Submit error message--> |
||||
<!----> |
||||
<!-- This is what your users will see when there is--> |
||||
<!-- an error submitting the form--> |
||||
<div class="d-none" id="submitErrorMessage"><div class="text-center text-danger mb-3">Error sending message!</div></div> |
||||
<!-- Submit Button--> |
||||
<button class="btn btn-primary btn-xl" id="submitButton" type="submit">Send</button> |
||||
</form> |
||||
</div> |
||||
</div> |
||||
{% endif %} |
||||
{% if index.contact.items or not index.contact.form.enabled %} |
||||
{% if index.contact.form.enabled %} |
||||
<!-- Contact Subsection Heading--> |
||||
<h3 class="page-section-heading text-center text-uppercase text-secondary mb-0 mt-5 fs-2">{{ index.contact.subtitle ? index.contact.title : "Or reach me by" }}</h3> |
||||
<!-- Icon Divider--> |
||||
<div class="divider-custom"> |
||||
<div class="divider-custom-line"></div> |
||||
<div class="divider-custom-icon"><i class="fas fa-{{ index.contact.subdivider ? index.contact.subdivider : 'star' }}"></i></div> |
||||
<div class="divider-custom-line"></div> |
||||
</div> |
||||
{% endif %} |
||||
|
||||
<!-- Contact Section Content--> |
||||
<div class="row justify-content-center"> |
||||
{% for item in index.contact.items ? index.contact.items : config.theme_config.demo.contact.items %} |
||||
{% set classes = ["col-md-6", "col-lg-4"] %} |
||||
{% if not loop.last %} |
||||
{% set classes = classes|merge(["mb-5"]) %} |
||||
{% if loop.revindex <= (loop.length - 1) % 3 + 1 %} |
||||
{% if loop.revindex == 3 %} |
||||
{% set classes = classes|merge(["mb-lg-0"]) %} |
||||
{% elseif loop.revindex == 2 %} |
||||
{% if loop.index == 2 %} |
||||
{% set classes = classes|merge(["mb-lg-0"]) %} |
||||
{% else %} |
||||
{% set classes = classes|merge(["mb-md-0"]) %} |
||||
{% endif %} |
||||
{% endif %} |
||||
{% elseif loop.revindex == 2 and loop.index == 3 %} |
||||
{% set classes = classes|merge(["mb-md-0","mb-lg-5"]) %} |
||||
{% endif %} |
||||
{% endif %} |
||||
<div class="{{ classes|join(" ") }}"> |
||||
<div class="d-flex flex-column align-items-center"> |
||||
<div class="icon-contact mb-3"><i class="{{ item.brands ? "fab" : "fas" }} fa-{{ item.icon }}"></i></div> |
||||
<div class="text-muted">{{ item.title }}</div> |
||||
{% if item.link %}<a href="{{ item.link|url }}"{% else %}<div{% endif %} class="lead font-weight-bold">{{ item.content }}{{ item.link ? "</a>" : "</div>" }} |
||||
</div> |
||||
</div> |
||||
{% endfor %} |
||||
</div> |
||||
{% endif %} |
||||
</div> |
||||
</section> |
@ -1,53 +0,0 @@ |
||||
{# SPDX-License-Identifier: EUPL-1.2 #} |
||||
|
||||
{% from "includes/video.twig" import video %} |
||||
<!-- Portfolio Section--> |
||||
<section class="page-section portfolio" id="portfolio"> |
||||
<div class="container"> |
||||
<!-- Portfolio Section Heading--> |
||||
<h2 class="page-section-heading text-center text-uppercase text-secondary mb-0">{{ index.portfolio.title ? index.portfolio.title : "Portfolio" }}</h2> |
||||
<!-- Icon Divider--> |
||||
<div class="divider-custom"> |
||||
<div class="divider-custom-line"></div> |
||||
<div class="divider-custom-icon"><i class="fas fa-{{ index.portfolio.divider ? index.portfolio.divider : 'star' }}"></i></div> |
||||
<div class="divider-custom-line"></div> |
||||
</div> |
||||
<!-- Portfolio Grid Items--> |
||||
<div class="row justify-content-center"> |
||||
{% for portfolio_item in portfolio_items %} |
||||
{% set classes = ["col-md-6", "col-lg-4"] %} |
||||
{% if not loop.last %} |
||||
{% set classes = classes|merge(["mb-5"]) %} |
||||
{% if loop.revindex <= (loop.length - 1) % 3 + 1 %} |
||||
{% if loop.revindex == 3 %} |
||||
{% set classes = classes|merge(["mb-lg-0"]) %} |
||||
{% elseif loop.revindex == 2 %} |
||||
{% if loop.index == 2 %} |
||||
{% set classes = classes|merge(["mb-lg-0"]) %} |
||||
{% else %} |
||||
{% set classes = classes|merge(["mb-md-0"]) %} |
||||
{% endif %} |
||||
{% endif %} |
||||
{% elseif loop.revindex == 2 and loop.index == 3 %} |
||||
{% set classes = classes|merge(["mb-md-0","mb-lg-5"]) %} |
||||
{% endif %} |
||||
{% endif %} |
||||
|
||||
<!-- {{ " Portfolio Item " ~ loop.index ~ " " }} --> |
||||
<div class="{{ classes|join(" ") }}"> |
||||
<div class="portfolio-item mx-auto" data-bs-toggle="modal" data-bs-target="#portfolioModal{{ loop.index }}"> |
||||
<div class="portfolio-item-caption d-flex align-items-center justify-content-center h-100 w-100"> |
||||
<div class="portfolio-item-caption-content text-center text-white"><i class="fas fa-plus fa-3x"></i></div> |
||||
</div> |
||||
{% if portfolio_item.meta.thumbnail_video %} |
||||
{{ video(portfolio_item.meta.video, portfolio_item.meta.thumbnail|url ?: portfolio_item.meta.image|url, "portfolio") }} |
||||
{% else %} |
||||
<img class="img-fluid d-block mx-auto" src="{{ portfolio_item.meta.thumbnail ? portfolio_item.meta.thumbnail|url : portfolio_item.meta.image ? portfolio_item.meta.image|url : random(config.theme_config.demo.portfolio_items).meta.image|url }}" alt="{{ portfolio_item.meta.thumbnail_alt ? portfolio_item.meta.thumbnail_alt : portfolio_item.meta.title }}" /> |
||||
{% endif %} |
||||
|
||||
</div> |
||||
</div> |
||||
{% endfor %} |
||||
</div> |
||||
</div> |
||||
</section> |
@ -1,41 +0,0 @@ |
||||
{# SPDX-License-Identifier: EUPL-1.2 #} |
||||
|
||||
<!-- Portfolio Modals--> |
||||
{% from "includes/actions.twig" import actions %} |
||||
{% from "includes/video.twig" import video %} |
||||
{% for portfolio_item in portfolio_items %} |
||||
<!--{{ " Portfolio Modal " ~ loop.index ~ " " }}--> |
||||
<div class="portfolio-modal modal fade" id="portfolioModal{{ loop.index }}" tabindex="-1" aria-labelledby="portfolioModal{{ loop.index }}" aria-hidden="true"> |
||||
<div class="modal-dialog modal-xl"> |
||||
<div class="modal-content"> |
||||
<div class="modal-header border-0"><button class="btn-close" type="button" data-bs-dismiss="modal" aria-label="Close"></button></div> |
||||
<div class="modal-body text-center pb-5"> |
||||
<div class="container"> |
||||
<div class="row justify-content-center"> |
||||
<div class="col-lg-8"> |
||||
<!-- Portfolio Modal - Title--> |
||||
<h2 class="portfolio-modal-title text-secondary text-uppercase mb-0">{{ portfolio_item.meta.title ? portfolio_item.meta.title : portfolio_item.id }}</h2> |
||||
<!-- Icon Divider--> |
||||
<div class="divider-custom"> |
||||
<div class="divider-custom-line"></div> |
||||
<div class="divider-custom-icon"><i class="fas fa-{{portfolio_item.meta.divider ? portfolio_item.meta.divider : 'star' }}"></i></div> |
||||
<div class="divider-custom-line"></div> |
||||
</div> |
||||
{% if portfolio_item.meta.video %} |
||||
<!-- Portfolio Modal - Video--> |
||||
{{ video(portfolio_item.meta.video, portfolio_item.meta.image, "portfolio_modal", loop.index) }} |
||||
{% elseif portfolio_item.meta.image %} |
||||
<!-- Portfolio Modal - Image--> |
||||
<img class="img-fluid rounded mb-5 d-block mx-auto" src="{{ portfolio_item.meta.image|url }}" alt="{{ portfolio_item.meta.image_alt }}" /> |
||||
{% endif %} |
||||
<!-- Portfolio Modal - Text--> |
||||
{{ portfolio_item.meta.demo_content ? portfolio_item.meta.demo_content|markdown : portfolio_item.id|content }} |
||||
{{ actions(portfolio_item.meta.actions, "portfolio", index.portfolio.disable_close_buttons ? false : true) }} |
||||
</div> |
||||
</div> |
||||
</div> |
||||
</div> |
||||
</div> |
||||
</div> |
||||
</div> |
||||
{% endfor %} |
@ -1,23 +0,0 @@ |
||||
{# SPDX-License-Identifier: EUPL-1.2 #} |
||||
|
||||
{% set pages_with_error = [] %} |
||||
{% for page in pages(depthOffset=-1,depth=null) %} |
||||
{% if page.meta.YAML_ParseError %} |
||||
{% set pages_with_error = pages_with_error|merge([{"id": page.id, "error": page.meta.YAML_ParseError}]) %} |
||||
{% endif %} |
||||
{% endfor %} |
||||
|
||||
{% for page in pages_with_error %} |
||||
{% if loop.first %} |
||||
<div class="fixed-top mt-5"> |
||||
<div class="container mt-5 pt-3"> |
||||
{% endif %} |
||||
<div class="alert alert-danger"> |
||||
<h1 class="h6"><i class="fas fa-exclamation-triangle me-2"></i><strong>YAML Header Error</strong> in <a href="{{ page.id }}">{{ page.id }}</a>:</h1> |
||||
<p class="mb-0">{{ page.error }}</p> |
||||
</div> |
||||
{% if loop.last %} |
||||
</div> |
||||
</div> |
||||
{% endif %} |
||||
{% endfor %} |
Loading…
Reference in new issue