| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211 |
- {% extends '_base.html' %}
- {% load helpers %}
- {% block content %}
- {% include 'search_form.html' %}
- <div class="row">
- <div class="col-sm-6 col-md-4">
- <div class="panel panel-default">
- <div class="panel-heading">
- <strong>Organization</strong>
- </div>
- <div class="list-group">
- <div class="list-group-item">
- <span class="badge pull-right">{{ stats.site_count }}</span>
- <h4 class="list-group-item-heading"><a href="{% url 'dcim:site_list' %}">Sites</a></h4>
- <p class="list-group-item-text text-muted">Geographic locations</p>
- </div>
- <div class="list-group-item">
- <span class="badge pull-right">{{ stats.tenant_count }}</span>
- <h4 class="list-group-item-heading"><a href="{% url 'tenancy:tenant_list' %}">Tenants</a></h4>
- <p class="list-group-item-text text-muted">Customers or departments</p>
- </div>
- </div>
- </div>
- <div class="panel panel-default">
- <div class="panel-heading">
- <strong>DCIM</strong>
- </div>
- <div class="list-group">
- <div class="list-group-item">
- <span class="badge pull-right">{{ stats.rack_count }}</span>
- <h4 class="list-group-item-heading"><a href="{% url 'dcim:rack_list' %}">Racks</a></h4>
- <p class="list-group-item-text text-muted">Equipment racks, optionally organized by group</p>
- </div>
- <div class="list-group-item">
- <span class="badge pull-right">{{ stats.device_count }}</span>
- <h4 class="list-group-item-heading"><a href="{% url 'dcim:device_list' %}">Devices</a></h4>
- <p class="list-group-item-text text-muted">Rack-mounted network equipment, servers, and other devices</p>
- </div>
- <div class="list-group-item">
- <h4 class="list-group-item-heading">Connections</h4>
- <span class="badge pull-right">{{ stats.cable_count }}</span>
- <p style="padding-left: 20px;"><a href="{% url 'dcim:cable_list' %}">Cables</a></p>
- <span class="badge pull-right">{{ stats.interface_connections_count }}</span>
- <p style="padding-left: 20px;"><a href="{% url 'dcim:interface_connections_list' %}">Interfaces</a></p>
- <span class="badge pull-right">{{ stats.console_connections_count }}</span>
- <p style="padding-left: 20px;"><a href="{% url 'dcim:console_connections_list' %}">Console</a></p>
- <span class="badge pull-right">{{ stats.power_connections_count }}</span>
- <p class="list-group-item-text" style="padding-left: 20px;"><a href="{% url 'dcim:power_connections_list' %}">Power</a></p>
- </div>
- </div>
- </div>
- <div class="panel panel-default">
- <div class="panel-heading">
- <strong>Virtualization</strong>
- </div>
- <div class="list-group">
- <div class="list-group-item">
- <span class="badge pull-right">{{ stats.cluster_count }}</span>
- <h4 class="list-group-item-heading"><a href="{% url 'virtualization:cluster_list' %}">Clusters</a></h4>
- <p class="list-group-item-text text-muted">Clusters of physical hosts in which VMs reside</p>
- </div>
- <div class="list-group-item">
- <span class="badge pull-right">{{ stats.virtualmachine_count }}</span>
- <h4 class="list-group-item-heading"><a href="{% url 'virtualization:virtualmachine_list' %}">Virtual Machines</a></h4>
- <p class="list-group-item-text text-muted">Virtual compute instances running inside clusters</p>
- </div>
- </div>
- </div>
- </div>
- <div class="col-sm-6 col-md-4">
- <div class="panel panel-default">
- <div class="panel-heading">
- <strong>IPAM</strong>
- </div>
- <div class="list-group">
- <div class="list-group-item">
- <span class="badge pull-right">{{ stats.vrf_count }}</span>
- <h4 class="list-group-item-heading"><a href="{% url 'ipam:vrf_list' %}">VRFs</a></h4>
- <p class="list-group-item-text text-muted">Virtual routing and forwarding tables</p>
- </div>
- <div class="list-group-item">
- <span class="badge pull-right">{{ stats.aggregate_count }}</span>
- <h4 class="list-group-item-heading"><a href="{% url 'ipam:aggregate_list' %}">Aggregates</a></h4>
- <p class="list-group-item-text text-muted">Top-level IP allocations</p>
- </div>
- <div class="list-group-item">
- <span class="badge pull-right">{{ stats.prefix_count }}</span>
- <h4 class="list-group-item-heading"><a href="{% url 'ipam:prefix_list' %}">Prefixes</a></h4>
- <p class="list-group-item-text text-muted">IPv4 and IPv6 network assignments</p>
- </div>
- <div class="list-group-item">
- <span class="badge pull-right">{{ stats.ipaddress_count }}</span>
- <h4 class="list-group-item-heading"><a href="{% url 'ipam:ipaddress_list' %}">IP Addresses</a></h4>
- <p class="list-group-item-text text-muted">Individual IPv4 and IPv6 addresses</p>
- </div>
- <div class="list-group-item">
- <span class="badge pull-right">{{ stats.vlan_count }}</span>
- <h4 class="list-group-item-heading"><a href="{% url 'ipam:vlan_list' %}">VLANs</a></h4>
- <p class="list-group-item-text text-muted">Layer two domains, identified by VLAN ID</p>
- </div>
- </div>
- </div>
- <div class="panel panel-default">
- <div class="panel-heading">
- <strong>Circuits</strong>
- </div>
- <div class="list-group">
- <div class="list-group-item">
- <span class="badge pull-right">{{ stats.provider_count }}</span>
- <h4 class="list-group-item-heading"><a href="{% url 'circuits:provider_list' %}">Providers</a></h4>
- <p class="list-group-item-text text-muted">Organizations which provide circuit connectivity</p>
- </div>
- <div class="list-group-item">
- <span class="badge pull-right">{{ stats.circuit_count }}</span>
- <h4 class="list-group-item-heading"><a href="{% url 'circuits:circuit_list' %}">Circuits</a></h4>
- <p class="list-group-item-text text-muted">Communication links for Internet transit, peering, and other services</p>
- </div>
- </div>
- </div>
- {% if perms.secrets %}
- <div class="panel panel-default">
- <div class="panel-heading">
- <strong>Secrets</strong>
- </div>
- <div class="list-group">
- <div class="list-group-item">
- <span class="badge pull-right">{{ stats.secret_count }}</span>
- <h4 class="list-group-item-heading"><a href="{% url 'secrets:secret_list' %}">Secrets</a></h4>
- <p class="list-group-item-text text-muted">Sensitive data (such as passwords) which has been stored securely</p>
- </div>
- </div>
- </div>
- {% endif %}
- </div>
- <div class="col-sm-6 col-md-4">
- <div class="panel panel-default">
- <div class="panel-heading">
- <strong>Global Topology Maps</strong>
- </div>
- {% if topology_maps %}
- <table class="table table-hover panel-body">
- {% for tm in topology_maps %}
- <tr>
- <td><i class="fa fa-fw fa-map-o"></i> <a href="{% url 'extras-api:topologymap-render' pk=tm.pk %}" target="_blank">{{ tm }}</a></td>
- <td>{{ tm.description }}</td>
- </tr>
- {% endfor %}
- </table>
- {% else %}
- <div class="panel-body text-muted">
- None
- </div>
- {% endif %}
- </div>
- {% if report_results %}
- <div class="panel panel-default">
- <div class="panel-heading">
- <strong>Reports</strong>
- </div>
- <table class="table table-hover panel-body">
- {% for result in report_results %}
- <tr>
- <td><a href="{% url 'extras:report' name=result.report %}">{{ result.report }}</a></td>
- <td class="text-right"><span title="{{ result.created }}">{% include 'extras/inc/report_label.html' %}</span></td>
- </tr>
- {% endfor %}
- </table>
- </div>
- {% endif %}
- <div class="panel panel-default">
- <div class="panel-heading">
- <strong>Changelog</strong>
- </div>
- <div class="list-group">
- {% for change in changelog %}
- {% with action=change.get_action_display|lower %}
- <div class="list-group-item">
- {% if action == 'created' %}
- <span class="label label-success"><i class="fa fa-plus"></i></span>
- {% elif action == 'updated' %}
- <span class="label label-warning"><i class="fa fa-pencil"></i></span>
- {% elif action == 'deleted' %}
- <span class="label label-danger"><i class="fa fa-trash"></i></span>
- {% endif %}
- {{ change.changed_object_type.name|bettertitle }}
- {% if change.changed_object.get_absolute_url %}
- <a href="{{ change.changed_object.get_absolute_url }}">{{ change.changed_object }}</a>
- {% else %}
- {{ change.changed_object|default:change.object_repr }}
- {% endif %}
- <br />
- <small>
- <span class="text-muted">{{ change.user|default:change.user_name }} -</span>
- <a href="{{ change.get_absolute_url }}" class="text-muted">{{ change.time|date:'SHORT_DATETIME_FORMAT' }}</a>
- </small>
- </div>
- {% endwith %}
- {% if forloop.last %}
- <div class="list-group-item text-right">
- <a href="{% url 'extras:objectchange_list' %}">View All Changes</a>
- </div>
- {% endif %}
- {% empty %}
- <div class="list-group-item text-muted">No change history found</div>
- {% endfor %}
- </div>
- </div>
- </div>
- </div>
- {% endblock %}
|