mirror of
https://gitlab.ub.uni-bielefeld.de/sfb1288inf/nopaque.git
synced 2025-06-14 10:00:40 +00:00
More Analysis Javascript updates for unified interaction handeling
This commit is contained in:
@ -404,7 +404,13 @@
|
||||
});
|
||||
client.setCallback("query_match_context", (payload) => {
|
||||
results.jsList.showMatchContext(payload);
|
||||
})
|
||||
});
|
||||
client.setCallback("show_sub_subcorpus_choices", (payload) => {
|
||||
results.jsList.showSubSubcorpusChoices(payload);
|
||||
});
|
||||
client.setCallback("save_sub_subcorpus_choices", (payload) => {
|
||||
saveSubSubcorpusChoices(payload);
|
||||
});
|
||||
|
||||
// Trigger corpus analysis initialization on server side
|
||||
client.init();
|
||||
@ -443,7 +449,6 @@
|
||||
|
||||
// stuff that happens in the list table and should also be checked and
|
||||
// updated if the pagination is used
|
||||
|
||||
interactionElements = new Array();
|
||||
let expertModeInteraction = new InteractionElement("display-options-form-expert_mode");
|
||||
expertModeInteraction.setCallback("on",
|
||||
@ -454,6 +459,7 @@
|
||||
results.jsList.expertModeOff,
|
||||
results.jsList,
|
||||
["query-display"])
|
||||
|
||||
let subSubcorpusInteraction = new InteractionElement("add-to-sub-subcorpus");
|
||||
subSubcorpusInteraction.setCallback("on",
|
||||
results.jsList.activateAddToSubSubcorpus,
|
||||
@ -461,16 +467,25 @@
|
||||
subSubcorpusInteraction.setCallback("off",
|
||||
results.jsList.deactivateAddToSubSubcorpus,
|
||||
results.jsList);
|
||||
interactionElements.push(expertModeInteraction, subSubcorpusInteraction);
|
||||
|
||||
let activateInspectInteraction = new InteractionElement("inspect",
|
||||
false);
|
||||
activateInspectInteraction.setCallback("noCheck",
|
||||
results.jsList.activateInspect,
|
||||
results.jsList);
|
||||
|
||||
let changeContextInteraction = new InteractionElement("display-options-form-results_per_page",
|
||||
false);
|
||||
changeContextInteraction.setCallback("noCheck",
|
||||
results.jsList.changeContext,
|
||||
results.jsList)
|
||||
interactionElements.push(expertModeInteraction, subSubcorpusInteraction, activateInspectInteraction, changeContextInteraction);
|
||||
|
||||
|
||||
// eventListener if pagination is used to apply new context size to new page
|
||||
// and also activate inspect match if progress is 100
|
||||
// also adds more interaction buttons like add to subcorpus
|
||||
for (let element of paginationElements) {
|
||||
element.addEventListener("click", results.jsList.changeContext);
|
||||
element.addEventListener("click", results.jsList.activateInspect);
|
||||
element.addEventListener("click", results.jsList.activateAddToSubSubcorpus);
|
||||
element.addEventListener("click", (event) => {
|
||||
results.jsList.pageChangeEventInteractionHandler(interactionElements);
|
||||
});
|
||||
@ -479,36 +494,23 @@
|
||||
// checks if a change for every interactionElement happens and executes
|
||||
// the callbacks accordingly
|
||||
for (let interaction of interactionElements) {
|
||||
let element = interaction.getElement()
|
||||
element.addEventListener("change", (event) => {
|
||||
if (event.target.checked) {
|
||||
let f_on = interaction.bindThisToCallback("on");
|
||||
let args_on = interaction.callbacks.on.args;
|
||||
f_on(...args_on);
|
||||
} else {
|
||||
let f_off = interaction.bindThisToCallback("off");
|
||||
let args_off = interaction.callbacks.off.args;
|
||||
f_off(...args_off);
|
||||
}
|
||||
});
|
||||
if (interaction.checkStatus) {
|
||||
let element = interaction.getElement()
|
||||
element.addEventListener("change", (event) => {
|
||||
if (event.target.checked) {
|
||||
let f_on = interaction.bindThisToCallback("on");
|
||||
let args_on = interaction.callbacks.on.args;
|
||||
f_on(...args_on);
|
||||
} else {
|
||||
let f_off = interaction.bindThisToCallback("off");
|
||||
let args_off = interaction.callbacks.off.args;
|
||||
f_off(...args_off);
|
||||
}
|
||||
});
|
||||
} else {
|
||||
continue
|
||||
}
|
||||
};
|
||||
|
||||
// Show add buttons for sub-subcorpus creation if this is pressed
|
||||
// addToSubSubcorpusElement.addEventListener("change", (event) => {
|
||||
// if (event.target.checked) {
|
||||
// results.jsList.activateAddToSubSubcorpus();
|
||||
// } else {
|
||||
// results.jsList.deActivateAddToSubSubcorpus();
|
||||
// }
|
||||
// });
|
||||
|
||||
// expertModeSwitchElement.addEventListener("change", (event) => {
|
||||
// if (event.target.checked) {
|
||||
// results.jsList.expertModeOn("query-display");
|
||||
// } else {
|
||||
// results.jsList.expertModeOff("query-display");
|
||||
// }
|
||||
// });
|
||||
});
|
||||
|
||||
// Add onclick to open download modal when Export Results button is pressed
|
||||
@ -530,8 +532,8 @@
|
||||
let filename = results.data.createDownloadFilename(`context-id-${results.jsList.contextId}`);
|
||||
results.data.addData(results.metaData);
|
||||
results.data.downloadJSONRessource(filename,
|
||||
results.jsList.contextData,
|
||||
downloadInspectContextElement);
|
||||
};
|
||||
results.jsList.contextData,
|
||||
downloadInspectContextElement);
|
||||
};
|
||||
</script>
|
||||
{% endblock %}
|
||||
|
Reference in New Issue
Block a user