     @initializeSliderPresets()
     @initializeUsernameInput()
     @updateCostDisplay()
-
-    $(document).on 'turbolinks:before-cache', =>
-      @el.dataset.cardHtml = @currentUser.cardHtml
+    @setUserInteraction(@user?.userId)
 
 
   initializeSlider: =>

      return @setUserInteraction(false)

    if @user
      @el.querySelector('input[name="item[extra_data][target_id]"]').value = @user.userId
      @usercard.innerHTML = @user.cardHtml
      reactTurbolinks.boot()
    else
      @el.querySelector('input[name="item[extra_data][target_id]"]').value = null

    @setUserInteraction(@user?.userId)


    @discountElement = @el.querySelector('.js-discount')
    @slider = @el.querySelector('.js-slider')
    @sliderPresets = @el.querySelectorAll('.js-slider-preset')
    @targetIdElement = @el.querySelector('input[name="item[extra_data][target_id]"]')
    @usernameInput = @el.querySelector('.js-username-input')
    @usercard = @el.querySelector('.js-avatar')

    @user =
      userId: @targetIdElement.value

    @currentUser =
      userId: @el.dataset.userId
      username: @el.dataset.username
      cardHtml: @el.dataset.cardHtml ? @usercard.innerHTML
    # save/restore current user card html
    $(document).on 'turbolinks:before-cache', =>
      @el.dataset.cardHtml = @currentUser.cardHtml

    delete @el.dataset.cardHtml

