Implement OnDesk purchase process and extend checkin system

- [x] On desk purchase process
- [x] Purchase detail view
- [x] Change purchase state
- [x] Download invoice
- [x] Update ticket
- [x] Download badge
- [x] Link ticket actions (cancel, edit) from purchase detail view