Revision 20367931
Réorganisation du code (controllers, etc)
Mise en place d'un système de plugin pour ajouter des colonnes à la volée
Internationalisation complète
Création de quelques tests
git-svn-id: https://vigilo-dev.si.c-s.fr/svn@274 b22e2e97-25c9-44ff-b637-2e5ceca36478
vigiboard/templates/vigiboard_event_table.html | ||
---|---|---|
3 | 3 |
py:strip=""> |
4 | 4 |
|
5 | 5 |
<py:def function="event_table(events,page,pages,id_first_row,id_last_row,total_row,edit_event_status_options)"> |
6 |
<?python from genshi import HTML ?> |
|
6 | 7 |
|
7 | 8 |
<div style="text-align: right"> |
8 | 9 |
<a id="SearchLien" href="javascript:vigiboard_searchdialog()"> |
9 | 10 |
<img src="${tg.url('/images/vigiboard/filter.png')}" /> |
10 | 11 |
</a> |
11 | 12 |
</div> |
12 |
|
|
13 |
<table style="width: 100%">
|
|
14 |
|
|
13 |
<py:if test="len(events) > 1"> |
|
14 |
<table class="vigitable">
|
|
15 |
|
|
15 | 16 |
<thead> |
16 |
|
|
17 | 17 |
<tr> |
18 |
|
|
19 |
<td> |
|
20 |
<a py:if="page > pages[0]" href="${tg.url('/vigiboard/%d' % (page-1))}"><img src="${tg.url('/images/vigiboard/fleche_up.png')}" alt="" /></a> |
|
18 |
<td style="width:27px"> |
|
19 |
<a py:if="page > pages[0]" href="${tg.url('%d' % (page-1))}"><img src="${tg.url('/images/vigiboard/fleche_up.png')}" alt="" /></a> |
|
21 | 20 |
<img py:if="page == pages[0]" src="${tg.url('/images/vigiboard/fleche_up.png')}" alt="" /> |
22 | 21 |
</td> |
23 |
|
|
24 |
<td colspan="8" style="background-color:#4682B4;color:white;text-align:center">Showing rows ${id_first_row} to ${id_last_row} of ${total_row}<br /> |
|
22 |
<td colspan="${8+len(events[1][6])}" style="background-color:#4682B4;color:white;text-align:center">Showing rows ${id_first_row} to ${id_last_row} of ${total_row}<br /> |
|
25 | 23 |
Pages <py:for each="p in pages"> |
26 |
<a py:if="p != page" href="${tg.url('/vigiboard/%d' % p)}" py:content="p" />
|
|
24 |
<a py:if="p != page" href="${tg.url('%d' % p)}" py:content="p" /> |
|
27 | 25 |
<span py:if="p == page" py:replace="p" /> |
28 | 26 |
</py:for> |
29 | 27 |
</td> |
30 |
|
|
31 |
<td> |
|
32 |
<a py:if="pages[-1] > page" href="${tg.url('/vigiboard/%d' % (page+1))}"><img src="${tg.url('/images/vigiboard/fleche_down.png')}" alt="" /></a> |
|
28 |
<td style="width:27px"> |
|
29 |
<a py:if="pages[-1] > page" href="${tg.url('%d' % (page+1))}"><img src="${tg.url('/images/vigiboard/fleche_down.png')}" alt="" /></a> |
|
33 | 30 |
<img py:if="page == pages[-1]" src="${tg.url('/images/vigiboard/fleche_down.png')}" alt="" /> |
34 | 31 |
</td> |
35 |
|
|
36 | 32 |
</tr> |
37 |
|
|
38 |
<tr style="background-color:#F8F8F8"> |
|
39 |
<td> </td> |
|
40 |
<td>Date<br />[Duration]</td> |
|
41 |
<td>#</td> |
|
42 |
<td>Host</td> |
|
43 |
<td>Service Type<br />Service Name</td> |
|
44 |
<td>Output</td> |
|
45 |
<td>[T T]</td> |
|
46 |
<td> </td> |
|
33 |
<tr style="background-color:#F8F8F8;font-weight: bold"> |
|
34 |
<td py:for="item in events[0]">${HTML(item)}</td> |
|
47 | 35 |
<td><a class="Edit_EventsLien" href="javascript:vigiboard_edit_eventdialog('all')"><img src="${tg.url('/images/vigiboard/icon_page_edit.png')}" /></a></td> |
48 | 36 |
<td><input id="vigiboard_checkall_checkbox" type="checkbox" onclick="javascript:vigiboard_checkall()" /></td> |
49 | 37 |
</tr> |
50 |
|
|
51 | 38 |
</thead> |
52 | 39 |
|
53 | 40 |
<tbody> |
54 | 41 |
|
55 |
<py:for each="(event,class_tr,class_td_severity,class_td_date,img_fleche,img_statu) in events">
|
|
42 |
<py:for each="(event,class_tr,class_td_severity,class_td_date,img_fleche,img_statu,plugin) in events[1:]">
|
|
56 | 43 |
<tr py:attrs="class_tr"> |
57 |
<td py:attrs="class_td_severity"><a href="javascript:vigiboard_historydialog('${event.idevent}')" class="HistoryLien"><img py:attrs="img_fleche" style="width:20px"/></a></td>
|
|
44 |
<td py:attrs="class_td_severity"><a href="javascript:vigiboard_historydialog('${event.idevent}')" class="HistoryLien"><img src="${tg.url(img_fleche['src'])}" style="width:20px"/></a></td>
|
|
58 | 45 |
<td py:attrs="class_td_date">${event.GetDate('timestamp_active')}<br />[${event.GetSinceDate('timestamp_active')}]</td> |
59 | 46 |
<td py:attrs="class_td_date">${event.occurence}</td> |
60 | 47 |
<td>${event.hostname}</td> |
61 | 48 |
<td>${event.servicename}</td> |
62 | 49 |
<td>${event.output}</td> |
50 |
<td py:for="plug in plugin" py:attrs="plug[1]">${plug[0]}</td> |
|
63 | 51 |
<td>${event.trouble_ticket}</td> |
64 | 52 |
<td><img py:attrs="img_statu" py:if="img_statu != None" /></td> |
65 | 53 |
<td py:attrs="class_td_date"><a class="Edit_EventsLien" href="javascript:vigiboard_edit_eventdialog('${event.idevent}')"><img src="${tg.url('/images/vigiboard/icon_page_edit.png')}" /></a></td> |
... | ... | |
78 | 66 |
|
79 | 67 |
<script type="text/javascript"> |
80 | 68 |
function vigiboard_historydialog(idd) { |
81 |
$.getJSON("${tg.url('/vigiboard_HistoryDialog')}",{id:idd},function(json){
|
|
69 |
$.getJSON("${tg.url('HistoryDialog')}",{id:idd},function(json){ |
|
82 | 70 |
$('#HistoryDialog_initial_state').html(json.initial_state); |
83 | 71 |
$('#HistoryDialog_current_state').html(json.current_state); |
84 |
$('#HistoryDialog_detailed_event').attr('href' , '${tg.url('/vigiboard_event/')}' + json.idevent);
|
|
85 |
$('#HistoryDialog_detailed_host').attr('href', '${tg.url('/vigiboard_host_service/')}' + json.host + "/" + json.service);
|
|
72 |
$('#HistoryDialog_detailed_event').attr('href' , '${tg.url('event/')}' + json.idevent); |
|
73 |
$('#HistoryDialog_detailed_host').attr('href', '${tg.url('host_service/')}' + json.host + "/" + json.service); |
|
86 | 74 |
$('#HistoryDialog_nagios').attr('href', json.nagios_link); |
87 | 75 |
$('#HistoryDialog_metrology').attr('href', json.metrology_link); |
88 | 76 |
$('#HistoryDialog_security').attr('href', json.security_link); |
... | ... | |
92 | 80 |
} |
93 | 81 |
function vigiboard_edit_eventdialog(idd) { |
94 | 82 |
$('#edit_event_form_comment').attr('value',''); |
95 |
$('#edit_event_form_tt').attr('value',''); |
|
83 |
$('#edit_event_form_trouble_ticket').attr('value','');
|
|
96 | 84 |
$('#edit_event_form_tt_create').attr('checked',false); |
97 | 85 |
$('#edit_event_form_status').find('option:first').attr('selected', 'selected').parent('select');; |
98 | 86 |
if ( idd == 'all' ) { |
... | ... | |
152 | 140 |
${tmpl_context.search_form()} |
153 | 141 |
</div> |
154 | 142 |
|
143 |
</py:if> |
|
144 |
|
|
145 |
<py:if test="1 >= len(events)"> |
|
146 |
Aucun évènement disponible. |
|
147 |
</py:if> |
|
148 |
|
|
155 | 149 |
</py:def> |
156 | 150 |
|
157 | 151 |
</html> |
Also available in: Unified diff