Send a list of course slugs that the user has taken in the `courses` param separated by a comma.
This allows users to declare which courses they have taken the first time they log into the lockout website (honour system).
Operation can only be done once. Returns the number of courses added.
Example request:
```
curl -X PUT -H "Authorization: Token 9944b09199c62bcf9418ad846dd0e4bbdfc6ee4b" -d courses=wood-1,wood-2,metal-mig http://tools-auth.protospace.ca/select-courses/
```
Example response:
```
{"updated":3}
```
### For lockout admins
Ensure images are square and 1280x1280 px large. Slugs should be lowercase and one word (replace spaces with hyphens).
@ -190,6 +248,14 @@ Get a specific category, modify or delete an existing one.
Note: you can only delete a category that has no tools.
#### GET, POST `/course/`
Get a list of courses, or post a new course to the database.
#### GET, PUT, DELETE `/course/[slug]/`
Get a specific course, modify or delete an existing one.
#### GET `/profile/`
Get a list of all profiles.
@ -200,6 +266,14 @@ Get a specific profile, or modify an existing one.
Here you can authorize users on tools or make them another lockout admin.
#### GET, POST `/firmware/`
Get a version of the firmware, or post a new one to the database.
Select which group of tools to deploy the new firmware version to, then upload a firmware .bin file. The version number is extracted from the binary data and must be unique.
Updating firmware objects is not allowed. To assign a new tool to a firmware version, go through the tool object.
#### PUT `/update-cards/`
Send a dictionary of username=card_number,card_number,card_number pairs to update any profiles already in the system. Users not already registered will be ignored.