205 lines
7.7 KiB
Plaintext
205 lines
7.7 KiB
Plaintext
include ../../../pillar/src/templates/mixins/components
|
|
|
|
doctype
|
|
html(lang="en")
|
|
head
|
|
meta(charset="utf-8")
|
|
title {% if self.page_title() %}{% block page_title %}{% endblock %} — {% endif %}Blender Cloud
|
|
meta(name="viewport", content="width=device-width, initial-scale=1, shrink-to-fit=no")
|
|
meta(name="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="author", content="Blender Institute")
|
|
meta(name="theme-color", content="#3e92aa")
|
|
|
|
| {% if config['GOOGLE_SITE_VERIFICATION'] %}
|
|
meta(name="google-site-verification" content="{{ config['GOOGLE_SITE_VERIFICATION'] }}")
|
|
| {% endif %}
|
|
|
|
meta(property="og:site_name", content="Blender Cloud")
|
|
meta(property="og:locale", content="en_US")
|
|
meta(name="twitter:card", content="summary_large_image")
|
|
meta(name="twitter:site", content="@Blender_Cloud")
|
|
|
|
| {% block og %}
|
|
meta(property="og:title", content="Blender Cloud")
|
|
meta(property="og:url", content="{{ request.url }}")
|
|
meta(property="og:type", content="website")
|
|
meta(property="og:image", content="{{ url_for('static', filename='assets/img/backgrounds/background_gleb_locomotive.jpg')}}")
|
|
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:title", content="Blender Cloud")
|
|
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(name="twitter:image", content="{{ url_for('static', filename='assets/img/backgrounds/background_gleb_locomotive.jpg')}}")
|
|
| {% endblock og %}
|
|
|
|
script(src="{{ url_for('static_pillar', filename='assets/js/tutti.min.js') }}")
|
|
script.
|
|
pillar.utils.initCurrentUser({{ current_user | json | safe }});
|
|
script(src="{{ url_for('static_pillar', filename='assets/js/timeline.min.js') }}")
|
|
script(src="{{ url_for('static_pillar', filename='assets/js/vendor/jquery.typeahead-0.11.1.min.js')}}")
|
|
script(src="{{ url_for('static_pillar', filename='assets/js/vendor/js.cookie-2.0.3.min.js')}}")
|
|
| {% if current_user.is_authenticated %}
|
|
script(src="{{ url_for('static_pillar', filename='assets/js/vendor/clipboard.min.js')}}")
|
|
| {% endif %}
|
|
|
|
link(href="{{ url_for('static', filename='assets/img/favicon.png') }}", rel="shortcut icon")
|
|
link(href="{{ url_for('static', filename='assets/img/apple-touch-icon-precomposed.png') }}", rel="icon apple-touch-icon-precomposed", sizes="192x192")
|
|
|
|
| {% block head %}{% endblock %}
|
|
|
|
| {% block css %}
|
|
| {% if title == 'blog' %}
|
|
link(href="{{ url_for('static_pillar', filename='assets/css/blog.css') }}", rel="stylesheet")
|
|
| {% else %}
|
|
link(href="{{ url_for('static_cloud', filename='assets/css/main.css') }}", rel="stylesheet")
|
|
| {% endif %}
|
|
| {% endblock css %}
|
|
|
|
| {% if not title %}{% set title="default" %}{% endif %}
|
|
body(class="{{ title }} {{'project' if project and project.url != 'blender-cloud'}} {% block bodyclasses %}{% endblock %}"
|
|
"{% block bodyattrs %}{% endblock %}"
|
|
)
|
|
| {% with messages = get_flashed_messages(with_categories=True) %}
|
|
| {% if messages %}
|
|
| {% for (category, message) in messages %}
|
|
.alert(role="alert", class="alert-{{ category }}")
|
|
i.alert-icon(class="{{ category }}")
|
|
span {{ message }}
|
|
button.close(type="button", data-dismiss="alert")
|
|
i.pi-cancel
|
|
| {% endfor %}
|
|
| {% endif %}
|
|
| {% endwith %}
|
|
|
|
nav.navbar.navbar-expand-md.fixed-top.bg-white
|
|
|
|
|
|
| {% block navigation_tabs %}
|
|
+nav-secondary(class="collapse navbar-collapse")#navigationLinks
|
|
+nav-secondary-link(
|
|
href="{{ url_for('main.homepage') }}")
|
|
i.pi-blender-cloud-logo
|
|
| {% endblock navigation_tabs %}
|
|
+nav-secondary()(class="m-auto keep-when-overlay")
|
|
div.nav-item.quick-search.qs-input#qs-input
|
|
|
|
+nav-secondary()(class="ml-auto")
|
|
| {% if node and node.properties and node.properties.category %}
|
|
| {% set category = node.properties.category %}
|
|
| {% else %}
|
|
| {% set category = title %}
|
|
| {% endif %}
|
|
li.nav-item.quick-search.cursor-pointer.px-3.pi-search#qs-toggle
|
|
|
|
| {% block navigation_sections %}
|
|
| {% endblock navigation_sections %}
|
|
|
|
| {% block navigation_user %}
|
|
| {% include 'menus/notifications.html' %}
|
|
| {% include 'menus/user.html' %}
|
|
| {% endblock navigation_user %}
|
|
|
|
| {% if current_user.is_anonymous %}
|
|
li
|
|
a.btn.btn-sm.btn-primary.px-4.mx-1(
|
|
href="https://store.blender.org/product/membership/",
|
|
title="Sign up") Sign up
|
|
| {% endif %}
|
|
|
|
.loading-bar
|
|
|
|
.page-content
|
|
.quick-search.container-fluid.m-auto.p-5#search-overlay
|
|
ul.qs-loading.text-center
|
|
i.h1.pi-spin.spinner
|
|
h2 Loading
|
|
| {% block page_overlay %}
|
|
#page-overlay
|
|
| {% endblock page_overlay %}
|
|
.page-body
|
|
| {% block body %}{% endblock %}
|
|
|
|
| {% block footer_container %}
|
|
| {% include '_footer.html' %}
|
|
| {% endblock footer_container %}
|
|
|
|
#notification-pop(data-url="", data-read-toggle="")
|
|
.nc-progress
|
|
a#pop-close(href="#", title="Dismiss")
|
|
i.pi-cancel
|
|
.nc-item
|
|
.nc-avatar
|
|
.nc-text
|
|
span.nc-date
|
|
a(href="")
|
|
| {% if current_user.is_authenticated %}
|
|
script(src="{{ url_for('static_pillar', filename='assets/js/vendor/jquery.typewatch-3.0.0.min.js') }}")
|
|
script.
|
|
// When sending an AJAX request, always add the X-CSRFToken header to it.
|
|
var csrf_token = "{{ csrf_token() }}";
|
|
$.ajaxSetup({
|
|
beforeSend: function (xhr, settings) {
|
|
if (!/^(GET|HEAD|OPTIONS|TRACE)$/i.test(settings.type) && !this.crossDomain) {
|
|
xhr.setRequestHeader("X-CSRFToken", csrf_token);
|
|
}
|
|
}
|
|
});
|
|
| {% endif %}
|
|
|
|
script.
|
|
$(document).ready(function() {
|
|
{% if current_user.is_authenticated %}
|
|
getNotificationsLoop(); // Check for new notifications in the background
|
|
|
|
// Resize #notifications and change overflow for scrollbars
|
|
$(window).on("resize", function() { notificationsResize(); });
|
|
{% endif %}
|
|
});
|
|
|
|
// Enable all tooltips.
|
|
if (typeof $().tooltip != 'undefined'){
|
|
$('[data-toggle="tooltip"]').tooltip({'delay' : {'show': 0, 'hide': 0}});
|
|
}
|
|
|
|
// Enable Quick Search
|
|
let searches = {
|
|
{% if project and not project.is_private %}
|
|
project: {
|
|
name: 'Project',
|
|
uiUrl: '{{ url_for("projects.search", project_url=project.url)}}',
|
|
apiUrl: '/api/newsearch/multisearch',
|
|
searchParams: [
|
|
{name: 'Assets', params: {project: '{{ project._id }}', node_type: 'asset'}},
|
|
{name: 'Blog', params: {project: '{{ project._id }}', node_type: 'post'}},
|
|
{name: 'Groups', params: {project: '{{ project._id }}', node_type: 'group'}},
|
|
]
|
|
},
|
|
{% endif %}
|
|
cloud: {
|
|
name: 'Cloud',
|
|
uiUrl: '/search',
|
|
apiUrl: '/api/newsearch/multisearch',
|
|
searchParams: [
|
|
{name: 'Assets', params: {node_type: 'asset'}},
|
|
{name: 'Blog', params: {node_type: 'post'}},
|
|
{name: 'Groups', params: {node_type: 'group'}},
|
|
]
|
|
},
|
|
}
|
|
|
|
$('#qs-toggle').quickSearch({
|
|
resultTarget: '#search-overlay',
|
|
inputTarget: '#qs-input',
|
|
searches: searches,
|
|
});
|
|
|
|
| {% block footer_scripts_pre %}{% endblock %}
|
|
| {% block footer_scripts %}{% endblock %}
|
|
|
|
script.
|
|
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
|
|
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
|
|
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
|
|
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
|
|
ga('create', '{{ config.GOOGLE_ANALYTICS_TRACKING_ID }} ', 'auto', {'allowAnchor': true});
|
|
ga('send', 'pageview');
|