from otree.api import Currency as c, currency_range from ._builtin import Page, WaitPage from .models import Constants class CompanyInfo(Page): form_model = 'player' form_fields = [ 'best_desc', 'lab_exp', 'total_employees'] class Employeeinfo(Page): def before_next_page(self): if self.request.POST.get('back'): if self.request.POST.get('back')[0] == '1': self._is_frozen = False self._index_in_pages -= 2 self.participant._index_in_pages -= 2 form_model = 'player' form_fields =['role', 'other_role', 'rltshp', 'year_employed', 'salary',] class copattendance(Page): def before_next_page(self): if self.request.POST.get('back'): if self.request.POST.get('back')[0] == '1': self._is_frozen = False self._index_in_pages -= 2 self.participant._index_in_pages -= 2 def error_message(self, values): print('values is', values) if values["first_year"] < values["year_compjoined"]: return 'It seems your company sent a representative before it joined the CoP. Please fix the error' form_model = 'player' form_fields = ['year_compjoined', 'month_compjoined' , 'first_year', 'first_month', 'first_time', 'copfreq', 'other_attendee', ] class interactions(Page): def before_next_page(self): if self.request.POST.get('back'): if self.request.POST.get('back')[0] == '1': self._is_frozen = False self._index_in_pages -= 2 self.participant._index_in_pages -= 2 form_model = 'player' form_fields = ['people_known', 'inter_people', 'interact_1', 'interact_2'] class assistance(Page): def before_next_page(self): if self.request.POST.get('back'): if self.request.POST.get('back')[0] == '1': self._is_frozen = False self._index_in_pages -= 2 self.participant._index_in_pages -= 2 form_model = 'player' form_fields =['ta_applied', 'ta_granted', 'fa_applied', 'fa_granted'] class gain(Page): def before_next_page(self): if self.request.POST.get('back'): if self.request.POST.get('back')[0] == '1': self._is_frozen = False self._index_in_pages -= 2 self.participant._index_in_pages -= 2 form_model ='player' form_fields =['gain_1', 'gain_2', 'gain_3', 'risk_prep', 'risk_degree' ] class moregain(Page): def before_next_page(self): if self.request.POST.get('back'): if self.request.POST.get('back')[0] == '1': self._is_frozen = False self._index_in_pages -= 2 self.participant._index_in_pages -= 2 form_model ='player' form_fields =['learn', 'other_org', 'reason_attended', 'benefits'] class didyou(Page): def before_next_page(self): if self.request.POST.get('back'): if self.request.POST.get('back')[0] == '1': self._is_frozen = False self._index_in_pages -= 2 self.participant._index_in_pages -= 2 form_model ='player' form_fields =['inputs_purch', 'sale_prod', 'tech_supp', 'mentorship', 'mgt_prac', 'produc_tech'] page_sequence = [ CompanyInfo, Employeeinfo, copattendance, interactions, didyou, assistance, moregain, gain ]