I am designing an application where I can share a call plan with friends and family. For this I have a requirement to provide actions to block a user from using a product and also to delete a user from said product.

Blocking a user means:

  • If I am blocked from the service, the account holder will still be able to see my details, however I won’t be able to use the service until the account holder unblocks me.

Deleting a user means:

  • If I am deleted from the service, I will be deleted from the records, however I will be able to resign in to the service.

I am struggling with this. How can I clearly differentiate these two actions?


I think that these actions have something in common, so I think you may put them under the "Revoke access" action with details hidden behind the confirmation dialog. It will not only limit the number of actions visible on the page (and it will be easy to use) but also make the difference more clear:

Example of how it may look like

And in a case user was already blocked there will be two different options at her profile page, saying something like, "User has been blocked: 'Restore access' or 'Remove user permanently'?" with own confirmations, explaining the procedure.


How you actually implement this will depend on your UI, but assuming that you have a list of users under each service you could do something like this:


download bmml source – Wireframes created with Balsamiq Mockups

Or have a check box by each name and a single "Block" and "Delete" button that act on all checked items:


download bmml source

While the end result may well be the same - you won't be able to use the service - the actions are in fact different.

  • Hi Chris,Thanks for your reply. The last option might work for my needs. Because the problem is that I cant save actions independently and all changes on the system have to be done on 1 interaction only. As an example: If I want to edit call restrictions for user A and want to block user B and Delete user C. I can only send one one order into the system. – Nuno Viegas May 4 '12 at 15:21
  • @NunoViegas - you might need to store the changes in memory and then have a final "submit" button to commit all the changes. – ChrisF May 4 '12 at 15:24

To differentiate actions, i would use icons (trash, ban).

To offer multiple operations per interaction, alter the table grid in a way that every row has its own operation buttons (like fig. 1), which change state when selected. Then add a primary + secondary action at the top and bottom of the grid (apply, reset).

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.