Metadata-Version: 2.4
Name: aa-pootest
Version: 0.2.0
Summary: POO Test plugin app for Alliance Auth.
Author: PooAmped
Requires-Python: >=3.10
Description-Content-Type: text/markdown
Classifier: Environment :: Web Environment
Classifier: Framework :: Django
Classifier: Framework :: Django :: 5.2
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Topic :: Internet :: WWW/HTTP
Classifier: Topic :: Internet :: WWW/HTTP :: Dynamic Content
License-File: LICENSE
Requires-Dist: allianceauth>=5
Requires-Dist: django-esi>=9.4
Requires-Dist: coverage ; extra == "test"
Requires-Dist: factory_boy ; extra == "test"
Requires-Dist: allianceauth-app-utils>=1.32 ; extra == "test"
Project-URL: Homepage, https://github.com/PooAmped/aa-pootest
Project-URL: Source, https://github.com/PooAmped/aa-pootest
Project-URL: Tracker, https://github.com/PooAmped/aa-pootest/issues
Provides-Extra: test

# aa-pootest

A minimal **test plugin** for [Alliance Auth](https://gitlab.com/allianceauth/allianceauth) (AA).

It adds a single permission-gated page ("POO Test") to the AA sidebar that renders
a *Hello, World!* card. Use it to verify your AA dev/prod setup can install and load
a custom plugin, or as a starting point for your own app.

![License](https://img.shields.io/badge/license-MIT-green)

- **Distribution (pip) name:** `aa-pootest`
- **Django app / module name:** `pootest`

## Features

- Fully functional Alliance Auth app with a view and a basic permission
- Sidebar menu entry (visible only to users with the access permission)
- **Pulls the list of structures owned by a corporation from ESI and lists them
  one per line**
- Installable with the standard AA plugin workflow

## Installation

> Run all commands inside your Alliance Auth virtual environment.

### 1. Install the package

From a local checkout (editable, for development):

```bash
pip install -e aa-pootest
```

Or from a built/published package:

```bash
pip install aa-pootest
```

Or directly from git:

```bash
pip install git+https://github.com/PooAmped/aa-pootest
```

### 2. Enable the app

Add the app's **module name** to `INSTALLED_APPS` in `myauth/settings/local.py`:

```python
INSTALLED_APPS += [
    "pootest",
]
```

### 3. Run migrations & collect static files

```bash
python manage.py migrate
python manage.py collectstatic --noinput
```

### 4. Restart Alliance Auth

```bash
supervisorctl restart myauth:
```

### 5. Grant access

In the AA admin site, grant the permission
`pootest | general | Can access this app` to the relevant **state** or **group**.
Users with that permission will then see the **POO Test** entry in the sidebar.

## Usage: list corporation structures

Open **POO Test** in the sidebar and click **View Corporation Structures**.

1. You'll be sent through EVE SSO to authorize a character. The character used
   **must hold the Director or Station Manager role** in the corporation you want
   to read — ESI enforces this server-side.
2. The required ESI scopes are requested automatically:
   - `esi-corporations.read_structures.v1` — read the corporation's structures
   - `esi-universe.read_structures.v1` — resolve structure names
3. The page then lists every structure owned by that character's corporation,
   **one structure per line**.

If the character is not a Director / Station Manager (or the scopes were not
granted), the page shows a warning instead of a list.

## Settings

| Name                 | Description           | Default |
| -------------------- | --------------------- | ------- |
| `POOTEST_SETTING_ONE`| Example optional value| `None`  |

Override in `myauth/settings/local.py` if desired.

## License

MIT — see [LICENSE](LICENSE).

