refactored details button, etc