Unverified Commit a17919e5 authored by Ray Schamp's avatar Ray Schamp Committed by GitHub

Merge pull request #5496 from rschamp/rearrange-conference-2021

Bump Conference 2020 to 2021 (Take 2)
parents 8a686311 31e66165
...@@ -145,8 +145,8 @@ const ConferenceFooter = props => ( ...@@ -145,8 +145,8 @@ const ConferenceFooter = props => (
</div> </div>
</FlexRow> </FlexRow>
<LanguageChooser locale={props.intl.locale} /> <LanguageChooser locale={props.intl.locale} />
<div className="conf2020-organized"> <div className="conf2021-organized">
<FormattedMessage id="conference-2020.organizedBy" /> <FormattedMessage id="conference-2021.organizedBy" />
</div> </div>
</FooterBox> </FooterBox>
); );
......
...@@ -6,9 +6,9 @@ require('./navigation.scss'); ...@@ -6,9 +6,9 @@ require('./navigation.scss');
const Navigation = () => ( const Navigation = () => (
<NavigationBox> <NavigationBox>
<ul className="ul mod-2020"> <ul className="ul mod-2021">
<li className="li-left mod-logo mod-2020"> <li className="li-left mod-logo mod-2021">
<ul className="li-left-ul mod-2020"> <ul className="li-left-ul mod-2021">
<li> <li>
<a <a
className="logo-a" className="logo-a"
......
...@@ -2,8 +2,8 @@ ...@@ -2,8 +2,8 @@
@import "../../../../frameless"; @import "../../../../frameless";
#navigation { #navigation {
.ul.mod-2020, .ul.mod-2021,
.li-left-ul.mod-2020 { .li-left-ul.mod-2021 {
display: flex; display: flex;
justify-content: space-between; justify-content: space-between;
flex-flow: row nowrap; flex-flow: row nowrap;
...@@ -11,7 +11,7 @@ ...@@ -11,7 +11,7 @@
list-style-type: none; list-style-type: none;
} }
.li-left-ul.mod-2020 { .li-left-ul.mod-2021 {
padding-left: 0; padding-left: 0;
} }
...@@ -57,7 +57,7 @@ ...@@ -57,7 +57,7 @@
@media #{$medium-and-smaller} { @media #{$medium-and-smaller} {
height: 100px; height: 100px;
.ul.mod-2020 { .ul.mod-2021 {
justify-content: center; justify-content: center;
flex-flow: row wrap; flex-flow: row wrap;
} }
......
const PropTypes = require('prop-types'); const PropTypes = require('prop-types');
const React = require('react'); const React = require('react');
const Navigation = require('../../../navigation/conference/2020/navigation.jsx'); const Navigation = require('../../../navigation/conference/2021/navigation.jsx');
const Footer = require('../../../footer/conference/2020/footer.jsx'); const Footer = require('../../../footer/conference/2021/footer.jsx');
require('../page.scss'); require('../page.scss');
......
...@@ -25,7 +25,7 @@ ...@@ -25,7 +25,7 @@
"name": "conference-index", "name": "conference-index",
"pattern": "^/conference/?(\\?.*)?$", "pattern": "^/conference/?(\\?.*)?$",
"routeAlias": "/conference(?!/201[4-9])", "routeAlias": "/conference(?!/201[4-9])",
"redirect": "/conference/2020" "redirect": "/conference/2021"
}, },
{ {
"name": "conference-index-2017", "name": "conference-index-2017",
...@@ -83,7 +83,13 @@ ...@@ -83,7 +83,13 @@
"name": "conference-index-2020", "name": "conference-index-2020",
"pattern": "^/conference/2020/?$", "pattern": "^/conference/2020/?$",
"routeAlias": "/conference(?!/201[4-9])", "routeAlias": "/conference(?!/201[4-9])",
"view": "conference/2020/index/index", "redirect": "/conference/2021"
},
{
"name": "conference-index-2021",
"pattern": "^/conference/2021/?$",
"routeAlias": "/conference(?!/201[4-9])",
"view": "conference/2021/index/index",
"title": "Scratch Conferences", "title": "Scratch Conferences",
"viewportWidth": "device-width" "viewportWidth": "device-width"
}, },
......
...@@ -3,47 +3,47 @@ const FormattedMessage = require('react-intl').FormattedMessage; ...@@ -3,47 +3,47 @@ const FormattedMessage = require('react-intl').FormattedMessage;
const React = require('react'); const React = require('react');
const render = require('../../../../lib/render.jsx'); const render = require('../../../../lib/render.jsx');
const Page = require('../../../../components/page/conference/2020/page.jsx'); const Page = require('../../../../components/page/conference/2021/page.jsx');
const TitleBanner = require('../../../../components/title-banner/title-banner.jsx'); const TitleBanner = require('../../../../components/title-banner/title-banner.jsx');
require('../../../../components/forms/button.scss'); require('../../../../components/forms/button.scss');
require('./index.scss'); require('./index.scss');
const ConferenceSplash = () => ( const ConferenceSplash = () => (
<div className="index mod-2020"> <div className="index mod-2021">
<TitleBanner className="mod-conference mod-2020"> <TitleBanner className="mod-conference mod-2021">
<div className="title-banner-image mod-2020" /> <div className="title-banner-image mod-2021" />
<h1 className="title-banner-h1 mod-2020"> <h1 className="title-banner-h1 mod-2021">
<center> <center>
<FormattedMessage id="conference-2020.title" /> <FormattedMessage id="conference-2021.title" />
<br /> <br />
<FormattedMessage id="conference-2020.subtitle" /> <FormattedMessage id="conference-2021.subtitle" />
</center> </center>
</h1> </h1>
<h3 className="title-banner-h3 mod-2020"> <h3 className="title-banner-h3 mod-2021">
<FormattedMessage id="conference-2020.dateDesc" /> <FormattedMessage id="conference-2021.dateDesc" />
</h3> </h3>
</TitleBanner> </TitleBanner>
<div className="inner"> <div className="inner">
<section className="conf2020-panel mod-desc"> <section className="conf2021-panel mod-desc">
<p className="conf2020-panel-desc"> <p className="conf2021-panel-desc">
<FormattedMessage id="conference-2020.desc1" />{' '} <FormattedMessage id="conference-2021.desc1" />{' '}
<strong><FormattedMessage id="conference-2020.desc1a" /></strong> <strong><FormattedMessage id="conference-2021.desc1a" /></strong>
<br /> <br />
<br /> <br />
<FormattedMessage id="conference-2020.desc3" /> <FormattedMessage id="conference-2021.desc3" />
</p> </p>
<table className="conf2020-panel-details"> <table className="conf2021-panel-details">
<tbody> <tbody>
<tr className="conf2020-panel-row"> <tr className="conf2021-panel-row">
<td className="conf2020-panel-row-icon"> <td className="conf2021-panel-row-icon">
<img <img
alt="Calendar Icon" alt="Calendar Icon"
className="conf2020-panel-row-icon-image" className="conf2021-panel-row-icon-image"
src="/svgs/conference/index/calendar-icon-solid.svg" src="/svgs/conference/index/calendar-icon-solid.svg"
/> />
</td> </td>
<td><FormattedMessage id="conference-2020.date" /></td> <td><FormattedMessage id="conference-2021.date" /></td>
<td> <td>
<FormattedDate <FormattedDate
day="2-digit" day="2-digit"
...@@ -53,31 +53,31 @@ const ConferenceSplash = () => ( ...@@ -53,31 +53,31 @@ const ConferenceSplash = () => (
/> />
</td> </td>
</tr> </tr>
<tr className="conf2020-panel-row"> <tr className="conf2021-panel-row">
<td className="conf2020-panel-row-icon"> <td className="conf2021-panel-row-icon">
<img <img
alt="Map Icon" alt="Map Icon"
className="conf2020-panel-row-icon-image" className="conf2021-panel-row-icon-image"
src="/svgs/conference/index/map-icon-solid.svg" src="/svgs/conference/index/map-icon-solid.svg"
/> />
</td> </td>
<td><FormattedMessage id="conference-2020.location" /></td> <td><FormattedMessage id="conference-2021.location" /></td>
<td><FormattedMessage id="conference-2020.locationDetails" /></td> <td><FormattedMessage id="conference-2021.locationDetails" /></td>
</tr> </tr>
</tbody> </tbody>
</table> </table>
<a <a
className="button mod-2020-panel" className="button mod-2021-panel"
href="http://scratch2021.eventbrite.com/" href="http://scratch2021.eventbrite.com/"
> >
<FormattedMessage id="conference-2020.register" /> <FormattedMessage id="conference-2021.register" />
</a> </a>
</section> </section>
<section className="conf2020-panel mod-stay"> <section className="conf2021-panel mod-stay">
<p className="conf2020-panel-desc"> <p className="conf2021-panel-desc">
<FormattedMessage <FormattedMessage
id="conference-2020.stayDesc2" id="conference-2021.stayDesc2"
values={{ values={{
emailLink: <a href="mailto:conference@scratch.mit.edu"> emailLink: <a href="mailto:conference@scratch.mit.edu">
conference@scratch.mit.edu conference@scratch.mit.edu
...@@ -86,7 +86,7 @@ const ConferenceSplash = () => ( ...@@ -86,7 +86,7 @@ const ConferenceSplash = () => (
/> />
<br /> <br />
<br /> <br />
<FormattedMessage id="conference-2020.organizedBy" /> <FormattedMessage id="conference-2021.organizedBy" />
</p> </p>
</section> </section>
</div> </div>
......
@import "../../../../colors"; @import "../../../../colors";
@import "../../../../frameless"; @import "../../../../frameless";
.title-banner.mod-conference.mod-2020 { .title-banner.mod-conference.mod-2021 {
padding-top: 0; padding-top: 0;
} }
.title-banner-image.mod-2020 { .title-banner-image.mod-2021 {
opacity: .75; opacity: .75;
margin-bottom: 1.75rem; margin-bottom: 1.75rem;
background-image: url("/images/conference/index/2020/title-banner.jpg"); background-image: url("/images/conference/index/2021/title-banner.jpg");
background-position: center; background-position: center;
background-size: cover; background-size: cover;
width: 100%; width: 100%;
height: 20rem; height: 20rem;
} }
.title-banner-h1.mod-2020 { .title-banner-h1.mod-2021 {
line-height: 1.25em; line-height: 1.25em;
} }
.conf2020-panel, .conf2021-panel,
.title-banner-h3.mod-2020 { .title-banner-h3.mod-2021 {
width: 48.75rem; width: 48.75rem;
margin: auto; margin: auto;
} }
.title-banner-h3.mod-2020 { .title-banner-h3.mod-2021 {
margin: 2rem auto 0; margin: 2rem auto 0;
} }
.title-banner-h3.mod-2020 { .title-banner-h3.mod-2021 {
text-align: center; text-align: center;
color: $type-white; color: $type-white;
} }
.conf2020-panel { .conf2021-panel {
border-bottom: 1px solid $ui-border; border-bottom: 1px solid $ui-border;
} }
.conf2020-panel.mod-last { .conf2021-panel.mod-last {
border-bottom: 0; border-bottom: 0;
} }
.flex-row.conf2020-panel-title { .flex-row.conf2021-panel-title {
justify-content: flex-start; justify-content: flex-start;
align-items: center; align-items: center;
} }
.conf2020-panel-desc { .conf2021-panel-desc {
margin: 2rem 0; margin: 2rem 0;
} }
...@@ -60,14 +60,14 @@ td { ...@@ -60,14 +60,14 @@ td {
vertical-align: middle; vertical-align: middle;
} }
.conf2020-panel-row-icon-image { .conf2021-panel-row-icon-image {
width: 1.5rem; width: 1.5rem;
height: 1.5rem; height: 1.5rem;
} }
.mod-registration .conf2020-panel-desc { .mod-registration .conf2021-panel-desc {
margin-bottom: 0; margin-bottom: 0;
} }
.button.mod-2020-panel { .button.mod-2021-panel {
display: block; display: block;
margin: 2rem auto 0; margin: 2rem auto 0;
background-color: $ui-orange; background-color: $ui-orange;
...@@ -76,7 +76,7 @@ td { ...@@ -76,7 +76,7 @@ td {
text-align: center; text-align: center;
color: $type-white; color: $type-white;
} }
.conf2020-organized { .conf2021-organized {
font-size: .875rem; font-size: .875rem;
margin: 0 auto; margin: 0 auto;
text-align: center; text-align: center;
...@@ -85,93 +85,93 @@ td { ...@@ -85,93 +85,93 @@ td {
} }
@media only screen and (max-width: $mobile - 1) { @media only screen and (max-width: $mobile - 1) {
.index.mod-2020 { .index.mod-2021 {
text-align: left; text-align: left;
} }
.title-banner-image.mod-2020 { .title-banner-image.mod-2021 {
height: 10rem; height: 10rem;
} }
.conf2020-panel, .conf2021-panel,
.title-banner-h3.mod-2020 { .title-banner-h3.mod-2021 {
width: initial; width: initial;
} }
.conf2020-panel { .conf2021-panel {
margin: auto .5rem; margin: auto .5rem;
} }
.title-banner-h3.mod-2020 { .title-banner-h3.mod-2021 {
margin: 1rem .5rem .5rem; margin: 1rem .5rem .5rem;
font-size: 1.1rem; font-size: 1.1rem;
} }
.flex-row.conf2020-panel-title { .flex-row.conf2021-panel-title {
flex-direction: row; flex-direction: row;
} }
.conf2020-panel-title-text { .conf2021-panel-title-text {
max-width: 14rem; max-width: 14rem;
} }
.conf2020-panel-row > td { .conf2021-panel-row > td {
padding: .75rem .375rem .75rem 0; padding: .75rem .375rem .75rem 0;
} }
} }
@media only screen and (min-width: $mobile) and (max-width: $tabletPortrait - 1) { @media only screen and (min-width: $mobile) and (max-width: $tabletPortrait - 1) {
.index.mod-2020 { .index.mod-2021 {
text-align: left; text-align: left;
} }
.title-banner-image.mod-2020 { .title-banner-image.mod-2021 {
height: 10rem; height: 10rem;
} }
.conf2020-panel, .conf2021-panel,
.title-banner-h3.mod-2020 { .title-banner-h3.mod-2021 {
margin: auto .5rem ; margin: auto .5rem ;
width: initial; width: initial;
} }
.title-banner-h3.mod-2020 { .title-banner-h3.mod-2021 {
font-size: 1.1rem; font-size: 1.1rem;
} }
.flex-row.conf2020-panel-title { .flex-row.conf2021-panel-title {
flex-direction: row; flex-direction: row;
} }
.conf2020-panel-title-text { .conf2021-panel-title-text {
max-width: 18.75rem; max-width: 18.75rem;
} }
.button.mod-2020-panel { .button.mod-2021-panel {
width: 5.75rem; width: 5.75rem;
} }
} }
@media only screen and (min-width: $tabletPortrait) and (max-width: $desktop - 1) { @media only screen and (min-width: $tabletPortrait) and (max-width: $desktop - 1) {
.index.mod-2020 { .index.mod-2021 {
text-align: left; text-align: left;
} }
.title-banner-image.mod-2020 { .title-banner-image.mod-2021 {
height: 15rem; height: 15rem;
} }
.conf2020-panel, .conf2021-panel,
.title-banner-h3.mod-2020 { .title-banner-h3.mod-2021 {
margin: auto; margin: auto;
width: 38.75rem; width: 38.75rem;
} }
.title-banner-h3.mod-2020 { .title-banner-h3.mod-2021 {
font-size: 1.1rem; font-size: 1.1rem;
} }
.button.mod-2020-panel { .button.mod-2021-panel {
width: 8.75rem; width: 8.75rem;
} }
} }
{ {
"conference-2020.title": "Scratch Around the World:", "conference-2021.title": "Scratch Around the World:",
"conference-2020.subtitle": "An Online Conference", "conference-2021.subtitle": "An Online Conference",
"conference-2020.dateDesc": "July 22, 2021", "conference-2021.dateDesc": "July 22, 2021",
"conference-2020.locationDetails": "Online", "conference-2021.locationDetails": "Online",
"conference-2020.date": "When:", "conference-2021.date": "When:",
"conference-2020.location": "Where:", "conference-2021.location": "Where:",
"conference-2020.desc1": "Join us for Scratch Around the World, an online conference for educators interested in creative learning with Scratch.", "conference-2021.desc1": "Join us for Scratch Around the World, an online conference for educators interested in creative learning with Scratch.",
"conference-2020.desc1a": "Although we are not able to meet in person this year, we are excited to find ways to connect and share with others in the global Scratch educator community.", "conference-2021.desc1a": "Although we are not able to meet in person this year, we are excited to find ways to connect and share with others in the global Scratch educator community.",
"conference-2020.desc3": "The conference will be free of charge.", "conference-2021.desc3": "The conference will be free of charge.",
"conference-2020.register": "Go to registration page", "conference-2021.register": "Go to registration page",
"conference-2020.stayDesc2": "For additional questions, contact the Scratch Conference Team at {emailLink}", "conference-2021.stayDesc2": "For additional questions, contact the Scratch Conference Team at {emailLink}",
"conference-2020.organizedBy": "The Scratch Conference is organized by the Lifelong Kindergarten group at the MIT Media Lab in collaboration with the Scratch Foundation." "conference-2021.organizedBy": "The Scratch Conference is organized by the Lifelong Kindergarten group at the MIT Media Lab in collaboration with the Scratch Foundation."
} }
...@@ -139,7 +139,7 @@ describe('www-integration footer links', () => { ...@@ -139,7 +139,7 @@ describe('www-integration footer links', () => {
await clickText('Scratch Conference'); await clickText('Scratch Conference');
let url = await driver.getCurrentUrl(); let url = await driver.getCurrentUrl();
let pathname = (new URL(url)).pathname; let pathname = (new URL(url)).pathname;
expect(pathname).toMatch(/^\/conference\/2020\/?$/); expect(pathname).toMatch(/^\/conference\/2021\/?$/);
}); });
}); });
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment