diff options
Diffstat (limited to 'modules/private/websites/tools/tools/dmarc_reports/index.html')
-rw-r--r-- | modules/private/websites/tools/tools/dmarc_reports/index.html | 128 |
1 files changed, 0 insertions, 128 deletions
diff --git a/modules/private/websites/tools/tools/dmarc_reports/index.html b/modules/private/websites/tools/tools/dmarc_reports/index.html deleted file mode 100644 index 0afc82f..0000000 --- a/modules/private/websites/tools/tools/dmarc_reports/index.html +++ /dev/null | |||
@@ -1,128 +0,0 @@ | |||
1 | <!DOCTYPE html> | ||
2 | <html> | ||
3 | |||
4 | <head> | ||
5 | <meta charset="utf-8"> | ||
6 | <meta name="viewport" content="width=device-width, initial-scale=1"> | ||
7 | <meta name="robots" content="noindex"> | ||
8 | <title>Dmarc reports</title> | ||
9 | <link rel="stylesheet" href="default.css"> | ||
10 | </head> | ||
11 | |||
12 | <body> | ||
13 | <div id="app" style="width: 100%"> | ||
14 | <div class="optionblock"> | ||
15 | <div class='options'> | ||
16 | <span class='optionlabel'>Anonymize</span> | ||
17 | <label><input type="radio" :value="false" v-model="anonymous" v-on:click="toggleAnonymous()"> no</label> | ||
18 | <label><input type="radio" :value="true" v-model="anonymous" v-on:click="toggleAnonymous()"> yes</label> | ||
19 | </div> | ||
20 | <template v-if="info"> | ||
21 | <div class='options'> | ||
22 | <span class='optionlabel'>Hide all-green lines:</span> | ||
23 | <label><input type="radio" :value="false" v-model="filterGreen"> no</label> | ||
24 | <label><input type="radio" :value="true" v-model="filterGreen"> yes</label> | ||
25 | </div> | ||
26 | <div class='options'> | ||
27 | <span class='optionlabel'>Sort order:</span> | ||
28 | <label><input type="radio" :value="false" v-model="reverse"> ascending</label> | ||
29 | <label><input type="radio" :value="true" v-model="reverse"> descending</label> | ||
30 | </div> | ||
31 | <div class='options'> | ||
32 | <span class='optionlabel'>Domain(s):</span> | ||
33 | <select v-model="filterDomain"> | ||
34 | <option selected="selected" :value="null">[all]</option> | ||
35 | <option v-for="domain in info.domains" :value="domain">{{ domain }}</option> | ||
36 | </select> | ||
37 | </div> | ||
38 | <div class='options'> | ||
39 | <span class='optionlabel'>Organisation(s):</span> | ||
40 | <select v-model="filterOrg"> | ||
41 | <option selected="selected" :value="null">[all]</option> | ||
42 | <option v-for="org in info.orgs" :value="org">{{ org }}</option> | ||
43 | </select> | ||
44 | </div> | ||
45 | <div class='options'> | ||
46 | <span class='optionlabel'>Time:</span> | ||
47 | <select v-model="filterDate"> | ||
48 | <option selected="selected" :value="null">[all]</option> | ||
49 | <option v-for="date in info.dates" :value="date">{{ date }}</option> | ||
50 | </select> | ||
51 | </div> | ||
52 | </template> | ||
53 | </div> | ||
54 | |||
55 | <h1 class='main'>DMARC Reports</h1> | ||
56 | <p v-if="!info" class="warninginfo"> | ||
57 | No information could be fetched. If in non-anonymous mode you need to be logged-in | ||
58 | </p> | ||
59 | <table class='reportlist' v-if="summaries"> | ||
60 | <thead> | ||
61 | <tr> | ||
62 | <th></th> | ||
63 | <th>Start Date</th> | ||
64 | <th>End Date</th> | ||
65 | <th>Domain</th> | ||
66 | <th>Reporting Organization</th> | ||
67 | <th>Report ID</th> | ||
68 | <th>Messages</th> | ||
69 | </tr> | ||
70 | </thead> | ||
71 | <tbody> | ||
72 | <template v-for="summary in filtered()"> | ||
73 | <tr v-on:click="toggle(summary)" class="summaryrow" | ||
74 | v-bind:class="[{ selected: selectedSummary && summary.serial === selectedSummary.serial }]"> | ||
75 | <td class='right'><span :class="'circle_' + getColor(summary)"></span></td> | ||
76 | <td class='right'>{{ printDate(summary.mindate) }}</td> | ||
77 | <td class='right'>{{ printDate(summary.maxdate) }}</td> | ||
78 | <td class='center'>{{ summary.domain }}</td> | ||
79 | <td class='center'>{{ summary.org }}</td> | ||
80 | <td class='center'>{{ summary.reportid }}</td> | ||
81 | <td class='center'>{{ summary.rcount }}</td> | ||
82 | </tr> | ||
83 | <tr v-if="selectedSummary && summary.serial === selectedSummary.serial"> | ||
84 | <td colspan="6" class="reportcell"> | ||
85 | <div class='center reportdesc'> | ||
86 | <p>Policies: adkim={{ summary.policy_adkim }}, aspf={{ summary.policy_aspf }}, p={{ summary.policy_none }}, sp={{ summary.policy_sp }}, pct={{ summary.policy_pct }}</p> | ||
87 | </div> | ||
88 | <table v-if="summary.details" class='reportdata'> | ||
89 | <thead> | ||
90 | <tr> | ||
91 | <th>IP Address</th> | ||
92 | <th>Host Name</th> | ||
93 | <th>Message Count</th> | ||
94 | <th>Disposition</th> | ||
95 | <th>Reason</th> | ||
96 | <th>DKIM Domain</th> | ||
97 | <th>Raw DKIM Result</th> | ||
98 | <th>SPF Domain</th> | ||
99 | <th>Raw SPF Result</th> | ||
100 | </tr> | ||
101 | </thead> | ||
102 | <tbody> | ||
103 | <tr v-for="record in summary.details.rptrecord" :class='getColor(record)'> | ||
104 | <td>{{ record.ip }}</td> | ||
105 | <td>{{ record.host }}</td> | ||
106 | <td>{{ record.rcount }}</td> | ||
107 | <td>{{ record.disposition }}</td> | ||
108 | <td>{{ record.reason }}</td> | ||
109 | <td>{{ record.dkimdomain }}</td> | ||
110 | <td>{{ record.dkimresult }}</td> | ||
111 | <td>{{ record.spfdomain }}</td> | ||
112 | <td>{{ record.spfresult }}</td> | ||
113 | </tr> | ||
114 | </tbody> | ||
115 | </table> | ||
116 | </td> | ||
117 | <td></td> | ||
118 | </tr> | ||
119 | </template> | ||
120 | </tbody> | ||
121 | </table> | ||
122 | </div> | ||
123 | |||
124 | <script src="https://assets.immae.eu/vue/2.6.11/vue.min.js" integrity="sha256-ngFW3UnAN0Tnm76mDuu7uUtYEcG3G5H1+zioJw3t+68=" crossorigin="anonymous"></script> | ||
125 | <script src="app.js"></script> | ||
126 | </body> | ||
127 | |||
128 | </html> | ||