forked from boogiespook/telescope-toggle
-
Notifications
You must be signed in to change notification settings - Fork 1
/
functions.php
129 lines (116 loc) · 4.7 KB
/
functions.php
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
<?php
function putToggles($domain) {
$qq = "SELECT capability.id as id, capability.description as capability, flag.description as flag from capability,flag where domain_id = $domain and capability.flag_id = flag.id ORDER BY capability;";
$result = pg_query($qq) or die('Error message: ' . pg_last_error());
while ($row = pg_fetch_assoc($result)) {
if ($row['flag'] == "green") {
$checked = "checked";
} else {
$checked = "";
}
print ' <li class="toggle-label">
<label class="pf-c-switch" for="' . $row['id'] . '">
<input class="pf-c-switch__input" type="checkbox" name="capability-' . $row['id'] . '" id="' . $row['id'] . '" aria-labelledby="' . $row['id'] . '-on" ' . $checked . ' />
<span class="pf-c-switch__toggle">
<span class="pf-c-switch__toggle-icon">
<i class="fas fa-check" aria-hidden="true"></i>
</span>
</span>
<p class="toggle-capability">' . $row['capability'] . '</p>
</li>
</label>';
}
}
function putAperture($domainId) {
# Get total number of capabilities
$capabilityCount = "select count(capability) as total, domain.description from capability,domain where domain.id = capability.domain_id and domain.id ='" . $domainId . "' group by domain.description;";
$capabilityCountTotal = pg_query($capabilityCount) or die('Error message: ' . pg_last_error());
$capabilityRow = pg_fetch_assoc($capabilityCountTotal);
$totalCapabilities = $capabilityRow['total'];
if ($totalCapabilities != "") {
$capabilityName = $capabilityRow['description'];
$greenCount = "select count(flag_id) as totalgreen from capability where domain_id = '" . $domainId . "' and flag_id = '2'";
$greenTotal = pg_query($greenCount) or die('Error message: ' . pg_last_error());
$greens = pg_fetch_assoc($greenTotal);
$totalGreens = $greens['totalgreen'];
$percentComplete = ($totalGreens / $totalCapabilities) * 100;
# If greens < total, add red aperture
if ($totalGreens < $totalCapabilities) {
print "<img src=images/aperture-red-closed.png title='" . round($percentComplete) . "% Compliant'>";
} else {
print "<img src=images/aperture-green.png title='" . round($percentComplete) . "% Compliant'>";
}
} else {
print "<img src=images/aperture-red-closed.png>";
}
}
function putIcon($colour, $capability) {
if ($colour == 'green') {
print '
<span class="pf-c-icon pf-m-inline">
<span class="pf-c-icon__content pf-m-success">
<i class="fas fa-check-circle" aria-hidden="true"></i>
</span>
</span> ' . $capability . "<br><br>";
} else {
print '
<span class="pf-c-icon pf-m-inline">
<span class="pf-c-icon__content pf-m-danger">
<i class="fas fa-exclamation-circle" aria-hidden="true"></i>
</span>
</span> ' . $capability . "<br><br>";
}
}
function putToggleItems() {
$selectDomains = "select * from domain ORDER by description;";
$domainResults = pg_query($selectDomains) or die('Error message: ' . pg_last_error());
$i = 1;
while ($row = pg_fetch_assoc($domainResults)) {
print '
<div class="pf-c-card pf-m-selectable-raised pf-m-rounded" id="card-' . $i . '">
<div class="pf-c-card__title">
<p id="card-' . $i . '-check-label">' . $row["description"] . '</p>
<div class="pf-c-content">
<small>Key Capabilities</small>
</div>
</div>
<div class="pf-c-card__body">
<div class="pf-c-content">
';
$qq = "select capability.id as id, capability.description as capability, flag.description as flag from capability,flag where domain_id = '" . $row['id'] . "' and capability.flag_id = flag.id ORDER by capability;";
$result = pg_query($qq) or die('Error message: ' . pg_last_error());
while ($row = pg_fetch_assoc($result)) {
if ($row['flag'] == "green") {
$checked = "checked";
} else {
$checked = "";
}
## Check if there is an integration for the capability
$integrationQuery = "select count(*) as total from integrations where capability_id = '" . $row['id'] . "'";
$integrationResult = pg_query($integrationQuery) or die('Error message: ' . pg_last_error());
$intCount = pg_fetch_assoc($integrationResult);
if ($intCount['total'] > 0) {
$toggleClass = "toggle-capability-integration";
} else {
$toggleClass = "toggle-capability";
}
print ' <div class="toggle-label">
<label class="pf-c-switch" for="' . $row['id'] . '">
<input class="pf-c-switch__input" type="checkbox" name="capability-' . $row['id'] . '" id="' . $row['id'] . '" aria-labelledby="' . $row['id'] . '-on" ' . $checked . ' />
<span class="pf-c-switch__toggle">
<span class="pf-c-switch__toggle-icon">
<i class="fas fa-check" aria-hidden="true"></i>
</span>
</span>
<p class="' . $toggleClass . '">' . $row['capability'] . '</p>
</div>
</label>';
}
print '
</div>
</div>
</div>';
$i++;
}
}
?>