author | Tero Marttila <terom@fixme.fi> |
Tue, 10 Feb 2009 02:57:16 +0200 | |
changeset 79 | 43ac75054d5c |
parent 73 | 5a7188bf2894 |
child 81 | 745032a57803 |
permissions | -rw-r--r-- |
73
5a7188bf2894
split defined configuration constants into config, and implement search result pagination
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
1 |
""" |
5a7188bf2894
split defined configuration constants into config, and implement search result pagination
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
2 |
Configureable defaults |
5a7188bf2894
split defined configuration constants into config, and implement search result pagination
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
3 |
""" |
5a7188bf2894
split defined configuration constants into config, and implement search result pagination
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
4 |
|
5a7188bf2894
split defined configuration constants into config, and implement search result pagination
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
5 |
import os.path, pytz |
5a7188bf2894
split defined configuration constants into config, and implement search result pagination
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
6 |
from log_parser import IrssiParser |
5a7188bf2894
split defined configuration constants into config, and implement search result pagination
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
7 |
from log_channel import LogChannel |
5a7188bf2894
split defined configuration constants into config, and implement search result pagination
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
8 |
from log_source import LogDirectory |
5a7188bf2894
split defined configuration constants into config, and implement search result pagination
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
9 |
from log_formatter import IrssiFormatter |
5a7188bf2894
split defined configuration constants into config, and implement search result pagination
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
10 |
from channels import ChannelList |
5a7188bf2894
split defined configuration constants into config, and implement search result pagination
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
11 |
import log_formatter |
5a7188bf2894
split defined configuration constants into config, and implement search result pagination
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
12 |
|
5a7188bf2894
split defined configuration constants into config, and implement search result pagination
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
13 |
# build relative paths |
5a7188bf2894
split defined configuration constants into config, and implement search result pagination
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
14 |
relpath = lambda path : os.path.join(os.path.dirname(__file__), path) |
5a7188bf2894
split defined configuration constants into config, and implement search result pagination
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
15 |
|
79 | 16 |
### ### |
17 |
### Configuration ### |
|
18 |
### ### |
|
19 |
||
73
5a7188bf2894
split defined configuration constants into config, and implement search result pagination
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
20 |
# timezone to use for logs |
79 | 21 |
LOG_TIMEZONE = pytz.timezone('Europe/Helsinki') |
73
5a7188bf2894
split defined configuration constants into config, and implement search result pagination
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
22 |
|
5a7188bf2894
split defined configuration constants into config, and implement search result pagination
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
23 |
# timestamp format for logfiles |
79 | 24 |
LOG_TIMESTAMP_FMT = '%H:%M:%S' |
73
5a7188bf2894
split defined configuration constants into config, and implement search result pagination
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
25 |
|
5a7188bf2894
split defined configuration constants into config, and implement search result pagination
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
26 |
# character set used for logfiles |
79 | 27 |
LOG_CHARSET = 'utf-8' |
73
5a7188bf2894
split defined configuration constants into config, and implement search result pagination
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
28 |
|
5a7188bf2894
split defined configuration constants into config, and implement search result pagination
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
29 |
# log filename format |
79 | 30 |
LOG_FILENAME_FMT = '%Y-%m-%d' |
73
5a7188bf2894
split defined configuration constants into config, and implement search result pagination
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
31 |
|
5a7188bf2894
split defined configuration constants into config, and implement search result pagination
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
32 |
# the log parser that we use |
79 | 33 |
LOG_PARSER = IrssiParser(LOG_TIMEZONE, LOG_TIMESTAMP_FMT) |
73
5a7188bf2894
split defined configuration constants into config, and implement search result pagination
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
34 |
|
5a7188bf2894
split defined configuration constants into config, and implement search result pagination
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
35 |
# the statically defined channel list |
79 | 36 |
LOG_CHANNELS = ChannelList([ |
73
5a7188bf2894
split defined configuration constants into config, and implement search result pagination
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
37 |
LogChannel('tycoon', "OFTC", "#tycoon", |
5a7188bf2894
split defined configuration constants into config, and implement search result pagination
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
38 |
LogDirectory(relpath('logs/tycoon'), LOG_TIMEZONE, LOG_PARSER, LOG_CHARSET, LOG_FILENAME_FMT) |
5a7188bf2894
split defined configuration constants into config, and implement search result pagination
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
39 |
), |
5a7188bf2894
split defined configuration constants into config, and implement search result pagination
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
40 |
|
5a7188bf2894
split defined configuration constants into config, and implement search result pagination
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
41 |
LogChannel('openttd', "OFTC", "#openttd", |
5a7188bf2894
split defined configuration constants into config, and implement search result pagination
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
42 |
LogDirectory(relpath('logs/openttd'), LOG_TIMEZONE, LOG_PARSER, LOG_CHARSET, LOG_FILENAME_FMT) |
5a7188bf2894
split defined configuration constants into config, and implement search result pagination
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
43 |
), |
5a7188bf2894
split defined configuration constants into config, and implement search result pagination
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
44 |
]) |
5a7188bf2894
split defined configuration constants into config, and implement search result pagination
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
45 |
|
5a7188bf2894
split defined configuration constants into config, and implement search result pagination
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
46 |
# date format for URLs |
79 | 47 |
URL_DATE_FMT = '%Y-%m-%d' |
73
5a7188bf2894
split defined configuration constants into config, and implement search result pagination
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
48 |
|
5a7188bf2894
split defined configuration constants into config, and implement search result pagination
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
49 |
# month name format |
79 | 50 |
MONTH_FMT = '%B %Y' |
73
5a7188bf2894
split defined configuration constants into config, and implement search result pagination
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
51 |
|
5a7188bf2894
split defined configuration constants into config, and implement search result pagination
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
52 |
# timezone name format |
79 | 53 |
TIMEZONE_FMT = '%Z %z' |
54 |
||
55 |
# TTF fonts to use for drawing images |
|
56 |
FORMATTER_IMAGE_FONTS = { |
|
57 |
'default': (None, "Ugly default font" ), |
|
58 |
'ttf-dejavu-mono': ("/usr/share/fonts/truetype/ttf-dejavu/DejaVuSansMono.ttf", "DejaVu Sans Mono" ), |
|
59 |
'ttf-liberation-mono': ("/usr/share/fonts/truetype/ttf-liberation/LiberationMono-Regular.ttf", "Liberation Mono Regular" ) |
|
60 |
} |
|
73
5a7188bf2894
split defined configuration constants into config, and implement search result pagination
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
61 |
|
5a7188bf2894
split defined configuration constants into config, and implement search result pagination
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
62 |
# available formatters |
79 | 63 |
LOG_FORMATTERS = { |
64 |
'irssi': IrssiFormatter, |
|
65 |
} |
|
73
5a7188bf2894
split defined configuration constants into config, and implement search result pagination
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
66 |
|
5a7188bf2894
split defined configuration constants into config, and implement search result pagination
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
67 |
# default preferences |
79 | 68 |
PREF_TIME_FMT_DEFAULT = '%H:%M:%S' |
69 |
PREF_DATE_FMT_DEFAULT = '%Y-%m-%d' |
|
70 |
PREF_TIMEZONE_DEFAULT = pytz.utc |
|
71 |
PREF_FORMATTER_DEFAULT = IrssiFormatter |
|
72 |
PREF_COUNT_DEFAULT = 200 |
|
73 |
PREF_COUNT_MAX = None |
|
74 |
PREF_IMAGE_FONT_DEFAULT = 'default' |
|
75 |
PREF_IMAGE_FONT_SIZE_DEFAULT = 10 |
|
76 |
PREF_IMAGE_FONT_SIZE_MAX = 32 |
|
73
5a7188bf2894
split defined configuration constants into config, and implement search result pagination
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
77 |
|
5a7188bf2894
split defined configuration constants into config, and implement search result pagination
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
78 |
# search line count options |
79 | 79 |
SEARCH_LINE_COUNT_OPTIONS = ( |
73
5a7188bf2894
split defined configuration constants into config, and implement search result pagination
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
80 |
(50, 50), |
5a7188bf2894
split defined configuration constants into config, and implement search result pagination
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
81 |
(100, 100), |
5a7188bf2894
split defined configuration constants into config, and implement search result pagination
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
82 |
(200, 200), |
5a7188bf2894
split defined configuration constants into config, and implement search result pagination
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
83 |
(None, "∞"), |
5a7188bf2894
split defined configuration constants into config, and implement search result pagination
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
84 |
) |
5a7188bf2894
split defined configuration constants into config, and implement search result pagination
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
85 |