from otree.api import Currency as c, currency_range from . import models from ._builtin import Page, WaitPage from .models import Constants from django.http.response import HttpResponseRedirect def vars_for_all_templates(self): """ get variables from session configs level """ return { 'fee': c(self.session.config['participation_fee']), 'fixed_bonus': c(self.session.config['fixed_bonus']), 'partial_fixed_bonus': c(self.session.config['partial_fixed_bonus']), 'total_fixed_payment': c(self.session.config['fixed_bonus'] + self.session.config['participation_fee']), 'correct_bonus': c(self.participant.vars['correct_bonus']), 'total_payment': c(self.player.payoff) } class FinishedTasks(Page): def before_next_page(self): self.player.set_payoff() def is_displayed(self): return self.participant.vars['consent'] class PayoffandGoodbye(Page): def is_displayed(self): return self.participant.vars['consent'] def vars_for_template(self): return { 'rhs': c(self.player.participant.vars['rhs']) , 'min': c(self.player.participant.vars['pay_min']) , 'max': c(self.player.participant.vars['pay_max']) , 'lottery_pay': c(self.player.participant.vars['lottery_pay']), 'select_pay': self.player.participant.vars['pay'] } def js_vars(self): return{ 'left': self.player.participant.vars['pay_left'] } class ToProlific(Page): def is_displayed(self): return self.participant.vars['consent'] page_sequence = [ FinishedTasks, PayoffandGoodbye, ToProlific ]