summaryrefslogtreecommitdiffstats
path: root/theme/javascript/core
diff options
context:
space:
mode:
authorAaron O'Mullan <aaron.omullan@gmail.com>2014-04-21 14:26:09 -0700
committerAaron O'Mullan <aaron.omullan@gmail.com>2014-04-21 14:26:09 -0700
commit4c90fdb7b27fdf6527b59097d489a9df0a929264 (patch)
treeb00f3196f58ed712dea40dd69a261fc43129a651 /theme/javascript/core
parentd1c1d7b75b6e4a304d031c4313cf54ae8aa3a11d (diff)
parent98c133df3c9077c1b06748c3206bea3ff011ed3a (diff)
downloadgitbook-4c90fdb7b27fdf6527b59097d489a9df0a929264.zip
gitbook-4c90fdb7b27fdf6527b59097d489a9df0a929264.tar.gz
gitbook-4c90fdb7b27fdf6527b59097d489a9df0a929264.tar.bz2
Merge pull request #123 from GitbookIO/feature/plugins
Fix #65: Plugins Architecture
Diffstat (limited to 'theme/javascript/core')
-rw-r--r--theme/javascript/core/events.js7
-rwxr-xr-xtheme/javascript/core/exercise.js6
-rwxr-xr-xtheme/javascript/core/navigation.js6
-rw-r--r--theme/javascript/core/quiz.js6
4 files changed, 16 insertions, 9 deletions
diff --git a/theme/javascript/core/events.js b/theme/javascript/core/events.js
new file mode 100644
index 0000000..855755f
--- /dev/null
+++ b/theme/javascript/core/events.js
@@ -0,0 +1,7 @@
+define([
+ "jQuery"
+], function($) {
+ var events = $({});
+
+ return events;
+}); \ No newline at end of file
diff --git a/theme/javascript/core/exercise.js b/theme/javascript/core/exercise.js
index e24ae0a..7dbe982 100755
--- a/theme/javascript/core/exercise.js
+++ b/theme/javascript/core/exercise.js
@@ -1,9 +1,9 @@
define([
"jQuery",
"utils/execute",
- "utils/analytic",
+ "core/events",
"core/state"
-], function($, execute, analytic, state){
+], function($, execute, events, state){
// Bind an exercise
var prepareExercise = function($exercise) {
var codeSolution = $exercise.find(".code-solution").text();
@@ -19,7 +19,7 @@ define([
$exercise.find(".action-submit").click(function(e) {
e.preventDefault();
- analytic.track("exercise.submit", {type: "code"});
+ events.trigger("exercise.submit", {type: "code"});
execute("javascript", editor.getValue(), codeValidation, codeContext, function(err, result) {
$exercise.toggleClass("return-error", err != null);
diff --git a/theme/javascript/core/navigation.js b/theme/javascript/core/navigation.js
index 1796fc1..8f8b0a6 100755
--- a/theme/javascript/core/navigation.js
+++ b/theme/javascript/core/navigation.js
@@ -1,12 +1,12 @@
define([
"jQuery",
- "utils/analytic",
+ "core/events",
"core/state",
"core/search",
"core/progress",
"core/exercise",
"core/quiz"
-], function($, analytic, state, search, progress, exercises, quiz) {
+], function($, events, state, search, progress, exercises, quiz) {
var prev, next;
var githubCountStars, githubCountWatch;
@@ -110,7 +110,7 @@ define([
}
// Send to mixpanel
- analytic.track("page.view");
+ events.trigger("page.change");
};
var handlePagination = function (e) {
diff --git a/theme/javascript/core/quiz.js b/theme/javascript/core/quiz.js
index 4e30fea..d34af48 100644
--- a/theme/javascript/core/quiz.js
+++ b/theme/javascript/core/quiz.js
@@ -1,9 +1,9 @@
define([
"jQuery",
"utils/execute",
- "utils/analytic",
+ "core/events",
"core/state"
-], function($, execute, analytic, state){
+], function($, execute, events, state){
// Bind an exercise
var prepareQuiz = function($quiz) {
@@ -14,7 +14,7 @@ define([
// Submit: test code
$quiz.find(".action-submit").click(function(e) {
e.preventDefault();
- analytic.track("exercise.submit", {type: "quiz"});
+ events.trigger("exercise.submit", {type: "quiz"});
$quiz.find("tr.alert-danger,li.alert-danger").removeClass("alert-danger");
$quiz.find(".alert-success,.alert-danger").addClass("hidden");