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 #} |
{# SPDX-License-Identifier: EUPL-1.2 #} |
||||||
|
|
||||||
{% from "includes/markdown_by_paragraph.twig" import markdown_by_paragraph %} |
{% from "includes/macros/markdown_by_paragraph.twig" import markdown_by_paragraph %} |
||||||
{% from "includes/actions.twig" import actions %} |
{% from "includes/macros/actions.twig" import actions %} |
||||||
{% from "includes/video.twig" import video %} |
{% from "includes/macros/video.twig" import video %} |
||||||
<!-- Content Section--> |
<!-- Content Section--> |
||||||
<section class="page-section content" id="content"> |
<section class="page-section content" id="content"> |
||||||
<div class="container"> |
<div class="container"> |
@ -1,7 +1,7 @@ |
|||||||
{# SPDX-License-Identifier: EUPL-1.2 #} |
{# SPDX-License-Identifier: EUPL-1.2 #} |
||||||
|
|
||||||
{% from "includes/markdown_by_paragraph.twig" import markdown_by_paragraph %} |
{% from "includes/macros/markdown_by_paragraph.twig" import markdown_by_paragraph %} |
||||||
{% from "includes/actions.twig" import actions %} |
{% from "includes/macros/actions.twig" import actions %} |
||||||
{% if not (index.location.disabled and index.social.disabled and index.footer.disabled) %} |
{% if not (index.location.disabled and index.social.disabled and index.footer.disabled) %} |
||||||
<!-- Footer--> |
<!-- Footer--> |
||||||
<footer role="contentinfo"> |
<footer role="contentinfo"> |
@ -1,8 +1,8 @@ |
|||||||
{# SPDX-License-Identifier: EUPL-1.2 #} |
{# SPDX-License-Identifier: EUPL-1.2 #} |
||||||
|
|
||||||
{% from "includes/markdown_by_paragraph.twig" import markdown_by_paragraph %} |
{% from "includes/macros/markdown_by_paragraph.twig" import markdown_by_paragraph %} |
||||||
{% from "includes/actions.twig" import actions %} |
{% from "includes/macros/actions.twig" import actions %} |
||||||
{% from "includes/video.twig" import video %} |
{% from "includes/macros/video.twig" import video %} |
||||||
<section id="hero" class="layout-maxed bg-blue"> |
<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="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"> |
<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