jekyll-theme-marketing 0.5.0 → 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +5 -5
- data/{LICENSE.txt → LICENSE} +1 -1
- data/README.md +6 -1
- data/_includes/components/analytics/google.js +13 -0
- data/_includes/components/assets/file-downloads.html +15 -0
- data/_includes/components/breadcrumbs/bootstrap.html +35 -0
- data/_includes/components/breadcrumbs/bootstrap.js +11 -0
- data/_includes/components/bullets/fontawesome.html +4 -0
- data/_includes/components/cards/bootstrap-h.html +20 -0
- data/_includes/components/cards/bootstrap-v.html +16 -0
- data/_includes/components/contact-cards/phone-card.html +6 -0
- data/_includes/components/contact-cards/phone-directory.html +22 -0
- data/_includes/components/copyrights/progressive.html +19 -0
- data/_includes/components/exchange-rates/progressive.html +6 -0
- data/_includes/{body/header/exchange-rates/usd.html → components/exchange-rates/progressive.js} +1 -6
- data/_includes/components/filters/isotope.html +32 -0
- data/_includes/components/filters/isotope.js +47 -0
- data/_includes/components/firebase/sdk.html +17 -0
- data/_includes/components/firebase/special-offers.html +28 -0
- data/_includes/components/firebase/ui.html +15 -0
- data/_includes/components/firebase/ui.js +33 -0
- data/_includes/{head/fonts.html → components/fonts/google.html} +0 -0
- data/_includes/components/footers/progressive/custom-item.liquid +1 -0
- data/_includes/components/footers/progressive/custom-title.liquid +1 -0
- data/_includes/components/footers/progressive/footer.html +43 -0
- data/_includes/components/footers/progressive/top.html +27 -0
- data/_includes/components/forms/formspree.html +59 -0
- data/_includes/components/forms/formspree.js +35 -0
- data/_includes/components/forms/google-forms.css +5 -0
- data/_includes/components/forms/google-forms.html +76 -0
- data/_includes/components/forms/google-forms.js +31 -0
- data/_includes/components/generators/pdf/special-offers.html +51 -0
- data/_includes/components/icons/bootstrap.html +14 -0
- data/_includes/components/icons/progressive.html +29 -0
- data/_includes/components/icons/progressive.js +5 -0
- data/_includes/components/info-cards/card-deck.html +16 -0
- data/_includes/components/info-cards/progressive.html +20 -0
- data/_includes/components/info-cards/search-results.html +38 -0
- data/_includes/components/jumbotron/bootstrap.html +5 -0
- data/_includes/components/lang-switchers/two-langs.html +27 -0
- data/_includes/components/login/progressive.html +89 -0
- data/_includes/components/logos/motorola.html +3 -0
- data/_includes/components/logos/progressive.html +3 -0
- data/_includes/components/maps/google-maps.html +2 -0
- data/_includes/components/maps/google-maps.js +96 -0
- data/_includes/components/maps/image-map.html +21 -0
- data/_includes/components/megamenu/progressive.html +35 -0
- data/_includes/{head/meta.html → components/meta/progressive.html} +5 -1
- data/_includes/components/modals/bootstrap.html +124 -0
- data/_includes/components/modals/bootstrap.js +26 -0
- data/_includes/components/nav-items/bootstrap.html +23 -0
- data/_includes/components/nav-tabs/product-nav-tab.html +48 -0
- data/_includes/components/nav-tabs/product-nav-tab.js +38 -0
- data/_includes/components/navbars/bootstrap.html +16 -0
- data/_includes/components/navbars/common.liquid +14 -0
- data/_includes/components/navbars/progressive.html +33 -0
- data/_includes/components/navbars/progressive.js +18 -0
- data/_includes/components/panels/brands.html +12 -0
- data/_includes/{body → components}/product-cards/3d-space.html +5 -5
- data/_includes/components/product-cards/featured-product.html +15 -0
- data/_includes/components/product-cards/product-details.html +48 -0
- data/_includes/components/product-cards/product-generals.html +54 -0
- data/_includes/components/product-cards/progressive.html +57 -0
- data/_includes/components/scripts/body.js +41 -0
- data/_includes/components/scripts/head.js +14 -0
- data/_includes/components/scroll-to-tops/progressive.html +3 -0
- data/_includes/components/search-engines/lunr.html +19 -0
- data/_includes/components/search-engines/lunr.js +119 -0
- data/_includes/components/searchbars/progressive.html +14 -0
- data/_includes/components/sidenavs/material/dependencies.html +2 -2
- data/_includes/components/sliders/bootstrap.html +37 -0
- data/_includes/components/sliders/lightslider.html +35 -0
- data/_includes/components/sliders/lightslider.js +12 -0
- data/_includes/components/sliders/revolution-slider.html +67 -0
- data/_includes/components/social-media/facebook.html +18 -0
- data/_includes/components/social-media/progressive.html +9 -0
- data/_includes/components/spinners/bootstrap.html +5 -0
- data/_includes/components/stylesheets/progressive.html +47 -0
- data/_includes/components/timelines/9.html +27 -0
- data/_includes/components/topbars/progressive.html +36 -0
- data/_includes/components/topbars/progressive.js +5 -0
- data/_includes/components/videos/background.html +22 -0
- data/_includes/components/videos/youtube.html +23 -0
- data/_includes/components/zendesk/script.js +9 -0
- data/_includes/pages/footer/grupopv/our-offices.js +22 -0
- data/_layouts/default.html +30 -12
- data/_layouts/grid.html +34 -28
- data/_layouts/page.html +4 -48
- data/_layouts/product.html +29 -174
- data/_sass/common/_common.scss +32 -0
- data/_sass/components/breadcrumbs/_bootstrap.scss +2 -3
- data/_sass/components/contact-cards/_location.scss +14 -0
- data/_sass/components/contact-cards/_phone-card.scss +17 -0
- data/_sass/components/footers/_vg_progressive.scss +72 -0
- data/_sass/components/forms/_formspree.scss +5 -0
- data/_sass/components/forms/_google-forms.scss +29 -0
- data/_sass/components/icons/bootstrap.scss +21 -0
- data/_sass/components/info-cards/_card-deck.scss +12 -0
- data/_sass/components/info-cards/search-results.scss +9 -0
- data/_sass/components/jumbotron/bootstrap.scss +5 -0
- data/_sass/components/lang-switchers/_toogle-lang.scss +0 -1
- data/_sass/components/login/progressive.scss +13 -0
- data/_sass/components/logos/progressive.scss +12 -0
- data/_sass/components/maps/google-maps.scss +13 -0
- data/_sass/components/megamenu/progressive.scss +9 -0
- data/_sass/components/nav-items/bootstrap.scss +26 -0
- data/_sass/components/navbars/bootstrap.scss +8 -0
- data/_sass/components/navbars/progressive.scss +94 -0
- data/_sass/components/product-cards/_3d-space.scss +12 -12
- data/_sass/components/product-cards/_product-details.scss +6 -0
- data/_sass/components/product-cards/_product-generals.scss +13 -0
- data/_sass/components/product-cards/_progressive.scss +30 -0
- data/_sass/components/product-cards/featured-product.scss +12 -0
- data/_sass/components/searchbars/progressive.scss +8 -0
- data/_sass/components/sidenavs/_material.scss +160 -0
- data/_sass/components/sliders/_lightslider.scss +33 -0
- data/_sass/components/social-media/_progressive.scss +25 -0
- data/_sass/components/timelines/9.scss +152 -0
- data/_sass/components/videos/background.scss +22 -0
- data/_sass/grupopv/_navbar.scss +22 -0
- data/_sass/layouts/_404.scss +39 -0
- data/_sass/layouts/_default.scss +3 -0
- data/_sass/layouts/_page.scss +70 -0
- data/_sass/layouts/_product.scss +56 -0
- data/assets/css/main.min.scss +88 -0
- data/assets/img/common/favicon.png +0 -0
- data/assets/js/firebase/firebase-account-controller.js +42 -0
- data/assets/js/firebase/firebase-login.js +4 -4
- data/assets/js/firebase/firebase-sdk.js +19 -0
- data/assets/js/firebase/firebase-special-offers.js +41 -0
- data/assets/node_modules/@fortawesome/fontawesome-free-brands/index.js +1221 -0
- data/assets/node_modules/@fortawesome/fontawesome-free-regular/index.js +489 -0
- data/assets/node_modules/@fortawesome/fontawesome-free-solid/index.js +2013 -0
- data/assets/node_modules/@fortawesome/fontawesome/index.js +1823 -0
- data/assets/node_modules/@fortawesome/fontawesome/styles.css +345 -0
- data/assets/node_modules/bootstrap/dist/css/bootstrap.min.css +5 -3
- data/assets/node_modules/bootstrap/dist/css/bootstrap.min.css.map +1 -0
- data/assets/node_modules/bootstrap/dist/js/bootstrap.min.js +6 -5
- data/assets/node_modules/bootstrap/dist/js/bootstrap.min.js.map +1 -0
- data/assets/node_modules/bootstrap/scss/_badge.scss +54 -0
- data/assets/node_modules/bootstrap/scss/_buttons.scss +139 -0
- data/assets/node_modules/bootstrap/scss/_functions.scss +134 -0
- data/assets/node_modules/bootstrap/scss/_nav.scss +120 -0
- data/assets/node_modules/bootstrap/scss/_reboot.scss +482 -0
- data/assets/node_modules/bootstrap/scss/_variables.scss +1143 -0
- data/assets/node_modules/bootstrap/scss/mixins/_background-variant.scss +22 -0
- data/assets/node_modules/bootstrap/scss/mixins/_badge.scss +17 -0
- data/assets/node_modules/bootstrap/scss/mixins/_border-radius.scss +63 -0
- data/assets/node_modules/bootstrap/scss/mixins/_box-shadow.scss +20 -0
- data/assets/node_modules/bootstrap/scss/mixins/_breakpoints.scss +123 -0
- data/assets/node_modules/bootstrap/scss/mixins/_buttons.scss +110 -0
- data/assets/node_modules/bootstrap/scss/mixins/_deprecate.scss +10 -0
- data/assets/node_modules/bootstrap/scss/mixins/_gradients.scss +45 -0
- data/assets/node_modules/bootstrap/scss/mixins/_hover.scss +37 -0
- data/assets/node_modules/bootstrap/scss/mixins/_text-emphasis.scss +17 -0
- data/assets/node_modules/bootstrap/scss/mixins/_text-hide.scss +11 -0
- data/assets/node_modules/bootstrap/scss/mixins/_text-truncate.scss +8 -0
- data/assets/node_modules/bootstrap/scss/mixins/_transition.scss +16 -0
- data/assets/node_modules/bootstrap/scss/utilities/_background.scss +19 -0
- data/assets/node_modules/bootstrap/scss/utilities/_text.scss +72 -0
- data/assets/node_modules/bootstrap/scss/vendor/_rfs.scss +204 -0
- data/assets/node_modules/firebase/firebase-app.js +2 -0
- data/assets/node_modules/firebase/firebase-app.js.map +1 -0
- data/assets/node_modules/firebase/firebase-auth.js +2 -0
- data/assets/node_modules/firebase/firebase-auth.js.map +1 -0
- data/assets/node_modules/firebase/firebase-firestore.js +2 -0
- data/assets/node_modules/firebase/firebase-firestore.js.map +1 -0
- data/assets/node_modules/flag-icon-css/flags/1x1/br.svg +41 -41
- data/assets/node_modules/flag-icon-css/flags/1x1/mx.svg +371 -378
- data/assets/node_modules/flag-icon-css/flags/1x1/us.svg +2 -2
- data/assets/node_modules/flag-icon-css/sass/_flag-icon-list.scss +265 -249
- data/assets/node_modules/flag-icon-css/sass/_variables.scss +1 -1
- data/assets/node_modules/flag-icon-css/sass/flag-icon.scss +3 -4
- data/assets/node_modules/isotope-layout/dist/isotope.pkgd.min.js +12 -0
- data/assets/node_modules/jquery.stellar/jquery.stellar.min.js +9 -0
- data/assets/node_modules/jquery/dist/jquery.min.js +2 -0
- data/assets/node_modules/jquery/dist/jquery.min.map +1 -0
- data/assets/node_modules/jspdf/dist/jspdf.min.js +149 -88
- data/assets/node_modules/lightslider/dist/css/lightslider.min.css +3 -0
- data/assets/node_modules/lightslider/dist/img/controls.png +0 -0
- data/assets/node_modules/lightslider/dist/js/lightslider.min.js +4 -0
- data/assets/node_modules/lunr/lunr.min.js +6 -0
- data/assets/node_modules/vue/dist/vue.min.js +3 -3
- data/assets/vendors/revolution-slider/assets/coloredbg.png +0 -0
- data/assets/vendors/revolution-slider/assets/shadow3.png +0 -0
- data/assets/vendors/revolution-slider/css/settings.css +1480 -0
- data/assets/vendors/revolution-slider/font/revicons.svg +54 -0
- data/assets/vendors/revolution-slider/font/revicons.woff +0 -0
- data/assets/vendors/revolution-slider/js/jquery.themepunch.revolution.min.js +11 -0
- data/assets/vendors/revolution-slider/js/jquery.themepunch.tools.min.js +138 -0
- data/assets/vendors/revolution-slider/js/settings.js +110 -0
- data/assets/vendors/themeforest/fonts/social-icons.eot +0 -0
- data/assets/vendors/themeforest/fonts/social-icons.svg +403 -0
- data/assets/vendors/themeforest/fonts/social-icons.ttf +0 -0
- data/assets/vendors/themeforest/fonts/social-icons.woff +0 -0
- data/assets/vendors/themeforest/progressive/css/animate.css +1582 -0
- data/assets/vendors/themeforest/progressive/css/base.css +278 -0
- data/assets/vendors/themeforest/progressive/css/buttons.css +272 -0
- data/assets/vendors/themeforest/progressive/css/cms.css +289 -0
- data/assets/vendors/themeforest/progressive/css/responsive.css +2111 -0
- data/assets/vendors/themeforest/progressive/css/social-icons.css +130 -0
- data/assets/vendors/themeforest/progressive/css/style.css +9521 -0
- data/assets/vendors/themeforest/progressive/images/svg/loader.svg +34 -0
- data/assets/vendors/themeforest/progressive/js/jquery.appear.js +150 -0
- data/assets/vendors/themeforest/progressive/js/main.js +2176 -0
- metadata +189 -40
- data/_includes/body/footer.html +0 -0
- data/_includes/body/footer/buttons.html +0 -40
- data/_includes/body/header.html +0 -0
- data/_includes/body/header/logo.html +0 -5
- data/_includes/body/header/search-contact-phone-buttons.html +0 -29
- data/_includes/body/header/top-bar.html +0 -20
- data/_includes/body/scripts.html +0 -41
- data/_includes/head/firebase/sdk.html +0 -4
- data/_includes/head/google-analytics.html +0 -0
- data/_includes/head/scripts.html +0 -9
- data/_includes/head/style.html +0 -50
- data/_sass/components/navbars/_vg_progressive.scss +0 -44
- data/_sass/layouts/_grid.scss +0 -13
- data/assets/css/main.scss +0 -23
- data/assets/js/bootstrap/nav-tabs.js +0 -36
- data/assets/node_modules/bootstrap/dist/fonts/glyphicons-halflings-regular.svg +0 -229
- data/assets/node_modules/bootstrap/dist/fonts/glyphicons-halflings-regular.ttf +0 -0
- data/assets/node_modules/bootstrap/dist/fonts/glyphicons-halflings-regular.woff +0 -0
- data/assets/node_modules/flag-icon-css/sass/_flag-icon-more.scss +0 -7
- data/assets/node_modules/font-awesome/css/font-awesome.min.css +0 -4
- data/assets/node_modules/font-awesome/fonts/fontawesome-webfont.eot +0 -0
- data/assets/node_modules/font-awesome/fonts/fontawesome-webfont.svg +0 -2671
- data/assets/node_modules/font-awesome/fonts/fontawesome-webfont.ttf +0 -0
- data/assets/node_modules/font-awesome/fonts/fontawesome-webfont.woff +0 -0
- data/assets/node_modules/font-awesome/fonts/fontawesome-webfont.woff2 +0 -0
- data/assets/node_modules/jquery/dist/cdn/jquery.min.js +0 -4
@@ -0,0 +1,22 @@
|
|
1
|
+
<div data-component="videos/background">
|
2
|
+
<div id="cm-video-bg" class="full-width-box background-image-available">
|
3
|
+
<div class="fwb-bg fwb-video my-4 my-sm-0" style="background-image: url('https://s3-us-west-2.amazonaws.com/grupopv-public/assets/components/videos/background/{{ include.background }}');">
|
4
|
+
<video autoplay muted loop>
|
5
|
+
<source src="https://s3-us-west-2.amazonaws.com/grupopv-public/assets/components/videos/background/{{ include.video }}" type="video/mp4">
|
6
|
+
</video>
|
7
|
+
</div>
|
8
|
+
<div class="container-fluid">
|
9
|
+
<div class="row">
|
10
|
+
<div class="white text-center col">
|
11
|
+
<div class="title-box text-center title-white">
|
12
|
+
<h1 class="title">{{ include.title }}</h1>
|
13
|
+
</div>
|
14
|
+
<p>
|
15
|
+
{{ include.desc }}
|
16
|
+
</p>
|
17
|
+
<a href="{{ include.href | relative_url }}" class="btn btn-primary">{{ include.button }}</a>
|
18
|
+
</div>
|
19
|
+
</div>
|
20
|
+
</div>
|
21
|
+
</div>
|
22
|
+
</div>
|
@@ -0,0 +1,23 @@
|
|
1
|
+
{% if include.params.videos or page.resources.videos %}
|
2
|
+
{% assign ids = include.params.videos | default: page.resources.videos | split: ", " %}
|
3
|
+
<div class="row">
|
4
|
+
{% for id in ids %}
|
5
|
+
<div class="col-lg-6">
|
6
|
+
<iframe
|
7
|
+
id="ytplayer"
|
8
|
+
type="text/html"
|
9
|
+
width="100%"
|
10
|
+
height="350"
|
11
|
+
class="my-3"
|
12
|
+
src="https://www.youtube.com/embed/{{ id }}?rel=0&modestbranding=1"
|
13
|
+
frameborder="0"
|
14
|
+
gesture="media"
|
15
|
+
allow="encrypted-media"
|
16
|
+
allowfullscreen>
|
17
|
+
</iframe>
|
18
|
+
</div>
|
19
|
+
{% endfor %}
|
20
|
+
</div>
|
21
|
+
{% else %}
|
22
|
+
<p>{{ site.data.i18n.common.product-layout[site.lang].videos-empty }}</p>
|
23
|
+
{% endif %}
|
@@ -0,0 +1,9 @@
|
|
1
|
+
<!--Start of Zendesk Chat Script-->
|
2
|
+
<script type="text/javascript">
|
3
|
+
window.$zopim||(function(d,s){var z=$zopim=function(c){z._.push(c)},$=z.s=
|
4
|
+
d.createElement(s),e=d.getElementsByTagName(s)[0];z.set=function(o){z.set.
|
5
|
+
_.push(o)};z._=[];z.set._=[];$.async=!0;$.setAttribute("charset","utf-8");
|
6
|
+
$.src="https://v2.zopim.com/?{{ site.zendesk }}";z.t=+new Date;$.
|
7
|
+
type="text/javascript";e.parentNode.insertBefore($,e)})(document,"script");
|
8
|
+
</script>
|
9
|
+
<!--End of Zendesk Chat Script-->
|
@@ -0,0 +1,22 @@
|
|
1
|
+
<script>
|
2
|
+
function getLatlng(id) {
|
3
|
+
address = document.getElementById(id);
|
4
|
+
url = address.children[1].children[4].getAttribute('src');
|
5
|
+
|
6
|
+
address.setAttribute(
|
7
|
+
'data-coordinates',
|
8
|
+
url
|
9
|
+
.replace(/^.*!3d/,'')
|
10
|
+
.replace(/![23]m[23].*/,'')
|
11
|
+
+ ', ' +
|
12
|
+
url
|
13
|
+
.replace(/^.*!2d/,'')
|
14
|
+
.replace(/!3d.*/,'')
|
15
|
+
);
|
16
|
+
}
|
17
|
+
|
18
|
+
var iframes_count = document.querySelectorAll(".branch-info").length;
|
19
|
+
for (i = 1; i <= iframes_count; i++) {
|
20
|
+
getLatlng('branch-' + i + '-info');
|
21
|
+
}
|
22
|
+
</script>
|
data/_layouts/default.html
CHANGED
@@ -4,13 +4,19 @@
|
|
4
4
|
|
5
5
|
<head>
|
6
6
|
|
7
|
-
{%
|
8
|
-
|
9
|
-
{%
|
10
|
-
|
11
|
-
|
12
|
-
{%
|
13
|
-
|
7
|
+
{% if site.title == 'Grupo PV' %}
|
8
|
+
{% seo %}
|
9
|
+
{% else %}
|
10
|
+
<title>{{ page.title }}</title>
|
11
|
+
{% seo title=false %}
|
12
|
+
{% endif %}
|
13
|
+
|
14
|
+
{% include components/meta/progressive.html %}
|
15
|
+
{% include components/scripts/head.js %}
|
16
|
+
{% include components/firebase/sdk.html %}
|
17
|
+
{% include components/fonts/google.html %}
|
18
|
+
{% include components/stylesheets/progressive.html %}
|
19
|
+
{% include components/analytics/google.js %}
|
14
20
|
|
15
21
|
</head>
|
16
22
|
|
@@ -18,13 +24,25 @@
|
|
18
24
|
|
19
25
|
<div class="page-box">
|
20
26
|
<div class="page-box-content">
|
21
|
-
|
22
|
-
{
|
27
|
+
|
28
|
+
{% include components/topbars/progressive.html %} <!-- end top-bar -->
|
29
|
+
|
30
|
+
<header class="header header-two">
|
31
|
+
<div class="header-wrapper">
|
32
|
+
|
33
|
+
{% include components/navbars/progressive.html %} <!-- end progressive-navbar -->
|
34
|
+
{% include components/navbars/bootstrap.html %} <!-- end bootstrap-navbar -->
|
35
|
+
|
36
|
+
</div>
|
37
|
+
</header> <!-- end header -->
|
38
|
+
|
39
|
+
{{ content }} <!-- end content -->
|
40
|
+
|
23
41
|
</div>
|
24
|
-
</div>
|
42
|
+
</div> <!-- end page-box -->
|
25
43
|
|
26
|
-
{% include
|
27
|
-
{% include
|
44
|
+
{% include components/footers/progressive/footer.html %} <!-- end footer -->
|
45
|
+
{% include components/scripts/body.js %} <!-- end scripts -->
|
28
46
|
|
29
47
|
</body>
|
30
48
|
|
data/_layouts/grid.html
CHANGED
@@ -1,34 +1,40 @@
|
|
1
1
|
---
|
2
2
|
layout: page
|
3
3
|
---
|
4
|
-
<
|
4
|
+
<script src="{{ '/assets/node_modules/isotope-layout/dist/isotope.pkgd.min.js' | relative_url }}"></script>
|
5
|
+
|
6
|
+
<div class="container-fluid" data-layout="grid">
|
5
7
|
<div class="row">
|
6
|
-
|
7
|
-
|
8
|
-
{%
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
{%
|
14
|
-
|
15
|
-
|
16
|
-
{%
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
8
|
+
|
9
|
+
<div class="col-4 col-md-3 col-xl-2">
|
10
|
+
{% include components/filters/isotope.html %}
|
11
|
+
</div>
|
12
|
+
|
13
|
+
<div class="col-8 col-md-9 col-xl-10">
|
14
|
+
<div class="row grid">
|
15
|
+
{% assign collections = site.collections | where: "label", page.collection %}
|
16
|
+
{% for collection in collections %}
|
17
|
+
{% assign docs = collection.docs | where: "menu-father", page.menu-name %}
|
18
|
+
{% for doc in docs %}
|
19
|
+
{% assign url-size = doc.url | size | minus: 2 %}
|
20
|
+
{% assign i18n-id = doc.url | slice: 1,url-size | replace: '/', '-' | remove_first: collection.label | remove_first: '-' %}
|
21
|
+
{% assign i18n-title = site.data.i18n.catalog[collection.label][site.lang][i18n-id].title %}
|
22
|
+
{% if site.links.product[i18n-id].disabled == null %}
|
23
|
+
{% if doc.i18n[site.lang].description %}
|
24
|
+
{% assign i18n-description = doc.i18n[site.lang].description %}
|
25
|
+
{% else %}
|
26
|
+
{% assign i18n-description = site.data.i18n.catalog[collection.label][site.lang][i18n-id].desc %}
|
27
|
+
{% endif %}
|
28
|
+
{% include components/product-cards/progressive.html %}
|
29
|
+
{% endif %}
|
30
|
+
{% endfor %}
|
31
|
+
{% endfor %}
|
32
|
+
</div>
|
33
|
+
</div>
|
34
|
+
|
33
35
|
</div>
|
34
36
|
</div> <!-- /container -->
|
37
|
+
|
38
|
+
<script type="text/javascript">
|
39
|
+
{% include components/filters/isotope.js %}
|
40
|
+
</script>
|
data/_layouts/page.html
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
layout: default
|
3
3
|
---
|
4
4
|
{% if page.layout == "product" %}
|
5
|
-
{% assign class = '
|
5
|
+
{% assign class = 'd-none' %}
|
6
6
|
{% else %}
|
7
7
|
{% assign url-size = page.url | size | minus: 2 %}
|
8
8
|
{% assign i18n-id = page.url | slice: 1,url-size | replace: '/', '-' | remove_first: page.collection | remove_first: '-' %}
|
@@ -16,54 +16,10 @@ layout: default
|
|
16
16
|
{% endif %}
|
17
17
|
{% endif %}
|
18
18
|
|
19
|
-
|
20
|
-
<ol id="breadcrumb" class="breadcrumb">
|
21
|
-
{% for level in (-1..page.categories.size) %}
|
22
|
-
{% if forloop.first %}
|
23
|
-
<li class="breadcrumb-item home"><a href="{{ '/' | relative_url }}"><span class="glyphicon glyphicon-home"></span></a></li>
|
24
|
-
<li class="breadcrumb-item ellipsis hidden-xs hidden-sm hidden-md hidden-lg">...</li>
|
25
|
-
{% if page.menu-father %}
|
26
|
-
<li class="breadcrumb-item {{ page.collection }}"><a href="{{ page.collection | prepend: '/' | relative_url }}">{% if site.data.i18n.catalog[page.collection][site.lang][page.collection].title %}{{ site.data.i18n.catalog[page.collection][site.lang][page.collection].title }}{% else %}{{ page.collection | capitalize }}{% endif %}</a></li>
|
27
|
-
{% endif %}
|
28
|
-
{% elsif forloop.last %}
|
29
|
-
<li class="breadcrumb-item {{ i18n-id }} active" aria-current="page">{% if i18n-title %}{{ i18n-title }}{% else %}{{ page.title }}{% endif %}</li>
|
30
|
-
{% else %}
|
31
|
-
{% assign cat-num = forloop.index %}
|
32
|
-
{% assign url-size = page.url | size | minus: 2 %}
|
33
|
-
{% assign sections = page.url | slice: 1,url-size | split : '/' %}
|
34
|
-
{% capture level-url %}
|
35
|
-
{% for section in sections %}
|
36
|
-
{% if forloop.index > cat-num %} {% break %} {% endif %}
|
37
|
-
{{ section | append: '/' }}
|
38
|
-
{% endfor %}
|
39
|
-
{% endcapture %}
|
40
|
-
{% assign level-url = level-url | strip_newlines | replace: ' ', '' | relative_url %}
|
41
|
-
{% assign level-url-size = level-url | size | minus: 2 %}
|
42
|
-
{% assign level-i18n-id = level-url | slice: 1,level-url-size | replace: '/', '-' | remove_first: page.collection | remove_first: '-' %}
|
43
|
-
{% assign level-i18n-title = site.data.i18n.catalog[page.collection][site.lang][level-i18n-id].title %}
|
44
|
-
{% assign page-commercial-downcase = page.commercial | downcase | replace: ' ', '-' %}
|
45
|
-
{% unless page.categories[level] == page-commercial-downcase %}
|
46
|
-
<li class="breadcrumb-item {{ level-i18n-id }}"><a href="{{ level-url }}">{% if level-i18n-title %}{{ level-i18n-title }}{% else %}{{ page.categories[level] | replace: '-', ' ' | capitalize }}{% endif %}</a></li>
|
47
|
-
{% endunless %}
|
48
|
-
{% endif %}
|
49
|
-
{% endfor %}
|
50
|
-
</ol>
|
51
|
-
</nav>
|
19
|
+
{% include components/breadcrumbs/bootstrap.html %}
|
52
20
|
|
53
|
-
<
|
54
|
-
|
55
|
-
if (items.length > 3){
|
56
|
-
if (items.length > 4) $('li.breadcrumb-item.ellipsis').removeClass('hidden-xs');
|
57
|
-
if (items.length > 5) $('li.breadcrumb-item.ellipsis').removeClass('hidden-sm');
|
58
|
-
items.each(function( index ) {
|
59
|
-
if (index > 1 && index < items.length-3) $(this).addClass('hidden-sm');
|
60
|
-
if (index > 1 && index < items.length) if (index != items.length-2) $(this).addClass('hidden-xs');
|
61
|
-
});
|
62
|
-
}
|
63
|
-
</script>
|
64
|
-
|
65
|
-
<h2 id="{{ i18n-id }}" class="post {{ class }}">{% if i18n-title %}{{ i18n-title }}{% else %}{{ page.title }}{% endif %}</h2>
|
66
|
-
<h3 id="{{ i18n-id }}" class="post {{ class }}">{% if i18n-subtitle %}{{ i18n-subtitle }}{% else %}{{ page.subtitle }}{% endif %}</h3>
|
21
|
+
<h2 id="{{ i18n-id }}" class="post text-muted {{ class }}">{% if i18n-title %}{{ i18n-title }}{% else %}{{ page.title }}{% endif %}</h2>
|
22
|
+
<h3 id="{{ i18n-id }}" class="post text-muted {{ class }}">{% if i18n-subtitle %}{{ i18n-subtitle }}{% else %}{{ page.subtitle }}{% endif %}</h3>
|
67
23
|
|
68
24
|
<div class="post">
|
69
25
|
<div id="sign-in-content"></div>
|
data/_layouts/product.html
CHANGED
@@ -1,6 +1,10 @@
|
|
1
1
|
---
|
2
2
|
layout: page
|
3
|
-
tabs:
|
3
|
+
tabs:
|
4
|
+
- { name: description, component: product-cards/product-details }
|
5
|
+
- { name: downloads, component: assets/file-downloads }
|
6
|
+
- { name: videos, component: videos/youtube }
|
7
|
+
- { name: special-offers, component: generators/pdf/special-offers }
|
4
8
|
special-offers:
|
5
9
|
format: letter
|
6
10
|
orientation: portrait
|
@@ -10,181 +14,32 @@ special-offers:
|
|
10
14
|
margin: 0.25
|
11
15
|
dpi: 300
|
12
16
|
---
|
13
|
-
<script src="/assets/node_modules/jspdf/dist/jspdf.min.js"></script>
|
14
17
|
{% assign url-size = page.url | size | minus: 2 %}
|
15
18
|
{% assign i18n-id = page.url | slice: 1,url-size | replace: '/', '-' | remove_first: page.collection | remove_first: '-' %}
|
16
|
-
{% if
|
17
|
-
|
18
|
-
{%
|
19
|
-
|
20
|
-
{%
|
21
|
-
{%
|
22
|
-
{%
|
23
|
-
{%
|
24
|
-
|
25
|
-
{%
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
{% assign images-count = page.resources.product-images.quantity %}
|
33
|
-
{% else %}
|
34
|
-
{% assign images-count = 1 %}
|
35
|
-
{% endif %}
|
36
|
-
{% for product-image in (1..images-count) %}
|
37
|
-
{% assign page-categories-size = page.categories | size %}
|
38
|
-
{% if page-categories-size >= 1 %}
|
39
|
-
{% assign page-categories = page.categories | join: "/" | append: "/" %}
|
40
|
-
{% endif %}
|
41
|
-
{% if forloop.index == 1 %}
|
42
|
-
{% assign image-num = '' %}
|
43
|
-
{% elsif forloop.index < 10 %}
|
44
|
-
{% assign image-num = forloop.index | prepend: "_0" %}
|
45
|
-
{% else %}
|
46
|
-
{% assign image-num = forloop.index | prepend: "_" %}
|
47
|
-
{% endif %}
|
48
|
-
{% capture product-image-url %}
|
49
|
-
{{ site.amazon-s3 }}/assets/img/catalog/thumbnails/{{ page.collection }}/{{ page-categories }}{% if page.resources.product-images.model %}{{ page.resources.product-images.model | downcase }}{% else %}{{ page.title | downcase }}{% endif %}{{ image-num | append: ".png" }}
|
50
|
-
{% endcapture %}
|
51
|
-
<li data-thumb="{{ product-image-url }}">
|
52
|
-
<img src="{{ product-image-url }}" class="img-center" alt="{% if i18n-title %}{{ i18n-title }}{% else %}{{ page.title }}{% endif %}" />
|
53
|
-
</li>
|
54
|
-
{% endfor %}
|
55
|
-
</ul>
|
19
|
+
{% if site.links.product[i18n-id].disabled == null %}
|
20
|
+
<script src="{{ '/assets/node_modules/jspdf/dist/jspdf.min.js' | relative_url }}"></script>
|
21
|
+
{% if page.i18n[site.lang].title %}
|
22
|
+
{% assign i18n-title = page.i18n[site.lang].title %}
|
23
|
+
{% else %}
|
24
|
+
{% assign i18n-title = site.data.i18n.catalog[page.collection][site.lang][i18n-id].title %}
|
25
|
+
{% endif %}
|
26
|
+
{% if page.i18n[site.lang].description %}
|
27
|
+
{% assign i18n-description = page.i18n[site.lang].description %}
|
28
|
+
{% else %}
|
29
|
+
{% assign i18n-description = site.data.i18n.catalog[page.collection][site.lang][i18n-id].desc %}
|
30
|
+
{% endif %}
|
31
|
+
<div class="container">
|
32
|
+
<div class="row">
|
33
|
+
<div id="product-images" class="col-xs-12 col-sm-12 col-md-4">
|
34
|
+
{% include components/sliders/lightslider.html %}
|
56
35
|
</div>
|
36
|
+
{% include components/product-cards/product-generals.html %}
|
57
37
|
</div>
|
58
|
-
<div
|
59
|
-
|
60
|
-
<p id="{{ i18n-id }}" class="product-model">{{ site.data.i18n.common.product-layout[site.lang].model }}: <strong>{% if i18n-title %}{{ i18n-title }}{% else %}{{ page.title }}{% endif %}</strong></p>
|
61
|
-
<p id="{{ i18n-id }}" class="product-brand">{{ site.data.i18n.common.product-layout[site.lang].brand }}: <strong>{{ page.brand }}</strong></p>
|
62
|
-
<p id="{{ i18n-id }}" class="product-commercial {% unless page.commercial %}{{ 'hide' }}{% endunless %}">{{ site.data.i18n.common.product-layout[site.lang].commercial }}: <strong>{{ page.commercial }}</strong></p>
|
63
|
-
<div id="{{ i18n-id }}" class="product-price"><span class="label label-primary">{% if page.price %}{{ page.price | prepend: '$ ' }}{% endif %}{% assign price-size = page.price | downcase | split: '.' | last | size %}{% if price-size == 1 %}{{ "0" }}{% endif %}{% if page.currency %}{{ page.currency | prepend: ' ' }}{% endif %}</span></div>
|
38
|
+
<div>
|
39
|
+
{% include components/nav-tabs/product-nav-tab.html tabs=layout.tabs %}
|
64
40
|
</div>
|
65
|
-
</div>
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
<li role="presentation" {% if forloop.first == true %}class="active"{% endif %}{% if site.original and tab == 'special-offers' %}class="hide"{% endif %}><a data-toggle="tab" href="#{{ tab| downcase | replace: ' ', '-' }}">{{ site.data.i18n.common.product-layout[site.lang][tab] }}</a></li>
|
71
|
-
{% endfor %}
|
72
|
-
</ul>
|
73
|
-
|
74
|
-
<div class="tab-content">
|
75
|
-
{% for tab in layout.tabs %}
|
76
|
-
<div id="{{ tab | downcase | replace: ' ', '-' }}" class="tab-pane fade {% if forloop.first == true %}in active{% endif %}">
|
77
|
-
<div class="container">
|
78
|
-
{% case forloop.index %}
|
79
|
-
|
80
|
-
{% when 1 %}
|
81
|
-
<p>
|
82
|
-
{% for resource in page.resources.spec-sheets.catalog %}
|
83
|
-
<img src="{{ site.amazon-s3 }}{{ resource }}" alt="{{ page.title }}" class="img-center">
|
84
|
-
{% endfor %}
|
85
|
-
</p>
|
86
|
-
{{ page.i18n[site.lang].detailed_desc | default: page.detailed_desc }}
|
87
|
-
{{ content }}
|
88
|
-
|
89
|
-
{% when 2 %}
|
90
|
-
{% if page.resources.downloads %}
|
91
|
-
{% for resource in page.resources.downloads %}
|
92
|
-
{% assign i18n-resource-text = page.i18n[site.lang].resources.downloads[forloop.index0].text %}
|
93
|
-
<p>
|
94
|
-
<a class="btn btn-primary btn-sm" href="{{ site.amazon-s3 }}{{ resource.link }}">
|
95
|
-
<strong><span class="glyphicon glyphicon-download-alt"></span> {{ site.data.i18n.common.product-layout[site.lang].download }}</strong>
|
96
|
-
</a>
|
97
|
-
<span class="product-downloads">
|
98
|
-
{% if i18n-resource-text %}{{ i18n-resource-text }}{% else %}{{ resource.text }}{% endif %}
|
99
|
-
</span>
|
100
|
-
</p>
|
101
|
-
{% endfor %}
|
102
|
-
{% else %}
|
103
|
-
<p>{{ site.data.i18n.common.product-layout[site.lang].downloads-empty }}</p>
|
104
|
-
{% endif %}
|
105
|
-
|
106
|
-
{% when 3 %}
|
107
|
-
{% if page.resources.videos %}
|
108
|
-
{% assign ids = page.resources.videos | split: ", " %}
|
109
|
-
{% for id in ids %}
|
110
|
-
<div class="col-xs-12 col-sm-12 col-md-6">
|
111
|
-
<iframe
|
112
|
-
id="ytplayer"
|
113
|
-
type="text/html"
|
114
|
-
width="100%"
|
115
|
-
height="350"
|
116
|
-
src="https://www.youtube.com/embed/{{ id }}?rel=0&modestbranding=1"
|
117
|
-
frameborder="0"
|
118
|
-
gesture="media"
|
119
|
-
allow="encrypted-media"
|
120
|
-
allowfullscreen>
|
121
|
-
</iframe>
|
122
|
-
</div>
|
123
|
-
{% endfor %}
|
124
|
-
{% else %}
|
125
|
-
<p>{{ site.data.i18n.common.product-layout[site.lang].videos-empty }}</p>
|
126
|
-
{% endif %}
|
127
|
-
|
128
|
-
{% else %}
|
129
|
-
{% if page.resources.special-offers.quantity > 0 %}
|
130
|
-
{% unless site.original %}
|
131
|
-
<p>
|
132
|
-
{% for resource in (1..page.resources.special-offers.quantity) %}
|
133
|
-
{% assign page-categories-size = page.categories | size %}
|
134
|
-
{% if page-categories-size >= 1 %}
|
135
|
-
{% assign page-categories = page.categories | join: "/" | append: "/" %}
|
136
|
-
{% endif %}
|
137
|
-
{% if forloop.index == 1 %}
|
138
|
-
{% assign image-num = '' %}
|
139
|
-
{% elsif forloop.index < 10 %}
|
140
|
-
{% assign image-num = forloop.index | prepend: "_0" %}
|
141
|
-
{% else %}
|
142
|
-
{% assign image-num = forloop.index | prepend: "_" %}
|
143
|
-
{% endif %}
|
144
|
-
<div class="marketing-theme content-right">
|
145
|
-
<a class="btn btn-primary btn-sm" onclick="specialOffersPDF{{ forloop.index }}();">
|
146
|
-
<strong><span class="glyphicon glyphicon-download-alt"></span> {{ site.data.i18n.common.product-layout[site.lang].download }}</strong>
|
147
|
-
</a>
|
148
|
-
</div>
|
149
|
-
<div id="special-offers-{{ forloop.index }}">
|
150
|
-
<img id="special-offers-promo{{ forloop.index }}" src="/img/special-offers/{{ page.collection }}/{{ page-categories }}{% if page.resources.special-offers.model %}{{ page.resources.special-offers.model | downcase }}{% else %}{{ page.title | downcase }}{% endif %}{{ image-num | append: '.png' }}" alt="{{ page.title }}" title="{{ page.title }}">
|
151
|
-
<img id="special-offers-data{{ forloop.index }}" src="/img/special-offers/customers/{{ site.domain | replace:'.',' ' | truncatewords: 1,"" }}.png" alt="{{ page.title }}" title="{{ page.title }}">
|
152
|
-
<canvas id="special-offers-promoCanvas{{ forloop.index }}" class="hide" width="{{ layout.special-offers.width | times: layout.special-offers.dpi }}" height="{{ layout.special-offers.height | times: layout.special-offers.dpi }}"></canvas>
|
153
|
-
<canvas id="special-offers-dataCanvas{{ forloop.index }}" class="hide" width="{{ layout.special-offers.width | times: layout.special-offers.dpi }}" height="{{ layout.special-offers.height | minus: 10.5 | times: layout.special-offers.dpi | times: -1 }}"></canvas>
|
154
|
-
</div>
|
155
|
-
<script>
|
156
|
-
function specialOffersPDF{{ forloop.index }}(){
|
157
|
-
var doc = new jsPDF({
|
158
|
-
orientation: '{{ layout.special-offers.orientation }}',
|
159
|
-
unit: '{{ layout.special-offers.unit }}',
|
160
|
-
format: '{{ layout.special-offers.format }}'
|
161
|
-
})
|
162
|
-
var promo = document.getElementById("special-offers-promo{{ forloop.index }}");
|
163
|
-
var promoCanvas = document.getElementById("special-offers-promoCanvas{{ forloop.index }}");
|
164
|
-
var data = document.getElementById("special-offers-data{{ forloop.index }}");
|
165
|
-
var dataCanvas = document.getElementById("special-offers-dataCanvas{{ forloop.index }}");
|
166
|
-
promoCanvas.getContext("2d").drawImage(promo, 0, 0);
|
167
|
-
dataCanvas.getContext("2d").drawImage(data, 0, 0);
|
168
|
-
doc.addImage(promoCanvas.toDataURL(), 'PNG', {{ layout.special-offers.margin }}, {{ layout.special-offers.margin }}, {{ layout.special-offers.width }}, {{ layout.special-offers.height }},'promoImg','FAST')
|
169
|
-
doc.addImage(dataCanvas.toDataURL(), 'PNG', {{ layout.special-offers.margin }}, {{ layout.special-offers.margin }} + {{ layout.special-offers.height }}, {{ layout.special-offers.width }}, {{ 11 | minus: layout.special-offers.margin | minus: layout.special-offers.margin }} - {{ layout.special-offers.height }},'dataImg','FAST')
|
170
|
-
doc.save('{{ page.title }}.pdf')
|
171
|
-
}
|
172
|
-
</script>
|
173
|
-
{% endfor %}
|
174
|
-
</p>
|
175
|
-
{% endunless %}
|
176
|
-
{% else %}
|
177
|
-
<p>{{ site.data.i18n.common.product-layout[site.lang].special-offers-empty }}</p>
|
178
|
-
{% endif %}
|
179
|
-
|
180
|
-
{% endcase %}
|
181
|
-
|
182
|
-
</div>
|
183
|
-
</div>
|
184
|
-
{% endfor %}
|
185
|
-
</div>
|
186
|
-
|
187
|
-
</div>
|
188
|
-
</div> <!-- /container -->
|
189
|
-
<script src="/js/sliders/lightslider.js"></script>
|
190
|
-
<script src="/assets/js/bootstrap/nav-tabs.js"></script>
|
41
|
+
</div> <!-- /container -->
|
42
|
+
{% include components/nav-tabs/product-nav-tab.js %}
|
43
|
+
{% else %}
|
44
|
+
<script type="text/javascript">window.location.href = "/"</script>
|
45
|
+
{% endif %}
|