diff options
author | Aaron O'Mullan <aaron.omullan@gmail.com> | 2014-10-13 15:55:32 +0200 |
---|---|---|
committer | Aaron O'Mullan <aaron.omullan@gmail.com> | 2014-10-13 15:55:32 +0200 |
commit | c9ec911d0eab7296a808e12470abe90bf764cd6a (patch) | |
tree | 187c8af2fb58bb6a641f6c0639966dfefc1ada5b /lib/parse/is_exercise.js | |
parent | 32a64be407e05b6ce4275e6f3f9213e8f87f884a (diff) | |
parent | 84d7662fd8a2d1abfd0feb92f54064e5d9b9d072 (diff) | |
download | gitbook-c9ec911d0eab7296a808e12470abe90bf764cd6a.zip gitbook-c9ec911d0eab7296a808e12470abe90bf764cd6a.tar.gz gitbook-c9ec911d0eab7296a808e12470abe90bf764cd6a.tar.bz2 |
Merge pull request #472 from GitbookIO/fix/quizzes
Fix/quizzes
Diffstat (limited to 'lib/parse/is_exercise.js')
-rw-r--r-- | lib/parse/is_exercise.js | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/lib/parse/is_exercise.js b/lib/parse/is_exercise.js new file mode 100644 index 0000000..74ed753 --- /dev/null +++ b/lib/parse/is_exercise.js @@ -0,0 +1,17 @@ +var _ = require('lodash'); + +function isExercise(nodes) { + var codeType = { type: 'code' }; + + // Number of code nodes in section + var len = _.filter(nodes, codeType).length; + + return ( + // Got 3 or 4 code blocks + (len === 3 || len === 4) && + // Ensure all nodes are at the end + _.all(_.last(nodes, len), codeType) + ); +} + +module.exports = isExercise; |