summaryrefslogtreecommitdiffstats
path: root/src/lib/Bcfg2/Reporting/templates/config_items/item.html
blob: 91c368bd74f7d75a9355bfb3c87dca941c723176 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
{% extends "base.html" %}
{% load split %}
{% load syntax_coloring %}
{% load url from bcfg2_compat %}

{% block title %}Bcfg2 - Element Details{% endblock %}


{% block extra_header_info %}
<style type="text/css">
#table_list_header {
    font-size: 100%;
}
table.entry_list {
    width: auto;
}
div.information_wrapper {
    margin: 15px;
}
div.diff_wrapper {
    overflow: auto;
}
div.entry_list h3 {
    font-size: 90%;
    padding: 5px;
}
</style>
{% endblock%}

{% block pagebanner %}Element Details{% endblock %}

{% block content %}
    <div class='detail_header'>
      <h3>{{item.get_state_display}} {{item.entry_type}}: {{item.name}}</h3>
    </div>

  <div class="information_wrapper">
{% block item_details %}
  {% if item.is_extra %}
  <p>This item exists on the host but is not defined in the configuration.</p>
  {% endif %}

  {% if not item.exists %}
  <div class="warning">This item does not currently exist on the host but is specified to exist in the configuration.</div>
  {% endif %}

{# Really need a better test here #}
{% if item.mode_problem or item.status_problem or item.linkentry.link_problem or item.version_problem %}
  <table class='entry_list'>
      <tr id='table_list_header'>
          <td style='text-align: right;'>Problem Type</td><td>Expected</td><td style='border-bottom: 1px solid #98DBCC;'>Found</td></tr>
  {% if item.mode_problem %}
      {% if item.current_perms.owner %}
      <tr><td style='text-align: right'><b>Owner</b></td>
          <td>{{item.target_perms.owner}}</td>
          <td>{{item.current_perms.owner}}</td></tr>
      {% endif %}
      {% if item.current_perms.group %}
      <tr><td style='text-align: right'><b>Group</b></td>
          <td>{{item.target_perms.group}}</td>
          <td>{{item.current_perms.group}}</td></tr>
      {% endif %}
      {% if item.current_perms.mode%}
      <tr><td style='text-align: right'><b>Permissions</b>
          </td><td>{{item.target_perms.mode}}</td>
          <td>{{item.current_perms.mode}}</td></tr>
      {% endif %}
  {% endif %}
  {% if item.status_problem %}
  <tr><td style='text-align: right'><b>Status</b></td>
      <td>{{item.target_status}}</td>
      <td>{{item.current_status}}</td></tr>
  {% endif %}
  {% if item.linkentry.link_problem %}
  <tr><td style='text-align: right'><b>{{item.get_path_type_display}}</b></td>
      <td>{{item.linkentry.target_path}}</td>
      <td>{{item.linkentry.current_path}}</td></tr>
  {% endif %}
  {% if item.version_problem %}
    <tr><td style='text-align: right'><b>Package Version</b></td>
        <td>{{item.target_version|cut:"("|cut:")"}}</td>
        <td>{{item.current_version|cut:"("|cut:")"}}</td></tr>
  {% endif %}
  {% if item.selinuxtype_problem %}
    <tr><td style='text-align: right'><b>SELinux Type</b></td>
        <td>{{item.selinuxtype}}</td>
        <td>{{item.current_selinuxtype}}</td></tr>
  {% endif %}
  </table>
{% endif %}

  {% if item.has_detail %}
    <div class='entry_list'>
      <div class='entry_list_head'>
        {% if item.is_sensitive %}
          <h3>File contents unavailable, as they might contain sensitive data.</h3>
        {% else %}
          <h3>Incorrect file contents ({{item.get_detail_type_display}})</h3>
        {% endif %}
      </div>
      {% if item.is_diff %}
        <div class='diff_wrapper'>
          {{ item.details|syntaxhilight }}
        </div>
      {% else %}
        {{ item.details|linebreaks }}
      {% endif %}
    </div>
  {% endif %}

  <!-- display extra directory entries -->
  {% if item.reason.unpruned %}
    <div class='entry_list'>
      <div class='entry_list_head'>
          <h3>Extra entries found</h3>
      </div>
      <table class='entry_list' cellpadding='3'>
        {% for unpruned_item in item.reason.unpruned|split %}
          <tr><td>{{ unpruned_item }}</td></tr>
        {% endfor %}
      </table>
    </div>
  {% endif %}
{% endblock %}


  <div class='entry_list'>
    <div class='entry_list_head'>
      <h3>Occurences on {{ timestamp|date:"SHORT_DATE_FORMAT" }}</h3>
    </div>
    {% if associated_list %}
      <table class="entry_list" cellpadding="3">
        {% for inter in associated_list %}
          <tr><td><a href='{% url "reports_client_detail" inter.client.name %}'
              >{{inter.client.name}}</a></td>
          <td><a href='{% url "reports_client_detail_pk" hostname=inter.client.name pk=inter.id %}'
              >{{inter.timestamp}}</a></td>
          </tr>
        {% endfor %}
      </table>
    {% else %}
      <p>Missing client list</p>
    {% endif %}
  </div>

  </div><!-- information_wrapper -->
{% endblock %}