diff --git a/server/firstrun.coffee b/server/firstrun.coffee index 255d618..509ace2 100644 --- a/server/firstrun.coffee +++ b/server/firstrun.coffee @@ -123,21 +123,33 @@ Meteor.startup -> Meteor._debug "Set up group size assigner" -# Load gold standard data if it exists -pabloGoldStandard = "groundtruth-pablo" +Meteor.methods + "cm-delete-world-data": (worldId) -> + TurkServer.checkAdmin() -Meteor.startup -> - return if Experiments.findOne(pabloGoldStandard)? - result = JSON.parse Assets.getText("#{pabloGoldStandard}.json") + if Experiments.remove(worldId) + Partitioner.bindGroup worldId, -> + Events.remove({}) + Datastream.remove({}) + + return - Experiments.upsert(pabloGoldStandard, {}) +# Load gold standard data if it exists +tryImport = (worldName) -> + return if Experiments.findOne(worldName)? + result = JSON.parse Assets.getText("#{worldName}.json") + + Experiments.upsert({worldName}, $set: { treatments: [ "editable" ] }) for event in result.events - event._groupId = pabloGoldStandard + event._groupId = worldName Events.direct.insert(event) for data in result.datastream - data._groupId = pabloGoldStandard + data._groupId = worldName Datastream.direct.insert(data) - console.log "Imported gold standard data; events: #{result.events.length}, datastream: #{result.datastream.length}" + console.log "Imported #{worldName}; events: #{result.events.length}, datastream: #{result.datastream.length}" + +Meteor.startup -> tryImport("groundtruth-pablo") +Meteor.startup -> tryImport("sbtf-pablo")