mirror of
https://github.com/netbox-community/netbox.git
synced 2025-07-23 17:08:41 -06:00
Closes #6146: Add bulk disconnect support for power feeds
This commit is contained in:
parent
f8903a8183
commit
f503c72782
@ -9,6 +9,7 @@
|
|||||||
* [#6109](https://github.com/netbox-community/netbox/issues/6109) - Add device counts to locations table
|
* [#6109](https://github.com/netbox-community/netbox/issues/6109) - Add device counts to locations table
|
||||||
* [#6121](https://github.com/netbox-community/netbox/issues/6121) - Extend parent interface assignment to VM interfaces
|
* [#6121](https://github.com/netbox-community/netbox/issues/6121) - Extend parent interface assignment to VM interfaces
|
||||||
* [#6125](https://github.com/netbox-community/netbox/issues/6125) - Add locations count to home page
|
* [#6125](https://github.com/netbox-community/netbox/issues/6125) - Add locations count to home page
|
||||||
|
* [#6146](https://github.com/netbox-community/netbox/issues/6146) - Add bulk disconnect support for power feeds
|
||||||
|
|
||||||
### Bug Fixes (from Beta)
|
### Bug Fixes (from Beta)
|
||||||
|
|
||||||
|
@ -417,6 +417,7 @@ urlpatterns = [
|
|||||||
path('power-feeds/add/', views.PowerFeedEditView.as_view(), name='powerfeed_add'),
|
path('power-feeds/add/', views.PowerFeedEditView.as_view(), name='powerfeed_add'),
|
||||||
path('power-feeds/import/', views.PowerFeedBulkImportView.as_view(), name='powerfeed_import'),
|
path('power-feeds/import/', views.PowerFeedBulkImportView.as_view(), name='powerfeed_import'),
|
||||||
path('power-feeds/edit/', views.PowerFeedBulkEditView.as_view(), name='powerfeed_bulk_edit'),
|
path('power-feeds/edit/', views.PowerFeedBulkEditView.as_view(), name='powerfeed_bulk_edit'),
|
||||||
|
path('power-feeds/disconnect/', views.PowerFeedBulkDisconnectView.as_view(), name='powerfeed_bulk_disconnect'),
|
||||||
path('power-feeds/delete/', views.PowerFeedBulkDeleteView.as_view(), name='powerfeed_bulk_delete'),
|
path('power-feeds/delete/', views.PowerFeedBulkDeleteView.as_view(), name='powerfeed_bulk_delete'),
|
||||||
path('power-feeds/<int:pk>/', views.PowerFeedView.as_view(), name='powerfeed'),
|
path('power-feeds/<int:pk>/', views.PowerFeedView.as_view(), name='powerfeed'),
|
||||||
path('power-feeds/<int:pk>/edit/', views.PowerFeedEditView.as_view(), name='powerfeed_edit'),
|
path('power-feeds/<int:pk>/edit/', views.PowerFeedEditView.as_view(), name='powerfeed_edit'),
|
||||||
|
@ -2836,6 +2836,8 @@ class PowerPanelView(generic.ObjectView):
|
|||||||
data=power_feeds,
|
data=power_feeds,
|
||||||
orderable=False
|
orderable=False
|
||||||
)
|
)
|
||||||
|
if request.user.has_perm('dcim.delete_cable'):
|
||||||
|
powerfeed_table.columns.show('pk')
|
||||||
powerfeed_table.exclude = ['power_panel']
|
powerfeed_table.exclude = ['power_panel']
|
||||||
|
|
||||||
return {
|
return {
|
||||||
@ -2912,6 +2914,10 @@ class PowerFeedBulkEditView(generic.BulkEditView):
|
|||||||
form = forms.PowerFeedBulkEditForm
|
form = forms.PowerFeedBulkEditForm
|
||||||
|
|
||||||
|
|
||||||
|
class PowerFeedBulkDisconnectView(BulkDisconnectView):
|
||||||
|
queryset = PowerFeed.objects.all()
|
||||||
|
|
||||||
|
|
||||||
class PowerFeedBulkDeleteView(generic.BulkDeleteView):
|
class PowerFeedBulkDeleteView(generic.BulkDeleteView):
|
||||||
queryset = PowerFeed.objects.prefetch_related('power_panel', 'rack')
|
queryset = PowerFeed.objects.prefetch_related('power_panel', 'rack')
|
||||||
filterset = filters.PowerFeedFilterSet
|
filterset = filters.PowerFeedFilterSet
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
{% extends 'generic/object.html' %}
|
{% extends 'generic/object.html' %}
|
||||||
{% load helpers %}
|
{% load helpers %}
|
||||||
{% load plugins %}
|
{% load plugins %}
|
||||||
|
{% load render_table from django_tables2 %}
|
||||||
|
|
||||||
{% block breadcrumbs %}
|
{% block breadcrumbs %}
|
||||||
<li><a href="{% url 'dcim:powerpanel_list' %}">Power Panels</a></li>
|
<li><a href="{% url 'dcim:powerpanel_list' %}">Power Panels</a></li>
|
||||||
@ -47,7 +48,37 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-md-12">
|
<div class="col-md-12">
|
||||||
{% include 'panel_table.html' with table=powerfeed_table heading='Connected Feeds' %}
|
<form method="post">
|
||||||
|
{% csrf_token %}
|
||||||
|
<div class="panel panel-default">
|
||||||
|
{% render_table powerfeed_table 'inc/table.html' %}
|
||||||
|
<div class="panel-footer noprint">
|
||||||
|
{% if perms.dcim.change_powerfeed %}
|
||||||
|
<button type="submit" name="_edit" formaction="{% url 'dcim:powerfeed_bulk_edit' %}?return_url={% url 'dcim:powerpanel' pk=object.pk %}" class="btn btn-warning btn-xs">
|
||||||
|
<span class="mdi mdi-pencil" aria-hidden="true"></span> Edit
|
||||||
|
</button>
|
||||||
|
{% endif %}
|
||||||
|
{% if perms.dcim.delete_cable %}
|
||||||
|
<button type="submit" name="_disconnect" formaction="{% url 'dcim:powerfeed_bulk_disconnect' %}?return_url={% url 'dcim:powerpanel' pk=object.pk %}" class="btn btn-danger btn-xs">
|
||||||
|
<span class="mdi mdi-ethernet-cable-off" aria-hidden="true"></span> Disconnect
|
||||||
|
</button>
|
||||||
|
{% endif %}
|
||||||
|
{% if perms.dcim.delete_powerfeed %}
|
||||||
|
<button type="submit" name="_delete" formaction="{% url 'dcim:powerfeed_bulk_delete' %}?return_url={% url 'dcim:powerpanel' pk=object.pk %}" class="btn btn-danger btn-xs">
|
||||||
|
<span class="mdi mdi-trash-can-outline" aria-hidden="true"></span> Delete
|
||||||
|
</button>
|
||||||
|
{% endif %}
|
||||||
|
{% if perms.dcim.add_powerfeed %}
|
||||||
|
<div class="pull-right">
|
||||||
|
<a href="{% url 'dcim:powerfeed_add' %}?power_panel={{ object.pk }}&return_url={% url 'dcim:powerpanel' pk=object.pk %}" class="btn btn-primary btn-xs">
|
||||||
|
<span class="mdi mdi-plus-thick" aria-hidden="true"></span> Add power feeds
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
{% endif %}
|
||||||
|
<div class="clearfix"></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</form>
|
||||||
{% plugin_full_width_page object %}
|
{% plugin_full_width_page object %}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
Loading…
Reference in New Issue
Block a user