3 """ |
3 """ |
4 |
4 |
5 import os.path, pytz |
5 import os.path, pytz |
6 from log_parser import IrssiParser |
6 from log_parser import IrssiParser |
7 from log_channel import LogChannel |
7 from log_channel import LogChannel |
8 from log_source import LogDirectory |
8 from log_source import LogSourceDecoder, LogDirectory |
9 from log_formatter import IrssiFormatter |
9 from log_formatter import IrssiFormatter |
10 from channels import ChannelList |
10 from channels import ChannelList |
11 import log_formatter |
11 import log_formatter |
12 |
12 |
13 # build relative paths |
13 # build relative paths |
21 LOG_TIMEZONE = pytz.timezone('Europe/Helsinki') |
21 LOG_TIMEZONE = pytz.timezone('Europe/Helsinki') |
22 |
22 |
23 # timestamp format for logfiles |
23 # timestamp format for logfiles |
24 LOG_TIMESTAMP_FMT = '%H:%M:%S' |
24 LOG_TIMESTAMP_FMT = '%H:%M:%S' |
25 |
25 |
26 # character set used for logfiles |
26 # the decoder used for logfiles |
27 LOG_CHARSET = 'utf-8' |
27 LOG_DECODER = LogSourceDecoder(( |
|
28 ('utf-8', 'strict'), |
|
29 ('latin-1', 'replace'), |
|
30 )) |
28 |
31 |
29 # log filename format |
32 # log filename format |
30 LOG_FILENAME_FMT = '%Y-%m-%d' |
33 LOG_FILENAME_FMT = '%Y-%m-%d' |
31 |
34 |
32 # the log parser that we use |
35 # the log parser that we use |
34 LOG_PARSER_FULLTS = IrssiParser(LOG_TIMEZONE, '%Y%m%d%H%M%S') |
37 LOG_PARSER_FULLTS = IrssiParser(LOG_TIMEZONE, '%Y%m%d%H%M%S') |
35 |
38 |
36 # the statically defined channel list |
39 # the statically defined channel list |
37 LOG_CHANNELS = ChannelList([ |
40 LOG_CHANNELS = ChannelList([ |
38 LogChannel('tycoon', "OFTC", "#tycoon", |
41 LogChannel('tycoon', "OFTC", "#tycoon", |
39 LogDirectory(relpath('logs/tycoon'), LOG_TIMEZONE, LOG_PARSER, LOG_CHARSET, LOG_FILENAME_FMT) |
42 LogDirectory(relpath('logs/tycoon'), LOG_TIMEZONE, LOG_PARSER, LOG_DECODER, LOG_FILENAME_FMT) |
40 ), |
43 ), |
41 |
44 |
42 LogChannel('openttd', "OFTC", "#openttd", |
45 LogChannel('openttd', "OFTC", "#openttd", |
43 LogDirectory(relpath('logs/openttd'), LOG_TIMEZONE, LOG_PARSER, LOG_CHARSET, LOG_FILENAME_FMT) |
46 LogDirectory(relpath('logs/openttd'), LOG_TIMEZONE, LOG_PARSER, LOG_DECODER, LOG_FILENAME_FMT) |
44 ), |
47 ), |
45 |
48 |
46 LogChannel('test', "TEST", "#test", |
49 LogChannel('test', "TEST", "#test", |
47 LogDirectory(relpath('/home/terom/irclogs/test'), LOG_TIMEZONE, LOG_PARSER_FULLTS, LOG_CHARSET, LOG_FILENAME_FMT) |
50 LogDirectory(relpath('/home/terom/irclogs/test'), LOG_TIMEZONE, LOG_PARSER_FULLTS, LOG_DECODER, LOG_FILENAME_FMT) |
48 ) |
51 ) |
49 ]) |
52 ]) |
|
53 |
|
54 # how to handle decode() errors for logfile lines |
|
55 LOG_SOURCE_DECODE_ERRORS = 'replace' |
50 |
56 |
51 # date format for URLs |
57 # date format for URLs |
52 URL_DATE_FMT = '%Y-%m-%d' |
58 URL_DATE_FMT = '%Y-%m-%d' |
53 |
59 |
54 # month name format |
60 # month name format |
79 PREF_IMAGE_FONT_DEFAULT = 'default' |
85 PREF_IMAGE_FONT_DEFAULT = 'default' |
80 PREF_IMAGE_FONT_SIZE_DEFAULT = 10 |
86 PREF_IMAGE_FONT_SIZE_DEFAULT = 10 |
81 PREF_IMAGE_FONT_SIZE_MAX = 32 |
87 PREF_IMAGE_FONT_SIZE_MAX = 32 |
82 |
88 |
83 # search line count options |
89 # search line count options |
84 SEARCH_LINE_COUNT_OPTIONS = ( |
90 SEARCH_LINE_COUNT_OPTIONS = ( |
85 (50, 50), |
91 (50, 50), |
86 (100, 100), |
92 (100, 100), |
87 (200, 200), |
93 (200, 200), |
88 (None, "∞"), |
94 (None, "∞"), |
89 ) |
95 ) |
90 |
96 |
|
97 # search index database path |
|
98 SEARCH_INDEX_PATH = 'logs/index' |
|
99 |