diff --git a/content/multipledataset.html b/content/multipledataset.html
index 99564ee0..6a436a0d 100644
--- a/content/multipledataset.html
+++ b/content/multipledataset.html
@@ -68,7 +68,7 @@ draft: false
processingIndicator.isActive = true
var chks = []
var chks = $("#form_datFiles > ul > ul > li >input[type=checkbox]:checked")
- var proms = Array.from(chks).flatMap((c) => {
+ var proms = Array.from(chks).map((c) => {
switch (c.value) {
case "abs":
return getAbsFilesName().map((f) => AbsDataFile.loadAsync(f));
@@ -81,7 +81,18 @@ draft: false
break;
}
})
- window.dats = await Promise.all(proms)
+ window.dats=[]
+ for(const subproms of proms){
+ var sub = await Promise.all(subproms)
+ for(mol of uniq(sub.map(d=>d.molecule))){
+ submol=sub.filter(d=>d.molecule==mol)
+ TBE=sub.find((d)=>d.method.isTBE)
+ for(dat of submol.filter((d)=>d!==TBE)){
+ dat.CopyExcitationsTypeFrom(TBE)
+ }
+ }
+ window.dats=window.dats.concat(sub)
+ }
processingIndicator.isActive = false
reloadFileSelector()
await reloadSelect()
diff --git a/static/js/data.js b/static/js/data.js
index a3070f80..740d49e3 100644
--- a/static/js/data.js
+++ b/static/js/data.js
@@ -207,6 +207,16 @@ class dataFileBase {
this.DOI = null
this.sourceFile = null
}
+ CopyExcitationsTypeFrom(data) {
+ for (const ex of this.excitations) {
+ const ex2=data.excitations.find((e)=>{
+ return (JSON.stringify(e.initial)===JSON.stringify(ex.initial)) && (JSON.stringify(e.final)===JSON.stringify(ex.final))
+ })
+ if(ex2!==undefined){
+ ex.type=ex2.type
+ }
+ }
+ }
static async loadAsync(file) {
switch (trueTypeOf(file)) {
case String.name: