anchor.diff:            if !slider.has_moved then 'Slide Your Overall Opinion' else "You #{stance_names[segment]}"
   
   
  -        DIV 
  -          className: 'the_handle'
  -          onMouseUp: @handleMouseUp
  -          onMouseDown: @handleMouseDown
  -          onTouchStart: @handleMouseDown
  -          onTouchMove: @handleMouseMove
  -          onTouchEnd: @handleMouseUp
  -          onTouchCancel: @handleMouseUp
  -          style: handle_style
  -
  -          if page == 'crafting'
  -            DIV className: 'face',            
  +        if can_opine in [Permission.PERMITTED, Permission.UNVERIFIED_EMAIL, Permission.NOT_LOGGED_IN] || (can_opine == Permission.DISABLED && your_opinion.published)
  +
  +          [DIV 
  +            className: 'the_handle'
  +            onMouseUp: @handleMouseUp
  +            onMouseDown: @handleMouseDown
  +            onTouchStart: @handleMouseDown
  +            onTouchMove: @handleMouseMove
  +            onTouchEnd: @handleMouseUp
  +            onTouchCancel: @handleMouseUp
  +            style: handle_style
  +
  +            if page == 'crafting'
  +              DIV className: 'face',            
  +                DIV 
  +                  className: 'face_mouth'
  +                  style: face_mouth_style
  +                DIV 
  +                  className: 'face_eye'
  +                  style: _.extend {}, eye_style,
  +                    left: 6
  +                DIV 
  +                  className: 'face_eye'
  +                  style: _.extend {}, eye_style,
  +                    right: 6
  +
  +            if page == 'crafting' && !slider.has_moved
  +              [DIV 
  +                className: 'drag_arrow'
  +                style: 
  +                  right: -15
  +                  position: 'absolute'
  +                  top: 3
  +                  color: considerit_blue
  +                  fontSize: 12              
  +                '>' 
                 DIV 
  -                className: 'face_mouth'
  -                style: face_mouth_style
  -              DIV 
  -                className: 'face_eye'
  -                style: _.extend {}, eye_style,
  -                  left: 6
  -              DIV 
  -                className: 'face_eye'
  -                style: _.extend {}, eye_style,
  -                  right: 6
  -
  -          if page == 'crafting' && !slider.has_moved
  -            [DIV 
  -              className: 'drag_arrow'
  -              style: 
  -                right: -15
  -                position: 'absolute'
  -                top: 3
  -                color: considerit_blue
  -                fontSize: 12              
  -              '>' 
  -            DIV 
  -              className: 'drag_arrow'
  -              style: 
  -                left: -15
  -                position: 'absolute'
  -                top: 3
  -                color: considerit_blue
  -                fontSize: 12                
  -              '<']
  -
  -        if can_opine != Permission.INSUFFICIENT_PRIVILEGES
  +                className: 'drag_arrow'
  +                style: 
  +                  left: -15
  +                  position: 'absolute'
  +                  top: 3
  +                  color: considerit_blue
  +                  fontSize: 12                
  +                '<']
  +
             IMG className:'bubblemouth', src: bubblemouth_src, style: bubblemouth_style
  +          ]
   
   styles += """
   #{css.grab_cursor('.the_handle')}
  
positive.code:         slider.has_moved = true
        save(slider)
  
  
      page = @root.proposal_mode
      sticky = fetch('decisionboard').sticky
      stance = slider.stance
  
negative.code:     #TODO: Manage proposal_mode {crafting/results} with client state on the proposal.
      #      Right now activeREST doesn't allow wide consumption of a component's client state
      #      if its data is synced with the server. 
  
  
      root.proposal_mode = 'crafting'
      root.selected_point = null
      if params 
  