Skip to content

Commit 9d557c8

Browse files
committed
Revert changes to external_launcher.js
1 parent 6ed01c0 commit 9d557c8

1 file changed

Lines changed: 22 additions & 23 deletions

File tree

external_services/static/js/external_launcher.js

Lines changed: 22 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
* the service is launched automatically on the next page load.
88
* However, this is disabled if the destination is a blank page.
99
*/
10-
(function() {
10+
(function($) {
1111
'use strict';
1212

1313
function json_parse(data) {
@@ -28,12 +28,12 @@
2828
};
2929

3030
function connect_form_automation(name="<unknown>") {
31-
const element = this;
32-
if (element.dataset[settings.ext_service_connected] === "true") return;
33-
element.dataset[settings.ext_service_connected] = "true";
34-
const ext_serv = element.dataset[settings.ext_serv_key];
35-
const ext_title = element.dataset[settings.ext_serv_title];
36-
const params_hash = element.dataset[settings.ext_params_hash_key];
31+
const element = $(this);
32+
if (element.data(settings.ext_service_connected) === "true") return;
33+
element.data(settings.ext_service_connected, "true");
34+
const ext_serv = element.data(settings.ext_serv_key);
35+
const ext_title = element.data(settings.ext_serv_title);
36+
const params_hash = element.data(settings.ext_params_hash_key);
3737
if (!ext_serv) {
3838
console.log("Invalid external service element:");
3939
console.dir(this);
@@ -43,22 +43,22 @@
4343
}
4444
const storage = window.localStorage;
4545
const storage_key = "external_service_" + ext_serv;
46-
const form = element.querySelector('form');
47-
const auto_accept_box = element.querySelector(settings.auto_accept_selector);
48-
const auto_accept = auto_accept_box.querySelector('input[type=checkbox]');
49-
const target = form.getAttribute('target');
46+
const form = element.find('form');
47+
const auto_accept_box = element.find(settings.auto_accept_selector);
48+
const auto_accept = auto_accept_box.find('input[type=checkbox]');
49+
const target = form.attr('target');
5050

51-
form.addEventListener("submit", function() {
51+
form.on("submit", function() {
5252
if (target && target.charAt(0) !== '_') {
53-
const iframe = element.querySelector("iframe[name='" + target + "']");
53+
const iframe = element.find("iframe[name='" + target + "']");
5454
/* show the iframe if the external service is opened in one */
55-
iframe.style.display = 'block';
55+
iframe.show();
5656

5757
/* hide the warning message and the form */
58-
element.querySelector(settings.message_area_selector).style.display = 'none';
58+
element.find(settings.message_area_selector).hide();
5959
}
6060
/* remember the accepted state via a local storage */
61-
if (auto_accept.checked) {
61+
if (auto_accept.prop('checked')) {
6262
const local_value = json_parse(storage.getItem(storage_key)) ||
6363
{id: ext_serv, title: ext_title, ok: []};
6464
if (local_value.ok.indexOf(params_hash) < 0) {
@@ -85,7 +85,7 @@
8585
if (target === "_blank") {
8686
/* hide the automatic accept checkbox when the automatic launch
8787
is disabled due to pop-up blockers */
88-
auto_accept_box.style.display = 'none';
88+
auto_accept_box.hide();
8989
} else if (local_value !== null &&
9090
local_value.ok.indexOf(params_hash) >= 0) {
9191
/* automatically submit data, if form with current data,
@@ -95,18 +95,17 @@
9595
}
9696

9797
function find_and_connect(dom, name) {
98-
dom.querySelectorAll('div.external-service').forEach(function(element) {
99-
connect_form_automation.call(element, name);
98+
$(dom).find('div.external-service').each(function() {
99+
connect_form_automation.call(this, name);
100100
});
101101
}
102102

103-
document.addEventListener('aplus:exercise-ready', function(e) {
103+
$(document).on('aplus:exercise-ready', function(e) {
104104
const exercise = e.target;
105105
const name = exercise.dataset.aplusExercise || exercise.dataset.aplusChapter || "<unknown exercise>";
106106
find_and_connect(exercise, name);
107107
});
108-
109-
document.addEventListener('DOMContentLoaded', function() {
108+
$(function() {
110109
find_and_connect(document, "<redirect-page>");
111110
});
112-
})();
111+
})(jQuery);

0 commit comments

Comments
 (0)