replace using user state by using a hidden field
V2.4 finished refactoring. Ok J15 and J25.