added timeout back to filter out accidental double clicks
slightly changed when clicks are published