network_inventory/users/tables.py

61 lines
2.0 KiB
Python
Raw Normal View History

2020-01-10 00:01:06 +01:00
import django_tables2 as tables
2020-08-03 17:14:54 +02:00
from django_tables2.utils import A
2020-01-10 00:01:06 +01:00
from core.tables import CoreTable
2021-12-30 20:51:39 +01:00
from .models import AdGroup
from .models import MailGroup
2020-01-10 00:01:06 +01:00
from .models import User
class UsersTable(CoreTable):
2020-01-10 00:01:06 +01:00
id = tables.Column(visible=False)
name = tables.Column('User', linkify=True)
description = tables.Column(
attrs={
'td': {
'class': 'text-truncate',
'style': 'max-width: 150px;'}
}
)
2020-01-10 00:01:06 +01:00
customer = tables.Column('Customer', linkify=True)
ad_groups = tables.ManyToManyColumn()
mail_groups = tables.ManyToManyColumn()
2020-08-03 17:14:54 +02:00
delete = tables.LinkColumn('user_delete',
text='delete',
args=[A('pk')], attrs={
'a': {'class': 'delete material-icons', }
2020-08-03 17:37:08 +02:00
}, orderable=False)
2020-01-10 00:01:06 +01:00
class Meta(CoreTable.Meta):
2020-01-10 00:01:06 +01:00
model = User
2021-12-30 20:51:39 +01:00
class AdGroupsTable(CoreTable):
id = tables.Column(visible=False)
2022-03-23 22:29:38 +01:00
name = tables.Column('Ad Groups', linkify=True)
customer = tables.Column(visible=False)
action = tables.LinkColumn('ad_group_delete',
2021-12-30 20:51:39 +01:00
text='delete',
args=[A('pk')], attrs={
'a': {'class': 'delete material-icons', }
}, orderable=False)
class Meta(CoreTable.Meta):
model = AdGroup
class MailGroupsTable(CoreTable):
id = tables.Column(visible=False)
2022-03-23 22:29:38 +01:00
name = tables.Column('Mail Groups', linkify=True)
mail_address = tables.EmailColumn(verbose_name='Mail Address')
customer = tables.Column(visible=False)
action = tables.LinkColumn('mail_group_delete',
2021-12-30 20:51:39 +01:00
text='delete',
args=[A('pk')], attrs={
'a': {'class': 'delete material-icons', }
}, orderable=False)
class Meta(CoreTable.Meta):
model = MailGroup