provider.html 3.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798
  1. {% extends 'generic/object.html' %}
  2. {% load static %}
  3. {% load helpers %}
  4. {% load plugins %}
  5. {% block breadcrumbs %}
  6. <li class="breadcrumb-item"><a href="{% url 'circuits:provider_list' %}">Providers</a></li>
  7. <li class="breadcrumb-item">{{ object }}</li>
  8. {% endblock %}
  9. {% block content %}
  10. <div class="row">
  11. <div class="col col-md-4">
  12. <div class="card">
  13. <h5 class="card-header">
  14. Provider
  15. </h5>
  16. <div class="card-body">
  17. <table class="table table-hover attr-table">
  18. <tr>
  19. <th scope="row">ASN</th>
  20. <td><code>{{ object.asn|placeholder }}</code></td>
  21. </tr>
  22. <tr>
  23. <th scope="row">Account</th>
  24. <td>{{ object.account|placeholder }}</td>
  25. </tr>
  26. <tr>
  27. <th scope="row">Customer Portal</th>
  28. <td>
  29. {% if object.portal_url %}
  30. <a href="{{ object.portal_url }}">{{ object.portal_url }}</a>
  31. {% else %}
  32. <span class="text-muted">&mdash;</span>
  33. {% endif %}
  34. </td>
  35. </tr>
  36. <tr>
  37. <th scope="row">NOC Contact</th>
  38. <td class="rendered-markdown">{{ object.noc_contact|render_markdown|placeholder }}</td>
  39. </tr>
  40. <tr>
  41. <th scope="row">Admin Contact</th>
  42. <td class="rendered-markdown">{{ object.admin_contact|render_markdown|placeholder }}</td>
  43. </tr>
  44. <tr>
  45. <th scope="row">Circuits</th>
  46. <td>
  47. <a href="{% url 'circuits:circuit_list' %}?provider={{ object.slug }}">{{ circuits_table.rows|length }}</a>
  48. </td>
  49. </tr>
  50. </table>
  51. </div>
  52. </div>
  53. {% plugin_left_page object %}
  54. </div>
  55. <div class="col col-md-6">
  56. {% include 'inc/custom_fields_panel.html' %}
  57. {% include 'extras/inc/tags_panel.html' with tags=object.tags.all url='circuits:provider_list' %}
  58. <div class="card">
  59. <h5 class="card-header">
  60. Comments
  61. </h5>
  62. <div class="card-body rendered-markdown">
  63. {% if object.comments %}
  64. {{ object.comments|render_markdown }}
  65. {% else %}
  66. <span class="text-muted">None</span>
  67. {% endif %}
  68. </div>
  69. </div>
  70. {% plugin_right_page object %}
  71. </div>
  72. <div class="col col-md-8">
  73. <div class="card">
  74. <h5 class="card-header">
  75. Circuits
  76. </h5>
  77. <div class="card-body">
  78. {% include 'inc/table.html' with table=circuits_table %}
  79. </div>
  80. {% if perms.circuits.add_circuit %}
  81. <div class="card-footer text-end noprint">
  82. <a href="{% url 'circuits:circuit_add' %}?provider={{ object.pk }}" class="btn btn-sm btn-primary">
  83. <i class="mdi mdi-plus-thick" aria-hidden="true"></i> Add circuit
  84. </a>
  85. </div>
  86. {% endif %}
  87. </div>
  88. {% include 'inc/paginator.html' with paginator=circuits_table.paginator page=circuits_table.page %}
  89. </div>
  90. </div>
  91. <div class="row">
  92. <div class="col col-md-12">
  93. {% plugin_full_width_page object %}
  94. </div>
  95. </div>
  96. {% endblock %}