forgejo-tickets/docs/user-guide.md

85 lines
3.4 KiB
Markdown

# User Guide
## Registration
### Email/Password
1. Navigate to `/register`.
2. Enter your name, email address, and a password (minimum 8 characters).
3. Confirm your password and submit.
4. Check your email for a verification link. The link expires in 24 hours.
5. Click the verification link to activate your account.
6. You can now log in at `/login`.
### OAuth (Social Login)
You can register and log in using a third-party provider if configured by the administrator:
- **Google** — Click "Sign in with Google" on the login page.
- **Microsoft** — Click "Sign in with Microsoft" on the login page.
- **Apple** — Click "Sign in with Apple" on the login page.
OAuth login automatically creates your account (if it doesn't exist) and marks your email as verified. If an account with your email already exists, the OAuth provider is linked to it.
## Login
Navigate to `/login` and enter your email and password, or use one of the OAuth providers. You must verify your email before logging in with a password.
After logging in, you are redirected to the ticket list.
## Logout
Click "Logout" in the navigation. This destroys your session and redirects you to the home page.
## Password Reset
1. Go to `/forgot-password`.
2. Enter your email address and submit.
3. If an account exists with that email, a reset link is sent. The link expires in 1 hour.
4. Click the reset link in the email.
5. Enter a new password (minimum 8 characters) and confirm it.
6. You can now log in with the new password.
The reset form displays a generic success message regardless of whether the email exists, to prevent account enumeration.
## Tickets
### Creating a Ticket
1. Navigate to `/tickets/new` (or click "New Ticket").
2. Select a product from the dropdown (these correspond to repos configured by the admin).
3. Enter a title and description.
4. Submit the form.
After creation, you are redirected to the ticket detail page. The ticket is also asynchronously created as an issue in the corresponding Forgejo repository. See [Forgejo Integration](./forgejo-integration.md) for how this sync works.
### Viewing Your Tickets
Navigate to `/tickets` to see all your tickets, ordered by most recent first (up to 50). Each ticket shows its title, associated product, status, and creation date.
### Ticket Detail
Click a ticket to see its full details including description, status, associated product, and the conversation thread. Only you can see your own tickets.
### Adding Comments
On the ticket detail page, type a comment in the text area and submit. Comments are displayed in chronological order. If the ticket is linked to a Forgejo issue, comments are also synced to the issue asynchronously.
### Ticket Statuses
- **Open** — Newly created, awaiting response.
- **In Progress** — Being worked on by the team.
- **Closed** — Resolved. You'll receive an email notification when a ticket is closed.
You cannot change ticket status yourself — it is managed by administrators or updated automatically when the linked Forgejo issue is closed.
## Email Notifications
You may receive the following emails:
| Email | When |
|-------|------|
| Verification | After registration — contains a link to verify your email |
| Password Reset | After requesting a password reset — contains a link to set a new password |
| Ticket Closed | When your ticket's status changes to closed (e.g. via Forgejo webhook) |