web content

This commit is contained in:
root 2024-10-07 05:13:58 +02:00
parent 4bbf9ce509
commit 6f693007bd
7 changed files with 350 additions and 346 deletions

View File

@ -0,0 +1,114 @@
module intro
import freeflowuniverse.crystallib.core.playbook
pub struct Item {
pub mut:
title string
subtitle string
description string
background_image string
button_primary Button
button_secondary Button
}
pub struct Button {
pub mut:
text string
url string
}
pub struct Data {
pub mut:
items []Item
}
const example_heroscript="
!!intro1.new name:'myintro'
!!intro1.myintro_add
title: 'Sepia'
description: '
Made for photographers, photo studios, design agencies.
Create your own unique and beautiful photography website!
'
subtitle: 'Photography Portfolio Theme'
background_image: 'assets/img/intro/intro-10.jpg'
button_primary_text: 'Buy It Now!'
button_primary_url: 'https://example.com/learn-more'
button_secondary_text: 'Discover More'
button_secondary_url: 'albums-grid-fluid-2.html'
!!intro1.myintro_add
title: 'Sepia 2'
description: 'Made for photographers 2, photo studios, design agencies.<br>Create your own unique and beautiful photography website!'
subtitle: 'Photography Portfolio Theme'
background_image: 'assets/img/intro/intro-10.jpg'
button_primary_text: 'Buy It Now!'
button_primary_url: 'https://example.com/learn-more'
button_secondary_text: 'Discover More'
button_secondary_url: 'albums-grid-fluid-2.html'
"
@[params]
pub struct RenderArgs{
pub mut:
text string
args map[string]string
defaults bool
}
//will have all the results, key is in this case intro1.${name}
//this allows us to feed e.g. markdown to all renderers and then we get the data filled in what is found on page
pub fn render(args_ RenderArgs) !map[string]string{
mut args:=args_
mut result:=map[string]string{}
if args.text =="" && args.defaults{
args.text = example_heroscript
}
mut plbook := playbook.new(text: args.text)!
mut data := Data{}
actions0 := plbook.find(filter: 'intro1.new')!
for action0 in actions0{
mut p0 := action0.params
name := p0.get_default('name','default')!
key:="intro1.${name}"
// Process add_item actions
actions := plbook.find(filter: 'intro1.${name}_add')!
for action in actions {
mut p := action.params
item := Item{
title: p.get('title')!
subtitle: p.get('subtitle')!
description: p.get('description')!.replace("\n","<br>")
background_image: p.get('background_image')!
button_primary: Button{
text: p.get('button_primary_text')!
url: p.get('button_primary_url')!
}
button_secondary: Button{
text: p.get('button_secondary_text')!
url: p.get('button_secondary_url')!
}
}
data.items << item
}
result[key]=$tmpl("templates/main.html")
}
return result
}

View File

@ -0,0 +1,85 @@
<!-- Begin intro section -->
<section id="tt-intro" class="slideshow-intro">
<div class="tt-intro-inner"> <!-- add/remove class "tt-wrap" to enable/disable element boxed layout (class "tt-boxed" is required in <body> tag! ) -->
<div class="gl-carousel-wrap no-padding"> <!-- Optional: use class "no-padding" to disable paddings -->
<!-- Begin content carousel (https://owlcarousel2.github.io/OwlCarousel2/)
====================================================================
* Use class "nav-outside" for outside nav (requires boxed layout).
* Use class "nav-outside-top" for outside top nav (requires enough space at the top of the carousel).
* Use class "nav-bottom-right" for bottom right nav.
* Use class "nav-rounded" for rounded nav.
* Use class "nav-light" to enable nav light style.
* Use class "dots-outside" for outside dots (requires enough space at the bottom of the carousel).
* Use class "dots-left", "dots-right" or "dots-center-right" to align dots.
* Use class "dots-rounded" for rounded dots.
* Use class "owl-mousewheel" to enable mousewheel support.
* Use class "cursor-grab" to enable cursor grab icon (no effect on links!).
* Use class "cc-hover-light", "cc-hover-dark" or "cc-hover-zoom" to enable carousel items hover effect.
* Use class "cc-height-1", "cc-height-2", "cc-height-3", "cc-height-4", "cc-height-5", "cc-height-6" or "cc-height-full" to set carousel height (do not use with data-autoheight="true"!!!).
* Use class "cc-height-m" to set full height for small screens (do not use with data-autoheight="true"!!!).
================================================================
* Available carousel data attributes:
data-items="5".......................(items visible on desktop)
data-tablet-landscape="4"............(items visible on mobiles)
data-tablet-portrait="3".............(items visible on mobiles)
data-mobile-landscape="2"............(items visible on tablets)
data-mobile-portrait="1".............(items visible on tablets)
data-loop="true".....................(true/false)
data-margin="10".....................(space between items)
data-center="true"...................(true/false)
data-start-position="0"..............(item start position)
data-animate-in="fadeIn".............(fade-in animation)
data-animate-out="fadeOut"...........(fade-out animation)
data-mouse-drag="false"..............(true/false)
data-touch-drag="false"..............(true/false)
data-autoheight="true"...............(true/false)
data-autoplay="true".................(true/false)
data-autoplay-timeout="5000".........(milliseconds)
data-autoplay-hover-pause="true".....(true/false)
data-autoplay-speed="800"............(milliseconds)
data-drag-end-speed="800"............(milliseconds)
data-nav="true"......................(true/false)
data-nav-speed="800".................(milliseconds)
data-dots="false"....................(true/false)
data-dots-speed="800"................(milliseconds)
-->
<div class="owl-carousel cc-height-5 cursor-grab dots-right bg-dark" data-items="1" data-loop="true" data-nav="true" data-nav-speed="500" data-dots-speed="500" data-autoplay="true" data-autoplay-timeout="8000" data-autoplay-speed="500" data-autoplay-hover-pause="true">
@for item in data.items
<!-- Begin carousel item -->
<div class="cc-item">
<!-- Element cover -->
<span class="cover bg-transparent-3-dark"></span>
<!-- cc image -->
<div class="cc-image bg-image" style="background-image: url(@{item.background_image}); background-position: 50% 50%;"></div>
<!-- Begin intro caption
=========================
* Position classes: "top-left", "top-center", "top-right", "center-left", "center", "center-right", "bottom-left", "bottom-center", "bottom-right".
* Size classes: "intro-caption-xs", "intro-caption-sm", "intro-caption-lg", "intro-caption-xlg", "intro-caption-xxlg".
-->
<div class="intro-caption caption-animate intro-caption-xxlg center-left">
<h1 class="intro-title">@{item.title}</h1>
<h2 class="intro-subtitle">@{item.subtitle}</h2>
<p class="intro-description max-width-650">
@{item.description}
</p>
<div class="margin-top-30">
<a href="@{item.button_primary.url}" class="btn btn-primary margin-top-5 margin-right-10" target="_blank">@{item.button_primary.text}</a>
<a href="@{item.button_secondary.url}" class="btn btn-white-bordered margin-top-5">@{item.button_secondary.text}</a>
</div>
</div>
<!-- End intro caption -->
</div>
<!-- End carousel item -->
@end
</div>
<!-- End content carousel -->
</div> <!-- /.gl-carousel-wrap -->
</div> <!-- /.tt-intro-inner -->
</section>
<!-- End intro section -->

View File

@ -1,226 +1,10 @@
@include 'header' @include 'partials/header'
<!-- *************************************
*********** Begin body content ***********
************************************** -->
<div id="body-content"> <div id="body-content">
<!-- ========================== @{content["intro1.myintro"]}
///// Begin intro section /////
=========================== -->
<section id="tt-intro" class="slideshow-intro">
<div class="tt-intro-inner"> <!-- add/remove class "tt-wrap" to enable/disable element boxed layout (class "tt-boxed" is required in <body> tag! ) -->
<div class="gl-carousel-wrap no-padding"> <!-- Optional: use class "no-padding" to disable paddings -->
<!-- Begin content carousel (https://owlcarousel2.github.io/OwlCarousel2/)
====================================================================
* Use class "nav-outside" for outside nav (requires boxed layout).
* Use class "nav-outside-top" for outside top nav (requires enough space at the top of the carousel).
* Use class "nav-bottom-right" for bottom right nav.
* Use class "nav-rounded" for rounded nav.
* Use class "nav-light" to enable nav light style.
* Use class "dots-outside" for outside dots (requires enough space at the bottom of the carousel).
* Use class "dots-left", "dots-right" or "dots-center-right" to align dots.
* Use class "dots-rounded" for rounded dots.
* Use class "owl-mousewheel" to enable mousewheel support.
* Use class "cursor-grab" to enable cursor grab icon (no effect on links!).
* Use class "cc-hover-light", "cc-hover-dark" or "cc-hover-zoom" to enable carousel items hover effect.
* Use class "cc-height-1", "cc-height-2", "cc-height-3", "cc-height-4", "cc-height-5", "cc-height-6" or "cc-height-full" to set carousel height (do not use with data-autoheight="true"!!!).
* Use class "cc-height-m" to set full height for small screens (do not use with data-autoheight="true"!!!).
================================================================
* Available carousel data attributes:
data-items="5".......................(items visible on desktop)
data-tablet-landscape="4"............(items visible on mobiles)
data-tablet-portrait="3".............(items visible on mobiles)
data-mobile-landscape="2"............(items visible on tablets)
data-mobile-portrait="1".............(items visible on tablets)
data-loop="true".....................(true/false)
data-margin="10".....................(space between items)
data-center="true"...................(true/false)
data-start-position="0"..............(item start position)
data-animate-in="fadeIn".............(fade-in animation)
data-animate-out="fadeOut"...........(fade-out animation)
data-mouse-drag="false"..............(true/false)
data-touch-drag="false"..............(true/false)
data-autoheight="true"...............(true/false)
data-autoplay="true".................(true/false)
data-autoplay-timeout="5000".........(milliseconds)
data-autoplay-hover-pause="true".....(true/false)
data-autoplay-speed="800"............(milliseconds)
data-drag-end-speed="800"............(milliseconds)
data-nav="true"......................(true/false)
data-nav-speed="800".................(milliseconds)
data-dots="false"....................(true/false)
data-dots-speed="800"................(milliseconds)
-->
<div class="owl-carousel cc-height-5 cursor-grab dots-right bg-dark" data-items="1" data-loop="true" data-nav="true" data-nav-speed="500" data-dots-speed="500" data-autoplay="true" data-autoplay-timeout="8000" data-autoplay-speed="500" data-autoplay-hover-pause="true">
<!-- Begin carousel item
========================= -->
<div class="cc-item">
<!-- Element cover -->
<span class="cover bg-transparent-3-dark"></span>
<!-- cc image -->
<div class="cc-image bg-image" style="background-image: url(assets/img/intro/intro-10.jpg); background-position: 50% 50%;"></div>
<!-- Begin intro caption
=========================
* Position classes: "top-left", "top-center", "top-right", "center-left", "center", "center-right", "bottom-left", "bottom-center", "bottom-right".
* Size classes: "intro-caption-xs", "intro-caption-sm", "intro-caption-lg", "intro-caption-xlg", "intro-caption-xxlg".
-->
<div class="intro-caption caption-animate intro-caption-xxlg center-left">
<h1 class="intro-title">Sepia</h1>
<h2 class="intro-subtitle">Photography Portfolio Theme</h2>
<p class="intro-description max-width-650">
Made for photographers, photo studios, design agencies. <br>
Create your own unique and beautiful photography website!
</p>
<div class="margin-top-30">
<a href="https://themeforest.net/item/sepia-photography-portfolio-html-website-template/20195226?ref=Themetorium" class="btn btn-primary margin-top-5 margin-right-10" target="_blank">Buy It Now!</a>
<a href="albums-grid-fluid-2.html" class="btn btn-white-bordered margin-top-5">Discover More</a>
</div>
</div>
<!-- End intro caption -->
</div>
<!-- End carousel item -->
<!-- Begin carousel item
========================= -->
<div class="cc-item">
<!-- Element cover -->
<span class="cover bg-transparent-3-dark"></span>
<!-- cc image -->
<div class="cc-image bg-image" style="background-image: url(assets/img/intro/intro-11.jpg); background-position: 50% 50%;"></div>
<!-- Begin intro caption
=========================
* Position classes: "top-left", "top-center", "top-right", "center-left", "center", "center-right", "bottom-left", "bottom-center", "bottom-right".
* Size classes: "intro-caption-xs", "intro-caption-sm", "intro-caption-lg", "intro-caption-xlg", "intro-caption-xxlg".
-->
<div class="intro-caption caption-animate intro-caption-xxlg center-left">
<h1 class="intro-title">Creative</h1>
<h2 class="intro-subtitle">Photography Portfolio Theme</h2>
<p class="intro-description max-width-650">
Made for photographers, photo studios, design agencies. <br>
Create your own unique and beautiful photography website!
</p>
<div class="margin-top-30">
<a href="https://themeforest.net/item/sepia-photography-portfolio-html-website-template/20195226?ref=Themetorium" class="btn btn-primary margin-top-5 margin-right-10" target="_blank">Buy It Now!</a>
<a href="albums-grid-fluid-2.html" class="btn btn-white-bordered margin-top-5">Discover More</a>
</div>
</div>
<!-- End intro caption -->
</div>
<!-- End carousel item -->
<!-- Begin carousel item
========================= -->
<div class="cc-item">
<!-- Element cover -->
<span class="cover bg-transparent-3-dark"></span>
<!-- cc image -->
<div class="cc-image bg-image" style="background-image: url(assets/img/intro/intro-12.jpg); background-position: 50% 50%;"></div>
<!-- Begin intro caption
=========================
* Position classes: "top-left", "top-center", "top-right", "center-left", "center", "center-right", "bottom-left", "bottom-center", "bottom-right".
* Size classes: "intro-caption-xs", "intro-caption-sm", "intro-caption-lg", "intro-caption-xlg", "intro-caption-xxlg".
-->
<div class="intro-caption caption-animate intro-caption-xxlg center-left">
<h1 class="intro-title">Powerful</h1>
<h2 class="intro-subtitle">Photography Portfolio Theme</h2>
<p class="intro-description max-width-650">
Made for photographers, photo studios, design agencies. <br>
Create your own unique and beautiful photography website!
</p>
<div class="margin-top-30">
<a href="https://themeforest.net/item/sepia-photography-portfolio-html-website-template/20195226?ref=Themetorium" class="btn btn-primary margin-top-5 margin-right-10" target="_blank">Buy It Now!</a>
<a href="albums-grid-fluid-2.html" class="btn btn-white-bordered margin-top-5">Discover More</a>
</div>
</div>
<!-- End intro caption -->
</div>
<!-- End carousel item -->
<!-- Begin carousel item
========================= -->
<div class="cc-item">
<!-- Element cover -->
<span class="cover bg-transparent-3-dark"></span>
<!-- cc image -->
<div class="cc-image bg-image" style="background-image: url(assets/img/intro/intro-13.jpg); background-position: 50% 50%;"></div>
<!-- Begin intro caption
=========================
* Position classes: "top-left", "top-center", "top-right", "center-left", "center", "center-right", "bottom-left", "bottom-center", "bottom-right".
* Size classes: "intro-caption-xs", "intro-caption-sm", "intro-caption-lg", "intro-caption-xlg", "intro-caption-xxlg".
-->
<div class="intro-caption caption-animate intro-caption-xxlg center-left">
<h1 class="intro-title">Perfect</h1>
<h2 class="intro-subtitle">Photography Portfolio Theme</h2>
<p class="intro-description max-width-650">
Made for photographers, photo studios, design agencies. <br>
Create your own unique and beautiful photography website!
</p>
<div class="margin-top-30">
<a href="https://themeforest.net/item/sepia-photography-portfolio-html-website-template/20195226?ref=Themetorium" class="btn btn-primary margin-top-5 margin-right-10" target="_blank">Buy It Now!</a>
<a href="albums-grid-fluid-2.html" class="btn btn-white-bordered margin-top-5">Discover More</a>
</div>
</div>
<!-- End intro caption -->
</div>
<!-- End carousel item -->
<!-- Begin carousel item
========================= -->
<!-- <div class="cc-item">
<a class="owl-video" href="https://vimeo.com/7282791"></a>
<div class="intro-caption caption-animate intro-caption-xxlg center-left">
<h1 class="intro-title">Sepia</h1>
<h2 class="intro-subtitle">Photography Portfolio Theme</h2>
<p class="intro-description max-width-650">
Made for photographers, photo studios, design agencies. <br>
Create your own unique and beautiful photography website!
</p>
<div class="margin-top-30">
<a href="https://themeforest.net/item/sepia-photography-portfolio-html-website-template/20195226?ref=Themetorium" class="btn btn-primary margin-top-5 margin-right-10" target="_blank">Buy It Now!</a>
<a href="albums-grid-fluid-2.html" class="btn btn-white-bordered margin-top-5">Discover More</a>
</div>
</div> -->
<!-- End carousel item -->
</div>
<!-- End content carousel -->
</div> <!-- /.gl-carousel-wrap -->
</div> <!-- /.tt-intro-inner -->
</section>
<!-- End intro section -->
<!-- ============================= <!-- =============================
@ -1859,142 +1643,16 @@
</section> </section>
<!-- End call to action section --> <!-- End call to action section -->
@include 'partials/footer'
<!-- ===========================
///// Begin footer section /////
================================
* Use class "footer-dark" to enable dark footer.
* Use class "no-margin-top" if needed.
-->
<section id="footer" class="footer-dark no-margin-top">
<div class="footer-inner">
<div class="footer-container tt-wrap">
<div class="row">
<div class="col-md-3">
<!-- Begin footer logo -->
<div id="footer-logo">
<a href="index.html" class="logo-dark"><img src="assets/img/logo-dark.png" alt="logo"></a>
<a href="index.html" class="logo-light"><img src="assets/img/logo-light.png" alt="logo"></a>
<!-- for small screens -->
<a href="index.html" class="logo-dark-m"><img src="assets/img/logo-dark-m.png" alt="logo"></a>
<a href="index.html" class="logo-light-m"><img src="assets/img/logo-light-m.png" alt="logo"></a>
</div>
<!-- End footer logo -->
</div> <!-- /.col -->
<div class="col-md-5">
<!-- Begin footer text -->
<div class="footer-text">
<h4>- Creative Photo Studio</h4>
Sed non auctor magna. Nunc eu ultrices orci. Donec commodo ligula in massa ultricies volutpat. Fusce vel cursus lectus. Cras commodo odio mi, eu cursus nibh iaculis ut.
</div>
<!-- End footer text -->
</div> <!-- /.col -->
<div class="col-md-4">
<!-- Begin social buttons -->
<div class="social-buttons">
<ul>
<li><a href="https://www.facebook.com/themetorium" class="btn btn-social-min btn-default btn-rounded-full" title="Follow me on Facebook" target="_blank"><i class="fab fa-facebook-f"></i></a></li>
<li><a href="https://twitter.com/Themetorium" class="btn btn-social-min btn-default btn-rounded-full" title="Follow me on Twitter" target="_blank"><i class="fab fa-twitter"></i></a></li>
<li><a href="https://plus.google.com/+SiiliOnu" class="btn btn-social-min btn-default btn-rounded-full" title="Follow me on Google+" target="_blank"><i class="fab fa-google-plus-g"></i></a></li>
<li><a href="https://www.pinterest.com/themetorium" class="btn btn-social-min btn-default btn-rounded-full" title="Follow me on Pinterest" target="_blank"><i class="fab fa-pinterest-p"></i></a></li>
<li><a href="https://dribbble.com/Themetorium" class="btn btn-social-min btn-default btn-rounded-full" title="Follow me on Dribbble" target="_blank"><i class="fab fa-dribbble"></i></a></li>
<li><a href="contact.html" class="btn btn-social-min btn-default btn-rounded-full" title="Drop me a line" target="_blank"><i class="fas fa-envelope"></i></a></li>
</ul>
</div>
<!-- End social buttons -->
<!-- Begin footer subscribe form -->
<form id="footer-subscribe-form" class="form-btn-inside">
<div class="form-group">
<input type="email" class="form-control no-bg" id="footer-subscribe" name="subscribe" placeholder="Subscribe. Enter your email address..." required="">
<button type="submit"><i class="fas fa-paper-plane"></i></button>
</div>
</form>
<!-- End footer subscribe form -->
</div> <!-- /.col -->
</div> <!-- /.row -->
</div> <!-- /.footer-container -->
<div class="footer-bottom">
<div class="footer-container tt-wrap">
<div class="row">
<div class="col-md-6 col-md-push-6">
<!-- Begin footer menu -->
<ul class="footer-menu">
<li><a href="index.html">Home</a></li>
<li><a href="about-me.html">About</a></li>
<li><a href="albums-grid-fluid-2.html">Portfolio</a></li>
<li><a href="blog-list-grid.html">Blog</a></li>
<li><a href="page-faq.html">FAQ</a></li>
<li><a href="contact.html">Contact</a></li>
</ul>
<!-- End footer menu -->
</div> <!-- /.col -->
<div class="col-md-6 col-md-pull-6">
<!-- Begin footer copyright -->
<div class="footer-copyright">
<p>&copy; Sepia 2017 / All rights reserved</p>
<p>Design by: <a href="https://themeforest.net/item/sepia-photography-portfolio-html-website-template/20195226?ref=Themetorium" target="_blank">Themetorium</a></p>
</div>
<!-- End footer copyright -->
</div> <!-- /.col -->
</div> <!-- /.row -->
</div> <!-- /.footer-container -->
</div> <!-- /.footer-bottom -->
</div> <!-- /.footer-inner -->
<!-- Scroll to top button -->
<a href="#body" class="scrolltotop sm-scroll" title="Scroll to top"><i class="fas fa-chevron-up"></i></a>
</section>
<!-- End footer section -->
</div> </div>
<!-- End body content --> <!-- End body content -->
@include 'partials/scripts'
<!-- ====================
///// Scripts below /////
===================== -->
<!-- Core JS -->
<script src="assets/vendor/jquery/jquery.min.js"></script> <!-- jquery JS (https://jquery.com) -->
<script src="assets/vendor/bootstrap/js/bootstrap.min.js"></script> <!-- bootstrap JS (http://getbootstrap.com) -->
<!-- Libs and Plugins JS -->
<script src="assets/vendor/animsition/js/animsition.min.js"></script> <!-- Animsition JS (http://git.blivesta.com/animsition/) -->
<script src="assets/vendor/jquery.easing.min.js"></script> <!-- Easing JS (http://gsgd.co.uk/sandbox/jquery/easing/) -->
<script src="assets/vendor/isotope.pkgd.min.js"></script> <!-- Isotope JS (http://isotope.metafizzy.co) -->
<script src="assets/vendor/imagesloaded.pkgd.min.js"></script> <!-- ImagesLoaded JS (https://github.com/desandro/imagesloaded) -->
<script src="assets/vendor/owl-carousel/js/owl.carousel.min.js"></script> <!-- Owl Carousel JS (https://owlcarousel2.github.io/OwlCarousel2/) -->
<script src="assets/vendor/jquery.mousewheel.min.js"></script> <!-- A jQuery plugin that adds cross browser mouse wheel support (https://github.com/jquery/jquery-mousewheel) -->
<script src="assets/vendor/ytplayer/js/jquery.mb.YTPlayer.min.js"></script> <!-- YTPlayer JS (more info: https://github.com/pupunzi/jquery.mb.YTPlayer) -->
<script src="assets/vendor/lightgallery/js/lightgallery-all.min.js"></script> <!-- lightGallery Plugins JS (http://sachinchoolur.github.io/lightGallery) -->
<!-- Theme master JS -->
<script src="assets/js/theme.js"></script>
</body> </body>

View File

@ -0,0 +1,106 @@
<!-- ===========================
///// Begin footer section /////
================================
* Use class "footer-dark" to enable dark footer.
* Use class "no-margin-top" if needed.
-->
<section id="footer" class="footer-dark no-margin-top">
<div class="footer-inner">
<div class="footer-container tt-wrap">
<div class="row">
<div class="col-md-3">
<!-- Begin footer logo -->
<div id="footer-logo">
<a href="index.html" class="logo-dark"><img src="assets/img/logo-dark.png" alt="logo"></a>
<a href="index.html" class="logo-light"><img src="assets/img/logo-light.png" alt="logo"></a>
<!-- for small screens -->
<a href="index.html" class="logo-dark-m"><img src="assets/img/logo-dark-m.png" alt="logo"></a>
<a href="index.html" class="logo-light-m"><img src="assets/img/logo-light-m.png" alt="logo"></a>
</div>
<!-- End footer logo -->
</div> <!-- /.col -->
<div class="col-md-5">
<!-- Begin footer text -->
<div class="footer-text">
<h4>- Creative Photo Studio</h4>
Sed non auctor magna. Nunc eu ultrices orci. Donec commodo ligula in massa ultricies volutpat. Fusce vel cursus lectus. Cras commodo odio mi, eu cursus nibh iaculis ut.
</div>
<!-- End footer text -->
</div> <!-- /.col -->
<div class="col-md-4">
<!-- Begin social buttons -->
<div class="social-buttons">
<ul>
<li><a href="https://www.facebook.com/themetorium" class="btn btn-social-min btn-default btn-rounded-full" title="Follow me on Facebook" target="_blank"><i class="fab fa-facebook-f"></i></a></li>
<li><a href="https://twitter.com/Themetorium" class="btn btn-social-min btn-default btn-rounded-full" title="Follow me on Twitter" target="_blank"><i class="fab fa-twitter"></i></a></li>
<li><a href="https://plus.google.com/+SiiliOnu" class="btn btn-social-min btn-default btn-rounded-full" title="Follow me on Google+" target="_blank"><i class="fab fa-google-plus-g"></i></a></li>
<li><a href="https://www.pinterest.com/themetorium" class="btn btn-social-min btn-default btn-rounded-full" title="Follow me on Pinterest" target="_blank"><i class="fab fa-pinterest-p"></i></a></li>
<li><a href="https://dribbble.com/Themetorium" class="btn btn-social-min btn-default btn-rounded-full" title="Follow me on Dribbble" target="_blank"><i class="fab fa-dribbble"></i></a></li>
<li><a href="contact.html" class="btn btn-social-min btn-default btn-rounded-full" title="Drop me a line" target="_blank"><i class="fas fa-envelope"></i></a></li>
</ul>
</div>
<!-- End social buttons -->
<!-- Begin footer subscribe form -->
<form id="footer-subscribe-form" class="form-btn-inside">
<div class="form-group">
<input type="email" class="form-control no-bg" id="footer-subscribe" name="subscribe" placeholder="Subscribe. Enter your email address..." required="">
<button type="submit"><i class="fas fa-paper-plane"></i></button>
</div>
</form>
<!-- End footer subscribe form -->
</div> <!-- /.col -->
</div> <!-- /.row -->
</div> <!-- /.footer-container -->
<div class="footer-bottom">
<div class="footer-container tt-wrap">
<div class="row">
<div class="col-md-6 col-md-push-6">
<!-- Begin footer menu -->
<ul class="footer-menu">
<li><a href="index.html">Home</a></li>
<li><a href="about-me.html">About</a></li>
<li><a href="albums-grid-fluid-2.html">Portfolio</a></li>
<li><a href="blog-list-grid.html">Blog</a></li>
<li><a href="page-faq.html">FAQ</a></li>
<li><a href="contact.html">Contact</a></li>
</ul>
<!-- End footer menu -->
</div> <!-- /.col -->
<div class="col-md-6 col-md-pull-6">
<!-- Begin footer copyright -->
<div class="footer-copyright">
<p>&copy; Sepia 2017 / All rights reserved</p>
<p>Design by: <a href="https://themeforest.net/item/sepia-photography-portfolio-html-website-template/20195226?ref=Themetorium" target="_blank">Themetorium</a></p>
</div>
<!-- End footer copyright -->
</div> <!-- /.col -->
</div> <!-- /.row -->
</div> <!-- /.footer-container -->
</div> <!-- /.footer-bottom -->
</div> <!-- /.footer-inner -->
<!-- Scroll to top button -->
<a href="#body" class="scrolltotop sm-scroll" title="Scroll to top"><i class="fas fa-chevron-up"></i></a>
</section>
<!-- End footer section -->

View File

@ -0,0 +1,22 @@
<!-- ====================
///// Scripts below /////
===================== -->
<!-- Core JS -->
<script src="assets/vendor/jquery/jquery.min.js"></script> <!-- jquery JS (https://jquery.com) -->
<script src="assets/vendor/bootstrap/js/bootstrap.min.js"></script> <!-- bootstrap JS (http://getbootstrap.com) -->
<!-- Libs and Plugins JS -->
<script src="assets/vendor/animsition/js/animsition.min.js"></script> <!-- Animsition JS (http://git.blivesta.com/animsition/) -->
<script src="assets/vendor/jquery.easing.min.js"></script> <!-- Easing JS (http://gsgd.co.uk/sandbox/jquery/easing/) -->
<script src="assets/vendor/isotope.pkgd.min.js"></script> <!-- Isotope JS (http://isotope.metafizzy.co) -->
<script src="assets/vendor/imagesloaded.pkgd.min.js"></script> <!-- ImagesLoaded JS (https://github.com/desandro/imagesloaded) -->
<script src="assets/vendor/owl-carousel/js/owl.carousel.min.js"></script> <!-- Owl Carousel JS (https://owlcarousel2.github.io/OwlCarousel2/) -->
<script src="assets/vendor/jquery.mousewheel.min.js"></script> <!-- A jQuery plugin that adds cross browser mouse wheel support (https://github.com/jquery/jquery-mousewheel) -->
<script src="assets/vendor/ytplayer/js/jquery.mb.YTPlayer.min.js"></script> <!-- YTPlayer JS (more info: https://github.com/pupunzi/jquery.mb.YTPlayer) -->
<script src="assets/vendor/lightgallery/js/lightgallery-all.min.js"></script> <!-- lightGallery Plugins JS (http://sachinchoolur.github.io/lightGallery) -->
<!-- Theme master JS -->
<script src="assets/js/theme.js"></script>

View File

@ -2,13 +2,32 @@ module web
//import freeflowuniverse.crystallib.osal //import freeflowuniverse.crystallib.osal
import veb import veb
import web1.components.intro
// import rand // import rand
// import os // import os
// import json // import json
// import freeflowuniverse.crystallib.webserver.auth.jwt // import freeflowuniverse.crystallib.webserver.auth.jwt
// import time // import time
pub fn render(mut ctx Context) !map[string]string {
mut res:=map[string]string{}
res=intro.render(defaults:true)!
//todo: here we need to add all renders we support
// if true{
// println(res)
// exit(1)
// }
return res
}
pub fn (app &App) index(mut ctx Context) veb.Result { pub fn (app &App) index(mut ctx Context) veb.Result {
content:=render(mut ctx) or {
ctx.res.set_status(.unknown)
return ctx.html('<h1>ERROR!</h1>${err}')
}
return ctx.html($tmpl('./templates/index.html')) return ctx.html($tmpl('./templates/index.html'))
} }