Skip to content

Commit f8d9bf9

Browse files
authored
Merge pull request #44 from cmason3/dev
Dev
2 parents 3bb25d2 + 6605c8a commit f8d9bf9

File tree

5 files changed

+47
-23
lines changed

5 files changed

+47
-23
lines changed

CHANGELOG.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,9 @@
11
## CHANGELOG
22

3+
### [24.6.4] - Jun 26, 2024
4+
- The selected DataSet is now saved when you save the DataTemplate
5+
- Updated Pandoc to 3.2.1 in Dockerfile
6+
37
### [24.6.3] - Jun 24, 2024
48
- Fixed an issue with `/logs` as it didn't adhere to the default `Content-Security-Policy`
59
- Updated instructions for deploying JinjaFx Server as a Container using Kubernetes
@@ -319,6 +323,7 @@
319323
### 21.11.0 - Nov 29, 2021
320324
- Initial release
321325

326+
[24.6.4]: https://github.com/cmason3/jinjafx_server/compare/24.6.3...24.6.4
322327
[24.6.3]: https://github.com/cmason3/jinjafx_server/compare/24.6.2...24.6.3
323328
[24.6.2]: https://github.com/cmason3/jinjafx_server/compare/24.6.1...24.6.2
324329
[24.6.1]: https://github.com/cmason3/jinjafx_server/compare/24.6.0...24.6.1

jinjafx_server.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@
2828
import re, argparse, hashlib, traceback, glob, hmac, uuid, struct, binascii, gzip, requests, ctypes, subprocess
2929
import cmarkgfm, emoji
3030

31-
__version__ = '24.6.3'
31+
__version__ = '24.6.4'
3232

3333
llock = threading.RLock()
3434
rlock = threading.RLock()
@@ -702,6 +702,7 @@ def html_escape(text):
702702
dt_yml += re.sub('^', ' ' * 4, vdt['template'], flags=re.MULTILINE) + '\n'
703703

704704
dt_yml += '\nrevision: ' + str(dt_revision) + '\n'
705+
dt_yml += 'dataset: "' + dt['dataset'] + '"\n'
705706

706707
dt_hash = hashlib.sha256(dt_yml.encode('utf-8')).hexdigest()
707708
dt_yml += 'dt_hash: "' + dt_hash + '"\n'

kubernetes/Dockerfile

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,8 @@ RUN set -eux; \
77
apt-get update; \
88
apt-get install -y --no-install-recommends wget git build-essential; \
99

10-
wget -P /tmp https://github.com/jgm/pandoc/releases/download/3.2/pandoc-3.2-1-amd64.deb; \
11-
dpkg -i /tmp/pandoc-3.2-1-amd64.deb; \
10+
wget -P /tmp https://github.com/jgm/pandoc/releases/download/3.2.1/pandoc-3.2.1-1-amd64.deb; \
11+
dpkg -i /tmp/pandoc-3.2.1-1-amd64.deb; \
1212

1313
python3 -m venv /opt/jinjafx; \
1414
/opt/jinjafx/bin/python3 -m pip install --upgrade git+https://github.com/cmason3/jinjafx_server.git@${BRANCH} lxml; \

www/index.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@
3232
<script src="https://cdnjs.cloudflare.com/ajax/libs/js-yaml/4.1.0/js-yaml.min.js" integrity="sha512-CSBhVREyzHAjAFfBlIBakjoRUKp5h7VSweP0InR/pAJyptH7peuhCsqAI/snV+TwZmXZqoUklpXp6R6wMnYf5Q==" crossorigin="anonymous" referrerpolicy="no-referrer"></script>
3333
<script src="https://cdnjs.cloudflare.com/ajax/libs/dayjs/1.11.11/dayjs.min.js" integrity="sha512-FwNWaxyfy2XlEINoSnZh1JQ5TRRtGow0D6XcmAWmYCRgvqOUTnzCxPc9uF35u5ZEpirk1uhlPVA19tflhvnW1g==" crossorigin="anonymous" referrerpolicy="no-referrer"></script>
3434
<script src="https://cdnjs.cloudflare.com/ajax/libs/dayjs/1.11.11/plugin/relativeTime.min.js" integrity="sha512-MVzDPmm7QZ8PhEiqJXKz/zw2HJuv61waxb8XXuZMMs9b+an3LoqOqhOEt5Nq3LY1e4Ipbbd/e+AWgERdHlVgaA==" crossorigin="anonymous" referrerpolicy="no-referrer"></script>
35-
<script src="/73874bbf/jinjafx_m.js"></script>
35+
<script src="/ccaef2dc/jinjafx_m.js"></script>
3636
</head>
3737
<body>
3838
<div id="overlay"></div>

www/jinjafx_m.js

Lines changed: 37 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -123,10 +123,10 @@ function getStatusText(code) {
123123
};
124124

125125
function select_dataset(e) {
126-
switch_dataset(e.currentTarget.ds_name, true);
126+
switch_dataset(e.currentTarget.ds_name, true, false);
127127
}
128128

129-
function switch_dataset(ds, sflag) {
129+
function switch_dataset(ds, sflag, dflag) {
130130
if (sflag) {
131131
datasets[current_ds][0] = window.cmData.swapDoc(datasets[ds][0]);
132132
datasets[current_ds][1] = window.cmVars.swapDoc(datasets[ds][1]);
@@ -136,6 +136,13 @@ function getStatusText(code) {
136136
window.cmVars.swapDoc(datasets[ds][1]);
137137
}
138138
if (ds != current_ds) {
139+
if (dflag) {
140+
window.addEventListener('beforeunload', onBeforeUnload);
141+
if (document.getElementById('get_link').value != 'false') {
142+
document.title = 'JinjaFx [unsaved]';
143+
}
144+
}
145+
dirty = true;
139146
document.getElementById('selected_ds').innerHTML = ds;
140147
current_ds = ds;
141148
onDataBlur();
@@ -198,14 +205,14 @@ function getStatusText(code) {
198205

199206
function delete_dataset(ds) {
200207
delete datasets[ds];
201-
window.addEventListener('beforeunload', onBeforeUnload);
202-
if (document.getElementById('get_link').value != 'false') {
203-
document.title = 'JinjaFx [unsaved]';
204-
}
205-
dirty = true;
208+
//window.addEventListener('beforeunload', onBeforeUnload);
209+
//if (document.getElementById('get_link').value != 'false') {
210+
// document.title = 'JinjaFx [unsaved]';
211+
//}
212+
//dirty = true;
206213

207214
rebuild_datasets();
208-
switch_dataset(Object.keys(datasets)[0], false);
215+
switch_dataset(Object.keys(datasets)[0], false, true);
209216
fe.focus();
210217
}
211218

@@ -540,6 +547,7 @@ function getStatusText(code) {
540547
return false;
541548
}
542549

550+
dt.dataset = current_ds;
543551
dt.template = e(window.cmTemplate.getValue().replace(/\t/g, " "));
544552

545553
if ((current_ds === 'Default') && (Object.keys(datasets).length === 1)) {
@@ -553,7 +561,7 @@ function getStatusText(code) {
553561
dt.global = e(window.cmgVars.getValue().replace(/\t/g, " "));
554562
}
555563

556-
switch_dataset(current_ds, true);
564+
switch_dataset(current_ds, true, false);
557565
Object.keys(datasets).forEach(function(ds) {
558566
dt.datasets[ds] = {};
559567
dt.datasets[ds].data = e(datasets[ds][0].getValue());
@@ -711,7 +719,12 @@ function getStatusText(code) {
711719
try {
712720
var dt = jsyaml.load(d(JSON.parse(this.responseText)['dt']), jsyaml_schema);
713721

714-
load_datatemplate(dt['dt'], qs);
722+
if (dt.hasOwnProperty('dataset')) {
723+
load_datatemplate(dt['dt'], qs, dt['dataset']);
724+
}
725+
else {
726+
load_datatemplate(dt['dt'], qs, null);
727+
}
715728
dt_id = qs.dt;
716729

717730
document.getElementById('update').classList.remove('d-none');
@@ -1393,13 +1406,13 @@ function getStatusText(code) {
13931406
if (!datasets.hasOwnProperty(new_ds)) {
13941407
datasets[new_ds] = [CodeMirror.Doc('', 'data'), CodeMirror.Doc('', 'yaml')];
13951408
rebuild_datasets();
1396-
window.addEventListener('beforeunload', onBeforeUnload);
1397-
if (document.getElementById('get_link').value != 'false') {
1398-
document.title = 'JinjaFx [unsaved]';
1399-
}
1400-
dirty = true;
1409+
//window.addEventListener('beforeunload', onBeforeUnload);
1410+
//if (document.getElementById('get_link').value != 'false') {
1411+
// document.title = 'JinjaFx [unsaved]';
1412+
//}
1413+
//dirty = true;
14011414
}
1402-
switch_dataset(new_ds, true);
1415+
switch_dataset(new_ds, true, true);
14031416
}
14041417
else {
14051418
set_status("darkred", "ERROR", "Invalid Data Set Name");
@@ -1687,7 +1700,7 @@ function getStatusText(code) {
16871700
}
16881701

16891702
function apply_dt() {
1690-
load_datatemplate(pending_dt, null);
1703+
load_datatemplate(pending_dt, null, null);
16911704
reset_location('');
16921705
dt_id = '';
16931706
dt_password = null;
@@ -1747,7 +1760,7 @@ function getStatusText(code) {
17471760
}
17481761
}
17491762

1750-
function load_datatemplate(_dt, _qs) {
1763+
function load_datatemplate(_dt, _qs, _ds) {
17511764
try {
17521765
current_ds = 'Default';
17531766

@@ -1762,7 +1775,12 @@ function getStatusText(code) {
17621775
datasets[ds] = [CodeMirror.Doc(data, 'data'), CodeMirror.Doc(vars, 'yaml')];
17631776
});
17641777

1765-
current_ds = Object.keys(datasets)[0];
1778+
if ((_ds == null) || !datasets.hasOwnProperty(_ds)) {
1779+
current_ds = Object.keys(datasets)[0];
1780+
}
1781+
else {
1782+
current_ds = _ds;
1783+
}
17661784
window.cmData.swapDoc(datasets[current_ds][0]);
17671785
window.cmVars.swapDoc(datasets[current_ds][1]);
17681786

0 commit comments

Comments
 (0)