change _id to id everywhere that seems relevant to loopback
This commit is contained in:
@ -108,7 +108,7 @@
|
|||||||
"resetPasswordExpires": "string",
|
"resetPasswordExpires": "string",
|
||||||
"uncompletedBonfires": "array",
|
"uncompletedBonfires": "array",
|
||||||
"completedBonfires": [{
|
"completedBonfires": [{
|
||||||
"_id": "string",
|
"id": "string",
|
||||||
"name": "string",
|
"name": "string",
|
||||||
"completedWith": "string",
|
"completedWith": "string",
|
||||||
"completedDate": "string",
|
"completedDate": "string",
|
||||||
@ -120,7 +120,7 @@
|
|||||||
"type": "string",
|
"type": "string",
|
||||||
"defaultFn": "now"
|
"defaultFn": "now"
|
||||||
},
|
},
|
||||||
"_id": "string",
|
"id": "string",
|
||||||
"name": "string",
|
"name": "string",
|
||||||
"completedWith": "string",
|
"completedWith": "string",
|
||||||
"solution": "string",
|
"solution": "string",
|
||||||
@ -152,7 +152,7 @@
|
|||||||
"completedChallenges": {
|
"completedChallenges": {
|
||||||
"type": [{
|
"type": [{
|
||||||
"completedDate": "number",
|
"completedDate": "number",
|
||||||
"_id": "string",
|
"id": "string",
|
||||||
"name": "string",
|
"name": "string",
|
||||||
"completedWith": "string",
|
"completedWith": "string",
|
||||||
"solution": "string",
|
"solution": "string",
|
||||||
|
@ -272,7 +272,7 @@ $(document).ready(function() {
|
|||||||
});
|
});
|
||||||
|
|
||||||
var upvoteHandler = function () {
|
var upvoteHandler = function () {
|
||||||
var _id = storyId;
|
var id = storyId;
|
||||||
$('#upvote').unbind('click');
|
$('#upvote').unbind('click');
|
||||||
var alreadyUpvoted = false;
|
var alreadyUpvoted = false;
|
||||||
for (var i = 0; i < upVotes.length; i++) {
|
for (var i = 0; i < upVotes.length; i++) {
|
||||||
@ -285,7 +285,7 @@ $(document).ready(function() {
|
|||||||
$.post('/stories/upvote',
|
$.post('/stories/upvote',
|
||||||
{
|
{
|
||||||
data: {
|
data: {
|
||||||
id: _id
|
id: id
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
.fail(function (xhr, textStatus, errorThrown) {
|
.fail(function (xhr, textStatus, errorThrown) {
|
||||||
|
@ -40,7 +40,7 @@ MongoClient.connect(oldUri, function(err, database) {
|
|||||||
})
|
})
|
||||||
.map(function(key) {
|
.map(function(key) {
|
||||||
return({
|
return({
|
||||||
_id: coursewares[key].id,
|
id: coursewares[key].id,
|
||||||
completedDate: user.challengesHash[key]
|
completedDate: user.challengesHash[key]
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
"order": 0.011,
|
"order": 0.011,
|
||||||
"challenges": [
|
"challenges": [
|
||||||
{
|
{
|
||||||
"_id": "aff0395860f5d3034dc0bfc9",
|
"id": "aff0395860f5d3034dc0bfc9",
|
||||||
"name": "Bonfire: Validate US Telephone Numbers",
|
"name": "Bonfire: Validate US Telephone Numbers",
|
||||||
"difficulty": "4.01",
|
"difficulty": "4.01",
|
||||||
"description": [
|
"description": [
|
||||||
@ -63,7 +63,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "a3f503de51cf954ede28891d",
|
"id": "a3f503de51cf954ede28891d",
|
||||||
"name": "Bonfire: Symmetric Difference",
|
"name": "Bonfire: Symmetric Difference",
|
||||||
"difficulty": "4.02",
|
"difficulty": "4.02",
|
||||||
"description": [
|
"description": [
|
||||||
@ -100,7 +100,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "aa2e6f85cab2ab736c9a9b24",
|
"id": "aa2e6f85cab2ab736c9a9b24",
|
||||||
"name": "Bonfire: Exact Change",
|
"name": "Bonfire: Exact Change",
|
||||||
"difficulty": "4.03",
|
"difficulty": "4.03",
|
||||||
"description": [
|
"description": [
|
||||||
@ -155,7 +155,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "a56138aff60341a09ed6c480",
|
"id": "a56138aff60341a09ed6c480",
|
||||||
"name": "Bonfire: Inventory Update",
|
"name": "Bonfire: Inventory Update",
|
||||||
"difficulty": "4.04",
|
"difficulty": "4.04",
|
||||||
"description": [
|
"description": [
|
||||||
@ -209,7 +209,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "a7bf700cd123b9a54eef01d5",
|
"id": "a7bf700cd123b9a54eef01d5",
|
||||||
"name": "Bonfire: No repeats please",
|
"name": "Bonfire: No repeats please",
|
||||||
"difficulty": "4.05",
|
"difficulty": "4.05",
|
||||||
"description": [
|
"description": [
|
||||||
@ -250,7 +250,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "a19f0fbe1872186acd434d5a",
|
"id": "a19f0fbe1872186acd434d5a",
|
||||||
"name": "Bonfire: Friendly Date Ranges",
|
"name": "Bonfire: Friendly Date Ranges",
|
||||||
"difficulty": "4.06",
|
"difficulty": "4.06",
|
||||||
"description": [
|
"description": [
|
||||||
@ -294,4 +294,4 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
"order": 0.014,
|
"order": 0.014,
|
||||||
"challenges": [
|
"challenges": [
|
||||||
{
|
{
|
||||||
"_id": "bd7158d8c443eddfaeb5bcef",
|
"id": "bd7158d8c443eddfaeb5bcef",
|
||||||
"name": "Waypoint: Get Set for Basejumps",
|
"name": "Waypoint: Get Set for Basejumps",
|
||||||
"difficulty": 2.00,
|
"difficulty": 2.00,
|
||||||
"challengeSeed": ["128451852"],
|
"challengeSeed": ["128451852"],
|
||||||
@ -64,7 +64,7 @@
|
|||||||
"tests": []
|
"tests": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bd7158d8c443eddfaeb5bdef",
|
"id": "bd7158d8c443eddfaeb5bdef",
|
||||||
"name": "Basejump: Build a Voting App",
|
"name": "Basejump: Build a Voting App",
|
||||||
"difficulty": 2.01,
|
"difficulty": 2.01,
|
||||||
"challengeSeed": ["128451852"],
|
"challengeSeed": ["128451852"],
|
||||||
@ -99,7 +99,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bd7158d8c443eddfaeb5bdff",
|
"id": "bd7158d8c443eddfaeb5bdff",
|
||||||
"name": "Basejump: Build a Nightlife Coordination App",
|
"name": "Basejump: Build a Nightlife Coordination App",
|
||||||
"difficulty": 2.02,
|
"difficulty": 2.02,
|
||||||
"challengeSeed": ["128451852"],
|
"challengeSeed": ["128451852"],
|
||||||
@ -130,7 +130,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bd7158d8c443eddfaeb5bd0e",
|
"id": "bd7158d8c443eddfaeb5bd0e",
|
||||||
"name": "Basejump: Chart the Stock Market",
|
"name": "Basejump: Chart the Stock Market",
|
||||||
"difficulty": 2.03,
|
"difficulty": 2.03,
|
||||||
"challengeSeed": ["128451852"],
|
"challengeSeed": ["128451852"],
|
||||||
@ -161,7 +161,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bd7158d8c443eddfaeb5bd0f",
|
"id": "bd7158d8c443eddfaeb5bd0f",
|
||||||
"name": "Basejump: Manage a Book Trading Club",
|
"name": "Basejump: Manage a Book Trading Club",
|
||||||
"difficulty": 2.04,
|
"difficulty": 2.04,
|
||||||
"challengeSeed": ["128451852"],
|
"challengeSeed": ["128451852"],
|
||||||
@ -192,7 +192,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bd7158d8c443eddfaeb5bdee",
|
"id": "bd7158d8c443eddfaeb5bdee",
|
||||||
"name": "Basejump: Build a Pinterest Clone",
|
"name": "Basejump: Build a Pinterest Clone",
|
||||||
"difficulty": 2.05,
|
"difficulty": 2.05,
|
||||||
"challengeSeed": ["128451852"],
|
"challengeSeed": ["128451852"],
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
"order": 0.007,
|
"order": 0.007,
|
||||||
"challenges": [
|
"challenges": [
|
||||||
{
|
{
|
||||||
"_id": "bd7139d8c441eddfaeb5bdef",
|
"id": "bd7139d8c441eddfaeb5bdef",
|
||||||
"name": "Waypoint: Pair Program on Bonfires",
|
"name": "Waypoint: Pair Program on Bonfires",
|
||||||
"difficulty": 0.44,
|
"difficulty": 0.44,
|
||||||
"challengeSeed": ["119657641"],
|
"challengeSeed": ["119657641"],
|
||||||
@ -39,7 +39,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "ad7123c8c441eddfaeb5bdef",
|
"id": "ad7123c8c441eddfaeb5bdef",
|
||||||
"name": "Bonfire: Meet Bonfire",
|
"name": "Bonfire: Meet Bonfire",
|
||||||
"difficulty": "0",
|
"difficulty": "0",
|
||||||
"description": [
|
"description": [
|
||||||
@ -78,7 +78,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "a202eed8fc186c8434cb6d61",
|
"id": "a202eed8fc186c8434cb6d61",
|
||||||
"name": "Bonfire: Reverse a String",
|
"name": "Bonfire: Reverse a String",
|
||||||
"difficulty": "1.01",
|
"difficulty": "1.01",
|
||||||
"tests": [
|
"tests": [
|
||||||
@ -119,7 +119,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "a302f7aae1aa3152a5b413bc",
|
"id": "a302f7aae1aa3152a5b413bc",
|
||||||
"name": "Bonfire: Factorialize a Number",
|
"name": "Bonfire: Factorialize a Number",
|
||||||
"tests": [
|
"tests": [
|
||||||
"expect(factorialize(5)).to.be.a(\"Number\");",
|
"expect(factorialize(5)).to.be.a(\"Number\");",
|
||||||
@ -158,7 +158,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "aaa48de84e1ecc7c742e1124",
|
"id": "aaa48de84e1ecc7c742e1124",
|
||||||
"name": "Bonfire: Check for Palindromes",
|
"name": "Bonfire: Check for Palindromes",
|
||||||
"difficulty": "1.03",
|
"difficulty": "1.03",
|
||||||
"description": [
|
"description": [
|
||||||
@ -204,7 +204,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "a26cbbe9ad8655a977e1ceb5",
|
"id": "a26cbbe9ad8655a977e1ceb5",
|
||||||
"name": "Bonfire: Find the Longest Word in a String",
|
"name": "Bonfire: Find the Longest Word in a String",
|
||||||
"difficulty": "1.04",
|
"difficulty": "1.04",
|
||||||
"description": [
|
"description": [
|
||||||
@ -243,7 +243,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "ab6137d4e35944e21037b769",
|
"id": "ab6137d4e35944e21037b769",
|
||||||
"name": "Bonfire: Title Case a Sentence",
|
"name": "Bonfire: Title Case a Sentence",
|
||||||
"difficulty": "1.05",
|
"difficulty": "1.05",
|
||||||
"description": [
|
"description": [
|
||||||
@ -280,7 +280,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "a789b3483989747d63b0e427",
|
"id": "a789b3483989747d63b0e427",
|
||||||
"name": "Bonfire: Return Largest Numbers in Arrays",
|
"name": "Bonfire: Return Largest Numbers in Arrays",
|
||||||
"difficulty": "1.06",
|
"difficulty": "1.06",
|
||||||
"description": [
|
"description": [
|
||||||
@ -318,7 +318,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "acda2fb1324d9b0fa741e6b5",
|
"id": "acda2fb1324d9b0fa741e6b5",
|
||||||
"name": "Bonfire: Confirm the Ending",
|
"name": "Bonfire: Confirm the Ending",
|
||||||
"difficulty": "1.07",
|
"difficulty": "1.07",
|
||||||
"description": [
|
"description": [
|
||||||
@ -355,7 +355,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "afcc8d540bea9ea2669306b6",
|
"id": "afcc8d540bea9ea2669306b6",
|
||||||
"name": "Bonfire: Repeat a string repeat a string",
|
"name": "Bonfire: Repeat a string repeat a string",
|
||||||
"difficulty": "1.08",
|
"difficulty": "1.08",
|
||||||
"description": [
|
"description": [
|
||||||
@ -391,7 +391,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "ac6993d51946422351508a41",
|
"id": "ac6993d51946422351508a41",
|
||||||
"name": "Bonfire: Truncate a string",
|
"name": "Bonfire: Truncate a string",
|
||||||
"difficulty": "1.09",
|
"difficulty": "1.09",
|
||||||
"description": [
|
"description": [
|
||||||
@ -428,7 +428,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "a9bd25c716030ec90084d8a1",
|
"id": "a9bd25c716030ec90084d8a1",
|
||||||
"name": "Bonfire: Chunky Monkey",
|
"name": "Bonfire: Chunky Monkey",
|
||||||
"difficulty": "1.10",
|
"difficulty": "1.10",
|
||||||
"description": [
|
"description": [
|
||||||
@ -465,7 +465,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "ab31c21b530c0dafa9e241ee",
|
"id": "ab31c21b530c0dafa9e241ee",
|
||||||
"name": "Bonfire: Slasher Flick",
|
"name": "Bonfire: Slasher Flick",
|
||||||
"difficulty": "1.11",
|
"difficulty": "1.11",
|
||||||
"description": [
|
"description": [
|
||||||
@ -502,7 +502,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "af2170cad53daa0770fabdea",
|
"id": "af2170cad53daa0770fabdea",
|
||||||
"name": "Bonfire: Mutations",
|
"name": "Bonfire: Mutations",
|
||||||
"difficulty": "1.12",
|
"difficulty": "1.12",
|
||||||
"description": [
|
"description": [
|
||||||
@ -545,7 +545,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "adf08ec01beb4f99fc7a68f2",
|
"id": "adf08ec01beb4f99fc7a68f2",
|
||||||
"name": "Bonfire: Falsey Bouncer",
|
"name": "Bonfire: Falsey Bouncer",
|
||||||
"difficulty": "1.50",
|
"difficulty": "1.50",
|
||||||
"description": [
|
"description": [
|
||||||
@ -583,7 +583,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "a8e512fbe388ac2f9198f0fa",
|
"id": "a8e512fbe388ac2f9198f0fa",
|
||||||
"name": "Bonfire: Where art thou",
|
"name": "Bonfire: Where art thou",
|
||||||
"difficulty": "1.55",
|
"difficulty": "1.55",
|
||||||
"description": [
|
"description": [
|
||||||
@ -621,7 +621,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "a39963a4c10bc8b4d4f06d7e",
|
"id": "a39963a4c10bc8b4d4f06d7e",
|
||||||
"name": "Bonfire: Seek and Destroy",
|
"name": "Bonfire: Seek and Destroy",
|
||||||
"difficulty": "1.60",
|
"difficulty": "1.60",
|
||||||
"description": [
|
"description": [
|
||||||
@ -657,7 +657,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "a24c1a4622e3c05097f71d67",
|
"id": "a24c1a4622e3c05097f71d67",
|
||||||
"name": "Bonfire: Where do I belong",
|
"name": "Bonfire: Where do I belong",
|
||||||
"difficulty": "1.61",
|
"difficulty": "1.61",
|
||||||
"description": [
|
"description": [
|
||||||
@ -693,7 +693,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "a3566b1109230028080c9345",
|
"id": "a3566b1109230028080c9345",
|
||||||
"name": "Bonfire: Sum All Numbers in a Range",
|
"name": "Bonfire: Sum All Numbers in a Range",
|
||||||
"difficulty": "2.00",
|
"difficulty": "2.00",
|
||||||
"description": [
|
"description": [
|
||||||
@ -733,7 +733,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "a5de63ebea8dbee56860f4f2",
|
"id": "a5de63ebea8dbee56860f4f2",
|
||||||
"name": "Bonfire: Diff Two Arrays",
|
"name": "Bonfire: Diff Two Arrays",
|
||||||
"difficulty": "2.01",
|
"difficulty": "2.01",
|
||||||
"description": [
|
"description": [
|
||||||
@ -778,7 +778,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "a7f4d8f2483413a6ce226cac",
|
"id": "a7f4d8f2483413a6ce226cac",
|
||||||
"name": "Bonfire: Roman Numeral Converter",
|
"name": "Bonfire: Roman Numeral Converter",
|
||||||
"tests": [
|
"tests": [
|
||||||
"expect(convert(12)).to.equal(\"XII\");",
|
"expect(convert(12)).to.equal(\"XII\");",
|
||||||
@ -818,7 +818,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "a0b5010f579e69b815e7c5d6",
|
"id": "a0b5010f579e69b815e7c5d6",
|
||||||
"name": "Bonfire: Search and Replace",
|
"name": "Bonfire: Search and Replace",
|
||||||
"tests": [
|
"tests": [
|
||||||
"expect(replace(\"Let us go to the store\", \"store\", \"mall\")).to.equal(\"Let us go to the mall\");",
|
"expect(replace(\"Let us go to the store\", \"store\", \"mall\")).to.equal(\"Let us go to the mall\");",
|
||||||
@ -861,7 +861,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "aa7697ea2477d1316795783b",
|
"id": "aa7697ea2477d1316795783b",
|
||||||
"name": "Bonfire: Pig Latin",
|
"name": "Bonfire: Pig Latin",
|
||||||
"tests": [
|
"tests": [
|
||||||
"expect(translate(\"california\")).to.equal(\"aliforniacay\");",
|
"expect(translate(\"california\")).to.equal(\"aliforniacay\");",
|
||||||
@ -904,7 +904,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "afd15382cdfb22c9efe8b7de",
|
"id": "afd15382cdfb22c9efe8b7de",
|
||||||
"name": "Bonfire: DNA Pairing",
|
"name": "Bonfire: DNA Pairing",
|
||||||
"tests": [
|
"tests": [
|
||||||
"assert.deepEqual(pair(\"ATCGA\"),[['A','T'],['T','A'],['C','G'],['G','C'],['A','T']], 'should return the dna pair');",
|
"assert.deepEqual(pair(\"ATCGA\"),[['A','T'],['T','A'],['C','G'],['G','C'],['A','T']], 'should return the dna pair');",
|
||||||
@ -942,7 +942,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "af7588ade1100bde429baf20",
|
"id": "af7588ade1100bde429baf20",
|
||||||
"name": "Bonfire: Missing letters",
|
"name": "Bonfire: Missing letters",
|
||||||
"difficulty": "2.05",
|
"difficulty": "2.05",
|
||||||
"description": [
|
"description": [
|
||||||
@ -979,7 +979,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "a77dbc43c33f39daa4429b4f",
|
"id": "a77dbc43c33f39daa4429b4f",
|
||||||
"name": "Bonfire: Boo who",
|
"name": "Bonfire: Boo who",
|
||||||
"difficulty": "2.06",
|
"difficulty": "2.06",
|
||||||
"description": [
|
"description": [
|
||||||
@ -1021,7 +1021,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "a105e963526e7de52b219be9",
|
"id": "a105e963526e7de52b219be9",
|
||||||
"name": "Bonfire: Sorted Union",
|
"name": "Bonfire: Sorted Union",
|
||||||
"difficulty": "2.07",
|
"difficulty": "2.07",
|
||||||
"description": [
|
"description": [
|
||||||
@ -1058,7 +1058,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "a6b0bb188d873cb2c8729495",
|
"id": "a6b0bb188d873cb2c8729495",
|
||||||
"name": "Bonfire: Convert HTML Entities",
|
"name": "Bonfire: Convert HTML Entities",
|
||||||
"difficulty": "2.07",
|
"difficulty": "2.07",
|
||||||
"description": [
|
"description": [
|
||||||
@ -1093,7 +1093,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "a103376db3ba46b2d50db289",
|
"id": "a103376db3ba46b2d50db289",
|
||||||
"name": "Bonfire: Spinal Tap Case",
|
"name": "Bonfire: Spinal Tap Case",
|
||||||
"difficulty": "2.08",
|
"difficulty": "2.08",
|
||||||
"description": [
|
"description": [
|
||||||
@ -1132,7 +1132,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "a5229172f011153519423690",
|
"id": "a5229172f011153519423690",
|
||||||
"name": "Bonfire: Sum All Odd Fibonacci Numbers",
|
"name": "Bonfire: Sum All Odd Fibonacci Numbers",
|
||||||
"difficulty": "2.09",
|
"difficulty": "2.09",
|
||||||
"description": [
|
"description": [
|
||||||
@ -1172,7 +1172,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "a3bfc1673c0526e06d3ac698",
|
"id": "a3bfc1673c0526e06d3ac698",
|
||||||
"name": "Bonfire: Sum All Primes",
|
"name": "Bonfire: Sum All Primes",
|
||||||
"difficulty": "2.10",
|
"difficulty": "2.10",
|
||||||
"description": [
|
"description": [
|
||||||
@ -1210,7 +1210,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "ae9defd7acaf69703ab432ea",
|
"id": "ae9defd7acaf69703ab432ea",
|
||||||
"name": "Bonfire: Smallest Common Multiple",
|
"name": "Bonfire: Smallest Common Multiple",
|
||||||
"difficulty": "2.11",
|
"difficulty": "2.11",
|
||||||
"description": [
|
"description": [
|
||||||
@ -1248,7 +1248,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "a6e40f1041b06c996f7b2406",
|
"id": "a6e40f1041b06c996f7b2406",
|
||||||
"name": "Bonfire: Finders Keepers",
|
"name": "Bonfire: Finders Keepers",
|
||||||
"difficulty": "2.12",
|
"difficulty": "2.12",
|
||||||
"description": [
|
"description": [
|
||||||
@ -1283,7 +1283,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "a5deed1811a43193f9f1c841",
|
"id": "a5deed1811a43193f9f1c841",
|
||||||
"name": "Bonfire: Drop it",
|
"name": "Bonfire: Drop it",
|
||||||
"difficulty": "2.13",
|
"difficulty": "2.13",
|
||||||
"description": [
|
"description": [
|
||||||
@ -1320,7 +1320,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "ab306dbdcc907c7ddfc30830",
|
"id": "ab306dbdcc907c7ddfc30830",
|
||||||
"name": "Bonfire: Steamroller",
|
"name": "Bonfire: Steamroller",
|
||||||
"difficulty": "2.14",
|
"difficulty": "2.14",
|
||||||
"description": [
|
"description": [
|
||||||
@ -1356,7 +1356,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "a8d97bd4c764e91f9d2bda01",
|
"id": "a8d97bd4c764e91f9d2bda01",
|
||||||
"name": "Bonfire: Binary Agents",
|
"name": "Bonfire: Binary Agents",
|
||||||
"difficulty": "2.15",
|
"difficulty": "2.15",
|
||||||
"description": [
|
"description": [
|
||||||
@ -1392,7 +1392,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "a10d2431ad0c6a099a4b8b52",
|
"id": "a10d2431ad0c6a099a4b8b52",
|
||||||
"name": "Bonfire: Everything Be True",
|
"name": "Bonfire: Everything Be True",
|
||||||
"difficulty": "2.21",
|
"difficulty": "2.21",
|
||||||
"description": [
|
"description": [
|
||||||
@ -1430,7 +1430,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "a97fd23d9b809dac9921074f",
|
"id": "a97fd23d9b809dac9921074f",
|
||||||
"name": "Bonfire: Arguments Optional",
|
"name": "Bonfire: Arguments Optional",
|
||||||
"difficulty": "2.22",
|
"difficulty": "2.22",
|
||||||
"description": [
|
"description": [
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
"order": 0.002,
|
"order": 0.002,
|
||||||
"challenges": [
|
"challenges": [
|
||||||
{
|
{
|
||||||
"_id": "bd7123c8c441eddfaeb5bdef",
|
"id": "bd7123c8c441eddfaeb5bdef",
|
||||||
"name": "Waypoint: Say Hello to HTML Elements",
|
"name": "Waypoint: Say Hello to HTML Elements",
|
||||||
"difficulty": 0.0085,
|
"difficulty": 0.0085,
|
||||||
"description": [
|
"description": [
|
||||||
@ -42,7 +42,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bad87fee1348bd9aedf0887a",
|
"id": "bad87fee1348bd9aedf0887a",
|
||||||
"name": "Waypoint: Headline with the h2 Element",
|
"name": "Waypoint: Headline with the h2 Element",
|
||||||
"difficulty": 0.010,
|
"difficulty": 0.010,
|
||||||
"description": [
|
"description": [
|
||||||
@ -78,7 +78,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bad87fee1348bd9aedf08801",
|
"id": "bad87fee1348bd9aedf08801",
|
||||||
"name": "Waypoint: Inform with the Paragraph Element",
|
"name": "Waypoint: Inform with the Paragraph Element",
|
||||||
"difficulty": 0.011,
|
"difficulty": 0.011,
|
||||||
"description": [
|
"description": [
|
||||||
@ -112,7 +112,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bad87fee1348bd9aeaf08801",
|
"id": "bad87fee1348bd9aeaf08801",
|
||||||
"name": "Waypoint: Visually Separate Elements with Line Breaks",
|
"name": "Waypoint: Visually Separate Elements with Line Breaks",
|
||||||
"difficulty": 0.012,
|
"difficulty": 0.012,
|
||||||
"description": [
|
"description": [
|
||||||
@ -147,7 +147,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bad87fee1348bd9aedf08802",
|
"id": "bad87fee1348bd9aedf08802",
|
||||||
"name": "Waypoint: Uncomment HTML",
|
"name": "Waypoint: Uncomment HTML",
|
||||||
"difficulty": 0.013,
|
"difficulty": 0.013,
|
||||||
"description": [
|
"description": [
|
||||||
@ -191,7 +191,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bad87fee1348bd9aedf08804",
|
"id": "bad87fee1348bd9aedf08804",
|
||||||
"name": "Waypoint: Comment out HTML",
|
"name": "Waypoint: Comment out HTML",
|
||||||
"difficulty": 0.014,
|
"difficulty": 0.014,
|
||||||
"description": [
|
"description": [
|
||||||
@ -233,7 +233,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bad87fee1348bd9aedf08833",
|
"id": "bad87fee1348bd9aedf08833",
|
||||||
"name": "Waypoint: Fill in the Blank with Placeholder Text",
|
"name": "Waypoint: Fill in the Blank with Placeholder Text",
|
||||||
"difficulty": 0.015,
|
"difficulty": 0.015,
|
||||||
"description": [
|
"description": [
|
||||||
@ -274,7 +274,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bad87fed1348bd9aedf08833",
|
"id": "bad87fed1348bd9aedf08833",
|
||||||
"name": "Waypoint: Delete HTML Elements",
|
"name": "Waypoint: Delete HTML Elements",
|
||||||
"difficulty": 0.016,
|
"difficulty": 0.016,
|
||||||
"description": [
|
"description": [
|
||||||
@ -314,7 +314,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bad87fee1348bd9aedf08803",
|
"id": "bad87fee1348bd9aedf08803",
|
||||||
"name": "Waypoint: Change the Color of Text",
|
"name": "Waypoint: Change the Color of Text",
|
||||||
"difficulty": 0.017,
|
"difficulty": 0.017,
|
||||||
"description": [
|
"description": [
|
||||||
@ -349,7 +349,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bad87fee1348bd9aedf08805",
|
"id": "bad87fee1348bd9aedf08805",
|
||||||
"name": "Waypoint: Use CSS Selectors to Style Elements",
|
"name": "Waypoint: Use CSS Selectors to Style Elements",
|
||||||
"difficulty": 0.018,
|
"difficulty": 0.018,
|
||||||
"description": [
|
"description": [
|
||||||
@ -393,7 +393,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bad87fee1348bd9aecf08806",
|
"id": "bad87fee1348bd9aecf08806",
|
||||||
"name": "Waypoint: Use a CSS Class to Style an Element",
|
"name": "Waypoint: Use a CSS Class to Style an Element",
|
||||||
"difficulty": 0.019,
|
"difficulty": 0.019,
|
||||||
"description": [
|
"description": [
|
||||||
@ -434,7 +434,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bad87fee1348bd9aefe08806",
|
"id": "bad87fee1348bd9aefe08806",
|
||||||
"name": "Waypoint: Style Multiple Elements with a CSS Class",
|
"name": "Waypoint: Style Multiple Elements with a CSS Class",
|
||||||
"difficulty": 0.020,
|
"difficulty": 0.020,
|
||||||
"description": [
|
"description": [
|
||||||
@ -472,7 +472,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bad87fee1348bd9aedf08806",
|
"id": "bad87fee1348bd9aedf08806",
|
||||||
"name": "Waypoint: Change the Font Size of an Element",
|
"name": "Waypoint: Change the Font Size of an Element",
|
||||||
"difficulty": 0.021,
|
"difficulty": 0.021,
|
||||||
"description": [
|
"description": [
|
||||||
@ -511,7 +511,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bad87fee1348bd9aede08807",
|
"id": "bad87fee1348bd9aede08807",
|
||||||
"name": "Waypoint: Set the Font Family of an Element",
|
"name": "Waypoint: Set the Font Family of an Element",
|
||||||
"difficulty": 0.022,
|
"difficulty": 0.022,
|
||||||
"description": [
|
"description": [
|
||||||
@ -551,7 +551,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bad87fee1348bd9aedf08807",
|
"id": "bad87fee1348bd9aedf08807",
|
||||||
"name": "Waypoint: Import a Google Font",
|
"name": "Waypoint: Import a Google Font",
|
||||||
"difficulty": 0.023,
|
"difficulty": 0.023,
|
||||||
"description": [
|
"description": [
|
||||||
@ -596,7 +596,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bad87fee1348bd9aedf08808",
|
"id": "bad87fee1348bd9aedf08808",
|
||||||
"name": "Waypoint: Specify How Fonts Should Degrade",
|
"name": "Waypoint: Specify How Fonts Should Degrade",
|
||||||
"difficulty": 0.024,
|
"difficulty": 0.024,
|
||||||
"description": [
|
"description": [
|
||||||
@ -645,7 +645,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bad87fee1348bd9aedf08809",
|
"id": "bad87fee1348bd9aedf08809",
|
||||||
"name": "Waypoint: Override Styles with Important",
|
"name": "Waypoint: Override Styles with Important",
|
||||||
"difficulty": 0.025,
|
"difficulty": 0.025,
|
||||||
"description": [
|
"description": [
|
||||||
@ -701,7 +701,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bad87fee1348bd9aedf08812",
|
"id": "bad87fee1348bd9aedf08812",
|
||||||
"name": "Waypoint: Add Images to your Website",
|
"name": "Waypoint: Add Images to your Website",
|
||||||
"difficulty": 0.026,
|
"difficulty": 0.026,
|
||||||
"description": [
|
"description": [
|
||||||
@ -749,7 +749,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bad87fee1348bd9acdf08812",
|
"id": "bad87fee1348bd9acdf08812",
|
||||||
"name": "Waypoint: Size your Images",
|
"name": "Waypoint: Size your Images",
|
||||||
"difficulty": 0.027,
|
"difficulty": 0.027,
|
||||||
"description": [
|
"description": [
|
||||||
@ -798,7 +798,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bad87fee1348bd9bedf08813",
|
"id": "bad87fee1348bd9bedf08813",
|
||||||
"name": "Waypoint: Add Borders Around your Elements",
|
"name": "Waypoint: Add Borders Around your Elements",
|
||||||
"difficulty": 0.028,
|
"difficulty": 0.028,
|
||||||
"description": [
|
"description": [
|
||||||
@ -853,7 +853,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bad87fee1348bd9aedf08814",
|
"id": "bad87fee1348bd9aedf08814",
|
||||||
"name": "Waypoint: Add Rounded Corners with a Border Radius",
|
"name": "Waypoint: Add Rounded Corners with a Border Radius",
|
||||||
"difficulty": 0.029,
|
"difficulty": 0.029,
|
||||||
"description": [
|
"description": [
|
||||||
@ -912,7 +912,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bad87fee1348bd9aedf08815",
|
"id": "bad87fee1348bd9aedf08815",
|
||||||
"name": "Waypoint: Make Circular Images with a Border Radius",
|
"name": "Waypoint: Make Circular Images with a Border Radius",
|
||||||
"difficulty": 0.030,
|
"difficulty": 0.030,
|
||||||
"description": [
|
"description": [
|
||||||
@ -970,7 +970,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bad87fee1348bd9aedf08816",
|
"id": "bad87fee1348bd9aedf08816",
|
||||||
"name": "Waypoint: Link to External Pages with Anchor Elements",
|
"name": "Waypoint: Link to External Pages with Anchor Elements",
|
||||||
"difficulty": 0.031,
|
"difficulty": 0.031,
|
||||||
"description": [
|
"description": [
|
||||||
@ -1032,7 +1032,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bad87fee1348bd9aede08817",
|
"id": "bad87fee1348bd9aede08817",
|
||||||
"name": "Waypoint: Wrap an Anchor Element within a Paragraph",
|
"name": "Waypoint: Wrap an Anchor Element within a Paragraph",
|
||||||
"difficulty": 0.032,
|
"difficulty": 0.032,
|
||||||
"description": [
|
"description": [
|
||||||
@ -1099,7 +1099,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bad87fee1348bd9aedf08817",
|
"id": "bad87fee1348bd9aedf08817",
|
||||||
"name": "Waypoint: Make Dead Links using the Hash Symbol",
|
"name": "Waypoint: Make Dead Links using the Hash Symbol",
|
||||||
"difficulty": 0.033,
|
"difficulty": 0.033,
|
||||||
"description": [
|
"description": [
|
||||||
@ -1161,7 +1161,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bad87fee1348bd9aedf08820",
|
"id": "bad87fee1348bd9aedf08820",
|
||||||
"name": "Waypoint: Turn an Image into a Link",
|
"name": "Waypoint: Turn an Image into a Link",
|
||||||
"difficulty": 0.034,
|
"difficulty": 0.034,
|
||||||
"description": [
|
"description": [
|
||||||
@ -1226,7 +1226,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bad87fee1348bd9aedf08818",
|
"id": "bad87fee1348bd9aedf08818",
|
||||||
"name": "Waypoint: Add Alt Text to an Image for Accessibility",
|
"name": "Waypoint: Add Alt Text to an Image for Accessibility",
|
||||||
"difficulty": 0.035,
|
"difficulty": 0.035,
|
||||||
"description": [
|
"description": [
|
||||||
@ -1289,7 +1289,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bad87fee1348bd9aedf08827",
|
"id": "bad87fee1348bd9aedf08827",
|
||||||
"name": "Waypoint: Create a Bulleted Unordered List",
|
"name": "Waypoint: Create a Bulleted Unordered List",
|
||||||
"difficulty": 0.036,
|
"difficulty": 0.036,
|
||||||
"description": [
|
"description": [
|
||||||
@ -1354,7 +1354,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bad87fee1348bd9aedf08828",
|
"id": "bad87fee1348bd9aedf08828",
|
||||||
"name": "Waypoint: Create an Ordered List",
|
"name": "Waypoint: Create an Ordered List",
|
||||||
"difficulty": 0.037,
|
"difficulty": 0.037,
|
||||||
"description": [
|
"description": [
|
||||||
@ -1426,7 +1426,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bad87fee1348bd9aedf08829",
|
"id": "bad87fee1348bd9aedf08829",
|
||||||
"name": "Waypoint: Create a Text Field",
|
"name": "Waypoint: Create a Text Field",
|
||||||
"difficulty": 0.038,
|
"difficulty": 0.038,
|
||||||
"description": [
|
"description": [
|
||||||
@ -1497,7 +1497,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bad87fee1348bd9aedf08830",
|
"id": "bad87fee1348bd9aedf08830",
|
||||||
"name": "Waypoint: Add Placeholder Text to a Text Field",
|
"name": "Waypoint: Add Placeholder Text to a Text Field",
|
||||||
"difficulty": 0.039,
|
"difficulty": 0.039,
|
||||||
"description": [
|
"description": [
|
||||||
@ -1570,7 +1570,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bad87fee1348bd9aede08830",
|
"id": "bad87fee1348bd9aede08830",
|
||||||
"name": "Waypoint: Create a Form Element",
|
"name": "Waypoint: Create a Form Element",
|
||||||
"difficulty": 0.040,
|
"difficulty": 0.040,
|
||||||
"description": [
|
"description": [
|
||||||
@ -1645,7 +1645,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bad87fee1348bd9aedd08830",
|
"id": "bad87fee1348bd9aedd08830",
|
||||||
"name": "Waypoint: Add a Submit Button to a Form",
|
"name": "Waypoint: Add a Submit Button to a Form",
|
||||||
"difficulty": 0.041,
|
"difficulty": 0.041,
|
||||||
"description": [
|
"description": [
|
||||||
@ -1722,7 +1722,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bad87fee1348bd9aedc08830",
|
"id": "bad87fee1348bd9aedc08830",
|
||||||
"name": "Waypoint: Use HTML5 to Require a Field",
|
"name": "Waypoint: Use HTML5 to Require a Field",
|
||||||
"difficulty": 0.042,
|
"difficulty": 0.042,
|
||||||
"description": [
|
"description": [
|
||||||
@ -1797,7 +1797,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bad87fee1348bd9aedf08834",
|
"id": "bad87fee1348bd9aedf08834",
|
||||||
"name": "Waypoint: Create a Set of Radio Buttons",
|
"name": "Waypoint: Create a Set of Radio Buttons",
|
||||||
"difficulty": 0.043,
|
"difficulty": 0.043,
|
||||||
"description": [
|
"description": [
|
||||||
@ -1880,7 +1880,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bad87fee1348bd9aedf08835",
|
"id": "bad87fee1348bd9aedf08835",
|
||||||
"name": "Waypoint: Create a Set of Checkboxes",
|
"name": "Waypoint: Create a Set of Checkboxes",
|
||||||
"difficulty": 0.044,
|
"difficulty": 0.044,
|
||||||
"description": [
|
"description": [
|
||||||
@ -1960,7 +1960,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bad87fee1348bd9aede18835",
|
"id": "bad87fee1348bd9aede18835",
|
||||||
"name": "Waypoint: Clean up your form using Linebreaks",
|
"name": "Waypoint: Clean up your form using Linebreaks",
|
||||||
"difficulty": 0.045,
|
"difficulty": 0.045,
|
||||||
"description": [
|
"description": [
|
||||||
@ -2039,7 +2039,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bad87fee1348bd9aedd08835",
|
"id": "bad87fee1348bd9aedd08835",
|
||||||
"name": "Waypoint: Check Radio Buttons and Checkboxes by Default",
|
"name": "Waypoint: Check Radio Buttons and Checkboxes by Default",
|
||||||
"difficulty": 0.046,
|
"difficulty": 0.046,
|
||||||
"description": [
|
"description": [
|
||||||
@ -2122,7 +2122,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bad87fee1348bd9aede08835",
|
"id": "bad87fee1348bd9aede08835",
|
||||||
"name": "Waypoint: Wrap Many Elements within a Single Div Element",
|
"name": "Waypoint: Wrap Many Elements within a Single Div Element",
|
||||||
"difficulty": 0.047,
|
"difficulty": 0.047,
|
||||||
"description": [
|
"description": [
|
||||||
@ -2210,7 +2210,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bad87fee1348bd9aede07836",
|
"id": "bad87fee1348bd9aede07836",
|
||||||
"name": "Waypoint: Give a Background Color to a Div Element",
|
"name": "Waypoint: Give a Background Color to a Div Element",
|
||||||
"difficulty": 0.048,
|
"difficulty": 0.048,
|
||||||
"description": [
|
"description": [
|
||||||
@ -2296,7 +2296,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bad88fee1348bd9aedf08825",
|
"id": "bad88fee1348bd9aedf08825",
|
||||||
"name": "Waypoint: Adjusting the Padding of an Element",
|
"name": "Waypoint: Adjusting the Padding of an Element",
|
||||||
"difficulty": 0.064,
|
"difficulty": 0.064,
|
||||||
"description": [
|
"description": [
|
||||||
@ -2357,7 +2357,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bad87fee1348bd9aedf08822",
|
"id": "bad87fee1348bd9aedf08822",
|
||||||
"name": "Waypoint: Adjust the Margin of an Element",
|
"name": "Waypoint: Adjust the Margin of an Element",
|
||||||
"difficulty": 0.065,
|
"difficulty": 0.065,
|
||||||
"description": [
|
"description": [
|
||||||
@ -2420,7 +2420,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bad87fee1348bd9aedf08823",
|
"id": "bad87fee1348bd9aedf08823",
|
||||||
"name": "Waypoint: Add a Negative Margin to an Element",
|
"name": "Waypoint: Add a Negative Margin to an Element",
|
||||||
"difficulty": 0.066,
|
"difficulty": 0.066,
|
||||||
"description": [
|
"description": [
|
||||||
@ -2482,7 +2482,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bad87fee1348bd9aedf08824",
|
"id": "bad87fee1348bd9aedf08824",
|
||||||
"name": "Waypoint: Add Different Padding to Each Side of an Element",
|
"name": "Waypoint: Add Different Padding to Each Side of an Element",
|
||||||
"difficulty": 0.067,
|
"difficulty": 0.067,
|
||||||
"description": [
|
"description": [
|
||||||
@ -2547,7 +2547,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bad87fee1248bd9aedf08824",
|
"id": "bad87fee1248bd9aedf08824",
|
||||||
"name": "Waypoint: Add Different Margins to Each Side of an Element",
|
"name": "Waypoint: Add Different Margins to Each Side of an Element",
|
||||||
"difficulty": 0.068,
|
"difficulty": 0.068,
|
||||||
"description": [
|
"description": [
|
||||||
@ -2612,7 +2612,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bad87fee1348bd9aedf08826",
|
"id": "bad87fee1348bd9aedf08826",
|
||||||
"name": "Waypoint: Use Clockwise Notation to Specify the Padding of an Element",
|
"name": "Waypoint: Use Clockwise Notation to Specify the Padding of an Element",
|
||||||
"difficulty": 0.069,
|
"difficulty": 0.069,
|
||||||
"description": [
|
"description": [
|
||||||
@ -2674,7 +2674,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bad87fee1348bd9aedf08726",
|
"id": "bad87fee1348bd9aedf08726",
|
||||||
"name": "Waypoint: Use Clockwise Notation to Specify the Margin of an Element",
|
"name": "Waypoint: Use Clockwise Notation to Specify the Margin of an Element",
|
||||||
"difficulty": 0.070,
|
"difficulty": 0.070,
|
||||||
"description": [
|
"description": [
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
"order": 0.006,
|
"order": 0.006,
|
||||||
"challenges": [
|
"challenges": [
|
||||||
{
|
{
|
||||||
"_id": "bd7129d8c441eddfaeb5bdef",
|
"id": "bd7129d8c441eddfaeb5bdef",
|
||||||
"name": "Waypoint: Build an Adventure Game",
|
"name": "Waypoint: Build an Adventure Game",
|
||||||
"difficulty": 0.24,
|
"difficulty": 0.24,
|
||||||
"challengeSeed": ["114604814"],
|
"challengeSeed": ["114604814"],
|
||||||
@ -28,7 +28,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bd7130d8c441eddfaeb5bdef",
|
"id": "bd7130d8c441eddfaeb5bdef",
|
||||||
"name": "Waypoint: Build Rock Paper Scissors",
|
"name": "Waypoint: Build Rock Paper Scissors",
|
||||||
"difficulty": 0.25,
|
"difficulty": 0.25,
|
||||||
"challengeSeed": ["114604815"],
|
"challengeSeed": ["114604815"],
|
||||||
@ -51,7 +51,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bd7131d8c441eddfaeb5bdef",
|
"id": "bd7131d8c441eddfaeb5bdef",
|
||||||
"name": "Waypoint: Learn JavaScript For Loops",
|
"name": "Waypoint: Learn JavaScript For Loops",
|
||||||
"difficulty": 0.26,
|
"difficulty": 0.26,
|
||||||
"challengeSeed": ["114614220"],
|
"challengeSeed": ["114614220"],
|
||||||
@ -74,7 +74,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bd7132d8c441eddfaeb5bdef",
|
"id": "bd7132d8c441eddfaeb5bdef",
|
||||||
"name": "Waypoint: Learn JavaScript While Loops",
|
"name": "Waypoint: Learn JavaScript While Loops",
|
||||||
"difficulty": 0.27,
|
"difficulty": 0.27,
|
||||||
"challengeSeed": ["114612889"],
|
"challengeSeed": ["114612889"],
|
||||||
@ -96,7 +96,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bd7133d8c441eddfaeb5bdef",
|
"id": "bd7133d8c441eddfaeb5bdef",
|
||||||
"name": "Waypoint: Learn Control Flow",
|
"name": "Waypoint: Learn Control Flow",
|
||||||
"difficulty": 0.28,
|
"difficulty": 0.28,
|
||||||
"challengeSeed": ["114612888"],
|
"challengeSeed": ["114612888"],
|
||||||
@ -120,7 +120,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bd7134d8c441eddfaeb5bdef",
|
"id": "bd7134d8c441eddfaeb5bdef",
|
||||||
"name": "Waypoint: Build a Contact List",
|
"name": "Waypoint: Build a Contact List",
|
||||||
"difficulty": 0.29,
|
"difficulty": 0.29,
|
||||||
"challengeSeed": ["114612887"],
|
"challengeSeed": ["114612887"],
|
||||||
@ -143,14 +143,14 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bd7135d8c441eddfaeb5bdef",
|
"id": "bd7135d8c441eddfaeb5bdef",
|
||||||
"name": "Waypoint: Build an Address Book",
|
"name": "Waypoint: Build an Address Book",
|
||||||
"difficulty": 0.30,
|
"difficulty": 0.30,
|
||||||
"challengeSeed": ["114612885"],
|
"challengeSeed": ["114612885"],
|
||||||
"description": [
|
"description": [
|
||||||
"Let's learn more about objects.",
|
"Let's learn more about objects.",
|
||||||
"Go to <a href='http://www.codecademy.com/courses/spencer-sandbox/0/1' target='_blank'>http://www.codecademy.com/courses/spencer-sandbox/0/1</a> and complete the section.",
|
"Go to <a href='http://www.codecademy.com/courses/spencer-sandbox/0/1' target='_blank'>http://www.codecademy.com/courses/spencer-sandbox/0/1</a> and complete the section.",
|
||||||
"Be sure to also complete this section: <a href='http://www.codecademy.com/courses/building-an-address-book/0/1?curriculum_id=506324b3a7dffd00020bf661' target='_blank'>http://www.codecademy.com/courses/building-an-address-book/0/1?curriculum_id=506324b3a7dffd00020bf661</a>."
|
"Be sure to also complete this section: <a href='http://www.codecademy.com/courses/building-an-address-book/0/1?curriculumid=506324b3a7dffd00020bf661' target='_blank'>http://www.codecademy.com/courses/building-an-address-book/0/1?curriculumid=506324b3a7dffd00020bf661</a>."
|
||||||
],
|
],
|
||||||
"challengeType": 2,
|
"challengeType": 2,
|
||||||
"tests": [],
|
"tests": [],
|
||||||
@ -166,7 +166,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bd7136d8c441eddfaeb5bdef",
|
"id": "bd7136d8c441eddfaeb5bdef",
|
||||||
"name": "Waypoint: Build a Cash Register",
|
"name": "Waypoint: Build a Cash Register",
|
||||||
"difficulty": 0.31,
|
"difficulty": 0.31,
|
||||||
"challengeSeed": ["114612882"],
|
"challengeSeed": ["114612882"],
|
||||||
@ -189,7 +189,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bd7118d8c441eddfaeb5bdef",
|
"id": "bd7118d8c441eddfaeb5bdef",
|
||||||
"name": "Waypoint: Discover Chrome DevTools",
|
"name": "Waypoint: Discover Chrome DevTools",
|
||||||
"difficulty": 0.32,
|
"difficulty": 0.32,
|
||||||
"challengeSeed": ["110752743"],
|
"challengeSeed": ["110752743"],
|
||||||
@ -220,7 +220,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bd7138d8c441eddfaeb5bdef",
|
"id": "bd7138d8c441eddfaeb5bdef",
|
||||||
"name": "Waypoint: Learn Regular Expressions",
|
"name": "Waypoint: Learn Regular Expressions",
|
||||||
"difficulty": 0.33,
|
"difficulty": 0.33,
|
||||||
"challengeSeed": ["112547802"],
|
"challengeSeed": ["112547802"],
|
||||||
@ -252,4 +252,4 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
"order": 0.003,
|
"order": 0.003,
|
||||||
"challenges": [
|
"challenges": [
|
||||||
{
|
{
|
||||||
"_id": "bad87fee1348bd9acde08812",
|
"id": "bad87fee1348bd9acde08812",
|
||||||
"name": "Waypoint: Mobile Responsive Images",
|
"name": "Waypoint: Mobile Responsive Images",
|
||||||
"difficulty": 0.047,
|
"difficulty": 0.047,
|
||||||
"description": [
|
"description": [
|
||||||
@ -89,7 +89,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bad87fee1348bd8acde08812",
|
"id": "bad87fee1348bd8acde08812",
|
||||||
"name": "Waypoint: Center Text with Bootstrap",
|
"name": "Waypoint: Center Text with Bootstrap",
|
||||||
"difficulty": 0.048,
|
"difficulty": 0.048,
|
||||||
"description": [
|
"description": [
|
||||||
@ -172,7 +172,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bad87fee1348cd8acdf08812",
|
"id": "bad87fee1348cd8acdf08812",
|
||||||
"name": "Waypoint: Create a Bootstrap Button",
|
"name": "Waypoint: Create a Bootstrap Button",
|
||||||
"difficulty": 0.049,
|
"difficulty": 0.049,
|
||||||
"description": [
|
"description": [
|
||||||
@ -256,7 +256,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bad87fee1348cd8acef08812",
|
"id": "bad87fee1348cd8acef08812",
|
||||||
"name": "Waypoint: Create a Block Element Bootstrap Button",
|
"name": "Waypoint: Create a Block Element Bootstrap Button",
|
||||||
"difficulty": 0.050,
|
"difficulty": 0.050,
|
||||||
"description": [
|
"description": [
|
||||||
@ -344,7 +344,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bad87fee1348cd8acef08811",
|
"id": "bad87fee1348cd8acef08811",
|
||||||
"name": "Waypoint: Taste the Bootstrap Button Color Rainbow",
|
"name": "Waypoint: Taste the Bootstrap Button Color Rainbow",
|
||||||
"difficulty": 0.051,
|
"difficulty": 0.051,
|
||||||
"description": [
|
"description": [
|
||||||
@ -430,7 +430,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bad87fee1348cd8acef08813",
|
"id": "bad87fee1348cd8acef08813",
|
||||||
"name": "Waypoint: Call out Optional Actions with Button Info",
|
"name": "Waypoint: Call out Optional Actions with Button Info",
|
||||||
"difficulty": 0.052,
|
"difficulty": 0.052,
|
||||||
"description": [
|
"description": [
|
||||||
@ -517,7 +517,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bad87fee1348ce8acef08814",
|
"id": "bad87fee1348ce8acef08814",
|
||||||
"name": "Waypoint: Warn your Users of a Dangerous Action",
|
"name": "Waypoint: Warn your Users of a Dangerous Action",
|
||||||
"difficulty": 0.053,
|
"difficulty": 0.053,
|
||||||
"description": [
|
"description": [
|
||||||
@ -605,7 +605,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bad88fee1348ce8acef08815",
|
"id": "bad88fee1348ce8acef08815",
|
||||||
"name": "Waypoint: Use the Bootstrap Grid to Put Elements Side By Side",
|
"name": "Waypoint: Use the Bootstrap Grid to Put Elements Side By Side",
|
||||||
"difficulty": 0.054,
|
"difficulty": 0.054,
|
||||||
"description": [
|
"description": [
|
||||||
@ -698,7 +698,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bad87fee1348bd9aedf08845",
|
"id": "bad87fee1348bd9aedf08845",
|
||||||
"name": "Waypoint: Ditch Custom CSS for Bootstrap",
|
"name": "Waypoint: Ditch Custom CSS for Bootstrap",
|
||||||
"difficulty": 0.055,
|
"difficulty": 0.055,
|
||||||
"description": [
|
"description": [
|
||||||
@ -796,7 +796,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bad87fee1348bd9aede08845",
|
"id": "bad87fee1348bd9aede08845",
|
||||||
"name": "Waypoint: Create a Custom Heading",
|
"name": "Waypoint: Create a Custom Heading",
|
||||||
"difficulty": 0.056,
|
"difficulty": 0.056,
|
||||||
"description": [
|
"description": [
|
||||||
@ -885,7 +885,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bad87fee1348bd9aedd08845",
|
"id": "bad87fee1348bd9aedd08845",
|
||||||
"name": "Waypoint: Add Font Awesome Icons to our Buttons",
|
"name": "Waypoint: Add Font Awesome Icons to our Buttons",
|
||||||
"difficulty": 0.057,
|
"difficulty": 0.057,
|
||||||
"description": [
|
"description": [
|
||||||
@ -973,7 +973,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bad87fee1348bd9aedc08845",
|
"id": "bad87fee1348bd9aedc08845",
|
||||||
"name": "Waypoint: Add Font Awesome Icons all of our Buttons",
|
"name": "Waypoint: Add Font Awesome Icons all of our Buttons",
|
||||||
"difficulty": 0.058,
|
"difficulty": 0.058,
|
||||||
"description": [
|
"description": [
|
||||||
@ -1060,7 +1060,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bad87fee1348bd9aedb08845",
|
"id": "bad87fee1348bd9aedb08845",
|
||||||
"name": "Waypoint: Responsively Style Radio Buttons",
|
"name": "Waypoint: Responsively Style Radio Buttons",
|
||||||
"difficulty": 0.059,
|
"difficulty": 0.059,
|
||||||
"description": [
|
"description": [
|
||||||
@ -1146,7 +1146,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bad87fee1348bd9aeda08845",
|
"id": "bad87fee1348bd9aeda08845",
|
||||||
"name": "Waypoint: Responsively Style Checkboxes",
|
"name": "Waypoint: Responsively Style Checkboxes",
|
||||||
"difficulty": 0.060,
|
"difficulty": 0.060,
|
||||||
"description": [
|
"description": [
|
||||||
@ -1239,7 +1239,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bad87fee1348bd9aed908845",
|
"id": "bad87fee1348bd9aed908845",
|
||||||
"name": "Waypoint: Style Text Inputs as Form Controls",
|
"name": "Waypoint: Style Text Inputs as Form Controls",
|
||||||
"difficulty": 0.061,
|
"difficulty": 0.061,
|
||||||
"description": [
|
"description": [
|
||||||
@ -1342,7 +1342,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bad87fee1348bd9aec908845",
|
"id": "bad87fee1348bd9aec908845",
|
||||||
"name": "Waypoint: Line up Form Elements Responsively with Bootstrap",
|
"name": "Waypoint: Line up Form Elements Responsively with Bootstrap",
|
||||||
"difficulty": 0.062,
|
"difficulty": 0.062,
|
||||||
"description": [
|
"description": [
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
"order": 0.005,
|
"order": 0.005,
|
||||||
"challenges": [
|
"challenges": [
|
||||||
{
|
{
|
||||||
"_id": "bd7123d8c441eddfaeb5bdef",
|
"id": "bd7123d8c441eddfaeb5bdef",
|
||||||
"name": "Waypoint: Learn Basic Computer Science",
|
"name": "Waypoint: Learn Basic Computer Science",
|
||||||
"difficulty": 0.90,
|
"difficulty": 0.90,
|
||||||
"challengeSeed": ["114628241"],
|
"challengeSeed": ["114628241"],
|
||||||
@ -32,7 +32,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bd8124d8c441eddfaeb5bdef",
|
"id": "bd8124d8c441eddfaeb5bdef",
|
||||||
"name": "Waypoint: Learn Loops",
|
"name": "Waypoint: Learn Loops",
|
||||||
"difficulty": 0.19,
|
"difficulty": 0.19,
|
||||||
"challengeSeed": ["114597348"],
|
"challengeSeed": ["114597348"],
|
||||||
@ -59,7 +59,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bd8125d8c441eddfaeb5bdef",
|
"id": "bd8125d8c441eddfaeb5bdef",
|
||||||
"name": "Waypoint: Learn Computer Hardware",
|
"name": "Waypoint: Learn Computer Hardware",
|
||||||
"difficulty": 0.20,
|
"difficulty": 0.20,
|
||||||
"challengeSeed": ["114597347"],
|
"challengeSeed": ["114597347"],
|
||||||
@ -86,7 +86,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bd8126d8c441eddfaeb5bdef",
|
"id": "bd8126d8c441eddfaeb5bdef",
|
||||||
"name": "Waypoint: Learn Computer Networking",
|
"name": "Waypoint: Learn Computer Networking",
|
||||||
"difficulty": 0.21,
|
"difficulty": 0.21,
|
||||||
"challengeSeed": ["114604811"],
|
"challengeSeed": ["114604811"],
|
||||||
@ -113,7 +113,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bd8127d8c441eddfaeb5bdef",
|
"id": "bd8127d8c441eddfaeb5bdef",
|
||||||
"name": "Waypoint: Learn Boolean Logic",
|
"name": "Waypoint: Learn Boolean Logic",
|
||||||
"difficulty": 0.22,
|
"difficulty": 0.22,
|
||||||
"challengeSeed": ["114604812"],
|
"challengeSeed": ["114604812"],
|
||||||
@ -140,7 +140,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bd8128d8c441eddfaeb5bdef",
|
"id": "bd8128d8c441eddfaeb5bdef",
|
||||||
"name": "Waypoint: Learn Computer Security",
|
"name": "Waypoint: Learn Computer Security",
|
||||||
"difficulty": 0.23,
|
"difficulty": 0.23,
|
||||||
"challengeSeed": ["114604813"],
|
"challengeSeed": ["114604813"],
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
"order": 0.013,
|
"order": 0.013,
|
||||||
"challenges": [
|
"challenges": [
|
||||||
{
|
{
|
||||||
"_id": "bd7154d8c441eddfaeb5bdef",
|
"id": "bd7154d8c441eddfaeb5bdef",
|
||||||
"name": "Waypoint: Get Started with Angular.js",
|
"name": "Waypoint: Get Started with Angular.js",
|
||||||
"difficulty": 0.34,
|
"difficulty": 0.34,
|
||||||
"challengeSeed": ["114684726"],
|
"challengeSeed": ["114684726"],
|
||||||
@ -26,7 +26,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bd7155d8c441eddfaeb5bdef",
|
"id": "bd7155d8c441eddfaeb5bdef",
|
||||||
"name": "Waypoint: Apply Angular.js Directives",
|
"name": "Waypoint: Apply Angular.js Directives",
|
||||||
"difficulty": 0.35,
|
"difficulty": 0.35,
|
||||||
"challengeSeed": ["114684727"],
|
"challengeSeed": ["114684727"],
|
||||||
@ -49,7 +49,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bd7156d8c441eddfaeb5bdef",
|
"id": "bd7156d8c441eddfaeb5bdef",
|
||||||
"name": "Waypoint: Power Forms with Angular.js",
|
"name": "Waypoint: Power Forms with Angular.js",
|
||||||
"difficulty": 0.36,
|
"difficulty": 0.36,
|
||||||
"challengeSeed": ["114684729"],
|
"challengeSeed": ["114684729"],
|
||||||
@ -72,7 +72,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bd7157d8c441eddfaeb5bdef",
|
"id": "bd7157d8c441eddfaeb5bdef",
|
||||||
"name": "Waypoint: Customize Angular.js Directives",
|
"name": "Waypoint: Customize Angular.js Directives",
|
||||||
"difficulty": 0.37,
|
"difficulty": 0.37,
|
||||||
"challengeSeed": ["114685062"],
|
"challengeSeed": ["114685062"],
|
||||||
@ -94,7 +94,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bd7158d8c441eddfaeb5bdef",
|
"id": "bd7158d8c441eddfaeb5bdef",
|
||||||
"name": "Waypoint: Create Angular.js Services",
|
"name": "Waypoint: Create Angular.js Services",
|
||||||
"difficulty": 0.38,
|
"difficulty": 0.38,
|
||||||
"challengeSeed": ["114685060"],
|
"challengeSeed": ["114685060"],
|
||||||
@ -117,7 +117,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bd7153d8c441eddfaeb5bd0f",
|
"id": "bd7153d8c441eddfaeb5bd0f",
|
||||||
"name": "Waypoint: Manage Packages with NPM",
|
"name": "Waypoint: Manage Packages with NPM",
|
||||||
"difficulty": 0.39,
|
"difficulty": 0.39,
|
||||||
"challengeSeed": ["126433450"],
|
"challengeSeed": ["126433450"],
|
||||||
@ -170,7 +170,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bd7153d8c441eddfaeb5bdff",
|
"id": "bd7153d8c441eddfaeb5bdff",
|
||||||
"name": "Waypoint: Start a Node.js Server",
|
"name": "Waypoint: Start a Node.js Server",
|
||||||
"difficulty": 0.40,
|
"difficulty": 0.40,
|
||||||
"challengeSeed": ["126411561"],
|
"challengeSeed": ["126411561"],
|
||||||
@ -212,7 +212,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bd7153d8c441eddfaeb5bdfe",
|
"id": "bd7153d8c441eddfaeb5bdfe",
|
||||||
"name": "Waypoint: Continue working with Node.js Servers",
|
"name": "Waypoint: Continue working with Node.js Servers",
|
||||||
"difficulty": 0.41,
|
"difficulty": 0.41,
|
||||||
"challengeSeed": ["128836506"],
|
"challengeSeed": ["128836506"],
|
||||||
@ -239,7 +239,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bd7153d8c441eddfaeb5bdfd",
|
"id": "bd7153d8c441eddfaeb5bdfd",
|
||||||
"name": "Waypoint: Finish working with Node.js Servers",
|
"name": "Waypoint: Finish working with Node.js Servers",
|
||||||
"difficulty": 0.42,
|
"difficulty": 0.42,
|
||||||
"challengeSeed": ["128836507"],
|
"challengeSeed": ["128836507"],
|
||||||
@ -266,7 +266,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bd7153d8c441eddfaeb5bd1f",
|
"id": "bd7153d8c441eddfaeb5bd1f",
|
||||||
"name": "Waypoint: Build Web Apps with Express.js",
|
"name": "Waypoint: Build Web Apps with Express.js",
|
||||||
"difficulty": 0.43,
|
"difficulty": 0.43,
|
||||||
"challengeSeed": ["126411559"],
|
"challengeSeed": ["126411559"],
|
||||||
@ -307,7 +307,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bd7140d8c441eddfaeb5bdef",
|
"id": "bd7140d8c441eddfaeb5bdef",
|
||||||
"name": "Waypoint: Manage Source Code with Git",
|
"name": "Waypoint: Manage Source Code with Git",
|
||||||
"difficulty": 0.44,
|
"difficulty": 0.44,
|
||||||
"challengeSeed": ["114635309"],
|
"challengeSeed": ["114635309"],
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
"order": 0.010,
|
"order": 0.010,
|
||||||
"challenges": [
|
"challenges": [
|
||||||
{
|
{
|
||||||
"_id": "bd7129d8c441eddfbeb5bddf",
|
"id": "bd7129d8c441eddfbeb5bddf",
|
||||||
"name": "Waypoint: Practice Functional Programming",
|
"name": "Waypoint: Practice Functional Programming",
|
||||||
"difficulty": 0.01,
|
"difficulty": 0.01,
|
||||||
"challengeSeed": ["129169463"],
|
"challengeSeed": ["129169463"],
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
"order": 0.001,
|
"order": 0.001,
|
||||||
"challenges": [
|
"challenges": [
|
||||||
{
|
{
|
||||||
"_id": "bd7124d8c441eddfaeb5bdef",
|
"id": "bd7124d8c441eddfaeb5bdef",
|
||||||
"name": "Waypoint: Learn how Free Code Camp Works",
|
"name": "Waypoint: Learn how Free Code Camp Works",
|
||||||
"difficulty": 0.001,
|
"difficulty": 0.001,
|
||||||
"challengeSeed": ["125407438"],
|
"challengeSeed": ["125407438"],
|
||||||
@ -40,7 +40,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bd7125d8c441eddfaeb5bd0f",
|
"id": "bd7125d8c441eddfaeb5bd0f",
|
||||||
"name": "Waypoint: Join Our Chat Room",
|
"name": "Waypoint: Join Our Chat Room",
|
||||||
"difficulty": 0.002,
|
"difficulty": 0.002,
|
||||||
"challengeSeed": ["124555254"],
|
"challengeSeed": ["124555254"],
|
||||||
@ -81,7 +81,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bd7125d8c441eddfaeb5bdff",
|
"id": "bd7125d8c441eddfaeb5bdff",
|
||||||
"name": "Waypoint: Preview our Challenge Map",
|
"name": "Waypoint: Preview our Challenge Map",
|
||||||
"difficulty": 0.003,
|
"difficulty": 0.003,
|
||||||
"challengeSeed": ["125407437"],
|
"challengeSeed": ["125407437"],
|
||||||
@ -114,7 +114,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bd7125d8c441eddfaeb5bd1f",
|
"id": "bd7125d8c441eddfaeb5bd1f",
|
||||||
"name": "Waypoint: Browse our Field Guide",
|
"name": "Waypoint: Browse our Field Guide",
|
||||||
"difficulty": 0.004,
|
"difficulty": 0.004,
|
||||||
"challengeSeed": ["125407435"],
|
"challengeSeed": ["125407435"],
|
||||||
@ -145,7 +145,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bd7125d8c441eddfaeb5bd2f",
|
"id": "bd7125d8c441eddfaeb5bd2f",
|
||||||
"name": "Waypoint: Customize your Portfolio Page",
|
"name": "Waypoint: Customize your Portfolio Page",
|
||||||
"difficulty": 0.005,
|
"difficulty": 0.005,
|
||||||
"challengeSeed": ["125407433"],
|
"challengeSeed": ["125407433"],
|
||||||
@ -180,7 +180,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bd7126d8c441eddfaeb5bd3f",
|
"id": "bd7126d8c441eddfaeb5bd3f",
|
||||||
"name": "Waypoint: Try Camper News",
|
"name": "Waypoint: Try Camper News",
|
||||||
"difficulty": 0.006,
|
"difficulty": 0.006,
|
||||||
"challengeSeed": ["124553410"],
|
"challengeSeed": ["124553410"],
|
||||||
@ -219,7 +219,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bd7126d8c441eddfaeb5bd3e",
|
"id": "bd7126d8c441eddfaeb5bd3e",
|
||||||
"name": "Waypoint: Meet Other Campers in your City",
|
"name": "Waypoint: Meet Other Campers in your City",
|
||||||
"difficulty": 0.007,
|
"difficulty": 0.007,
|
||||||
"challengeSeed": ["127358841"],
|
"challengeSeed": ["127358841"],
|
||||||
@ -256,7 +256,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bd7137d8c441eddfaeb5bdef",
|
"id": "bd7137d8c441eddfaeb5bdef",
|
||||||
"name": "Waypoint: Get Help the Hacker Way with RSAP",
|
"name": "Waypoint: Get Help the Hacker Way with RSAP",
|
||||||
"difficulty": 0.008,
|
"difficulty": 0.008,
|
||||||
"challengeSeed": ["125407432"],
|
"challengeSeed": ["125407432"],
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
"order": 0.009,
|
"order": 0.009,
|
||||||
"challenges": [
|
"challenges": [
|
||||||
{
|
{
|
||||||
"_id": "a2f1d72d9b908d0bd72bb9f6",
|
"id": "a2f1d72d9b908d0bd72bb9f6",
|
||||||
"name": "Bonfire: Make a Person",
|
"name": "Bonfire: Make a Person",
|
||||||
"difficulty": "3.01",
|
"difficulty": "3.01",
|
||||||
"description": [
|
"description": [
|
||||||
@ -54,7 +54,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "af4afb223120f7348cdfc9fd",
|
"id": "af4afb223120f7348cdfc9fd",
|
||||||
"name": "Bonfire: Map the Debris",
|
"name": "Bonfire: Map the Debris",
|
||||||
"difficulty": "3.02",
|
"difficulty": "3.02",
|
||||||
"description": [
|
"description": [
|
||||||
@ -94,7 +94,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "a3f503de51cfab748ff001aa",
|
"id": "a3f503de51cfab748ff001aa",
|
||||||
"name": "Bonfire: Pairwise",
|
"name": "Bonfire: Pairwise",
|
||||||
"difficulty": "3.03",
|
"difficulty": "3.03",
|
||||||
"description": [
|
"description": [
|
||||||
@ -133,4 +133,4 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
"order": 0.004,
|
"order": 0.004,
|
||||||
"challenges": [
|
"challenges": [
|
||||||
{
|
{
|
||||||
"_id": "bd7112d8c441eddfaeb5bded",
|
"id": "bd7112d8c441eddfaeb5bded",
|
||||||
"name": "Waypoint: Get Started with jQuery",
|
"name": "Waypoint: Get Started with jQuery",
|
||||||
"difficulty": 0.13,
|
"difficulty": 0.13,
|
||||||
"challengeSeed": ["125671865"],
|
"challengeSeed": ["125671865"],
|
||||||
@ -28,7 +28,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bd7113d8c441eddfaeb5bdef",
|
"id": "bd7113d8c441eddfaeb5bdef",
|
||||||
"name": "Waypoint: Write Functions with jQuery",
|
"name": "Waypoint: Write Functions with jQuery",
|
||||||
"difficulty": 0.14,
|
"difficulty": 0.14,
|
||||||
"challengeSeed": ["125658029"],
|
"challengeSeed": ["125658029"],
|
||||||
@ -52,7 +52,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bd7114d8c441eddfaeb5bdef",
|
"id": "bd7114d8c441eddfaeb5bdef",
|
||||||
"name": "Waypoint: Harness Dynamic HTML",
|
"name": "Waypoint: Harness Dynamic HTML",
|
||||||
"difficulty": 0.15,
|
"difficulty": 0.15,
|
||||||
"challengeSeed": ["125658028"],
|
"challengeSeed": ["125658028"],
|
||||||
@ -75,7 +75,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bd7115d8c441eddfaeb5bdef",
|
"id": "bd7115d8c441eddfaeb5bdef",
|
||||||
"name": "Waypoint: Listen for jQuery Events",
|
"name": "Waypoint: Listen for jQuery Events",
|
||||||
"difficulty": 0.16,
|
"difficulty": 0.16,
|
||||||
"challengeSeed": ["125658027"],
|
"challengeSeed": ["125658027"],
|
||||||
@ -98,7 +98,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bd7116d8c441eddfaeb5bdef",
|
"id": "bd7116d8c441eddfaeb5bdef",
|
||||||
"name": "Waypoint: Trigger jQuery Effects",
|
"name": "Waypoint: Trigger jQuery Effects",
|
||||||
"difficulty": 0.17,
|
"difficulty": 0.17,
|
||||||
"challengeSeed": ["125658025"],
|
"challengeSeed": ["125658025"],
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
"order" : 0.008,
|
"order" : 0.008,
|
||||||
"challenges": [
|
"challenges": [
|
||||||
{
|
{
|
||||||
"_id": "bd7129d8c441eddfaeb5bddf",
|
"id": "bd7129d8c441eddfaeb5bddf",
|
||||||
"name": "Waypoint: Scope Your Variables",
|
"name": "Waypoint: Scope Your Variables",
|
||||||
"difficulty": 0.01,
|
"difficulty": 0.01,
|
||||||
"challengeSeed": ["128836683"],
|
"challengeSeed": ["128836683"],
|
||||||
@ -29,7 +29,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bd7131d8c441eddfaeb5bdbf",
|
"id": "bd7131d8c441eddfaeb5bdbf",
|
||||||
"name": "Waypoint: Reference your Current Object with This",
|
"name": "Waypoint: Reference your Current Object with This",
|
||||||
"difficulty": 0.03,
|
"difficulty": 0.03,
|
||||||
"challengeSeed": ["128836508"],
|
"challengeSeed": ["128836508"],
|
||||||
@ -55,7 +55,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bd7132d8c441eddfaeb5bdaf",
|
"id": "bd7132d8c441eddfaeb5bdaf",
|
||||||
"name": "Waypoint: Traverse the Prototype Chain",
|
"name": "Waypoint: Traverse the Prototype Chain",
|
||||||
"difficulty": 0.04,
|
"difficulty": 0.04,
|
||||||
"challengeSeed": ["128836684"],
|
"challengeSeed": ["128836684"],
|
||||||
@ -80,7 +80,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bd7133d8c441eddfaeb5bd0f",
|
"id": "bd7133d8c441eddfaeb5bd0f",
|
||||||
"name": "Waypoint: Reuse Code with Decorators",
|
"name": "Waypoint: Reuse Code with Decorators",
|
||||||
"difficulty": 0.05,
|
"difficulty": 0.05,
|
||||||
"challengeSeed": ["128836681"],
|
"challengeSeed": ["128836681"],
|
||||||
@ -106,7 +106,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bd7134d8c441eddfaeb5bd1f",
|
"id": "bd7134d8c441eddfaeb5bd1f",
|
||||||
"name": "Waypoint: Build Objects with Functional Classes",
|
"name": "Waypoint: Build Objects with Functional Classes",
|
||||||
"difficulty": 0.06,
|
"difficulty": 0.06,
|
||||||
"challengeSeed": ["128836503"],
|
"challengeSeed": ["128836503"],
|
||||||
@ -132,7 +132,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bd7135d8c441eddfaeb5bd2f",
|
"id": "bd7135d8c441eddfaeb5bd2f",
|
||||||
"name": "Waypoint: Build Objects with Prototypal Classes",
|
"name": "Waypoint: Build Objects with Prototypal Classes",
|
||||||
"difficulty": 0.07,
|
"difficulty": 0.07,
|
||||||
"challengeSeed": ["128836505"],
|
"challengeSeed": ["128836505"],
|
||||||
@ -158,7 +158,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bd7136d8c441eddfaeb5bd3f",
|
"id": "bd7136d8c441eddfaeb5bd3f",
|
||||||
"name": "Waypoint: Understand Pseudoclassical Patterns",
|
"name": "Waypoint: Understand Pseudoclassical Patterns",
|
||||||
"difficulty": 0.08,
|
"difficulty": 0.08,
|
||||||
"challengeSeed": ["128836689"],
|
"challengeSeed": ["128836689"],
|
||||||
@ -184,7 +184,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bd7136d8c441eddfaeb5bd4f",
|
"id": "bd7136d8c441eddfaeb5bd4f",
|
||||||
"name": "Waypoint: Subclass one Object to Another",
|
"name": "Waypoint: Subclass one Object to Another",
|
||||||
"difficulty": 0.09,
|
"difficulty": 0.09,
|
||||||
"challengeSeed": ["128836686"],
|
"challengeSeed": ["128836686"],
|
||||||
@ -209,7 +209,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bd7136d8c441eddfaeb5bd5f",
|
"id": "bd7136d8c441eddfaeb5bd5f",
|
||||||
"name": "Waypoint: Use Pseudoclassical Subclasses",
|
"name": "Waypoint: Use Pseudoclassical Subclasses",
|
||||||
"difficulty": 0.10,
|
"difficulty": 0.10,
|
||||||
"challengeSeed": ["128836937"],
|
"challengeSeed": ["128836937"],
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
"order": 0.012,
|
"order": 0.012,
|
||||||
"challenges": [
|
"challenges": [
|
||||||
{
|
{
|
||||||
"_id": "bd7158d8c442eddfbeb5bd1f",
|
"id": "bd7158d8c442eddfbeb5bd1f",
|
||||||
"name": "Waypoint: Get Set for Ziplines",
|
"name": "Waypoint: Get Set for Ziplines",
|
||||||
"difficulty": 1.00,
|
"difficulty": 1.00,
|
||||||
"challengeSeed": ["125658022"],
|
"challengeSeed": ["125658022"],
|
||||||
@ -36,7 +36,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bd7158d8c442eddfaeb5bd1f",
|
"id": "bd7158d8c442eddfaeb5bd1f",
|
||||||
"name": "Zipline: Use the Twitch.tv JSON API",
|
"name": "Zipline: Use the Twitch.tv JSON API",
|
||||||
"difficulty": 1.01,
|
"difficulty": 1.01,
|
||||||
"challengeSeed": ["126411564"],
|
"challengeSeed": ["126411564"],
|
||||||
@ -71,7 +71,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bd7158d8c442eddfaeb5bd13",
|
"id": "bd7158d8c442eddfaeb5bd13",
|
||||||
"name": "Zipline: Build a Random Quote Machine",
|
"name": "Zipline: Build a Random Quote Machine",
|
||||||
"difficulty": 1.02,
|
"difficulty": 1.02,
|
||||||
"challengeSeed": ["126415122"],
|
"challengeSeed": ["126415122"],
|
||||||
@ -101,7 +101,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bd7158d8c442eddfaeb5bd10",
|
"id": "bd7158d8c442eddfaeb5bd10",
|
||||||
"name": "Zipline: Show the Local Weather",
|
"name": "Zipline: Show the Local Weather",
|
||||||
"difficulty": 1.03,
|
"difficulty": 1.03,
|
||||||
"challengeSeed": ["126415127"],
|
"challengeSeed": ["126415127"],
|
||||||
@ -133,7 +133,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bd7158d8c442eddfaeb5bd18",
|
"id": "bd7158d8c442eddfaeb5bd18",
|
||||||
"name": "Zipline: Stylize Stories on Camper News",
|
"name": "Zipline: Stylize Stories on Camper News",
|
||||||
"difficulty": 1.04,
|
"difficulty": 1.04,
|
||||||
"challengeSeed": ["126415129"],
|
"challengeSeed": ["126415129"],
|
||||||
@ -166,7 +166,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bd7158d8c442eddfaeb5bd19",
|
"id": "bd7158d8c442eddfaeb5bd19",
|
||||||
"name": "Zipline: Wikipedia Viewer",
|
"name": "Zipline: Wikipedia Viewer",
|
||||||
"difficulty": 1.05,
|
"difficulty": 1.05,
|
||||||
"challengeSeed": ["126415131"],
|
"challengeSeed": ["126415131"],
|
||||||
@ -198,7 +198,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bd7158d8c442eddfaeb5bd0f",
|
"id": "bd7158d8c442eddfaeb5bd0f",
|
||||||
"name": "Zipline: Build a Pomodoro Clock",
|
"name": "Zipline: Build a Pomodoro Clock",
|
||||||
"difficulty": 1.06,
|
"difficulty": 1.06,
|
||||||
"challengeSeed": ["126411567"],
|
"challengeSeed": ["126411567"],
|
||||||
@ -229,7 +229,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bd7158d8c442eddfaeb5bd17",
|
"id": "bd7158d8c442eddfaeb5bd17",
|
||||||
"name": "Zipline: Build a JavaScript Calculator",
|
"name": "Zipline: Build a JavaScript Calculator",
|
||||||
"difficulty": 1.07,
|
"difficulty": 1.07,
|
||||||
"challengeSeed": ["126411565"],
|
"challengeSeed": ["126411565"],
|
||||||
@ -260,7 +260,7 @@
|
|||||||
"descriptionPt": []
|
"descriptionPt": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bd7158d8c442eddfaeb5bd1c",
|
"id": "bd7158d8c442eddfaeb5bd1c",
|
||||||
"name": "Zipline: Build a Tic Tac Toe Game",
|
"name": "Zipline: Build a Tic Tac Toe Game",
|
||||||
"difficulty": 1.08,
|
"difficulty": 1.08,
|
||||||
"challengeSeed": ["126415123"],
|
"challengeSeed": ["126415123"],
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
[
|
[
|
||||||
{
|
{
|
||||||
"_id": "bd7158d9c441eddfaeb5bdef",
|
"id": "bd7158d9c441eddfaeb5bdef",
|
||||||
"name": "How do I use this guide?",
|
"name": "How do I use this guide?",
|
||||||
"dashedName": "how-do-i-use-this-guide",
|
"dashedName": "how-do-i-use-this-guide",
|
||||||
"description": [
|
"description": [
|
||||||
@ -12,7 +12,7 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bd7158d9c441eddfaeb5bdff",
|
"id": "bd7158d9c441eddfaeb5bdff",
|
||||||
"name": "What exactly is Free Code Camp?",
|
"name": "What exactly is Free Code Camp?",
|
||||||
"dashedName": "what-exactly-is-free-code-camp",
|
"dashedName": "what-exactly-is-free-code-camp",
|
||||||
"description": [
|
"description": [
|
||||||
@ -30,7 +30,7 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bd7158d9c441eddfaeb5bd1f",
|
"id": "bd7158d9c441eddfaeb5bd1f",
|
||||||
"name": "Why do I need Free Code Camp?",
|
"name": "Why do I need Free Code Camp?",
|
||||||
"dashedName": "why-do-i-need-free-code-camp",
|
"dashedName": "why-do-i-need-free-code-camp",
|
||||||
"description": [
|
"description": [
|
||||||
@ -48,7 +48,7 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bd7158d9c441eddfaeb5bd2f",
|
"id": "bd7158d9c441eddfaeb5bd2f",
|
||||||
"name": "What are the main advantages of Free Code Camp?",
|
"name": "What are the main advantages of Free Code Camp?",
|
||||||
"dashedName": "what-are-the-main-advantages-of-free-code-camp",
|
"dashedName": "what-are-the-main-advantages-of-free-code-camp",
|
||||||
"description": [
|
"description": [
|
||||||
@ -65,7 +65,7 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bd7158d9c441eddfaeb5bd3f",
|
"id": "bd7158d9c441eddfaeb5bd3f",
|
||||||
"name": "How does Free Code Camp work?",
|
"name": "How does Free Code Camp work?",
|
||||||
"dashedName": "how-does-free-code-camp-work",
|
"dashedName": "how-does-free-code-camp-work",
|
||||||
"description": [
|
"description": [
|
||||||
@ -87,7 +87,7 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bd7158d9c441eddfaeb5bd4f",
|
"id": "bd7158d9c441eddfaeb5bd4f",
|
||||||
"name": "Will I really be able to get software engineering job after Free Code Camp?",
|
"name": "Will I really be able to get software engineering job after Free Code Camp?",
|
||||||
"dashedName": "will-i-really-be-able-to-get-a-software-engineering-job-after-free-code-camp",
|
"dashedName": "will-i-really-be-able-to-get-a-software-engineering-job-after-free-code-camp",
|
||||||
"description": [
|
"description": [
|
||||||
@ -107,7 +107,7 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bd7158d9c440eddfaeb5bdef",
|
"id": "bd7158d9c440eddfaeb5bdef",
|
||||||
"name": "What will I learn, and in what sequence?",
|
"name": "What will I learn, and in what sequence?",
|
||||||
"dashedName": "what-will-i-learn-and-in-what-sequence",
|
"dashedName": "what-will-i-learn-and-in-what-sequence",
|
||||||
"description": [
|
"description": [
|
||||||
@ -144,7 +144,7 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bd7158d9c434eddfaeb5bdef",
|
"id": "bd7158d9c434eddfaeb5bdef",
|
||||||
"name": "How long does Free Code Camp take?",
|
"name": "How long does Free Code Camp take?",
|
||||||
"dashedName": "how-long-does-free-code-camp-take",
|
"dashedName": "how-long-does-free-code-camp-take",
|
||||||
"description": [
|
"description": [
|
||||||
@ -182,7 +182,7 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bd7158d9c438eddfaeb5bdef",
|
"id": "bd7158d9c438eddfaeb5bdef",
|
||||||
"name": "Why does Free Code Camp use JavaScript instead of Ruby or Python?",
|
"name": "Why does Free Code Camp use JavaScript instead of Ruby or Python?",
|
||||||
"dashedName": "why-does-free-code-camp-use-javascript-instead-of-ruby-or-python",
|
"dashedName": "why-does-free-code-camp-use-javascript-instead-of-ruby-or-python",
|
||||||
"description": [
|
"description": [
|
||||||
@ -196,7 +196,7 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bd7158d9c437eddfaeb5bdef",
|
"id": "bd7158d9c437eddfaeb5bdef",
|
||||||
"name": "What is pair programming, and why is it special?",
|
"name": "What is pair programming, and why is it special?",
|
||||||
"dashedName": "what-is-pair-programming-and-why-is-it-special",
|
"dashedName": "what-is-pair-programming-and-why-is-it-special",
|
||||||
"description": [
|
"description": [
|
||||||
@ -209,7 +209,7 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bd7158d9c436eddfaeb5bd2f",
|
"id": "bd7158d9c436eddfaeb5bd2f",
|
||||||
"name": "How do I get help when I get stuck?",
|
"name": "How do I get help when I get stuck?",
|
||||||
"dashedName": "how-do-i-get-help-when-i-get-stuck",
|
"dashedName": "how-do-i-get-help-when-i-get-stuck",
|
||||||
"description": [
|
"description": [
|
||||||
@ -232,7 +232,7 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bd7158d9c436eddfaeb5bd3f",
|
"id": "bd7158d9c436eddfaeb5bd3f",
|
||||||
"name": "Can I jump around in this guide?",
|
"name": "Can I jump around in this guide?",
|
||||||
"dashedName": "can-i-jump-around-in-this-guide",
|
"dashedName": "can-i-jump-around-in-this-guide",
|
||||||
"description": [
|
"description": [
|
||||||
@ -244,7 +244,7 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bd7158d9c436eddfaeb5bdef",
|
"id": "bd7158d9c436eddfaeb5bdef",
|
||||||
"name": "If Free Code Camp is free, how does it make money?",
|
"name": "If Free Code Camp is free, how does it make money?",
|
||||||
"dashedName": "if-free-code-camp-is-free-how-does-it-make-money",
|
"dashedName": "if-free-code-camp-is-free-how-does-it-make-money",
|
||||||
"description": [
|
"description": [
|
||||||
@ -257,7 +257,7 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bd7158d9c435eddfaeb5bdef",
|
"id": "bd7158d9c435eddfaeb5bdef",
|
||||||
"name": "Does Free Code Camp have an application process?",
|
"name": "Does Free Code Camp have an application process?",
|
||||||
"dashedName": "does-free-code-camp-have-an-application-process",
|
"dashedName": "does-free-code-camp-have-an-application-process",
|
||||||
"description": [
|
"description": [
|
||||||
@ -269,7 +269,7 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bd7158d9c436eddfaeb5bd3b",
|
"id": "bd7158d9c436eddfaeb5bd3b",
|
||||||
"name": "How can I stream my live coding sessions on Free Code Camp's Twitch.tv channel?",
|
"name": "How can I stream my live coding sessions on Free Code Camp's Twitch.tv channel?",
|
||||||
"dashedName": "how-can-i-stream-my-live-coding-sessions-on-free-code-camps-twitch-tv-channel",
|
"dashedName": "how-can-i-stream-my-live-coding-sessions-on-free-code-camps-twitch-tv-channel",
|
||||||
"description": [
|
"description": [
|
||||||
@ -290,7 +290,7 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bd7158d9c436eddfaeb5bd3d",
|
"id": "bd7158d9c436eddfaeb5bd3d",
|
||||||
"name": "How can I find other Free Code Camp campers in my city?",
|
"name": "How can I find other Free Code Camp campers in my city?",
|
||||||
"dashedName": "how-can-i-find-other-free-code-camp-campers-in-my-city",
|
"dashedName": "how-can-i-find-other-free-code-camp-campers-in-my-city",
|
||||||
"description": [
|
"description": [
|
||||||
@ -482,7 +482,7 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bd7158d9c436eddfaeb5bd3e",
|
"id": "bd7158d9c436eddfaeb5bd3e",
|
||||||
"name": "Does Free Code Camp have an alumni network?",
|
"name": "Does Free Code Camp have an alumni network?",
|
||||||
"dashedName": "does-free-code-camp-have-an-alumni-network",
|
"dashedName": "does-free-code-camp-have-an-alumni-network",
|
||||||
"description": [
|
"description": [
|
||||||
@ -492,7 +492,7 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bd7158d9c442eddfaeb5b2ef",
|
"id": "bd7158d9c442eddfaeb5b2ef",
|
||||||
"name": "Why doesn't Free Code Camp teach technical interviewing skills?",
|
"name": "Why doesn't Free Code Camp teach technical interviewing skills?",
|
||||||
"dashedName": "why-doesnt-free-code-camp-teach-technical-interviewing-skills",
|
"dashedName": "why-doesnt-free-code-camp-teach-technical-interviewing-skills",
|
||||||
"description": [
|
"description": [
|
||||||
@ -508,7 +508,7 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bd7158d9c442eddfaeb5bdef",
|
"id": "bd7158d9c442eddfaeb5bdef",
|
||||||
"name": "How do I best use the Global Control Shortcuts for Mac?",
|
"name": "How do I best use the Global Control Shortcuts for Mac?",
|
||||||
"dashedName": "how-do-i-best-use-the-global-control-shortcuts-for-mac",
|
"dashedName": "how-do-i-best-use-the-global-control-shortcuts-for-mac",
|
||||||
"description": [
|
"description": [
|
||||||
@ -533,7 +533,7 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bd7158d9c445eddfaeb5bdef",
|
"id": "bd7158d9c445eddfaeb5bdef",
|
||||||
"name": "How can I get to Inbox Zero with Gmail shortcuts?",
|
"name": "How can I get to Inbox Zero with Gmail shortcuts?",
|
||||||
"dashedName": "how-can-i-get-to-inbox-zero-with-gmail-shortcuts",
|
"dashedName": "how-can-i-get-to-inbox-zero-with-gmail-shortcuts",
|
||||||
"description": [
|
"description": [
|
||||||
@ -562,7 +562,7 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bd7158d9c445eddfaeb5bdff",
|
"id": "bd7158d9c445eddfaeb5bdff",
|
||||||
"name": "How can I deploy a website without writing any code at all?",
|
"name": "How can I deploy a website without writing any code at all?",
|
||||||
"dashedName": "how-can-i-deploy-a-website-without-writing-any-code-at-all",
|
"dashedName": "how-can-i-deploy-a-website-without-writing-any-code-at-all",
|
||||||
"description": [
|
"description": [
|
||||||
@ -585,7 +585,7 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bd7158d9c446eddfaeb5bdef",
|
"id": "bd7158d9c446eddfaeb5bdef",
|
||||||
"name": "How do Free Code Camp's Nonprofit Projects work?",
|
"name": "How do Free Code Camp's Nonprofit Projects work?",
|
||||||
"dashedName": "how-do-free-code-camps-nonprofit-projects-work",
|
"dashedName": "how-do-free-code-camps-nonprofit-projects-work",
|
||||||
"description": [
|
"description": [
|
||||||
@ -660,7 +660,7 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bd7158d9c447eddfaeb5bdef",
|
"id": "bd7158d9c447eddfaeb5bdef",
|
||||||
"name": "How do I install Screenhero?",
|
"name": "How do I install Screenhero?",
|
||||||
"dashedName": "how-do-i-install-screenhero",
|
"dashedName": "how-do-i-install-screenhero",
|
||||||
"description": [
|
"description": [
|
||||||
@ -672,7 +672,7 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bd7158d9c451eddfaeb5bded",
|
"id": "bd7158d9c451eddfaeb5bded",
|
||||||
"name": "What is the style guide for Bonfires?",
|
"name": "What is the style guide for Bonfires?",
|
||||||
"dashedName": "what-is-the-style-guide-for-bonfires",
|
"dashedName": "what-is-the-style-guide-for-bonfires",
|
||||||
"description": [
|
"description": [
|
||||||
@ -708,7 +708,7 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bd7158d9c451eddfaeb5bdee",
|
"id": "bd7158d9c451eddfaeb5bdee",
|
||||||
"name": "What is the Free Code Camp Code of Conduct?",
|
"name": "What is the Free Code Camp Code of Conduct?",
|
||||||
"dashedName": "what-is-the-free-code-camp-code-of-conduct",
|
"dashedName": "what-is-the-free-code-camp-code-of-conduct",
|
||||||
"description": [
|
"description": [
|
||||||
@ -733,7 +733,7 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bd7158d9c451eddfaeb5bdef",
|
"id": "bd7158d9c451eddfaeb5bdef",
|
||||||
"name": "What is the Free Code Camp Privacy Policy?",
|
"name": "What is the Free Code Camp Privacy Policy?",
|
||||||
"dashedName": "what-is-the-free-code-camp-privacy-policy",
|
"dashedName": "what-is-the-free-code-camp-privacy-policy",
|
||||||
"description": [
|
"description": [
|
||||||
@ -775,7 +775,7 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bd7158d9c436eddfaeb5bd3c",
|
"id": "bd7158d9c436eddfaeb5bd3c",
|
||||||
"name": "How can I reach the Free Code Camp team to interview them for my publication?",
|
"name": "How can I reach the Free Code Camp team to interview them for my publication?",
|
||||||
"dashedName": "how-can-i-reach-the-free-code-camp-team-to-interview-them-for-my-publication",
|
"dashedName": "how-can-i-reach-the-free-code-camp-team-to-interview-them-for-my-publication",
|
||||||
"description": [
|
"description": [
|
||||||
@ -794,7 +794,7 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bd7158d9c436eddfaeb5dd3b",
|
"id": "bd7158d9c436eddfaeb5dd3b",
|
||||||
"name": "What other resources does Free Code Camp recommend to nonprofits?",
|
"name": "What other resources does Free Code Camp recommend to nonprofits?",
|
||||||
"dashedName": "what-other-resources-does-free-code-camp-recommend-to-nonprofits",
|
"dashedName": "what-other-resources-does-free-code-camp-recommend-to-nonprofits",
|
||||||
"description": [
|
"description": [
|
||||||
@ -836,7 +836,7 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bd7158d9c436eddfadb5bd3e",
|
"id": "bd7158d9c436eddfadb5bd3e",
|
||||||
"name": "How can I contribute to this guide?",
|
"name": "How can I contribute to this guide?",
|
||||||
"dashedName": "how-can-i-contribute-to-this-guide",
|
"dashedName": "how-can-i-contribute-to-this-guide",
|
||||||
"description": [
|
"description": [
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
"order" : 0.004,
|
"order" : 0.004,
|
||||||
"challenges": [
|
"challenges": [
|
||||||
{
|
{
|
||||||
"_id": "bad87fee1348bd9acdd08826",
|
"id": "bad87fee1348bd9acdd08826",
|
||||||
"name": "Waypoint: Learn how Script Tags and Document Ready Work",
|
"name": "Waypoint: Learn how Script Tags and Document Ready Work",
|
||||||
"difficulty": 0.072,
|
"difficulty": 0.072,
|
||||||
"description": [
|
"description": [
|
||||||
@ -25,7 +25,7 @@
|
|||||||
},
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
"_id": "bad87fee1348bd9aedc08826",
|
"id": "bad87fee1348bd9aedc08826",
|
||||||
"name": "Waypoint: Target Elements by Selectors Using jQuery",
|
"name": "Waypoint: Target Elements by Selectors Using jQuery",
|
||||||
"difficulty": 0.073,
|
"difficulty": 0.073,
|
||||||
"description": [
|
"description": [
|
||||||
@ -41,7 +41,7 @@
|
|||||||
},
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
"_id": "bad87fee1348bd9aedb08826",
|
"id": "bad87fee1348bd9aedb08826",
|
||||||
"name": "Waypoint: Target Elements by Class Using jQuery",
|
"name": "Waypoint: Target Elements by Class Using jQuery",
|
||||||
"difficulty": 0.074,
|
"difficulty": 0.074,
|
||||||
"description": [
|
"description": [
|
||||||
@ -57,7 +57,7 @@
|
|||||||
},
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
"_id": "bad87fee1348bd9aeda08826",
|
"id": "bad87fee1348bd9aeda08826",
|
||||||
"name": "Waypoint: Target an element by ID Using jQuery",
|
"name": "Waypoint: Target an element by ID Using jQuery",
|
||||||
"difficulty": 0.075,
|
"difficulty": 0.075,
|
||||||
"description": [
|
"description": [
|
||||||
@ -73,7 +73,7 @@
|
|||||||
},
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
"_id": "bad87fee1348bd9aed908826",
|
"id": "bad87fee1348bd9aed908826",
|
||||||
"name": "Waypoint: Change the CSS of an Element Using jQuery",
|
"name": "Waypoint: Change the CSS of an Element Using jQuery",
|
||||||
"difficulty": 0.076,
|
"difficulty": 0.076,
|
||||||
"description": [
|
"description": [
|
||||||
@ -89,7 +89,7 @@
|
|||||||
},
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
"_id": "bad87fee1348bd9aed808826",
|
"id": "bad87fee1348bd9aed808826",
|
||||||
"name": "Waypoint: Disable an Element Using jQuery",
|
"name": "Waypoint: Disable an Element Using jQuery",
|
||||||
"difficulty": 0.077,
|
"difficulty": 0.077,
|
||||||
"description": [
|
"description": [
|
||||||
@ -105,7 +105,7 @@
|
|||||||
},
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
"_id": "bad87fee1348bd9aed708826",
|
"id": "bad87fee1348bd9aed708826",
|
||||||
"name": "Waypoint: Remove an Element Using jQuery",
|
"name": "Waypoint: Remove an Element Using jQuery",
|
||||||
"difficulty": 0.078,
|
"difficulty": 0.078,
|
||||||
"description": [
|
"description": [
|
||||||
@ -121,7 +121,7 @@
|
|||||||
},
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
"_id": "bad87fee1348bd9aed608826",
|
"id": "bad87fee1348bd9aed608826",
|
||||||
"name": "Waypoint: Move an Element Using jQuery",
|
"name": "Waypoint: Move an Element Using jQuery",
|
||||||
"difficulty": 0.079,
|
"difficulty": 0.079,
|
||||||
"description": [
|
"description": [
|
||||||
@ -137,7 +137,7 @@
|
|||||||
},
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
"_id": "bad87fee1348bd9aed508826",
|
"id": "bad87fee1348bd9aed508826",
|
||||||
"name": "Waypoint: Clone an Element Using jQuery",
|
"name": "Waypoint: Clone an Element Using jQuery",
|
||||||
"difficulty": 0.080,
|
"difficulty": 0.080,
|
||||||
"description": [
|
"description": [
|
||||||
@ -153,7 +153,7 @@
|
|||||||
},
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
"_id": "bad87fee1348bd9aed408826",
|
"id": "bad87fee1348bd9aed408826",
|
||||||
"name": "Waypoint: Animate an Element Using jQuery",
|
"name": "Waypoint: Animate an Element Using jQuery",
|
||||||
"difficulty": 0.081,
|
"difficulty": 0.081,
|
||||||
"description": [
|
"description": [
|
||||||
@ -169,7 +169,7 @@
|
|||||||
},
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
"_id": "bad87fee1348bd9aed308826",
|
"id": "bad87fee1348bd9aed308826",
|
||||||
"name": "Waypoint: Target the Parent of an Element Using jQuery",
|
"name": "Waypoint: Target the Parent of an Element Using jQuery",
|
||||||
"difficulty": 0.082,
|
"difficulty": 0.082,
|
||||||
"description": [
|
"description": [
|
||||||
@ -185,7 +185,7 @@
|
|||||||
},
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
"_id": "bad87fee1348bd9aed208826",
|
"id": "bad87fee1348bd9aed208826",
|
||||||
"name": "Waypoint: Target the Children of an Element Using jQuery",
|
"name": "Waypoint: Target the Children of an Element Using jQuery",
|
||||||
"difficulty": 0.083,
|
"difficulty": 0.083,
|
||||||
"description": [
|
"description": [
|
||||||
@ -202,7 +202,7 @@
|
|||||||
|
|
||||||
|
|
||||||
{
|
{
|
||||||
"_id": "bad87fee1348bd9aed108826",
|
"id": "bad87fee1348bd9aed108826",
|
||||||
"name": "Waypoint: Target a Specific Child of an Element Using jQuery",
|
"name": "Waypoint: Target a Specific Child of an Element Using jQuery",
|
||||||
"difficulty": 0.084,
|
"difficulty": 0.084,
|
||||||
"description": [
|
"description": [
|
||||||
@ -218,7 +218,7 @@
|
|||||||
},
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
"_id": "bad87fee1348bd9aed008826",
|
"id": "bad87fee1348bd9aed008826",
|
||||||
"name": "Waypoint: Target Even Numbered Elements Using jQuery",
|
"name": "Waypoint: Target Even Numbered Elements Using jQuery",
|
||||||
"difficulty": 0.085,
|
"difficulty": 0.085,
|
||||||
"description": [
|
"description": [
|
||||||
@ -234,7 +234,7 @@
|
|||||||
},
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
"_id": "bad87fee1348bd9aecc08826",
|
"id": "bad87fee1348bd9aecc08826",
|
||||||
"name": "Waypoint: Read Data from an Element Using jQuery",
|
"name": "Waypoint: Read Data from an Element Using jQuery",
|
||||||
"difficulty": 0.086,
|
"difficulty": 0.086,
|
||||||
"description": [
|
"description": [
|
||||||
@ -250,7 +250,7 @@
|
|||||||
},
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
"_id": "bad87fee1348bd9aebc08826",
|
"id": "bad87fee1348bd9aebc08826",
|
||||||
"name": "Waypoint: Get Data from an URL Using jQuery",
|
"name": "Waypoint: Get Data from an URL Using jQuery",
|
||||||
"difficulty": 0.087,
|
"difficulty": 0.087,
|
||||||
"description": [
|
"description": [
|
||||||
@ -266,7 +266,7 @@
|
|||||||
},
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
"_id": "bad87fee1348bd9ae9c08826",
|
"id": "bad87fee1348bd9ae9c08826",
|
||||||
"name": "Waypoint: Loop through JSON Data Using jQuery",
|
"name": "Waypoint: Loop through JSON Data Using jQuery",
|
||||||
"difficulty": 0.089,
|
"difficulty": 0.089,
|
||||||
"description": [
|
"description": [
|
||||||
@ -282,7 +282,7 @@
|
|||||||
},
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
"_id": "bad87fee1348bd9ae8c08826",
|
"id": "bad87fee1348bd9ae8c08826",
|
||||||
"name": "Waypoint: Setup Click Events Using jQuery",
|
"name": "Waypoint: Setup Click Events Using jQuery",
|
||||||
"difficulty": 0.089,
|
"difficulty": 0.089,
|
||||||
"description": [
|
"description": [
|
||||||
@ -297,7 +297,7 @@
|
|||||||
"challengeType": 0
|
"challengeType": 0
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bad87fee1348bd9aede08826",
|
"id": "bad87fee1348bd9aede08826",
|
||||||
"name": "Waypoint: Use Hex Codes for Precise Colors",
|
"name": "Waypoint: Use Hex Codes for Precise Colors",
|
||||||
"difficulty": 0.071,
|
"difficulty": 0.071,
|
||||||
"description": [
|
"description": [
|
||||||
@ -312,7 +312,7 @@
|
|||||||
"challengeType": 0
|
"challengeType": 0
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"_id": "bad87fee1348bd9aedd08826",
|
"id": "bad87fee1348bd9aedd08826",
|
||||||
"name": "Waypoint: Use Shortened Hex Codes for Colors",
|
"name": "Waypoint: Use Shortened Hex Codes for Colors",
|
||||||
"difficulty": 0.071,
|
"difficulty": 0.071,
|
||||||
"description": [
|
"description": [
|
||||||
|
@ -10,10 +10,10 @@ var User = require('../models/User.js'),
|
|||||||
mongoose.connect(secrets.db);
|
mongoose.connect(secrets.db);
|
||||||
|
|
||||||
var ziplineIds = ziplines.challenges.map(function(elem) {
|
var ziplineIds = ziplines.challenges.map(function(elem) {
|
||||||
return elem._id;
|
return elem.id;
|
||||||
});
|
});
|
||||||
var basejumpIds = basejumps.challenges.map(function(elem) {
|
var basejumpIds = basejumps.challenges.map(function(elem) {
|
||||||
return elem._id;
|
return elem.id;
|
||||||
});
|
});
|
||||||
var ziplineAndBaseJumpIds = R.concat(ziplineIds, basejumpIds);
|
var ziplineAndBaseJumpIds = R.concat(ziplineIds, basejumpIds);
|
||||||
|
|
||||||
@ -81,14 +81,14 @@ function userModelMigration(cb) {
|
|||||||
newChallenges.forEach(function (challenge) {
|
newChallenges.forEach(function (challenge) {
|
||||||
if (oldChallenges.indexOf(challenge.oldNumber) !== -1 && challenge.newId) {
|
if (oldChallenges.indexOf(challenge.oldNumber) !== -1 && challenge.newId) {
|
||||||
user.completedCoursewares.push({
|
user.completedCoursewares.push({
|
||||||
_id: challenge.newId,
|
id: challenge.newId,
|
||||||
completedDate: user.challengesHash[challenge.oldNumber] * 1000
|
completedDate: user.challengesHash[challenge.oldNumber] * 1000
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
user.completedCoursewares.forEach(function (course) {
|
user.completedCoursewares.forEach(function (course) {
|
||||||
var indexOfCourse = user.uncompletedCoursewares.indexOf(course._id) !== -1;
|
var indexOfCourse = user.uncompletedCoursewares.indexOf(course.id) !== -1;
|
||||||
if (indexOfCourse !== -1) {
|
if (indexOfCourse !== -1) {
|
||||||
user.uncompletedCoursewares.splice(indexOfCourse, 1);
|
user.uncompletedCoursewares.splice(indexOfCourse, 1);
|
||||||
}
|
}
|
||||||
@ -102,9 +102,9 @@ function userModelMigration(cb) {
|
|||||||
*/
|
*/
|
||||||
user.needsMigration = false;
|
user.needsMigration = false;
|
||||||
user.completedChallenges = user.completedChallenges.map(function(elem) {
|
user.completedChallenges = user.completedChallenges.map(function(elem) {
|
||||||
if (ziplineAndBaseJumpIds.indexOf(elem._id) > 0) {
|
if (ziplineAndBaseJumpIds.indexOf(elem.id) > 0) {
|
||||||
return ({
|
return ({
|
||||||
_id: elem._id,
|
id: elem.id,
|
||||||
name: elem.name,
|
name: elem.name,
|
||||||
completedWith: elem.completedWith,
|
completedWith: elem.completedWith,
|
||||||
completedDate: elem.completedDate,
|
completedDate: elem.completedDate,
|
||||||
|
@ -82,7 +82,7 @@ module.exports = function(app) {
|
|||||||
return res.redirect('../challenges/learn-how-free-code-camp-works');
|
return res.redirect('../challenges/learn-how-free-code-camp-works');
|
||||||
}
|
}
|
||||||
var completed = req.user.completedChallenges.map(function (elem) {
|
var completed = req.user.completedChallenges.map(function (elem) {
|
||||||
return elem._id;
|
return elem.id;
|
||||||
});
|
});
|
||||||
|
|
||||||
req.user.uncompletedChallenges = utils.allChallengeIds()
|
req.user.uncompletedChallenges = utils.allChallengeIds()
|
||||||
@ -136,7 +136,7 @@ module.exports = function(app) {
|
|||||||
return res.redirect('../challenges/learn-how-free-code-camp-works');
|
return res.redirect('../challenges/learn-how-free-code-camp-works');
|
||||||
}
|
}
|
||||||
var completed = req.user.completedChallenges.map(function (elem) {
|
var completed = req.user.completedChallenges.map(function (elem) {
|
||||||
return elem._id;
|
return elem.id;
|
||||||
});
|
});
|
||||||
|
|
||||||
req.user.uncompletedChallenges = utils.allChallengeIds()
|
req.user.uncompletedChallenges = utils.allChallengeIds()
|
||||||
@ -203,13 +203,13 @@ module.exports = function(app) {
|
|||||||
return res.redirect('../challenges/' + dashedNameFull);
|
return res.redirect('../challenges/' + dashedNameFull);
|
||||||
} else if (req.user) {
|
} else if (req.user) {
|
||||||
req.user.currentChallenge = {
|
req.user.currentChallenge = {
|
||||||
challengeId: challenge._id,
|
challengeId: challenge.id,
|
||||||
challengeName: challenge.name,
|
challengeName: challenge.name,
|
||||||
challengeBlock: R.head(R.flatten(Object.keys(challengeMapWithIds).
|
challengeBlock: R.head(R.flatten(Object.keys(challengeMapWithIds).
|
||||||
map(function (key) {
|
map(function (key) {
|
||||||
return challengeMapWithIds[key]
|
return challengeMapWithIds[key]
|
||||||
.filter(function (elem) {
|
.filter(function (elem) {
|
||||||
return String(elem) === String(challenge._id);
|
return String(elem) === String(challenge.id);
|
||||||
}).map(function () {
|
}).map(function () {
|
||||||
return key;
|
return key;
|
||||||
});
|
});
|
||||||
@ -231,7 +231,7 @@ module.exports = function(app) {
|
|||||||
verb: utils.randomVerb(),
|
verb: utils.randomVerb(),
|
||||||
phrase: utils.randomPhrase(),
|
phrase: utils.randomPhrase(),
|
||||||
compliment: utils.randomCompliment(),
|
compliment: utils.randomCompliment(),
|
||||||
challengeId: challenge._id,
|
challengeId: challenge.id,
|
||||||
environment: utils.whichEnvironment(),
|
environment: utils.whichEnvironment(),
|
||||||
challengeType: challenge.challengeType
|
challengeType: challenge.challengeType
|
||||||
});
|
});
|
||||||
@ -249,7 +249,7 @@ module.exports = function(app) {
|
|||||||
verb: utils.randomVerb(),
|
verb: utils.randomVerb(),
|
||||||
phrase: utils.randomPhrase(),
|
phrase: utils.randomPhrase(),
|
||||||
compliment: utils.randomCompliment(),
|
compliment: utils.randomCompliment(),
|
||||||
challengeId: challenge._id,
|
challengeId: challenge.id,
|
||||||
challengeType: challenge.challengeType
|
challengeType: challenge.challengeType
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
@ -265,7 +265,7 @@ module.exports = function(app) {
|
|||||||
verb: utils.randomVerb(),
|
verb: utils.randomVerb(),
|
||||||
phrase: utils.randomPhrase(),
|
phrase: utils.randomPhrase(),
|
||||||
compliment: utils.randomCompliment(),
|
compliment: utils.randomCompliment(),
|
||||||
challengeId: challenge._id,
|
challengeId: challenge.id,
|
||||||
challengeType: challenge.challengeType
|
challengeType: challenge.challengeType
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
@ -280,7 +280,7 @@ module.exports = function(app) {
|
|||||||
verb: utils.randomVerb(),
|
verb: utils.randomVerb(),
|
||||||
phrase: utils.randomPhrase(),
|
phrase: utils.randomPhrase(),
|
||||||
compliment: utils.randomCompliment(),
|
compliment: utils.randomCompliment(),
|
||||||
challengeId: challenge._id,
|
challengeId: challenge.id,
|
||||||
challengeType: challenge.challengeType
|
challengeType: challenge.challengeType
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
@ -295,7 +295,7 @@ module.exports = function(app) {
|
|||||||
verb: utils.randomVerb(),
|
verb: utils.randomVerb(),
|
||||||
phrase: utils.randomPhrase(),
|
phrase: utils.randomPhrase(),
|
||||||
compliment: utils.randomCompliment(),
|
compliment: utils.randomCompliment(),
|
||||||
challengeId: challenge._id,
|
challengeId: challenge.id,
|
||||||
challengeType: challenge.challengeType
|
challengeType: challenge.challengeType
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
@ -315,7 +315,7 @@ module.exports = function(app) {
|
|||||||
phrase: utils.randomPhrase(),
|
phrase: utils.randomPhrase(),
|
||||||
compliment: utils.randomCompliment(),
|
compliment: utils.randomCompliment(),
|
||||||
bonfires: challenge,
|
bonfires: challenge,
|
||||||
challengeId: challenge._id,
|
challengeId: challenge.id,
|
||||||
MDNkeys: challenge.MDNlinks,
|
MDNkeys: challenge.MDNlinks,
|
||||||
MDNlinks: getMDNlinks(challenge.MDNlinks),
|
MDNlinks: getMDNlinks(challenge.MDNlinks),
|
||||||
challengeType: challenge.challengeType
|
challengeType: challenge.challengeType
|
||||||
@ -365,18 +365,18 @@ module.exports = function(app) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
pairedWith.completedChallenges.push({
|
pairedWith.completedChallenges.push({
|
||||||
_id: challengeId,
|
id: challengeId,
|
||||||
name: challengeName,
|
name: challengeName,
|
||||||
completedWith: req.user._id,
|
completedWith: req.user.id,
|
||||||
completedDate: isCompletedDate,
|
completedDate: isCompletedDate,
|
||||||
solution: isSolution,
|
solution: isSolution,
|
||||||
challengeType: 5
|
challengeType: 5
|
||||||
});
|
});
|
||||||
|
|
||||||
req.user.completedChallenges.push({
|
req.user.completedChallenges.push({
|
||||||
_id: challengeId,
|
id: challengeId,
|
||||||
name: challengeName,
|
name: challengeName,
|
||||||
completedWith: pairedWith._id,
|
completedWith: pairedWith.id,
|
||||||
completedDate: isCompletedDate,
|
completedDate: isCompletedDate,
|
||||||
solution: isSolution,
|
solution: isSolution,
|
||||||
challengeType: 5
|
challengeType: 5
|
||||||
@ -384,7 +384,7 @@ module.exports = function(app) {
|
|||||||
}
|
}
|
||||||
// User said they paired, but pair wasn't found
|
// User said they paired, but pair wasn't found
|
||||||
req.user.completedChallenges.push({
|
req.user.completedChallenges.push({
|
||||||
_id: challengeId,
|
id: challengeId,
|
||||||
name: challengeName,
|
name: challengeName,
|
||||||
completedWith: null,
|
completedWith: null,
|
||||||
completedDate: isCompletedDate,
|
completedDate: isCompletedDate,
|
||||||
@ -411,7 +411,7 @@ module.exports = function(app) {
|
|||||||
});
|
});
|
||||||
} else {
|
} else {
|
||||||
req.user.completedChallenges.push({
|
req.user.completedChallenges.push({
|
||||||
_id: challengeId,
|
id: challengeId,
|
||||||
name: challengeName,
|
name: challengeName,
|
||||||
completedWith: null,
|
completedWith: null,
|
||||||
completedDate: isCompletedDate,
|
completedDate: isCompletedDate,
|
||||||
@ -439,7 +439,7 @@ module.exports = function(app) {
|
|||||||
var challengeId = req.body.challengeInfo.challengeId;
|
var challengeId = req.body.challengeInfo.challengeId;
|
||||||
|
|
||||||
req.user.completedChallenges.push({
|
req.user.completedChallenges.push({
|
||||||
_id: challengeId,
|
id: challengeId,
|
||||||
completedDate: isCompletedDate,
|
completedDate: isCompletedDate,
|
||||||
name: req.body.challengeInfo.challengeName,
|
name: req.body.challengeInfo.challengeName,
|
||||||
solution: null,
|
solution: null,
|
||||||
@ -495,9 +495,9 @@ module.exports = function(app) {
|
|||||||
var pairedWith = pairedWithFromMongo.pop();
|
var pairedWith = pairedWithFromMongo.pop();
|
||||||
|
|
||||||
req.user.completedChallenges.push({
|
req.user.completedChallenges.push({
|
||||||
_id: challengeId,
|
id: challengeId,
|
||||||
name: req.body.challengeInfo.challengeName,
|
name: req.body.challengeInfo.challengeName,
|
||||||
completedWith: pairedWith._id,
|
completedWith: pairedWith.id,
|
||||||
completedDate: isCompletedDate,
|
completedDate: isCompletedDate,
|
||||||
solution: solutionLink,
|
solution: solutionLink,
|
||||||
githubLink: githubLink,
|
githubLink: githubLink,
|
||||||
@ -508,7 +508,7 @@ module.exports = function(app) {
|
|||||||
req.user.save(function (err, user) {
|
req.user.save(function (err, user) {
|
||||||
if (err) { return next(err); }
|
if (err) { return next(err); }
|
||||||
|
|
||||||
if (req.user._id.toString() === pairedWith._id.toString()) {
|
if (req.user.id.toString() === pairedWith.id.toString()) {
|
||||||
return res.sendStatus(200);
|
return res.sendStatus(200);
|
||||||
}
|
}
|
||||||
index = pairedWith.uncompletedChallenges.indexOf(challengeId);
|
index = pairedWith.uncompletedChallenges.indexOf(challengeId);
|
||||||
@ -519,9 +519,9 @@ module.exports = function(app) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
pairedWith.completedChallenges.push({
|
pairedWith.completedChallenges.push({
|
||||||
_id: challengeId,
|
id: challengeId,
|
||||||
name: req.body.challengeInfo.coursewareName,
|
name: req.body.challengeInfo.coursewareName,
|
||||||
completedWith: req.user._id,
|
completedWith: req.user.id,
|
||||||
completedDate: isCompletedDate,
|
completedDate: isCompletedDate,
|
||||||
solution: solutionLink,
|
solution: solutionLink,
|
||||||
githubLink: githubLink,
|
githubLink: githubLink,
|
||||||
@ -541,7 +541,7 @@ module.exports = function(app) {
|
|||||||
} else {
|
} else {
|
||||||
|
|
||||||
req.user.completedChallenges.push({
|
req.user.completedChallenges.push({
|
||||||
_id: challengeId,
|
id: challengeId,
|
||||||
name: req.body.challengeInfo.challengeName,
|
name: req.body.challengeInfo.challengeName,
|
||||||
completedWith: null,
|
completedWith: null,
|
||||||
completedDate: isCompletedDate,
|
completedDate: isCompletedDate,
|
||||||
|
@ -29,7 +29,7 @@ module.exports = function(app) {
|
|||||||
|
|
||||||
var completedChallengeList = noDuplicatedChallenges
|
var completedChallengeList = noDuplicatedChallenges
|
||||||
.map(function(challenge) {
|
.map(function(challenge) {
|
||||||
return challenge._id;
|
return challenge.id;
|
||||||
});
|
});
|
||||||
var challengeList = utils.
|
var challengeList = utils.
|
||||||
getChallengeMapForDisplay(completedChallengeList);
|
getChallengeMapForDisplay(completedChallengeList);
|
||||||
@ -37,7 +37,7 @@ module.exports = function(app) {
|
|||||||
Object.keys(challengeList).forEach(function(key) {
|
Object.keys(challengeList).forEach(function(key) {
|
||||||
challengeList[key].completed = challengeList[key]
|
challengeList[key].completed = challengeList[key]
|
||||||
.challenges.filter(function(elem) {
|
.challenges.filter(function(elem) {
|
||||||
return completedChallengeList.indexOf(elem._id) > -1;
|
return completedChallengeList.indexOf(elem.id) > -1;
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
|
@ -57,7 +57,7 @@ module.exports = function(app) {
|
|||||||
}
|
}
|
||||||
res.render('field-guide/show', {
|
res.render('field-guide/show', {
|
||||||
title: fieldGuide.name,
|
title: fieldGuide.name,
|
||||||
fieldGuideId: fieldGuide._id,
|
fieldGuideId: fieldGuide.id,
|
||||||
description: fieldGuide.description.join('')
|
description: fieldGuide.description.join('')
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
@ -83,7 +83,7 @@ module.exports = function(app) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
var displayedFieldGuides =
|
var displayedFieldGuides =
|
||||||
FieldGuide.find({'_id': req.user.uncompletedFieldGuides[0]});
|
FieldGuide.find({'id': req.user.uncompletedFieldGuides[0]});
|
||||||
|
|
||||||
displayedFieldGuides.exec(function(err, fieldGuide) {
|
displayedFieldGuides.exec(function(err, fieldGuide) {
|
||||||
if (err) { return next(err); }
|
if (err) { return next(err); }
|
||||||
|
@ -184,7 +184,7 @@ module.exports = function(app) {
|
|||||||
rank: story.upVotes.length,
|
rank: story.upVotes.length,
|
||||||
upVotes: story.upVotes,
|
upVotes: story.upVotes,
|
||||||
comments: story.comments,
|
comments: story.comments,
|
||||||
id: story._id,
|
id: story.id,
|
||||||
timeAgo: moment(story.timePosted).fromNow(),
|
timeAgo: moment(story.timePosted).fromNow(),
|
||||||
image: story.image,
|
image: story.image,
|
||||||
page: 'show',
|
page: 'show',
|
||||||
@ -238,7 +238,7 @@ module.exports = function(app) {
|
|||||||
|
|
||||||
function upvote(req, res, next) {
|
function upvote(req, res, next) {
|
||||||
var data = req.body.data;
|
var data = req.body.data;
|
||||||
Story.find({'_id': data.id}, function(err, story) {
|
Story.find({'id': data.id}, function(err, story) {
|
||||||
if (err) {
|
if (err) {
|
||||||
return next(err);
|
return next(err);
|
||||||
}
|
}
|
||||||
@ -246,7 +246,7 @@ module.exports = function(app) {
|
|||||||
story.rank++;
|
story.rank++;
|
||||||
story.upVotes.push(
|
story.upVotes.push(
|
||||||
{
|
{
|
||||||
upVotedBy: req.user._id,
|
upVotedBy: req.user.id,
|
||||||
upVotedByUsername: req.user.username
|
upVotedByUsername: req.user.username
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
@ -280,7 +280,7 @@ module.exports = function(app) {
|
|||||||
function comments(req, res, next) {
|
function comments(req, res, next) {
|
||||||
var data = req.params.id;
|
var data = req.params.id;
|
||||||
Comment.find(
|
Comment.find(
|
||||||
{ where: {'_id': data } },
|
{ where: {'id': data } },
|
||||||
function(err, comment) {
|
function(err, comment) {
|
||||||
if (err) {
|
if (err) {
|
||||||
return next(err);
|
return next(err);
|
||||||
@ -396,12 +396,12 @@ module.exports = function(app) {
|
|||||||
}).replace(/"/g, '"'),
|
}).replace(/"/g, '"'),
|
||||||
rank: 1,
|
rank: 1,
|
||||||
upVotes: [({
|
upVotes: [({
|
||||||
upVotedBy: req.user._id,
|
upVotedBy: req.user.id,
|
||||||
upVotedByUsername: req.user.username
|
upVotedByUsername: req.user.username
|
||||||
})],
|
})],
|
||||||
author: {
|
author: {
|
||||||
picture: req.user.picture,
|
picture: req.user.picture,
|
||||||
userId: req.user._id,
|
userId: req.user.id,
|
||||||
username: req.user.username,
|
username: req.user.username,
|
||||||
email: req.user.email
|
email: req.user.email
|
||||||
},
|
},
|
||||||
@ -453,7 +453,7 @@ module.exports = function(app) {
|
|||||||
upvotes: 0,
|
upvotes: 0,
|
||||||
author: {
|
author: {
|
||||||
picture: req.user.picture,
|
picture: req.user.picture,
|
||||||
userId: req.user._id,
|
userId: req.user.id,
|
||||||
username: req.user.username,
|
username: req.user.username,
|
||||||
email: req.user.email
|
email: req.user.email
|
||||||
},
|
},
|
||||||
@ -495,7 +495,7 @@ module.exports = function(app) {
|
|||||||
originalStoryAuthorEmail: data.originalStoryAuthorEmail,
|
originalStoryAuthorEmail: data.originalStoryAuthorEmail,
|
||||||
author: {
|
author: {
|
||||||
picture: req.user.picture,
|
picture: req.user.picture,
|
||||||
userId: req.user._id,
|
userId: req.user.id,
|
||||||
username: req.user.username,
|
username: req.user.username,
|
||||||
email: req.user.email
|
email: req.user.email
|
||||||
},
|
},
|
||||||
@ -514,7 +514,7 @@ module.exports = function(app) {
|
|||||||
}
|
}
|
||||||
cmt = cmt.pop();
|
cmt = cmt.pop();
|
||||||
|
|
||||||
if (!req.user && cmt.author.userId !== req.user._id) {
|
if (!req.user && cmt.author.userId !== req.user.id) {
|
||||||
return next(new Error('Not authorized'));
|
return next(new Error('Not authorized'));
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -558,7 +558,7 @@ module.exports = function(app) {
|
|||||||
}
|
}
|
||||||
associatedContext = associatedContext.pop();
|
associatedContext = associatedContext.pop();
|
||||||
if (associatedContext) {
|
if (associatedContext) {
|
||||||
associatedContext.comments.push(data._id);
|
associatedContext.comments.push(data.id);
|
||||||
associatedContext.save(function (err) {
|
associatedContext.save(function (err) {
|
||||||
if (err) {
|
if (err) {
|
||||||
return next(err);
|
return next(err);
|
||||||
|
@ -527,7 +527,7 @@ module.exports = function(app) {
|
|||||||
return next(err);
|
return next(err);
|
||||||
}
|
}
|
||||||
updateUserStoryPictures(
|
updateUserStoryPictures(
|
||||||
user._id.toString(),
|
user.id.toString(),
|
||||||
user.picture,
|
user.picture,
|
||||||
user.username,
|
user.username,
|
||||||
function(err) {
|
function(err) {
|
||||||
|
@ -78,7 +78,7 @@ module.exports = {
|
|||||||
challengeMapWithIds = {};
|
challengeMapWithIds = {};
|
||||||
Object.keys(challengeMap).forEach(function (key) {
|
Object.keys(challengeMap).forEach(function (key) {
|
||||||
var onlyIds = challengeMap[key].challenges.map(function (elem) {
|
var onlyIds = challengeMap[key].challenges.map(function (elem) {
|
||||||
return elem._id;
|
return elem.id;
|
||||||
});
|
});
|
||||||
challengeMapWithIds[key] = onlyIds;
|
challengeMapWithIds[key] = onlyIds;
|
||||||
});
|
});
|
||||||
@ -147,7 +147,7 @@ module.exports = {
|
|||||||
return allFieldGuideIds;
|
return allFieldGuideIds;
|
||||||
} else {
|
} else {
|
||||||
allFieldGuideIds = fieldGuides.map(function (elem) {
|
allFieldGuideIds = fieldGuides.map(function (elem) {
|
||||||
return elem._id;
|
return elem.id;
|
||||||
});
|
});
|
||||||
return allFieldGuideIds;
|
return allFieldGuideIds;
|
||||||
}
|
}
|
||||||
@ -161,7 +161,7 @@ module.exports = {
|
|||||||
return {
|
return {
|
||||||
name: elem.name,
|
name: elem.name,
|
||||||
dashedName: elem.dashedName,
|
dashedName: elem.dashedName,
|
||||||
id: elem._id
|
id: elem.id
|
||||||
};
|
};
|
||||||
});
|
});
|
||||||
return allFieldGuideNames;
|
return allFieldGuideNames;
|
||||||
|
@ -20,7 +20,7 @@ exports.userMigration = function userMigration(req, res, next) {
|
|||||||
req.user.completedBonfires.map(function (bonfire) {
|
req.user.completedBonfires.map(function (bonfire) {
|
||||||
return ({
|
return ({
|
||||||
completedDate: bonfire.completedDate,
|
completedDate: bonfire.completedDate,
|
||||||
_id: bonfire._id,
|
id: bonfire.id,
|
||||||
name: bonfire.name,
|
name: bonfire.name,
|
||||||
completedWith: bonfire.completedWith,
|
completedWith: bonfire.completedWith,
|
||||||
solution: bonfire.solution,
|
solution: bonfire.solution,
|
||||||
|
@ -82,7 +82,7 @@ block content
|
|||||||
.col-xs-12
|
.col-xs-12
|
||||||
ol
|
ol
|
||||||
for challenge in challengeBlock.challenges
|
for challenge in challengeBlock.challenges
|
||||||
if completedChallengeList.indexOf(challenge._id) > -1
|
if completedChallengeList.indexOf(challenge.id) > -1
|
||||||
.row
|
.row
|
||||||
.hidden-xs.col-sm-3.col-md-2.text-primary.ion-checkmark-circled.padded-ionic-icon.text-center.large-p.negative-10
|
.hidden-xs.col-sm-3.col-md-2.text-primary.ion-checkmark-circled.padded-ionic-icon.text-center.large-p.negative-10
|
||||||
.col-xs-12.col-sm-9.col-md-10
|
.col-xs-12.col-sm-9.col-md-10
|
||||||
|
@ -25,7 +25,7 @@
|
|||||||
// todo
|
// todo
|
||||||
if (commentDetails.author.username === DF105CFA89562196E702912B3818C6A5B46E80D262442FDF29976621E5AF0D23) {
|
if (commentDetails.author.username === DF105CFA89562196E702912B3818C6A5B46E80D262442FDF29976621E5AF0D23) {
|
||||||
if ((Date.now() - commentDetails.commentOn) < 600000){
|
if ((Date.now() - commentDetails.commentOn) < 600000){
|
||||||
editButton = "<a class='btn btn-no-shadow btn-primary btn-xs btn-primary-ghost edit-btn' id='" + commentDetails._id + "'>Edit</a> · ";
|
editButton = "<a class='btn btn-no-shadow btn-primary btn-xs btn-primary-ghost edit-btn' id='" + commentDetails.id + "'>Edit</a> · ";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
$(div)
|
$(div)
|
||||||
@ -36,12 +36,12 @@
|
|||||||
'<img class="media-object img-news" src="' + commentDetails.author.picture +'" alt="' + commentDetails.author.username + '">' +
|
'<img class="media-object img-news" src="' + commentDetails.author.picture +'" alt="' + commentDetails.author.username + '">' +
|
||||||
'</a>' +
|
'</a>' +
|
||||||
'</div>' +
|
'</div>' +
|
||||||
'<div class="media-body comment_' + commentDetails._id + '">' +
|
'<div class="media-body comment_' + commentDetails.id + '">' +
|
||||||
'<div class="media-body-wrapper">' +
|
'<div class="media-body-wrapper">' +
|
||||||
'<p>' + commentDetails.body + '</p>' +
|
'<p>' + commentDetails.body + '</p>' +
|
||||||
'<h6>' +
|
'<h6>' +
|
||||||
'<div class="clearfix comment-a-comment negative-15">' +
|
'<div class="clearfix comment-a-comment negative-15">' +
|
||||||
"<a class='btn btn-no-shadow btn-primary btn-xs btn-primary-ghost' id='" + commentDetails._id + "'>Reply</a> · " +
|
"<a class='btn btn-no-shadow btn-primary btn-xs btn-primary-ghost' id='" + commentDetails.id + "'>Reply</a> · " +
|
||||||
editButton +
|
editButton +
|
||||||
"commented " + moment(commentDetails.commentOn).fromNow() + " by " +
|
"commented " + moment(commentDetails.commentOn).fromNow() + " by " +
|
||||||
"<a href='/" + commentDetails.author.username + "'>@" + commentDetails.author.username + "</a>" +
|
"<a href='/" + commentDetails.author.username + "'>@" + commentDetails.author.username + "</a>" +
|
||||||
@ -56,7 +56,7 @@
|
|||||||
|
|
||||||
sentinel += commentDetails.comments.length;
|
sentinel += commentDetails.comments.length;
|
||||||
|
|
||||||
renderComments(commentDetails.comments, '.comment_' + commentDetails._id, ++level);
|
renderComments(commentDetails.comments, '.comment_' + commentDetails.id, ++level);
|
||||||
|
|
||||||
},
|
},
|
||||||
complete: function () {
|
complete: function () {
|
||||||
|
@ -3,7 +3,7 @@ block content
|
|||||||
if (user)
|
if (user)
|
||||||
script.
|
script.
|
||||||
var isLoggedIn = true;
|
var isLoggedIn = true;
|
||||||
var B3BA669EC5C1DD70FB478221E067A7E1B686929C569F5E73561B69C8F42129B = !{JSON.stringify(user._id)};
|
var B3BA669EC5C1DD70FB478221E067A7E1B686929C569F5E73561B69C8F42129B = !{JSON.stringify(user.id)};
|
||||||
var DF105CFA89562196E702912B3818C6A5B46E80D262442FDF29976621E5AF0D23 = !{JSON.stringify(user.username)};
|
var DF105CFA89562196E702912B3818C6A5B46E80D262442FDF29976621E5AF0D23 = !{JSON.stringify(user.username)};
|
||||||
else
|
else
|
||||||
script.
|
script.
|
||||||
|
Reference in New Issue
Block a user