# Generated by Django 4.2.21 on 2025-12-21 21:14

import datetime
import django.core.validators
from django.db import migrations, models


class Migration(migrations.Migration):

    dependencies = [
        ('aa_bb', '0092_userstatus_baseline_initialized'),
    ]

    operations = [
        migrations.CreateModel(
            name='EveItemPrice',
            fields=[
                ('eve_type_id', models.IntegerField(primary_key=True, serialize=False)),
                ('buy', models.FloatField()),
                ('sell', models.FloatField()),
                ('updated', models.DateTimeField(auto_now=True)),
            ],
            options={
                'verbose_name': 'Item Price',
                'verbose_name_plural': 'Item Prices',
            },
        ),
        migrations.DeleteModel(
            name='BigBrotherRedditMessage',
        ),
        migrations.DeleteModel(
            name='BigBrotherRedditSettings',
        ),
        migrations.AddField(
            model_name='bigbrotherconfig',
            name='alliance_blacklist_url',
            field=models.URLField(blank=True, help_text='URL for the Alliance Blacklist', null=True, verbose_name='Alliance Blacklist URL'),
        ),
        migrations.AddField(
            model_name='bigbrotherconfig',
            name='external_blacklist_url',
            field=models.URLField(blank=True, help_text='URL for the External/Coalition Blacklist', null=True, verbose_name='External Blacklist URL'),
        ),
        migrations.AddField(
            model_name='bigbrotherconfig',
            name='market_transactions_excluded_systems',
            field=models.TextField(blank=True, help_text='System IDs separated by commas to be excluded from market transactions', verbose_name='Excluded Market Systems'),
        ),
        migrations.AddField(
            model_name='bigbrotherconfig',
            name='market_transactions_fuzzwork_station_id',
            field=models.IntegerField(default=60003760, help_text='Default is 60003760 (Jita IV-4)', verbose_name='Fuzzwork Station ID'),
        ),
        migrations.AddField(
            model_name='bigbrotherconfig',
            name='market_transactions_janice_api_key',
            field=models.TextField(blank=True, null=True, verbose_name='Janice API Key'),
        ),
        migrations.AddField(
            model_name='bigbrotherconfig',
            name='market_transactions_price_instant',
            field=models.BooleanField(default=True, help_text='If enabled, uses immediate/instant prices. If disabled, uses average/percentile prices. Only works for Fuzzworks', verbose_name='Use Instant Prices'),
        ),
        migrations.AddField(
            model_name='bigbrotherconfig',
            name='market_transactions_price_max_age',
            field=models.PositiveIntegerField(default=7, help_text='Maximum age of cached prices in days before refreshing from API.', verbose_name='Market Price Max Age (Days)'),
        ),
        migrations.AddField(
            model_name='bigbrotherconfig',
            name='market_transactions_price_method',
            field=models.CharField(choices=[('Fuzzwork', 'Fuzzwork'), ('Janice', 'Janice')], default='Fuzzwork', max_length=20, verbose_name='Primary Price Method'),
        ),
        migrations.AddField(
            model_name='bigbrotherconfig',
            name='market_transactions_show_major_hubs',
            field=models.BooleanField(default=False, help_text='Show Transactions that take place in the major market hubs (Jita, Amarr, Dodixie, Rens, Hek)', verbose_name='Show Major Hub Transactions'),
        ),
        migrations.AddField(
            model_name='bigbrotherconfig',
            name='market_transactions_show_secondary_hubs',
            field=models.BooleanField(default=True, help_text='Show Transactions that take place in secondary market hubs (Oursulaert, Tash-Murkon Prime, Agil, Perimeter)', verbose_name='Show Secondary Hub Transactions'),
        ),
        migrations.AddField(
            model_name='bigbrotherconfig',
            name='market_transactions_threshold_alert',
            field=models.BooleanField(default=False, help_text='Trigger alerts only when the purchased or sold price is more than the custom percentage threshold', verbose_name='Enable Market Price Threshold Alert'),
        ),
        migrations.AddField(
            model_name='bigbrotherconfig',
            name='market_transactions_threshold_percent',
            field=models.FloatField(default=0, help_text='Custom percentage for market transaction alerts (e.g., 10.5 for 10.5%)', verbose_name='Market Price Threshold Percentage'),
        ),
        migrations.AddField(
            model_name='bigbrotherconfig',
            name='show_market_transactions',
            field=models.BooleanField(default=False, help_text='Show transactions with a reference type of market_escrow and market_transaction', verbose_name='Show Market Transactions'),
        ),
        migrations.AddField(
            model_name='bigbrotherconfig',
            name='update_backlog_notify',
            field=models.BooleanField(default=True, help_text='Whether to send an alert when a task backlog is detected.', verbose_name='Update Backlog Alert'),
        ),
        migrations.AddField(
            model_name='bigbrotherconfig',
            name='update_backlog_threshold',
            field=models.PositiveIntegerField(default=10, help_text='Alert if more than this percentage of tasks from the previous run are still active.', verbose_name='Update Backlog Threshold (%)'),
        ),
        migrations.AddField(
            model_name='bigbrotherconfig',
            name='update_cache_ttl_hours',
            field=models.IntegerField(default=24, help_text='How long certain check results are cached before being refreshed. Such as Clone States', verbose_name='Update Cache TTL (hours)'),
        ),
        migrations.AddField(
            model_name='bigbrotherconfig',
            name='update_last_dispatch_count',
            field=models.IntegerField(default=0, editable=False, verbose_name='Last Dispatch Count'),
        ),
        migrations.AddField(
            model_name='bigbrotherconfig',
            name='update_maintenance_window_end',
            field=models.TimeField(default=datetime.time(10, 0), help_text='End time for the maintenance window where caching is preferred.', verbose_name='Maintenance Window End (UTC)'),
        ),
        migrations.AddField(
            model_name='bigbrotherconfig',
            name='update_maintenance_window_start',
            field=models.TimeField(default=datetime.time(6, 0), help_text='Start time for the maintenance window where updating cached data is preferred.', verbose_name='Maintenance Window Start (UTC)'),
        ),
        migrations.AddField(
            model_name='bigbrotherconfig',
            name='update_stagger_seconds',
            field=models.IntegerField(default=3600, help_text='The total time window across which user updates are performed.', validators=[django.core.validators.MinValueValidator(3600)], verbose_name='Update Stagger Window (seconds)'),
        ),
        migrations.AddField(
            model_name='corpstatus',
            name='baseline_initialized',
            field=models.BooleanField(default=False),
        ),
        migrations.AddField(
            model_name='bigbrotherconfig',
            name='clone_state_always_recheck',
            field=models.BooleanField(default=False, help_text='If enabled, characters with a known skill proving their Alpha/Omega state will always be re-checked, bypassing the cache TTL, and potentially catching state changes far quicker. Disabling this can significantly improve performance.', verbose_name='Clone State: Always Re-check Proven Skills'),
        ),
        migrations.AddField(
            model_name='bigbrotherconfig',
            name='contacts_source_corporations',
            field=models.ManyToManyField(blank=True, help_text='Corporations whose aa-contacts standings should be imported. Corporations with positive standing become members; negative standing become hostile; zero is ignored.', related_name='bb_contacts_source_configs_corp', to='eveonline.evecorporationinfo', verbose_name='aa-contacts source corporation'),
        ),
        migrations.AddField(
            model_name='bigbrotherconfig',
            name='limit_to_main_corp',
            field=models.BooleanField(default=False, help_text='If enabled, compliance checks and dashboard visibility will be restricted to members of the primary corporation only.', verbose_name='Limit to Main Corporation'),
        ),
    ]
