Skip to content

Instantly share code, notes, and snippets.

@davetannenbaum
Last active March 8, 2020 17:34
Show Gist options
  • Save davetannenbaum/ba3aa63440cbba2fbf90 to your computer and use it in GitHub Desktop.
Save davetannenbaum/ba3aa63440cbba2fbf90 to your computer and use it in GitHub Desktop.
Qualtrics.SurveyEngine.addOnload(function()
{
// Assigning subjects to either Heads or Tails focus
var coin = _.sample([{
side1:"Heads",
side2:"Tails"
},
{
side1: "Tails",
side2: "Heads"
}]);
// Assigning values to each incentive level
var incentive0 = [{
amount: "nothing ($0.00)",
total: "NOT earn any money",
heads: "$0.00",
tails: "$0.00",
honestamount: "$0.00",
dishonestamount: "$0.00"
}];
if (coin.side1 === "Heads") {
incentive10 = [{
amount: "$0.10",
total: "earn up to $1.00",
heads: "$0.10",
tails: "$0.00",
honestamount: "$0.50",
dishonestamount: "$0.80"
}];
incentive100 = [{
amount: "$1.00",
total: "earn up to $10.00",
heads: "$1.00",
tails: "$0.00",
honestamount: "$5.00",
dishonestamount: "$8.00"
}];
} else {
incentive10 = [{
amount: "$0.10",
total: "earn up to $1.00",
heads: "$0.00",
tails: "$0.10",
honestamount: "$0.50",
dishonestamount: "$0.80"
}];
incentive100 = [{
amount: "$1.00",
total: "earn up to $10.00",
heads: "$0.00",
tails: "$1.00",
honestamount: "$5.00",
dishonestamount: "$8.00"
}];
};
// Randomizing order of blocks
var orderx = _.shuffle([incentive0,incentive10,incentive100]);
// Setting embedded data in Qualtrics
Qualtrics.SurveyEngine.setEmbeddedData('CoinReward', coin.side1);
Qualtrics.SurveyEngine.setEmbeddedData('CoinNull', coin.side2);
Qualtrics.SurveyEngine.setEmbeddedData('Task', _.sample(["prediction", "behavior"]));
Qualtrics.SurveyEngine.setEmbeddedData('Incentive1', _.pluck(orderx[0], "amount"));
Qualtrics.SurveyEngine.setEmbeddedData('Total1', _.pluck(orderx[0], "total"));
Qualtrics.SurveyEngine.setEmbeddedData('Heads1', _.pluck(orderx[0], "heads"));
Qualtrics.SurveyEngine.setEmbeddedData('Tails1', _.pluck(orderx[0], "tails"));
Qualtrics.SurveyEngine.setEmbeddedData('HonestAmount1', _.pluck(orderx[0], "honestamount"));
Qualtrics.SurveyEngine.setEmbeddedData('DishonestAmount1', _.pluck(orderx[0], "dishonestamount"));
Qualtrics.SurveyEngine.setEmbeddedData('Incentive2', _.pluck(orderx[1], "amount"));
Qualtrics.SurveyEngine.setEmbeddedData('Total2', _.pluck(orderx[1], "total"));
Qualtrics.SurveyEngine.setEmbeddedData('Heads2', _.pluck(orderx[1], "heads"));
Qualtrics.SurveyEngine.setEmbeddedData('Tails2', _.pluck(orderx[1], "tails"));
Qualtrics.SurveyEngine.setEmbeddedData('HonestAmount2', _.pluck(orderx[1], "honestamount"));
Qualtrics.SurveyEngine.setEmbeddedData('DishonestAmount2', _.pluck(orderx[1], "dishonestamount"));
Qualtrics.SurveyEngine.setEmbeddedData('Incentive3', _.pluck(orderx[2], "amount"));
Qualtrics.SurveyEngine.setEmbeddedData('Total3', _.pluck(orderx[2], "total"));
Qualtrics.SurveyEngine.setEmbeddedData('Heads3', _.pluck(orderx[2], "heads"));
Qualtrics.SurveyEngine.setEmbeddedData('Tails3', _.pluck(orderx[2], "tails"));
Qualtrics.SurveyEngine.setEmbeddedData('HonestAmount3', _.pluck(orderx[2], "honestamount"));
Qualtrics.SurveyEngine.setEmbeddedData('DishonestAmount3', _.pluck(orderx[2], "dishonestamount"));
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment