oTree Forum >

{{back_button}} conflicts with is_displayed

#1 by somas

Say we have three pages:
[ A, B, C]

B is not displayed for a player, so they go A -> B[skipped] -> C

In C, the player clicks the back button

What should happen: C-> B[skipped] -> A
What actually happens: C-> B[skipped] -> C

I see this was contemplated at some point (there's a comment in the code:
# what about if previous page has is_displayed=False?
), but was not addressed

#2 by Chris_oTree

Thank you for raising this. I think I will address it in a future update that allows skipping multiple pages for a variety of use cases, e.g.:

// javascript
back_button({a: 1, b: 2})


@static
def back_button_method(player, data):
    if player.foo or data['foo']:
        return Introduction
    ...

In the meanwhile maybe I should raise an error if this is_displayed thing happens...

Write a reply

Set forum username