1
0
mirror of https://github.com/netbox-community/netbox.git synced 2024-05-10 07:54:54 +00:00

Closes #13150: Wrap table column headers with gettext()

Co-authored-by: Jeremy Stretch <jstretch@netboxlabs.com>
This commit is contained in:
Arthur Hanson
2023-08-01 01:35:28 +07:00
committed by GitHub
parent 34a960505d
commit e284cd7e54
30 changed files with 823 additions and 328 deletions

View File

@ -2,7 +2,7 @@ import json
import django_tables2 as tables
from django.conf import settings
from django.utils.translation import gettext as _
from django.utils.translation import gettext_lazy as _
from extras.models import *
from netbox.tables import NetBoxTable, columns
@ -44,7 +44,9 @@ REVISION_BUTTONS = """
class ConfigRevisionTable(NetBoxTable):
is_active = columns.BooleanColumn()
is_active = columns.BooleanColumn(
verbose_name=_('Is Active'),
)
actions = columns.ActionsColumn(
actions=('delete',),
extra_buttons=REVISION_BUTTONS
@ -60,20 +62,33 @@ class ConfigRevisionTable(NetBoxTable):
class CustomFieldTable(NetBoxTable):
name = tables.Column(
verbose_name=_('Name'),
linkify=True
)
content_types = columns.ContentTypesColumn()
required = columns.BooleanColumn()
ui_visibility = columns.ChoiceFieldColumn(verbose_name="UI visibility")
description = columns.MarkdownColumn()
content_types = columns.ContentTypesColumn(
verbose_name=_('Content Types')
)
required = columns.BooleanColumn(
verbose_name=_('Required')
)
ui_visibility = columns.ChoiceFieldColumn(
verbose_name=_('UI Visibility')
)
description = columns.MarkdownColumn(
verbose_name=_('Description')
)
choice_set = tables.Column(
linkify=True
linkify=True,
verbose_name=_('Choice Set')
)
choices = columns.ChoicesColumn(
max_items=10,
orderable=False
orderable=False,
verbose_name=_('Choices')
)
is_cloneable = columns.BooleanColumn(
verbose_name=_('Is Cloneable'),
)
is_cloneable = columns.BooleanColumn()
class Meta(NetBoxTable.Meta):
model = CustomField
@ -87,6 +102,7 @@ class CustomFieldTable(NetBoxTable):
class CustomFieldChoiceSetTable(NetBoxTable):
name = tables.Column(
verbose_name=_('Name'),
linkify=True
)
base_choices = columns.ChoiceFieldColumn()
@ -103,7 +119,9 @@ class CustomFieldChoiceSetTable(NetBoxTable):
orderable=False,
verbose_name=_('Count')
)
order_alphabetically = columns.BooleanColumn()
order_alphabetically = columns.BooleanColumn(
verbose_name=_('Order Alphabetically'),
)
class Meta(NetBoxTable.Meta):
model = CustomFieldChoiceSet
@ -116,11 +134,18 @@ class CustomFieldChoiceSetTable(NetBoxTable):
class CustomLinkTable(NetBoxTable):
name = tables.Column(
verbose_name=_('Name'),
linkify=True
)
content_types = columns.ContentTypesColumn()
enabled = columns.BooleanColumn()
new_window = columns.BooleanColumn()
content_types = columns.ContentTypesColumn(
verbose_name=_('Content Types'),
)
enabled = columns.BooleanColumn(
verbose_name=_('Enabled'),
)
new_window = columns.BooleanColumn(
verbose_name=_('New Window'),
)
class Meta(NetBoxTable.Meta):
model = CustomLink
@ -133,19 +158,26 @@ class CustomLinkTable(NetBoxTable):
class ExportTemplateTable(NetBoxTable):
name = tables.Column(
verbose_name=_('Name'),
linkify=True
)
content_types = columns.ContentTypesColumn()
as_attachment = columns.BooleanColumn()
content_types = columns.ContentTypesColumn(
verbose_name=_('Content Types'),
)
as_attachment = columns.BooleanColumn(
verbose_name=_('As Attachment'),
)
data_source = tables.Column(
verbose_name=_('Data Source'),
linkify=True
)
data_file = tables.Column(
verbose_name=_('Data File'),
linkify=True
)
is_synced = columns.BooleanColumn(
orderable=False,
verbose_name='Synced'
verbose_name=_('Synced')
)
class Meta(NetBoxTable.Meta):
@ -161,18 +193,23 @@ class ExportTemplateTable(NetBoxTable):
class ImageAttachmentTable(NetBoxTable):
id = tables.Column(
verbose_name=_('ID'),
linkify=False
)
content_type = columns.ContentTypeColumn()
content_type = columns.ContentTypeColumn(
verbose_name=_('Content Type'),
)
parent = tables.Column(
verbose_name=_('Parent'),
linkify=True
)
image = tables.TemplateColumn(
verbose_name=_('Image'),
template_code=IMAGEATTACHMENT_IMAGE,
)
size = tables.Column(
orderable=False,
verbose_name='Size (bytes)'
verbose_name=_('Size (Bytes)')
)
class Meta(NetBoxTable.Meta):
@ -186,11 +223,18 @@ class ImageAttachmentTable(NetBoxTable):
class SavedFilterTable(NetBoxTable):
name = tables.Column(
verbose_name=_('Name'),
linkify=True
)
content_types = columns.ContentTypesColumn()
enabled = columns.BooleanColumn()
shared = columns.BooleanColumn()
content_types = columns.ContentTypesColumn(
verbose_name=_('Content Types'),
)
enabled = columns.BooleanColumn(
verbose_name=_('Enabled'),
)
shared = columns.BooleanColumn(
verbose_name=_('Shared'),
)
def value_parameters(self, value):
return json.dumps(value)
@ -207,8 +251,11 @@ class SavedFilterTable(NetBoxTable):
class BookmarkTable(NetBoxTable):
object_type = columns.ContentTypeColumn()
object_type = columns.ContentTypeColumn(
verbose_name=_('Object Types'),
)
object = tables.Column(
verbose_name=_('Object'),
linkify=True
)
actions = columns.ActionsColumn(
@ -223,27 +270,32 @@ class BookmarkTable(NetBoxTable):
class WebhookTable(NetBoxTable):
name = tables.Column(
verbose_name=_('Name'),
linkify=True
)
content_types = columns.ContentTypesColumn()
enabled = columns.BooleanColumn()
content_types = columns.ContentTypesColumn(
verbose_name=_('Content Types'),
)
enabled = columns.BooleanColumn(
verbose_name=_('Enabled'),
)
type_create = columns.BooleanColumn(
verbose_name='Create'
verbose_name=_('Create')
)
type_update = columns.BooleanColumn(
verbose_name='Update'
verbose_name=_('Update')
)
type_delete = columns.BooleanColumn(
verbose_name='Delete'
verbose_name=_('Delete')
)
type_job_start = columns.BooleanColumn(
verbose_name='Job start'
verbose_name=_('Job Start')
)
type_job_end = columns.BooleanColumn(
verbose_name='Job end'
verbose_name=_('Job End')
)
ssl_validation = columns.BooleanColumn(
verbose_name='SSL Validation'
verbose_name=_('SSL Validation')
)
class Meta(NetBoxTable.Meta):
@ -261,10 +313,15 @@ class WebhookTable(NetBoxTable):
class TagTable(NetBoxTable):
name = tables.Column(
verbose_name=_('Name'),
linkify=True
)
color = columns.ColorColumn()
object_types = columns.ContentTypesColumn()
color = columns.ColorColumn(
verbose_name=_('Color'),
)
object_types = columns.ContentTypesColumn(
verbose_name=_('Object Types'),
)
class Meta(NetBoxTable.Meta):
model = Tag
@ -277,17 +334,17 @@ class TagTable(NetBoxTable):
class TaggedItemTable(NetBoxTable):
id = tables.Column(
verbose_name='ID',
verbose_name=_('ID'),
linkify=lambda record: record.content_object.get_absolute_url(),
accessor='content_object__id'
)
content_type = columns.ContentTypeColumn(
verbose_name='Type'
verbose_name=_('Type')
)
content_object = tables.Column(
linkify=True,
orderable=False,
verbose_name='Object'
verbose_name=_('Object')
)
actions = columns.ActionsColumn(
actions=()
@ -300,20 +357,23 @@ class TaggedItemTable(NetBoxTable):
class ConfigContextTable(NetBoxTable):
data_source = tables.Column(
verbose_name=_('Data Source'),
linkify=True
)
data_file = tables.Column(
verbose_name=_('Data File'),
linkify=True
)
name = tables.Column(
verbose_name=_('Name'),
linkify=True
)
is_active = columns.BooleanColumn(
verbose_name='Active'
verbose_name=_('Active')
)
is_synced = columns.BooleanColumn(
orderable=False,
verbose_name='Synced'
verbose_name=_('Synced')
)
class Meta(NetBoxTable.Meta):
@ -328,17 +388,20 @@ class ConfigContextTable(NetBoxTable):
class ConfigTemplateTable(NetBoxTable):
name = tables.Column(
verbose_name=_('Name'),
linkify=True
)
data_source = tables.Column(
verbose_name=_('Data Source'),
linkify=True
)
data_file = tables.Column(
verbose_name=_('Data File'),
linkify=True
)
is_synced = columns.BooleanColumn(
orderable=False,
verbose_name='Synced'
verbose_name=_('Synced')
)
tags = columns.TagColumn(
url_name='extras:configtemplate_list'
@ -357,31 +420,34 @@ class ConfigTemplateTable(NetBoxTable):
class ObjectChangeTable(NetBoxTable):
time = tables.DateTimeColumn(
verbose_name=_('Time'),
linkify=True,
format=settings.SHORT_DATETIME_FORMAT
)
user_name = tables.Column(
verbose_name='Username'
verbose_name=_('Username')
)
full_name = tables.TemplateColumn(
accessor=tables.A('user'),
template_code=OBJECTCHANGE_FULL_NAME,
verbose_name='Full Name',
verbose_name=_('Full Name'),
orderable=False
)
action = columns.ChoiceFieldColumn()
action = columns.ChoiceFieldColumn(
verbose_name=_('Action'),
)
changed_object_type = columns.ContentTypeColumn(
verbose_name='Type'
verbose_name=_('Type')
)
object_repr = tables.TemplateColumn(
accessor=tables.A('changed_object'),
template_code=OBJECTCHANGE_OBJECT,
verbose_name='Object',
verbose_name=_('Object'),
orderable=False
)
request_id = tables.TemplateColumn(
template_code=OBJECTCHANGE_REQUEST_ID,
verbose_name='Request ID'
verbose_name=_('Request ID')
)
actions = columns.ActionsColumn(
actions=()
@ -397,23 +463,28 @@ class ObjectChangeTable(NetBoxTable):
class JournalEntryTable(NetBoxTable):
created = tables.DateTimeColumn(
verbose_name=_('Created'),
linkify=True,
format=settings.SHORT_DATETIME_FORMAT
)
assigned_object_type = columns.ContentTypeColumn(
verbose_name='Object type'
verbose_name=_('Object Type')
)
assigned_object = tables.Column(
linkify=True,
orderable=False,
verbose_name='Object'
verbose_name=_('Object')
)
kind = columns.ChoiceFieldColumn(
verbose_name=_('Kind'),
)
comments = columns.MarkdownColumn(
verbose_name=_('Comments'),
)
kind = columns.ChoiceFieldColumn()
comments = columns.MarkdownColumn()
comments_short = tables.TemplateColumn(
accessor=tables.A('comments'),
template_code='{{ value|markdown|truncatewords_html:50 }}',
verbose_name='Comments (Short)'
verbose_name=_('Comments (Short)')
)
tags = columns.TagColumn(
url_name='extras:journalentry_list'