# FortunaISK (Beta)
A lottery module for [Alliance Auth](https://allianceauth.org/) to organize, manage, and track community lotteries effortlessly. This module integrates seamlessly with Alliance Auth and its ecosystem, automating lottery creation, management, and winner selection.
______________________________________________________________________
## Feedback Welcome
**This module is currently in beta testing.** Your feedback, ideas for improvements, and suggestions are highly valued. Feel free to reach out with any insights or recommendations!
______________________________________________________________________
## Features
- **Ticket Handling**: Accepts and validates ticket purchases.
- **Payment Processing**: Automates payment verification and tracks anomalies.
- **Winner Selection**: Randomly selects winners using pre-defined criteria.
- **Lottery History**: Provides a detailed history of past lotteries and winners.
- **Recurring Lotteries**: Supports automated creation of recurring lotteries.
- **Administrative Tools**:
- Anomaly resolution for mismatched transactions.
- Prize distribution tracking.
- Comprehensive admin dashboard for statistics and management.
- **Notifications**:
- Discord notifications for major events like lottery completion or anomalies.
- Alliance Auth notifications for users about ticket status and winnings.
______________________________________________________________________
## Future Developments
- **Compatibility with Memberaudit and CorpTools**: Provide support for both Memberaudit and CorpTools, allowing users to integrate **FortunaISK** with either member management tool based on their preference.
- **Bulk Ticket Purchases**: Enable users to purchase multiple tickets in a single transaction, streamlining the purchasing process and improving user experience.
- **Prized Lotteries**: Enhance the current lottery system by allowing administrators to offer tangible prizes instead of solely distributing the total ticket revenue. This will provide more diverse reward options and increase participant engagement.
______________________________________________________________________
## Prerequisites
- [Alliance Auth](https://allianceauth.readthedocs.io/en/v4.5.0/) >=V4
- [Alliance Auth Corp Tools](https://github.com/pvyParts/allianceauth-corp-tools)
- Django Celery and Django Celery Beat for task scheduling.
______________________________________________________________________
## Installation
### Step 1 - Install app
```bash
pip install fortunaisk
```
### Step 2 - Configure Auth settings
Add `'fortunaisk'` to your `INSTALLED_APPS` in `local.py`:
### Step 3 - Maintain Alliance Auth
- Run migrations:
```bash
python manage.py makemigrations
python manage.py migrate
```
- Restart Auth:
```bash
supervisorctl restart all
```
### Step 4 - Configure tasks
Run the following management command to set up periodic tasks:
```bash
python manage.py setup_fortuna_tasks
```
### Step 5 - Configure Webhooks
Visit the following URL to configure Discord webhooks:
```
AUTH_ADDRESS/admin/fortunaisk/webhookconfiguration/
```
______________________________________________________________________
## Permissions
| **Permission** | **Description** |
| -------------------------------- | ------------------------------------------------------------------------------ |
| `fortunaisk.can_access_this_app` | Allows access to the user's personal dashboard and viewing their winnings. |
| `fortunaisk.can_admin_this_app` | Grants full administrative rights to manage lotteries, resolve anomalies, etc. |
______________________________________________________________________
## Usage
### User Features
- **Active Lotteries**: Users can view and participate in ongoing lotteries.
- **Personal Dashboard**: View purchased tickets and winnings.
- **Lottery History**: Access records of past lotteries and their outcomes.
### Admin Features
- **Create Lotteries**: Set ticket prices, duration, winner count, and prize distribution.
- **Manage Recurring Lotteries**: Activate or deactivate automated lotteries.
- **Monitor Participants**: View ticket purchases and participant details.
- **Resolve Anomalies**: Identify and correct mismatches in ticket purchases or payments.
______________________________________________________________________
## Contributing
Contributions are welcome! To report an issue or propose a feature:
1. Fork this repository.
1. Create a branch for your feature or fix:
```bash
git checkout -b feature/your-feature-name
```
1. Submit a pull request.
______________________________________________________________________
## Update
### Step 1 - Update app
```bash
pip install -U fortunaisk
```
### Step 2 - Maintain Alliance Auth
- Run migrations:
```bash
python manage.py makemigrations
python manage.py migrate
```
- Restart Auth:
```bash
supervisorctl restart all
```
______________________________________________________________________
## License
This project is licensed under the MIT License. See the [LICENSE](LICENSE) file for details.
______________________________________________________________________
Thank you for using **FortunaISK**! For questions or feedback, feel free to open an issue or contact the maintainer.
Raw data
{
"_id": null,
"home_page": null,
"name": "fortunaisk",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.8",
"maintainer_email": null,
"keywords": "allianceauth, eveonline, fortunaisk",
"author": null,
"author_email": "erka Ekanon <erkaekanon@outlook.com>",
"download_url": "https://files.pythonhosted.org/packages/a5/ad/a692cc597c6e355c43b864adbc1ea83781a04efe74009c3a526e9786b0f1/fortunaisk-0.2.36.tar.gz",
"platform": null,
"description": "# FortunaISK (Beta)\n\nA lottery module for [Alliance Auth](https://allianceauth.org/) to organize, manage, and track community lotteries effortlessly. This module integrates seamlessly with Alliance Auth and its ecosystem, automating lottery creation, management, and winner selection.\n\n______________________________________________________________________\n\n## Feedback Welcome\n\n**This module is currently in beta testing.** Your feedback, ideas for improvements, and suggestions are highly valued. Feel free to reach out with any insights or recommendations!\n\n______________________________________________________________________\n\n## Features\n\n- **Ticket Handling**: Accepts and validates ticket purchases.\n- **Payment Processing**: Automates payment verification and tracks anomalies.\n- **Winner Selection**: Randomly selects winners using pre-defined criteria.\n- **Lottery History**: Provides a detailed history of past lotteries and winners.\n- **Recurring Lotteries**: Supports automated creation of recurring lotteries.\n- **Administrative Tools**:\n - Anomaly resolution for mismatched transactions.\n - Prize distribution tracking.\n - Comprehensive admin dashboard for statistics and management.\n- **Notifications**:\n - Discord notifications for major events like lottery completion or anomalies.\n - Alliance Auth notifications for users about ticket status and winnings.\n\n______________________________________________________________________\n\n## Future Developments\n\n- **Compatibility with Memberaudit and CorpTools**: Provide support for both Memberaudit and CorpTools, allowing users to integrate **FortunaISK** with either member management tool based on their preference.\n\n- **Bulk Ticket Purchases**: Enable users to purchase multiple tickets in a single transaction, streamlining the purchasing process and improving user experience.\n\n- **Prized Lotteries**: Enhance the current lottery system by allowing administrators to offer tangible prizes instead of solely distributing the total ticket revenue. This will provide more diverse reward options and increase participant engagement.\n\n______________________________________________________________________\n\n## Prerequisites\n\n- [Alliance Auth](https://allianceauth.readthedocs.io/en/v4.5.0/) >=V4\n- [Alliance Auth Corp Tools](https://github.com/pvyParts/allianceauth-corp-tools)\n- Django Celery and Django Celery Beat for task scheduling.\n\n______________________________________________________________________\n\n## Installation\n\n### Step 1 - Install app\n\n```bash\npip install fortunaisk\n```\n\n### Step 2 - Configure Auth settings\n\nAdd `'fortunaisk'` to your `INSTALLED_APPS` in `local.py`:\n\n### Step 3 - Maintain Alliance Auth\n\n- Run migrations:\n\n ```bash\n python manage.py makemigrations\n python manage.py migrate\n ```\n\n- Restart Auth:\n\n ```bash\n supervisorctl restart all\n ```\n\n### Step 4 - Configure tasks\n\nRun the following management command to set up periodic tasks:\n\n```bash\npython manage.py setup_fortuna_tasks\n```\n\n### Step 5 - Configure Webhooks\n\nVisit the following URL to configure Discord webhooks:\n\n```\nAUTH_ADDRESS/admin/fortunaisk/webhookconfiguration/\n```\n\n______________________________________________________________________\n\n## Permissions\n\n| **Permission** | **Description** |\n| -------------------------------- | ------------------------------------------------------------------------------ |\n| `fortunaisk.can_access_this_app` | Allows access to the user's personal dashboard and viewing their winnings. |\n| `fortunaisk.can_admin_this_app` | Grants full administrative rights to manage lotteries, resolve anomalies, etc. |\n\n______________________________________________________________________\n\n## Usage\n\n### User Features\n\n- **Active Lotteries**: Users can view and participate in ongoing lotteries.\n- **Personal Dashboard**: View purchased tickets and winnings.\n- **Lottery History**: Access records of past lotteries and their outcomes.\n\n### Admin Features\n\n- **Create Lotteries**: Set ticket prices, duration, winner count, and prize distribution.\n- **Manage Recurring Lotteries**: Activate or deactivate automated lotteries.\n- **Monitor Participants**: View ticket purchases and participant details.\n- **Resolve Anomalies**: Identify and correct mismatches in ticket purchases or payments.\n\n______________________________________________________________________\n\n## Contributing\n\nContributions are welcome! To report an issue or propose a feature:\n\n1. Fork this repository.\n\n1. Create a branch for your feature or fix:\n\n ```bash\n git checkout -b feature/your-feature-name\n ```\n\n1. Submit a pull request.\n\n______________________________________________________________________\n\n## Update\n\n### Step 1 - Update app\n\n```bash\npip install -U fortunaisk\n```\n\n### Step 2 - Maintain Alliance Auth\n\n- Run migrations:\n\n ```bash\n python manage.py makemigrations\n python manage.py migrate\n ```\n\n- Restart Auth:\n\n ```bash\n supervisorctl restart all\n ```\n\n______________________________________________________________________\n\n## License\n\nThis project is licensed under the MIT License. See the [LICENSE](LICENSE) file for details.\n\n______________________________________________________________________\n\nThank you for using **FortunaISK**! For questions or feedback, feel free to open an issue or contact the maintainer.\n\n",
"bugtrack_url": null,
"license": null,
"summary": "fortunaisk Plugin for Alliance Auth",
"version": "0.2.36",
"project_urls": {
"Home": "https://github.com/Erkaek/aa-fortunaisk",
"Source": "https://github.com/Erkaek/aa-fortunaisk",
"Tracker": "https://github.com/Erkaek/aa-fortunaisk/issues"
},
"split_keywords": [
"allianceauth",
" eveonline",
" fortunaisk"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "86c7491b9a051384d6d12420fc8cb57dff57b4156399b381bfae2886c6d39475",
"md5": "f765b4871ecaa98c9de83cd038dbf6bd",
"sha256": "cd24d87f190c9519742d3d3c53d7c1911512b097d173a8d6f654459cbdb1571f"
},
"downloads": -1,
"filename": "fortunaisk-0.2.36-py3-none-any.whl",
"has_sig": false,
"md5_digest": "f765b4871ecaa98c9de83cd038dbf6bd",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.8",
"size": 67790,
"upload_time": "2025-01-02T00:42:06",
"upload_time_iso_8601": "2025-01-02T00:42:06.666336Z",
"url": "https://files.pythonhosted.org/packages/86/c7/491b9a051384d6d12420fc8cb57dff57b4156399b381bfae2886c6d39475/fortunaisk-0.2.36-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "a5ada692cc597c6e355c43b864adbc1ea83781a04efe74009c3a526e9786b0f1",
"md5": "dfa16d5e1c8e8c4b4dff7d3d35bd18ad",
"sha256": "366d48e1975fe6efa6c6906569dfba282e04509b1685c615c97f4d0749e39c96"
},
"downloads": -1,
"filename": "fortunaisk-0.2.36.tar.gz",
"has_sig": false,
"md5_digest": "dfa16d5e1c8e8c4b4dff7d3d35bd18ad",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.8",
"size": 47969,
"upload_time": "2025-01-02T00:42:08",
"upload_time_iso_8601": "2025-01-02T00:42:08.857578Z",
"url": "https://files.pythonhosted.org/packages/a5/ad/a692cc597c6e355c43b864adbc1ea83781a04efe74009c3a526e9786b0f1/fortunaisk-0.2.36.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-01-02 00:42:08",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "Erkaek",
"github_project": "aa-fortunaisk",
"travis_ci": false,
"coveralls": true,
"github_actions": true,
"requirements": [],
"tox": true,
"lcname": "fortunaisk"
}