Project

General

Profile

Statistics
| Branch: | Tag: | Revision:

vigiboard / vigiboard / widgets / search_form.py @ 1101e03e

History | View | Annotate | Download (1.88 KB)

1
# -*- coding: utf-8 -*-
2
# vim:set expandtab tabstop=4 shiftwidth=4:
3
"""Le formulaire de recherche/filtrage."""
4

    
5
from pylons.i18n import lazy_ugettext as l_
6
from tw.forms import TableForm, TextField, CalendarDateTimePicker, SubmitButton
7
from tw.api import WidgetsList
8
from tg import url
9

    
10
__all__ = ('SearchForm', )
11

    
12
class SearchForm(TableForm):
13
    """
14
    Formulaire de recherche dans les événements
15

16
    Affiche un champ texte pour l'hôte, le service, la sortie,
17
    le ticket d'incidence, et la date.
18
    """
19
        
20
    method = 'GET'
21
    style = 'display: none'
22
    submit_text = None
23
    action = url('/')
24
    fields = [
25
        TextField('host', label_text=l_('Host')),
26
        TextField('service', label_text=l_('Service')),
27
        TextField('output', label_text=l_('Output')),
28
        TextField('trouble_ticket', label_text=l_('Trouble Ticket'))
29
    ]
30
    
31
    def __init__(self,  id, lang, date_format='%Y-%m-%d %I:%M:%S %P', 
32
                 *args, **kwargs):
33
        super(SearchForm, self).__init__(id, *args, **kwargs)
34

    
35
        self.children.append(CalendarDateTimePicker(id + '_from_date', 
36
                                name = 'from_date',
37
                                label_text = l_('From:'),
38
                                button_text = l_("Choose"),
39
                                date_format = date_format, 
40
                                not_empty = False,
41
                                calendar_lang=lang))
42
        
43
        self.children.append(CalendarDateTimePicker(id + '_to_date',
44
                                name = 'to_date',
45
                                label_text = l_('To:'),
46
                                button_text = l_("Choose"),
47
                                date_format = date_format, 
48
                                not_empty = False,
49
                                calendar_lang=lang))
50

    
51
        self.children.append(SubmitButton('search', value=l_('Search')))
52