diff --git a/controllers/story.js b/controllers/story.js index 233f929b69..3a34c7b883 100755 --- a/controllers/story.js +++ b/controllers/story.js @@ -137,7 +137,9 @@ exports.returnIndividualStory = function(req, res, next) { } story = story.pop(); - var dashedNameFull = story.storyLink.toLowerCase().replace(/\s/g, '-'); + var dashedNameFull = story.storyLink.toLowerCase() + .replace(/\s+/g, ' ') + .replace(/\s/g, '-'); if (dashedNameFull !== dashedName) { return res.redirect('../news/' + dashedNameFull); } @@ -328,9 +330,6 @@ exports.storySubmission = function(req, res, next) { return next(new Error('Not authorized')); } var storyLink = data.headline - .replace(/\'/g, '') - .replace(/\"/g, '') - .replace(/,/g, '') .replace(/\s+/g, ' ') .replace(/[^a-z0-9\s]/gi, '') .toLowerCase() diff --git a/seed_data/challenges/basic-bonfires.json b/seed_data/challenges/basic-bonfires.json index e9a01a9a3d..907fc7af9b 100644 --- a/seed_data/challenges/basic-bonfires.json +++ b/seed_data/challenges/basic-bonfires.json @@ -349,10 +349,11 @@ "name": "Bonfire: Mutations", "difficulty": "1.12", "description": [ - "Return true if the string in the first element of the array contains the letters of the string in the second element of the array.", + "Return true if the string in the first element of the array contains all of the letters of the string in the second element of the array.", "For example, ['hello', 'Hello'], should return true because all of the letters in the second string are present in the first, ignoring case.", "The arguments ['hello', 'hey'] should return false because the string 'hello' does not contain a 'y'.", "Another example, ['Alien', 'line'], should return true because all of the letters in 'line' are present in 'Alien'.", + "Lastly, ['Mary', 'Aarmy'] should return false because 'Mary' is only 4 letters while 'Aarmy' is 5, so 'Mary' can't possibly contain 'Aarmy'", "Remember to use RSAP if you get stuck. Try to pair program. Write your own code." ], "challengeSeed": [ @@ -367,6 +368,7 @@ "expect(mutation(['hello', 'Hello'])).to.be.true;", "expect(mutation(['zyxwvutsrqponmlkjihgfedcba', 'qrstu'])).to.be.true;", "expect(mutation(['Mary', 'Army'])).to.be.true;", + "expect(mutation(['Mary', 'Aarmy'])).to.be.false;", "expect(mutation(['Alien', 'line'])).to.be.true;" ], "MDNlinks": ["Array.sort()"], diff --git a/seed_data/storyCleanup.js b/seed_data/storyCleanup.js index 2598526c8a..c216e67293 100644 --- a/seed_data/storyCleanup.js +++ b/seed_data/storyCleanup.js @@ -18,8 +18,8 @@ function storyLinkCleanup(cb) { console.log(i++); this.pause(); story.storyLink = story.storyLink. - replace(/[^a-z0-9\s]/gi, ''). replace(/\s+/g, ' '). + replace(/[^a-z0-9\s]/gi, ''). toLowerCase(). trim(); story.save(function (err) {