def add_experiment_template(request): '''add_experiment_template View for presenting available experiments to user (from expfactory-experiements repo) ''' experiment_selection = get_experiment_selection() current_experiments = ExperimentTemplate.objects.all() tags = [e.exp_id for e in current_experiments] newexperiments = [e for e in experiment_selection if e["exp_id"] not in tags] context = {"newexperiments": newexperiments, "experiments": current_experiments} return render(request, "add_experiment_template.html", context)
def add_new_template(request,template_type): '''add_new_template View for installing new survey, game, or experiment ''' new_selection = get_experiment_selection(template_type) template = "%s/add_%s_template.html" %(template_type,template_type[:-1]) current_experiments = ExperimentTemplate.objects.all() tags = [e.exp_id for e in current_experiments] newselection = [e for e in new_selection if e["exp_id"] not in tags] context = {"newtemplates": newselection, "experiments": current_experiments} return render(request, template, context)
def add_new_template(request, template_type): '''add_new_template View for installing new survey, game, or experiment ''' new_selection = get_experiment_selection(template_type) template = "%s/add_%s_template.html" % (template_type, template_type[:-1]) current_experiments = ExperimentTemplate.objects.all() tags = [e.exp_id for e in current_experiments] newselection = [e for e in new_selection if e["exp_id"] not in tags] context = { "newtemplates": newselection, "experiments": current_experiments } return render(request, template, context)
def save_new_template(request,template_type): '''save_new_template view for actually adding new surveys, experiments, or games (files, etc) to application and database ''' newtemplates = request.POST.keys() new_selection = get_experiment_selection(template_type) selected_experiments = [e["exp_id"] for e in new_selection if e["exp_id"] in newtemplates] errored = install_experiments(experiment_tags=selected_experiments,repo_type=template_type) if len(errored) > 0: message = "The %s %s did not install successfully." %(template_type,",".join(errored)) else: message = "%s installed successfully." %(template_type) experiments = ExperimentTemplate.objects.all() context = {"experiments":experiments, "message":message} return render(request, "experiments/all_experiments.html", context)
def save_experiment_template(request): '''save_experiments template view for actually adding new experiments (files, etc) to application and database ''' newexperiments = request.POST.keys() experiment_selection = get_experiment_selection() selected_experiments = [e["exp_id"] for e in experiment_selection if e["exp_id"] in newexperiments] errored_experiments = install_experiments(experiment_tags=selected_experiments) if len(errored_experiments) > 0: message = "The experiments %s did not install successfully." %(",".join(errored_experiments)) else: message = "Experiments installed successfully." experiments = ExperimentTemplate.objects.all() context = {"experiments":experiments, "message":message} return render(request, "all_experiments.html", context)
def save_new_template(request, template_type): '''save_new_template view for actually adding new surveys, experiments, or games (files, etc) to application and database ''' newtemplates = request.POST.keys() new_selection = get_experiment_selection(template_type) selected_experiments = [ e["exp_id"] for e in new_selection if e["exp_id"] in newtemplates ] errored = install_experiments(experiment_tags=selected_experiments, repo_type=template_type) if len(errored) > 0: message = "The %s %s did not install successfully." % ( template_type, ",".join(errored)) else: message = "%s installed successfully." % (template_type) experiments = ExperimentTemplate.objects.all() context = {"experiments": experiments, "message": message} return render(request, "experiments/all_experiments.html", context)