Merge branch 'staging' of github.com:FreeCodeCamp/freecodecamp into staging

This commit is contained in:
Quincy Larson
2015-08-05 11:58:09 -07:00
4 changed files with 22 additions and 36 deletions

View File

@ -16,7 +16,7 @@ With respect to the computer software contained in this repository:
# Curricular Content
With respect to the curricular content contained in this repository, as in the `./seed/challenges` and subdirectory and our wiki:
With respect to the curricular content contained in this repository, as in the `./seed/challenges` and subdirectories and our wiki:
> By exercising the Licensed Rights (defined below), You accept and agree to be bound by the terms and conditions of this Creative Commons Attribution-ShareAlike 4.0 International Public License ("Public License"). To the extent this Public License may be interpreted as a contract, You are granted the Licensed Rights in consideration of Your acceptance of these terms and conditions, and the Licensor grants You such rights in consideration of benefits the Licensor receives from making the Licensed Material available under these terms and conditions.
>

View File

@ -1152,6 +1152,10 @@ hr {
shape-rendering: crispEdges;
}
#submitButton {
font: normal normal normal 14px/1 FontAwesome !important;
}
//uncomment this to see the dimensions of all elements outlined in red
//* {
// border-color: red;

View File

@ -259,7 +259,7 @@
"challengeSeed": [
"var firstName = \"Madeline\";",
"",
"var thirdToLastLetterOfFirstName = firstName[firstName.length - 2];",
"var thirdToLastLetterOfFirstName = firstName[firstName.length - 3];",
"",
"var lastName = \"Chen\";",
"",
@ -601,7 +601,7 @@
],
"challengeSeed": [
"var myArray = ['John', 23, ['dog', 3]];",
"var removed = myArray;//This should be ['John'] and myArray should now be ['John', 23]",
"var removed = myArray;//This should be ['John'] and myArray should now be [23, ['dog', 3]]",
"",
"",
"(function(y, z){return('myArray = ' + JSON.stringify(y) + ' & removed = ' + JSON.stringify(z));})(myArray, removed);"
@ -725,9 +725,9 @@
"",
"Now that we have an objects we need to know how to add and remove properties from it",
"We add properties to objects like this",
"<code>myObject['myProperty'] = \"myValue\";</code>",
"<code>myObject.myProperty = \"myValue\";</code>",
"They can also be deleted like this",
"<code>delete(myObject[\"myProperty\"]);</code>",
"<code>delete(myObject.myProperty);</code>",
"Let's add the property bark",
""
],
@ -752,7 +752,7 @@
" \"friends\": []",
"};",
"",
"//Let's add the property age to myDog",
"//Let's add the property bark to myDog",
"",
"",
"//Now delete the property tails",
@ -1027,7 +1027,7 @@
],
"tests":[
"assert(test === 2, 'Your RegEx should have found two numbers in the testString');",
"assert(editorValue.match(/\\/\\\\d\\+\\//gi), 'You should be using the following expression /\\d+/gi to find the numbers in the testString');"
"assert(editor.getValue().match(/\\/\\\\d\\+\\//gi), 'You should be using the following expression /\\d+/gi to find the numbers in the testString');"
],
"challengeSeed":[
"var test = (function(){",
@ -1058,7 +1058,7 @@
],
"tests":[
"assert(test === 7, 'Your RegEx should have found seven spaces in the testString');",
"assert(editorValue.match(/\\/\\\\s\\+\\//gi), 'You should be using the following expression /\\s+/gi to find the spaces in the testString');"
"assert(editor.getValue().match(/\\/\\\\s\\+\\//gi), 'You should be using the following expression /\\s+/gi to find the spaces in the testString');"
],
"challengeSeed":[
"var test = (function(){",
@ -1087,7 +1087,7 @@
],
"tests":[
"assert(test === 36, 'Your RegEx should have found seven spaces in the testString');",
"assert(editorValue.match(/\\/\\\\S\\/gi/gi), 'You should be using the following expression /\\S+/gi to find the spaces in the testString');"
"assert(editor.getValue().match(/\\/\\\\S\\/gi/gi), 'You should be using the following expression /\\S+/gi to find the spaces in the testString');"
],
"challengeSeed":[
"var test = (function(){",

View File

@ -38,13 +38,13 @@ function createConnection(URI) {
}
function createQuery(db, collection, options, batchSize) {
return Rx.Observable.create(function (observer) {
return Rx.Observable.create(function(observer) {
var cursor = db.collection(collection).find({}, options);
cursor.batchSize(batchSize || 20);
// Cursor.each will yield all doc from a batch in the same tick,
// or schedule getting next batch on nextTick
debug('opening cursor for %s', collection);
cursor.each(function (err, doc) {
cursor.each(function(err, doc) {
if (err) {
return observer.onError(err);
}
@ -55,7 +55,7 @@ function createQuery(db, collection, options, batchSize) {
observer.onNext(doc);
});
return Rx.Disposable.create(function () {
return Rx.Disposable.create(function() {
debug('closing cursor for %s', collection);
cursor.close();
});
@ -86,13 +86,13 @@ var users = dbObservable
.map(function(user) {
// flatten user
assign(user, user.portfolio, user.profile);
return user;
})
.map(function(user) {
if (user.username) {
return user;
}
user.username = 'fcc' + uuid.v4().slice(0, 8);
if (user.github) {
user.isGithubCool = true;
}
return user;
})
.shareReplay();
@ -122,7 +122,7 @@ var userIdentityCount = users
return {
provider: provider,
externalId: user[provider],
userId: user.id
userId: user._id || user.id
};
})
.filter(function(ident) {
@ -161,33 +161,15 @@ var storyCount = dbObservable
})
.count();
var commentCount = dbObservable
.flatMap(function(db) {
return createQuery(db, 'comments', {});
})
.bufferWithCount(20)
.withLatestFrom(dbObservable, function(comments, db) {
return {
comments: comments,
db: db
};
})
.flatMap(function(dats) {
return insertMany(dats.db, 'comment', dats.comments, { w: 1 });
})
.count();
Rx.Observable.combineLatest(
userIdentityCount,
userSavesCount,
storyCount,
commentCount,
function(userIdentCount, userCount, storyCount, commentCount) {
function(userIdentCount, userCount, storyCount) {
return {
userIdentCount: userIdentCount * 20,
userCount: userCount * 20,
storyCount: storyCount * 20,
commentCount: commentCount * 20
storyCount: storyCount * 20
};
})
.subscribe(