Skip to content

Commit

Permalink
Fix and clean up
Browse files Browse the repository at this point in the history
fix for rm anova race condition
  • Loading branch information
dropmann committed Jan 28, 2024
1 parent 452ca6c commit 946431c
Show file tree
Hide file tree
Showing 4 changed files with 38 additions and 38 deletions.
20 changes: 10 additions & 10 deletions jamovi/js/ancova.events.js
Original file line number Diff line number Diff line change
Expand Up @@ -25,8 +25,8 @@ const events = {
},

onUpdate_modelSupplier: function(ui) {
let variableList = this.cloneArray(ui.factors.value(), []);
let covariatesList = this.cloneArray(ui.covs.value(), []);
let variableList = this.clone(ui.factors.value(), []);
let covariatesList = this.clone(ui.covs.value(), []);

let combinedList = variableList.concat(covariatesList);

Expand Down Expand Up @@ -54,7 +54,7 @@ const events = {

let calcMarginalMeansSupplier = function(ui, context) {

let b1 = context.cloneArray(ui.factors.value(), []);
let b1 = context.clone(ui.factors.value(), []);
b1 = context.valuesToItems(b1, FormatDef.variable);

if (ui.emMeansSupplier)
Expand All @@ -68,8 +68,8 @@ let updateModelLabels = function(list, blockName) {
};

var calcModelTerms = function(ui, context) {
var variableList = context.cloneArray(ui.factors.value(), []);
var covariatesList = context.cloneArray(ui.covs.value(), []);
var variableList = context.clone(ui.factors.value(), []);
var covariatesList = context.clone(ui.covs.value(), []);

var combinedList = variableList.concat(covariatesList);

Expand All @@ -82,7 +82,7 @@ var calcModelTerms = function(ui, context) {
var diff2 = context.findChanges("covariatesList", covariatesList, true, FormatDef.variable);
var combinedDiff = context.findChanges("combinedList", combinedList, true, FormatDef.variable);

var termsList = context.cloneArray(ui.modelTerms.value(), []);
var termsList = context.clone(ui.modelTerms.value(), []);
var termsChanged = false;

for (var i = 0; i < combinedDiff.removed.length; i++) {
Expand Down Expand Up @@ -131,8 +131,8 @@ var calcModelTerms = function(ui, context) {
};

var updatePostHocSupplier = function(ui, context) {
var termsList = context.cloneArray(ui.modelTerms.value(), []);
var covariatesList = context.cloneArray(ui.covs.value(), []);
var termsList = context.clone(ui.modelTerms.value(), []);
var covariatesList = context.clone(ui.covs.value(), []);
var list = [];
for (var j = 0; j < termsList.length; j++) {
var term = termsList[j];
Expand All @@ -143,7 +143,7 @@ var updatePostHocSupplier = function(ui, context) {
};

var filterModelTerms = function(ui, context) {
var termsList = context.cloneArray(ui.modelTerms.value(), []);
var termsList = context.clone(ui.modelTerms.value(), []);
var diff = context.findChanges("termsList", termsList, true, FormatDef.term);

var changed = false;
Expand Down Expand Up @@ -172,7 +172,7 @@ var filterModelTerms = function(ui, context) {
};

var updateContrasts = function(ui, variableList, context) {
var currentList = context.cloneArray(ui.contrasts.value(), []);
var currentList = context.clone(ui.contrasts.value(), []);

var list3 = [];
for (let i = 0; i < variableList.length; i++) {
Expand Down
32 changes: 16 additions & 16 deletions jamovi/js/anovarm.events.js
Original file line number Diff line number Diff line change
Expand Up @@ -46,15 +46,15 @@ const events = {
},

onUpdate_rmcModelSupplier: function(ui) {
let factorList = this.cloneArray(ui.rm.value(), []);
let factorList = this.clone(ui.rm.value(), []);
for(let i = 0; i < factorList.length; i++)
factorList[i] = factorList[i].label;
ui.rmcModelSupplier.setValue(this.valuesToItems(factorList, FormatDef.variable));
},

onUpdate_bscModelSupplier: function(ui) {
let variableList = this.cloneArray(ui.bs.value(), []);
let covariatesList = this.cloneArray(ui.cov.value(), []);
let variableList = this.clone(ui.bs.value(), []);
let covariatesList = this.clone(ui.cov.value(), []);
let combinedList = variableList.concat(covariatesList);
ui.bscModelSupplier.setValue(this.valuesToItems(combinedList, FormatDef.variable));
},
Expand Down Expand Up @@ -86,7 +86,7 @@ let updateModelLabels = function(list, blockName) {

let calcMarginalMeansSupplier = function(ui, context) {

let b1 = context.cloneArray(ui.bs.value(), []);
let b1 = context.clone(ui.bs.value(), []);
let b2 = context.itemsToValues(ui.rmcModelSupplier.value());

b1 = context.valuesToItems(b2.concat(b1), FormatDef.variable);
Expand Down Expand Up @@ -141,7 +141,7 @@ var calcRMTerms = function(ui, factorList, context) {
var diff = context.findChanges("factorList", factorList, true, FormatDef.term);

var termsList = ui.rmTerms.value();
termsList = context.clone(termsList);
termsList = context.clone(termsList, []);
var termsChanged = false;

for (var i = 0; i < diff.removed.length; i++) {
Expand All @@ -163,9 +163,9 @@ var calcRMTerms = function(ui, factorList, context) {

var updateRMModelTerms = function(ui, context, variableList, updateEMMeans) {
if (variableList === undefined)
variableList = context.cloneArray(ui.bs.value(), []);
variableList = context.clone(ui.bs.value(), []);

let factorList = context.cloneArray(ui.rm.value(), []);
let factorList = context.clone(ui.rm.value(), []);

let customVariables = [];
for(let i = 0; i < factorList.length; i++) {
Expand All @@ -188,8 +188,8 @@ var updateRMModelTerms = function(ui, context, variableList, updateEMMeans) {
};

var updateModelTerms = function(ui, context) {
var variableList = context.cloneArray(ui.bs.value(), []);
var covariatesList = context.cloneArray(ui.cov.value(), []);
var variableList = context.clone(ui.bs.value(), []);
var covariatesList = context.clone(ui.cov.value(), []);

updateRMModelTerms(ui, context, variableList, false);

Expand All @@ -202,7 +202,7 @@ var updateModelTerms = function(ui, context) {
var diff2 = context.findChanges("covariatesList", covariatesList, true, FormatDef.variable);
var combinedDiff = context.findChanges("combinedList", combinedList, true, FormatDef.variable);

var termsList = context.cloneArray(ui.bsTerms.value(), []);
var termsList = context.clone(ui.bsTerms.value(), []);
var termsChanged = false;
for (var i = 0; i < combinedDiff.removed.length; i++) {
for (var j = 0; j < termsList.length; j++) {
Expand Down Expand Up @@ -248,8 +248,8 @@ var updateModelTerms = function(ui, context) {
};

var updatePostHocSupplier = function(ui, context) {
var bsTerms = context.cloneArray(ui.bsTerms.value(), []);
var rmTerms = context.cloneArray(ui.rmTerms.value(), []);
var bsTerms = context.clone(ui.bsTerms.value(), []);
var rmTerms = context.clone(ui.rmTerms.value(), []);
var combinedTermsList = rmTerms.concat(bsTerms);

for (let i = 0; i < rmTerms.length; i++) {
Expand All @@ -261,7 +261,7 @@ var updatePostHocSupplier = function(ui, context) {
};

var filterModelTerms = function(ui, context) {
var termsList = context.cloneArray(ui.bsTerms.value(), []);
var termsList = context.clone(ui.bsTerms.value(), []);
var diff = context.findChanges("bsTerms", termsList, true, FormatDef.term);

var changed = false;
Expand Down Expand Up @@ -292,7 +292,7 @@ var filterModelTerms = function(ui, context) {
};

var filterModelRMTerms = function(ui, context) {
var termsList = context.clone(ui.rmTerms.value());
var termsList = context.clone(ui.rmTerms.value(), []);
var diff = context.findChanges("rmTerms", termsList, true, FormatDef.term);

var changed = false;
Expand Down Expand Up @@ -332,7 +332,7 @@ var containsCovariate = function(value, covariates) {
};

var updateContrasts = function(ui, variableList, context) {
var currentList = context.cloneArray(ui.contrasts.value(), []);
var currentList = context.clone(ui.contrasts.value(), []);

var list3 = [];
for (let i = 0; i < variableList.length; i++) {
Expand All @@ -356,7 +356,7 @@ var filterCells = function(ui, context) {
if (context._factorCells === null)
return;

var cells = context.cloneArray(ui.rmCells.value(), []);
var cells = context.clone(ui.rmCells.value(), []);

var factorCells = context.clone(context._factorCells);

Expand Down
2 changes: 1 addition & 1 deletion jamovi/js/cfa.events.js
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ const updateModelLabels = function(ui, context) {

const calcModelTerms = function(ui, context) {

let factorList = context.cloneArray(ui.factors.value(), []);
let factorList = context.clone(ui.factors.value(), []);

let variables = [];
for (let i = 0 ; i < factorList.length; i++) {
Expand Down
22 changes: 11 additions & 11 deletions jamovi/js/logregbin.events.js
Original file line number Diff line number Diff line change
Expand Up @@ -19,8 +19,8 @@ const events = {
},

onUpdate_modelSupplier: function(ui) {
let variableList = this.cloneArray(ui.covs.value(), []);
variableList = variableList.concat(this.cloneArray(ui.factors.value(), []));
let variableList = this.clone(ui.covs.value(), []);
variableList = variableList.concat(this.clone(ui.factors.value(), []));
ui.modelSupplier.setValue(this.valuesToItems(variableList, FormatDef.variable));
},

Expand Down Expand Up @@ -53,7 +53,7 @@ const events = {

onEvent_test_listItemsChanged: function(ui) {
updateModelLabels(ui.blocks, _('Block {0}'));
let blocks = this.cloneArray(ui.blocks.value(), []);
let blocks = this.clone(ui.blocks.value(), []);
this.workspace["blocks"] = blocks;
},

Expand All @@ -64,7 +64,7 @@ const events = {

let calcMarginalMeansSupplier = function(ui, context) {

let blocks = context.cloneArray(ui.blocks.value(), []);
let blocks = context.clone(ui.blocks.value(), []);
let variableList = [];
for (let blockIndex = 0; blockIndex < blocks.length; blockIndex++) {
for (let term of blocks[blockIndex])
Expand All @@ -76,7 +76,7 @@ let calcMarginalMeansSupplier = function(ui, context) {
};

var calcModelTerms = function(ui, context) {
var variableList = context.cloneArray(ui.factors.value(), []);
var variableList = context.clone(ui.factors.value(), []);
let depVar = ui.dep.value();
if (depVar)
variableList.unshift(depVar);
Expand All @@ -93,7 +93,7 @@ var updateLevelControls = function(ui, context) {
};

var updateContrasts = function(ui, variableList, context) {
var currentList = context.cloneArray(ui.refLevels.value(), []);
var currentList = context.clone(ui.refLevels.value(), []);

var list3 = [];
for (let i = 0; i < variableList.length; i++) {
Expand Down Expand Up @@ -122,14 +122,14 @@ let updateModelLabels = function(list, blockName) {


let calcBlocks = function(ui, context) {
let variableList = context.cloneArray(ui.covs.value(), []);
variableList = variableList.concat(context.cloneArray(ui.factors.value(), []));
let variableList = context.clone(ui.covs.value(), []);
variableList = variableList.concat(context.clone(ui.factors.value(), []));

ui.modelSupplier.setValue(context.valuesToItems(variableList, FormatDef.variable));


let varsDiff = context.findChanges("variableList", variableList, true, FormatDef.variable);
let termsList = context.cloneArray(ui.blocks.value(), []);
let termsList = context.clone(ui.blocks.value(), []);

var termsChanged = false;
for (var i = 0; i < varsDiff.removed.length; i++) {
Expand Down Expand Up @@ -178,7 +178,7 @@ let inOtherBlock = function(blocks, value, blockIndex) {

let checkForNullBlocks = function(ui, context) {
let changed = false;
let blocks = context.cloneArray(ui.blocks.value(), []);
let blocks = context.clone(ui.blocks.value(), []);
for (let blockIndex = 0; blockIndex < blocks.length; blockIndex++) {
if (blocks[blockIndex] === null) {
changed = true;
Expand All @@ -192,7 +192,7 @@ let checkForNullBlocks = function(ui, context) {

let filterBlocks = function(ui, context) {
let changed = false;
let blocks = context.cloneArray(ui.blocks.value(), []);
let blocks = context.clone(ui.blocks.value(), []);

let prevBlocks = context.workspace["blocks"];

Expand Down

0 comments on commit 946431c

Please sign in to comment.