pre series form update

This commit is contained in:
Ross
2022-07-24 11:11:58 +01:00
parent fde658c71c
commit 8f5c878bab
11 changed files with 286 additions and 91 deletions
+77 -77
View File
@@ -6,38 +6,38 @@
<script type="text/javascript">
let normal = false;
let monitor_directory_handler = false;
let monitor_interval_id = false;
//let monitor_directory_handler = false;
//let monitor_interval_id = false;
// set to hold the files that are still being processed
let active_file_inputs = new Set();
let load_viewer = false;
async function listAllFilesAndDirs(dirHandle, files_only) {
const files = [];
for await (let [name, handle] of dirHandle) {
const {
kind
} = handle;
if (handle.kind === 'directory') {
if (files_only != true) {
files.push({
name,
handle,
kind
});
}
files.push(...await listAllFilesAndDirs(handle));
} else {
files.push({
name,
handle,
kind
});
}
}
return files;
}
// async function listAllFilesAndDirs(dirHandle, files_only) {
// const files = [];
// for await (let [name, handle] of dirHandle) {
// const {
// kind
// } = handle;
// if (handle.kind === 'directory') {
// if (files_only != true) {
// files.push({
// name,
// handle,
// kind
// });
// }
// files.push(...await listAllFilesAndDirs(handle));
// } else {
// files.push({
// name,
// handle,
// kind
// });
// }
// }
// return files;
// }
function showEditPopup(url) {
var win = window.open(url, "Edit",
@@ -243,56 +243,56 @@
};
$('#directory-picker-button').click(() => {
window.showDirectoryPicker().then((handler) => {
monitor_directory_handler = handler;
monitor_interval_id = setInterval(function () {
listAllFilesAndDirs(monitor_directory_handler).then(async function (
items) {
files_to_add = new Set();
current_files = getCurrentFiles();
current_files_tuple = new Set()
for (let elem of current_files) {
current_files_tuple.add(
`${elem.size}, ${elem.name}, ${elem.lastModified}`
);
}
console.log(current_files_tuple)
for (var i = 0; i < items.length; i++) {
f = await items[i].handle.getFile()
console.log("f", f)
if (!current_files_tuple.has(
`${f.size}, ${f.name}, ${f.lastModified}`
)) {
files_to_add.add(f);
}
}
// file objects differ enough that the following does not work
//let distinct_set = new Set([...files_to_add].filter(
// x => !current_files.has(x)));
extendInputs(files_to_add.size);
files_to_add.forEach((file) => {
addFile(file, false);
});
});
}, 5000);
$("#directory-picker-display").text(monitor_directory_handler.name)
.after(
$(
" <span>[clear]</span>").click((evt) => {
$(evt.target).remove();
$("#directory-picker-display").text("");
monitor_directory_handler = false;
clearInterval(monitor_interval_id);
//const files = await listAllFilesAndDirs(directoryHandle);
}));
});
});
// $('#directory-picker-button').click(() => {
// window.showDirectoryPicker().then((handler) => {
// monitor_directory_handler = handler;
// monitor_interval_id = setInterval(function () {
// listAllFilesAndDirs(monitor_directory_handler).then(async function (
// items) {
// files_to_add = new Set();
// current_files = getCurrentFiles();
// current_files_tuple = new Set()
// for (let elem of current_files) {
// current_files_tuple.add(
// `${elem.size}, ${elem.name}, ${elem.lastModified}`
// );
// }
//
// console.log(current_files_tuple)
// for (var i = 0; i < items.length; i++) {
//
// f = await items[i].handle.getFile()
// console.log("f", f)
// if (!current_files_tuple.has(
// `${f.size}, ${f.name}, ${f.lastModified}`
// )) {
// files_to_add.add(f);
// }
// }
//
// // file objects differ enough that the following does not work
// //let distinct_set = new Set([...files_to_add].filter(
// // x => !current_files.has(x)));
//
//
// extendInputs(files_to_add.size);
// files_to_add.forEach((file) => {
// addFile(file, false);
// });
// });
// }, 5000);
// $("#directory-picker-display").text(monitor_directory_handler.name)
// .after(
// $(
// " <span>[clear]</span>").click((evt) => {
// $(evt.target).remove();
// $("#directory-picker-display").text("");
// monitor_directory_handler = false;
// clearInterval(monitor_interval_id);
// //const files = await listAllFilesAndDirs(directoryHandle);
// }));
// });
// });