Revision f744bc14
Fusion des plugins "Trouble ticket" et "Status" dans VigiBoard.
Dans le formulaire d'édition d'un événement, la référence du ticket est reprise.
Si plusieurs événements sont sélectionnés :
- si la référence des événements est la même, elle est reprise,
- sinon, le champ est vide dans le formulaire (et le contrôleur ne modifiera pas la référence).
git-svn-id: https://vigilo-dev.si.c-s.fr/svn@2723 b22e2e97-25c9-44ff-b637-2e5ceca36478
vigiboard/config/app_cfg.py | ||
---|---|---|
79 | 79 |
base_config['vigiboard_links.tt'] = 'http://example4.com/%(idcorrevent)d/%(tt)s' |
80 | 80 |
|
81 | 81 |
# Plugins to use |
82 |
base_config['vigiboard_plugins'] = [#{ |
|
83 |
# 'correvent': [ |
|
84 |
('details', 'PluginDetails'), |
|
85 |
('date', 'PluginDate'), |
|
86 |
('priority', 'PluginPriority'), |
|
87 |
('occurrences', 'PluginOccurrences'), |
|
88 |
('hostname', 'PluginHostname'), |
|
89 |
('servicename', 'PluginServicename'), |
|
90 |
('output', 'PluginOutput'), |
|
91 |
('hls', 'PluginHLS'), |
|
92 |
('tt', 'PluginTroubleTicket'), |
|
93 |
('status', 'PluginStatus'), |
|
94 |
|
|
95 |
# Le plugin PluginId peut servir pour débuguer VigiBoard. |
|
96 |
# En production, mieux vaut le désactiver car il expose |
|
97 |
# des données d'un niveau assez bas dans l'interface. |
|
98 |
# ('id', 'PluginId'), |
|
99 |
# ], |
|
100 |
|
|
101 |
# 'event': [ |
|
102 |
# ('timestamp', 'PluginTimestamp'), |
|
103 |
# ('hostname', 'PluginHostname'), |
|
104 |
# ('servicename', 'PluginServicename'), |
|
105 |
# ('current_state', 'PluginCurrentState'), |
|
106 |
# ('initial_state', 'PluginInitialState'), |
|
107 |
# ('peak_state', 'PluginPeakState'), |
|
108 |
# ('output', 'PluginOutput'), |
|
109 |
# ('history_link', 'PluginHistoryLink'), |
|
110 |
# ], |
|
111 |
|
|
112 |
# 'eventhistory': [ |
|
113 |
# |
|
114 |
# ], |
|
115 |
#} |
|
82 |
base_config['vigiboard_plugins'] = [ |
|
83 |
('details', 'PluginDetails'), |
|
84 |
('date', 'PluginDate'), |
|
85 |
('priority', 'PluginPriority'), |
|
86 |
('occurrences', 'PluginOccurrences'), |
|
87 |
('hostname', 'PluginHostname'), |
|
88 |
('servicename', 'PluginServicename'), |
|
89 |
('output', 'PluginOutput'), |
|
90 |
('hls', 'PluginHLS'), |
|
91 |
('status', 'PluginStatus'), |
|
116 | 92 |
] |
117 | 93 |
|
118 | 94 |
base_config['vigiboard_refresh_times'] = ( |
vigiboard/controllers/plugins/status.py | ||
---|---|---|
19 | 19 |
def get_generated_columns_count(self): |
20 | 20 |
""" |
21 | 21 |
Renvoie le nombre de colonnes que ce plugin ajoute. |
22 |
Ce plugin en ajoute 3, au lieu de 1 comme la plupart des plugins.
|
|
22 |
Ce plugin en ajoute 4, au lieu de 1 comme la plupart des plugins.
|
|
23 | 23 |
""" |
24 |
return 3
|
|
24 |
return 4
|
|
25 | 25 |
|
vigiboard/controllers/plugins/tt.py | ||
---|---|---|
1 |
# -*- coding: utf-8 -*- |
|
2 |
# vim:set expandtab tabstop=4 shiftwidth=4: |
|
3 |
""" |
|
4 |
Un plugin pour VigiBoard qui ajoute une colonne avec un lien vers le ticket |
|
5 |
d'incidence se rapportant à un événement corrélé donné. |
|
6 |
""" |
|
7 |
from vigiboard.controllers.plugins import VigiboardRequestPlugin |
|
8 |
|
|
9 |
class PluginTroubleTicket(VigiboardRequestPlugin): |
|
10 |
"""Ajoute un lien vers le ticket d'incidence associé à l'événement.""" |
|
11 |
|
vigiboard/controllers/root.py | ||
---|---|---|
499 | 499 |
flash(_('Changes have occurred since the page was last displayed, ' |
500 | 500 |
'your changes HAVE NOT been saved.'), 'warning') |
501 | 501 |
raise redirect(request.environ.get('HTTP_REFERER', '/')) |
502 |
|
|
502 |
|
|
503 | 503 |
# Vérification que au moins un des identifiants existe et est éditable |
504 | 504 |
if not events.num_rows(): |
505 | 505 |
flash(_('No access to this event'), 'error') |
... | ... | |
513 | 513 |
else: |
514 | 514 |
event = req[0] |
515 | 515 |
|
516 |
if trouble_ticket: |
|
516 |
if trouble_ticket and trouble_ticket != event.trouble_ticket:
|
|
517 | 517 |
history = EventHistory( |
518 | 518 |
type_action="Ticket change", |
519 | 519 |
idevent=event.idcause, |
Also available in: Unified diff