Merge branch 'master' into interview

pull/936/head
terakilobyte 2015-06-06 22:31:49 -04:00
commit 00ac753063
9 changed files with 43215 additions and 36 deletions

View File

@ -87,8 +87,7 @@ exports.returnNextFieldGuide = function(req, res, next) {
}
return res.redirect('../field-guide/how-do-i-use-this-guide');
}
var nameString = fieldGuide.name.toLowerCase().replace(/\s/g, '-');
return res.redirect('../field-guide/' + nameString);
return res.redirect('../field-guide/' + fieldGuide.dashedName);
});
};

View File

@ -610,8 +610,11 @@ thead {
}
.hamburger-dropdown {
@media (max-width: 768px) {
margin-top: -5px;
@media (max-width: 991px) {
margin-top: -5px !important;
}
@media (min-width: 768px) and (max-width: 991px) {
width: 105%;
}
}
@ -884,8 +887,7 @@ iframe.iphone {
.hamburger-text {
line-height: 0.75em;
margin-top: 10px;
font-size: 16px;
margin-left: -8px;
font-size: 18px;
}
.tight-h3 {

File diff suppressed because it is too large Load Diff

View File

@ -16,6 +16,14 @@ var editor = CodeMirror.fromTextArea(document.getElementById("codeEditor"), {
onKeyEvent: doLinting
});
var defaultKeymap = {
'Cmd-E': 'emmet.expand_abbreviation',
'Tab': 'emmet.expand_abbreviation_with_tab',
'Enter': 'emmet.insert_formatted_line_break_only'
};
emmetCodeMirror(editor, defaultKeymap);
// Hijack tab key to insert two spaces instead
editor.setOption("extraKeys", {

View File

@ -18,7 +18,7 @@
"Drag the windows around and press the buttons in the lower-right hand corner to change the orientation to suit your preference.",
"Click the gear next to CSS. Then in the \"External CSS File or Another Pen\" text field, type \"bootstrap\" and scroll down until you see the latest version of Bootstrap. Click it.",
"Verify that bootstrap is active by adding the following code to your HTML: <code>&lt;h1 class='text-primary'&gt;Hello CodePen!&lt;/h1&gt;</code>. The text's color should be Bootstrap blue.",
"Click the gear next the JavaScript. Click the \"Latest version of...\" select box and choose jQuery.",
"Click the gear next to the JavaScript. Click the \"Latest version of...\" select box and choose jQuery.",
"Now add the following code to your JavaScript: <code>$(document).ready(function() { $('.text-primary').text('Hi CodePen!') });</code>. Click the \"Save\" button at the top. Your \"Hello CodePen!\" should change to \"Hi CodePen!\". This means that jQuery is working.",
"Now you're ready for your first Zipline. Click the \"I've completed this challenge\" button and include a link to your CodePen. If you pair programmed, you should also include the Free Code Camp username of your pair."
],

View File

@ -860,5 +860,101 @@
" </p>",
"</div>"
]
},
{
"_id": "bd7158d9c436eddfadb5bd3d",
"name": "What is the agenda for Saturday Summit?",
"dashedName": "what-is-the-agenda-for-saturday-summit",
"description": [
"<div class=\"col-xs-12 col-sm-10 col-sm-offset-1\">",
" <h2>Here's our agenda for June 6, 2015:</h2>",
" <ul>",
" <li class='large-li'>12:00 Introductions to the streamers: Nathan (streaming), Michael, Briana, Quincy, Dan Raley</li>",
" <li class='large-li'>12:05 Quincy: Introduce <a href='http://www.freecodecamp.com/danielraley' target='_blank'>Dan Raley</a> as responsible for Medium and our Field Guide.</li>",
" <li class='large-li'>12:10 Update on our <a href='https://trello.com/b/m7zhwXka/fcc-translation' target='_blank'>translation effort</a></li>",
" <li class='large-li'>12:15 Quincy: announce our new mobile experience</li>",
" <li class='large-li'>12:20 Quincy: announce our new Front End Development certificate</li>",
" <li class='large-li'>12:25 Briana: demo her Nonprofit project: <a href='http://fcc-cmf.herokuapp.com' target='_blank'>Columbus Songwriters Circle</a></li>",
" <li class='large-li'>12:30 - 1:00 Questions and free discussion</li>",
" </ul>",
"</div>"
]
},
{
"_id": "bd7158d9c436eddfadb5bd32",
"name": "How can I help the Free Code Camp translation effort?",
"dashedName": "how-can-i-help-the-free-code-camp-translation-effort",
"description": [
"<div class=\"col-xs-12 col-sm-10 col-sm-offset-1\">",
" <p class='h2'>Our translation effort is driven by bilingual campers like you.</h2>",
" <p class='large-p'>If you're able to help us, you can join our <a href='https://trello.com/b/m7zhwXka/fcc-translation' target='_blank'>Trello board</a> by sending @quincylarson your email address in Slack.</p>",
"</div>"
]
},
{
"_id": "bd7158d9c436eddfadb5bd31",
"name": "What if I speak a language that Free Code Camp does not yet support?",
"dashedName": "what-if-i-speak-a-language-that-free-code-camp-does-not-yet-support",
"description": [
"<div class=\"col-xs-12 col-sm-10 col-sm-offset-1\">",
" <p class='h2'>Translation is an all-or-nothing proposal.</h2>",
" <p class='large-p'>We won't be able to add new languages to Free Code Camp until all of our challenges are translated into that langauge.</p>",
" <p class='large-p'>In addition to translating these initially, we'll also need to maintain the translation as the challenges are gradually updated.</p>",
" <p class='large-p'>If you're able to help us, you can join our <a href='https://trello.com/b/m7zhwXka/fcc-translation' target='_blank'>Trello board</a> by sending @quincylarson your email address in Slack.</p>",
"</div>"
]
},
{
"_id": "bd7158d9c436eddfadb5bd30",
"name": "Can I do Free Code Camp completely in my native language?",
"dashedName": "can-i-do-free-code-camp-completely-in-my-native-language",
"description": [
"<div class=\"col-xs-12 col-sm-10 col-sm-offset-1\">",
" <p class='large-p'>The last 800 hours of free code camp involve building projects for nonprofits. These nonprofit projects will involve lots of meetings, correspondence, and pair programming, all of which will be conducted in English.</p>",
" <p class='large-p'>You will need to be good enough with English to be able to participate in these meetings.</p>",
" <p class='large-p'>We are translating our challenges into English is so that you can focus on learning to code, rather than focusing on learning English.</p>",
" <p class='large-p'>Many non-native English speakers have succeeded in our nonprofit project program. With some effort, you can, too.</p>",
"</div>"
]
},
{
"_id": "bd7158d9c436eddfadb5bd3c",
"name": "What is the new Free Code Camp Mobile Experience?",
"dashedName": "what-is-the-new-free-code-camp-mobile-experience",
"description": [
"<div class=\"col-xs-12 col-sm-10 col-sm-offset-1\">",
" <h2>We're building an on-the-go version of Free Code Camp.</h2>",
" <img src='http://www.howardforums.com/attachment.php?attachmentid=97254&d=1378730537&stc=1' class='img-responsive img-center'>",
" <p class='large-p'>It will be video-driven, with multiple-choice questions.</p>",
" <img class='img-center img-responsive' src='https://www.edx.org/sites/default/files/upload/philip-guo-edx-first-blog-figure.png'>",
" <p class='large-p'>These videos will be short - generally less than 6 minutes long.</p>",
" <img src='http://a3.mzstatic.com/us/r1000/095/Purple/3f/58/42/mzl.xypmpeal.320x480-75.jpg' class='img-center img-responsive'>",
" <p class='large-p'>We are considering focusing the mobile experience on code interview questions. Answering these common questions is a very different skill from coding itself.",
" <p class='large-p'>We're still in the process of designing this. We'd love to hear your input.</p>",
"</div>"
]
},
{
"_id": "bd7158d9c436eddfadb5bd3b",
"name": "What is the Free Code Camp Front End Development Certificate?",
"dashedName": "what-is-the-free-code-camp-front-end-development-certificate",
"description": [
"<div class=\"col-xs-12 col-sm-10 col-sm-offset-1\">",
" <h2>We're creating a free Front End Development Certificate.</h2>",
" <p class='large-p'>Here are the challenges that will make up our Basic Front End Development Certificate Program:</p>",
" <ol>",
" <li class='large-li'>HTML5 and CSS</li>",
" <li class='large-li'>Responsive Design with Bootstrap</li>",
" <li class='large-li'>jQuery, Ajax and JSON APIs (coming soon - will replace Codecademy jQuery challenges)</li>",
" <li class='large-li'>Zipline: Use the Twitch.tv JSON API</li>",
" <li class='large-li'>Zipline: Build a Random Quote Machine</li>",
" <li class='large-li'>Zipline: Show the Local Weather</li>",
" <li class='large-li'>Zipline: Stylize Stories on Camper News</li>",
" <li class='large-li'>Zipline: Wikipedia Viewer</li>",
" </ol>",
" <p class='large-p'>This won't be a new curriculum - it will just the first 200 hours of our full stack JavaScript curriculum.</p>",
" <p class='large-p'>All campers who have already completed these challenges are retroactively be eligible for the certificate!</p>",
"</div>"
]
}
]

View File

@ -83,22 +83,22 @@ block content
li.large-p.negative-10
a(href="/challenges/#{challenge.name}")= challenge.name
#announcementModal.modal(tabindex='-1')
.modal-dialog.animated.fadeInUp.fast-animation
.modal-content
.modal-header.challenge-list-header Join our Saturday Summit!
a.close.closing-x(href='#', data-dismiss='modal', aria-hidden='true') ×
.modal-body
h3.text-left Saturday at Noon EDT: We'll live-stream our Saturday Summit on Twitch.tv.
h3.text-left We'll announce our new Front End Development Certificate Program (it's free, of course) and our new "Free Code Camp On The Go" app. &thinsp;
a(href='http://www.freecodecamp.com/twitch', target='_blank') Add us to your calendar here
| .
a.btn.btn-lg.btn-info.btn-block(name='_csrf', value=_csrf, aria-hidden='true', href='http://twitch.tv/freecodecamp', target='_blank') Follow us on Twitch.tv
a.btn.btn-lg.btn-primary.btn-block(href='#', data-dismiss='modal', aria-hidden='true') Thanks for the heads-up!
script.
$(document).ready(function () {
if (!localStorage || !localStorage.day234) {
$('#announcementModal').modal('show');
localStorage.day234 = "true";
}
});
//#announcementModal.modal(tabindex='-1')
// .modal-dialog.animated.fadeInUp.fast-animation
// .modal-content
// .modal-header.challenge-list-header Join our Saturday Summit!
// a.close.closing-x(href='#', data-dismiss='modal', aria-hidden='true') ×
// .modal-body
// h3.text-left Saturday at Noon EDT: We'll live-stream our Saturday Summit on Twitch.tv.
// h3.text-left We'll announce our new Front End Development Certificate Program (it's free, of course) and our new "Free Code Camp On The Go" app. &thinsp;
// a(href='http://www.freecodecamp.com/twitch', target='_blank') Add us to your calendar here
// | .
// a.btn.btn-lg.btn-info.btn-block(name='_csrf', value=_csrf, aria-hidden='true', href='http://twitch.tv/freecodecamp', target='_blank') Follow us on Twitch.tv
// a.btn.btn-lg.btn-primary.btn-block(href='#', data-dismiss='modal', aria-hidden='true') Thanks for the heads-up!
//script.
// $(document).ready(function () {
// if (!localStorage || !localStorage.day234) {
// $('#announcementModal').modal('show');
// localStorage.day234 = "true";
// }
// });

View File

@ -18,6 +18,7 @@ block content
script(src='/js/lib/codemirror/mode/xml/xml.js')
script(src='/js/lib/codemirror/mode/css/css.js')
script(src='/js/lib/codemirror/mode/htmlmixed/htmlmixed.js')
script(src='/js/lib/codemirror/addon/emmet/emmet.js')
.row.courseware-height
.vertical-scroll
.col-xs-12.col-sm-12.col-md-3.col-lg-3
@ -94,4 +95,4 @@ block content
span.completion-icon.ion-checkmark-circled.text-primary
a.animated.fadeIn.btn.btn-lg.signup-btn.btn-block(href='/login') Sign in so you can save your progress
include ../partials/challenge-modals
script(src="/js/lib/coursewares/coursewaresHCJQFramework_0.1.8.js")
script(src="/js/lib/coursewares/coursewaresHCJQFramework_0.1.9.js")

View File

@ -1,13 +1,8 @@
nav.navbar.navbar-default.navbar-fixed-top.nav-height
.navbar-header
button.hamburger.navbar-toggle(type='button', data-toggle='collapse', data-target='.navbar-collapse')
.col-xs-6
.col-xs-12
span.hamburger-text Menu
.col-xs-6
span.sr-only Toggle navigation
span.icon-bar
span.icon-bar
span.icon-bar
a.navbar-brand(href='/')
img.img-responsive.nav-logo(src='https://s3.amazonaws.com/freecodecamp/freecodecamp_logo.svg.gz', alt='learn to code javascript at Free Code Camp logo')
.collapse.navbar-collapse
@ -28,7 +23,7 @@ nav.navbar.navbar-default.navbar-fixed-top.nav-height
a(href='/news') News
li
a(href='/field-guide') Guide
li.hidden-xs.hidden-sm
li
a(href='/jobs') Jobs
if !user
li &thinsp; &thinsp; &thinsp;
@ -37,9 +32,7 @@ nav.navbar.navbar-default.navbar-fixed-top.nav-height
else
li
if (user.profile.username)
a(href='/' + user.profile.username) [&nbsp;#{user.progressTimestamps.length}&nbsp;]
else
a(href='/account') [&thinsp;#{user.progressTimestamps.length}&thinsp;]
.hidden-xs.hidden-sm