summaryrefslogtreecommitdiffstats
path: root/theme/javascript
diff options
context:
space:
mode:
authorSamy Pessé <samypesse@gmail.com>2014-04-21 22:20:41 +0200
committerSamy Pessé <samypesse@gmail.com>2014-04-21 22:20:41 +0200
commit5beff865488f53d73000da382abc6d7d7f18ecd7 (patch)
tree8c94cb90c63987b5a526dc46142dc2ca6ab12856 /theme/javascript
parentdd395edae122e567e231d472d317ce3e406a5fc2 (diff)
downloadgitbook-5beff865488f53d73000da382abc6d7d7f18ecd7.zip
gitbook-5beff865488f53d73000da382abc6d7d7f18ecd7.tar.gz
gitbook-5beff865488f53d73000da382abc6d7d7f18ecd7.tar.bz2
Change js interface for plugins and add configuration
Diffstat (limited to 'theme/javascript')
-rw-r--r--theme/javascript/core/events.js7
-rwxr-xr-xtheme/javascript/core/exercise.js6
-rw-r--r--theme/javascript/core/global.js8
-rwxr-xr-xtheme/javascript/core/navigation.js6
-rw-r--r--theme/javascript/core/quiz.js6
-rwxr-xr-xtheme/javascript/gitbook.js (renamed from theme/javascript/app.js)17
6 files changed, 27 insertions, 23 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 8765685..7dbe982 100755
--- a/theme/javascript/core/exercise.js
+++ b/theme/javascript/core/exercise.js
@@ -1,9 +1,9 @@
define([
"jQuery",
"utils/execute",
- "core/global",
+ "core/events",
"core/state"
-], function($, execute, global, 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();
- global.trigger("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/global.js b/theme/javascript/core/global.js
deleted file mode 100644
index 0c75cdc..0000000
--- a/theme/javascript/core/global.js
+++ /dev/null
@@ -1,8 +0,0 @@
-define([
- "jQuery"
-], function($) {
- // Interface for plugins
- window.gitbook = $({});
-
- return window.gitbook;
-}); \ No newline at end of file
diff --git a/theme/javascript/core/navigation.js b/theme/javascript/core/navigation.js
index 88d4379..8f8b0a6 100755
--- a/theme/javascript/core/navigation.js
+++ b/theme/javascript/core/navigation.js
@@ -1,12 +1,12 @@
define([
"jQuery",
- "core/global",
+ "core/events",
"core/state",
"core/search",
"core/progress",
"core/exercise",
"core/quiz"
-], function($, global, 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
- global.trigger("page.change");
+ events.trigger("page.change");
};
var handlePagination = function (e) {
diff --git a/theme/javascript/core/quiz.js b/theme/javascript/core/quiz.js
index 239d546..d34af48 100644
--- a/theme/javascript/core/quiz.js
+++ b/theme/javascript/core/quiz.js
@@ -1,9 +1,9 @@
define([
"jQuery",
"utils/execute",
- "core/global",
+ "core/events",
"core/state"
-], function($, execute, global, 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();
- global.trigger("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");
diff --git a/theme/javascript/app.js b/theme/javascript/gitbook.js
index 1080e01..713a734 100755
--- a/theme/javascript/app.js
+++ b/theme/javascript/gitbook.js
@@ -1,17 +1,17 @@
-require([
+define([
"jQuery",
"utils/storage",
"utils/sharing",
- "core/global",
+ "core/events",
"core/state",
"core/keyboard",
"core/navigation",
"core/progress",
"core/sidebar",
"core/search"
-], function($, storage, sharing, global, state, keyboard, navigation, progress, sidebar, search){
- $(document).ready(function() {
+], function($, storage, sharing, events, state, keyboard, navigation, progress, sidebar, search){
+ var start = function(config) {
var $book;
$book = state.$book;
@@ -37,6 +37,11 @@ require([
$(document).trigger("bookReady");
- global.trigger("init");
- });
+ events.trigger("start", config);
+ }
+
+ return {
+ start: start,
+ events: events
+ };
});