You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@senssoft.apache.org by rf...@apache.org on 2017/09/18 17:28:19 UTC

[14/21] incubator-senssoft-useralejs git commit: Initial commit for content and background scripts, as well as message type constants

Initial commit for content and background scripts, as well as message type constants


Project: http://git-wip-us.apache.org/repos/asf/incubator-senssoft-useralejs/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-senssoft-useralejs/commit/ed63be82
Tree: http://git-wip-us.apache.org/repos/asf/incubator-senssoft-useralejs/tree/ed63be82
Diff: http://git-wip-us.apache.org/repos/asf/incubator-senssoft-useralejs/diff/ed63be82

Branch: refs/heads/SENSSOFT-192
Commit: ed63be82bd36408aaa76c7cf3b28368ee8ee5b6b
Parents: 5178927
Author: Rob Foley <ro...@gmail.com>
Authored: Wed Sep 13 14:18:17 2017 -0700
Committer: Rob Foley <ro...@gmail.com>
Committed: Wed Sep 13 14:18:17 2017 -0700

----------------------------------------------------------------------
 src/UserALEWebExtension/background.js   | 32 ++++++++++++++
 src/UserALEWebExtension/content.js      | 63 ++++++++++++++++++++++++++++
 src/UserALEWebExtension/messageTypes.js |  3 ++
 3 files changed, 98 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-senssoft-useralejs/blob/ed63be82/src/UserALEWebExtension/background.js
----------------------------------------------------------------------
diff --git a/src/UserALEWebExtension/background.js b/src/UserALEWebExtension/background.js
new file mode 100644
index 0000000..a8e3ddd
--- /dev/null
+++ b/src/UserALEWebExtension/background.js
@@ -0,0 +1,32 @@
+/*
+ eslint-disable
+ */
+
+import * as globals from './globals';
+import * as MessageTypes from './messageTypes.js';
+
+// inherent dependency on globals.js, loaded by the webext
+
+// browser is defined in firefox, but not in chrome. In chrome, they use
+// the 'chrome' global instead. Let's map it to browser so we don't have
+// to have if-conditions all over the place.
+
+var browser = browser || chrome;
+        
+function onError(error) {
+  console.log(error);
+}
+
+browser.runtime.onMessage.addListener(function (message) {
+  switch (message.type) {
+    case MessageTypes.CONFIG_CHANGE:
+      console.log('got config ', message.payload);
+      break;
+    default:
+      console.log('got unknown message type ', message);
+  }
+});
+
+/*
+ eslint-enable
+ */
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-senssoft-useralejs/blob/ed63be82/src/UserALEWebExtension/content.js
----------------------------------------------------------------------
diff --git a/src/UserALEWebExtension/content.js b/src/UserALEWebExtension/content.js
new file mode 100644
index 0000000..3bf2fda
--- /dev/null
+++ b/src/UserALEWebExtension/content.js
@@ -0,0 +1,63 @@
+/*
+ eslint-disable
+ */
+
+import * as globals from './globals';
+import * as MessageTypes from './messageTypes.js';
+import { map, options, start } from '../main.js';
+
+// inherent dependency on globals.js, loaded by the webext
+
+// browser is defined in firefox, but not in chrome. In chrome, they use
+// the 'chrome' global instead. Let's map it to browser so we don't have
+// to have if-conditions all over the place.
+
+var browser = browser || chrome;
+
+// creates a Future for retrieval of the named keys
+// the value specified is the default value if one doesn't exist in the storage
+let store = browser.storage.local.get({
+  userAleHost: globals.userAleHost,
+  userAleScript: globals.userAleScript,
+  toolUser: globals.toolUser,
+  toolName: globals.toolName,
+  toolVersion: globals.toolVersion,
+}, storeCallback);
+        
+function storeCallback(item) {
+  injectScript({
+    url: item.userAleHost,
+    userId: item.toolUser,
+    toolName: item.toolName,
+    toolVersion: item.toolVersion
+  });
+}
+        
+function onError(error) {
+  console.log(error);
+}
+
+function injectScript(config) {
+  options(config);
+  start();
+  map(function(log) {
+    return Object.assign({}, log, {
+      pageUrl: document.location.href,
+    });
+  });
+}
+
+browser.runtime.onMessage.addListener(function (message) {
+  if (message.type === MessageTypes.CONFIG_CHANGE) {
+    options({
+      url: message.payload.userAleHost,
+      userId: message.payload.toolUser,
+      toolName: message.payload.toolName,
+      toolVersion: message.payload.toolVersion
+    });
+  }
+});
+
+/*
+ eslint-enable
+ */
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-senssoft-useralejs/blob/ed63be82/src/UserALEWebExtension/messageTypes.js
----------------------------------------------------------------------
diff --git a/src/UserALEWebExtension/messageTypes.js b/src/UserALEWebExtension/messageTypes.js
new file mode 100644
index 0000000..907d072
--- /dev/null
+++ b/src/UserALEWebExtension/messageTypes.js
@@ -0,0 +1,3 @@
+var prefix = 'USERALE_';
+
+export var CONFIG_CHANGE = prefix + 'CONFIG_CHANGE';