Skip to content

Commit f832f1b

Browse files
committed
Data Transfer: remove dependency on jQuery
1 parent 5a67baa commit f832f1b

File tree

2 files changed

+44
-39
lines changed

2 files changed

+44
-39
lines changed
Lines changed: 44 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
/* global hljs */
22
'use strict'
33

4-
$(document).ready(function () {
4+
document.addEventListener('DOMContentLoaded', function () {
55
hljs.highlightAll()
66

77
const snippets = document.getElementsByTagName('pre')
@@ -10,44 +10,50 @@ $(document).ready(function () {
1010
snippets[i].innerHTML = '<button id="button' + (i + 1) + '" class="hljs-copy btn btn-secondary btn-copy-to-clipboard mt-2 me-2 float-end"><i class="fa fa-copy"></i> Copy</button>' + snippets[i].innerHTML
1111
}
1212

13-
$('.btn-copy-to-clipboard').on('click', function (event) {
14-
let codeBlockId
15-
if (this.id === 'button1') {
16-
codeBlockId = 'code-block1'
17-
} else {
18-
codeBlockId = 'code-block2'
19-
}
20-
21-
const codeContent = document.getElementById(codeBlockId).textContent
22-
const textArea = document.createElement('textarea')
23-
textArea.textContent = codeContent
24-
document.body.append(textArea)
25-
26-
textArea.select()
27-
document.execCommand('copy')
28-
29-
textArea.remove()
13+
const copyButtons = document.querySelectorAll('.btn-copy-to-clipboard')
14+
copyButtons.forEach(button => {
15+
button.addEventListener('click', function () {
16+
let codeBlockId
17+
if (this.id === 'button1') {
18+
codeBlockId = 'code-block1'
19+
} else {
20+
codeBlockId = 'code-block2'
21+
}
22+
23+
const codeContent = document.getElementById(codeBlockId).textContent
24+
const textArea = document.createElement('textarea')
25+
textArea.textContent = codeContent
26+
document.body.append(textArea)
27+
28+
textArea.select()
29+
document.execCommand('copy')
30+
31+
textArea.remove()
32+
})
3033
})
3134

32-
$('.btn-download-file').on('click', function (event) {
33-
let codeBlockId
34-
let filename
35-
if (this.id === 'download-button1') {
36-
codeBlockId = 'code-block1'
37-
filename = 'irods_environment.json'
38-
} else {
39-
codeBlockId = 'code-block2'
40-
filename = 'config.yml'
41-
}
42-
43-
const codeContent = document.getElementById(codeBlockId).textContent
44-
const link = document.createElement('a')
45-
const file = new Blob([codeContent], { type: 'text/plain' })
46-
47-
link.href = URL.createObjectURL(file)
48-
link.download = filename
49-
link.click()
50-
51-
URL.revokeObjectURL(link.href)
35+
const downloadButtons = document.querySelectorAll('.btn-download-file')
36+
downloadButtons.forEach(button => {
37+
button.addEventListener('click', function () {
38+
let codeBlockId
39+
let filename
40+
if (this.id === 'download-button1') {
41+
codeBlockId = 'code-block1'
42+
filename = 'irods_environment.json'
43+
} else {
44+
codeBlockId = 'code-block2'
45+
filename = 'config.yml'
46+
}
47+
48+
const codeContent = document.getElementById(codeBlockId).textContent
49+
const link = document.createElement('a')
50+
const file = new Blob([codeContent], { type: 'text/plain' })
51+
52+
link.href = URL.createObjectURL(file)
53+
link.download = filename
54+
link.click()
55+
56+
URL.revokeObjectURL(link.href)
57+
})
5258
})
5359
})

user/templates/user/data_transfer.html

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@
33
{% block title %}{{ super() }} - Data Transfer{% endblock %}
44

55
{% block scripts %}
6-
<script src="{{ url_for('static', filename='lib/jquery-3.7.1/jquery-3.7.1.min.js') }}"></script>
76
<script src="{{ url_for('user_bp.static', filename='js/data_transfer.js') }}"></script>
87
<script src="{{ url_for('static', filename='lib/highlight-js-11.9.0/highlight.min.js') }}"></script>
98
<script>

0 commit comments

Comments
 (0)