# This is an auto-generated Django model module.
# You'll have to do the following manually to clean this up:
#   * Rearrange models' order
#   * Make sure each model has one field with primary_key=True
#   * Make sure each ForeignKey and OneToOneField has `on_delete` set to the desired behavior
#   * Remove `managed = False` lines if you wish to allow Django to create, modify, and delete the table
# Feel free to rename the models, but don't rename db_table values or field names.
from django.db import models


class Agent(models.Model):
    agent_id = models.BigAutoField(primary_key=True)
    drupal_uid = models.IntegerField()
    role_id = models.SmallIntegerField()
    origin_geonode = models.CharField(max_length=3, blank=True, null=True)
    station_id = models.BigIntegerField(blank=True, null=True)
    logged_in = models.BooleanField(blank=True, null=True)
    nick = models.CharField(max_length=-1, blank=True, null=True)

    class Meta:
        managed = False
        db_table = 'agent'


class AgentApps(models.Model):
    agent_id = models.BigIntegerField(primary_key=True)
    app_id = models.SmallIntegerField()
    f0 = models.CharField(max_length=-1, blank=True, null=True)
    f1 = models.CharField(max_length=-1, blank=True, null=True)
    f2 = models.CharField(max_length=-1, blank=True, null=True)
    f4 = models.CharField(max_length=-1, blank=True, null=True)

    class Meta:
        managed = False
        db_table = 'agent_apps'
        unique_together = (('agent_id', 'app_id'),)


class AuthGroup(models.Model):
    name = models.CharField(unique=True, max_length=150)

    class Meta:
        managed = False
        db_table = 'auth_group'


class AuthGroupPermissions(models.Model):
    group = models.ForeignKey(AuthGroup, models.DO_NOTHING)
    permission = models.ForeignKey('AuthPermission', models.DO_NOTHING)

    class Meta:
        managed = False
        db_table = 'auth_group_permissions'
        unique_together = (('group', 'permission'),)


class AuthPermission(models.Model):
    name = models.CharField(max_length=255)
    content_type = models.ForeignKey('DjangoContentType', models.DO_NOTHING)
    codename = models.CharField(max_length=100)

    class Meta:
        managed = False
        db_table = 'auth_permission'
        unique_together = (('content_type', 'codename'),)


class AuthUser(models.Model):
    password = models.CharField(max_length=128)
    last_login = models.DateTimeField(blank=True, null=True)
    is_superuser = models.BooleanField()
    username = models.CharField(unique=True, max_length=150)
    first_name = models.CharField(max_length=150)
    last_name = models.CharField(max_length=150)
    email = models.CharField(max_length=254)
    is_staff = models.BooleanField()
    is_active = models.BooleanField()
    date_joined = models.DateTimeField()

    class Meta:
        managed = False
        db_table = 'auth_user'


class AuthUserGroups(models.Model):
    user = models.ForeignKey(AuthUser, models.DO_NOTHING)
    group = models.ForeignKey(AuthGroup, models.DO_NOTHING)

    class Meta:
        managed = False
        db_table = 'auth_user_groups'
        unique_together = (('user', 'group'),)


class AuthUserUserPermissions(models.Model):
    user = models.ForeignKey(AuthUser, models.DO_NOTHING)
    permission = models.ForeignKey(AuthPermission, models.DO_NOTHING)

    class Meta:
        managed = False
        db_table = 'auth_user_user_permissions'
        unique_together = (('user', 'permission'),)


class Code(models.Model):
    entity_type = models.IntegerField(primary_key=True)
    entity_id = models.BigAutoField()
    id_radix = models.IntegerField(blank=True, null=True)
    entity_value = models.CharField(max_length=-1, blank=True, null=True)
    comment = models.CharField(db_column='Comment', max_length=-1, blank=True, null=True)  # Field name made lowercase.

    class Meta:
        managed = False
        db_table = 'code'
        unique_together = (('entity_type', 'entity_id'),)


class Device(models.Model):
    station = models.OneToOneField('Station', models.DO_NOTHING, primary_key=True)
    hashoruuid = models.CharField(max_length=-1)
    trusted = models.DateTimeField(blank=True, null=True)
    os = models.SmallIntegerField(blank=True, null=True)
    host_type = models.SmallIntegerField(blank=True, null=True)
    agent = models.ForeignKey(Agent, models.DO_NOTHING)
    created = models.DateTimeField()
    description = models.CharField(max_length=-1)
    isbot = models.BooleanField()

    class Meta:
        managed = False
        db_table = 'device'
        unique_together = (('station', 'hashoruuid'),)


class DeviceActivity(models.Model):
    device_id = models.CharField(primary_key=True, max_length=-1)
    event_id = models.BigIntegerField()

    class Meta:
        managed = False
        db_table = 'device_activity'
        unique_together = (('device_id', 'event_id'),)


class DjangoAdminLog(models.Model):
    action_time = models.DateTimeField()
    object_id = models.TextField(blank=True, null=True)
    object_repr = models.CharField(max_length=200)
    action_flag = models.SmallIntegerField()
    change_message = models.TextField()
    content_type = models.ForeignKey('DjangoContentType', models.DO_NOTHING, blank=True, null=True)
    user = models.ForeignKey(AuthUser, models.DO_NOTHING)

    class Meta:
        managed = False
        db_table = 'django_admin_log'


class DjangoContentType(models.Model):
    app_label = models.CharField(max_length=100)
    model = models.CharField(max_length=100)

    class Meta:
        managed = False
        db_table = 'django_content_type'
        unique_together = (('app_label', 'model'),)


class DjangoMigrations(models.Model):
    app = models.CharField(max_length=255)
    name = models.CharField(max_length=255)
    applied = models.DateTimeField()

    class Meta:
        managed = False
        db_table = 'django_migrations'


class DjangoSession(models.Model):
    session_key = models.CharField(primary_key=True, max_length=40)
    session_data = models.TextField()
    expire_date = models.DateTimeField()

    class Meta:
        managed = False
        db_table = 'django_session'


class Event(models.Model):
    domain_id = models.IntegerField()
    event_id = models.BigAutoField(primary_key=True)
    event_type_id = models.IntegerField()
    agent_id = models.IntegerField()
    suffix_id = models.IntegerField()
    station_id = models.BigIntegerField()
    message_id = models.IntegerField()
    occurred = models.DateTimeField()
    geonode = models.CharField(max_length=3, blank=True, null=True)
    note = models.CharField(max_length=-1, blank=True, null=True)
    device = models.CharField(max_length=-1, blank=True, null=True)

    class Meta:
        managed = False
        db_table = 'event'


class Fx(models.Model):
    unixtime = models.IntegerField()
    curname = models.CharField(max_length=-1)
    curvalue = models.CharField(max_length=-1, blank=True, null=True)

    class Meta:
        managed = False
        db_table = 'fx'


class Mdomains(models.Model):
    name = models.CharField(primary_key=True, max_length=-1)

    class Meta:
        managed = False
        db_table = 'mdomains'


class Rdomains(models.Model):
    name = models.CharField(primary_key=True, max_length=-1)

    class Meta:
        managed = False
        db_table = 'rdomains'


class Station(models.Model):
    station_id = models.BigIntegerField(unique=True, blank=True, null=True)
    domain_id = models.IntegerField()
    suffix_id = models.IntegerField()
    ip_is_v4 = models.BooleanField(blank=True, null=True)
    ip_address = models.CharField(primary_key=True, max_length=-1)
    name = models.CharField(max_length=-1)

    class Meta:
        managed = False
        db_table = 'station'
        unique_together = (('ip_address', 'domain_id'),)
