restyle all the things

This commit is contained in:
Connor Hudson 2016-06-01 11:57:50 -04:00
parent d645e95bd7
commit 1178a50beb
13 changed files with 1291 additions and 676 deletions

77
src/_infopage.scss Normal file
View file

@ -0,0 +1,77 @@
@import "colors";
@import "frameless";
@mixin info {
$ui-secondary: darken($ui-blue, 10%);
.title-banner {
&.masthead {
background-color: $ui-secondary;
padding-bottom: .5rem;
h1 {
margin: 0 0 1rem 0;
text-align: left;
color: $ui-white;
}
p {
margin: 0;
width: $cols6;
text-align: left;
color: $ui-white;
a {
border-bottom: 1px solid $ui-white;
color: $ui-white;
}
}
}
&.faq-banner {
margin-bottom: 0;
background-color: $ui-gray;
}
}
p {
margin-bottom: 1.25rem;
margin-left: 0;
max-width: $cols8;
text-align: left;
}
dl {
dt {
margin-bottom: .25rem;
font-size: 1.1rem;
}
dd {
margin-bottom: 1.25rem;
margin-left: 0;
max-width: $cols8;
text-align: left;
}
}
ul {
max-width: $cols8;
}
section {
margin-bottom: 3rem;
ul {
max-width: $cols8;
}
.nav-spacer {
display: block;
visibility: hidden;
margin-top: -50px; // height of nav bar
height: 50px;
}
}
}

View file

@ -0,0 +1,37 @@
var classNames = require('classnames');
var React = require('react');
var TitleBanner = require('../../components/title-banner/title-banner.jsx');
require('./informationpage.scss');
/**
* Container for a table of contents
* alongside a long body of text
*/
var InformationPage = React.createClass({
type: 'InformationPage',
propTypes: {
title: React.PropTypes.string.isRequired
},
render: function () {
var classes = classNames(
'info-outer',
'inner',
this.props.className
);
return (
<div>
<TitleBanner className="masthead">
<div className="inner">
<h1>{this.props.title}</h1>
</div>
</TitleBanner>
<div className={classes}>
{this.props.children}
</div>
</div>
);
}
});
module.exports = InformationPage;

View file

@ -0,0 +1,20 @@
@import "../../colors";
.info-outer {
margin: 0 auto;
nav {
float: right;
border-left: 1px solid $ui-border;
width: 30%;
ol {
list-style: none;
}
}
.info-inner {
float: left;
width: 60%;
}
}

View file

@ -35,6 +35,12 @@
"view": "credits/credits",
"title": "Credits"
},
{
"name": "faq",
"pattern": "^/info/faq/?$",
"view": "faq/faq",
"title": "FAQ"
},
{
"name": "cards",
"pattern": "^/info/cards/?$",
@ -107,7 +113,7 @@
},
{
"name": "guidelines",
"pattern": "^/community_guidelines$",
"pattern": "^/community_guidelines/?$",
"view": "guidelines/guidelines",
"title": "Scratch Community Guidelines"
},

View file

@ -1,15 +1,17 @@
var React = require('react');
var FormattedMessage = require('react-intl').FormattedMessage;
var render = require('../../lib/render.jsx');
var Page = require('../../components/page/www/page.jsx');
var Box = require('../../components/box/box.jsx');
var InformationPage = require('../../components/informationpage/informationpage.jsx');
var Page = require('../../components/page/www/page.jsx');
require('./dmca.scss');
var Dmca = React.createClass({
type: 'Dmca',
render: function () {
return (
<div className="inner dmca">
<Box title={'DMCA'}>
<div className="dmca">
<InformationPage title={'DMCA'}>
<p><FormattedMessage id='dmca.intro' /></p>
<p>
Copyright Agent / Mitchel Resnick<br/>
@ -23,7 +25,7 @@ var Dmca = React.createClass({
<p><FormattedMessage id='dmca.assessment' /></p>
<p><FormattedMessage id='dmca.eyetoeye' /></p>
<p><FormattedMessage id='dmca.afterfiling' /></p>
</Box>
</InformationPage>
</div>
);
}

9
src/views/dmca/dmca.scss Normal file
View file

@ -0,0 +1,9 @@
@import "../../infopage";
#view {
padding: 0;
}
.dmca {
@include info;
}

199
src/views/faq/faq.jsx Normal file
View file

@ -0,0 +1,199 @@
var React = require('react');
var FormattedHTMLMessage = require('react-intl').FormattedHTMLMessage;
var FormattedMessage = require('react-intl').FormattedMessage;
var render = require('../../lib/render.jsx');
var Page = require('../../components/page/www/page.jsx');
var InformationPage = require('../../components/informationpage/informationpage.jsx');
require('./faq.scss');
var Faq = React.createClass({
type: 'Faq',
render: function () {
return (
<div className="faq">
<InformationPage title={'Frequently Asked Questions (FAQ)'}>
<div className="inner info-inner">
<section id="about-scratch">
<span className="nav-spacer"></span>
<h2><FormattedMessage id='faq.aboutTitle' /></h2>
<dl>
<dt><FormattedMessage id='faq.aboutScratchTitle' /></dt>
<dd><FormattedHTMLMessage id='faq.aboutScratchBody' /></dd>
<dt><FormattedMessage id='faq.makeGameTitle' /></dt>
<dd><FormattedHTMLMessage id='faq.makeGameBody' /></dd>
<dt><FormattedMessage id='faq.requirementsTitle' /></dt>
<dd><FormattedHTMLMessage id='faq.requirementsBody' /></dd>
<dt><FormattedMessage id='faq.offlineTitle' /></dt>
<dd><FormattedHTMLMessage id='faq.offlineBody' /></dd>
<dt><FormattedMessage id='faq.uploadOldTitle' /></dt>
<dd><FormattedHTMLMessage id='faq.uploadOldBody' /></dd>
<dt><FormattedMessage id='faq.recordVideoTitle' /></dt>
<dd><FormattedHTMLMessage id='faq.recordVideoBody' /></dd>
<dt><FormattedMessage id='faq.scratchCostTitle' /></dt>
<dd><FormattedHTMLMessage id='faq.scratchCostBody' /></dd>
<dt><FormattedMessage id='faq.mediaLabTitle' /></dt>
<dd><FormattedHTMLMessage id='faq.mediaLabBody' /></dd>
</dl>
</section>
<section id="privacy">
<span className="nav-spacer"></span>
<h2><FormattedMessage id='faq.privacyTitle' /></h2>
<dl>
<dt><FormattedMessage id='faq.accountInfoTitle' /></dt>
<dd><FormattedHTMLMessage id='faq.accountInfoList' /></dd>
<ul>
<li><FormattedHTMLMessage id='faq.privacyUsername' /></li>
<li><FormattedHTMLMessage id='faq.privacyCountry' /></li>
<li><FormattedHTMLMessage id='faq.privacyBirthdate' /></li>
<li><FormattedHTMLMessage id='faq.privacyGender' /></li>
<li><FormattedHTMLMessage id='faq.privacyEmail' /></li>
</ul>
<dd><FormattedHTMLMessage id='faq.accountPublicInfo' /></dd>
<dt><FormattedMessage id='faq.dataCollectionTitle' /></dt>
<dd><FormattedHTMLMessage id='faq.dataCollectionOne' /></dd>
<dt><FormattedMessage id='faq.rentInfoTitle' /></dt>
<dd><FormattedHTMLMessage id='faq.rentInfoBody' /></dd>
<dt><FormattedMessage id='faq.viewUnsharedTitle' /></dt>
<dd><FormattedHTMLMessage id='faq.viewUnsharedBody' /></dd>
</dl>
</section>
<section id="remix">
<span className="nav-spacer"></span>
<h2><FormattedMessage id='faq.remixTitle' /></h2>
<dl>
<dt><FormattedMessage id='faq.remixDefinitionTitle' /></dt>
<dd><FormattedHTMLMessage id='faq.remixDefinitionBody' /></dd>
<dt><FormattedMessage id='faq.remixableTitle' /></dt>
<dd><FormattedHTMLMessage id='faq.remixableBody' /></dd>
<dt><FormattedMessage id='faq.creativeCommonsTitle' /></dt>
<dd><FormattedHTMLMessage id='faq.creativeCommonsBody' /></dd>
<dt><FormattedMessage id='faq.fairUseTitle' /></dt>
<dd><FormattedHTMLMessage id='faq.fairUseBody' /></dd>
</dl>
</section>
<section id="accounts">
<span className="nav-spacer"></span>
<h2><FormattedMessage id='faq.accountsTitle' /></h2>
<dl>
<dt><FormattedMessage id='faq.confirmedAccountTitle' /></dt>
<dd><FormattedHTMLMessage id='faq.confirmedAccountBody' /></dd>
<dt><FormattedMessage id='faq.checkConfirmedTitle' /></dt>
<dd><FormattedHTMLMessage id='faq.checkConfirmedBody' /></dd>
<dt><FormattedMessage id='faq.howToConfirmTitle' /></dt>
<dd><FormattedHTMLMessage id='faq.howToConfirmBody' /></dd>
<dt><FormattedMessage id='faq.requireConfirmTitle' /></dt>
<dd><FormattedHTMLMessage id='faq.requireConfirmBody' /></dd>
<dt><FormattedMessage id='faq.forgotPasswordTitle' /></dt>
<dd><FormattedHTMLMessage id='faq.forgotPasswordBody' /></dd>
<dt><FormattedMessage id='faq.changePasswordTitle' /></dt>
<dd><FormattedHTMLMessage id='faq.changePasswordBody' /></dd>
<dt><FormattedMessage id='faq.changeEmailTitle' /></dt>
<dd><FormattedHTMLMessage id='faq.changeEmailBody' /></dd>
<dt><FormattedMessage id='faq.newScratcherTitle' /></dt>
<dd><FormattedHTMLMessage id='faq.newScratcherBody' /></dd>
<dt><FormattedMessage id='faq.multipleAccountTitle' /></dt>
<dd><FormattedHTMLMessage id='faq.multipleAccountBody' /></dd>
<dt><FormattedMessage id='faq.multipleLoginTitle' /></dt>
<dd><FormattedHTMLMessage id='faq.multipleLoginBody' /></dd>
<dt><FormattedMessage id='faq.changeUsernameTitle' /></dt>
<dd><FormattedHTMLMessage id='faq.changeUsernameBody' /></dd>
<dt><FormattedMessage id='faq.shareInfoTitle' /></dt>
<dd><FormattedHTMLMessage id='faq.shareInfoBody' /></dd>
<dt><FormattedMessage id='faq.deleteAccountTitle' /></dt>
<dd><FormattedHTMLMessage id='faq.deleteAccountBody' /></dd>
</dl>
</section>
<section id="permissions">
<span className="nav-spacer"></span>
<h2><FormattedMessage id='faq.permissionsTitle' /></h2>
<dl>
<dt><FormattedMessage id='faq.scratchFreeTitle' /></dt>
<dd><FormattedHTMLMessage id='faq.scratchFreeBody' /></dd>
<dt><FormattedMessage id='faq.scratchScreenshotTitle' /></dt>
<dd><FormattedHTMLMessage id='faq.scratchScreenshotBody' /></dd>
<dt><FormattedMessage id='faq.scratchDescriptionTitle' /></dt>
<dd><FormattedHTMLMessage id='faq.scratchDescriptionBody' /></dd>
<dt><FormattedMessage id='faq.presentScratchTitle' /></dt>
<dd><FormattedHTMLMessage id='faq.presentScratchBody' /></dd>
<dt><FormattedMessage id='faq.supportMaterialTitle' /></dt>
<dd><FormattedHTMLMessage id='faq.supportMaterialBody' /></dd>
<dt><FormattedMessage id='faq.sellProjectsTitle' /></dt>
<dd><FormattedHTMLMessage id='faq.sellProjectsBody' /></dd>
<dt><FormattedMessage id='faq.sourceCodeTitle' /></dt>
<dd><FormattedHTMLMessage id='faq.sourceCodeBody' /></dd>
</dl>
</section>
<section id="inappropriate-content">
<span className="nav-spacer"></span>
<h2><FormattedMessage id='faq.inappropriateContentTitle' /></h2>
<dl>
<dt><FormattedMessage id='faq.okayToShareTitle' /></dt>
<dd><FormattedHTMLMessage id='faq.okayToShareBody' /></dd>
<dt><FormattedMessage id='faq.reportContentTitle' /></dt>
<dd><FormattedHTMLMessage id='faq.reportContentBody' /></dd>
<dt><FormattedMessage id='faq.noFlameTitle' /></dt>
<dd><FormattedHTMLMessage id='faq.noFlameBody' /></dd>
<dt><FormattedMessage id='faq.reviewContentTitle' /></dt>
<dd><FormattedHTMLMessage id='faq.reviewContentBody' /></dd>
<dt><FormattedMessage id='faq.blockedAccountTitle' /></dt>
<dd><FormattedHTMLMessage id='faq.blockedAccountBody' /></dd>
<dt><FormattedMessage id='faq.stolenAccountTitle' /></dt>
<dd><FormattedHTMLMessage id='faq.stolenAccountBody' /></dd>
</dl>
</section>
<section id="clouddata">
<span className="nav-spacer"></span>
<h2><FormattedMessage id='faq.cloudDataTitle' /></h2>
<dl>
<dt><FormattedMessage id='faq.cloudDataInfoTitle' /></dt>
<dd><FormattedHTMLMessage id='faq.cloudDataInfoBody' /></dd>
<dt><FormattedMessage id='faq.storedCloudInfoTitle' /></dt>
<dd><FormattedHTMLMessage id='faq.storedCloudInfoBody' /></dd>
<dt><FormattedMessage id='faq.onlyNumbersTitle' /></dt>
<dd><FormattedHTMLMessage id='faq.onlyNumbersBody' /></dd>
<dt><FormattedMessage id='faq.reportCloudTitle' /></dt>
<dd><FormattedHTMLMessage id='faq.reportCloudBody' /></dd>
<dt><FormattedMessage id='faq.chatRoomTitle' /></dt>
<dd><FormattedHTMLMessage id='faq.chatRoomBody' /></dd>
<dt><FormattedMessage id='faq.makeCloudVarTitle' /></dt>
<dd><FormattedHTMLMessage id='faq.makeCloudVarBody' /></dd>
<dt><FormattedMessage id='faq.changeCloudVarTitle' /></dt>
<dd><FormattedHTMLMessage id='faq.changeCloudVarBody' /></dd>
<dt><FormattedMessage id='faq.newScratcherCloudTitle' /></dt>
<dd><FormattedHTMLMessage id='faq.newScratcherCloudBody' /></dd>
<dt><FormattedMessage id='faq.multiplayerTitle' /></dt>
<dd><FormattedHTMLMessage id='faq.multiplayerBody' /></dd>
<dt><FormattedMessage id='faq.cloudLagTitle' /></dt>
<dd><FormattedHTMLMessage id='faq.cloudLagBody' /></dd>
</dl>
</section>
</div>
<nav>
<ol>
<li><a href="#about-scratch"><FormattedMessage id='faq.aboutTitle' /></a></li>
<li><a href="#privacy"><FormattedMessage id='faq.privacyTitle' /></a></li>
<li><a href="#remix"><FormattedMessage id='faq.remixTitle' /></a></li>
<li><a href="#accounts"><FormattedMessage id='faq.accountsTitle' /></a></li>
<li><a href="#permissions"><FormattedMessage id='faq.permissionsTitle' /></a></li>
<li><a href="#inappropriate-content">
<FormattedMessage id='faq.inappropriateContentTitle' />
</a></li>
<li><a href="#clouddata"><FormattedMessage id='faq.cloudDataTitle' /></a></li>
</ol>
</nav>
</InformationPage>
</div>
);
}
});
render(<Page><Faq /></Page>, document.getElementById('app'));

9
src/views/faq/faq.scss Normal file
View file

@ -0,0 +1,9 @@
@import "../../infopage";
#view {
padding: 0;
}
.faq {
@include info;
}

121
src/views/faq/l10n.json Normal file
View file

@ -0,0 +1,121 @@
{
"faq.intro":"On this page, youll find answers to frequently asked questions about Scratch.",
"faq.aboutTitle":"General Questions",
"faq.privacyTitle":"Privacy Policy",
"faq.remixTitle":"Remixing and Copying",
"faq.accountsTitle":"Accounts",
"faq.permissionsTitle":"Licensing and Permissions",
"faq.inappropriateContentTitle":"Inappropriate Content",
"faq.cloudDataTitle":"Cloud Data",
"faq.aboutScratchTitle":"What is Scratch, and what can I do with it?",
"faq.aboutScratchBody":"Scratch is a programming language and online community where you can create your own interactive stories, games, and animations -- and share your creations with others around the world. In the process of designing and programming Scratch projects, young people learn to think creatively, reason systematically, and work collaboratively. To learn more about Scratch, check out the <a href=\"/about\">About Scratch</a> page.",
"faq.makeGameTitle":"How do I make a game or animation with Scratch?",
"faq.makeGameBody":"Check out the <a href= \"/help \">help page</a> to see lots of ways to get started with Scratch. Or just <a href= \"/projects/editor/?tip_bar=getStarted \">dive in</a> to the project editor.",
"faq.requirementsTitle":"What are the system requirements for Scratch?",
"faq.requirementsBody":"To run Scratch 2, you need a relatively recent web browser (<a href= \"http://google.com/chrome/ \">Chrome</a> 35 or later, <a href= \"http://www.mozilla.org/en-US/firefox/new/ \">Firefox</a> 31 or later, or Internet Explorer 9 or later) with <a href= \" \">Adobe Flash Player</a> version 10.2 or later installed. Scratch 2 is designed to support screen sizes 1024 x 768 or larger. If your computer doesnt meet these requirements, you can try downloading and installing <a href = \"/scratch_1.4 \">Scratch 1.4</a>, which you can still use to share projects to the Scratch 2 website.",
"faq.offlineTitle":"Do you have a downloadable version so I can create and view projects offline?",
"faq.offlineBody":"The <a href= \"/scratch2download/ \">Scratch 2 offline editor (beta version)</a> is now available. You can also still use <a href = \"/scratch_1.4 \">Scratch 1.4</a>. Note: You can have both Scratch 1.4 and 2 on your computer.",
"faq.uploadOldTitle":"Can I still upload projects created with older versions of Scratch to the website?",
"faq.uploadOldBody":"Yes - you can share or upload projects made with earlier versions of Scratch, and they will be visible and playable. (However, you cant download projects made with or edited in later versions of Scratch and open them in earlier versions. For example, you cant open a Scratch 2 project in <a href =\"/scratch_1.4\">Scratch 1.4</a>, because <a href =\"/scratch_1.4\">Scratch 1.4</a> doesnt know how to read the .sb2 project file format.)",
"faq.recordVideoTitle":"Can I record a video of my Scratch project?",
"faq.recordVideoBody":"Yes, you can record a video of your Scratch project up to 60 seconds. In the Scratch editor, from the File menu, select \"Record Project Video.\" (You need to be signed in to see this option.) You can choose additional recording options (such as recording sound and mouse clicks) through the \"More Options\" menu. Then, run your project however you'd like. Once the recording is done, follow the instructions to download the file to your computer. Depending on what kind of computer you have, you may need to download another program like the <a href=\"http://www.videolan.org/vlc/index.html\">VLC Media Player</a> to play the file. This file will run on YouTube, Vimeo, and Facebook, but may need to be converted for other websites like Twitter or Tumblr.",
"faq.scratchCostTitle":"How much does Scratch cost? Do I need a license?",
"faq.scratchCostBody":"Scratch is and always will be free. You dont need a license to use Scratch in your school, home, or anywhere else. The development and maintenance of Scratch is paid for by grants and donations. If youd like to contribute to Scratch, check out our <a href=\"https://secure.donationpay.org/scratchfoundation/\">Donate page</a>.",
"faq.mediaLabTitle":"Who created Scratch?",
"faq.mediaLabBody":"Scratch is developed and maintained by the Scratch Team at the <a href=\"http://llk.media.mit.edu/\">Lifelong Kindergarten group</a> at <a href=\"http://www.media.mit.edu/\">MIT Media Lab</a>.",
"faq.accountInfoTitle":"What information do you ask for during account registration?",
"faq.accountInfoList":"To protect the privacy of our community members, we limit what we collect and what we publish on the website. During the registration process, we ask for the following information:",
"faq.privacyUsername":"username - We ask that users avoid using their real names or other identifying information.",
"faq.privacyCountry":"country",
"faq.privacyBirthdate":"birth month and year - We use this to confirm ownership of the account if the owner loses the password and email or asks to close an account.",
"faq.privacyGender":"gender",
"faq.privacyEmail":"contact email address - If the account holder is younger than 13, we ask for the email address of their parent or guardian. We do not send email to this address except when someone requests to have the account password reset.",
"faq.accountPublicInfo":"The username and country of the account holder are displayed publicly on their profile page. The birth month / year, email address, and gender associated with the account are not displayed publicly. We collect this info so we can know the age and gender of our users in aggregate, and for research purposes. We do not sell or rent information about our users to anyone.",
"faq.dataCollectionTitle":"What data is collected from people while they use the website?",
"faq.dataCollectionOne":"When a user logs in, the Scratch website asks their browser to put an <a href=\"http://en.wikipedia.org/wiki/HTTP_cookie\">http cookie</a> on their computer in order to remember that they are logged in while they browse different pages. We collect some data on where users click and which parts of the site they visit using Google Analytics. This \"click data\" helps us figure out ways to improve the website.",
"faq.dataCollectionTwo":"Some of the information and data collected on the Scratch website are used in research studies intended to improve our understanding of how people learn with Scratch. The results of this research are shared with educators and researchers through conferences, journals, and other publications. You can find out more on our <a href=\"/info/research\">Research page</a>.",
"faq.rentInfoTitle":"Does the Scratch Team sell or rent information about users of Scratch to anyone?",
"faq.rentInfoBody":"No.",
"faq.viewUnsharedTitle":"Can the Scratch Team view unshared projects on my 'My Stuff' page?",
"faq.viewUnsharedBody":"Since the Scratch Team is responsible for moderation, we have access to all content stored on the Scratch website - including unshared projects. If you prefer to work on projects in complete privacy, you can use either the <a href=\"/scratch2download\">Scratch 2 offline editor</a> or <a href =\"/scratch_1.4\">Scratch 1.4</a>.",
"faq.remixDefinitionTitle":"What is a remix?",
"faq.remixDefinitionBody":"When a Scratcher makes a copy of someone elses project and modifies it to add their own ideas (for example, by changing scripts or costumes), the resulting project is called a \"remix.\" Every project shared to the Scratch website can be remixed. We consider even a minor change to be a valid remix, as long as credit is given to the original project creator and others who made significant contributions to the remix.",
"faq.remixableTitle":"Why does the Scratch Team require that all projects be “remixable”?",
"faq.remixableBody":"We believe that viewing and remixing interesting projects is a great way to learn to program, and leads to cool new ideas. Thats why the source code is visible for every project shared to the Scratch website.",
"faq.creativeCommonsTitle":"What if I dont want others to remix my projects?",
"faq.creativeCommonsBody":"By publishing your project on the Scratch website, you agree to license it under a <a href=\"http://creativecommons.org/licenses/by-sa/2.0/deed.en\">Creative Commons Share Alike</a> license. If you dont want others to view and remix your creations, dont share them on the Scratch website.",
"faq.fairUseTitle":"Can I use images / sounds / media from the internet in my projects?",
"faq.fairUseBody":"It's important to respect the original creators wishes regarding remixing. If you choose to integrate someone elses work into your own, be sure to give them credit on the project “credits” section, and include a link back to the original. To find art / sounds that are already licensed for remixing, check out the <a href=\"http://search.creativecommons.org/\">Creative Commons search page</a>.",
"faq.confirmedAccountTitle":"What is a “confirmed” Scratch account?",
"faq.confirmedAccountBody":"A confirmed account on Scratch lets you share projects, write comments, and create studios. Confirming your account also lets you receive email updates from the Scratch Team.",
"faq.checkConfirmedTitle":"How can I check whether my account has been confirmed?",
"faq.checkConfirmedBody":"To check whether your account is confirmed, you must first log into your Scratch account in the top right of the screen. Once logged in, click on your username in the top right and select \"Account Settings\", then \"Email Settings\" on the left hand side. Confirmed email addresses will show a small green checkmark. Otherwise, you will see the text \"Your email address is unconfirmed\" in orange.",
"faq.howToConfirmTitle":"How do I confirm my account?",
"faq.howToConfirmBody":"After registering for Scratch, you will receive an email with a link to confirm your account. If you cannot find the email, check your Spam folder. To resend the email, go to your Account Settings, click the Email tab, and follow the instructions there. Please note that it may take up to an hour for the email to arrive. If you still don't see the email after an hour, <a href=\"/contact-us\">let us know</a>.",
"faq.requireConfirmTitle":"Do I have to confirm my account?",
"faq.requireConfirmBody":"You can still use many aspects of Scratch without confirming your account, including creating and saving projects (without sharing them). Note: If you created an account before February 11, 2015, then you can still use social features on Scratch without confirming your account.",
"faq.forgotPasswordTitle":"I forgot my password, how can I reset it?",
"faq.forgotPasswordBody":"Enter your account name on the <a href=\"/accounts/password_reset/\">password reset page</a>. The website will send an email to the address associated with the account containing a link you can use to reset your password.",
"faq.changePasswordTitle":"How do I change my password?",
"faq.changePasswordBody":"Go to the Scratch website, login, and then click your username in the upper right corner of the window. Choose \"account settings\", and click the link to change your password.",
"faq.changeEmailTitle":"How do I change my email address?",
"faq.changeEmailBody":"Go to the Scratch website, login, and then click your username in the upper right corner of the window. Choose \"account settings\", and click the link to change your email.",
"faq.newScratcherTitle":"How do I transition from 'New Scratcher' to 'Scratcher'?",
"faq.newScratcherBody":"Make and share projects, comment helpfully on other Scratcher's projects, and be patient! After a few weeks of being active, a link will appear on your profile page inviting you to become a Scratcher. (Note that we don't promote New Scratchers to Scratcher on request - even when bribed with fancy chocolates.)",
"faq.multipleAccountTitle":"Can I have more than one account?",
"faq.multipleAccountBody":"It's fine to have a few accounts on the Scratch website, as long as none of them are used to break the Community Guidelines. In that case, all related accounts may be blocked or deleted.",
"faq.multipleLoginTitle":"Is it OK to have more than one person logged into an account?",
"faq.multipleLoginBody":"This is discouraged, because the website and project editor can easily get confused when more than one person is logged into the same account.",
"faq.changeUsernameTitle":"Can I change my username?",
"faq.changeUsernameBody":"The structure of the Scratch website depends on having a consistent account name, so its not possible to change your username. If you really need to, you can make a new account - but you'll have to copy your projects over on your own.",
"faq.shareInfoTitle":"What information can I share on / with my account?",
"faq.shareInfoBody":"Please dont share personal contact information, such as your physical address, email, phone number, or anything else that can be used to make contact outside of the Scratch website. Please report projects, comments, or forum posts that contain this kind of information so the Scratch team can remove it, and remind the author of our policy.",
"faq.deleteAccountTitle":"How do I delete my account?",
"faq.deleteAccountBody":"Log in to Scratch, and then click your username in the top right-hand corner. Select “Account Settings,” then click the <em>“I want to delete my account”</em> link at the bottom of the page.",
"faq.scratchFreeTitle":"Is Scratch free?",
"faq.scratchFreeBody":"Yes! Scratch is available free of charge. You can use it in your school, and you can teach a course about it (even a course that costs money). You don't need to buy a license - it's free.",
"faq.scratchScreenshotTitle":"Can I use Scratch and / or screenshots of Scratch in a textbook or a CD?",
"faq.scratchScreenshotBody":"Yes, you can even write a book or chapter about Scratch. You may also use the Scratch logo when referring to Scratch. You may create screenshots / images of the Scratch application and website, and consider them to be licensed under the <a href=\"http://creativecommons.org/licenses/by-sa/2.0/deed.en\">Creative Commons Attribution-ShareAlike license</a>. We ask that you include a note on your textbook / CD / what have you that says \"Scratch is developed by the Lifelong Kindergarten Group at the MIT Media Lab. See http://scratch.mit.edu\".",
"faq.scratchDescriptionTitle":"Can I include a description of Scratch and the Scratch logo in brochures or other materials?",
"faq.scratchDescriptionBody":"Sure! We recommend the following description: \"Scratch is a programming language and online community where you can create your own interactive stories, games, and animations -- and share your creations with others around the world. In the process of designing and programming Scratch projects, young people learn to think creatively, reason systematically, and work collaboratively. Scratch is a project of the Lifelong Kindergarten group at the MIT Media Lab. It is available for free at http://scratch.mit.edu\"",
"faq.presentScratchTitle":"Can I present Scratch at a conference?",
"faq.presentScratchBody":"Please feel free to make presentations about Scratch to educators or other groups. We grant our permission to make presentations.",
"faq.supportMaterialTitle":"May I use / remix Scratch support materials, sprites, images, sounds or sample projects Ive found on the website?",
"faq.supportMaterialBody":"Yes - Scratch support materials made available on the Scratch website by the Scratch Team are available under the <a href=\"http://creativecommons.org/licenses/by-sa/2.0/deed.en\">Creative Commons Attribution-ShareAlike license</a>, with the exception of the Scratch Logo, Scratch Cat, and Gobo (Scratch trademarks).",
"faq.sellProjectsTitle":"Can I sell my Scratch projects?",
"faq.sellProjectsBody":"Certainly - your project is your creation. Keep in mind that once you share your project on Scratch, everyone is free to download, remix, and reuse it as per the terms of the <a href=\"http://creativecommons.org/licenses/by-sa/2.0/deed.en\">CC-BY-SA 2.0 license</a>. So if you intend to sell your project, you may want to un-share it from Scratch.",
"faq.sourceCodeTitle":"Where can I find the source code for Scratch?",
"faq.sourceCodeBody":"The source code for Scratch 2 (website and editor) is not yet available. The source code for <a href =\"/scratch_1.4\">Scratch 1.4</a>, written in Squeak, is available <a href=\"https://github.com/LLK/Scratch_1.4\">on GitHub</a>. The source code for the first version of the Scratch website - ScratchR - is available <a href=\"http://svn.assembla.com/svn/scratchr/\">on Assembla</a>.",
"faq.okayToShareTitle":"How do I know what is or isnt okay to share on the Scratch website?",
"faq.okayToShareBody":"Check out the <a href=\"/community_guidelines\">Scratch community guidelines</a> - theyre brief and dont include a lot of legal stuff. Theres a link at the bottom of every page on Scratch.",
"faq.reportContentTitle":"What do I do if I see something thats inappropriate?",
"faq.reportContentBody":"You can click the link that says “report” on any project, comment, discussion post, or user page where you think something isn't ok for Scratch. If the situation is complicated, you can use the Contact Us link to explain. Be sure to include as much detail as you can, with links to relevant pages.",
"faq.noFlameTitle":"What do I do if I see someone being mean or disrespectful?",
"faq.noFlameBody":"Dont add to the flames! Responding to mean comments with more mean comments just makes things worse, and could result in your account being blocked. Instead, simply report anything that is disrespectful or unconstructive, and well follow up with the author. We check reports every day, multiple times per day - so rest assured, we'll sort things out.",
"faq.reviewContentTitle":"What does the Scratch team do when something is reported or flagged?",
"faq.reviewContentBody":"The Scratch Team reviews reported comments and projects every day. If something breaks the Scratch community guidelines, we may remove it and send a warning to the account. Depending on how bad it is (or if weve already warned the account), we may also block the accounts or networks that were used to share it.",
"faq.blockedAccountTitle":"What happens when an account is blocked?",
"faq.blockedAccountBody":"When an account is blocked, the owner can no longer access it, or use it to create projects or comments. When they login, they see a page that explains why the account was blocked with a web form they can use to request to be unblocked. If the owner can show that they understand why their account was blocked, and promises to follow the community guidelines in the future, the Scratch Team will review their case. Accounts will only be unblocked in cases where the account owners word can be trusted. Otherwise, the account (and most likely other accounts owned or created by that person) may be blocked permanently.",
"faq.stolenAccountTitle":"My mean brother / Kaj / some other bad guy stole my account and got it banned, what do I do?",
"faq.stolenAccountBody":"You are responsible for keeping your password secure. If someone in real life takes control of your account and does bad stuff, tell the adults in charge of the computers. If you think someone you dont know got access to your account, change the password and / or use the contact us link to explain the situation. If you got blocked for doing something that broke the community guidelines, don't just say you got hacked. If we can't trust you, we won't unblock you.",
"faq.cloudDataInfoTitle":"What is cloud data?",
"faq.cloudDataInfoBody":"Cloud data is a feature in Scratch 2 that allows for data from a project to be saved and shared online. You can use cloud data to make surveys and other projects that store numbers over time.",
"faq.storedCloudInfoTitle":"Who can see the data stored in cloud data?",
"faq.storedCloudInfoBody":"When you interact with a project using cloud data blocks, your information can be stored along with your username, and others can view it. Each project keeps a log of who interacted with it and any data they shared.",
"faq.onlyNumbersTitle":"Why is cloud data currently limited to only numbers -- with no strings or lists?",
"faq.onlyNumbersBody":"The current site is limited to numbers in variables as an initial step to work out any issues with their use on the site. We plan to roll out cloud data features incrementally. If the infrastructure is working well, we plan to add other features (cloud lists, support for strings, etc.).",
"faq.reportCloudTitle":"If I see someone post inappropriate content using cloud data, how do I report it?",
"faq.reportCloudBody":"Click the \"Report this\" button (under on the project player) to report inappropriate content in cloud data. The report form includes a link to a log of all cloud data in that project and who left it - you may want to take look at it before sending your report. Make sure that you mention \"cloud data\" when you type your reason in the report.",
"faq.chatRoomTitle":"Can I make chat rooms with cloud data?",
"faq.chatRoomBody":"While it is technically possible to create chat rooms with cloud data, they are not currently allowed. We will reconsider this policy once we have a better sense of our capability for moderating and managing reports on cloud data.",
"faq.makeCloudVarTitle":"How do I add a cloud variable when I'm making a project?",
"faq.makeCloudVarBody":"When you make a variable, you can check the box that says \"Cloud variable.\" Any data you store will be saved on the server and visible to others.",
"faq.changeCloudVarTitle":"Who can change the information in a cloud variable?",
"faq.changeCloudVarBody":"Only your project can store data in its cloud variable. If people change or remix your code, it creates a different variable in their project with the same name.",
"faq.newScratcherCloudTitle":"I am logged in, but I still cannot use projects with cloud data. What is going on?",
"faq.newScratcherCloudBody":"You need to have become a \"Scratcher\" on the website to have access to cloud data. You can become a Scratcher through actively participating on the website.",
"faq.multiplayerTitle":"Is it possible to make multiplayer games with cloud data?",
"faq.multiplayerBody":"Multiplayer games may be difficult to create, due to network speed and synchronization issues. However, some Scratchers are coming up with creative ways to use the cloud data for turn-by-turn and other games.",
"faq.cloudLagTitle":"How long does it take for cloud data to reach another Scratcher?",
"faq.cloudLagBody":"It depends. If both Scratchers have a reasonably fast Internet connection (DSL/Cable), and there are no restrictive firewalls on the computers/network, updates should be transmitted in milliseconds. However, a lot of computers have firewall software running in them, and if the firewall software blocks outgoing connections to TCP port 531 and TCP port 843, the time-lag becomes one-second. We are currently trying to figure out ways in which we can work around this limitation."
}

View file

@ -1,189 +1,222 @@
var React = require('react');
var render = require('../../lib/render.jsx');
var Page = require('../../components/page/www/page.jsx');
var Box = require('../../components/box/box.jsx');
var InformationPage = require('../../components/informationpage/informationpage.jsx');
require('./privacypolicy.scss');
var Privacypolicy = React.createClass({
type: 'Privacypolicy',
render: function () {
return (
<div className="inner privacypolicy">
<Box title={'Scratch Privacy Policy'}>
<p>
We made Scratch so people like you could create projects,
share ideas, and build a community. To make this happen,
we collect some information for our users. The Scratch Team
understands how important privacy is to our community,
especially kids and parents. We wrote this privacy policy
to explain what information we collect, how we use it,
and what we're doing to keep it safe. If you have any
questions regarding this privacy policy, you can{' '}
<a href="/contact-us">contact us</a>.
</p>
<p><i>
Please do not share personal contact information, such as
your name, physical address, email address, phone number,
or anything else that can be used to make contact outside
of the Scratch website. Please report projects, comments,
or forum posts that contain this kind of information so
the Scratch team can remove it, and please remind the
author of our policy.
</i></p>
<h3>What information does the Scratch Team collect about me?</h3>
<p>
<b>Account Information: </b>
In order to build projects or comment on other users' projects,
you need to make an account. During account creation, we ask you
for a username, your country, birth month and year, gender, and
your email address (or your parent or guardian's email address if
you are under 13 years old). We ask that you select a user name
that does not disclose your real name or other information that
could identify you. Other users can see your username and country,
but not your age, gender, or email address.
</p>
<p>
<b>User-generated Content: </b>
All of your Scratch projects, comments, and forum posts are stored
on the Scratch servers. Other users can see your shared projects,
comments, and forum posts, along with your username. Because the
Scratch Team is responsible for moderation, we have access to all
content stored on the Scratch website, including unshared projects.
If you prefer to work on projects in complete privacy, you can use
either the <a href="/scratch2download">Scratch 2 offline editor</a>{' '}
or <a href="/scratch_1.4">Scratch 1.4</a>.
</p>
<p>
<b>Usage Information: </b>
When you use Scratch, our servers will automatically store a limited
amount of information about how you use the website. This information
includes a number that identifies your computer (the IP address), which
pages you visited, and what browser you are using.
</p>
<p>
<b>Google Analytics: </b>
We also collect some data on where you click and which parts of the
site you visit using Google Analytics. This "click data" helps us figure
out ways to improve the website. Information collected and processed by
Google Analytics includes the user's IP address, network location, and
geographic location. Google Analytics acquires all its information
directly from the user, by installing a cookie (see below) on your
computer, if you have enabled JavaScript. Scratch does not share any
information it collects with Google, and Google does not collect any
personal identifying information about you.
</p>
<p>
<b>Cookies: </b>
When you log in, the Scratch website asks your browser to put an http
"cookie" on your computer. The cookie is actually a small text file
that our site can send to your browser for storage on your computer.
This allows the website to remember that you are logged in when you
go to a different page.
</p>
<h3>How does the Scratch Team use my information?</h3>
<ul>
<li>
We collect age and gender data so that we know who is using our
website.
</li>
<li>
If you forget your password, we will ask you to disclose to us
your birth month and year so that we can verify your account, and
your email address so that we can send you a new password.
</li>
<li>
We will use your email address to respond to messages you send us
or to communicate with you about the Scratch service or your account.
</li>
<li>
We send out occasional email updates about Scratch to the confirmed
email address on your account. Scratch will never sell or share your
email address without your permission. You can unsubscribe from these
updates by clicking the unsubscribe link found at the bottom of the
email.
</li>
<li>
Parents and guardians who register their under-13 year olds for
Scratch may also receive additional updates from the{' '}
<a href="http://www.codetolearn.org/">Scratch Foundation</a>,
a non-profit that supports Scratch educational initiatives.
The Scratch Foundation will never sell or share your email
address without your permission. You can unsubscribe from these
updates by clicking the unsubscribe link found at the bottom of
the email.
</li>
<li>
If we detect repeated abusive behavior from your account, IP address,
or email address, we may share your account name, IP address, and the
time and content of the abusive behavior with the IP address owner
(such as a school or internet service provided).
</li>
<li>
We may use de-identified location, age, gender, and usage data
in research studies intended to improve our understanding of
how people learn with Scratch. The results of this research are
shared with educators and researchers through conferences,
journals, and other publications. You can find out more on our{' '}
<a href="/info/research">Research page</a>.
</li>
<li>
We may disclose some of the information we collect to third-party
service providers that help us manage communications to and from
the Scratch website and improve website performance. We are
satisfied that these service providers have privacy policies that
restrict them from further disclosing any of your information.
</li>
<li>
Other than as described above, we will never share personally
identifiable information about you with any other person,
company, or organization, except:
<div className="privacypolicy">
<InformationPage title={'Privacy Policy'}>
<div className="inner info-inner">
<section>
<p className="intro">
We made Scratch so people like you could create projects,
share ideas, and build a community. To make this happen,
we collect some information for our users. The Scratch Team
understands how important privacy is to our community,
especially kids and parents. We wrote this privacy policy
to explain what information we collect, how we use it,
and what we're doing to keep it safe. If you have any
questions regarding this privacy policy, you can{' '}
<a href="/contact-us">contact us</a>.
</p>
<p className="callout">
Please do not share personal contact information, such as
your name, physical address, email address, phone number,
or anything else that can be used to make contact outside
of the Scratch website. Please report projects, comments,
or forum posts that contain this kind of information so
the Scratch team can remove it, and please remind the
author of our policy.
</p>
</section>
<section id="collection">
<dl>
<span className="nav-spacer"></span>
<h3>What information does the Scratch Team collect about me?</h3>
<dt>Account Information: </dt>
<dd>
In order to build projects or comment on other users' projects,
you need to make an account. During account creation, we ask you
for a username, your country, birth month and year, gender, and
your email address (or your parent or guardian's email address if
you are under 13 years old). We ask that you select a user name
that does not disclose your real name or other information that
could identify you. Other users can see your username and country,
but not your age, gender, or email address.
</dd>
<dt>User-generated Content: </dt>
<dd>
All of your Scratch projects, comments, and forum posts are stored
on the Scratch servers. Other users can see your shared projects,
comments, and forum posts, along with your username. Because the
Scratch Team is responsible for moderation, we have access to all
content stored on the Scratch website, including unshared projects.
If you prefer to work on projects in complete privacy, you can use
either the <a href="/scratch2download">Scratch 2 offline editor</a>{' '}
or <a href="/scratch_1.4">Scratch 1.4</a>.
</dd>
<dt>Usage Information: </dt>
<dd>
When you use Scratch, our servers will automatically store a limited
amount of information about how you use the website. This information
includes a number that identifies your computer (the IP address), which
pages you visited, and what browser you are using.
</dd>
<dt>Google Analytics: </dt>
<dd>
We also collect some data on where you click and which parts of the
site you visit using Google Analytics. This "click data" helps us figure
out ways to improve the website. Information collected and processed by
Google Analytics includes the user's IP address, network location, and
geographic location. Google Analytics acquires all its information
directly from the user, by installing a cookie (see below) on your
computer, if you have enabled JavaScript. Scratch does not share any
information it collects with Google, and Google does not collect any
personal identifying information about you.
</dd>
<dt>Cookies: </dt>
<dd>
When you log in, the Scratch website asks your browser to put an http
"cookie" on your computer. The cookie is actually a small text file
that our site can send to your browser for storage on your computer.
This allows the website to remember that you are logged in when you
go to a different page.
</dd>
</dl>
</section>
<section id="usage">
<span className="nav-spacer"></span>
<h3>How does the Scratch Team use my information?</h3>
<ul>
<li>
As required to comply with our obligations under the law.
We collect age and gender data so that we know who is using our
website.
</li>
<li>
For technical reasons, if we are required to transfer the
data on our servers to another location or organization.
If you forget your password, we will ask you to disclose to us
your birth month and year so that we can verify your account, and
your email address so that we can send you a new password.
</li>
<li>
We will use your email address to respond to messages you send us
or to communicate with you about the Scratch service or your account.
</li>
<li>
We send out occasional email updates about Scratch to the confirmed
email address on your account. Scratch will never sell or share your
email address without your permission. You can unsubscribe from these
updates by clicking the unsubscribe link found at the bottom of the
email.
</li>
<li>
Parents and guardians who register their under-13 year olds for
Scratch may also receive additional updates from the{' '}
<a href="http://www.codetolearn.org/">Scratch Foundation</a>,
a non-profit that supports Scratch educational initiatives.
The Scratch Foundation will never sell or share your email
address without your permission. You can unsubscribe from these
updates by clicking the unsubscribe link found at the bottom of
the email.
</li>
<li>
If we detect repeated abusive behavior from your account, IP address,
or email address, we may share your account name, IP address, and the
time and content of the abusive behavior with the IP address owner
(such as a school or internet service provided).
</li>
<li>
We may use de-identified location, age, gender, and usage data
in research studies intended to improve our understanding of
how people learn with Scratch. The results of this research are
shared with educators and researchers through conferences,
journals, and other publications. You can find out more on our{' '}
<a href="/info/research">Research page</a>.
</li>
<li>
We may disclose some of the information we collect to third-party
service providers that help us manage communications to and from
the Scratch website and improve website performance. We are
satisfied that these service providers have privacy policies that
restrict them from further disclosing any of your information.
</li>
<li>
Other than as described above, we will never share personally
identifiable information about you with any other person,
company, or organization, except:
<ul>
<li>
As required to comply with our obligations under the law.
</li>
<li>
For technical reasons, if we are required to transfer the
data on our servers to another location or organization.
</li>
</ul>
</li>
</ul>
</li>
</ul>
<h3>How can I update my personal information?</h3>
<p>
You can update your password, email address, and country through
the <a href="/accounts/password_change/">Account Settings</a> page.
You can also reset your password through the{' '}
<a href="/accounts/password_reset/">Password Reset</a>{' '}
page. You cannot change your username, but you can make a new
account and manually copy your projects to the new account.
</p>
<p>
If you want to delete your account entirely, log in to Scratch,
and then click your username in the top right-hand corner. Select
"Account Settings," then click the "I want to delete my account"
link at the bottom of the page.
</p>
<h3>How does the Scratch Team protect my information?</h3>
<p>
The Scratch Team has in place physical and electronic procedures
to protect the information we collect on the Scratch website. We
strictly limit individual access to the Scratch servers and the
data we store on them. However, as effective as these measures
are, no security system is impenetrable. We cannot completely
guarantee the security of our database, nor can we guarantee that
the information you supply will not be intercepted while being
transmitted to us over the Internet.
</p>
<h3>Notifications of Changes to the Privacy Policy</h3>
<p>
We review our security measures and Privacy Policy on a periodic
basis, and we may modify our policies as appropriate. We may also
change or update our Privacy Policy if we add new services or
features. If we make any changes to our privacy practices, we will
amend this Privacy Policy accordingly and post the amended policy
on the Scratch website. We encourage you to review our Privacy
Policy on a regular basis.
</p>
</Box>
</section>
<section id="update">
<span className="nav-spacer"></span>
<h3>How can I update my personal information?</h3>
<p>
You can update your password, email address, and country through
the <a href="/account/password_change">Account Settings</a> page.
You can also reset your password through the{' '}
<a href="/account/password_reset">Account Reset</a>{' '}
page. You cannot change your username, but you can make a new
account and manually copy your projects to the new account.
</p>
<p>
If you want to delete your account entirely, log in to Scratch,
and then click your username in the top right-hand corner. Select
"Account Settings," then click the "I want to delete my account"
link at the bottom of the page.
</p>
</section>
<section id="protection">
<span className="nav-spacer"></span>
<h3>How does the Scratch Team protect my information?</h3>
<p>
The Scratch Team has in place physical and electronic procedures
to protect the information we collect on the Scratch website. We
strictly limit individual access to the Scratch servers and the
data we store on them. However, as effective as these measures
are, no security system is impenetrable. We cannot completely
guarantee the security of our database, nor can we guarantee that
the information you supply will not be intercepted while being
transmitted to us over the Internet.
</p>
</section>
<section id="changes">
<span className="nav-spacer"></span>
<h3>Notifications of Changes to the Privacy Policy</h3>
<p>
We review our security measures and Privacy Policy on a periodic
basis, and we may modify our policies as appropriate. We may also
change or update our Privacy Policy if we add new services or
features. If we make any changes to our privacy practices, we will
amend this Privacy Policy accordingly and post the amended policy
on the Scratch website. We encourage you to review our Privacy
Policy on a regular basis.
</p>
</section>
</div>
<nav>
<ol>
<li><a href="#collection">What information does the Scratch Team collect about me?</a></li>
<li><a href="#usage">How does the Scratch Team use my information?</a></li>
<li><a href="#update">How can I update my personal information?</a></li>
<li><a href="#protection">How does the Scratch Team protect my information?</a></li>
<li><a href="#changes">Notifications of Changes to the Privacy Policy</a></li>
</ol>
</nav>
</InformationPage>
</div>
);
}

View file

@ -0,0 +1,9 @@
@import "../../infopage";
#view {
padding: 0;
}
.privacypolicy {
@include info;
}

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,9 @@
@import "../../infopage";
#view {
padding: 0;
}
.terms {
@include info;
}