159 lines
5.0 KiB
Plaintext
159 lines
5.0 KiB
Plaintext
| {% extends 'layout.html' %}
|
|
| {% from '_macros/_navigation.html' import navigation_homepage %}
|
|
| {% from '_macros/_asset_list_item.html' import asset_list_item %}
|
|
| {% from 'nodes/custom/blog/_macros.html' import render_blog_post %}
|
|
|
|
include ../../../pillar/src/templates/mixins/components
|
|
|
|
| {% set title = 'homepage' %}
|
|
|
|
| {% block og %}
|
|
meta(property="og:type", content="website")
|
|
meta(property="og:url", content="{{ request.url }}")
|
|
|
|
meta(property="og:title", content="Blender Cloud")
|
|
meta(name="twitter:title", content="Blender Cloud")
|
|
|
|
meta(property="og:description", content="Blender Cloud is a web based service developed by Blender Institute that allows people to access the training videos and all the data from the open projects.")
|
|
meta(name="twitter:description", content="Blender Cloud is a web based service developed by Blender Institute that allows people to access the training videos and all the data from the open projects.")
|
|
|
|
meta(property="og:image", content="{% if main_project.picture_header %}{{ main_project.picture_header.thumbnail('l', api=api) }}{% else %}{{ url_for('static', filename='assets/img/backgrounds/background_agent327_04.jpg')}}{% endif %}")
|
|
meta(name="twitter:image", content="{% if main_project.picture_header %}{{ main_project.picture_header.thumbnail('l', api=api) }}{% else %}{{ url_for('static', filename='assets/img/backgrounds/background_agent327_04.jpg')}}{% endif %}")
|
|
| {% endblock %}
|
|
|
|
| {% block navigation_tabs %}
|
|
| {{ navigation_homepage(title) }}
|
|
| {% endblock navigation_tabs %}
|
|
|
|
mixin featured_project_card(title, description, url, image)
|
|
a.featured-project-card.card.asset.my-2(href=url)
|
|
img.card-thumbnail(alt=title, src=image)
|
|
.card-body.py-2()
|
|
.card-title.mb-1.font-weight-bold
|
|
=title
|
|
.card-text
|
|
=description
|
|
|
|
.btn-link
|
|
| See more
|
|
i.pi-angle-right
|
|
|
|
mixin featured_projects()
|
|
section.py-2.mb-3
|
|
h6.title-underline
|
|
| Featured Projects
|
|
|
|
.px-3
|
|
+card-deck(3)&attributes(attributes)
|
|
+featured_project_card(
|
|
"ANIMATION FUNDAMENTALS",
|
|
"Learn the fundamentals to get started with character animation.",
|
|
"/p/animation-fundamentals",
|
|
"{{ url_for('static', filename='assets/img/features/training_animation_fundamentals_01.jpg')}}")
|
|
|
|
+featured_project_card(
|
|
"ANGLERFISH WORKSHOP",
|
|
"Follow Andy Goralczyk while he creates this amazing scene from scratch.",
|
|
"/p/anglerfish",
|
|
"{{ url_for('static', filename='assets/img/features/training_anglerfish_01.jpg')}}")
|
|
|
|
+featured_project_card(
|
|
"STYLIZED CHARACTER WORKSHOP",
|
|
"A detailed guide on how to create a stylized character for film production.",
|
|
"/p/stylized-character-workflow",
|
|
"{{ url_for('static', filename='assets/img/features/training_stylized_character_workshop_01.jpg')}}")
|
|
|
|
|
|
|
|
| {% block body %}
|
|
.container-fluid.dashboard-container.imgs-fluid
|
|
.row.mt-3
|
|
.col-md-10.col-lg-9.col-xl-8.mx-auto
|
|
.d-xl-none
|
|
+featured_projects()
|
|
|
|
+timeline()
|
|
|
|
.d-block.text-center
|
|
a.d-inline-block.p-3.text-muted(href="{{ url_for('main.main_blog') }}")
|
|
| See All Blog Posts
|
|
|
|
a.d-inline-block.p-3.text-muted(
|
|
href="{{ url_for('main.feeds_blogs') }}",
|
|
title="Blogs Feed",
|
|
data-toggle="tooltip",
|
|
data-placement="left")
|
|
i.pi-rss
|
|
| RSS Feed
|
|
|
|
.col-md-10.col-lg-9.col-xl-4.mx-auto
|
|
.d-lg-none.d-xl-block
|
|
+featured_projects()(class="card-deck-vertical border-bottom pb-3")
|
|
|
|
section.py-2.border-bottom.mb-3
|
|
h6.title-underline
|
|
a.text-muted(href="{{ url_for('main.nodes_search_index') }}")
|
|
| Random Awesome
|
|
|
|
| {% if random_featured %}
|
|
+card-deck()(class='pl-3 random-featured')
|
|
| {% for child in random_featured %}
|
|
| {% if child.node_type not in ['comment'] %}
|
|
| {{ asset_list_item(child, current_user) }}
|
|
| {% endif %}
|
|
| {% endfor %}
|
|
| {% else %}
|
|
.card
|
|
.card-body
|
|
h6.card-title
|
|
| No random featured.
|
|
| {% endif %}
|
|
|
|
section.py-3
|
|
h6.title-underline Latest Comments
|
|
|
|
ul.list-unstyled.pt-2
|
|
| {% if latest_comments %}
|
|
| {% for n in latest_comments %}
|
|
li.pb-2.mb-2.border-bottom.text-truncate
|
|
|
|
a.js-comment-content.text-muted(href="{{ n.url }}")
|
|
| {{ n.properties.content | striptags | truncate(200) }}
|
|
|
|
| {% if n.attached_to %}
|
|
.d-flex.align-items-baseline
|
|
a.text-muted.text-truncate(href="{{ n.attached_to.url }}")
|
|
small.pr-2.font-weight-bold {{ n.project.name }}
|
|
small {{ n.attached_to.name }}
|
|
| {% endif %}
|
|
|
|
.d-flex.align-items-baseline
|
|
small.pr-2.font-weight-bold {{ n.user.full_name }}
|
|
|
|
a.text-muted(href="{{ n.url }}", title="{{ n._created }}")
|
|
small {{ n._created | pretty_date }}
|
|
| {% endfor %}
|
|
|
|
| {% else %}
|
|
span
|
|
| No comments... yet!
|
|
|
|
| {% endif %}
|
|
|
|
|
|
| {% endblock %}
|
|
|
|
|
|
| {% block footer_scripts %}
|
|
script.
|
|
$(function () {
|
|
|
|
/* cleanup mentions in comments */
|
|
$('.js-comment-content').each(function(){
|
|
$(this).text($(this).text().replace(/\*|\@|\<(.*?)\>/g, ''));
|
|
});
|
|
|
|
hopToTop(); // Display jump to top button
|
|
});
|
|
| {% endblock %}
|