Merge branch 'wip-front-end' of git.blender.org:blender-cloud into wip-front-end

This commit is contained in:
Sam Lu
2018-08-06 09:05:38 -05:00
5 changed files with 72 additions and 181 deletions

View File

@@ -19,11 +19,11 @@ let enabled = {
uglify: argv.production
};
var destination = {
let destination = {
css: 'cloud/static/assets/css',
pug: 'cloud/templates',
js: 'cloud/static/assets/js',
}
js: 'cloud/static/assets/js'
};
/* CSS */
gulp.task('styles', function(done) {
@@ -84,6 +84,17 @@ gulp.task('scripts_tutti', function(done) {
});
/* Simply move these vendor scripts from node_modules */
gulp.task('scripts_vendor', function(done) {
let toMove = [
'node_modules/photoswipe/dist/photoswipe.min.js'
];
gulp.src(toMove)
.pipe(gulp.dest(destination.js));
done();
});
// While developing, run 'gulp watch'
gulp.task('watch', function(done) {
// Only reload the pages if we run with --livereload
@@ -99,4 +110,4 @@ gulp.task('watch', function(done) {
// Run 'gulp' to build everything at once
gulp.task('default', gulp.series('styles', 'templates', 'scripts', 'scripts_tutti'));
gulp.task('default', gulp.series('styles', 'templates', 'scripts', 'scripts_tutti', 'scripts_vendor'));

View File

@@ -26,6 +26,7 @@
"dependencies": {
"bootstrap": "^4.1.2",
"jquery": "^3.3.1",
"popper.js": "^1.14.3"
"popper.js": "^1.14.3",
"photoswipe": "^4.1.2"
}
}

View File

@@ -1,13 +1,2 @@
.iframe-container
position: relative
padding-top: 25px
padding-bottom: 52%
height: 0
margin-top: 48px
margin-bottom: 48px
iframe
position: absolute
top: 0
left: 0
width: 100%
height: 100%
.embed-responsive
margin: 48px auto

View File

@@ -17,6 +17,10 @@ section.node-details-container.project
padding-top: 0
padding-bottom: 0
/* Override jumbotron to make it shorter than the default */
.jumbotron
height: 400px
/* Landing Page Sass
================================================================== */
.cta-arrow
@@ -26,6 +30,9 @@ section.node-details-container.project
&.container
max-width: 1190px
h1,
h2,
h3,
ul,
p
max-width: 700px
margin-left: auto

View File

@@ -75,6 +75,7 @@ meta(property="og:url", content="{{url_for('projects.view', project_url=project.
script(src="{{ url_for('static_pillar', filename='assets/js/vendor/videojs-6.2.8.min.js') }}")
script(src="{{ url_for('static_pillar', filename='assets/js/vendor/videojs-ga-0.4.2.min.js') }}")
script(src="{{ url_for('static_pillar', filename='assets/js/vendor/videojs-hotkeys-0.2.20.min.js') }}")
script(src="{{ url_for('static_cloud', filename='assets/js/photoswipe.min.js') }}")
| {% endblock %}
| {% block css %}
@@ -84,193 +85,75 @@ link(href="{{ url_for('static_cloud', filename='assets/css/project-landing.css')
| {% block body %}
header
//- a(href="{{ url_for( 'projects.view', project_url=project.url) }}")
//- img.header(src="{{ project.picture_header.thumbnail('h', api=api) }}")
//- Jumbotron
.jumbotron.jumbotron-fluid(style="background-image: url('../../../static/assets/img/backgrounds/banner-hero.jpg')")
.container
h1.display-4.node_index-collection-name {{ page_title }}
p.lead.node_index-collection-description {{ page_header_text }}
.jumbotron.jumbotron-fluid(
style="background-image: url('{{ project.picture_header.thumbnail('h', api=api) }}'); background-position: 50% 50%;")
//- Secondary Navigation
//- | {% block navbar_secondary %}
//- | {{ projectmacros.render_secondary_navigation(project, pages=pages) }}
| {# Secondary Navigation #}
| {% block navbar_secondary %}
| {{ projectmacros.render_secondary_navigation(project, pages=pages) }}
| {% endblock navbar_secondary %}
//- | {% endblock navbar_secondary %}
.container.navbar-secondary
ul.nav.justify-content-left
li.nav-item
a.nav-link.nav-title(href="#") Hero
li.nav-item
a.nav-link(href="#", class="{% if title == 'updates' %}active{% endif %}") Updates
li.nav-item
a.nav-link(href="#", class="{% if title == 'team' %}active{% endif %}") Team
li.nav-item
a.nav-link(href="/projects/gallery.html", class="{% if title == 'gallery' %}active{% endif %}") Gallery
li.nav-item
a.nav-link(href="#", class="{% if title == 'assets' %}active{% endif %}") Assets
li.nav-item
a.nav-link(href="#", class="{% if title == 'dashboard' %}active{% endif %}") Dashboard
#container.landing
.container.landing
section.node-details-container.project
.node-details-title.container
//- h1 {{ project.name }}
h1 Hero
p Hero is a showcase for the upcoming Grease Pencil in Blender 2.8. Grease Pencil means 2D animation tools within a full 3D pipeline. In Blender. In Open Source. Free for everyone!
p Hero is directed by Daniel M Lara, and it is the 6th short film funded by the Blender Cloud.
.iframe-container
iframe(allowfullscreen="", frameborder="0", height="", src="https://www.youtube.com/embed/pKmSdY56VtY", width="")
p Following the classic Blender Cloud publishing model, blend files, walkthroughs and breakdowns will be released in the upcoming weeks. You can already enjoy a couple of shots #[a(href="https://cloud.blender.org/p/hero/5ad4cbd8f87ec500fea61c22") in the gallery link].
p #[strong Join Blender Cloud!] Projects like Hero are made possible by Blender Cloud subscribers. Consider #[a(href="https://store.blender.org/product/membership/") supporting us] so we can create more Open Content and improve the best 3D (and 2D) animation software in the world!
//- | {% if project.description %}
//- .node-details-description
//- | {{ project | markdowned('description') }}
//- | {% endif %}
h1 {{ project.name }}
| {% if project.description %}
| {{ project | markdowned('description') }}
| {% endif %}
section.gallery
h2.text-center Gallery
//- | {% for n in activity_stream %}
//- | {% if n.node_type not in ['comment', 'post'] and n.picture %}
//- .thumbnail.expand-image-links
//- .img-container
//- a(href="{{ n.picture.thumbnail('l', api=api) }}", data-node_id="{{ n._id }}")
//- img(src="{{ n.picture.thumbnail('l', api=api) }}", alt="{{ n.name }}")
//- .img-caption.table
//- | {# Not using for the moment
//- span.table-cell {{ n.name }}
//- | #}
//- | {% endif %}
//- | {% endfor %}
//- div(class="clearfix")
//- | {% if project.nodes_featured %}
//- | {# In some cases featured_nodes might might be embedded #}
//- | {% if '_id' in project.nodes_featured[0] %}
//- | {% set featured_node_id=project.nodes_featured[0]._id %}
//- | {% else %}
//- | {% set featured_node_id=project.nodes_featured[0] %}
//- | {% endif %}
//- a.btn(href="{{ url_for('projects.view_node', project_url=project.url, node_id=featured_node_id) }}") See more
//- | {% endif %}
.container
| {% for n in activity_stream %}
| {% if n.node_type not in ['comment', 'post'] and n.picture %}
.thumbnail.expand-image-links
.thumbnail-container
a(href="#")
img(src="../../../static/assets/img/landing-page/gallery/hero-gallery-thumbnail-1.jpg")
.thumbnail.expand-image-links
.thumbnail-container
a(href="#")
img(src="../../../static/assets/img/landing-page/gallery/hero-gallery-thumbnail-2.jpg")
.thumbnail.expand-image-links
.thumbnail-container
a(href="#")
img(src="../../../static/assets/img/landing-page/gallery/hero-gallery-thumbnail-3.png")
.thumbnail.expand-image-links
.thumbnail-container
a(href="#")
img(src="../../../static/assets/img/landing-page/gallery/hero-gallery-thumbnail-4.png")
.thumbnail.expand-image-links
.thumbnail-container
a(href="#")
img(src="../../../static/assets/img/landing-page/gallery/hero-gallery-thumbnail-5.png")
.thumbnail.expand-image-links
.thumbnail-container
a(href="#")
img(src="../../../static/assets/img/landing-page/gallery/hero-gallery-thumbnail-6.png")
.thumbnail.expand-image-links
.thumbnail-container
a(href="#")
img(src="../../../static/assets/img/landing-page/gallery/hero-gallery-thumbnail-7.jpg")
.thumbnail.expand-image-links
.thumbnail-container
a(href="#")
img(src="../../../static/assets/img/landing-page/gallery/hero-gallery-thumbnail-8.jpg")
a(href="{{ n.picture.thumbnail('l', api=api) }}", data-node_id="{{ n._id }}")
img(src="{{ n.picture.thumbnail('l', api=api) }}", alt="{{ n.name }}")
| {% endif %}
| {% endfor %}
.clearfix
| {% if project.nodes_featured %}
| {# In some cases featured_nodes might might be embedded #}
| {% if '_id' in project.nodes_featured[0] %}
| {% set featured_node_id=project.nodes_featured[0]._id %}
| {% else %}
| {% set featured_node_id=project.nodes_featured[0] %}
| {% endif %}
p.cta-arrow.text-center
a(href="#")
| See Hero Gallery
img(src="../../static/assets/img/icons/icon-cta-arrow.svg")
a(href="{{ url_for('projects.view_node', project_url=project.url, node_id=featured_node_id) }}")
| See more
i.pi-angle-right
| {% endif %}
section.node-extra
h2.text-center Latest Updates
| {% if activity_stream %}
.container.card-container
.row
| {% for n in activity_stream %}
| {% if n.node_type == 'post' %}
.col-md-4
.card
a.card-image(href="#")
img.card-img-top(src="../../../static/assets/img/landing-page/updates/hero-update-thumbnail-8.jpg")
a.card-image(href="{{ url_for_node(node=n) }}")
| {% if n.picture %}
img.card-img-top(src="{{ n.picture.thumbnail('l', api=api) }}")
| {% endif %}
.card-body
h4.card-title
a(href="#") Title
p.card-text Lorem ipsum dolor sit, amet consectetur adipisicing elit. Aspernatur porro similique dolorum id quos dolore!
.col-md-4
.card
a.card-image(href="#")
img.card-img-top(src="../../../static/assets/img/landing-page/updates/hero-update-thumbnail-7.png")
.card-body
h4.card-title
a(href="#") Title
p.card-text Lorem ipsum dolor sit, amet consectetur adipisicing elit. Aspernatur porro similique dolorum id quos dolore!
.col-md-4
.card
a.card-image(href="#")
img.card-img-top(src="../../../static/assets/img/landing-page/updates/hero-update-thumbnail-6.png")
.card-body
h4.card-title
a(href="#") Title
p.card-text Lorem ipsum dolor sit, amet consectetur adipisicing elit. Aspernatur porro similique dolorum id quos dolore!
.col-md-4
.card
a.card-image(href="#")
img.card-img-top(src="../../../static/assets/img/landing-page/updates/hero-update-thumbnail-5.png")
.card-body
h4.card-title
a(href="#") Title
p.card-text Lorem ipsum dolor sit, amet consectetur adipisicing elit. Aspernatur porro similique dolorum id quos dolore!
.col-md-4
.card
a.card-image(href="#")
img.card-img-top(src="../../../static/assets/img/landing-page/updates/hero-update-thumbnail-4.jpg")
.card-body
h4.card-title
a(href="#") Title
p.card-text Lorem ipsum dolor sit, amet consectetur adipisicing elit. Aspernatur porro similique dolorum id quos dolore!
.clearfix
a(href="{{ url_for_node(node=n) }}") {{ n.name }}
p.card-text {{ n.properties | markdowned('content') | striptags | truncate(140, end="... <small>read more</small>") | safe | hide_none }}
| {% endif %}
| {% endfor %}
| {% endif %}
.clearfix
p.cta-arrow.text-center
a(href="#")
| See All Updates
img(src="../../static/assets/img/icons/icon-cta-arrow.svg")
//- | {% if activity_stream %}
//- .node-updates
//- ul.node-updates-list
//- | {% for n in activity_stream %}
//- | {% if n.node_type == 'post' %}
//- li.node-updates-list-item(
//- data-node_id="{{ n._id }}",
//- class="{{ n.node_type }} {{ n.properties.content_type | hide_none }}")
//- a.image(href="{{ url_for_node(node=n) }}")
//- | {% if n.picture %}
//- img(src="{{ n.picture.thumbnail('l', api=api) }}")
//- | {% endif %}
//- .info
//- a.title(href="{{ url_for_node(node=n) }}") {{ n.name }}
//- p.description(href="{{ url_for_node(node=n) }}")
//- | {% if n.node_type == 'post' %}
//- | {{ n.properties | markdowned('content') | striptags | truncate(140, end="... <small>read more</small>") | safe | hide_none }}
//- | {% else %}
//- | {{ n | markdowned('description') | striptags | truncate(140, end="... <small>read more</small>") | safe | hide_none }}
//- | {% endif %}
//- //span.details
//- // span.what {% if n.properties.content_type %}{{ n.properties.content_type | undertitle }}{% else %}{{ n.node_type | undertitle }}{% endif %} ·
//- // span.when {{ n._updated | pretty_date }} by
//- // span.who {{ n.user.full_name }}
//- | {% endif %}
//- | {% endfor %}
//- | {% endif %}
//- a.btn(href="{{ url_for('main.project_blog', project_url=project.url) }}") See all updates
a(href="{{ url_for('main.project_blog', project_url=project.url) }}")
| See all updates
i.pi-angle-right
| {% endblock body %}