]> git.ipfire.org Git - thirdparty/sarg.git/commitdiff
Merge commit 'debeace19822478022d24437a'
authorFrédéric Marchal <fmarchal@users.sourceforge.net>
Fri, 1 Jun 2012 19:06:50 +0000 (21:06 +0200)
committerFrédéric Marchal <fmarchal@users.sourceforge.net>
Fri, 1 Jun 2012 19:06:50 +0000 (21:06 +0200)
Conflicts:
po/fr.po
po/zh_CN.po

23 files changed:
1  2 
CMakeLists.txt
po/bg.po
po/ca.po
po/cs.po
po/de.po
po/el.po
po/es.po
po/fr.po
po/hu.po
po/id.po
po/it.po
po/ja.po
po/lv.po
po/nl.po
po/pl.po
po/pt.po
po/ro.po
po/ru.po
po/sk.po
po/sr.po
po/tr.po
po/uk.po
po/zh_CN.po

diff --cc CMakeLists.txt
index 9a604d4db4415d9eec7014c6c33560569e34fe5d,2736fe729cb239b6707646e9100482b117112494..477304313f3cd2b39fd99be06fa83460f6047ad5
@@@ -1,9 -1,9 +1,9 @@@
  CMAKE_MINIMUM_REQUIRED (VERSION 2.6)
  PROJECT(sarg C)
  SET(sarg_VERSION 2)
 -SET(sarg_REVISION "3.3-pre1")
 +SET(sarg_REVISION "4-pre1")
  SET(sarg_BUILD "")
- SET(sarg_BUILDDATE "Jan-06-2012")
+ SET(sarg_BUILDDATE "May-21-2012")
  
  INCLUDE(AddFileDependencies)
  INCLUDE(CheckIncludeFile)
diff --cc po/bg.po
index efd218f54f786d0c7aa98639e10c8bd11f505415,ff68d887d6676e100bf13f7a1d268d1dc04c6236..1c99f487287a965d91233fe0b303f390be032ef6
+++ b/po/bg.po
@@@ -1436,13 -1546,8 +1546,13 @@@ msgstr "
  msgid "Sarg compiled to report warnings if the output is inconsistent\n"
  msgstr ""
  
- #: log.c:752
+ #: log.c:755
  #, c-format
 +msgid "Sarg compiled to report warnings if the output is inconsistent\n"
 +msgstr ""
 +
 +#: log.c:740
 +#, c-format
  msgid "setrlimit error - %s\n"
  msgstr ""
  
diff --cc po/ca.po
index 86e3c7f6a919c9f0e33835c2c865f617508ac4bc,1b10571bc26c80e281b077683fa0af205577a999..9493bc6cb2fe9995ac77abf40c7b37617268cd1d
+++ b/po/ca.po
@@@ -1436,13 -1546,8 +1546,13 @@@ msgstr "
  msgid "Sarg compiled to report warnings if the output is inconsistent\n"
  msgstr ""
  
- #: log.c:752
+ #: log.c:755
  #, c-format
 +msgid "Sarg compiled to report warnings if the output is inconsistent\n"
 +msgstr ""
 +
 +#: log.c:740
 +#, c-format
  msgid "setrlimit error - %s\n"
  msgstr ""
  
diff --cc po/cs.po
index 8e5425b690ea0c0b79cddd0621bb713801e9f28d,1826213bd5b9be1b4ce66b765f7664c9782182a7..1af3be07d6a0343985eeca95eba8a88a0911f9a1
+++ b/po/cs.po
@@@ -1436,13 -1546,8 +1546,13 @@@ msgstr "
  msgid "Sarg compiled to report warnings if the output is inconsistent\n"
  msgstr ""
  
- #: log.c:752
+ #: log.c:755
  #, c-format
 +msgid "Sarg compiled to report warnings if the output is inconsistent\n"
 +msgstr ""
 +
 +#: log.c:740
 +#, c-format
  msgid "setrlimit error - %s\n"
  msgstr ""
  
diff --cc po/de.po
index 119ec85c73199a487c6eeac4d216468c37904368,95543f5e4920fcb1a189a828751085ed519f0756..e0521dd6384d67e84d55a9e6fab7a8da5a8b8314
+++ b/po/de.po
@@@ -1436,13 -1546,8 +1546,13 @@@ msgstr "
  msgid "Sarg compiled to report warnings if the output is inconsistent\n"
  msgstr ""
  
- #: log.c:752
+ #: log.c:755
  #, c-format
 +msgid "Sarg compiled to report warnings if the output is inconsistent\n"
 +msgstr ""
 +
 +#: log.c:740
 +#, c-format
  msgid "setrlimit error - %s\n"
  msgstr ""
  
diff --cc po/el.po
index 2b73d88897da5c9e6dbcf771c775ab866da02c49,57ab4aef668fd666cf96e1558afc40f9f984fb79..8070373aeeb7837f7bf0db633796931a8dec1df2
+++ b/po/el.po
@@@ -1436,13 -1546,8 +1546,13 @@@ msgstr "
  msgid "Sarg compiled to report warnings if the output is inconsistent\n"
  msgstr ""
  
- #: log.c:752
+ #: log.c:755
  #, c-format
 +msgid "Sarg compiled to report warnings if the output is inconsistent\n"
 +msgstr ""
 +
 +#: log.c:740
 +#, c-format
  msgid "setrlimit error - %s\n"
  msgstr ""
  
diff --cc po/es.po
index e3bdc18e1e3269f6d09f856103e0bf018c770911,0d778ad37b67fbc9d887d0f1c3903a2faf0f392f..5694b66eab01191f1b7fea3c416c0a8318b68957
+++ b/po/es.po
@@@ -1437,13 -1547,8 +1547,13 @@@ msgstr "
  msgid "Sarg compiled to report warnings if the output is inconsistent\n"
  msgstr ""
  
- #: log.c:752
+ #: log.c:755
  #, c-format
 +msgid "Sarg compiled to report warnings if the output is inconsistent\n"
 +msgstr ""
 +
 +#: log.c:740
 +#, c-format
  msgid "setrlimit error - %s\n"
  msgstr ""
  
diff --cc po/fr.po
index 6199855c89aa5dbdd34182fbf409cd7485e60d6a,9adf0cc1227e5e14399bbd54550799f83a0ca848..78cd2fac8502557e52e129604e67871a4833f497
+++ b/po/fr.po
@@@ -1485,14 -1595,7 +1595,14 @@@ msgstr "
  "Sarg est compilé pour signaler des avertissements si la sortie comporte des "
  "incohérences\n"
  
- #: log.c:752
 +#: log.c:740
 +#, c-format
 +msgid "Sarg compiled to report warnings if the output is inconsistent\n"
 +msgstr ""
 +"Sarg est compilé pour signaler des avertissements si la sortie comporte des "
 +"incohérences\n"
 +
+ #: log.c:755
  #, c-format
  msgid "setrlimit error - %s\n"
  msgstr "erreur setrlimit - %s\n"
diff --cc po/hu.po
index 11d43da58a446fa0bec2295631a3061f1abe908e,2b51fa868aec9595ec4961851814bfe53f3b0996..b38d8f9d49c886c0d4f3797f22913425a44764b5
+++ b/po/hu.po
@@@ -1436,13 -1546,8 +1546,13 @@@ msgstr "
  msgid "Sarg compiled to report warnings if the output is inconsistent\n"
  msgstr ""
  
- #: log.c:752
+ #: log.c:755
  #, c-format
 +msgid "Sarg compiled to report warnings if the output is inconsistent\n"
 +msgstr ""
 +
 +#: log.c:740
 +#, c-format
  msgid "setrlimit error - %s\n"
  msgstr ""
  
diff --cc po/id.po
index ffb190277a3b1d801bbee0e6ee2b06537539222a,01f26a44ffb0f943009d0c47acfb2ffcdc1bdffb..264f84fb56a86e469a497e1997be55877b8158e1
+++ b/po/id.po
@@@ -1436,13 -1546,8 +1546,13 @@@ msgstr "
  msgid "Sarg compiled to report warnings if the output is inconsistent\n"
  msgstr ""
  
- #: log.c:752
+ #: log.c:755
  #, c-format
 +msgid "Sarg compiled to report warnings if the output is inconsistent\n"
 +msgstr ""
 +
 +#: log.c:740
 +#, c-format
  msgid "setrlimit error - %s\n"
  msgstr ""
  
diff --cc po/it.po
index 00d84a51eed98c61ef1be649a718d5804ddfd7fb,8ea58a4af4a7cf789cc4bab90a501c947522fc3a..bb12377b96c51b2dea36b2b6f66b56836c84a352
+++ b/po/it.po
@@@ -1436,13 -1546,8 +1546,13 @@@ msgstr "
  msgid "Sarg compiled to report warnings if the output is inconsistent\n"
  msgstr ""
  
- #: log.c:752
+ #: log.c:755
  #, c-format
 +msgid "Sarg compiled to report warnings if the output is inconsistent\n"
 +msgstr ""
 +
 +#: log.c:740
 +#, c-format
  msgid "setrlimit error - %s\n"
  msgstr ""
  
diff --cc po/ja.po
index 110063e3660080ae188175917939357488069928,c9c4f6737084e7bff9b02c177051b66525864f1c..cb841c60e9f16ec5869dbcd95be86fc069c651fa
+++ b/po/ja.po
@@@ -1436,13 -1546,8 +1546,13 @@@ msgstr "
  msgid "Sarg compiled to report warnings if the output is inconsistent\n"
  msgstr ""
  
- #: log.c:752
+ #: log.c:755
  #, c-format
 +msgid "Sarg compiled to report warnings if the output is inconsistent\n"
 +msgstr ""
 +
 +#: log.c:740
 +#, c-format
  msgid "setrlimit error - %s\n"
  msgstr ""
  
diff --cc po/lv.po
index 5a0be0e078bf363ead2efe41fe4979f599c08c74,8af6fa6da3420ab287a5da9d0dd354e78cabb600..149ebbd6ae5cee25722fa7b0def22ce4c83cda4f
+++ b/po/lv.po
@@@ -1440,13 -1550,8 +1550,13 @@@ msgstr "
  msgid "Sarg compiled to report warnings if the output is inconsistent\n"
  msgstr ""
  
- #: log.c:752
+ #: log.c:755
  #, c-format
 +msgid "Sarg compiled to report warnings if the output is inconsistent\n"
 +msgstr ""
 +
 +#: log.c:740
 +#, c-format
  msgid "setrlimit error - %s\n"
  msgstr ""
  
diff --cc po/nl.po
index 84b909c1b43d44138327e9eccf59268e442f609c,b483c41f0f0d8ab873a10f03d0c4405078a167bb..6fc9bf68230e8cf094aab321815b0398b7e9a573
+++ b/po/nl.po
@@@ -1438,13 -1548,8 +1548,13 @@@ msgstr "
  msgid "Sarg compiled to report warnings if the output is inconsistent\n"
  msgstr ""
  
- #: log.c:752
+ #: log.c:755
  #, c-format
 +msgid "Sarg compiled to report warnings if the output is inconsistent\n"
 +msgstr ""
 +
 +#: log.c:740
 +#, c-format
  msgid "setrlimit error - %s\n"
  msgstr ""
  
diff --cc po/pl.po
index 6401ef6c4efcbd61267bc24f6290068f04b68de6,d2db528e1c2bf12d517722b2d9a7cd1a56e0b21f..e555d6ff3e4c4424b46d9e76ab62c6a084da3379
+++ b/po/pl.po
@@@ -1436,13 -1546,8 +1546,13 @@@ msgstr "
  msgid "Sarg compiled to report warnings if the output is inconsistent\n"
  msgstr ""
  
- #: log.c:752
+ #: log.c:755
  #, c-format
 +msgid "Sarg compiled to report warnings if the output is inconsistent\n"
 +msgstr ""
 +
 +#: log.c:740
 +#, c-format
  msgid "setrlimit error - %s\n"
  msgstr ""
  
diff --cc po/pt.po
index 92decfc996b74a979494914f392b738cd6b2966b,0ac2eee73d248303371688d443eb690232e77478..44e645e1def9d3e5bd35d04d3b48a8821d3abb6c
+++ b/po/pt.po
@@@ -1436,13 -1546,8 +1546,13 @@@ msgstr "
  msgid "Sarg compiled to report warnings if the output is inconsistent\n"
  msgstr ""
  
- #: log.c:752
+ #: log.c:755
  #, c-format
 +msgid "Sarg compiled to report warnings if the output is inconsistent\n"
 +msgstr ""
 +
 +#: log.c:740
 +#, c-format
  msgid "setrlimit error - %s\n"
  msgstr ""
  
diff --cc po/ro.po
index 57bac0b523e7f51c1d4815be3168047eb694916c,f257cc82afdc938148b2608406993c28d10ddf28..61a04f65db943dc728698d3a2513a1383a53bed8
+++ b/po/ro.po
@@@ -1436,13 -1546,8 +1546,13 @@@ msgstr "
  msgid "Sarg compiled to report warnings if the output is inconsistent\n"
  msgstr ""
  
- #: log.c:752
+ #: log.c:755
  #, c-format
 +msgid "Sarg compiled to report warnings if the output is inconsistent\n"
 +msgstr ""
 +
 +#: log.c:740
 +#, c-format
  msgid "setrlimit error - %s\n"
  msgstr ""
  
diff --cc po/ru.po
index 3f277aab6d4141a7e8c413667b008cd18c1631c3,08c5cfa7304bfd4ede696ab542b7c3fd7acc9c72..018db2df93803457a6d75398ec3b2c9d4303f765
+++ b/po/ru.po
@@@ -1406,13 -1517,8 +1517,13 @@@ msgstr "Версия sarg: %s\n
  msgid "Sarg compiled to report warnings if the output is inconsistent\n"
  msgstr ""
  
- #: log.c:752
+ #: log.c:755
  #, c-format
 +msgid "Sarg compiled to report warnings if the output is inconsistent\n"
 +msgstr ""
 +
 +#: log.c:740
 +#, c-format
  msgid "setrlimit error - %s\n"
  msgstr ""
  
diff --cc po/sk.po
index 5c27b4a89adfd7c85891ab6b4349889d5ac71663,e2ee197f2b5156aebfa1256b8c83258cf59f2986..27cdb5ba1dc3dcab08e3f8e3afd88f2dba844dea
+++ b/po/sk.po
@@@ -1436,13 -1546,8 +1546,13 @@@ msgstr "
  msgid "Sarg compiled to report warnings if the output is inconsistent\n"
  msgstr ""
  
- #: log.c:752
+ #: log.c:755
  #, c-format
 +msgid "Sarg compiled to report warnings if the output is inconsistent\n"
 +msgstr ""
 +
 +#: log.c:740
 +#, c-format
  msgid "setrlimit error - %s\n"
  msgstr ""
  
diff --cc po/sr.po
index b6134d12e45d239908e642c7716f4bce84a0cf00,86eb0bd3596206e115cab66fbbcb8430103bf805..d06383e0093181613478d00abe351c5ac0a0258b
+++ b/po/sr.po
@@@ -1436,13 -1546,8 +1546,13 @@@ msgstr "
  msgid "Sarg compiled to report warnings if the output is inconsistent\n"
  msgstr ""
  
- #: log.c:752
+ #: log.c:755
  #, c-format
 +msgid "Sarg compiled to report warnings if the output is inconsistent\n"
 +msgstr ""
 +
 +#: log.c:740
 +#, c-format
  msgid "setrlimit error - %s\n"
  msgstr ""
  
diff --cc po/tr.po
index 3774d3ab48b788c6b03313694fdd6e73839d957b,e2c0e52acc08ce4f4262e722f82b0b0ad6e54964..a8465e8bcbe98d994717fe6684859ab14f125efa
+++ b/po/tr.po
@@@ -1436,13 -1546,8 +1546,13 @@@ msgstr "
  msgid "Sarg compiled to report warnings if the output is inconsistent\n"
  msgstr ""
  
- #: log.c:752
+ #: log.c:755
  #, c-format
 +msgid "Sarg compiled to report warnings if the output is inconsistent\n"
 +msgstr ""
 +
 +#: log.c:740
 +#, c-format
  msgid "setrlimit error - %s\n"
  msgstr ""
  
diff --cc po/uk.po
index b43c1d1eeb4ae090aaea5389315d8d11997ac7ef,79c6360f0838e0d7b611a6b3c615cb6849af3672..725c253a480a4295420149ded5603d43e602cacd
+++ b/po/uk.po
@@@ -1435,13 -1545,8 +1545,13 @@@ msgstr "
  msgid "Sarg compiled to report warnings if the output is inconsistent\n"
  msgstr ""
  
- #: log.c:752
+ #: log.c:755
  #, c-format
 +msgid "Sarg compiled to report warnings if the output is inconsistent\n"
 +msgstr ""
 +
 +#: log.c:740
 +#, c-format
  msgid "setrlimit error - %s\n"
  msgstr ""
  
diff --cc po/zh_CN.po
index 8c0367c1000dcf47dbdd84e26aa25ade4a89330f,0a2a59d2f27e4781c3712a67c4acfd0ef30a0d65..f582bc4a64272feadc507ac8f8edaa2e5151d845
@@@ -42,79 -42,79 +42,79 @@@ msgstr[0] "
  msgid "Authentication failures report not produced because it is empty\n"
  msgstr ""
  
- #: authfail.c:85 dansguardian_log.c:153 email.c:140 html.c:399 lastlog.c:81
- #: log.c:1680 realtime.c:103 redirector.c:375 siteuser.c:68 smartfilter.c:79
- #: sort.c:78 sort.c:137 topsites.c:90 topsites.c:206 topuser.c:170
- #: useragent.c:141 useragent.c:224 useragent.c:293
+ #: authfail.c:85 dansguardian_log.c:153 download.c:70 email.c:140 html.c:394
+ #: lastlog.c:81 log.c:1689 realtime.c:103 redirector.c:396 siteuser.c:68
+ #: smartfilter.c:79 sort.c:84 sort.c:130 topsites.c:87 topsites.c:203
+ #: topuser.c:194 useragent.c:141 useragent.c:224 useragent.c:293
  #, c-format
  msgid "sort command return status %d\n"
 -msgstr "ÅÅÐòÃüÁî·µ»Ø״̬ %d\n"
 +msgstr "���������״̬ %d\n"
  
- #: authfail.c:86 authfail.c:91 dansguardian_log.c:154 email.c:141 html.c:400
- #: lastlog.c:82 log.c:1681 realtime.c:104 redirector.c:376 siteuser.c:69
- #: siteuser.c:75 smartfilter.c:80 smartfilter.c:85 sort.c:79 sort.c:138
- #: topsites.c:91 topsites.c:97 topsites.c:207 topsites.c:212 topuser.c:171
- #: useragent.c:142 useragent.c:147 useragent.c:225 useragent.c:230
- #: useragent.c:294 useragent.c:299
+ #: authfail.c:86 authfail.c:91 dansguardian_log.c:154 download.c:71
+ #: email.c:141 html.c:395 lastlog.c:82 log.c:1690 realtime.c:104
+ #: redirector.c:397 siteuser.c:69 siteuser.c:75 smartfilter.c:80
+ #: smartfilter.c:85 sort.c:85 sort.c:131 topsites.c:88 topsites.c:94
+ #: topsites.c:204 topsites.c:209 topuser.c:195 useragent.c:142 useragent.c:147
+ #: useragent.c:225 useragent.c:230 useragent.c:294 useragent.c:299
  #, c-format
  msgid "sort command: %s\n"
 -msgstr "ÅÅÐòÃüÁî: %s\n"
 +msgstr "��������: %s\n"
  
  #: authfail.c:90 authfail.c:100
  #, c-format
  msgid "(authfail) Cannot open file %s\n"
 -msgstr "(authfail) ²»ÄÜ´ò¿ªÎļþ %s\n"
 +msgstr "(authfail) ���ܴ����ļ� %s\n"
  
  #: authfail.c:95 authfail.c:208 dansguardian_log.c:158
- #: dansguardian_report.c:173 download.c:172 email.c:146 email.c:257
- #: grepday.c:717 html.c:460 html.c:464 html.c:495 html.c:500 index.c:47
- #: lastlog.c:87 lastlog.c:95 log.c:1685 realtime.c:108 realtime.c:292
- #: redirector.c:381 redirector.c:549 report.c:330 siteuser.c:184
- #: smartfilter.c:89 sort.c:83 sort.c:146 topsites.c:181 topsites.c:217
- #: topuser.c:181 topuser.c:323 topuser.c:379 useragent.c:152 useragent.c:235
- #: useragent.c:283 useragent.c:304 useragent.c:337
+ #: dansguardian_report.c:173 download.c:79 download.c:234 email.c:146
+ #: email.c:257 grepday.c:728 html.c:455 html.c:459 html.c:490 html.c:495
+ #: index.c:47 lastlog.c:87 lastlog.c:95 log.c:1694 realtime.c:108
+ #: realtime.c:292 redirector.c:402 redirector.c:579 report.c:335
+ #: siteuser.c:184 smartfilter.c:89 sort.c:89 sort.c:139 topsites.c:178
+ #: topsites.c:214 topuser.c:205 topuser.c:359 topuser.c:415 useragent.c:152
+ #: useragent.c:235 useragent.c:283 useragent.c:304 useragent.c:337
  #, fuzzy, c-format
  msgid "Cannot delete %s - %s\n"
 -msgstr " ²»ÄÜɾ³ý %s - %s\n"
 +msgstr " ����ɾ�� %s - %s\n"
  
- #: authfail.c:104 authfail.c:108 topuser.c:210
+ #: authfail.c:104 authfail.c:108 topuser.c:241
  msgid "Authentication Failures"
 -msgstr "ÈÏ֤ʧ°Ü"
 +msgstr "��֤ʧ��"
  
- #: authfail.c:106 dansguardian_report.c:82 denied.c:86 download.c:82
- #: grepday.c:559 redirector.c:450 siteuser.c:86 smartfilter.c:107
- #: smartfilter.c:175 topsites.c:228 topuser.c:194
+ #: authfail.c:106 dansguardian_report.c:82 denied.c:86 download.c:144
+ #: grepday.c:559 redirector.c:471 siteuser.c:86 smartfilter.c:107
+ #: smartfilter.c:175 topsites.c:225 topuser.c:218
  #, c-format
  msgid "Period: %s"
 -msgstr "Çø¼ä: %s"
 +msgstr "����: %s"
  
- #: authfail.c:112 dansguardian_report.c:88 denied.c:92 download.c:88
- #: email.c:175 realtime.c:314 redirector.c:456 smartfilter.c:116
- #: smartfilter.c:183 topuser.c:238 useragent.c:175
+ #: authfail.c:112 dansguardian_report.c:88 denied.c:92 download.c:150
+ #: email.c:175 realtime.c:314 redirector.c:477 smartfilter.c:116
+ #: smartfilter.c:183 topuser.c:269 useragent.c:175
  msgid "USERID"
 -msgstr "Óû§ID"
 +msgstr "�û�ID"
  
- #: authfail.c:112 dansguardian_report.c:88 denied.c:92 download.c:88
- #: realtime.c:314 redirector.c:456 smartfilter.c:116 smartfilter.c:183
+ #: authfail.c:112 dansguardian_report.c:88 denied.c:92 download.c:150
+ #: realtime.c:314 redirector.c:477 smartfilter.c:116 smartfilter.c:183
  msgid "IP/NAME"
 -msgstr "IP/ÐÕÃû"
 +msgstr "IP/����"
  
- #: authfail.c:112 dansguardian_report.c:88 denied.c:92 download.c:88
- #: realtime.c:314 redirector.c:456 smartfilter.c:116 smartfilter.c:183
+ #: authfail.c:112 dansguardian_report.c:88 denied.c:92 download.c:150
+ #: realtime.c:314 redirector.c:477 smartfilter.c:116 smartfilter.c:183
  msgid "DATE/TIME"
 -msgstr "ÈÕÆÚ/ʱ¼ä"
 +msgstr "����/ʱ��"
  
- #: authfail.c:112 dansguardian_report.c:88 denied.c:92 download.c:88
- #: html.c:208 realtime.c:314 redirector.c:456 report.c:274 siteuser.c:95
- #: smartfilter.c:116 smartfilter.c:183 topsites.c:240
+ #: authfail.c:112 dansguardian_report.c:88 denied.c:92 download.c:150
+ #: html.c:203 realtime.c:314 redirector.c:477 report.c:267 siteuser.c:95
+ #: smartfilter.c:116 smartfilter.c:183 topsites.c:237
  msgid "ACCESSED SITE"
 -msgstr "·ÃÎÊÕ¾µã"
 +msgstr "����վ��"
  
- #: authfail.c:115 email.c:81 html.c:133 html.c:356 html.c:412 siteuser.c:109
- #: topsites.c:107 topsites.c:246
+ #: authfail.c:115 email.c:81 html.c:128 html.c:351 html.c:407 siteuser.c:109
+ #: topsites.c:104 topsites.c:243
  #, c-format
  msgid "Not enough memory to read file %s\n"
 -msgstr "ûÓÐ×ã¹»µÄÄÚ´æÀ´¶ÁÈ¡Îļþ %s\n"
 +msgstr "û���㹻���ڴ����ȡ�ļ� %s\n"
  
  #: authfail.c:122
  #, c-format
@@@ -134,34 -134,33 +134,33 @@@ msgstr "�в��������û
  #: authfail.c:134
  #, c-format
  msgid "There is a broken IP address in file %s\n"
 -msgstr "Óв»ÍêÕûµÄIPµØÖ·ÔÚÎļþÖР%s\n"
 +msgstr "�в�������IP��ַ���ļ��� %s\n"
  
- #: authfail.c:138 denied.c:107 download.c:103 html.c:155 html.c:244
+ #: authfail.c:138 denied.c:107 download.c:165 html.c:150 html.c:239
  #, c-format
  msgid "There is a broken url in file %s\n"
 -msgstr "Óв»ÍêÕûµÄÁ¬½ÓÔÚÎļþÖР%s\n"
 +msgstr "�в�������������ļ��� %s\n"
  
- #: authfail.c:147 denied.c:116 download.c:112 email.c:212 redirector.c:487
- #: siteuser.c:118 smartfilter.c:129 topuser.c:299
+ #: authfail.c:147 denied.c:116 download.c:174 email.c:212 redirector.c:508
+ #: siteuser.c:118 smartfilter.c:129 topuser.c:332
  #, c-format
  msgid "Unknown user ID %s in file %s\n"
 -msgstr "δ֪µÄÓû§ID %s ÔÚÎļþ %s\n"
 +msgstr "δ֪���û�ID %s ���ļ� %s\n"
  
- #: authfail.c:203 dansguardian_report.c:168 denied.c:172 download.c:167
- #: grepday.c:761 html.c:591 redirector.c:544 repday.c:226 siteuser.c:190
- #: topsites.c:294 useragent.c:332
+ #: authfail.c:203 dansguardian_report.c:168 denied.c:175 download.c:229
+ #: grepday.c:772 html.c:586 redirector.c:574 repday.c:240 siteuser.c:190
+ #: topsites.c:291 useragent.c:332
  #, c-format
  msgid "Write error in file %s\n"
 -msgstr "ÔÚÎļþÖÐÓÐдÈë´íÎó %s\n"
 +msgstr "���ļ�����д������ %s\n"
  
- #: authfail.c:205 convlog.c:80 dansguardian_report.c:170 denied.c:174
- #: download.c:169 grepday.c:763 html.c:593 redirector.c:546 repday.c:228
- #: report.c:486 report.c:526 siteuser.c:192 splitlog.c:112 splitlog.c:143
- #: splitlog.c:147 topsites.c:296 topuser.c:455 totday.c:132 useragent.c:127
- #: useragent.c:278 useragent.c:334
+ #: authfail.c:205 convlog.c:80 dansguardian_report.c:170 denied.c:177
+ #: download.c:231 grepday.c:774 html.c:588 redirector.c:576 repday.c:242
+ #: siteuser.c:192 splitlog.c:112 splitlog.c:143 splitlog.c:147 topsites.c:293
+ #: topuser.c:50 totday.c:181 useragent.c:127 useragent.c:278 useragent.c:334
  #, c-format
  msgid "Failed to close file %s - %s\n"
 -msgstr "¹Ø±ÕÎļþʱʧ°Ü %s - %s\n"
 +msgstr "�ر��ļ�ʱʧ�� %s - %s\n"
  
  #: convlog.c:46
  #, fuzzy, c-format
@@@ -186,13 -185,13 +185,13 @@@ msgstr "���ܴ��� DansGuardi
  #: dansguardian_log.c:61 dansguardian_log.c:66 dansguardian_log.c:90
  #, c-format
  msgid "(dansguardian) Cannot open log file: %s\n"
 -msgstr "(dansguardian) ²»ÄÜ´ò¿ªÈÕÖ¾Îļþ: %s\n"
 +msgstr "(dansguardian) ���ܴ�����־�ļ�: %s\n"
  
  #: dansguardian_log.c:77 dansguardian_log.c:116 dansguardian_log.c:125
- #: dansguardian_report.c:94 lastlog.c:114 log.c:934 log.c:939 log.c:945
- #: log.c:953 log.c:957 log.c:961 log.c:966 log.c:971 log.c:1072 log.c:1076
- #: log.c:1080 log.c:1084 log.c:1088 log.c:1092 log.c:1096 log.c:1100
- #: log.c:1104 log.c:1137 log.c:1144 log.c:1168 topsites.c:253 topsites.c:258
+ #: dansguardian_report.c:94 lastlog.c:114 log.c:937 log.c:942 log.c:948
+ #: log.c:956 log.c:960 log.c:964 log.c:969 log.c:974 log.c:1075 log.c:1079
+ #: log.c:1083 log.c:1087 log.c:1091 log.c:1095 log.c:1099 log.c:1103
+ #: log.c:1107 log.c:1140 log.c:1147 log.c:1171 topsites.c:250 topsites.c:255
  #: useragent.c:83 useragent.c:106
  #, c-format
  msgid "Maybe you have a broken record or garbage in your %s file\n"
@@@ -228,18 -227,18 +227,18 @@@ msgstr "���ļ��д����
  #: dansguardian_log.c:112
  #, fuzzy, c-format
  msgid "Invalid IP address found in your dansguardian log file %s\n"
 -msgstr "ÔÚÎļþÖдæÔÚÎÞЧµÄÈÕÆÚ %s\n"
 +msgstr "���ļ��д�����Ч������ %s\n"
  
- #: dansguardian_log.c:120 dansguardian_report.c:98 html.c:366 log.c:949
- #: log.c:1047
+ #: dansguardian_log.c:120 dansguardian_report.c:98 html.c:361 log.c:952
+ #: log.c:1050
  #, c-format
  msgid "Maybe you have a broken url in your %s file\n"
 -msgstr "¿ÉÄÜÄãÓв»ÍêÕûµÄÁ¬½ÓÔÚÄãµÄ %s ÎļþÖÐ\n"
 +msgstr "�������в���������������� %s �ļ���\n"
  
- #: dansguardian_log.c:148 redirector.c:366 sort.c:69 useragent.c:132
+ #: dansguardian_log.c:148 redirector.c:387 sort.c:75 useragent.c:132
  #, c-format
  msgid "Sorting file: %s\n"
 -msgstr "ÕýÔÚÅÅÐòÎļþ: %s\n"
 +msgstr "���������ļ�: %s\n"
  
  #: dansguardian_report.c:34
  #, c-format
@@@ -255,9 -254,9 +254,9 @@@ msgstr "£¨dansguardian_report£©ÎÞ
  #: dansguardian_report.c:71 dansguardian_report.c:76
  #, c-format
  msgid "(dansguardian_report) Cannot open log file %s\n"
 -msgstr "(dansguardian_report) ²»ÄÜ´ò¿ªÈÕÖ¾Îļþ %s\n"
 +msgstr "(dansguardian_report) ���ܴ�����־�ļ� %s\n"
  
- #: dansguardian_report.c:80 dansguardian_report.c:84 topuser.c:206
+ #: dansguardian_report.c:80 dansguardian_report.c:84 topuser.c:237
  msgid "DansGuardian"
  msgstr "DansGuardian"
  
@@@ -268,54 -267,53 +267,53 @@@ msgstr "ԭ��
  #: dansguardian_report.c:102
  #, c-format
  msgid "Maybe you have a broken rule in your %s file\n"
 -msgstr "¿ÉÄÜÄãÓв»ÍêÕûµÄ¹æÔòÔÚÄãµÄ %s ÎļþÖÐ\n"
 +msgstr "�������в������Ĺ��������� %s �ļ���\n"
  
- #: datafile.c:72 html.c:84 report.c:111
+ #: datafile.c:72 html.c:82 report.c:114
  #, fuzzy, c-format
  msgid "Cannot enumerate the user list\n"
 -msgstr "ûÓÐ×ã¹»µÄÄÚ´æÀ´´æ´¢Óû§ %s\n"
 +msgstr "û���㹻���ڴ���洢�û� %s\n"
  
  #: datafile.c:83
  #, fuzzy, c-format
  msgid "Reading user file: %s/%s\n"
 -msgstr "Éú³ÉÎļþ: %s/%s\n"
 +msgstr "�����ļ�: %s/%s\n"
  
- #: datafile.c:86
+ #: datafile.c:87
  #, fuzzy, c-format
  msgid "(datafile) directory path too long: %s/%s.log\n"
 -msgstr "(datafile) Îļþ¼Ð·¾¶Ì«³¤: %s/%s\n"
 +msgstr "(datafile) �ļ���·��̫��: %s/%s\n"
  
- #: datafile.c:91 datafile.c:147
+ #: datafile.c:92 datafile.c:148
  #, c-format
  msgid "(datafile) Cannot open file %s\n"
 -msgstr "(datafile) ²»ÄÜ´ò¿ªÈÕÖ¾Îļþ %s\n"
 +msgstr "(datafile) ���ܴ�����־�ļ� %s\n"
  
- #: datafile.c:96
+ #: datafile.c:97
  #, c-format
  msgid "Not enough memory to read the downloaded files.\n"
 -msgstr "ûÓÐ×ã¹»µÄÄÚ´æÈ¥¶ÁÈ¡ÒÑÏÂÔØÎļþ. \n"
 +msgstr "û���㹻���ڴ�ȥ��ȡ�������ļ�. \n"
  
- #: datafile.c:108 denied.c:103 download.c:99 report.c:156 smartfilter.c:123
- #: totday.c:77
+ #: datafile.c:109 denied.c:103 download.c:161 report.c:166 smartfilter.c:123
  #, c-format
  msgid "There is a broken record or garbage in file %s\n"
 -msgstr "Óв»ÍêÕûµÄ¼Í¼»òÀ¬»øÔÚÎļþ %s\n"
 +msgstr "�в������ļ�¼��������ļ� %s\n"
  
- #: datafile.c:112
+ #: datafile.c:113
  #, c-format
  msgid "There is an invalid smart info in file %s\n"
 -msgstr "ÓÐÎÞЧµÄÖÇÄÜÐÅÏ¢ÔÚÎļþ %s\n"
 +msgstr "����Ч��������Ϣ���ļ� %s\n"
  
- #: datafile.c:131 datafile.c:176 realtime.c:280 report.c:194 report.c:286
- #: report.c:316 siteuser.c:138 topsites.c:121 topsites.c:140
+ #: datafile.c:132 datafile.c:177 realtime.c:280 report.c:203 report.c:279
+ #: report.c:304 siteuser.c:138 topsites.c:118 topsites.c:137
  #, c-format
  msgid "Not enough memory to store the url\n"
 -msgstr "ûÓÐ×ã¹»µÄÄÚ´æÈ¥´æ´¢Á¬½Ó\n"
 +msgstr "û���㹻���ڴ�ȥ�洢���\n"
  
- #: datafile.c:197
+ #: datafile.c:198
  #, c-format
  msgid "Datafile %s written successfully\n"
 -msgstr "Êý¾ÝÎļþ %s Ð´Èë³É¹¦\n"
 +msgstr "�����ļ� %s д���ɹ�\n"
  
  #: decomp.c:36
  #, c-format
@@@ -359,40 -357,60 +357,60 @@@ msgstr "����
  #: denied.c:95
  #, c-format
  msgid "Not enough memory to read the denied accesses\n"
 -msgstr "ûÓÐ×ã¹»µÄÄÚ´æÀ´¶ÁÈ¡×èÖ¹·ÃÎÊ\n"
 +msgstr "û���㹻���ڴ����ȡ��ֹ����\n"
  
- #: denied.c:177
+ #: denied.c:180
  #, fuzzy, c-format
  msgid "Failed to delete the file \"%s\" after processing it - %s\n"
 -msgstr "ɾ³ýÎļþʧ°Ü %s\n"
 +msgstr "ɾ���ļ�ʧ�� %s\n"
  
- #: download.c:64
- msgid "Downloaded files report not generated as it is empty\n"
+ #: dichotomic.c:161 dichotomic.c:176
+ #, fuzzy, c-format
+ msgid "Not enough memory to store the key/value pair %s/%s\n"
 -msgstr "ûÓÐ×ã¹»µÄÄÚ´æÀ´´æ´¢Óû§ %s\n"
++msgstr "û���㹻���ڴ���洢�û� %s\n"
+ #: download.c:65
+ #, c-format
+ msgid "Path too long to sort the file: %s/download.int_unsort\n"
+ msgstr ""
+ #: download.c:75
+ #, fuzzy, c-format
+ msgid "Path too long for %s/download.int_unsort\n"
 -msgstr "Óû§Ãû¹ý³¤ %s/%s.unsort\n"
++msgstr "�û������� %s/%s.unsort\n"
+ #: download.c:114
+ #, fuzzy
+ msgid "No downloaded files to report\n"
 -msgstr "ÏÂÔغó׺Áбí¹ý³¤\n"
++msgstr "���غ�׺�б�����\n"
+ #: download.c:125
+ msgid "Sorted file doesn't exist (to produce the download report)\n"
  msgstr ""
  
- #: download.c:71 download.c:76
+ #: download.c:133 download.c:138
  #, c-format
  msgid "(download) Cannot open log file %s\n"
 -msgstr "(download) ²»ÄÜ´ò¿ªÈÕÖ¾Îļþ %s\n"
 +msgstr "(download) ���ܴ�����־�ļ� %s\n"
  
- #: download.c:80 download.c:84 topuser.c:208
+ #: download.c:142 download.c:146 topuser.c:239
  msgid "Downloads"
 -msgstr "ÏÂÔØ"
 +msgstr "����"
  
- #: download.c:91 report.c:146 topuser.c:260
+ #: download.c:153 report.c:156 topuser.c:293
  #, c-format
  msgid "Not enough memory to read the downloaded files\n"
 -msgstr "ûÓÐ×ã¹»µÄÄÚ´æÀ´¶ÁÈ¡ÏÂÔØÎļþ\n"
 +msgstr "û���㹻���ڴ����ȡ�����ļ�\n"
  
- #: download.c:202
+ #: download.c:275
  #, c-format
  msgid "Download suffix list too long\n"
 -msgstr "ÏÂÔغó׺Áбí¹ý³¤\n"
 +msgstr "���غ�׺�б�����\n"
  
- #: download.c:210
+ #: download.c:283
  #, c-format
  msgid "Too many download suffixes\n"
 -msgstr "¹ý¶àµÄÏÂÔغó׺\n"
 +msgstr "���������غ�׺\n"
  
  #: email.c:61 email.c:67 email.c:73 email.c:151 email.c:157 email.c:269
  #, c-format
@@@ -411,42 -429,42 +429,42 @@@ msgstr "
  msgid "Sort command too long when sorting file \"%s\" to \"%s\"\n"
  msgstr "ѹËõÃüÁî¶ÔÓÚÈÕÖ¾Îļþ¹ý³¤ %s\n"
  
- #: email.c:161 log.c:361
+ #: email.c:161 log.c:363
  msgid "Squid User Access Report"
 -msgstr "SquidÓû§·ÃÎʱ¨¸æ"
 +msgstr "Squid�û����ʱ���"
  
  #: email.c:165
  msgid "Decreasing Access (bytes)"
 -msgstr "½µµÍ·ÃÎÊ(bytes)"
 +msgstr "���ͷ���(bytes)"
  
- #: email.c:169 html.c:187 repday.c:127 report.c:265 useragent.c:167
+ #: email.c:169 html.c:182 repday.c:127 report.c:258 useragent.c:167
  msgid "Period"
 -msgstr "ÆÚ¼ä"
 +msgstr "�ڼ�"
  
- #: email.c:173 siteuser.c:93 topsites.c:238 topuser.c:229
+ #: email.c:173 siteuser.c:93 topsites.c:235 topuser.c:260
  msgid "NUM"
 -msgstr "Êý×Ö"
 +msgstr "����"
  
- #: email.c:177 html.c:211 topsites.c:240 topuser.c:241
+ #: email.c:177 html.c:206 topsites.c:237 topuser.c:272
  msgid "CONNECT"
 -msgstr "Á¬½Ó"
 +msgstr "���"
  
- #: email.c:179 grepday.c:740 html.c:213 html.c:215 index.c:432 repday.c:140
- #: siteuser.c:97 topsites.c:240 topuser.c:243 topuser.c:245
+ #: email.c:179 grepday.c:751 html.c:208 html.c:210 index.c:432 repday.c:140
+ #: siteuser.c:97 topsites.c:237 topuser.c:274 topuser.c:276
  msgid "BYTES"
 -msgstr "×Ö½Ú"
 +msgstr "�ֽ�"
  
- #: email.c:181 grepday.c:753 html.c:219 topuser.c:249
+ #: email.c:181 grepday.c:764 html.c:214 topuser.c:280
  msgid "ELAPSED TIME"
 -msgstr "ÒÑʹÓÃʱ¼ä"
 +msgstr "��ʹ��ʱ��"
  
- #: email.c:183 html.c:221 topuser.c:251
+ #: email.c:183 html.c:216 topuser.c:282
  msgid "MILLISEC"
 -msgstr "ºÁÃë"
 +msgstr "����"
  
- #: email.c:185 html.c:223 report.c:274 topsites.c:240 topuser.c:253
+ #: email.c:185 html.c:218 report.c:267 topsites.c:237 topuser.c:284
  msgid "TIME"
 -msgstr "ʱ¼ä"
 +msgstr "ʱ��"
  
  #: email.c:194 useragent.c:197
  #, c-format
@@@ -466,31 -484,38 +484,38 @@@ msgstr "��һ����ڵķ��ï
  #: email.c:206
  #, c-format
  msgid "There is an invalid elapsed time in file %s\n"
 -msgstr "ÓÐÒ»¸öÎÞЧµÄʱ¼äֵ %s\n"
 +msgstr "��һ����Ч��ʱ��ֵ %s\n"
  
- #: email.c:231 email.c:233 html.c:508 repday.c:145 repday.c:169 repday.c:188
- #: repday.c:212 topuser.c:390 useragent.c:311
+ #: email.c:231 email.c:233 html.c:503 repday.c:145 repday.c:169 repday.c:195
+ #: repday.c:219 topuser.c:426 useragent.c:311
  msgid "TOTAL"
 -msgstr "×Üֵ"
 +msgstr "��ֵ"
  
- #: email.c:247 html.c:569 index.c:432 topuser.c:423
+ #: email.c:247 html.c:564 index.c:432 topuser.c:460
  msgid "AVERAGE"
 -msgstr "ƽ¾ùֵ"
 +msgstr "ƽ��ֵ"
  
- #: email.c:276
+ #. TRANSLATORS: The string is formatted using strftime. You can use
+ #. * any string formatting marker allowed by strftime.
+ #: email.c:278
  #, fuzzy, c-format
- msgid "SARG report, %s"
+ msgid "SARG report, %c"
 -msgstr "SARG ±¨¸æ %s"
 +msgstr "SARG ���� %s"
  
- #: email.c:280 index.c:582 log.c:1663
+ #: email.c:281
+ #, fuzzy, c-format
+ msgid "Sending mail with command: %s\n"
 -msgstr "ÃüÁî: %s\n"
++msgstr "����: %s\n"
+ #: email.c:284 index.c:582 log.c:1672
  #, c-format
  msgid "command return status %d\n"
 -msgstr "ÃüÁî·µ»Ø״̬ %d\n"
 +msgstr "�����״̬ %d\n"
  
- #: email.c:281 index.c:583 log.c:1664
+ #: email.c:285 index.c:583 log.c:1673
  #, c-format
  msgid "command: %s\n"
 -msgstr "ÃüÁî: %s\n"
 +msgstr "����: %s\n"
  
  #: exclude.c:82 exclude.c:110
  #, c-format
@@@ -515,9 -540,9 +540,9 @@@ msgstr "�����ܾ����ï¿
  #: exclude.c:203 exclude.c:317
  #, c-format
  msgid "(gethexclude) Cannot open file %s - %s\n"
 -msgstr "(gethexclude)²»ÄÜ´ò¿ªÎļþ %s - %s\n"
 +msgstr "(gethexclude)���ܴ����ļ� %s - %s\n"
  
- #: exclude.c:214
+ #: exclude.c:214 url.c:596
  #, c-format
  msgid "While reading \"%s\"\n"
  msgstr ""
@@@ -530,12 -555,12 +555,12 @@@ msgstr "�����ų��ļ��
  #: exclude.c:322
  #, c-format
  msgid "Failed to move till the end of the excluded users file %s: %s\n"
 -msgstr "ÔÚÅųýÓû§Îļþ֮ǰ²»ÄÜÒƶ¯¸ÃÎļþ %s: %s\n"
 +msgstr "���ų��û��ļ�֮ǰ�����ƶ����ļ� %s: %s\n"
  
- #: exclude.c:327 log.c:1739 usertab.c:73 util.c:1417
+ #: exclude.c:327 log.c:1747 usertab.c:73 util.c:1417
  #, c-format
  msgid "Cannot get the size of file %s\n"
 -msgstr "²»Äܵõ½ÎļþµÄ´óС %s\n"
 +msgstr "���ܵõ��ļ��Ĵ�С %s\n"
  
  #: exclude.c:332
  #, c-format
@@@ -614,91 -639,98 +639,98 @@@ msgstr "SARG: TAG: %s\n
  #, c-format
  msgid ""
  "Maybe you have a broken record or garbage in \"date_format\" parameter\n"
 -msgstr "¿ÉÄÜÄãÓв»ÍêÕûµÄ¼Í¼»òÀ¬»øÔÚ \"date_format\" ²ÎÊýÖÐ\n"
 +msgstr "�������в������ļ�¼������� \"date_format\" ������\n"
  
- #: getconf.c:478
+ #: getconf.c:480
  #, c-format
  msgid "Error: Invalid syntax in hours tag!\n"
 -msgstr "´íÎó: ²»´æÔڵľ䷨ÔÚСʱ±êÇ©ÖÐ!\n"
 +msgstr "����: �����ڵľ䷨��Сʱ��ǩ��!\n"
  
- #: getconf.c:486
+ #: getconf.c:488
  #, c-format
  msgid "Error: Invalid syntax in weekdays tag!\n"
 -msgstr "´íÎó: ²»´æÔڵľ䷨ÔÚÔÚʱ¼ä±êÇ©ÖÐ!\n"
 +msgstr "����: �����ڵľ䷨����ʱ����ǩ��!\n"
  
- #: getconf.c:499
+ #: getconf.c:501
  #, c-format
  msgid "Too many log files in configuration file\n"
 -msgstr "ÔÚÅäÖÃÎļþÖдæÔÚ¹ý¶àµÄÈÕÖ¾Îļþ\n"
 +msgstr "�������ļ��д��ڹ�������־�ļ�\n"
  
- #: getconf.c:511
+ #: getconf.c:513
  #, c-format
  msgid "Too many redirector log files in configuration file\n"
 -msgstr "ÔÚÅäÖÃÎļþÖÐÓжàÓàµÄÖض¨ÏòÈÕÖ¾Îļþ\n"
 +msgstr "�������ļ����ж������ض�����־�ļ�\n"
  
- #: getconf.c:655 getconf.c:662
+ #: getconf.c:657 getconf.c:664
  #, c-format
  msgid "Template file name is too long in parameter \"AuthUserTemplateFile\"\n"
 -msgstr "ÔÚ²ÎÊýÖÐÁÙʱÎļþÃû¹ý³¤\"AuthUserTemplateFile\"\n"
 +msgstr "�ڲ�������ʱ�ļ�������\"AuthUserTemplateFile\"\n"
  
- #: getconf.c:683
+ #: getconf.c:682
+ #, c-format
+ msgid ""
+ "No graphs available as sarg was not compiled with libgd. Set \"graphs\" to "
+ "\"no\" in %s to disable this warning\n"
+ msgstr ""
+ #: getconf.c:692
  #, c-format
  msgid ""
  "squidguard_log_format is deprecated and has been replaced by "
  "redirector_log_format. Please update your configuration file.\n"
  msgstr ""
 -"squidguard_log_formatÒÑʧЧ£¬²¢ÇÒÒѾ­±» redirector_log_format ËùÌæ´ú£¬Çë¸üÐÂ"
 -"ÄúµÄÅäÖÃÎļþ¡£\n"
 +"squidguard_log_format��ʧЧ�������Ѿ��� redirector_log_format ��������������"
 +"���������ļ���\n"
  
- #: getconf.c:692
+ #: getconf.c:701
  #, fuzzy, c-format
  msgid ""
  "redirector_ignore_date is deprecated and has been replaced by "
  "redirector_filter_out_date that does the action implied by its name as "
  "opposed to redirector_ignore_date. Please update your configuration file.\n"
  msgstr ""
 -"squidguard_ignore_date ÒÑʧЧ£¬²¢ÇÒÒѾ­±»redirector_ignore_dateËùÌæ´ú¡£Çë¸üÐÂ"
 -"ÄúµÄÅäÖÃÎļþ¡£\n"
 +"squidguard_ignore_date ��ʧЧ�������Ѿ���redirector_ignore_date��������������"
 +"���������ļ���\n"
  
- #: getconf.c:697
+ #: getconf.c:706
  #, fuzzy, c-format
  msgid ""
  "squidguard_ignore_date is deprecated and has been replaced by "
  "redirector_filter_out_date that does the action implied by its name as "
  "opposed to squidguard_ignore_date. Please update your configuration file.\n"
  msgstr ""
 -"squidguard_ignore_date ÒÑʧЧ£¬²¢ÇÒÒѾ­±»redirector_ignore_dateËùÌæ´ú¡£Çë¸üÐÂ"
 -"ÄúµÄÅäÖÃÎļþ¡£\n"
 +"squidguard_ignore_date ��ʧЧ�������Ѿ���redirector_ignore_date��������������"
 +"���������ļ���\n"
  
- #: getconf.c:704
+ #: getconf.c:713
  #, fuzzy, c-format
  msgid ""
  "dansguardian_ignore_date is deprecated and has been replaced by "
  "dansguardian_filter_out_date that does the action implied by its name as "
  "opposed to dansguardian_ignore_date. Please update your configuration file.\n"
  msgstr ""
 -"squidguard_ignore_date ÒÑʧЧ£¬²¢ÇÒÒѾ­±»redirector_ignore_dateËùÌæ´ú¡£Çë¸üÐÂ"
 -"ÄúµÄÅäÖÃÎļþ¡£\n"
 +"squidguard_ignore_date ��ʧЧ�������Ѿ���redirector_ignore_date��������������"
 +"���������ļ���\n"
  
- #: getconf.c:751 getconf.c:756
+ #: getconf.c:760 getconf.c:765
  #, c-format
  msgid "The \"byte_cost\" parameter of the configuration file is invalid\n"
 -msgstr "\"byte_cost\" ÅäÖÃÎļþµÄ²ÎÊý²»´æÔÚ\n"
 +msgstr "\"byte_cost\" �����ļ��IJ���������\n"
  
- #: getconf.c:763
+ #: getconf.c:772
  #, c-format
  msgid "SARG: Unknown option %s\n"
 -msgstr "SARG: δ֪µÄÑ¡Ïî %s\n"
 +msgstr "SARG: δ֪��ѡ�� %s\n"
  
- #: getconf.c:772
+ #: getconf.c:781
  #, c-format
  msgid "Loading configuration from %s\n"
 -msgstr "ÔØÈëÅäÖôӠ%s\n"
 +msgstr "�������ô� %s\n"
  
- #: getconf.c:775
+ #: getconf.c:784
  #, c-format
  msgid "(getconf) Cannot open file %s\n"
 -msgstr "(getconf) ²»ÄÜ´ò¿ªÎļþ %s\n"
 +msgstr "(getconf) ���ܴ����ļ� %s\n"
  
  #: grepday.c:144
  #, fuzzy, c-format
@@@ -747,270 -779,280 +779,280 @@@ msgstr "SARG,
  #: grepday.c:561
  #, c-format
  msgid "User: %s"
 -msgstr "Óû§: %s"
 +msgstr "�û�: %s"
  
- #: grepday.c:617 grepday.c:722
+ #: grepday.c:617 grepday.c:733
  #, fuzzy, c-format
  msgid "user name too long for %s/%s/%s\n"
 -msgstr "Óû§Ãû¹ý³¤ %s/%s.day\n"
 +msgstr "�û������� %s/%s.day\n"
  
- #: grepday.c:621 grepday.c:680
+ #: grepday.c:621 grepday.c:691
  #, c-format
  msgid "(grepday) Cannot open log file %s\n"
 -msgstr "(grepday) ²»ÄÜ´ò¿ªÈÕÖ¾Îļþ %s\n"
 +msgstr "(grepday) ���ܴ�����־�ļ� %s\n"
  
- #: grepday.c:637
+ #: grepday.c:638
+ #, c-format
+ msgid "Graphs disabled as requested in %s\n"
+ msgstr ""
+ #: grepday.c:643
+ #, c-format
+ msgid "Graphs disabled as no font names were provided in %s\n"
+ msgstr ""
+ #: grepday.c:648
  #, c-format
  msgid "(grepday) Fontname %s not found\n"
 -msgstr "(grepday) ×ÖÌåÃû³Æ %s ÕÒ²»µ½\n"
 +msgstr "(grepday) ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ %s ï¿½Ò²ï¿½ï¿½ï¿½\n"
  
- #: grepday.c:644
+ #: grepday.c:655
  #, c-format
  msgid "(grepday) iconv cannot convert from %s to UTF-8 - %s\n"
 -msgstr "(grepday) iconv ²»ÄÜת»»´Ó %s µ½ UTF-8 - %s\n"
 +msgstr "(grepday) iconv ï¿½ï¿½ï¿½ï¿½×ªï¿½ï¿½ï¿½ï¿½ %s ï¿½ï¿½ UTF-8 - %s\n"
  
- #: grepday.c:668
+ #: grepday.c:679
  #, c-format
  msgid "user name too long for %s/%s.day\n"
 -msgstr "Óû§Ãû¹ý³¤ %s/%s.day\n"
 +msgstr "�û������� %s/%s.day\n"
  
- #: grepday.c:690 redirector.c:465 repday.c:81
+ #: grepday.c:701 redirector.c:486 repday.c:81
  #, c-format
  msgid "Invalid date in file %s\n"
 -msgstr "ÔÚÎļþÖдæÔÚÎÞЧµÄÈÕÆÚ %s\n"
 +msgstr "���ļ��д�����Ч������ %s\n"
  
- #: grepday.c:696
+ #: grepday.c:707
  #, c-format
  msgid "Invalid entry in file %s\n"
 -msgstr "ÔÚÎļþÖдæÔÚÎÞЧÊäÈë %s\n"
 +msgstr "���ļ��д�����Ч���� %s\n"
  
- #: grepday.c:702 repday.c:106 totday.c:96
+ #: grepday.c:713 repday.c:106
  #, c-format
  msgid "Invalid number of bytes in file %s\n"
 -msgstr "ÔÚÎļþÖдæÔÚÎÞЧµÄÊý×Ö×Ö½Ú %s\n"
 +msgstr "���ļ��д�����Ч�������ֽ� %s\n"
  
- #: grepday.c:709 repday.c:113 totday.c:103
+ #: grepday.c:720 repday.c:113
  #, c-format
  msgid "Invalid elapsed time in file %s\n"
 -msgstr "ÔÚÎļþÖдæÔÚÎÞЧµÄʱ¼ä¶Î %s\n"
 +msgstr "���ļ��д�����Ч��ʱ���� %s\n"
  
- #: grepday.c:726
+ #: grepday.c:737
  #, fuzzy, c-format
  msgid "(grepday) Cannot open output file %s\n"
 -msgstr "(grepday) ²»ÄÜ´ò¿ªÈÕÖ¾Îļþ %s\n"
 +msgstr "(grepday) ���ܴ�����־�ļ� %s\n"
  
- #: grepday.c:729
+ #: grepday.c:740
  #, fuzzy
  msgid "Graph report"
 -msgstr "ÈÕ±¨"
 +msgstr "�ձ�"
  
- #: grepday.c:736 grepday.c:749 index.c:263
+ #: grepday.c:747 grepday.c:760 index.c:263
  msgid "DAYS"
 -msgstr "ÈÕ"
 +msgstr "��"
  
  #: html.c:64
  #, fuzzy, c-format
- msgid "File name too long: %s/sargtmp.unsort\n"
+ msgid "File name too long: %s/sargtmp.int_unsort\n"
 -msgstr "ÎļþÃû¹ý³¤: %s/%s%s\n"
 +msgstr "�ļ�������: %s/%s%s\n"
  
  #: html.c:69
  #, fuzzy, c-format
- msgid "File name too long: %s/sargtmp.log\n"
+ msgid "File name too long: %s/sargtmp.int_log\n"
 -msgstr "ÎļþÃû¹ý³¤: %s/%s.ip\n"
 +msgstr "�ļ�������: %s/%s.ip\n"
  
- #: html.c:89
+ #: html.c:87
  #, c-format
  msgid "Destination directory too long: %s/%s\n"
 -msgstr "Ŀ±êĿ¼¹ý³¤: %s/%s\n"
 +msgstr "Ŀ��Ŀ¼����: %s/%s\n"
  
- #: html.c:100 index.c:543 index.c:551 util.c:332 util.c:344 util.c:934
+ #: html.c:98 index.c:543 index.c:551 util.c:332 util.c:344 util.c:934
  #, fuzzy, c-format
  msgid "Cannot create directory %s - %s\n"
 -msgstr "´ò¿ªÎļþ¼Ðʱʧ°Ü %s - %s\n"
 +msgstr "�����ļ���ʱʧ�� %s - %s\n"
  
- #: html.c:110
+ #: html.c:105
  #, fuzzy, c-format
  msgid "Input file name too long: %s/htmlrel.txt\n"
 -msgstr "ÊäÈëµÄÃû³Æ¹ý³¤: %s/%s\n"
 +msgstr "���������ƹ���: %s/%s\n"
  
- #: html.c:115
+ #: html.c:110
  #, c-format
  msgid "(html3) Cannot open file %s\n"
 -msgstr "(html3) ²»ÄÜ´ò¿ªÎļþ %s\n"
 +msgstr "(html3) ���ܴ����ļ� %s\n"
  
- #: html.c:120
+ #: html.c:115
  #, c-format
  msgid "Output file name too long: %s/%s/%s.html\n"
 -msgstr "Êä³öÎļþÃû¹ý³¤: %s/%s/%s.html\n"
 +msgstr "�����ļ�������: %s/%s/%s.html\n"
  
- #: html.c:124
+ #: html.c:119
  #, c-format
  msgid "File name too long: %s/%s/denied_%s.html\n"
 -msgstr "ÎļþÃû¹ý³¤: %s/%s/denied_%s.html\n"
 +msgstr "�ļ�������: %s/%s/denied_%s.html\n"
  
- #: html.c:145 html.c:236 topuser.c:275
+ #: html.c:140 html.c:231 topuser.c:308
  #, c-format
  msgid "There is a broken number of access in file %s\n"
 -msgstr "Óв»ÍêÕûµÄ·ÃÎÊÊý×ÖÔÚÎļþ %s\n"
 +msgstr "�в������ķ����������ļ� %s\n"
  
- #: html.c:150
+ #: html.c:145
  #, c-format
  msgid "There is a broken downloaded size in file %s\n"
 -msgstr "Óв»ÍêÕûµÄÏÂÔØ´óСÔÚÎļþ %s\n"
 +msgstr "�в����������ش�С���ļ� %s\n"
  
- #: html.c:159 html.c:248
+ #: html.c:154 html.c:243
  #, c-format
  msgid "There is a broken access code in file %s\n"
 -msgstr "Óв»ÍêÕûµÄ·ÃÎÊ´úÂëÔÚÎļþ %s\n"
 +msgstr "�в������ķ��ʴ������ļ� %s\n"
  
- #: html.c:163 html.c:252 report.c:161
+ #: html.c:158 html.c:247 report.c:171
  #, c-format
  msgid "There is a broken elapsed time in file %s\n"
 -msgstr "Óв»ÍêÕûµÄʱ¼äÔÚÎļþ %s\n"
 +msgstr "�в�������ʱ�����ļ� %s\n"
  
- #: html.c:168
+ #: html.c:163
  #, c-format
  msgid "There is a broken in-cache volume in file %s\n"
 -msgstr "Óв»ÍêÕûµÄin-cache¾íÔÚÎļþ %s\n"
 +msgstr "�в�������in-cache�����ļ� %s\n"
  
- #: html.c:173
+ #: html.c:168
  #, c-format
  msgid "There is a broken out-cache volume in file %s\n"
 -msgstr "Óв»ÍêÕûµÄout-cache¾íÔÚÎļþ %s\n"
 +msgstr "�в�������out-cache�����ļ� %s\n"
  
- #: html.c:182
+ #: html.c:177
  #, c-format
  msgid "(html5) Cannot open file %s\n"
 -msgstr "(html5) ²»ÄÜ´ò¿ªÎļþ %s\n"
 +msgstr "(html5) ���ܴ����ļ� %s\n"
  
- #: html.c:186 html.c:192
+ #: html.c:181 html.c:187
  msgid "User report"
 -msgstr "Óû§±¨¸æ"
 +msgstr "�û�����"
  
- #: html.c:188 repday.c:128 report.c:266 report.c:270 smartfilter.c:177
+ #: html.c:183 repday.c:128 report.c:259 report.c:263 smartfilter.c:177
  msgid "User"
 -msgstr "Óû§"
 +msgstr "�û�"
  
- #: html.c:190 report.c:268
+ #: html.c:185 report.c:261
  #, c-format
  msgid "Sort:&nbsp;%s, %s"
  msgstr ""
  
- #: html.c:203 smartfilter.c:109 topuser.c:211
+ #: html.c:198 smartfilter.c:109 topuser.c:242
  msgid "SmartFilter"
 -msgstr "ÖÇÄܹýÂË"
 +msgstr "���ܹ���"
  
- #: html.c:203
+ #: html.c:198
  msgid "Report"
 -msgstr "±¨¸æ"
 +msgstr "����"
  
- #: html.c:217 topuser.c:247
+ #: html.c:212 topuser.c:278
  msgid "IN-CACHE-OUT"
  msgstr "IN-CACHE-OUT"
  
- #: html.c:228
+ #: html.c:223
  #, c-format
  msgid "Making report: %s\n"
 -msgstr "±ê¼Ç±¨¸æ: %s\n"
 +msgstr "���DZ���: %s\n"
  
- #: html.c:240 topuser.c:271 util.c:774
+ #: html.c:235 topuser.c:304 util.c:774
  #, c-format
  msgid "There is a broken number of bytes in file %s\n"
 -msgstr "Óв»ÍêÕûµÄ×Ö½ÚÊý×ÖÔÚÎļþ %s\n"
 +msgstr "�в��������ֽ��������ļ� %s\n"
  
- #: html.c:256
+ #: html.c:251
  #, c-format
  msgid "There is a broken in cache column in file %s\n"
 -msgstr "ÖжÏÔÚ»º´æÁÐÄÚÔÚÎļþ %s\n"
 +msgstr "�ж��ڻ����������ļ� %s\n"
  
- #: html.c:260
+ #: html.c:255
  #, c-format
  msgid "There is a broken out of cache column in file %s (%d)\n"
 -msgstr "ÖжÏÔÚ»º´æÁÐÍâÔÚÎļþ %s(%d)\n"
 +msgstr "�ж��ڻ����������ļ� %s(%d)\n"
  
- #: html.c:274 topuser.c:319
+ #: html.c:269 topuser.c:355
  msgid "date/time report"
 -msgstr "ÈÕÆÚ/ʱ¼ä ±¨¸æ"
 +msgstr "����/ʱ�� ����"
  
- #: html.c:327
+ #: html.c:322
  msgid "DENIED"
 -msgstr "×èֹ"
 +msgstr "��ֹ"
  
- #: html.c:335
+ #: html.c:330
  #, fuzzy, c-format
  msgid "Cannot delete unused file \"%s\" - %s\n"
 -msgstr "ÎÞ·¨É¾³ýÁÙʱÎļþ %s - %s\n"
 +msgstr "�޷�ɾ����ʱ�ļ� %s - %s\n"
  
- #: html.c:341
+ #: html.c:336
  #, c-format
  msgid "File name too long: %s/%s.ip\n"
 -msgstr "ÎļþÃû¹ý³¤: %s/%s.ip\n"
 +msgstr "�ļ�������: %s/%s.ip\n"
  
- #: html.c:346
+ #: html.c:341
  #, c-format
  msgid "(html6) Cannot open file %s\n"
 -msgstr "(html6)²»ÄÜ´ò¿ªÎļþ %s\n"
 +msgstr "(html6)���ܴ����ļ� %s\n"
  
- #: html.c:351
+ #: html.c:346
  #, c-format
  msgid "(html7) Cannot open file %s\n"
 -msgstr "(html7) ²»ÄÜ´ò¿ªÎļþ %s\n"
 +msgstr "(html7) ���ܴ����ļ� %s\n"
  
- #: html.c:362 html.c:418
+ #: html.c:357 html.c:413
  #, c-format
  msgid "Maybe you have a broken user IP in your %s file\n"
 -msgstr "¿ÉÄÜÄãÓв»ÍêÕûµÄÓû§IPµØÖ·ÔÚÄãµÄ %s ÎļþÖР\n"
 +msgstr "�������в��������û�IP��ַ������ %s �ļ��� \n"
  
- #: html.c:371 log.c:1232
+ #: html.c:366 log.c:1235
  #, c-format
  msgid "Maybe you have a broken day in your %s file\n"
 -msgstr "¿ÉÄÜÄãÓв»ÍêÕûµÄÈÕÆÚÔÚÄãµÄ %s ÎļþÖР\n"
 +msgstr "�������в����������������� %s �ļ��� \n"
  
- #: html.c:375 log.c:1191
+ #: html.c:370 log.c:1194
  #, c-format
  msgid "Maybe you have a broken time in your %s file\n"
 -msgstr "¿ÉÄÜÄãÓв»ÍêÕûµÄʱ¼äÔÚÄãµÄ %s ÎļþÖÐ\n"
 +msgstr "�������в�������ʱ�������� %s �ļ���\n"
  
- #: html.c:379 html.c:422
+ #: html.c:374 html.c:417
  #, c-format
  msgid "Maybe you have a broken size in your %s file\n"
 -msgstr "¿ÉÄÜÄãÓв»ÍêÕûµÄ´óСÔÚÄãµÄ %s ÎļþÖÐ\n"
 +msgstr "�������в������Ĵ�С������ %s �ļ���\n"
  
- #: html.c:383 html.c:426 log.c:1021 log.c:1026
+ #: html.c:378 html.c:421 log.c:1024 log.c:1029
  #, c-format
  msgid "Maybe you have a broken elapsed time in your %s file\n"
 -msgstr "¿ÉÄÜÄãÓв»ÍêÕûµÄ¹ýȥʱ¼äÔÚÄãµÄ %s ÎļþÖÐ\n"
 +msgstr "�������в������Ĺ�ȥʱ�������� %s �ļ���\n"
  
- #: html.c:405
+ #: html.c:400
  #, c-format
  msgid "(html8) Cannot open file %s\n"
 -msgstr "(html8) ²»ÄÜ´ò¿ªÎļþ %s\n"
 +msgstr "(html8) ���ܴ����ļ� %s\n"
  
- #: html.c:538
+ #: html.c:533
  #, c-format
  msgid "(html9) Cannot open file %s\n"
 -msgstr "(html9) ²»ÄÜ´ò¿ªÎļþ %s\n"
 +msgstr "(html9) ���ܴ����ļ� %s\n"
  
- #: html.c:553
+ #: html.c:548
  #, c-format
  msgid "(html10) Cannot open file %s\n"
 -msgstr "(html10) ²»ÄÜ´ò¿ªÎļþ %s\n"
 +msgstr "(html10) ���ܴ����ļ� %s\n"
  
- #: html.c:560
+ #: html.c:555
  #, c-format
  msgid "User %s limit exceeded (%d MB). Added to file %s\n"
 -msgstr "Óû§%s ³¬³öÏÞÖÆ (%d MB). Ôö¼Óµ½Îļþ %s\n"
 +msgstr "�û�%s �������� (%d MB). ���ӵ��ļ� %s\n"
  
  #: index.c:54
  #, c-format
  msgid "Making index.html\n"
 -msgstr "±ê¼Ç index.html\n"
 +msgstr "���� index.html\n"
  
  #: index.c:58 index.c:112 index.c:167 index.c:228 index.c:330 indexonly.c:38
- #: lastlog.c:56 sort.c:107
+ #: lastlog.c:56
  #, c-format
  msgid "Failed to open directory %s - %s\n"
 -msgstr "´ò¿ªÎļþ¼Ðʱʧ°Ü %s - %s\n"
 +msgstr "�����ļ���ʱʧ�� %s - %s\n"
  
  #: index.c:143 index.c:195 index.c:256
  #, c-format
@@@ -1151,21 -1193,44 +1193,44 @@@ msgstr "�Ƴ����ļ����
  #: indexonly.c:50
  #, fuzzy, c-format
  msgid "Failed to remove the file %s: %s\n"
 -msgstr "ÒƳýÎļþʧ°Ü %s\n"
 +msgstr "�Ƴ��ļ�ʧ�� %s\n"
  
- #: ip2name.c:72
+ #: ip2name.c:66 ip2name.c:198
  #, c-format
- msgid ""
- "IP to name resolution (getnameinfo) on IP address %s failed with error %d - "
- "%s\n"
- msgstr "IP��ַ�����ֵ�ת�� (getnameinfo) ��IP��ַ %s ��������ʧ��  %d - %s\n"
+ msgid "Chaining IP resolving module \"%s\"\n"
+ msgstr ""
+ #: ip2name.c:71
+ #, c-format
+ msgid "Ignoring duplicate module \"%s\" to resolve an IP address\n"
+ msgstr ""
+ #: ip2name.c:109
+ #, c-format
+ msgid "Unknown module \"%.*s\" to resolve the IP addresses\n"
+ msgstr ""
+ #: ip2name.c:133
+ #, c-format
+ msgid "No option to configure for module %s\n"
+ msgstr ""
+ #: ip2name.c:189
+ #, c-format
+ msgid "No known module to resolve an IP address using the DNS\n"
+ msgstr ""
+ #: ip2name.c:226
+ #, fuzzy, c-format
+ msgid "Not enough memory to store the names corresponding to the IP address\n"
 -msgstr "ûÓÐ×ã¹»µÄÄÚ´æÀ´´æ´¢±»ÅųýµÄIPµØÖ·\n"
++msgstr "û���㹻���ڴ���洢���ų���IP��ַ\n"
  
- #: ip2name.c:124
+ #: ip2name.c:279
  #, fuzzy, c-format
  msgid "Cannot resolve host name %s: %s\n"
 -msgstr " ²»ÄÜɾ³ý %s - %s\n"
 +msgstr " ����ɾ�� %s - %s\n"
  
- #: ip2name.c:131
+ #: ip2name.c:286
  #, c-format
  msgid ""
  "Short structure returned by getaddrinfo for an IPv4 address: %d bytes "
@@@ -1184,6 -1249,47 +1249,47 @@@ msgstr "
  msgid "Invalid address type %d returned when resolving host name \"%s\"\n"
  msgstr ""
  
 -msgstr "IPµØÖ·µ½Ãû×ÖµÄת»» (getnameinfo) ÔÚIPµØÖ· %s ·¢Éú´íÎóʧ°Ü  %d - %s\n"
+ #: ip2name_dns.c:93
+ #, c-format
+ msgid ""
+ "IP to name resolution (getnameinfo) on IP address %s failed with error %d - "
+ "%s\n"
 -msgstr "IPµØÖ·¹ý³¤»ò²»´æÔÚ %s\n"
++msgstr "IP��ַ�����ֵ�ת�� (getnameinfo) ��IP��ַ %s ��������ʧ��  %d - %s\n"
+ #: ip2name_exec.c:61
+ #, c-format
+ msgid ""
+ "Command to execute to resolve the IP addresses is too long (maximum is %d "
+ "bytes)\n"
+ msgstr ""
+ #: ip2name_exec.c:86
+ #, c-format
+ msgid ""
+ "No command to run to resolve an IP address. Please configure it in sarg."
+ "conf\n"
+ msgstr ""
+ #: ip2name_exec.c:95
+ #, fuzzy, c-format
+ msgid "IP address %s too long for the command to run\n"
 -msgstr "IPµØÖ·¹ý³¤»ò²»´æÔÚ %s\n"
++msgstr "IP��ַ�����򲻴��� %s\n"
+ #: ip2name_exec.c:103
+ #, fuzzy, c-format
+ msgid "IP address %.*s too long for the command to run\n"
 -msgstr "ÅÅÐòÃüÁî: %s\n"
++msgstr "IP��ַ�����򲻴��� %s\n"
+ #: ip2name_exec.c:113
+ #, fuzzy, c-format
+ msgid "Cannot run command %s\n"
 -msgstr "ÃüÁî: %s\n"
++msgstr "��������: %s\n"
+ #: ip2name_exec.c:120
+ #, fuzzy, c-format
+ msgid "Command failed: %s\n"
++msgstr "����: %s\n"
  #: lastlog.c:51 lastlog.c:106
  #, c-format
  msgid "(lastlog) Cannot open temporary file %s\n"
@@@ -1207,529 -1313,529 +1313,534 @@@ msgstr "�ļ������ƹ��
  #: lastlog.c:131
  #, c-format
  msgid "Failed to delete the file %s\n"
 -msgstr "ɾ³ýÎļþʧ°Ü %s\n"
 +msgstr "ɾ���ļ�ʧ�� %s\n"
  
- #: log.c:404
+ #: log.c:406
  #, c-format
  msgid "Too many log files passed on command line with option -l.\n"
 -msgstr "´«ÈëÁ˹ý¶àµÄÈÕÖ¾ÎļþʹÓÃÃüÁîÐвÎÊý -l.\n"
 +msgstr "�����˹�������־�ļ�ʹ�������в��� -l.\n"
  
- #: log.c:408
+ #: log.c:410
  #, c-format
  msgid "Log file name too long passed on command line with option -l: %s\n"
 -msgstr "´«ÈëÃüÁîÐвÎÊý -l µÄÈÕÖ¾ÎļþÃû¹ý³¤: %s\n"
 +msgstr "���������в��� -l ����־�ļ�������: %s\n"
  
- #: log.c:417
+ #: log.c:419
  #, c-format
  msgid "Too many redirector logs passed on command line with option -L.\n"
 -msgstr "´«ÈëÃüÁîÐвÎÊý -LµÄÖض¨ÏòÈÕÖ¾Îļþ¹ý¶à.\n"
 +msgstr "���������в��� -L���ض�����־�ļ�����.\n"
  
- #: log.c:421
+ #: log.c:423
  #, c-format
  msgid ""
  "Redirector log file name too long passed on command line with opton -L: %s\n"
 -msgstr "´«ÈëÃüÁîÐвÎÊý -L µÄÖض¨ÏòÈÕÖ¾ÎļþÃû¹ý³¤: %s\n"
 +msgstr "���������в��� -L ���ض�����־�ļ�������: %s\n"
  
- #: log.c:455
+ #: log.c:457
  #, fuzzy, c-format
  msgid "Time period passed on the command line with option -t must be MM:SS\n"
 -msgstr "ʱ¼äÇø¼ä´«ÈëÃüÁîÐвÎÊý -t ²»´æÔÚ\n"
 +msgstr "ʱ�����䴫�������в��� -t ������\n"
  
- #: log.c:463
+ #: log.c:465
  #, fuzzy, c-format
  msgid ""
  "Time range passed on the command line with option -t must be MM:SS-MM:SS\n"
 -msgstr "ʱ¼äÇø¼ä´«ÈëÃüÁîÐвÎÊý -t ²»´æÔÚ\n"
 +msgstr "ʱ�����䴫�������в��� -t ������\n"
  
- #: log.c:491
+ #: log.c:493
  #, fuzzy, c-format
  msgid "Option -%c requires an argument\n"
 -msgstr "ѡÏî -%c ÐèÒªÒ»¸öÅжÏ\n"
 +msgstr "ѡ�� -%c ��Ҫһ���ж�\n"
  
- #: log.c:509
+ #: log.c:511
  #, fuzzy, c-format
  msgid "Too many log files passed on command line.\n"
 -msgstr "´«ÈëÁ˹ý¶àµÄÈÕÖ¾ÎļþʹÓÃÃüÁîÐвÎÊý -l.\n"
 +msgstr "�����˹�������־�ļ�ʹ�������в��� -l.\n"
  
- #: log.c:513
+ #: log.c:515
  #, fuzzy, c-format
  msgid "Log file name too long passed on command line: %s\n"
 -msgstr "´«ÈëÃüÁîÐвÎÊý -l µÄÈÕÖ¾ÎļþÃû¹ý³¤: %s\n"
 +msgstr "���������в��� -l ����־�ļ�������: %s\n"
  
- #: log.c:522
+ #: log.c:524
  #, c-format
  msgid "Init\n"
  msgstr "Init\n"
  
- #: log.c:526
+ #: log.c:528
  #, c-format
  msgid "Cannot open config file: %s - %s\n"
 -msgstr "²»ÄÜ´ò¿ªÅäÖÃÎļþ: %s -%s\n"
 +msgstr "���ܴ��������ļ�: %s -%s\n"
  
- #: log.c:634
+ #: log.c:636
  #, c-format
  msgid ""
  "The output directory \"%s\" must be outside of the temporary directory \"%s"
  "\"\n"
  msgstr ""
  
- #: log.c:655 log.c:687
+ #: log.c:649
+ #, fuzzy, c-format
+ msgid "Deleting directory %s\n"
 -msgstr "´ò¿ªÎļþ¼Ðʱʧ°Ü %s - %s\n"
++msgstr "�����ļ���ʱʧ�� %s - %s\n"
+ #: log.c:658 log.c:690
  #, c-format
  msgid "Parameters:\n"
 -msgstr "²ÎÊý:\n"
 +msgstr "����:\n"
  
- #: log.c:656 log.c:688
+ #: log.c:659 log.c:691
  #, c-format
  msgid "          Hostname or IP address (-a) = %s\n"
 -msgstr "          Ö÷»úÃû»òÕßIPµØַ(-a) = %s\n"
 +msgstr "          ����������IP��ַ(-a) = %s\n"
  
- #: log.c:657 log.c:689
+ #: log.c:660 log.c:692
  #, c-format
  msgid "                   Useragent log (-b) = %s\n"
 -msgstr "                   Óû§´úÀí  ÈÕ־w (-b) = %s\n"
 +msgstr "                   �û�����  ��־w (-b) = %s\n"
  
- #: log.c:658 log.c:690
+ #: log.c:661 log.c:693
  #, c-format
  msgid "                    Exclude file (-c) = %s\n"
 -msgstr "                    Åųý Îļþ (-c) = %s\n"
 +msgstr "                    �ų� �ļ� (-c) = %s\n"
  
- #: log.c:659 log.c:691
+ #: log.c:662 log.c:694
  #, c-format
  msgid "                 Date from-until (-d) = %s\n"
 -msgstr "                 ÈÕÆÚ ´Ó-ÖÁ (-d) = %s\n"
 +msgstr "                 ���� ��-�� (-d) = %s\n"
  
- #: log.c:660 log.c:692
+ #: log.c:663 log.c:695
  #, c-format
  msgid "   Email address to send reports (-e) = %s\n"
 -msgstr "   ÓʼþµØÖ·ÓÃÀ´·¢Ëͱ¨¸æ (-e) = %s\n"
 +msgstr "   �ʼ���ַ������ͱ��� (-e) = %s\n"
  
- #: log.c:661 log.c:693
+ #: log.c:664 log.c:696
  #, c-format
  msgid "                     Config file (-f) = %s\n"
 -msgstr "                     ÅäÖÃÎļþ (-f) = %s\n"
 +msgstr "                     �����ļ� (-f) = %s\n"
  
- #: log.c:663 log.c:695
+ #: log.c:666 log.c:698
  #, c-format
  msgid "                     Date format (-g) = Europe (dd/mm/yyyy)\n"
 -msgstr "                     ÈÕÆÚ¸ñʽ (-g) = Å·ÖÞ (dd/mm/yyyy)\n"
 +msgstr "                     ���ڸ�ʽ (-g) = ŷ�� (dd/mm/yyyy)\n"
  
- #: log.c:665 log.c:697
+ #: log.c:668 log.c:700
  #, c-format
  msgid "                     Date format (-g) = USA (mm/dd/yyyy)\n"
 -msgstr "                     ÈÕÆÚ¸ñʽ (-g) = ÃÀ¹ú (mm/dd/yyyy)\n"
 +msgstr "                     ���ڸ�ʽ (-g) = ��� (mm/dd/yyyy)\n"
  
- #: log.c:667 log.c:699
+ #: log.c:670 log.c:702
  #, c-format
  msgid "                     Date format (-g) = Sites & Users (yyyy/ww)\n"
 -msgstr "                     ÈÕÆÚ¸ñʽ (-g) = Õ¾µã & Óû§ (yyyy/ww)\n"
 +msgstr "                     ���ڸ�ʽ (-g) = վ�� & �û� (yyyy/ww)\n"
  
- #: log.c:668 log.c:700
+ #: log.c:671 log.c:703
  #, c-format
  msgid "                       IP report (-i) = %s\n"
 -msgstr "                       IP±¨¸æ (-i) = %s\n"
 +msgstr "                       IP���� (-i) = %s\n"
  
- #: log.c:668 log.c:673 log.c:675 log.c:680 log.c:681 log.c:700 log.c:705
- #: log.c:707 log.c:712 log.c:713
+ #: log.c:671 log.c:676 log.c:678 log.c:683 log.c:684 log.c:703 log.c:708
+ #: log.c:710 log.c:715 log.c:716
  msgid "Yes"
 -msgstr "ÊÇ"
 +msgstr "��"
  
- #: log.c:668 log.c:673 log.c:675 log.c:680 log.c:681 log.c:700 log.c:705
- #: log.c:707 log.c:712 log.c:713
+ #: log.c:671 log.c:676 log.c:678 log.c:683 log.c:684 log.c:703 log.c:708
+ #: log.c:710 log.c:715 log.c:716
  msgid "No"
 -msgstr "·ñ"
 +msgstr "��"
  
- #: log.c:670 log.c:702
+ #: log.c:673 log.c:705
  #, c-format
  msgid "                       Input log (-l) = %s\n"
 -msgstr "                       ÊäÈëµÄÈÕ־ (-l) = %s\n"
 +msgstr "                       ��������־ (-l) = %s\n"
  
- #: log.c:672 log.c:704
+ #: log.c:675 log.c:707
  #, c-format
  msgid "                  Redirector log (-L) = %s\n"
 -msgstr "                  Öض¨ÏòÈÕ־  (-L) = %s\n"
 +msgstr "                  �ض�����־  (-L) = %s\n"
  
- #: log.c:673 log.c:705
+ #: log.c:676 log.c:708
  #, c-format
  msgid "              Resolve IP Address (-n) = %s\n"
 -msgstr "              ת»»IPµØַ (-n) = %s\n"
 +msgstr "              ת��IP��ַ (-n) = %s\n"
  
- #: log.c:674 log.c:706
+ #: log.c:677 log.c:709
  #, c-format
  msgid "                      Output dir (-o) = %s\n"
 -msgstr "                      Êä³öĿ¼ (-o) = %s\n"
 +msgstr "                      ����Ŀ¼ (-o) = %s\n"
  
- #: log.c:675 log.c:707
+ #: log.c:678 log.c:710
  #, c-format
  msgid "Use Ip Address instead of userid (-p) = %s\n"
 -msgstr "ʹÓÃIPµØÖ·Ìæ´úÓû§ID (-p) = %s\n"
 +msgstr "ʹ��IP��ַ�����û�ID (-p) = %s\n"
  
- #: log.c:676 log.c:708
+ #: log.c:679 log.c:711
  #, c-format
  msgid "                   Accessed site (-s) = %s\n"
 -msgstr "                   ·ÃÎÊÕ¾µã (-s) = %s\n"
 +msgstr "                   ����վ�� (-s) = %s\n"
  
- #: log.c:677 log.c:709
+ #: log.c:680 log.c:712
  #, c-format
  msgid "                            Time (-t) = %s\n"
 -msgstr "                            ʱ¼ä (-t) = %s\n"
 +msgstr "                            ʱ�� (-t) = %s\n"
  
- #: log.c:678 log.c:710
+ #: log.c:681 log.c:713
  #, c-format
  msgid "                            User (-u) = %s\n"
 -msgstr "                            Óû§ (-u) = %s\n"
 +msgstr "                            �û� (-u) = %s\n"
  
- #: log.c:679 log.c:711
+ #: log.c:682 log.c:714
  #, c-format
  msgid "                   Temporary dir (-w) = %s\n"
 -msgstr "                   ÁÙʱÎļþĿ¼ (-w) = %s\n"
 +msgstr "                   ��ʱ�ļ�Ŀ¼ (-w) = %s\n"
  
- #: log.c:680 log.c:712
+ #: log.c:683 log.c:715
  #, c-format
  msgid "                  Debug messages (-x) = %s\n"
 -msgstr "                  ¾À´íÐÅϢ (-x) = %s\n"
 +msgstr "                  �����Ϣ (-x) = %s\n"
  
- #: log.c:681 log.c:713
+ #: log.c:684 log.c:716
  #, c-format
  msgid "                Process messages (-z) = %s\n"
 -msgstr "                ½ø³ÌÐÅϢ (-z) = %s\n"
 +msgstr "                ������Ϣ (-z) = %s\n"
  
- #: log.c:682 log.c:714
+ #: log.c:685 log.c:717
  #, c-format
  msgid " Previous reports to keep (--lastlog) = %d\n"
  msgstr ""
  
- #: log.c:715 log.c:719
+ #: log.c:718 log.c:722
  #, c-format
  msgid "sarg version: %s\n"
 -msgstr "sarg °汾: %s\n"
 +msgstr "sarg 汾: %s\n"
  
- #: log.c:722
+ #: log.c:725
  #, c-format
  msgid "Sarg compiled to report warnings if the output is inconsistent\n"
  msgstr ""
  
- #: log.c:752
+ #: log.c:755
  #, c-format
 +msgid "Sarg compiled to report warnings if the output is inconsistent\n"
 +msgstr ""
 +
 +#: log.c:740
 +#, c-format
  msgid "setrlimit error - %s\n"
 -msgstr "setrlimit ´íÎó - %s\n"
 +msgstr "setrlimit ���� - %s\n"
  
- #: log.c:763
+ #: log.c:766
  #, c-format
  msgid "Not enough memory to read a log file\n"
 -msgstr "ûÓÐ×ã¹»µÄÄÚ´æÈ¥¶ÁÈ¡Ò»¸öÈÕÖ¾Îļþ\n"
 +msgstr "û���㹻���ڴ�ȥ��ȡһ����־�ļ�\n"
  
- #: log.c:772 log.c:779
+ #: log.c:775 log.c:782
  #, c-format
  msgid "(log) Cannot open file: %s - %s\n"
 -msgstr "(log) ²»ÄÜ´ò¿ªÈÕÖ¾Îļþ: %s - %s\n"
 +msgstr "(log) ���ܴ�����־�ļ�: %s - %s\n"
  
- #: log.c:792
+ #: log.c:795
  #, c-format
  msgid "Reading access log file: from stdin\n"
 -msgstr "¶ÁÈ¡·ÃÎÊÈÕÖ¾Îļþ: ´Ó stdin\n"
 +msgstr "��ȡ������־�ļ�: �� stdin\n"
  
- #: log.c:798
+ #: log.c:801
  #, c-format
  msgid ""
  "Cannot get the modification time of input log file %s (%s). Processing it "
  "anyway\n"
 -msgstr "²»Äܵõ½ÊäÈëÈÕÖ¾ÎļþµÄÐÞ¸Äʱ¼ä %s (%s). ½ø³ÌÕýÔÚ¼ÌÐø\n"
 +msgstr "���ܵõ�������־�ļ����޸�ʱ�� %s (%s). �������ڼ���\n"
  
- #: log.c:802
+ #: log.c:805
  #, c-format
  msgid "Ignoring old log file %s\n"
 -msgstr "ºöÂԳ¾ɵÄÈÕÖ¾Îļþ %s\n"
 +msgstr "���Գ¾ɵ���־�ļ� %s\n"
  
- #: log.c:809 log.c:880
+ #: log.c:812 log.c:883
  #, c-format
  msgid "(log) Cannot open log file: %s - %s\n"
 -msgstr "(log) ²»ÄÜ´ò¿ªÈÕÖ¾Îļþ: %s - %s\n"
 +msgstr "(log) ���ܴ�����־�ļ�: %s - %s\n"
  
- #: log.c:812
+ #: log.c:815
  #, c-format
  msgid "Reading access log file: %s\n"
 -msgstr "¶ÁÈ¡·ÃÎÊÈÕÖ¾Îļþ: %s\n"
 +msgstr "��ȡ������־�ļ�: %s\n"
  
- #: log.c:840
+ #: log.c:843
  #, c-format
  msgid "SARG: Records in file: %lu, reading: %3.2f%%"
 -msgstr "SARG: ¼Í¼ÔÚÎļþ: %lu, ¶Áȡ: %3.2f%%"
 +msgstr "SARG: ��¼���ļ�: %lu, ��ȡ: %3.2f%%"
  
- #: log.c:854
+ #: log.c:857
  #, c-format
  msgid "Log is from Microsoft ISA: %s\n"
 -msgstr "ÈÕÖ¾À´×Ô΢ÈíISA: %s\n"
 +msgstr "��־���΢��ISA: %s\n"
  
- #: log.c:862
+ #: log.c:865
  #, c-format
  msgid "The name of the file is invalid: %s\n"
 -msgstr "ÎļþÃû²»´æÔÚ: %s\n"
 +msgstr "�ļ���������: %s\n"
  
- #: log.c:876
+ #: log.c:879
  #, fuzzy, c-format
  msgid "File name too long: %s/sarg_temp.log\n"
 -msgstr "ÎļþÃû¹ý³¤: %s/%s.ip\n"
 +msgstr "�ļ�������: %s/%s.ip\n"
  
- #: log.c:889
+ #: log.c:892
  #, c-format
  msgid "SARG: Records in file: %lu, reading: %3.2lf%%"
 -msgstr "SARG: ¼Í¼ÔÚÎļþ: %lu, ¶Áȡ: %3.2lf%%"
 +msgstr "SARG: ��¼���ļ�: %lu, ��ȡ: %3.2lf%%"
  
- #: log.c:905
+ #: log.c:908
  #, c-format
  msgid "Maybe you have a broken record or garbage in your exclusion string\n"
 -msgstr "¿ÉÄÜÄãÓÐÒ»¸ö²»ÍêÕûµÄ¼Í¼»òÕßÀ¬»øÔÚÄãµÄ½ûÖ¹×Ö·û´®\n"
 +msgstr "��������һ���������ļ�¼������������Ľ�ֹ�ַ���\n"
  
- #: log.c:926
+ #: log.c:929
  #, c-format
  msgid "Maybe you have a broken time in your access.log file\n"
 -msgstr "¿ÉÄÜÄãÓÐÒ»¸ö²»ÍêÕûµÄʱ¼äÔÚÄãµÄaccess.logÎļþ\n"
 +msgstr "��������һ����������ʱ��������access.log�ļ�\n"
  
- #: log.c:987 log.c:991 log.c:996 log.c:1000 log.c:1004 log.c:1109 log.c:1113
- #: log.c:1117 log.c:1185 useragent.c:89
+ #: log.c:990 log.c:994 log.c:999 log.c:1003 log.c:1007 log.c:1112 log.c:1116
+ #: log.c:1120 log.c:1188 useragent.c:89
  #, c-format
  msgid "Maybe you have a broken date in your %s file\n"
 -msgstr "¿ÉÄÜÄãÓÐÒ»¸ö²»ÍêÕûµÄÈÕÆÚÔÚÄãµÄ %s ÎļþÖÐ\n"
 +msgstr "��������һ�������������������� %s �ļ���\n"
  
- #: log.c:1013 log.c:1124 log.c:1241
+ #: log.c:1016 log.c:1127 log.c:1244
  #, fuzzy, c-format
  msgid "Invalid time found in %s\n"
 -msgstr "ÎÞЧµÄʱ¼äÔÚÎļþÖР%s\n"
 +msgstr "��Ч��ʱ�����ļ��� %s\n"
  
- #: log.c:1031
+ #: log.c:1034
  #, c-format
  msgid "Maybe you have a broken client IP address in your %s file\n"
 -msgstr "¿ÉÄÜÄãÓÐÒ»¸ö²»ÍêÕûµÄ¿Í»§¶ËIPµØÖ·ÔÚÄãµÄ %s ÎļþÖÐ\n"
 +msgstr "��������һ���������Ŀͻ���IP��ַ������ %s �ļ���\n"
  
- #: log.c:1035
+ #: log.c:1038
  #, c-format
  msgid "Maybe you have a broken result code in your %s file\n"
 -msgstr "¿ÉÄÜÄãÓÐÒ»¸ö²»ÍêÕûµÄ½á¹û´úÂëÔÚÄãµÄ %s ÎļþÖÐ\n"
 +msgstr "��������һ���������Ľ������������� %s �ļ���\n"
  
- #: log.c:1039
+ #: log.c:1042
  #, c-format
  msgid "Maybe you have a broken amount of data in your %s file\n"
 -msgstr "¿ÉÄÜÄãÓÐÒ»¸ö²»ÍêÕûµÄÊý¾Ý×ܺÍÔÚÄãµÄ %s ÎļþÖÐ\n"
 +msgstr "��������һ���������������ܺ������� %s �ļ���\n"
  
- #: log.c:1043
+ #: log.c:1046
  #, c-format
  msgid "Maybe you have a broken request method in your %s file\n"
 -msgstr "¿ÉÄÜÄãÓÐÒ»¸ö²»ÍêÕûµÄÐèÇó·½·¨ÔÚÄãµÄ %s ÎļþÖÐ\n"
 +msgstr "��������һ�������������󷽷������� %s �ļ���\n"
  
- #: log.c:1051 log.c:1179
+ #: log.c:1054 log.c:1182
  #, c-format
  msgid "Maybe you have a broken user ID in your %s file\n"
 -msgstr "¿ÉÄÜÄãÓÐÒ»¸ö²»ÍêÕûµÄÓû§IDÔÚÄãµÄ %s ÎļþÖÐ\n"
 +msgstr "��������һ�����������û�ID������ %s �ļ���\n"
  
- #: log.c:1060
+ #: log.c:1063
  #, c-format
  msgid "Cannot convert the timestamp from the squid log file\n"
 -msgstr "²»ÄÜת»»Ê±¼ä´Á´ÓsquidÈÕÖ¾Îļþ\n"
 +msgstr "����ת��ʱ�����squid��־�ļ�\n"
  
- #: log.c:1173
+ #: log.c:1176
  #, c-format
  msgid "Maybe you have a broken IP in your %s file\n"
 -msgstr "¿ÉÄÜÄãÓÐÒ»¸ö²»ÍêÕûµÄIPµØÖ·ÔÚÄãµÄ %s ÎļþÖÐ\n"
 +msgstr "��������һ����������IP��ַ������ %s �ļ���\n"
  
- #: log.c:1197
+ #: log.c:1200
  #, c-format
  msgid "Maybe you have a broken download duration in your %s file\n"
 -msgstr "¿ÉÄÜÄãÓÐÒ»¸ö²»ÍêÕûµÄÏÂÔسÖÐøʱ¼äÔÚÄãµÄ %s ÎļþÖÐ\n"
 +msgstr "��������һ�������������س���ʱ�������� %s �ļ���\n"
  
- #: log.c:1203
+ #: log.c:1206
  #, c-format
  msgid "Maybe you have a broken download size in your %s file\n"
 -msgstr "¿ÉÄÜÄãÓÐÒ»¸ö²»ÍêÕûµÄÏÂÔØ´óСÔÚÄãµÄ %s ÎļþÖÐ\n"
 +msgstr "��������һ�������������ش�С������ %s �ļ���\n"
  
- #: log.c:1211
+ #: log.c:1214
  #, c-format
  msgid "Maybe you have a broken access code in your %s file\n"
 -msgstr "¿ÉÄÜÄãÓÐÒ»¸ö²»ÍêÕûµÄ·ÃÎÊ´úÂëÔÚÄãµÄ %s ÎļþÖÐ\n"
 +msgstr "��������һ���������ķ��ʴ��������� %s �ļ���\n"
  
- #: log.c:1224
+ #: log.c:1227
  #, c-format
  msgid "Maybe you have a broken year in your %s file\n"
 -msgstr "¿ÉÄÜÄãÓÐÒ»¸ö²»ÍêÕûµÄÄê·ÝÔÚÄãµÄ %s ÎļþÖÐ\n"
 +msgstr "��������һ�������������������� %s �ļ���\n"
  
- #: log.c:1228
+ #: log.c:1231
  #, c-format
  msgid "Maybe you have a broken month in your %s file\n"
 -msgstr "¿ÉÄÜÄãÓÐÒ»¸ö²»ÍêÕûµÄÔ·ÝÔÚÄãµÄ %s ÎļþÖÐ\n"
 +msgstr "��������һ�����������·������� %s �ļ���\n"
  
- #: log.c:1248
+ #: log.c:1251
  #, c-format
  msgid "Unknown input log file format\n"
 -msgstr "δ֪µÄÊäÈëÈÕÖ¾Îļþ¸ñʽ\n"
 +msgstr "δ֪��������־�ļ���ʽ\n"
  
- #: log.c:1273
+ #: log.c:1276
  #, c-format
  msgid "User ID too long: %s\n"
 -msgstr "Óû§ID¹ý³¤: %s\n"
 +msgstr "�û�ID����: %s\n"
  
- #: log.c:1286
+ #: log.c:1289
  #, c-format
  msgid "Excluded code: %s\n"
 -msgstr "ÒÑÅųý´úÂë: %s\n"
 +msgstr "���ų�����: %s\n"
  
- #: log.c:1348
+ #: log.c:1349
  #, c-format
  msgid "Excluded site: %s\n"
 -msgstr "ÒÑÅųýÕ¾µã: %s\n"
 +msgstr "���ų�վ��: %s\n"
  
- #: log.c:1404
+ #: log.c:1405
  #, c-format
  msgid "Excluded user: %s\n"
 -msgstr "ÒÑÅųýÓû§: %s\n"
 +msgstr "���ų��û�: %s\n"
  
- #: log.c:1434
+ #: log.c:1439
  #, c-format
  msgid "Not enough memory to store the user %s\n"
 -msgstr "ûÓÐ×ã¹»µÄÄÚ´æÀ´´æ´¢Óû§ %s\n"
 +msgstr "û���㹻���ڴ���洢�û� %s\n"
  
- #: log.c:1458
+ #: log.c:1467
  #, c-format
  msgid "Failed to close the log file of user %s - %s\n"
 -msgstr "¹Ø±ÕÓû§ÈÕÖ¾Îļþʧ°Ü %s - %s\n"
 +msgstr "�ر��û���־�ļ�ʧ�� %s - %s\n"
  
- #: log.c:1468
+ #: log.c:1477
  #, fuzzy, c-format
  msgid "Temporary user file name too long: %s/%s.unsort\n"
 -msgstr "ÁÙʱÓû§ÎļþÃû¹ý³¤: %s/sarg/%s.unsort\n"
 +msgstr "��ʱ�û��ļ�������: %s/sarg/%s.unsort\n"
  
- #: log.c:1472 log.c:1503
+ #: log.c:1481 log.c:1512
  #, c-format
  msgid "(log) Cannot open temporary file: %s - %s\n"
 -msgstr "(log) ²»ÄÜ´ò¿ªÁÙʱÎļþ: %s - %s\n"
 +msgstr "(log) ���ܴ�����ʱ�ļ�: %s - %s\n"
  
- #: log.c:1489
+ #: log.c:1498
  #, c-format
  msgid "Write error in the log file of user %s\n"
 -msgstr "ÈÕÖ¾ÎļþÖеÄÓû§´æÔÚдÈë´íÎó %s\n"
 +msgstr "��־�ļ��е��û�����д������ %s\n"
  
- #: log.c:1554
+ #: log.c:1563
  #, c-format
  msgid "SARG: Records in file: %lu, reading: %3.2f%%\n"
 -msgstr "SARG: ¼Í¼ÔÚÎļþ: %lu, reading: %3.2f%%\n"
 +msgstr "SARG: ��¼���ļ�: %lu, reading: %3.2f%%\n"
  
- #: log.c:1560
+ #: log.c:1569
  #, c-format
  msgid "   Records read: %ld, written: %ld, excluded: %ld\n"
 -msgstr "¼Í¼ ¶ÁÈ¡: %ld, ÒÑдÈë: %ld, Åųý: %ld\n"
 +msgstr "��¼ ��ȡ: %ld, ��д��: %ld, �ų�: %ld\n"
  
- #: log.c:1582
+ #: log.c:1591
  #, c-format
  msgid "Log with mixed records format (squid and common log)\n"
 -msgstr "ÈÕÖ¾Óë¼Í¼»ìºÏ¸ñʽ(squid and common log)\n"
 +msgstr "��־����¼���ϸ�ʽ(squid and common log)\n"
  
- #: log.c:1585
+ #: log.c:1594
  #, c-format
  msgid "Common log format\n"
 -msgstr "ÆÕͨÈÕÖ¾¸ñʽ\n"
 +msgstr "��ͨ��־��ʽ\n"
  
- #: log.c:1588
+ #: log.c:1597
  #, c-format
  msgid "Squid log format\n"
 -msgstr "SquidÈÕÖ¾¸ñʽ\n"
 +msgstr "Squid��־��ʽ\n"
  
- #: log.c:1591
+ #: log.c:1600
  #, c-format
  msgid "Sarg log format\n"
 -msgstr "SargÈÕÖ¾¸ñʽ\n"
 +msgstr "Sarg��־��ʽ\n"
  
- #: log.c:1594
+ #: log.c:1603
  #, c-format
  msgid "Log with invalid format\n"
 -msgstr "²»´æÔÚµÄÈÕÖ¾¸ñʽ\n"
 +msgstr "�����ڵ���־��ʽ\n"
  
- #: log.c:1598
+ #: log.c:1607
  #, c-format
  msgid "No records found\n"
 -msgstr "ûÓÐÕÒµ½¼Í¼\n"
 +msgstr "û���ҵ���¼\n"
  
- #: log.c:1599 log.c:1712
+ #: log.c:1608 log.c:1720
  #, c-format
  msgid "End\n"
 -msgstr "½áÊø\n"
 +msgstr "����\n"
  
- #: log.c:1613
+ #: log.c:1622
  #, c-format
  msgid "Period covered by log files: %s-%s\n"
 -msgstr "Æڼ䱻ÈÕÖ¾Îļþ¸²¸Ç: %s - %s\n"
 +msgstr "�ڼ䱻��־�ļ�����: %s - %s\n"
  
- #: log.c:1617
+ #: log.c:1626
  #, c-format
  msgid "Failed to build the string representation of the date range\n"
 -msgstr "½¨Á¢ÒÔ×Ö·û´®±íʾÈÕÆڵķ¶Î§Ê±Ê§°Ü\n"
 +msgstr "������ַ�����ʾ���ڵķ�Χʱʧ��\n"
  
- #: log.c:1622
+ #: log.c:1631
  #, c-format
  msgid "date=%s\n"
  msgstr ""
  
- #: log.c:1623
+ #: log.c:1632
  #, fuzzy, c-format
  msgid "period=%s\n"
 -msgstr "ÆÚ¼ä: %s\n"
 +msgstr "�ڼ�: %s\n"
  
- #: log.c:1627
+ #: log.c:1636
  #, c-format
  msgid "Period: %s\n"
 -msgstr "ÆÚ¼ä: %s\n"
 +msgstr "�ڼ�: %s\n"
  
- #: log.c:1644
+ #: log.c:1653
  #, fuzzy, c-format
  msgid "File name too long: %s/sarg-%s_%s-%s_%s.log\n"
 -msgstr "ÎļþÃû¹ý³¤: %s/%s%s\n"
 +msgstr "�ļ�������: %s/%s%s\n"
  
- #: log.c:1648
+ #: log.c:1657
  #, c-format
  msgid "failed to rename %s to %s - %s\n"
 -msgstr "ÖØÃüÃûʧ°Ü %s ÖÁ %s - %s\n"
 +msgstr "������ʧ�� %s �� %s - %s\n"
  
- #: log.c:1658
+ #: log.c:1667
  #, fuzzy, c-format
  msgid "Command too long: %s \"%s\"\n"
 -msgstr "·¾¶¹ý³¤ %s/%s.ip\n"
 +msgstr "·������ %s/%s.ip\n"
  
- #: log.c:1670
+ #: log.c:1679
  #, c-format
  msgid "Sarg parsed log saved as %s\n"
 -msgstr "Sarg½âÎöÈÕÖ¾Áí´æΪ %s\n"
 +msgstr "Sarg������־����Ϊ %s\n"
  
- #: log.c:1726
+ #: log.c:1734
  #, c-format
  msgid "Loading password file from %s\n"
 -msgstr "¼ÓÔØÃÜÂë´ÓÎļþ %s\n"
 +msgstr "�����������ļ� %s\n"
  
- #: log.c:1729
+ #: log.c:1737
  #, c-format
  msgid "(getusers) Cannot open file %s - %s\n"
 -msgstr "(getusers) ²»ÄÜ´ò¿ªÎļþ %s - %s\n"
 +msgstr "(getusers) ���ܴ����ļ� %s - %s\n"
  
- #: log.c:1734
+ #: log.c:1742
  #, c-format
  msgid "Failed to move till the end of the users file %s: %s\n"
 -msgstr "Òƶ¯Óû§ÎļþÖÁĩβʱʧ°Ü%s: %s\n"
 +msgstr "�ƶ��û��ļ���ĩβʱʧ��%s: %s\n"
  
- #: log.c:1744
+ #: log.c:1752
  #, c-format
  msgid "Failed to rewind the users file %s: %s\n"
 -msgstr "ת´æÓû§Îļþʱʧ°Ü %s: %s\n"
 +msgstr "ת���û��ļ�ʱʧ�� %s: %s\n"
  
- #: log.c:1749 util.c:1427
+ #: log.c:1757 util.c:1427
  #, c-format
  msgid "malloc error (%ld)\n"
 -msgstr "ÄÚ´æ·ÖÒ³´íÎó (%ld)\n"
 +msgstr "�ڴ���ҳ���� (%ld)\n"
  
- #: log.c:1759
+ #: log.c:1767
  #, c-format
  msgid "You have an invalid user in your %s file\n"
 -msgstr "ÓÐÒ»¸ö²»´æÔÚµÄÓû§ÔÚÄãµÄ %s Îļþ\n"
 +msgstr "��һ����ڵ��û������� %s �ļ�\n"
  
  #: longline.c:113 longline.c:126
  #, c-format
@@@ -1829,22 -1935,22 +1940,22 @@@ msgstr "(realtime)�򿪴��� %s 
  #: realtime.c:232
  #, fuzzy, c-format
  msgid "Invalid time column in file %s\n"
 -msgstr "ÎÞЧµÄʱ¼äÔÚÎļþÖР%s\n"
 +msgstr "��Ч��ʱ�����ļ��� %s\n"
  
- #: realtime.c:236 redirector.c:473
+ #: realtime.c:236 redirector.c:494
  #, fuzzy, c-format
  msgid "Invalid IP address in file %s\n"
 -msgstr "ÔÚÎļþÖдæÔÚÎÞЧµÄÈÕÆÚ %s\n"
 +msgstr "���ļ��д�����Ч������ %s\n"
  
  #: realtime.c:240
  #, fuzzy, c-format
  msgid "Invalid user name in file %s\n"
 -msgstr "ÔÚÎļþÖдæÔÚÎÞЧÊäÈë %s\n"
 +msgstr "���ļ��д�����Ч���� %s\n"
  
- #: realtime.c:245 redirector.c:201 redirector.c:477
+ #: realtime.c:245 redirector.c:161 redirector.c:498
  #, fuzzy, c-format
  msgid "Invalid URL in file %s\n"
 -msgstr "ÔÚÎļþÖдæÔÚÎÞЧµÄÈÕÆÚ %s\n"
 +msgstr "���ļ��д�����Ч������ %s\n"
  
  #: realtime.c:249
  #, fuzzy, c-format
@@@ -1861,32 -1967,9 +1972,9 @@@ msgstr "�Զ�ˢ��
  
  #: realtime.c:314
  msgid "TYPE"
 -msgstr "ÀàÐÍ"
 +msgstr "����"
  
- #: redirector.c:56
- #, c-format
- msgid "Reading redirector log file %s\n"
- msgstr "��ȡ�ض�����־�ļ� %s\n"
- #: redirector.c:83 redirector.c:88
- #, c-format
- msgid ""
- "Not enough memory to store the name of the new redirector log to be read - "
- "%s\n"
- msgstr "��ȡ�µ��ض�����־�ļ���ʱû�е��㹻���ڴ� - %s\n"
- #: redirector.c:93 redirector.c:288 redirector.c:305 redirector.c:434
- #: redirector.c:439
- #, c-format
- msgid "(squidguard) Cannot open log file %s\n"
- msgstr "(squidguard) ���ܴ�����־�ļ� %s\n"
- #: redirector.c:98
- #, fuzzy, c-format
- msgid "Not enough memory to read the redirector log\n"
- msgstr "û���㹻���ڴ�ȥ��ȡ�ļ� %s\n"
- #: redirector.c:108
+ #: redirector.c:58
  #, c-format
  msgid ""
  "Invalid \"redirector_log_format\" option in your sarg.conf (too many "
@@@ -1907,81 -1990,99 +1995,99 @@@ msgid "
  "characters in column separator)\n"
  msgstr ""
  
- #: redirector.c:131
+ #: redirector.c:81
  #, fuzzy, c-format
  msgid "Parsing of tag \"%s\" in redirector log %s returned no result\n"
 -msgstr "ÔÚÖض¨ÏòÈÕÖ¾ÎļþÖÐÄê·Ý×Ö·û´®Ì«³¤ %s\n"
 +msgstr "���ض�����־�ļ��������ַ���̫�� %s\n"
  
- #: redirector.c:142
+ #: redirector.c:93
  #, c-format
  msgid "Hour string too long in redirector log file %s\n"
 -msgstr "ÔÚÖض¨ÏòÈÕÖ¾ÎļþÖÐСʱ×Ö·û´®Ì«³¤ %s\n"
 +msgstr "���ض�����־�ļ���Сʱ�ַ���̫�� %s\n"
  
- #: redirector.c:148
+ #: redirector.c:100
  #, fuzzy, c-format
  msgid "Banning source name too long in redirector log file %s\n"
 -msgstr "ÔÚÖض¨ÏòÈÕÖ¾ÎļþÖÐ×èÖ¹ÁбíÃû¹ý³¤ %s\n"
 +msgstr "���ض�����־�ļ�����ֹ�б������� %s\n"
  
- #: redirector.c:154
+ #: redirector.c:107
  #, c-format
  msgid "Banning list name too long in redirector log file %s\n"
 -msgstr "ÔÚÖض¨ÏòÈÕÖ¾ÎļþÖÐ×èÖ¹ÁбíÃû¹ý³¤ %s\n"
 +msgstr "���ض�����־�ļ�����ֹ�б������� %s\n"
  
- #: redirector.c:160
+ #: redirector.c:114
  #, c-format
  msgid "IP address too long in redirector log file %s\n"
 -msgstr "ÔÚÖض¨ÏòÈÕÖ¾ÎļþÖÐIPµØÖ·¹ý³¤ %s\n"
 +msgstr "���ض�����־�ļ���IP��ַ���� %s\n"
  
- #: redirector.c:166
+ #: redirector.c:121
  #, c-format
  msgid "User ID too long in redirector log file %s\n"
 -msgstr "ÔÚÖض¨ÏòÈÕÖ¾ÎļþÖÐÓû§Ãû¹ý³¤ %s\n"
 +msgstr "���ض�����־�ļ����û������� %s\n"
  
- #: redirector.c:172
- #, c-format
- msgid "URL too long in redirector log file %s\n"
- msgstr "���ض�����־�ļ�����ӹ��� %s\n"
- #: redirector.c:182 splitlog.c:95
+ #: redirector.c:138 splitlog.c:95
  #, fuzzy, c-format
  msgid "Invalid date found in file %s\n"
 -msgstr "ÔÚÎļþÖдæÔÚÎÞЧµÄÈÕÆÚ %s\n"
 +msgstr "���ļ��д�����Ч������ %s\n"
  
- #: redirector.c:189
+ #: redirector.c:146
  #, fuzzy, c-format
  msgid "Invalid time found in file %s\n"
 -msgstr "ÎÞЧµÄʱ¼äÔÚÎļþÖР%s\n"
 +msgstr "��Ч��ʱ�����ļ��� %s\n"
  
- #: redirector.c:193
+ #: redirector.c:151
  #, fuzzy, c-format
  msgid "Invalid redirected source in file %s\n"
 -msgstr "ÔÚÎļþÖдæÔÚÎÞЧµÄÈÕÆÚ %s\n"
 +msgstr "���ļ��д�����Ч������ %s\n"
  
- #: redirector.c:197
+ #: redirector.c:156
  #, fuzzy, c-format
  msgid "Invalid redirected list in file %s\n"
 -msgstr "ÔÚÎļþÖдæÔÚÎÞЧµÄÈÕÆÚ %s\n"
 +msgstr "���ļ��д�����Ч������ %s\n"
  
- #: redirector.c:205
+ #: redirector.c:166
  #, fuzzy, c-format
  msgid "Invalid source IP in file %s\n"
 -msgstr "ÔÚÎļþÖдæÔÚÎÞЧµÄÈÕÆÚ %s\n"
 +msgstr "���ļ��д�����Ч������ %s\n"
  
- #: redirector.c:209 redirector.c:461
+ #: redirector.c:171 redirector.c:482
  #, fuzzy, c-format
  msgid "Invalid user in file %s\n"
 -msgstr "ÔÚÎļþÖдæÔÚÎÞЧÊäÈë %s\n"
 +msgstr "���ļ��д�����Ч���� %s\n"
  
- #: redirector.c:281
+ #: redirector.c:228
+ #, c-format
+ msgid "Reading redirector log file %s\n"
 -msgstr "¶ÁÈ¡Öض¨ÏòÈÕÖ¾Îļþ %s\n"
++msgstr "��ȡ�ض�����־�ļ� %s\n"
+ #: redirector.c:255 redirector.c:260
+ #, c-format
+ msgid ""
+ "Not enough memory to store the name of the new redirector log to be read - "
+ "%s\n"
 -msgstr "¶ÁȡеÄÖض¨ÏòÈÕÖ¾ÎļþÃûʱûÓеÄ×ã¹»µÄÄÚ´æ - %s\n"
++msgstr "��ȡ�µ��ض�����־�ļ���ʱû�е��㹻���ڴ� - %s\n"
+ #: redirector.c:265 redirector.c:309 redirector.c:326 redirector.c:455
+ #: redirector.c:460
+ #, c-format
+ msgid "(squidguard) Cannot open log file %s\n"
 -msgstr "(squidguard) ²»ÄÜ´ò¿ªÈÕÖ¾Îļþ %s\n"
++msgstr "(squidguard) ���ܴ�����־�ļ� %s\n"
+ #: redirector.c:270
+ #, fuzzy, c-format
+ msgid "Not enough memory to read the redirector log\n"
 -msgstr "ûÓÐ×ã¹»µÄÄÚ´æÈ¥¶ÁÈ¡Îļþ %s\n"
++msgstr "û���㹻���ڴ�ȥ��ȡ�ļ� %s\n"
+ #: redirector.c:302
  msgid "No redirector logs provided to produce that kind of report\n"
  msgstr ""
  
- #: redirector.c:300
+ #: redirector.c:321
  #, c-format
  msgid "Cannot open squidGuard config file: %s\n"
 -msgstr "²»ÄÜ´ò¿ªsauidGuard ÅäÖÃÎļþ: %s\n"
 +msgstr "���ܴ���sauidGuard �����ļ�: %s\n"
  
- #: redirector.c:391
+ #: redirector.c:412
  #, c-format
  msgid "%d more redirector entry not shown here&hellip;"
  msgid_plural "%d more redirector entries not shown here&hellip;"
@@@ -1991,29 -2092,35 +2097,35 @@@ msgstr[0] "
  msgid "Redirector report not generated because it is empty\n"
  msgstr ""
  
- #: redirector.c:444
+ #: redirector.c:465
  #, fuzzy, c-format
  msgid "Not enough memory to read the processed redirector log\n"
 -msgstr "ûÓÐ×ã¹»µÄÄÚ´æÀ´¶ÁÈ¡ÈÕÖ¾Îļþ\n"
 +msgstr "û���㹻���ڴ����ȡ��־�ļ�\n"
  
- #: redirector.c:448 redirector.c:452
+ #: redirector.c:469 redirector.c:473
  msgid "Redirector report"
 -msgstr "Öض¨Ïò±¨¸æ"
 +msgstr "�ض��򱨸�"
  
- #: redirector.c:456
+ #: redirector.c:477
  msgid "RULE"
 -msgstr "¹æÔò"
 +msgstr "����"
  
- #: redirector.c:469 repday.c:97
+ #: redirector.c:490 repday.c:97
  #, c-format
  msgid "Invalid time in file %s\n"
 -msgstr "ÎÞЧµÄʱ¼äÔÚÎļþÖР%s\n"
 +msgstr "��Ч��ʱ�����ļ��� %s\n"
  
- #: redirector.c:481
+ #: redirector.c:502
  #, fuzzy, c-format
  msgid "Invalid rule in file %s\n"
 -msgstr "ÔÚÎļþÖдæÔÚÎÞЧµÄÈÕÆÚ %s\n"
 +msgstr "���ļ��д�����Ч������ %s\n"
  
+ #: redirector.c:568
+ #, c-format
+ msgid "%d error found in the log file. Some entries may be missing."
+ msgid_plural "%d errors found in the log file. Some entries may be missing."
+ msgstr[0] ""
  #: repday.c:64
  #, c-format
  msgid "Output file name too long: %s/%s/d%s.html\n"
@@@ -2022,18 -2129,18 +2134,18 @@@ msgstr "�����ļ����ï¿
  #: repday.c:69 repday.c:122
  #, c-format
  msgid "(repday) Cannot open log file %s\n"
 -msgstr "(repday) ²»ÄÜ´ò¿ªÎļþ %s\n"
 +msgstr "(repday) ���ܴ����ļ� %s\n"
  
- #: repday.c:90 totday.c:87
+ #: repday.c:90
  #, c-format
  msgid "Too many different dates in %s\n"
 -msgstr "²»Í¬µÄÈÕÆÚÔÚ %s\n"
 +msgstr "��ͬ�������� %s\n"
  
  #: repday.c:126
  msgid "Day report"
 -msgstr "ÈÕ±¨"
 +msgstr "�ձ�"
  
- #: repday.c:144 repday.c:187
+ #: repday.c:144 repday.c:194
  msgid "H"
  msgstr "H"
  
@@@ -2046,39 -2167,44 +2172,44 @@@ msgstr "
  msgid ""
  "Cannot create the output directory name containing the period as part of the "
  "name\n"
 -msgstr "²»ÄÜ´´½¨Êä³öÎļþ¼ÐÃû°üº¬ÆÚ¼äµÄ²¿·ÖÃû³Æ\n"
 +msgstr "���ܴ��������ļ����������ڼ��IJ�������\n"
  
- #: report.c:94
+ #: report.c:93
  #, c-format
  msgid "outdirname=%s\n"
  msgstr ""
  
- #: report.c:101 report.c:120 report.c:252 report.c:430 report.c:475
- #: report.c:547 report.c:828
+ #: report.c:100 report.c:124 report.c:245 report.c:427 report.c:468
+ #: report.c:749
  #, c-format
  msgid "(report) Cannot open file %s\n"
 -msgstr "(report) ²»ÄÜ´ò¿ªÎļþ %s\n"
 +msgstr "(report) ���ܴ����ļ� %s\n"
  
- #: report.c:116
+ #: report.c:120
  #, fuzzy, c-format
  msgid "(report) directory entry too long: %s/%s.log\n"
 -msgstr "(report) Îļþ¼Ð¹ý³¤ %s/%s\n"
 +msgstr "(report) �ļ��й��� %s/%s\n"
  
- #: report.c:165
+ #: report.c:175
  #, c-format
  msgid "There is a broken smart info in file %s\n"
 -msgstr "Óв»ÍêÕûµÄÖÇÄÜÐÅÏ¢ÔÚÎļþ %s\n"
 +msgstr "�в�������������Ϣ���ļ� %s\n"
  
- #: report.c:264
+ #: report.c:257
  msgid "Site access report"
 -msgstr "վµã·ÃÎʱ¨¸æ"
 +msgstr "վ�����ʱ���"
  
- #: report.c:274
+ #: report.c:267
  #, fuzzy
  msgid "DATE"
 -msgstr "ÈÕÆÚ/ʱ¼ä"
 +msgstr "����/ʱ��"
  
- #: report.c:354
+ #: report.c:331
+ #, fuzzy, c-format
+ msgid "Failed to close temporary file for user %s - %s\n"
 -msgstr "¹Ø±ÕÓû§ÈÕÖ¾Îļþʧ°Ü %s - %s\n"
++msgstr "�ر��û���־�ļ�ʧ�� %s - %s\n"
+ #: report.c:350
  msgid ""
  "Dansguardian report not produced because no dansguardian configuration file "
  "was provided\n"
@@@ -2108,135 -2234,115 +2239,115 @@@ msgstr "
  msgid "User's detailed report not requested in report_type\n"
  msgstr ""
  
- #: report.c:402
+ #: report.c:398
  #, c-format
  msgid "Successful report generated on %s\n"
 -msgstr "³É¹¦µÄÉú³É±¨¸æÔÚ %s\n"
 +msgstr "�ɹ������ɱ����� %s\n"
  
- #: report.c:407
+ #: report.c:403
  #, c-format
  msgid "Successful report generated and sent to %s\n"
 -msgstr "³É¹¦µÄ±¨¸æÉú³É²¢·¢ËÍÖÁ %s\n"
 +msgstr "�ɹ��ı������ɲ������� %s\n"
  
- #: report.c:423
+ #: report.c:420
  #, c-format
  msgid "Making file: %s/%s\n"
 -msgstr "Éú³ÉÎļþ: %s/%s\n"
 +msgstr "�����ļ�: %s/%s\n"
  
- #: report.c:425 report.c:470
+ #: report.c:422
  #, c-format
  msgid "Temporary file name too long: %s/%s.utmp\n"
 -msgstr "ÁÙʱÎļþÃû¹ý³¤: %s/%s.utmp\n"
 +msgstr "��ʱ�ļ�������: %s/%s.utmp\n"
  
- #: report.c:448
- #, c-format
- msgid "Temporary file name too long: %s/%s.htmp\n"
- msgstr "��ʱ�ļ�������: %s/%s.htmp\n"
- #: report.c:453
- #, c-format
- msgid "(report-1) Cannot open file %s - %s\n"
- msgstr "(report-1) ���ܴ����ļ� %s - %s\n"
- #: report.c:510
- #, c-format
- msgid "Path too long %s/%s.htmp\n"
- msgstr "·������ %s/%s.htmp\n"
- #: report.c:515
- #, c-format
- msgid "(report-2) Cannot open file %s - %s\n"
- msgstr "(report-2)���ܴ����ļ� %s - %s\n"
- #: report.c:542
+ #: report.c:463
  #, c-format
  msgid "Path too long %s/%s.ip\n"
 -msgstr "·¾¶¹ý³¤ %s/%s.ip\n"
 +msgstr "·������ %s/%s.ip\n"
  
- #: report.c:570
+ #: report.c:491
  #, fuzzy, c-format
  msgid "Failed to write a line in %s\n"
 -msgstr "дÈëµÚÒ»ÐÐʱʧ°Ü %s\n"
 +msgstr "д����һ��ʱʧ�� %s\n"
  
- #: report.c:592
+ #: report.c:513
  #, c-format
  msgid "Failed to write the total line in %s\n"
 -msgstr "дÈëµÚÒ»ÐÐʱʧ°Ü %s\n"
 +msgstr "д����һ��ʱʧ�� %s\n"
  
- #: report.c:618
+ #: report.c:539
  #, c-format
  msgid "Invalid total number of accesses in %s\n"
 -msgstr "²»´æÔڵķÃÎÊ×ÜÊýÔÚ %s\n"
 +msgstr "�����ڵķ��������� %s\n"
  
- #: report.c:635
+ #: report.c:556
  #, c-format
  msgid "Invalid total size in %s\n"
 -msgstr "²»´æÔÚµÄ×Ü´óСÔÚ %s\n"
 +msgstr "�����ڵ��ܴ�С�� %s\n"
  
- #: report.c:652
+ #: report.c:573
  #, c-format
  msgid "Invalid total elapsed time in %s\n"
 -msgstr "²»´æÔÚ×ܵĹýȥʱ¼äÔÚ %s\n"
 +msgstr "�������ܵĹ�ȥʱ���� %s\n"
  
- #: report.c:669
+ #: report.c:590
  #, c-format
  msgid "Invalid total cache hit in %s\n"
 -msgstr "²»´æÔڵĻº´æÃüÖÐ×ÜÊý %s\n"
 +msgstr "�����ڵĻ����������� %s\n"
  
- #: report.c:686
+ #: report.c:607
  #, c-format
  msgid "Invalid total cache miss in %s\n"
 -msgstr "²»´æÔڵĻº´æδÃüÖÐ×ÜÊý %s\n"
 +msgstr "�����ڵĻ���δ�������� %s\n"
  
- #: report.c:696
+ #: report.c:617
  #, c-format
  msgid "User name too long or invalid in %s\n"
 -msgstr "Óû§Ãû¹ý³¤»òÕß²»´æÔÚ %s\n"
 +msgstr "�û����������߲����� %s\n"
  
- #: report.c:712
+ #: report.c:633
  #, c-format
  msgid "Invalid number of accesses in %s\n"
 -msgstr "²»´æÔڵķÃÎÊÊý %s\n"
 +msgstr "�����ڵķ����� %s\n"
  
- #: report.c:729
+ #: report.c:650
  #, c-format
  msgid "Invalid number of bytes in %s\n"
 -msgstr "²»´æÔÚ×Ö½ÚÊýz %s\n"
 +msgstr "�������ֽ���z %s\n"
  
- #: report.c:738
+ #: report.c:659
  #, c-format
  msgid "URL too long or invalid in %s\n"
 -msgstr "Á¬½Ó¹ý³¤»ò²»´æÔÚ %s\n"
 +msgstr "��ӹ����򲻴��� %s\n"
  
- #: report.c:746
+ #: report.c:667
  #, c-format
  msgid "IP address too long or invalid in %s\n"
 -msgstr "IPµØÖ·¹ý³¤»ò²»´æÔÚ %s\n"
 +msgstr "IP��ַ�����򲻴��� %s\n"
  
- #: report.c:754
+ #: report.c:675
  #, c-format
  msgid "Time too long or invalid in %s\n"
 -msgstr "ʱ¼ä¹ý³¤»ò²»´æÔÚ %s\n"
 +msgstr "ʱ�������򲻴��� %s\n"
  
- #: report.c:762
+ #: report.c:683
  #, c-format
  msgid "Date too long or invalid in %s\n"
 -msgstr "ÈÕÆÚ¹ý³¤»ò²»´æÔÚz %s\n"
 +msgstr "���ڹ����򲻴���z %s\n"
  
- #: report.c:778
+ #: report.c:699
  #, c-format
  msgid "Invalid elapsed time in %s\n"
 -msgstr "²»´æÔڵĵĹýȥʱ¼äÔÚ %s\n"
 +msgstr "�����ڵĵĹ�ȥʱ���� %s\n"
  
- #: report.c:795
+ #: report.c:716
  #, c-format
  msgid "Invalid cache hit size in %s\n"
 -msgstr "²»´æÔڵĻº´æÃüÖдóСÔÚ %s\n"
 +msgstr "�����ڵĻ������д�С�� %s\n"
  
- #: report.c:812
+ #: report.c:733
  #, c-format
  msgid "Invalid cache miss size in %s\n"
 -msgstr "²»´æÔÚ»º´æδÃüÖдóСÔÚ %s\n"
 +msgstr "�����ڻ���δ���д�С�� %s\n"
  
  #: siteuser.c:52
  msgid "Sites and users report not generated because privacy option is on\n"
@@@ -2245,16 -2351,16 +2356,16 @@@ msgstr "
  #: siteuser.c:74 siteuser.c:80
  #, c-format
  msgid "(siteuser) Cannot open log file %s\n"
 -msgstr "(siteuser) ²»ÄÜ´ò¿ªÈÕÖ¾Îļþ %s\n"
 +msgstr "(siteuser) ���ܴ�����־�ļ� %s\n"
  
- #: siteuser.c:84 siteuser.c:88 topuser.c:205
+ #: siteuser.c:84 siteuser.c:88 topuser.c:236
  msgid "Sites & Users"
 -msgstr "վµã & Óû§"
 +msgstr "վ�� & �û�"
  
  #: smartfilter.c:57
  #, fuzzy, c-format
- msgid "File name too long: %s/smartfilter.unsort\n"
+ msgid "File name too long: %s/smartfilter.int_unsort\n"
 -msgstr "ÎļþÃû¹ý³¤: %s/%s%s\n"
 +msgstr "�ļ�������: %s/%s%s\n"
  
  #: smartfilter.c:61
  #, fuzzy, c-format
@@@ -2296,43 -2402,43 +2407,43 @@@ msgstr "on
  #: smartfilter.c:146
  #, c-format
  msgid "(smartfilter) Cannot open file %s\n"
 -msgstr "(smartfilter) ²»ÄÜ´ò¿ªÎļþ %s\n"
 +msgstr "(smartfilter) ���ܴ����ļ� %s\n"
  
- #: sort.c:60
+ #: sort.c:66
  #, fuzzy, c-format
  msgid "file name too long: %s/%s.utmp\n"
 -msgstr "ÎļþÃû¹ý³¤: %s/%s.ip\n"
 +msgstr "�ļ�������: %s/%s.ip\n"
  
- #: sort.c:64
+ #: sort.c:70
  #, fuzzy, c-format
  msgid "file name too long: %s/htmlrel.txt\n"
 -msgstr "ÊäÈëµÄÃû³Æ¹ý³¤: %s/%s\n"
 +msgstr "���������ƹ���: %s/%s\n"
  
- #: sort.c:103
- #, c-format
- msgid "pre-sorting files\n"
- msgstr "Ԥ�����ļ�\n"
+ #: sort.c:118
+ #, fuzzy, c-format
+ msgid "Sorting log %s/%s.unsort\n"
 -msgstr "Óû§Ãû¹ý³¤ %s/%s.unsort\n"
++msgstr "�û������� %s/%s.unsort\n"
  
- #: sort.c:132
+ #: sort.c:125
  #, c-format
  msgid "user name too long to sort %s\n"
 -msgstr "Óû§Ãû¹ý³¤ÎÞ·¨ÅÅÐò %s\n"
 +msgstr "�û��������޷����� %s\n"
  
- #: sort.c:142
+ #: sort.c:135
  #, c-format
  msgid "user name too long for %s/%s.unsort\n"
 -msgstr "Óû§Ãû¹ý³¤ %s/%s.unsort\n"
 +msgstr "�û������� %s/%s.unsort\n"
  
- #: sort.c:158 topuser.c:147
+ #: sort.c:156 topuser.c:171
  msgid "connect"
  msgstr ""
  
- #: sort.c:160
+ #: sort.c:158
  #, fuzzy
  msgid "site"
 -msgstr "ÈÈÃÅÕ¾µã"
 +msgstr "����վ��"
  
- #: sort.c:162 topuser.c:150
+ #: sort.c:160 topuser.c:174
  #, fuzzy
  msgid "time"
  msgstr "ʱʵ"
@@@ -2368,105 -2474,112 +2479,112 @@@ msgstr "(splitlog) �޷�����
  msgid "Top sites report not produced because privacy option is on\n"
  msgstr ""
  
- #: topsites.c:96 topsites.c:102 topsites.c:211 topsites.c:222
+ #: topsites.c:93 topsites.c:99 topsites.c:208 topsites.c:219
  #, c-format
  msgid "(topsites) Cannot open log file %s\n"
 -msgstr "(topsites) ²»ÄÜ´ò¿ªÈÕÖ¾Îļþ %s\n"
 +msgstr "(topsites) ���ܴ�����־�ļ� %s\n"
  
- #: topsites.c:175
+ #: topsites.c:172
  #, c-format
  msgid "Total statistics mismatch when reading %s to produce the top sites\n"
  msgstr ""
  
- #: topsites.c:226 topuser.c:204
+ #: topsites.c:223 topuser.c:235
  msgid "Top sites"
 -msgstr "ÈÈÃÅÕ¾µã"
 +msgstr "����վ��"
  
- #: topsites.c:231
+ #: topsites.c:228
  #, c-format
  msgid "Top %d sites"
 -msgstr "ÈÈÃÅ %d Õ¾µã"
 +msgstr "���� %d վ��"
  
- #: topsites.c:262
+ #: topsites.c:259
  #, c-format
  msgid "The url is invalid in file %s\n"
 -msgstr "Õâ¸öÁ¬½Ó²»´æÔÚÔÚÎļþ %s\n"
 +msgstr "������Ӳ��������ļ� %s\n"
  
- #: topuser.c:65 topuser.c:71 topuser.c:176 topuser.c:187 topuser.c:450
+ #: topuser.c:45 topuser.c:87 topuser.c:93 topuser.c:200 topuser.c:211
  #, c-format
  msgid "(topuser) Cannot open file %s\n"
 -msgstr "(topuser) ²»ÄÜ´ò¿ªÎļþ %s\n"
 +msgstr "(topuser) ���ܴ����ļ� %s\n"
  
- #: topuser.c:79 util.c:751
+ #: topuser.c:101 util.c:751
  #, c-format
  msgid "Not enough memory to read the file %s\n"
 -msgstr "ûÓÐ×ã¹»µÄÄÚ´æÈ¥¶ÁÈ¡Îļþ %s\n"
 +msgstr "û���㹻���ڴ�ȥ��ȡ�ļ� %s\n"
  
- #: topuser.c:137
+ #: topuser.c:159
  #, c-format
  msgid "Total statistics mismatch when reading %s to produce the top users\n"
  msgstr ""
  
- #: topuser.c:144
+ #: topuser.c:168
  #, fuzzy
  msgid "user"
 -msgstr "Óû§"
 +msgstr "�û�"
  
- #: topuser.c:191
+ #: topuser.c:215
  #, c-format
  msgid "SARG report for %s"
 -msgstr "SARG ±¨¸æ %s"
 +msgstr "SARG ���� %s"
  
- #: topuser.c:197
+ #: topuser.c:222
  #, c-format
  msgid "Sort: %s, %s"
  msgstr ""
  
- #: topuser.c:199
+ #: topuser.c:224
  msgid "Top users"
 -msgstr "ÈÈÃÅÓû§"
 +msgstr "�����û�"
  
- #: topuser.c:207
+ #. TRANSLATORS: This is the title of the main report page when no
+ #. * top users list are requested.
+ #.
+ #: topuser.c:229
+ msgid "Table of content"
+ msgstr ""
+ #: topuser.c:238
  msgid "Redirector"
 -msgstr "Öض¨Ïò"
 +msgstr "�ض���"
  
- #: topuser.c:209
+ #: topuser.c:240
  msgid "Denied accesses"
 -msgstr "×èÖ¹·ÃÎÊ"
 +msgstr "��ֹ����"
  
- #: topuser.c:212
+ #: topuser.c:243
  msgid "Useragent"
 -msgstr "Óû§´úÀí"
 +msgstr "�û�����"
  
- #: topuser.c:219
+ #: topuser.c:250
  msgid "No top users report because it is not configured in report_type\n"
  msgstr ""
  
- #: topuser.c:267
+ #: topuser.c:300
  #, c-format
  msgid "There is a broken user in file %s\n"
 -msgstr "Óв»ÍêÕûµÄÓû§ÔÚÎļþ %s\n"
 +msgstr "�в��������û����ļ� %s\n"
  
- #: topuser.c:279
+ #: topuser.c:312
  #, c-format
  msgid "There is a broken elpased time in file %s\n"
 -msgstr "Óв»ÍêÕûµÄ¹ýȥʱ¼äÔÚÎļþ %s\n"
 +msgstr "�в������Ĺ�ȥʱ�����ļ� %s\n"
  
- #: topuser.c:283
+ #: topuser.c:316
  #, c-format
  msgid "There is a broken in-cache size in file %s\n"
 -msgstr "Óв»ÍêÕûµÄ in-cache ´óСÔÚÎļþ %s\n"
 +msgstr "�в������� in-cache ��С���ļ� %s\n"
  
- #: topuser.c:287
+ #: topuser.c:320
  #, c-format
  msgid "There is a broken out-of-cache size in file %s\n"
 -msgstr "Óв»ÍêÕûµÄ out-of-cache ´óСÔÚÎļþ %s\n"
 +msgstr "�в������� out-of-cache ��С���ļ� %s\n"
  
- #: topuser.c:316
+ #: topuser.c:352
  msgid "Graphic"
 -msgstr "ÊÓͼ"
 +msgstr "��ͼ"
  
- #: topuser.c:354
+ #: topuser.c:390
  #, c-format
  msgid ""
  "The total of the in-cache and cache-miss is not 100%% at position %d (user "
@@@ -2478,122 -2591,274 +2596,274 @@@ msgstr "
  msgid "The total of the in-cache and cache-miss is not 100%%\n"
  msgstr ""
  
- #: topuser.c:444
+ #: topuser.c:481
  #, c-format
  msgid "Write error in top user list %s\n"
 -msgstr "дÈë´íÎóÔÚÈÈÃÅÓû§Áбí %s\n"
 +msgstr "д�������������û��б� %s\n"
  
- #: topuser.c:446
+ #: topuser.c:483
  #, c-format
  msgid "Failed to close the top user list %s - %s\n"
 -msgstr "¹Ø±Õ»îÔ¾Óû§Áбíʱʧ°Ü %s - %s\n"
 +msgstr "�رջ�Ծ�û��б�ʱʧ�� %s - %s\n"
  
- #: totday.c:56 totday.c:60
+ #: totday.c:53
+ #, fuzzy, c-format
+ msgid "Not enough memory to store the daily statistics\n"
 -msgstr "ûÓÐ×ã¹»µÄÄÚ´æÈ¥´æ´¢Á¬½Ó\n"
++msgstr "û���㹻���ڴ�ȥ�洢���\n"
+ #: totday.c:104
+ #, c-format
+ msgid "Invalid date \"%s\" for the hourly statistics\n"
+ msgstr ""
+ #: totday.c:108
+ #, c-format
+ msgid "Invalid date component in \"%s\" for the hourly statistics\n"
+ msgstr ""
+ #: totday.c:113
+ #, c-format
+ msgid "Invalid hour %d for the hourly statistics\n"
+ msgstr ""
+ #: totday.c:121
+ #, fuzzy, c-format
+ msgid "Too many different dates for the hourly statistics\n"
 -msgstr "²»Í¬µÄÈÕÆÚÔÚ %s\n"
++msgstr "��ͬ�������� %s\n"
+ #: totday.c:153
  #, c-format
  msgid "File name too long: %s/%s%s\n"
 -msgstr "ÎļþÃû¹ý³¤: %s/%s%s\n"
 +msgstr "�ļ�������: %s/%s%s\n"
  
- #: totday.c:65 totday.c:112
+ #: totday.c:158
  #, c-format
  msgid "(totday) Cannot open log file %s\n"
 -msgstr "(today) ²»ÄÜ´ò¿ªÈÕÖ¾Îļþ %s\n"
 +msgstr "(today) ���ܴ�����־�ļ� %s\n"
  
- #: totday.c:137
+ #: totday.c:166
+ #, fuzzy, c-format
+ msgid "Invalid day index found in the hourly statistics\n"
 -msgstr "ÔÚÎļþÖдæÔÚÎÞЧµÄÈÕÆÚ %s\n"
++msgstr "���ļ��д�����Ч������ %s\n"
+ #: url.c:152
+ #, c-format
+ msgid "Host name alias \"%s*%s\" contains too many wildcards (*)\n"
+ msgstr ""
+ #: url.c:159
  #, c-format
- msgid "Cannot delete temporary file %s - %s\n"
+ msgid "Host name alias \"%*s\" must not end with a wildcard\n"
+ msgstr ""
+ #: url.c:186 url.c:198 url.c:222 url.c:246 url.c:256 url.c:322 url.c:331
+ #: url.c:341 url.c:404 url.c:413 url.c:423 url.c:487 url.c:500
+ #, fuzzy, c-format
+ msgid "Not enough memory to store the host name aliasing directives\n"
 -msgstr "ûÓÐ×ã¹»µÄÄÚ´æÀ´´æ´¢ÎļþÃûÔÚ \"%s\" ÔÚË÷ÒýÖÐ\n"
++msgstr "û���㹻���ڴ���洢�ļ����� \"%s\" ��������\n"
+ #: url.c:467
+ #, fuzzy, c-format
+ msgid "Invalid NUL character found in regular expression\n"
 -msgstr "ÔÚÎļþÖдæÔÚÎÞЧµÄÈÕÆÚ %s\n"
++msgstr "���ļ��д�����Ч������ %s\n"
+ #: url.c:474
+ #, c-format
+ msgid "Unterminated regular expression\n"
+ msgstr ""
+ #: url.c:493
+ #, fuzzy, c-format
+ msgid "Failed to compile the regular expression \"%s\": %s\n"
 -msgstr "ת´æÓû§Îļþʱʧ°Ü %s: %s\n"
++msgstr "ת���û��ļ�ʱʧ�� %s: %s\n"
+ #: url.c:551
+ #, c-format
+ msgid ""
+ "PCRE not compiled in therefore the regular expressions are not available in "
+ "the host alias file\n"
+ msgstr ""
+ #: url.c:582
+ #, fuzzy, c-format
+ msgid "Reading host alias file \"%s\"\n"
 -msgstr "¶ÁÈ¡·ÃÎÊÈÕÖ¾Îļþ: %s\n"
++msgstr "��ȡ������־�ļ�: %s\n"
+ #: url.c:585
+ #, fuzzy, c-format
+ msgid "Cannot read host name alias file \"%s\" - %s\n"
 -msgstr "ÎÞ·¨É¾³ýÁÙʱÎļþ %s - %s\n"
 +msgstr "�޷�ɾ����ʱ�ļ� %s - %s\n"
  
 -msgstr "ûÓÐ×ã¹»µÄÄÚ´æÀ´¶ÁÈ¡ÏÂÔØÎļþ\n"
+ #: url.c:590
+ #, fuzzy, c-format
+ msgid "Not enough memory to read the host name aliases\n"
 -msgstr "´´½¨Ä¿Â¼ %s %s\n"
++msgstr "û���㹻���ڴ����ȡ�����ļ�\n"
+ #: url.c:609
+ #, c-format
+ msgid "List of host names to alias:\n"
+ msgstr ""
+ #: url.c:612
+ #, c-format
+ msgid "  %s*%s => %s\n"
+ msgstr ""
+ #: url.c:614
+ #, fuzzy, c-format
+ msgid "  %s => %s\n"
++msgstr "����Ŀ¼ %s %s\n"
+ #: url.c:616
+ #, c-format
+ msgid "  *%s => %s\n"
+ msgstr ""
+ #: url.c:619
+ #, c-format
+ msgid "  %d.%d.%d.%d/%d => %s\n"
+ msgstr ""
+ #: url.c:622
+ #, c-format
+ msgid "  %x:%x:%x:%x:%x:%x:%x:%x/%d => %s\n"
+ msgstr ""
  #: usage.c:32
  #, c-format
  msgid "Usage: %s [options...]\n"
 -msgstr "ʹÓÃ: %s [Ñ¡Ïî...]\n"
 +msgstr "ʹ��: %s [ѡ��...]\n"
  
  #: usage.c:33
- msgid "     -a Hostname or IP address"
+ #, fuzzy
+ msgid "     -a NAME|IP  Create report for host name or IP address"
 -msgstr "     -a Ö÷»úÃû»òÕßIPµØַ"
 +msgstr "     -a ����������IP��ַ"
  
- #: usage.c:34
- msgid "     -b Useragent log"
- msgstr "     -b �û�������־"
  #: usage.c:35
- msgid "     -c Exclude file"
- msgstr "     -c �ų����ļ�"
+ msgid "     -c FILE     Exclude connected hosts from the report"
+ msgstr ""
  
  #: usage.c:36
- msgid "     -d Date from-until dd/mm/yyyy-dd/mm/yyyy"
- msgstr "     -d ���ڴӣ��� dd/mm/yyyy-dd/mm/yyyy"
+ #, fuzzy
+ msgid "     --convert   Convert the access.log file to a legible date"
 -msgstr "     -convert ×ª»» access.log Îļþµ½Ò»¸öÒ׶®µÄÈÕÆÚ"
++msgstr "     -convert ת�� access.log �ļ���һ���׶�������"
  
  #: usage.c:37
- msgid "     -e Email address to send reports (stdout for console)"
- msgstr "     -e �ʼ���ַ���ͱ��� (stdout for console)"
+ msgid "     --css       Output the internal CSS"
+ msgstr ""
  
  #: usage.c:38
- #, c-format
- msgid "     -f Config file (%s/sarg.conf)\n"
- msgstr "     -f �����ļ� (%s/sarg.conf)\n"
+ #, fuzzy
+ msgid ""
+ "     -d DATE     Date range to include in the report: from-until dd/mm/yyyy-"
+ "dd/mm/yyyy"
 -msgstr "     -d ÈÕÆÚ´Ó£­µ½ dd/mm/yyyy-dd/mm/yyyy"
++msgstr "     -d ���ڴӣ��� dd/mm/yyyy-dd/mm/yyyy"
  
  #: usage.c:39
- msgid "     -g Date format [e=Europe -> dd/mm/yyyy, u=USA -> mm/dd/yyyy]"
- msgstr "     -g ���ڸ�ʽ [e=ŷ�� -> dd/mm/yyyy, u=��� ->mm/dd/yyyy]"
+ #, fuzzy
+ msgid "     -e MAIL     Email address to send reports to (stdout for console)"
 -msgstr "     -e ÓʼþµØÖ··¢Ëͱ¨¸æ (stdout for console)"
++msgstr "     -e �ʼ���ַ���ͱ��� (stdout for console)"
  
  #: usage.c:40
- msgid "     -h This help"
- msgstr "     -h �����ǰ���"
+ #, fuzzy, c-format
+ msgid "     -f FILE     Config file to read (default is %s/sarg.conf)\n"
 -msgstr "     -f ÅäÖÃÎļþ (%s/sarg.conf)\n"
++msgstr "     -f �����ļ� (%s/sarg.conf)\n"
  
  #: usage.c:41
- msgid "     -i Reports by user and IP address"
- msgstr "     -i �û�������IP��ַ"
+ #, fuzzy
+ msgid ""
+ "     -g FMT      Date format [e=Europe -> dd/mm/yyyy, u=USA -> mm/dd/yyyy]"
 -msgstr "     -g ÈÕÆÚ¸ñʽ [e=Å·ÖÞ -> dd/mm/yyyy, u=ÃÀ¹ú ->mm/dd/yyyy]"
++msgstr "     -g ���ڸ�ʽ [e=ŷ�� -> dd/mm/yyyy, u=��� ->mm/dd/yyyy]"
  
  #: usage.c:42
- msgid "     -l Input log"
- msgstr "     -l ������־"
+ #, fuzzy
+ msgid "     -h          This help"
 -msgstr "     -h ÕâÀïÊÇ°ïÖú"
++msgstr "     -h �����ǰ���"
  
  #: usage.c:43
- msgid "     -n Resolve IP Address"
- msgstr "     -n ����IP��ַ"
+ #, fuzzy
+ msgid "     --help      This help"
 -msgstr "     -h ÕâÀïÊÇ°ïÖú"
++msgstr "     -h �����ǰ���"
  
  #: usage.c:44
- msgid "     -o Output dir"
- msgstr "     -o ����Ŀ¼"
+ #, fuzzy
+ msgid "     -i          Reports by user and IP address"
 -msgstr "     -i Óû§±¨¸æºÍIPµØÖ·"
++msgstr "     -i �û�������IP��ַ"
  
  #: usage.c:45
- msgid "     -p Use Ip Address instead of userid (reports)"
- msgstr "     -p ʹ��IP��ַ�����û�ID (reports)"
+ msgid "     --keeplogs  Keep every previously generated report"
+ msgstr ""
  
  #: usage.c:46
- msgid "     -s Accessed site [Eg. www.microsoft.com, www.netscape.com]"
- msgstr "     -s ����վ�� [���� www.microsoft.com, www.netscape.com]"
+ #, fuzzy
+ msgid "     -l FILE     Input log"
 -msgstr "     -l ÊäÈëÈÕÖ¾"
++msgstr "     -l ������־"
  
  #: usage.c:47
- msgid "     -t Time [HH, HH:MM]"
- msgstr "     -t ʱ��[HH,HH:MM]"
+ msgid "     --lastlog   Set the number of previous reports to keep"
+ msgstr ""
  
  #: usage.c:48
- msgid "     -u User"
- msgstr "     -u �û�"
+ #, fuzzy
+ msgid "     -m          Advanced process messages"
 -msgstr "                ½ø³ÌÐÅÏ¢ (-z) = %s\n"
++msgstr "                ������Ϣ (-z) = %s\n"
  
  #: usage.c:49
- msgid "     -w Temporary dir"
- msgstr "     -w ��ʱĿ¼"
+ #, fuzzy
+ msgid "     -n          Resolve IP addresses using RDNS"
 -msgstr "              ×ª»»IPµØÖ· (-n) = %s\n"
++msgstr "              ת��IP��ַ (-n) = %s\n"
  
  #: usage.c:50
- msgid "     -x Debug messages"
- msgstr "     -x ������Ϣ"
+ msgid "     -o DIR      Report output directory"
+ msgstr ""
  
  #: usage.c:51
- msgid "     -z Process messages"
- msgstr "     -z ������Ϣ"
+ #, fuzzy
+ msgid "     -p          Use Ip Address instead of userid (reports)"
 -msgstr "     -p Ê¹ÓÃIPµØÖ·Ìæ´úÓû§ID (reports)"
++msgstr "     -p ʹ��IP��ַ�����û�ID (reports)"
  
  #: usage.c:52
- msgid "     -convert Convert the access.log file to a legible date"
- msgstr "     -convert ת�� access.log �ļ���һ���׶�������"
+ msgid "     -P PREFIX   Prepend a prefix to the splitted file names"
+ msgstr ""
  
  #: usage.c:53
- msgid "     -split Split the log file by date in -d parameter"
+ #, fuzzy
+ msgid "     -s SITE     Limit report to accessed site [eg. www.microsoft.com]"
 -msgstr "     -s ·ÃÎÊÕ¾µã [ÀýÈç www.microsoft.com, www.netscape.com]"
++msgstr "     -s ����վ�� [���� www.microsoft.com, www.netscape.com]"
+ #: usage.c:54
+ #, fuzzy
+ msgid "     --split     Split the log file by date in -d parameter"
 -msgstr "     -split ʹÓÃÈÕÆÚ·ÖÀëÈÕÖ¾Îļþ -d ²ÎÊý"
 +msgstr "     -split ʹ�����ڷ�����־�ļ� -d ����"
  
+ #: usage.c:55
+ msgid "     --splitprefix PREFIX Prepend a prefix to the splitted file names"
+ msgstr ""
  #: usage.c:56
 -msgstr "     -w ÁÙʱĿ¼"
+ msgid "     -t TIME     Limit report to time range [HH:MM or HH:MM-HH:MM]"
+ msgstr ""
+ #: usage.c:57
+ msgid "     -u USER     Report only that user's activity"
+ msgstr ""
+ #: usage.c:58
+ #, fuzzy
+ msgid "     -w DIR      Temporary directory"
 -msgstr "     -x ²î´íÐÅÏ¢"
++msgstr "     -w ��ʱĿ¼"
+ #: usage.c:59
+ #, fuzzy
+ msgid "     -x          Debug messages"
 -msgstr "     -z ½ø³ÌÐÅÏ¢"
++msgstr "     -x ������Ϣ"
+ #: usage.c:60
+ #, fuzzy
+ msgid "     -z          Process messages"
++msgstr "     -z ������Ϣ"
+ #: usage.c:63
  msgid ""
  "\n"
  "\tPlease donate to the sarg project:"
@@@ -2951,118 -3216,126 +3221,154 @@@ msgstr "���ܻ�ȡ���̴�Ð
  #: util.c:1605
  #, c-format
  msgid "The command %s failed\n"
 -msgstr "ÃüÁî %s Ê§°Ü\n"
 +msgstr "���� %s ʧ��\n"
  
- #: util.c:1786
+ #: util.c:1789
  #, c-format
  msgid "SARG Version: %s\n"
 -msgstr "SARG°汾: %s\n"
 +msgstr "SARG汾: %s\n"
  
- #: util.c:1818
+ #: util.c:1821
  #, c-format
  msgid "directory name to delete too long: %s/%s\n"
 -msgstr "Îļþ¼ÐÃû³ÆÌ«³¤²»ÄÜɾ³ý: %s/%s\n"
 +msgstr "�ļ�������̫������ɾ��: %s/%s\n"
  
- #: util.c:1827
+ #: util.c:1830
  #, c-format
  msgid "cannot stat %s\n"
 -msgstr "²»ÄÜ¿ªʼ %s\n"
 +msgstr "���ܿ�ʼ %s\n"
  
- #: util.c:1832 util.c:1845
+ #: util.c:1835 util.c:1848
  #, c-format
  msgid "cannot delete %s - %s\n"
 -msgstr " ²»ÄÜɾ³ý %s - %s\n"
 +msgstr " ����ɾ�� %s - %s\n"
  
- #: util.c:1838
+ #: util.c:1841
  #, c-format
  msgid "unknown path type %s\n"
 -msgstr "δ֪µÄ·¾¶ÀàÐÍ %s\n"
 +msgstr "δ֪��·������ %s\n"
 +
 +#~ msgid "Sort"
 +#~ msgstr "����"
 +
 +#, fuzzy
 +#~ msgid "USER"
 +#~ msgstr "�û�"
 +
 +#~ msgid "Temporary directory name too long: %s\n"
 +#~ msgstr "��ʱ�ļ������ƹ���: %s\n"
 +
 +#~ msgid "SARG: MALICIUS CODE DETECTED.\n"
 +#~ msgstr "SARG: MALICIUS �������⵽d.\n"
 +
 +#~ msgid ""
 +#~ "SARG: I think someone is trying to execute arbitrary code in your system "
 +#~ "using sarg.\n"
 +#~ msgstr "SARG: ���������ڳ���ִ�������Ĵ���������ϵͳ��ʹ��sarg.\n"
 +
 +#~ msgid ""
 +#~ "SARG: please review your access.log and/or your useragent.log file.\n"
 +#~ msgstr "SARG: ���쿴access.log ��/�� useragent.log �ļ�.\n"
 +
 +#~ msgid "SARG: process stoped. No actions taken.\n"
 +#~ msgstr "SARG: ������ֹ.û��ִ��.\n"
 +
 +#~ msgid "temporary directory too long: %s/sarg\n"
 +#~ msgstr "��ʱ�ļ��й���: %s/sarg\n"
  
 -#~ msgstr "     -b Óû§´úÀíÈÕÖ¾"
+ #~ msgid "     -b Useragent log"
 -#~ msgstr "     -c ÅųýµÄÎļþ"
++#~ msgstr "     -b �û�������־"
+ #~ msgid "     -c Exclude file"
 -#~ msgstr "     -n ½âÎöIPµØÖ·"
++#~ msgstr "     -c �ų����ļ�"
+ #~ msgid "     -n Resolve IP Address"
 -#~ msgstr "     -o Êä³öĿ¼"
++#~ msgstr "     -n ����IP��ַ"
+ #~ msgid "     -o Output dir"
 -#~ msgstr "     -t Ê±¼ä[HH,HH:MM]"
++#~ msgstr "     -o ����Ŀ¼"
+ #~ msgid "     -t Time [HH, HH:MM]"
 -#~ msgstr "     -u Óû§"
++#~ msgstr "     -t ʱ��[HH,HH:MM]"
+ #~ msgid "     -u User"
 -#~ msgstr "ÔÚÖض¨ÏòÈÕÖ¾ÎļþÖÐÁ¬½Ó¹ý³¤ %s\n"
++#~ msgstr "     -u �û�"
+ #~ msgid "URL too long in redirector log file %s\n"
 -#~ msgstr "ÁÙʱÎļþÃû¹ý³¤: %s/%s.htmp\n"
++#~ msgstr "���ض�����־�ļ�����ӹ��� %s\n"
+ #~ msgid "Temporary file name too long: %s/%s.htmp\n"
 -#~ msgstr "(report-1) ²»ÄÜ´ò¿ªÎļþ %s - %s\n"
++#~ msgstr "��ʱ�ļ�������: %s/%s.htmp\n"
+ #~ msgid "(report-1) Cannot open file %s - %s\n"
 -#~ msgstr "·¾¶¹ý³¤ %s/%s.htmp\n"
++#~ msgstr "(report-1) ���ܴ����ļ� %s - %s\n"
+ #~ msgid "Path too long %s/%s.htmp\n"
 -#~ msgstr "(report-2)²»ÄÜ´ò¿ªÎļþ %s - %s\n"
++#~ msgstr "·������ %s/%s.htmp\n"
+ #~ msgid "(report-2) Cannot open file %s - %s\n"
 -#~ msgstr "Ô¤ÅÅÐòÎļþ\n"
++#~ msgstr "(report-2)���ܴ����ļ� %s - %s\n"
+ #~ msgid "pre-sorting files\n"
 -#~ msgstr "ÎÞ·¨É¾³ýÁÙʱÎļþ %s - %s\n"
++#~ msgstr "Ԥ�����ļ�\n"
+ #~ msgid "Cannot delete temporary file %s - %s\n"
++#~ msgstr "�޷�ɾ����ʱ�ļ� %s - %s\n"
  #~ msgid "Cannot get the size of file %s"
 -#~ msgstr "²»ÄÜ»ñÈ¡ÎļþµÄ´óС %s"
 +#~ msgstr "���ܻ�ȡ�ļ��Ĵ�С %s"
  
  #~ msgid "ERROR: Cannot load. Memory fault"
 -#~ msgstr "´íÎó: ²»ÄܼÓÔØ,´æÄÚ´íÎó"
 +#~ msgstr "����: ���ܼ���,���ڴ���"
  
  #, fuzzy
  #~ msgid "(html11) Cannot open file %s - %s\n"
 -#~ msgstr "(html11) ²»ÄÜ´ò¿ªÎļþ %s\n"
 +#~ msgstr "(html11) ���ܴ����ļ� %s\n"
  
  #~ msgid "(html11) read error in %s\n"
 -#~ msgstr "(html11) ¶ÁÈ¡´íÎóÔÚ %s\n"
 +#~ msgstr "(html11) ��ȡ������ %s\n"
  
  #~ msgid "IPv6 addresses are not supported (found in %s)\n"
 -#~ msgstr "IPv6²»±»Ö§³Ö(found in %s)\n"
 +#~ msgstr "IPv6����֧��(found in %s)\n"
  
  #~ msgid "There is a broken record or garbage in your %s file\n"
 -#~ msgstr "Óв»ÍêÕûµÄ¼Í¼»òÀ¬»øÔÚÄãµÄ %s ÎļþÖÐ\n"
 +#~ msgstr "�в������ļ�¼����������� %s �ļ���\n"
  
  #~ msgid "Ignoring unknown user file %s\n"
 -#~ msgstr "Ìø¹ýδ֪µÄÓû§Îļþ %s\n"
 +#~ msgstr "����δ֪���û��ļ� %s\n"
  
  #~ msgid "(html2) Cannot open file %s\n"
 -#~ msgstr "(html2) ²»ÄÜ´ò¿ªÈÕÖ¾Îļþ %s\n"
 +#~ msgstr "(html2) ���ܴ�����־�ļ� %s\n"
  
  #~ msgid "Unknown user ID %s in directory %s\n"
 -#~ msgstr "δ֪µÄÓû§ID %s ÔÚĿ¼ %s\n"
 +#~ msgstr "δ֪���û�ID %s ��Ŀ¼ %s\n"
  
  #~ msgid "Time period must be MM or MM:SS. Exit\n"
 -#~ msgstr "ʱ¼äÇø¼ä±ØÐëΪ MM »òÕß MM:SS.Exit\n"
 +#~ msgstr "ʱ����������Ϊ MM ���� MM:SS.Exit\n"
  
  #~ msgid "Path too long %s/%s.utmp\n"
 -#~ msgstr "·¾¶¹ý³¤ %s/%s.utmp\n"
 +#~ msgstr "·������ %s/%s.utmp\n"
  
  #~ msgid "(totger) Cannot open file %s\n"
 -#~ msgstr "(totger) ²»ÄÜ´ò¿ªÎļþ %s\n"
 +#~ msgstr "(totger) ���ܴ����ļ� %s\n"
  
  #~ msgid "Not enough memory to read the temporary file %s\n"
 -#~ msgstr "ûÓÐ×ã¹»µÄÄÚ´æÈ¥¶ÁÈ¡ÁÙʱÎļþ %s\n"
 +#~ msgstr "û���㹻���ڴ�ȥ��ȡ��ʱ�ļ� %s\n"
  
  #~ msgid "Failed to move to the end of %s - %s\n"
 -#~ msgstr "Òƶ¯µ½Ä©Î²Ê±Ê§°Ü %s - %s\n"
 +#~ msgstr "�ƶ���ĩβʱʧ�� %s - %s\n"
  
- #~ msgid "mkdir %s %s\n"
- #~ msgstr "����Ŀ¼ %s %s\n"
  #~ msgid "Failed to rewind to the beginning of the file %s: %s\n"
 -#~ msgstr "תÏòÎļþ¿ªÊ¼²¿·Öʱʧ°Ü %s: %s\n"
 +#~ msgstr "ת���ļ���ʼ����ʱʧ�� %s: %s\n"
  
  #~ msgid "Failed to write the total line in %s - %s\n"
 -#~ msgstr "дÈëËùÓÐÐÐʱʧ°Ü%s - %s\n"
 +#~ msgstr "д��������ʱʧ��%s - %s\n"
  
  #~ msgid "Failed to truncate %s: %s\n"
 -#~ msgstr "½Ø¶Ìʱʧ°Ü %s: %s\n"
 +#~ msgstr "�ض�ʱʧ�� %s: %s\n"
  
  #~ msgid "Sort"
 -#~ msgstr "ÅÅÐò"
 +#~ msgstr "����"
  
  #, fuzzy
  #~ msgid "USER"