157 lines
8.3 KiB
Plaintext
157 lines
8.3 KiB
Plaintext
extends ../layout-wide
|
||
block content
|
||
|
||
script(type='text/javascript', src='/js/lib/codemirror/lib/codemirror.js')
|
||
script(type='text/javascript', src='/js/lib/codemirror/addon/edit/closebrackets.js')
|
||
script(type='text/javascript', src='/js/lib/codemirror/addon/edit/matchbrackets.js')
|
||
script(type='text/javascript', src='/js/lib/codemirror/addon/lint/lint.js')
|
||
script(type='text/javascript', src='/js/lib/codemirror/addon/lint/javascript-lint.js')
|
||
script(type='text/javascript', src='/bower_components/jshint/dist/jshint.js')
|
||
script(type='text/javascript', src='/js/lib/chai/chai.js')
|
||
link(rel='stylesheet', href='/js/lib/codemirror/lib/codemirror.css')
|
||
link(rel='stylesheet', href='/js/lib/codemirror/addon/lint/lint.css')
|
||
link(rel='stylesheet', href='/js/lib/codemirror/theme/monokai.css')
|
||
link(rel="stylesheet", href="http://fonts.googleapis.com/css?family=Ubuntu+Mono")
|
||
script(type='text/javascript', src='/js/lib/codemirror/mode/javascript/javascript.js')
|
||
script(type='text/javascript', src='/js/lib/jailed/jailed.js')
|
||
script(type='text/javascript', src='/js/lib/coursewares/sandbox.js')
|
||
|
||
.row(ng-controller="pairedWithController")
|
||
.col-xs-12.col-sm-12.col-md-4.bonfire-top
|
||
#testCreatePanel
|
||
h1#bonfire-name.text-center= name
|
||
h2.text-center
|
||
.bonfire-flames Difficulty: 
|
||
if (difficulty == "0")
|
||
i.ion-ios-flame-outline
|
||
i.ion-ios-flame-outline
|
||
i.ion-ios-flame-outline
|
||
i.ion-ios-flame-outline
|
||
i.ion-ios-flame-outline
|
||
if (difficulty == "1")
|
||
i.ion-ios-flame
|
||
i.ion-ios-flame-outline
|
||
i.ion-ios-flame-outline
|
||
i.ion-ios-flame-outline
|
||
i.ion-ios-flame-outline
|
||
if (difficulty == "2")
|
||
i.ion-ios-flame
|
||
i.ion-ios-flame
|
||
i.ion-ios-flame-outline
|
||
i.ion-ios-flame-outline
|
||
i.ion-ios-flame-outline
|
||
if (difficulty == "3")
|
||
i.ion-ios-flame
|
||
i.ion-ios-flame
|
||
i.ion-ios-flame
|
||
i.ion-ios-flame-outline
|
||
i.ion-ios-flame-outline
|
||
if (difficulty == "4")
|
||
i.ion-ios-flame
|
||
i.ion-ios-flame
|
||
i.ion-ios-flame
|
||
i.ion-ios-flame
|
||
i.ion-ios-flame-outline
|
||
if (difficulty == "5")
|
||
i.ion-ios-flame
|
||
i.ion-ios-flame
|
||
i.ion-ios-flame
|
||
i.ion-ios-flame
|
||
i.ion-ios-flame
|
||
.well
|
||
.row
|
||
.col-xs-12
|
||
.bonfire-instructions
|
||
p.wrappable= brief
|
||
#brief-instructions
|
||
#more-info.btn.btn-primary.btn-block.btn-primary-ghost
|
||
span.ion-arrow-down-b
|
||
| More information
|
||
#long-instructions.row.hide
|
||
.col-xs-12
|
||
for sentence in details
|
||
p.wrappable!= sentence
|
||
#MDN-links
|
||
p Here are some helpful links:
|
||
for link, index in MDNlinks
|
||
ul: li: a(href=""+link, target="_blank") !{MDNkeys[index]}
|
||
#less-info.btn.btn-primary.btn-block.btn-primary-ghost
|
||
span.ion-arrow-up-b
|
||
| Less information
|
||
|
||
if (user)
|
||
form.form-horizontal(novalidate='novalidate', name='completedWithForm')
|
||
.form-group.text-center
|
||
.col-xs-12
|
||
// extra field to distract password tools like lastpass from injecting css into our username field
|
||
input.form-control(ng-show="false")
|
||
input.form-control#completed-with(name="existingUser", placeholder="Your pair's username if pairing", existing-username='', ng-model="existingUser")
|
||
.col-xs-12(ng-cloak, ng-show="completedWithForm.$error.exists && !completedWithForm.existingUser.$pristine && existingUser.length > 0")
|
||
alert(type='danger')
|
||
span.ion-close-circled
|
||
| Username not found
|
||
#submitButton.btn.btn-primary.btn-big.btn-block Run code (ctrl + enter)
|
||
if (user && user.sentSlackInvite)
|
||
.button-spacer
|
||
.btn-group.input-group.btn-group-justified
|
||
label.btn.btn-success#trigger-help-modal
|
||
i.fa.fa-medkit
|
||
| Help
|
||
label.btn.btn-success#trigger-pair-modal
|
||
i.fa.fa-user-plus
|
||
| Pair
|
||
label.btn.btn-success#trigger-issue-modal
|
||
i.fa.fa-bug
|
||
| Bug
|
||
.button-spacer
|
||
form.code
|
||
.form-group.codeMirrorView
|
||
textarea#codeOutput(style='display: none;')
|
||
br
|
||
#testSuite
|
||
br
|
||
script(type="text/javascript").
|
||
var tests = !{JSON.stringify(tests)};
|
||
var challengeSeed = !{JSON.stringify(challengeSeed)};
|
||
var challenge_Id = !{JSON.stringify(challengeId)};
|
||
var challenge_Name = !{JSON.stringify(name)};
|
||
var started = Math.floor(Date.now());
|
||
var challengeType = !{JSON.stringify(challengeType)};
|
||
var _ = R;
|
||
var dashed = !{JSON.stringify(dashedName)};
|
||
|
||
.col-xs-12.col-sm-12.col-md-8
|
||
#mainEditorPanel
|
||
form.code
|
||
.form-group.codeMirrorView
|
||
textarea#codeEditor(autofocus=true, style='display: none;')
|
||
script(src='/js/lib/coursewares/coursewaresJSFramework_0.0.4.js')
|
||
|
||
#complete-courseware-dialog.modal(tabindex='-1')
|
||
.modal-dialog.animated.zoomIn.fast-animation
|
||
.modal-content
|
||
.modal-header.challenge-list-header= compliment
|
||
a.close.closing-x(href='#', data-dismiss='modal', aria-hidden='true') ×
|
||
.modal-body
|
||
.text-center
|
||
.animated.zoomInDown.delay-half
|
||
span.completion-icon.ion-checkmark-circled.text-primary
|
||
if (user)
|
||
|
||
a.animated.fadeIn.btn.btn-lg.btn-primary.btn-block#next-courseware-button(name='_csrf', value=_csrf) Go to my next challenge (ctrl + enter)
|
||
|
||
|
||
if (user.progressTimestamps.length > 2)
|
||
a.animated.fadeIn.btn.btn-lg.btn-block.btn-twitter(target="_blank", href="https://twitter.com/intent/tweet?text=I%20just%20#{verb}%20%40FreeCodeCamp%20#{name}&url=http%3A%2F%2Ffreecodecamp.com/challenges/#{dashedName}&hashtags=LearnToCode, JavaScript")
|
||
i.fa.fa-twitter  
|
||
= phrase
|
||
else
|
||
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.
|
||
var MDNlinks = !{JSON.stringify(MDNlinks)};
|
||
if (!MDNlinks.length) {
|
||
$('#MDN-links').addClass('collapse');
|
||
}
|
||
|