root / pykota / trunk / po / pykota.pot @ 3108

Revision 3108, 76.4 kB (checked in by jerome, 17 years ago)

Better textual information.

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
Line 
1# PyKota
2#
3# PyKota : Print Quotas for CUPS and LPRng
4#
5# (c) 2003, 2004, 2005, 2006 Jerome Alet <alet@librelogiciel.com>
6# This program is free software; you can redistribute it and/or modify
7# it under the terms of the GNU General Public License as published by
8# the Free Software Foundation; either version 2 of the License, or
9# (at your option) any later version.
10#
11# This program is distributed in the hope that it will be useful,
12# but WITHOUT ANY WARRANTY; without even the implied warranty of
13# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14# GNU General Public License for more details.
15#
16# You should have received a copy of the GNU General Public License
17# along with this program; if not, write to the Free Software
18# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
19#
20# $Id$
21#
22# PyKota translation master file.
23#
24msgid ""
25msgstr ""
26"Project-Id-Version: PyKota v1.24\n"
27"Report-Msgid-Bugs-To: alet@librelogiciel.com\n"
28"POT-Creation-Date: 2006-03-30 22:00+0200\n"
29"PO-Revision-Date: 2006-11-30 23:46:00+0100\n"
30"Last-Translator: Jerome Alet <alet@librelogiciel.com>\n"
31"Language-Team: English <alet@librelogiciel.com>\n"
32"MIME-Version: 1.0\n"
33"Content-Type: text/plain; charset=ISO-8859-15\n"
34"Content-Transfer-Encoding: 8bit\n"
35
36#, python-format
37msgid ""
38"autopykota v%(__version__)s (c) %(__years__)s %(__author__)s\n"
39"\n"
40"A tool to automate user account creation and initial balance setting.\n"
41"\n"
42"THIS TOOL MUST NOT BE USED IF YOU WANT TO LIMIT YOUR USERS BY PAGE QUOTA !\n"
43"\n"
44"command line usage :\n"
45"\n"
46"  THIS TOOL MUST NOT BE USED FROM THE COMMAND LINE BUT ONLY AS PART\n"
47"  OF AN external policy IN pykota.conf\n"
48"  \n"
49"  autopykota { -i | --initbalance value } \n"
50"\n"
51"options :\n"
52"\n"
53"  -v | --version       Prints autopykota's version number then exits.\n"
54"  -h | --help          Prints this message then exits.\n"
55"  \n"
56"  -i | --initbalance b Sets the user's account initial balance value to b.\n"
57"                       If the user already exists, actual balance is left\n"
58"                       unmodified. If unset, the default value is 0.\n"
59msgstr ""
60
61#, python-format
62msgid "SIGTERM received, job %s cancelled."
63msgstr ""
64
65#, python-format
66msgid "Network error while querying the CUPS server : %s"
67msgstr ""
68
69msgid "You are not allowed to print at this time."
70msgstr ""
71
72msgid "Print job cancelled."
73msgstr ""
74
75msgid "Unlimited"
76msgstr ""
77
78msgid "ON"
79msgstr ""
80
81msgid "OFF"
82msgstr ""
83
84#, python-format
85msgid "Banner generator %s exit code is %s"
86msgstr ""
87
88msgid "Banner won't be printed : maximum number of deny banners reached."
89msgstr ""
90
91#, python-format
92msgid "Beware : computed job size (%s) != precomputed job size (%s)"
93msgstr ""
94
95msgid ""
96"The job size will be trusted anyway according to the 'trustjobsize' directive"
97msgstr ""
98
99#, python-format
100msgid ""
101"The job size will be trusted because it is inferior to the 'trustjobsize' "
102"directive's limit %s"
103msgstr ""
104
105#, python-format
106msgid ""
107"The job size will be modified according to the 'trustjobsize' directive : %s"
108msgstr ""
109
110#, python-format
111msgid ""
112"Printer %s not registered in the PyKota system, applying external policy (%"
113"s) for printer %s"
114msgstr ""
115
116#, python-format
117msgid ""
118"User %s not registered in the PyKota system, applying external policy (%s) "
119"for printer %s"
120msgstr ""
121
122#, python-format
123msgid ""
124"User %s doesn't have quota on printer %s in the PyKota system, applying "
125"external policy (%s) for printer %s"
126msgstr ""
127
128#, python-format
129msgid ""
130"External policy %s for printer %s produced an error. Job rejected. Please "
131"check PyKota's configuration files."
132msgstr ""
133
134#, python-format
135msgid ""
136"Printer %s not registered in the PyKota system, applying default policy (%s)"
137msgstr ""
138
139#, python-format
140msgid ""
141"User %s not registered in the PyKota system, applying default policy (%s) "
142"for printer %s"
143msgstr ""
144
145#, python-format
146msgid ""
147"User %s doesn't have quota on printer %s in the PyKota system, applying "
148"default policy (%s)"
149msgstr ""
150
151#, python-format
152msgid ""
153"Printer %s still not registered in the PyKota system, job will be rejected"
154msgstr ""
155
156#, python-format
157msgid ""
158"User %s still not registered in the PyKota system, job will be rejected on "
159"printer %s"
160msgstr ""
161
162#, python-format
163msgid ""
164"User %s still doesn't have quota on printer %s in the PyKota system, job "
165"will be rejected"
166msgstr ""
167
168msgid "Job is a dupe"
169msgstr ""
170
171msgid "Printing is denied by configuration"
172msgstr ""
173
174#, python-format
175msgid "Duplicate print jobs are not allowed on printer %s."
176msgstr ""
177
178msgid "Subprocess denied printing of a dupe"
179msgstr ""
180
181#, python-format
182msgid "Duplicate print jobs are not allowed on printer %s at this time."
183msgstr ""
184
185msgid "Subprocess allowed printing of a dupe"
186msgstr ""
187
188#, python-format
189msgid ""
190"\n"
191"\n"
192"Your system administrator :\n"
193"\n"
194"\t%s - <%s>\n"
195msgstr ""
196
197#, python-format
198msgid "Impossible to connect to SMTP server : %s"
199msgstr ""
200
201msgid "Print Quota"
202msgstr ""
203
204#, python-format
205msgid "Impossible to send mail to %s, error %s : %s"
206msgstr ""
207
208#, python-format
209msgid "Problem when sending mail : %s"
210msgstr ""
211
212msgid "Job contains no data. Printing is denied."
213msgstr ""
214
215msgid "Error in external policy script. Printing is denied."
216msgstr ""
217
218#, python-format
219msgid ""
220"Still no print quota entry for user %s on printer %s after external policy. "
221"Printing is denied."
222msgstr ""
223
224msgid "Printing is denied by printer policy."
225msgstr ""
226
227msgid "Job allowed by printer policy. No accounting will be done."
228msgstr ""
229
230#, python-format
231msgid "Invalid policy %s for printer %s"
232msgstr ""
233
234#, python-format
235msgid "Precomputed job size (%s pages) too large for printer %s."
236msgstr ""
237
238#, python-format
239msgid "You are not allowed to print so many pages on printer %s at this time."
240msgstr ""
241
242#, python-format
243msgid "User %s is not allowed to print at this time."
244msgstr ""
245
246msgid "Your account settings forbid you to print at this time."
247msgstr ""
248
249#, python-format
250msgid "Print Quota exceeded for user %s on printer %s"
251msgstr ""
252
253#, python-format
254msgid "Print Quota low for user %s on printer %s"
255msgstr ""
256
257msgid "Job denied, no accounting will be done."
258msgstr ""
259
260msgid "Job cancelled, no accounting will be done."
261msgstr ""
262
263msgid "Job accounting begins."
264msgstr ""
265
266msgid "Job denied, no accounting has been done."
267msgstr ""
268
269msgid "Job cancelled, no accounting has been done."
270msgstr ""
271
272msgid "Job accounting ends."
273msgstr ""
274
275msgid ""
276"Job size forced to 0 because the real CUPS backend failed. No accounting "
277"will be done."
278msgstr ""
279
280msgid "The real CUPS backend failed, but the job will be accounted for anyway."
281msgstr ""
282
283msgid "Job size forced to 0 because printing is denied."
284msgstr ""
285
286msgid "Job size forced to 0 because printing was cancelled."
287msgstr ""
288
289#, python-format
290msgid "Job size : %i"
291msgstr ""
292
293#, python-format
294msgid "User %s's quota on printer %s won't be modified"
295msgstr ""
296
297#, python-format
298msgid "Updating user %s's quota on printer %s"
299msgstr ""
300
301msgid "Job added to history."
302msgstr ""
303
304#, python-format
305msgid "Billing code %s was updated."
306msgstr ""
307
308#, python-format
309msgid "Incorrect value for the 'onbackenderror' directive in section [%s]"
310msgstr ""
311
312#, python-format
313msgid "The real backend produced an error, we will try again in %s seconds."
314msgstr ""
315
316#, python-format
317msgid "Job %s interrupted by the administrator !"
318msgstr ""
319
320#, python-format
321msgid ""
322"dumpykota v%(__version__)s (c) %(__years__)s %(__author__)s\n"
323"\n"
324"Dumps PyKota database's content.\n"
325"\n"
326"command line usage :\n"
327"\n"
328"  dumpykota [options] [filterexpr]\n"
329"\n"
330"options :\n"
331"\n"
332"  -v | --version       Prints dumpykota's version number then exits.\n"
333"  -h | --help          Prints this message then exits.\n"
334"  \n"
335"  -d | --data type     Dumps 'type' datas. Allowed types are :\n"
336"                       \n"
337"                         - history : dumps the jobs history.\n"
338"                         - users : dumps users.\n"
339"                         - groups : dumps user groups.\n"
340"                         - printers : dump printers.\n"
341"                         - upquotas : dump user quotas.\n"
342"                         - gpquotas : dump user groups quotas.\n"
343"                         - payments : dumps user payments.\n"
344"                         - pmembers : dumps printer groups members.\n"
345"                         - umembers : dumps user groups members.\n"
346"                         - billingcodes : dumps billing codes.\n"
347"                         - all : dumps all PyKota datas. The output format\n"
348"                                 is always XML in this case.\n"
349"                         \n"
350"                       NB : the -d | --data command line option   \n"
351"                       is MANDATORY.\n"
352"  \n"
353"  -f | --format fmt    Dumps datas in the 'fmt' format. When not specified,\n"
354"                       the format is to dump datas in the csv format (comma\n"
355"                       separated values). All data dumped is between double\n"
356"                       quotes. Allowed formats are :\n"
357"                       \n"
358"                         - csv : separate datas with commas\n"
359"                         - ssv : separate datas with semicolons\n"
360"                         - tsv : separate datas with tabs\n"
361"                         - xml : dump data as XML \n"
362"                         - cups : dump datas in CUPS' page_log format :\n"
363"                                  ONLY AVAILABLE WITH --data history\n"
364"                         \n"
365"  -o | --output fname  All datas will be dumped to the file instead of\n"
366"                       to the standard output. The special '-' filename\n"
367"                       is the default value and means stdout.\n"
368"                       WARNING : existing files are truncated !\n"
369"\n"
370"  -s | --sum           Summarize the selected datas.\n"
371"                           ONLY AVAILABLE WITH --data history or payments\n"
372"\n"
373"  Use the filter expressions to extract only parts of the \n"
374"  datas. Allowed filters are of the form :\n"
375"                \n"
376"         key=value\n"
377"                         \n"
378"  Allowed keys for now are :  \n"
379"                       \n"
380"         username       User's name\n"
381"         groupname      Users group's name\n"
382"         printername    Printer's name\n"
383"         pgroupname     Printers group's name\n"
384"         hostname       Client's hostname\n"
385"         jobid          Job's Id\n"
386"         billingcode    Job's billing code\n"
387"         start          Job's date of printing\n"
388"         end            Job's date of printing\n"
389"         \n"
390"  Dates formatting with 'start' and 'end' filter keys :\n"
391"  \n"
392"    YYYY : year boundaries\n"
393"    YYYYMM : month boundaries\n"
394"    YYYYMMDD : day boundaries\n"
395"    YYYYMMDDhh : hour boundaries\n"
396"    YYYYMMDDhhmm : minute boundaries\n"
397"    YYYYMMDDhhmmss : second boundaries\n"
398"    yesterday[+-NbDays] : yesterday more or less N days (e.g. : yesterday-"
399"15)\n"
400"    today[+-NbDays] : today more or less N days (e.g. : today-15)\n"
401"    tomorrow[+-NbDays] : tomorrow more or less N days (e.g. : tomorrow-15)\n"
402"    now[+-NbDays] : now more or less N days (e.g. now-15)\n"
403"\n"
404"  'now' and 'today' are not exactly the same since today represents the "
405"first\n"
406"  or last second of the day depending on if it's used in a start= or end=\n"
407"  date expression. The utility to be able to specify dates in the future is\n"
408"  a question which remains to be answered :-)\n"
409"  \n"
410"  Contrary to other PyKota management tools, wildcard characters are not \n"
411"  expanded, so you can't use them.\n"
412"  \n"
413"  NB : not all keys are allowed for each data type, so the result may be \n"
414"  empty if you use a key not available for a particular data type.\n"
415"  \n"
416"Examples :\n"
417"\n"
418"  $ dumpykota --data history --format csv >myfile.csv\n"
419"  \n"
420"  This dumps the history in a comma separated values file, for possible\n"
421"  use in a spreadsheet.\n"
422"  \n"
423"  $ dumpykota --data users --format xml -o users.xml\n"
424"  \n"
425"  Dumps all users datas to the users.xml file.\n"
426"  \n"
427"  $ dumpykota --data history printername=HP2100 username=jerome\n"
428"  \n"
429"  Dumps the job history for user jerome on printer HP2100 only.\n"
430"  \n"
431"  $ dumpykota --data history start=200503 end=20050730234615\n"
432"  \n"
433"  Dumps all jobs printed between March 1st 2005 at midnight and\n"
434"  July 30th 2005 at 23 hours 46 minutes and 15 secondes included.\n"
435msgstr ""
436
437msgid "The -d | --data command line option is mandatory, see help."
438msgstr ""
439
440#, python-format
441msgid ""
442"edpykota v%(__version__)s (c) %(__years__)s %(__author__)s\n"
443"\n"
444"A Print Quota editor for PyKota.\n"
445"\n"
446"command line usage :\n"
447"\n"
448"  edpykota [options] user1 user2 ... userN\n"
449"  \n"
450"  edpykota [options] group1 group2 ... groupN\n"
451"\n"
452"options :\n"
453"\n"
454"  -v | --version       Prints edpykota's version number then exits.\n"
455"  -h | --help          Prints this message then exits.\n"
456"  \n"
457"  -a | --add           Adds users or groups print quota entries if\n"
458"                       they don't exist in database.\n"
459"                       \n"
460"  -d | --delete        Deletes users or groups print quota entries.\n"
461"                       Users or groups are never deleted, you have\n"
462"                       to use the pkusers command to delete them.\n"
463"                       The history will be purge from all matching\n"
464"                       jobs, unless -g | --groups is used.\n"
465"  \n"
466"  -P | --printer p     Edit quotas on printer p only. Actually p can\n"
467"                       use wildcards characters to select only\n"
468"                       some printers. The default value is *, meaning\n"
469"                       all printers. \n"
470"                       You can specify several names or wildcards, \n"
471"                       by separating them with commas.\n"
472"  \n"
473"  -g | --groups        Edit groups print quota entries instead of \n"
474"                       users print quota entries.\n"
475"                          \n"
476"  -L | --list          Lists users or groups print quota entries.\n"
477"  \n"
478"  -n | --noquota       Sets both soft and hard limits to None for users\n"
479"                       or groups print quota entries.\n"
480"  \n"
481"  -r | --reset         Resets the actual page counter for the user\n"
482"                       or group to zero on the specified printers. \n"
483"                       The life time page counter is kept unchanged.\n"
484"                       \n"
485"  -R | --hardreset     Resets the actual and life time page counters\n"
486"                       for the user or group to zero on the specified \n"
487"                       printers. This is a shortcut for '--used 0'.\n"
488"                       \n"
489"  -s | --skipexisting  In combination with the --add option above, tells\n"
490"                       edpykota to not modify existing print quota entries.\n"
491"                       \n"
492"  -S | --softlimit sl  Sets the quota soft limit to sl "
493"pages.                       \n"
494"  \n"
495"  -H | --hardlimit hl  Sets the quota hard limit to hl pages.\n"
496"  \n"
497"  -I | --increase v    Increase existing Soft and Hard limits by the value\n"
498"                       of v. You can prefix v with + or -, if no sign is\n"
499"                       used, + is assumed.\n"
500"\n"
501"  -U | --used u        Sets the page counters for the user u pages on\n"
502"                       the selected printers. Doesn't work for groups, "
503"since\n"
504"                       their page counters are the sum of all their "
505"members'\n"
506"                       page counters.\n"
507"                       Useful for migrating users from a different system\n"
508"                       where they have already used some pages. Actual\n"
509"                       and Life Time page counters may be increased or "
510"decreased\n"
511"                       if u is prefixed with + or -.\n"
512"                       WARNING : BOTH page counters are modified in all "
513"cases,\n"
514"                       so be careful.\n"
515"                       NB : if u equals '0', then the action taken is\n"
516"                       the same as if --hardreset was used.\n"
517"\n"
518"  user1 through userN and group1 through groupN can use wildcards\n"
519"  if the --add option is not set.\n"
520"  \n"
521"examples :                              \n"
522"\n"
523"  $ edpykota --add john paul george ringo\n"
524"  \n"
525"  This will create print quota entries for users john, paul, george\n"
526"  and ringo on all printers. These print quota entries will have no\n"
527"  limit set.\n"
528"  \n"
529"  $ edpykota --printer lp -S 50 -H 60 jerome\n"
530"  \n"
531"  This will set jerome's print quota on the lp printer to a soft limit\n"
532"  of 50 pages, and a hard limit of 60 pages. Both user jerome and\n"
533"  printer lp have been previously created with the pkusers and pkprinters\n"
534"  commands, respectively.\n"
535"\n"
536"  $ edpykota -g -S 500 -H 550 financial support            \n"
537"  \n"
538"  This will set print quota soft limit to 500 pages and hard limit\n"
539"  to 550 pages for groups financial and support on all printers.\n"
540"  \n"
541"  $ edpykota --reset jerome \"jo*\"\n"
542"  \n"
543"  This will reset jerome's page counter to zero on all printers, as\n"
544"  well as every user whose name begins with 'jo'.\n"
545"  Their life time page counter on each printer will be kept unchanged.\n"
546"  You can also reset the life time page counters by using the\n"
547"  --hardreset | -R command line option.\n"
548"  \n"
549"  $ edpykota --printer hpcolor --noquota jerome\n"
550"  \n"
551"  This will tell PyKota to not limit jerome when printing on the \n"
552"  hpcolor printer. All his jobs will be allowed on this printer, but \n"
553"  accounting of the pages he prints will still be kept.\n"
554"  Print Quotas for jerome on other printers are unchanged.\n"
555"  \n"
556"  $ edpykota --delete --printer \"HP*,XER*\" jerome rachel\n"
557"  \n"
558"  This will delete users jerome and rachel's print quota\n"
559"  entries on all printers which name begin with 'HP' or\n"
560"  'XER'. The jobs printed by these users on these printers\n"
561"  will be deleted from the history.\n"
562msgstr ""
563
564#, python-format
565msgid "You can't set negative limits for %s"
566msgstr ""
567
568msgid "Extracting datas"
569msgstr ""
570
571#, python-format
572msgid "Page counter : %s"
573msgstr ""
574
575#, python-format
576msgid "Lifetime page counter : %s"
577msgstr ""
578
579#, python-format
580msgid "Soft limit : %s"
581msgstr ""
582
583#, python-format
584msgid "Hard limit : %s"
585msgstr ""
586
587#, python-format
588msgid "Date limit : %s"
589msgstr ""
590
591#, python-format
592msgid "Maximum job size : %s"
593msgstr ""
594
595#, python-format
596msgid "%s pages"
597msgstr ""
598
599#, python-format
600msgid "Warning banners printed : %s"
601msgstr ""
602
603msgid "Deletion"
604msgstr ""
605
606#, python-format
607msgid "Invalid used value %s."
608msgstr ""
609
610#, python-format
611msgid "Invalid increase value %s."
612msgstr ""
613
614#, python-format
615msgid "Invalid softlimit value %s."
616msgstr ""
617
618#, python-format
619msgid "Invalid hardlimit value %s."
620msgstr ""
621
622#, python-format
623msgid "Hard limit %i is less than soft limit %i, values will be exchanged."
624msgstr ""
625
626#, python-format
627msgid "Undefined hard limit set to soft limit (%s)."
628msgstr ""
629
630#, python-format
631msgid "Undefined soft limit set to hard limit (%s)."
632msgstr ""
633
634msgid "Creation"
635msgstr ""
636
637#, python-format
638msgid "No entry matches %s. Please use pkusers to create them first."
639msgstr ""
640
641msgid "Modification"
642msgstr ""
643
644msgid "incompatible options, see help."
645msgstr ""
646
647msgid "You have to pass user or group names on the command line"
648msgstr ""
649
650#, python-format
651msgid ""
652"repykota v%(__version__)s (c) %(__years__)s %(__author__)s\n"
653"\n"
654"Generates print quota reports.\n"
655"\n"
656"command line usage :\n"
657"\n"
658"  repykota [options] \n"
659"\n"
660"options :\n"
661"\n"
662"  -v | --version       Prints repykota's version number then exits.\n"
663"  -h | --help          Prints this message then exits.\n"
664"  \n"
665"  -u | --users         Generates a report on users quota, this is \n"
666"                       the default.\n"
667"  \n"
668"  -g | --groups        Generates a report on group quota instead of users.\n"
669"  \n"
670"  -i | --ingroups g1[,g2...]  Only lists users who are members of these\n"
671"                              groups. Reserved to PyKota Administrators.\n"
672"  \n"
673"  -P | --printer p     Report quotas on this printer only. Actually p can\n"
674"                       use wildcards characters to select only\n"
675"                       some printers. The default value is *, meaning\n"
676"                       all printers.\n"
677"                       You can specify several names or wildcards, \n"
678"                       by separating them with commas.\n"
679"  \n"
680"examples :                              \n"
681"\n"
682"  $ repykota --printer lp\n"
683"  \n"
684"  This will print the quota status for all users who use the lp printer.\n"
685"\n"
686"  $ repykota \n"
687"  \n"
688"  This will print the quota status for all users on all printers.\n"
689"  \n"
690"  $ repykota --printer \"laser*,*pson\" jerome \"jo*\"\n"
691"  \n"
692"  This will print the quota status for user jerome and all users\n"
693"  whose name begins with \"jo\" on all printers which name begins\n"
694"  with \"laser\" or ends with \"pson\".\n"
695"  \n"
696"  If launched by an user who is not a PyKota administrator, additionnal\n"
697"  arguments representing users or groups names are ignored, and only the\n"
698"  current user/group is reported.\n"
699msgstr ""
700
701msgid "Option --ingroups is reserved to PyKota Administrators."
702msgstr ""
703
704#, python-format
705msgid "There's no printer matching %s"
706msgstr ""
707
708#, python-format
709msgid ""
710"warnpykota v%(__version__)s (c) %(__years__)s %(__author__)s\n"
711"\n"
712"Sends mail to users over print quota.\n"
713"\n"
714"command line usage :\n"
715"\n"
716"  warnpykota  [options]  [names]\n"
717"\n"
718"options :\n"
719"\n"
720"  -v | --version       Prints warnpykota's version number then exits.\n"
721"  -h | --help          Prints this message then exits.\n"
722"  \n"
723"  -u | --users         Warns users over their print quota, this is the \n"
724"                       default.\n"
725"  \n"
726"  -g | --groups        Warns users whose groups quota are over limit.\n"
727"  \n"
728"  -P | --printer p     Verify quotas on this printer only. Actually p can\n"
729"                       use wildcards characters to select only\n"
730"                       some printers. The default value is *, meaning\n"
731"                       all printers.\n"
732"                       You can specify several names or wildcards, \n"
733"                       by separating them with commas.\n"
734"  \n"
735"examples :                              \n"
736"\n"
737"  $ warnpykota --printer lp\n"
738"  \n"
739"  This will warn all users of the lp printer who have exceeded their\n"
740"  print quota.\n"
741"\n"
742"  $ warnpykota \n"
743"  \n"
744"  This will warn all users  who have exceeded their print quota on\n"
745"  any printer.\n"
746"\n"
747"  $ warnpykota --groups --printer \"laserjet*\" \"dev*\"\n"
748"  \n"
749"  This will warn all users of groups which names begins with \"dev\" and\n"
750"  who have exceeded their print quota on any printer which name begins \n"
751"  with \"laserjet\"\n"
752"  \n"
753"  If launched by an user who is not a PyKota administrator, additionnal\n"
754"  arguments representing users or groups names are ignored, and only the\n"
755"  current user/group is reported.\n"
756msgstr ""
757
758#, python-format
759msgid ""
760"pkbanner v%(__version__)s (c) %(__years__)s %(__author__)s\n"
761"\n"
762"Generates banners.\n"
763"\n"
764"command line usage :\n"
765"\n"
766"  pkbanner  [options]  [more info]\n"
767"\n"
768"options :\n"
769"\n"
770"  -v | --version       Prints pkbanner's version number then exits.\n"
771"  -h | --help          Prints this message then exits.\n"
772"  \n"
773"  -l | --logo img      Use the image as the banner's logo. The logo will\n"
774"                       be drawn at the center top of the page. The default\n"
775"                       logo is /usr/share/pykota/logos/pykota.jpeg\n"
776"                       \n"
777"  -p | --pagesize sz   Sets sz as the page size. Most well known\n"
778"                       page sizes are recognized, like 'A4' or 'Letter'\n"
779"                       to name a few. The default size is A4.\n"
780"  \n"
781"  -s | --savetoner s   Sets the text luminosity factor to s%%. This can be \n"
782"                       used to save toner. The default value is 0, which\n"
783"                       means that no toner saving will be done.\n"
784"  \n"
785"  -u | --url u         Uses u as an url to be written at the bottom of \n"
786"                       the banner page. The default url is :\n"
787"                       http://www.pykota.com/\n"
788"  \n"
789"examples :                              \n"
790"\n"
791"  Using pkbanner directly from the command line is not recommended,\n"
792"  excepted for testing purposes. You should use pkbanner in the\n"
793"  'startingbanner' or 'endingbanner' directives in pykota.conf\n"
794"  \n"
795"    startingbanner: /usr/bin/pkbanner --logo=\"\" --savetoner=75\n"
796"  \n"
797"      With such a setting in pykota.conf, all print jobs will be \n"
798"      prefixed with an A4 banner with no logo, and text luminosity will\n"
799"      be increased by 75%%. The PostScript output will be directly sent\n"
800"      to your printer.\n"
801"      \n"
802"  You'll find more examples in the sample configuration file included    \n"
803"  in PyKota.\n"
804msgstr ""
805
806msgid "Unknown"
807msgstr ""
808
809msgid "Username"
810msgstr ""
811
812msgid "More Info"
813msgstr ""
814
815msgid "Job"
816msgstr ""
817
818msgid "Date"
819msgstr ""
820
821msgid "Allowed"
822msgstr ""
823
824msgid "Denied"
825msgstr ""
826
827msgid "Allowed with Warning"
828msgstr ""
829
830msgid "Problem"
831msgstr ""
832
833msgid "Cancelled"
834msgstr ""
835
836msgid "Result"
837msgstr ""
838
839msgid "Title"
840msgstr ""
841
842msgid "Filename"
843msgstr ""
844
845#, python-format
846msgid "Pages printed so far on %s"
847msgstr ""
848
849msgid "Account balance"
850msgstr ""
851
852msgid "Soft Limit"
853msgstr ""
854
855msgid "Hard Limit"
856msgstr ""
857
858msgid "Date Limit"
859msgstr ""
860
861msgid "No Limit"
862msgstr ""
863
864msgid "No Accounting"
865msgstr ""
866
867msgid "Forbidden"
868msgstr ""
869
870msgid "Printing Mode"
871msgstr ""
872
873msgid "Allowed range is (0..99)"
874msgstr ""
875
876#, python-format
877msgid "Invalid 'savetoner' option %s : %s"
878msgstr ""
879
880#, python-format
881msgid "Invalid 'pagesize' option %s, defaulting to A4."
882msgstr ""
883
884#, python-format
885msgid ""
886"pkbcodes v%(__version__)s (c) %(__years__)s %(__author__)s\n"
887"\n"
888"A billing codes Manager for PyKota.\n"
889"\n"
890"command line usage :\n"
891"\n"
892"  pkbcodes [options] code1 code2 code3 ... codeN\n"
893"\n"
894"options :\n"
895"\n"
896"  -v | --version       Prints pkbcodes version number then exits.\n"
897"  -h | --help          Prints this message then exits.\n"
898"  \n"
899"  -a | --add           Adds billing codes if they don't exist in PyKota's\n"
900"                       database. If they exist, they are modified\n"
901"                       unless -s|--skipexisting is also used.\n"
902"\n"
903"  -d | --delete        Deletes billing codes from PyKota's database.\n"
904"                       NB : the history entries with this billing code\n"
905"                       are not deleted, voluntarily.\n"
906"\n"
907"  -D | --description d Adds a textual description to billing codes.\n"
908"\n"
909"  -l | --list          List informations about the billing codes.\n"
910"\n"
911"  -r | --reset         Resets the billing codes' balance and page counters\n"
912"                       to 0.\n"
913"\n"
914"  -s | --skipexisting  In combination with the --add option above, tells\n"
915"                       pkbcodes to not modify existing billing codes.\n"
916"\n"
917"  code1 through codeN can contain wildcards if the --add option\n"
918"  is not set.\n"
919"\n"
920"examples :                              \n"
921"\n"
922"  $ pkbcodes --add -D \"My project\" myproj\n"
923"\n"
924"  Will create the myproj billing code with \"My project\"\n"
925"  as the description.\n"
926"\n"
927"  $ pkbcodes --delete \"*\"\n"
928"\n"
929"  This will completely delete all the billing codes, but without\n"
930"  removing any matching job from the history. USE WITH CARE ANYWAY !\n"
931"  \n"
932"  $ pkbcodes --list \"my*\"\n"
933"  \n"
934"  This will list all billing codes which name begins with 'my'.\n"
935msgstr ""
936
937msgid "You're not allowed to use this command."
938msgstr ""
939
940#, python-format
941msgid "There's no billingcode matching %s"
942msgstr ""
943
944msgid "pages"
945msgstr ""
946
947msgid "and"
948msgstr ""
949
950msgid "credits"
951msgstr ""
952
953#, python-format
954msgid "Billing code [%s] already exists, skipping."
955msgstr ""
956
957#, python-format
958msgid "Billing code [%s] already exists, will be modified."
959msgstr ""
960
961msgid "You have to pass billing codes on the command line"
962msgstr ""
963
964#, python-format
965msgid ""
966"pkinvoice v%(__version__)s (c) %(__years__)s %(__author__)s\n"
967"\n"
968"An invoice generator for PyKota.\n"
969"\n"
970"command line usage :\n"
971"\n"
972"  pkinvoice [options] [filterexpr]\n"
973"\n"
974"options :\n"
975"\n"
976"  -v | --version       Prints pkinvoice's version number then exits.\n"
977"  -h | --help          Prints this message then exits.\n"
978"  \n"
979"  -l | --logo img      Use the image as the invoice's logo. The logo will\n"
980"                       be drawn at the center top of the page. The default\n"
981"                       logo is /usr/share/pykota/logos/pykota.jpeg\n"
982"                       \n"
983"  -p | --pagesize sz   Sets sz as the page size. Most well known\n"
984"                       page sizes are recognized, like 'A4' or 'Letter'\n"
985"                       to name a few. The default size is A4.\n"
986"                       \n"
987"  -n | --number N      Sets the number of the first invoice. This number\n"
988"                       will automatically be incremented for each invoice.\n"
989"                       \n"
990"  -o | --output f.pdf  Defines the name of the invoice file which will\n"
991"                       be generated as a PDF document. If not set or\n"
992"                       set to '-', the PDF document is sent to standard\n"
993"                       output. \n"
994"                       \n"
995"  -u | --unit u        Defines the name of the unit to use on the "
996"invoice.                       \n"
997"                       The default unit is 'Credits', optionally translated\n"
998"                       to your native language if it is supported by "
999"PyKota.\n"
1000"  \n"
1001"  -V | --vat p         Sets the percent value of the applicable VAT to be\n"
1002"                       exposed. The default is 0.0, meaning no VAT\n"
1003"                       information will be included.\n"
1004"  \n"
1005"\n"
1006"  Use the filter expressions to extract only parts of the \n"
1007"  datas. Allowed filters are of the form :\n"
1008"                \n"
1009"         key=value\n"
1010"                         \n"
1011"  Allowed keys for now are :  \n"
1012"                       \n"
1013"         username       User's name\n"
1014"         printername    Printer's name\n"
1015"         hostname       Client's hostname\n"
1016"         jobid          Job's Id\n"
1017"         billingcode    Job's billing code\n"
1018"         start          Job's date of printing\n"
1019"         end            Job's date of printing\n"
1020"         \n"
1021"  Dates formatting with 'start' and 'end' filter keys :\n"
1022"  \n"
1023"    YYYY : year boundaries\n"
1024"    YYYYMM : month boundaries\n"
1025"    YYYYMMDD : day boundaries\n"
1026"    YYYYMMDDhh : hour boundaries\n"
1027"    YYYYMMDDhhmm : minute boundaries\n"
1028"    YYYYMMDDhhmmss : second boundaries\n"
1029"    yesterday[+-NbDays] : yesterday more or less N days (e.g. : yesterday-"
1030"15)\n"
1031"    today[+-NbDays] : today more or less N days (e.g. : today-15)\n"
1032"    tomorrow[+-NbDays] : tomorrow more or less N days (e.g. : tomorrow-15)\n"
1033"    now[+-NbDays] : now more or less N days (e.g. now-15)\n"
1034"\n"
1035"  'now' and 'today' are not exactly the same since today represents the "
1036"first\n"
1037"  or last second of the day depending on if it's used in a start= or end=\n"
1038"  date expression. The utility to be able to specify dates in the future is\n"
1039"  a question which remains to be answered :-)\n"
1040"  \n"
1041"  Contrary to other PyKota management tools, wildcard characters are not \n"
1042"  expanded, so you can't use them.\n"
1043"  \n"
1044"examples :\n"
1045"\n"
1046"  $ pkinvoice --unit EURO --output /tmp/invoices.pdf start=now-30\n"
1047"  \n"
1048"  Will generate a PDF document containing invoices for all users\n"
1049"  who have spent some credits last month. Invoices will be done in\n"
1050"  EURO.  No VAT information will be included.\n"
1051msgstr ""
1052
1053msgid "Invoice"
1054msgstr ""
1055
1056msgid "Edited on"
1057msgstr ""
1058
1059msgid "Number of jobs printed"
1060msgstr ""
1061
1062msgid "Number of pages printed"
1063msgstr ""
1064
1065msgid "Amount due"
1066msgstr ""
1067
1068msgid "Included VAT"
1069msgstr ""
1070
1071msgid "Here's the invoice for your printouts"
1072msgstr ""
1073
1074msgid "Generating invoices"
1075msgstr ""
1076
1077#, python-format
1078msgid "Incorrect value '%s' for the --vat command line option"
1079msgstr ""
1080
1081#, python-format
1082msgid "Incorrect value '%s' for the --number command line option"
1083msgstr ""
1084
1085#, python-format
1086msgid "Invalid filter value [%s], see help."
1087msgstr ""
1088
1089#, python-format
1090msgid "Invoiced %i users for %i jobs, %i pages and %.3f credits"
1091msgstr ""
1092
1093msgid "Credits"
1094msgstr ""
1095
1096#, python-format
1097msgid ""
1098"pkmail v%(__version__)s (c) %(__years__)s %(__author__)s\n"
1099"\n"
1100"Email gateway for PyKota.\n"
1101"\n"
1102"command line usage :\n"
1103"\n"
1104"  pkmail  [options]\n"
1105"\n"
1106"options :\n"
1107"\n"
1108"  -v | --version       Prints pkmail's version number then exits.\n"
1109"  -h | --help          Prints this message then exits.\n"
1110"  \n"
1111"    \n"
1112"  This command is meant to be used from your mail server's aliases file,\n"
1113"  as a pipe. It will then accept commands send to it in email messages,\n"
1114"  and will send the answer to the command's originator.\n"
1115"  \n"
1116"  To use this command, create an email alias in /etc/aliases with\n"
1117"  the following format :\n"
1118"  \n"
1119"    pykotacmd: \"|/usr/bin/pkmail\"\n"
1120"    \n"
1121"  Then run the 'newaliases' command to regenerate the aliases database.\n"
1122"  \n"
1123"  You can now send commands by email to 'pykotacmd@yourdomain.com', with\n"
1124"  the command in the subject.\n"
1125"  \n"
1126"  List of supported commands :\n"
1127"  \n"
1128"        report [username]\n"
1129"  \n"
1130"  NB : For pkmail to work correctly, you may have to put the 'mail'\n"
1131"  system user in the 'pykota' system group to ensure this user can\n"
1132"  read the /etc/pykota/pykotadmin.conf file, and restart your\n"
1133"  mail server (e.g. /etc/init.d/exim restart). It is strongly advised\n"
1134"  that you think at least twice before doing this though.\n"
1135"  \n"
1136"  Use at your own risk !\n"
1137msgstr ""
1138
1139msgid "Result of your commands"
1140msgstr ""
1141
1142#, python-format
1143msgid ""
1144"pknotify v%(__version__)s (c) %(__years__)s %(__author__)s\n"
1145"\n"
1146"Notifies or ask questions to end users who launched the PyKotIcon "
1147"application.\n"
1148"\n"
1149"command line usage :\n"
1150"\n"
1151"  pknotify  [options]  [arguments]\n"
1152"\n"
1153"options :\n"
1154"\n"
1155"  -v | --version             Prints pknotify's version number then exits.\n"
1156"  -h | --help                Prints this message then exits.\n"
1157"  \n"
1158"  -d | --destination h[:p]   Sets the destination hostname and optional\n"
1159"                             port onto which contact the remote PyKotIcon\n"
1160"                             application. This option is mandatory.\n"
1161"                             When not specified, the port defaults to 7654.\n"
1162"                             \n"
1163"  -a | --ask                 Tells pknotify to ask something to the end\n"
1164"                             user. Then pknotify will output the result.\n"
1165"                       \n"
1166"  -C | --checkauth           When --ask is used and both an 'username' and "
1167"a\n"
1168"                             'password' are asked to the end user, then\n"
1169"                             pknotify will try to authenticate the user\n"
1170"                             through PAM. If authentified, this program\n"
1171"                             will print \"AUTH=YES\", else \"AUTH=NO\".\n"
1172"                             If a field is missing, \"AUTH=IMPOSSIBLE\" "
1173"will\n"
1174"                             be printed. If the user is authenticated, then\n"
1175"                             \"USERNAME=xxxx\" will be printed as well.\n"
1176"                             \n"
1177"  -c | --confirm             Tells pknotify to ask for either a "
1178"confirmation                       \n"
1179"                             or abortion.\n"
1180"                             \n"
1181"  -D | --denyafter N         With --checkauth above, makes pknotify "
1182"loop                           \n"
1183"                             up to N times if the password is incorrect.\n"
1184"                             After having reached the limit, \"DENY\" will\n"
1185"                             be printed, which effectively rejects the job.\n"
1186"                             The default value of N is 1, meaning the job\n"
1187"                             is denied after the first unsuccessful try.\n"
1188"                             \n"
1189"  -N | --noremote action     If it's impossible to connect to the remote\n"
1190"                             PyKotIcon machine, do this action instead.\n"
1191"                             Allowed actions are 'CONTINUE' and 'CANCEL', \n"
1192"                             which will respectively allow the processing\n"
1193"                             of the print job to continue, or the job to\n"
1194"                             be cancelled. The default value is CANCEL.\n"
1195"                             \n"
1196"  -n | --notify              Tells pknotify to send an informational "
1197"message\n"
1198"                             to the end user.\n"
1199"                             \n"
1200"  -q | --quit                Tells pknotify to send a message asking the\n"
1201"                             PyKotIcon application to exit. This option can\n"
1202"                             be combined with the other ones to make "
1203"PyKotIcon\n"
1204"                             exit after having sent the answer from the "
1205"dialog.\n"
1206"                             \n"
1207"  -t | --timeout T           Tells pknotify to ignore the end user's answer "
1208"if\n"
1209"                             it comes past T seconds after the dialog box "
1210"being\n"
1211"                             opened. The default value is 0 seconds, which \n"
1212"                             tells pknotify to wait indefinitely.\n"
1213"                             Use this option to avoid having an user who\n"
1214"                             leaved his computer stall a whole print queue.\n"
1215"                             \n"
1216"  You MUST specify either --ask, --confirm, --notify or --quit.\n"
1217"\n"
1218"  arguments :             \n"
1219"  \n"
1220"    -a | --ask : Several arguments are accepted, of the form\n"
1221"                 \"label:varname:defaultvalue\". The result will\n"
1222"                 be printed to stdout in the following format :\n"
1223"                 VAR1NAME=VAR1VALUE\n"
1224"                 VAR2NAME=VAR2VALUE\n"
1225"                 ...\n"
1226"                 If the dialog was cancelled, nothing will be\n"
1227"                 printed. If one of the varname is 'password'\n"
1228"                 then this field is asked as a password (you won't\n"
1229"                 see what you type in), and is NOT printed. Although\n"
1230"                 it is not printed, it will be used to check if\n"
1231"                 authentication is valid if you specify --checkauth.\n"
1232"                 \n"
1233"    -c | --confirm : A single argument is expected, representing the\n"
1234"                     message to display. If the dialog is confirmed\n"
1235"                     then pknotify will print OK, else CANCEL.\n"
1236"                     \n"
1237"    -n | --notify : A single argument is expected, representing "
1238"the                 \n"
1239"                    message to display. In this case pknotify will\n"
1240"                    always print OK.\n"
1241"                    \n"
1242"examples :                    \n"
1243"\n"
1244"  pknotify -d client:7654 --noremote CONTINUE --confirm \"This job costs 10 "
1245"credits\"\n"
1246"  \n"
1247"  Would display the cost of the print job and asks for confirmation.\n"
1248"  If the end user doesn't have PyKotIcon running and accepting connections\n"
1249"  from the print server, PyKota will consider that the end user accepted\n"
1250"  to print this job.\n"
1251"  \n"
1252"  pknotify --destination $PYKOTAJOBORIGINATINGHOSTNAME:7654 \\\n"
1253"           --checkauth --ask \"Your name:username:\" \"Your password:"
1254"password:\"\n"
1255"           \n"
1256"  Asks an username and password, and checks if they are valid.         \n"
1257"  NB : The PYKOTAJOBORIGINATINGHOSTNAME environment variable is\n"
1258"  only set if you launch pknotify from cupspykota through a directive\n"
1259"  in ~pykota/pykota.conf\n"
1260"  \n"
1261"  The TCP port you'll use must be reachable on the client from the\n"
1262"  print server.\n"
1263msgstr ""
1264
1265msgid "You MUST install PyPAM for this functionnality to work !"
1266msgstr ""
1267
1268#, python-format
1269msgid "Authentication error for user %s : %s"
1270msgstr ""
1271
1272#, python-format
1273msgid "Internal error : can't authenticate user %s"
1274msgstr ""
1275
1276#, python-format
1277msgid "Password correct for user %s"
1278msgstr ""
1279
1280#, python-format
1281msgid ""
1282"The end user at %s:%i didn't answer within %i seconds. The print job will be "
1283"cancelled."
1284msgstr ""
1285
1286#, python-format
1287msgid ""
1288"Are you sure that PyKotIcon is running and accepting incoming connections on "
1289"%s:%s ?"
1290msgstr ""
1291
1292msgid "Connection error"
1293msgstr ""
1294
1295msgid "some options are mandatory, see help."
1296msgstr ""
1297
1298msgid "incorrect value for the --noremote command line switch, see help."
1299msgstr ""
1300
1301msgid "some options require arguments, see help."
1302msgstr ""
1303
1304#, python-format
1305msgid ""
1306"pkprinters v%(__version__)s (c) %(__years__)s %(__author__)s\n"
1307"\n"
1308"A Printers Manager for PyKota.\n"
1309"\n"
1310"command line usage :\n"
1311"\n"
1312"  pkprinters [options] printer1 printer2 printer3 ... printerN\n"
1313"\n"
1314"options :\n"
1315"\n"
1316"  -v | --version       Prints pkprinters's version number then exits.\n"
1317"  -h | --help          Prints this message then exits.\n"
1318"  \n"
1319"  -a | --add           Adds printers if they don't exist on the Quota \n"
1320"                       Storage Server. If they exist, they are modified\n"
1321"                       unless -s|--skipexisting is also used.\n"
1322"                       \n"
1323"  -d | --delete        Deletes printers from the quota storage.\n"
1324"  \n"
1325"  -D | --description d Adds a textual description to printers.\n"
1326"\n"
1327"  -C | --cups          Also modifies the DeviceURI in CUPS' printers.conf\n"
1328"\n"
1329"  -c | --charge p[,j]  Sets the price per page and per job to charge.\n"
1330"                       Job price is optional.\n"
1331"                       If both are to be set, separate them with a comma.\n"
1332"                       Floating point and negative values are allowed.\n"
1333"  \n"
1334"  -g | --groups pg1[,pg2...] Adds or Remove the printer(s) to the printer \n"
1335"                       groups pg1, pg2, etc... which must already exist.\n"
1336"                       A printer group is just like a normal printer,\n"
1337"                       only that it is usually unknown from the printing\n"
1338"                       system. Create printer groups exactly the same\n"
1339"                       way that you create printers, then add other \n"
1340"                       printers to them with this option.\n"
1341"                       Accounting is done on a printer and on all\n"
1342"                       the printer groups it belongs to, quota checking\n"
1343"                       is done on a printer and on all the printer groups\n"
1344"                       it belongs to.\n"
1345"                       If the --remove option below is not used, the \n"
1346"                       default action is to add printers to the specified\n"
1347"                       printer groups.\n"
1348"                       \n"
1349"  -l | --list          List informations about the printer(s) and the\n"
1350"                       printers groups it is a member of.\n"
1351"                       \n"
1352"  -r | --remove        In combination with the --groups option "
1353"above,                       \n"
1354"                       remove printers from the specified printers groups.\n"
1355"                       \n"
1356"  -s | --skipexisting  In combination with the --add option above, tells\n"
1357"                       pkprinters to not modify existing printers.\n"
1358"                       \n"
1359"  -m | --maxjobsize s  Sets the maximum job size allowed on the printer\n"
1360"                       to s pages.\n"
1361"                       \n"
1362"  -p | --passthrough   Activate passthrough mode for the printer. In this\n"
1363"                       mode, users are allowed to print without any impact\n"
1364"                       on their quota or account balance.\n"
1365"                       \n"
1366"  -n | --nopassthrough Deactivate passthrough mode for the printer.\n"
1367"                       Without -p or -n, printers are created in \n"
1368"                       normal mode, i.e. no passthrough.\n"
1369"  \n"
1370"  printer1 through printerN can contain wildcards if the --add option \n"
1371"  is not set.\n"
1372"  \n"
1373"examples :                              \n"
1374"\n"
1375"  $ pkprinters --add -D \"HP Printer\" --charge 0.05,0.1 hp2100 hp2200 "
1376"hp8000\n"
1377"  \n"
1378"  Will create three printers named hp2100, hp2200 and hp8000.\n"
1379"  Their price per page will be set at 0.05 unit, and their price\n"
1380"  per job will be set at 0.1 unit. Units are in your own currency,\n"
1381"  or whatever you want them to mean.\n"
1382"  All of their descriptions will be set to the string \"HP Printer\".\n"
1383"  If any of these printers already exists, it will also be modified \n"
1384"  unless the -s|--skipexisting command line option is also used.\n"
1385"            \n"
1386"  $ pkprinters --delete \"*\"\n"
1387"  \n"
1388"  This will completely delete all printers and associated quota "
1389"information,\n"
1390"  as well as their job history. USE WITH CARE !\n"
1391"  \n"
1392"  $ pkprinters --groups Laser,HP \"hp*\"\n"
1393"  \n"
1394"  This will put all printers which name matches \"hp*\" into printers "
1395"groups \n"
1396"  Laser and HP, which MUST already exist.\n"
1397"  \n"
1398"  $ pkprinters --groups LexMark --remove hp2200\n"
1399"  \n"
1400"  This will remove the hp2200 printer from the LexMark printer group.\n"
1401msgstr ""
1402
1403#, python-format
1404msgid "Passthrough mode : %s"
1405msgstr ""
1406
1407#, python-format
1408msgid "Routed through PyKota : %s"
1409msgstr ""
1410
1411msgid "YES"
1412msgstr ""
1413
1414msgid "NO"
1415msgstr ""
1416
1417msgid "in"
1418msgstr ""
1419
1420msgid "Rerouting printers to CUPS"
1421msgstr ""
1422
1423#, python-format
1424msgid "Invalid charge amount value %s"
1425msgstr ""
1426
1427#, python-format
1428msgid "Invalid maximum job size value %s"
1429msgstr ""
1430
1431#, python-format
1432msgid "Printer %s already exists, skipping."
1433msgstr ""
1434
1435#, python-format
1436msgid "Printer %s already exists, will be modified."
1437msgstr ""
1438
1439#, python-format
1440msgid "Invalid printer name %s"
1441msgstr ""
1442
1443msgid "You have to pass printer groups names on the command line"
1444msgstr ""
1445
1446msgid "You have to pass printer names on the command line"
1447msgstr ""
1448
1449#, python-format
1450msgid ""
1451"pkrefund v%(__version__)s (c) %(__years__)s %(__author__)s\n"
1452"\n"
1453"Refunds jobs.\n"
1454"\n"
1455"command line usage :\n"
1456"\n"
1457"  pkrefund [options] [filterexpr]\n"
1458"\n"
1459"options :\n"
1460"\n"
1461"  -v | --version       Prints pkrefund's version number then exits.\n"
1462"  -h | --help          Prints this message then exits.\n"
1463"  \n"
1464"  -f | --force         Doesn't ask for confirmation before refunding jobs.\n"
1465"  -r | --reason txt    Sets textual information to explain the refunding.\n"
1466"\n"
1467"  -l | --logo img      Use the image as the receipt's logo. The logo will\n"
1468"                       be drawn at the center top of the page. The default\n"
1469"                       logo is /usr/share/pykota/logos/pykota.jpeg\n"
1470"\n"
1471"  -p | --pagesize sz   Sets sz as the page size. Most well known\n"
1472"                       page sizes are recognized, like 'A4' or 'Letter'\n"
1473"                       to name a few. The default size is A4.\n"
1474"\n"
1475"  -n | --number N      Sets the number of the first receipt. This number\n"
1476"                       will automatically be incremented for each receipt.\n"
1477"\n"
1478"  -o | --output f.pdf  Defines the name of the PDF file which will contain\n"
1479"                       the receipts. If not set, then no PDF file will\n"
1480"                       be created. If set to '-', then --force is assumed,\n"
1481"                       and the PDF document is sent to standard output.\n"
1482"\n"
1483"  -u | --unit u        Defines the name of the unit to use on the receipts.\n"
1484"                       The default unit is 'Credits', optionally translated\n"
1485"                       to your native language if it is supported by "
1486"PyKota.\n"
1487"  \n"
1488"\n"
1489"  Use the filter expressions to extract only parts of the \n"
1490"  datas. Allowed filters are of the form :\n"
1491"                \n"
1492"         key=value\n"
1493"                         \n"
1494"  Allowed keys for now are :  \n"
1495"                       \n"
1496"         username       User's name\n"
1497"         printername    Printer's name\n"
1498"         hostname       Client's hostname\n"
1499"         jobid          Job's Id\n"
1500"         billingcode    Job's billing code\n"
1501"         start          Job's date of printing\n"
1502"         end            Job's date of printing\n"
1503"         \n"
1504"  Dates formatting with 'start' and 'end' filter keys :\n"
1505"  \n"
1506"    YYYY : year boundaries\n"
1507"    YYYYMM : month boundaries\n"
1508"    YYYYMMDD : day boundaries\n"
1509"    YYYYMMDDhh : hour boundaries\n"
1510"    YYYYMMDDhhmm : minute boundaries\n"
1511"    YYYYMMDDhhmmss : second boundaries\n"
1512"    yesterday[+-NbDays] : yesterday more or less N days (e.g. : yesterday-"
1513"15)\n"
1514"    today[+-NbDays] : today more or less N days (e.g. : today-15)\n"
1515"    tomorrow[+-NbDays] : tomorrow more or less N days (e.g. : tomorrow-15)\n"
1516"    now[+-NbDays] : now more or less N days (e.g. now-15)\n"
1517"\n"
1518"  'now' and 'today' are not exactly the same since today represents the "
1519"first\n"
1520"  or last second of the day depending on if it's used in a start= or end=\n"
1521"  date expression. The utility to be able to specify dates in the future is\n"
1522"  a question which remains to be answered :-)\n"
1523"  \n"
1524"  Contrary to other PyKota management tools, wildcard characters are not \n"
1525"  expanded, so you can't use them.\n"
1526"  \n"
1527"Examples :\n"
1528"\n"
1529"  $ pkrefund --output /tmp/receipts.pdf jobid=503\n"
1530"  \n"
1531"  This will refund all jobs which Id is 503. BEWARE : installing CUPS\n"
1532"  afresh will reset the first job id at 1, so you probably want to use\n"
1533"  a more precise filter as explained below. A confirmation will\n"
1534"  be asked for each job to refund, and a PDF file named /tmp/receipts.pdf\n"
1535"  will be created which will contain printable receipts.\n"
1536"  \n"
1537"  $ pkrefund --reason \"Hardware problem\" jobid=503 start=today-7\n"
1538"  \n"
1539"  Refunds all jobs which id is 503 but which were printed during the\n"
1540"  past week. The reason will be marked as being an hardware problem.\n"
1541"  \n"
1542"  $ pkrefund --force username=jerome printername=HP2100\n"
1543"  \n"
1544"  Refunds all jobs printed by user jerome on printer HP2100. No\n"
1545"  confirmation will be asked.\n"
1546"  \n"
1547"  $ pkrefund --force printername=HP2100 start=200602 end=yesterday\n"
1548"  \n"
1549"  Refunds all jobs printed on printer HP2100 between February 1st 2006\n"
1550"  and yesterday. No confirmation will be asked.\n"
1551msgstr ""
1552
1553msgid "Refunding receipt"
1554msgstr ""
1555
1556msgid "Jobs refunded"
1557msgstr ""
1558
1559msgid "Pages refunded"
1560msgstr ""
1561
1562msgid "Amount refunded"
1563msgstr ""
1564
1565msgid "Reason"
1566msgstr ""
1567
1568msgid "Here's the receipt for the refunding of your print jobs"
1569msgstr ""
1570
1571msgid "Generating receipts"
1572msgstr ""
1573
1574msgid ""
1575"Refunding for no reason is forbidden. Please use the --reason command line "
1576"option."
1577msgstr ""
1578
1579msgid ""
1580"The PDF file containing the receipts will be sent to stdout. --force is "
1581"assumed."
1582msgstr ""
1583
1584#, python-format
1585msgid "Date : %s"
1586msgstr ""
1587
1588#, python-format
1589msgid "JobId : %s"
1590msgstr ""
1591
1592#, python-format
1593msgid "User : %s"
1594msgstr ""
1595
1596#, python-format
1597msgid "Printer : %s"
1598msgstr ""
1599
1600#, python-format
1601msgid "Billing code : %s"
1602msgstr ""
1603
1604#, python-format
1605msgid "Pages : %i"
1606msgstr ""
1607
1608#, python-format
1609msgid "Credits : %.3f"
1610msgstr ""
1611
1612#, python-format
1613msgid "Title : %s"
1614msgstr ""
1615
1616msgid "Refund (Y/N)"
1617msgstr ""
1618
1619msgid "Y"
1620msgstr ""
1621
1622msgid "N"
1623msgstr ""
1624
1625#, python-format
1626msgid "Refunded %i users for %i jobs, %i pages and %.3f credits"
1627msgstr ""
1628
1629#, python-format
1630msgid ""
1631"pkturnkey v%(__version__)s (c) %(__years__)s %(__author__)s\n"
1632"\n"
1633"A turn key tool for PyKota. When launched, this command will initialize\n"
1634"PyKota's database with all existing print queues and some or all users.\n"
1635"For now, no prices or limits are set, so printing is fully accounted\n"
1636"for, but not limited. That's why you'll probably want to also use\n"
1637"edpykota once the database has been initialized.\n"
1638"\n"
1639"command line usage :\n"
1640"\n"
1641"  pkturnkey [options] [printqueues names]\n"
1642"\n"
1643"options :\n"
1644"\n"
1645"  -v | --version       Prints pkturnkey version number then exits.\n"
1646"  -h | --help          Prints this message then exits.\n"
1647"  \n"
1648"  -c | --doconf        Give hints about what to put into pykota.conf\n"
1649"  \n"
1650"  -d | --dousers       Manages users accounts as well.\n"
1651"  \n"
1652"  -D | --dogroups      Manages users groups as well.\n"
1653"                       Implies -d | --dousers.\n"
1654"  \n"
1655"  -e | --emptygroups   Includes empty groups.\n"
1656"  \n"
1657"  -f | --force         Modifies the database instead of printing what\n"
1658"                       it would do.\n"
1659"                       \n"
1660"  -u | --uidmin uid    Only adds users whose uid is greater than or equal "
1661"to\n"
1662"                       uid. You can pass an username there as well, and its\n"
1663"                       uid will be used automatically.\n"
1664"                       If not set, 0 will be used automatically.\n"
1665"                       Implies -d | --dousers.\n"
1666"                       \n"
1667"  -U | --uidmax uid    Only adds users whose uid is lesser than or equal to\n"
1668"                       uid. You can pass an username there as well, and its\n"
1669"                       uid will be used automatically.\n"
1670"                       If not set, a large value will be used "
1671"automatically.\n"
1672"                       Implies -d | --dousers.\n"
1673"\n"
1674"  -g | --gidmin gid    Only adds groups whose gid is greater than or equal "
1675"to\n"
1676"                       gid. You can pass a groupname there as well, and its\n"
1677"                       gid will be used automatically.\n"
1678"                       If not set, 0 will be used automatically.\n"
1679"                       Implies -D | --dogroups.\n"
1680"                       \n"
1681"  -G | --gidmax gid    Only adds groups whose gid is lesser than or equal "
1682"to\n"
1683"                       gid. You can pass a groupname there as well, and its\n"
1684"                       gid will be used automatically.\n"
1685"                       If not set, a large value will be used "
1686"automatically.\n"
1687"                       Implies -D | --dogroups.\n"
1688"\n"
1689"examples :                              \n"
1690"\n"
1691"  $ pkturnkey --dousers --uidmin jerome\n"
1692"\n"
1693"  Will simulate the initialization of PyKota's database will all existing\n"
1694"  printers and print accounts for all users whose uid is greater than\n"
1695"  or equal to jerome's one. Won't manage any users group.\n"
1696"  \n"
1697"  To REALLY initialize the database instead of simulating it, please\n"
1698"  use the -f | --force command line switch.\n"
1699"  \n"
1700"  You can limit the initialization to only a subset of the existing\n"
1701"  printers, by passing their names at the end of the command line.\n"
1702msgstr ""
1703
1704#, python-format
1705msgid ""
1706"Printer %s is not managed by PyKota yet. Please modify printers.conf and "
1707"restart CUPS."
1708msgstr ""
1709
1710msgid "Please be patient..."
1711msgstr ""
1712
1713msgid "Don't worry, the database WILL NOT BE MODIFIED."
1714msgstr ""
1715
1716msgid "Please WORRY NOW, the database WILL BE MODIFIED."
1717msgstr ""
1718
1719msgid "System users will have a print account as well !"
1720msgstr ""
1721
1722#, python-format
1723msgid "Unknown username %s : %s"
1724msgstr ""
1725
1726msgid "System groups will have a print account as well !"
1727msgstr ""
1728
1729#, python-format
1730msgid "Unknown groupname %s : %s"
1731msgstr ""
1732
1733msgid "Simulation terminated."
1734msgstr ""
1735
1736msgid "Database initialized !"
1737msgstr ""
1738
1739msgid "The --uidmin or --uidmax command line option implies --dousers as well."
1740msgstr ""
1741
1742msgid ""
1743"The --gidmin or --gidmax command line option implies --dogroups as well."
1744msgstr ""
1745
1746msgid "The --dogroups command line option implies --dousers as well."
1747msgstr ""
1748
1749#, python-format
1750msgid ""
1751"pkusers v%(__version__)s (c) %(__years__)s %(__author__)s\n"
1752"\n"
1753"An Users and Groups Manager for PyKota.\n"
1754"\n"
1755"command line usage :\n"
1756"\n"
1757"  pkusers [options] user1 user2 user3 ... userN\n"
1758"  \n"
1759"or :  \n"
1760"\n"
1761"  pkusers --groups [options] group1 group2 group3 ... groupN\n"
1762"\n"
1763"options :\n"
1764"\n"
1765"  -v | --version       Prints pkusers's version number then exits.\n"
1766"  -h | --help          Prints this message then exits.\n"
1767"  \n"
1768"  -a | --add           Adds users if they don't exist on the database.\n"
1769"                       If they exist, they are modified unless\n"
1770"                       -s|--skipexisting is also used.\n"
1771"                       \n"
1772"  -d | --delete        Deletes users from the quota storage.\n"
1773"\n"
1774"  -e | --email addr    Sets the email address for the users.\n"
1775"                       If the addr parameter begins with @, then\n"
1776"                       the username is prepended to addr to form\n"
1777"                       a valid email address.\n"
1778"\n"
1779"  -D | --description d Adds a textual description to users or groups.\n"
1780"                       \n"
1781"  -g | --groups        Edit users groups instead of users.\n"
1782"                          \n"
1783"  -o | --overcharge f  Sets the overcharging factor applied to the user \n"
1784"                       when computing the cost of a print job. Positive or \n"
1785"                       negative floating point values are allowed,\n"
1786"                       this allows you to do some really creative\n"
1787"                       things like giving money to an user whenever\n"
1788"                       he prints. The number of pages in a print job\n"
1789"                       is not modified by this coefficient, only the\n"
1790"                       cost of the job for a particular user.\n"
1791"                       Only users have such a coefficient.\n"
1792"  \n"
1793"  -i | --ingroups g1[,g2...]  Puts the users into each of the groups\n"
1794"                              listed, separated by commas. The groups\n"
1795"                              must already exist in the Quota Storage.\n"
1796"                       \n"
1797"  -L | --list          Lists users or groups.\n"
1798"  \n"
1799"  -l | --limitby l     Choose if the user/group is limited in "
1800"printing                     \n"
1801"                       by its account balance or by its page quota.\n"
1802"                       The default value is 'quota'. Allowed values\n"
1803"                       are 'quota' 'balance' 'noquota' 'noprint' \n"
1804"                       and 'nochange' :\n"
1805"                       \n"
1806"                         - quota : limit by number of pages per printer.\n"
1807"                         - balance : limit by number of credits in account.\n"
1808"                         - noquota : no limit, accounting still done.\n"
1809"                         - nochange : no limit, accounting not done. \n"
1810"                         - noprint : printing is denied. \n"
1811"                       NB : nochange and noprint are not supported for "
1812"groups.\n"
1813"                       \n"
1814"  -b | --balance b     Sets the user's account balance to "
1815"b.                     \n"
1816"                       Account balance may be increase or decreased\n"
1817"                       if b is prefixed with + or -.\n"
1818"                       WARNING : when decreasing account balance,\n"
1819"                       the total paid so far by the user is decreased\n"
1820"                       too.\n"
1821"                       Groups don't have a real balance, but the\n"
1822"                       sum of their users' account balance.\n"
1823"                       \n"
1824"  -C | --comment txt   Defines some informational text to be associated\n"
1825"                       with a change to an user's account balance.\n"
1826"                       Only meaningful if -b | --balance is also used.\n"
1827"                       \n"
1828"                       \n"
1829"  -r | --remove        In combination with the --ingroups option "
1830"above,                       \n"
1831"                       remove users from the specified users groups.\n"
1832"                       \n"
1833"  -s | --skipexisting  In combination with the --add option above, tells\n"
1834"                       pkusers to not modify existing users.\n"
1835"                       \n"
1836"  user1 through userN and group1 through groupN can use wildcards\n"
1837"  if the --add option is not set.\n"
1838"  \n"
1839"examples :                              \n"
1840"\n"
1841"  $ pkusers --add john paul george ringo/ringo@example.com\n"
1842"  \n"
1843"  This will add users john, paul, george and ringo to the quota\n"
1844"  database. User ringo's email address will also be set to \n"
1845"  'ringo@example.com'\n"
1846"  \n"
1847"  $ pkusers --ingroups coders,it jerome\n"
1848"  \n"
1849"  User jerome is put into the groups \"coders\" and \"it\" which must\n"
1850"  already exist in the quota database.\n"
1851"            \n"
1852"  $ pkusers --limitby balance jerome\n"
1853"  \n"
1854"  This will tell PyKota to limit jerome by his account's balance\n"
1855"  when printing.\n"
1856"  \n"
1857"  $ pkusers --balance +10.0 --comment \"He paid with his blood !\" jerome\n"
1858"  \n"
1859"  This will increase jerome's account balance by 10.0 (in your\n"
1860"  own currency). You can decrease the account balance with a\n"
1861"  dash prefix, and set it to a fixed amount with no prefix.\n"
1862"  A comment will be stored for this balance change.\n"
1863"  \n"
1864"  $ pkusers --delete jerome rachel\n"
1865"  \n"
1866"  This will completely delete jerome and rachel from the quota\n"
1867"  database. All their quotas and jobs will be deleted too.\n"
1868"  \n"
1869"  $ pkusers --overcharge 2.5 poorstudent\n"
1870"  \n"
1871"  This will overcharge the poorstudent user by a factor of 2.5.\n"
1872"  \n"
1873"  $ pkusers --overcharge -1 jerome\n"
1874"  \n"
1875"  User jerome will actually earn money whenever he prints.\n"
1876"  \n"
1877"  $ pkusers --overcharge 0 boss\n"
1878"  \n"
1879"  User boss can print at will, it won't cost him anything because the\n"
1880"  cost of each print job will be multiplied by zero before charging\n"
1881"  his account.\n"
1882"\n"
1883"  $ pkusers --email @example.com\n"
1884"\n"
1885"  This will set the email address for each user to username@example.com\n"
1886msgstr ""
1887
1888#, python-format
1889msgid "Invalid email address %s"
1890msgstr ""
1891
1892#, python-format
1893msgid "There's no %s matching %s"
1894msgstr ""
1895
1896#, python-format
1897msgid "Limited by : %s"
1898msgstr ""
1899
1900#, python-format
1901msgid "Account balance : %.2f"
1902msgstr ""
1903
1904#, python-format
1905msgid "Total paid so far : %.2f"
1906msgstr ""
1907
1908#, python-format
1909msgid "Overcharging factor : %.2f"
1910msgstr ""
1911
1912#, python-format
1913msgid "Group balance : %.2f"
1914msgstr ""
1915
1916#, python-format
1917msgid "Invalid limitby value %s"
1918msgstr ""
1919
1920#, python-format
1921msgid "Invalid overcharge value %s"
1922msgstr ""
1923
1924#, python-format
1925msgid "Invalid balance value %s"
1926msgstr ""
1927
1928#, python-format
1929msgid "There's no users group matching %s"
1930msgstr ""
1931
1932#, python-format
1933msgid "Unknown group %s"
1934msgstr ""
1935
1936#, python-format
1937msgid "Unknown user %s"
1938msgstr ""
1939
1940#, python-format
1941msgid "%s %s already exists, skipping."
1942msgstr ""
1943
1944#, python-format
1945msgid "%s %s already exists, will be modified."
1946msgstr ""
1947
1948#, python-format
1949msgid "Invalid name %s"
1950msgstr ""
1951
1952msgid "You have to pass user groups names on the command line"
1953msgstr ""
1954
1955#, python-format
1956msgid ""
1957"pykosd v%(__version__)s (c) %(__years__)s %(__author__)s\n"
1958"\n"
1959"An OSD quota monitor for PyKota.\n"
1960"\n"
1961"command line usage :\n"
1962"\n"
1963"  pykosd [options]\n"
1964"\n"
1965"options :\n"
1966"\n"
1967"  -v | --version       Prints pykosd's version number then exits.\n"
1968"  -h | --help          Prints this message then exits.\n"
1969"  \n"
1970"  -c | --color #rrggbb Sets the color to use for display as an hexadecimal\n"
1971"                       triplet, for example #FF0000 is 100%% red.\n"
1972"                       Defaults to 100%% green (#00FF00).\n"
1973"                       \n"
1974"  -d | --duration d    Sets the duration of the display in seconds. \n"
1975"                       Defaults to 3 seconds.\n"
1976"                       \n"
1977"  -f | --font f        Sets the font to use for "
1978"display.                      \n"
1979"                       Defaults to the Python OSD library's default.\n"
1980"  \n"
1981"  -l | --loop n        Sets the number of times the info will be displayed.\n"
1982"                       Defaults to 0, which means loop forever.\n"
1983"                       \n"
1984"  -s | --sleep s       Sets the sleeping duration between two displays \n"
1985"                       in seconds. Defaults to 180 seconds (3 minutes).\n"
1986"                       \n"
1987"  \n"
1988"examples :                              \n"
1989"\n"
1990"  $ pykosd -s 60 --loop 5\n"
1991"  \n"
1992"  Will launch pykosd. Display will be refreshed every 60 seconds,\n"
1993"  and will last for 3 seconds (the default) each time. After five\n"
1994"  iterations, the program will exit.\n"
1995msgstr ""
1996
1997#, python-format
1998msgid "Invalid duration option %s"
1999msgstr ""
2000
2001#, python-format
2002msgid "Invalid loop option %s"
2003msgstr ""
2004
2005#, python-format
2006msgid "Invalid sleep option %s"
2007msgstr ""
2008
2009#, python-format
2010msgid "Invalid color option %s"
2011msgstr ""
2012
2013#, python-format
2014msgid "User %s doesn't exist in PyKota's database"
2015msgstr ""
2016
2017#, python-format
2018msgid "Pages used on %s : %s"
2019msgstr ""
2020
2021#, python-format
2022msgid "PyKota Units left : %.2f"
2023msgstr ""
2024
2025msgid "Printing denied."
2026msgstr ""
2027
2028msgid "Printing not limited."
2029msgstr ""
2030
2031msgid "Printing not limited, no accounting."
2032msgstr ""
2033
2034#, python-format
2035msgid ""
2036"pykotme v%(__version__)s (c) %(__years__)s %(__author__)s\n"
2037"\n"
2038"Gives print quotes to users.\n"
2039"\n"
2040"command line usage :\n"
2041"\n"
2042"  pykotme  [options]  [files]\n"
2043"\n"
2044"options :\n"
2045"\n"
2046"  -v | --version       Prints pykotme's version number then exits.\n"
2047"  -h | --help          Prints this message then exits.\n"
2048"  \n"
2049"  -P | --printer p     Gives a quote for this printer only. Actually p can\n"
2050"                       use wildcards characters to select only\n"
2051"                       some printers. The default value is *, meaning\n"
2052"                       all printers.\n"
2053"                       You can specify several names or wildcards, \n"
2054"                       by separating them with commas.\n"
2055"  \n"
2056"examples :                              \n"
2057"\n"
2058"  $ pykotme --printer apple file1.ps file2.ps\n"
2059"  \n"
2060"  This will give a print quote to the current user. The quote will show\n"
2061"  the price and size of a job consisting in file1.ps and file2.ps \n"
2062"  which would be sent to the apple printer.\n"
2063"  \n"
2064"  $ pykotme --printer apple,hplaser <file1.ps\n"
2065"  \n"
2066"  This will give a print quote to the current user. The quote will show\n"
2067"  the price and size of a job consisting in file1.ps as read from\n"
2068"  standard input, which would be sent to the apple or hplaser\n"
2069"  printer.\n"
2070"\n"
2071"  $ pykotme \n"
2072"  \n"
2073"  This will give a quote for a job consisting of what is on standard \n"
2074"  input. The quote will list the job size, and the price the job\n"
2075"  would cost on each printer.\n"
2076msgstr ""
2077
2078#, python-format
2079msgid "Your account balance : %.2f"
2080msgstr ""
2081
2082#, python-format
2083msgid "Job size : %i pages"
2084msgstr ""
2085
2086#, python-format
2087msgid "Cost on printer %s : %.2f"
2088msgstr ""
2089
2090msgid "won't be charged, printer is in passthrough mode"
2091msgstr ""
2092
2093msgid "won't be charged, your account is immutable"
2094msgstr ""
2095
2096#, python-format
2097msgid "Unsupported accounter backend %s"
2098msgstr ""
2099
2100#, python-format
2101msgid ""
2102"Configuration file %s can't be read. Please check that the file exists and "
2103"that your permissions are sufficient."
2104msgstr ""
2105
2106#, python-format
2107msgid "Configuration file %s not found."
2108msgstr ""
2109
2110#, python-format
2111msgid "Option %s not found in section global of %s"
2112msgstr ""
2113
2114#, python-format
2115msgid "Option %s not found in section %s of %s"
2116msgstr ""
2117
2118#, python-format
2119msgid "Option ldaptls is set, but certificate %s is not readable."
2120msgstr ""
2121
2122#, python-format
2123msgid "Option logger only supports values in %s"
2124msgstr ""
2125
2126#, python-format
2127msgid "Invalid preaccounter %s for printer %s"
2128msgstr ""
2129
2130#, python-format
2131msgid "Option preaccounter in section %s only supports values in %s"
2132msgstr ""
2133
2134#, python-format
2135msgid "Invalid accounter %s for printer %s"
2136msgstr ""
2137
2138#, python-format
2139msgid "Option accounter in section %s only supports values in %s"
2140msgstr ""
2141
2142#, python-format
2143msgid "Invalid unknown_billingcode directive %s for printer %s"
2144msgstr ""
2145
2146#, python-format
2147msgid "Directive unknown_billingcode in section %s only supports values in %s"
2148msgstr ""
2149
2150#, python-format
2151msgid "Option enforcement in section %s only supports values in %s"
2152msgstr ""
2153
2154#, python-format
2155msgid ""
2156"Option onbackenderror in section %s only supports values 'charge', "
2157"'nocharge', and 'retry:num:delay'"
2158msgstr ""
2159
2160#, python-format
2161msgid "Option onaccountererror in section %s only supports values in %s"
2162msgstr ""
2163
2164#, python-format
2165msgid "Option policy in section %s only supports values in %s"
2166msgstr ""
2167
2168#, python-format
2169msgid "Invalid option mailto %s for printer %s"
2170msgstr ""
2171
2172#, python-format
2173msgid "Option mailto in section %s only supports values in %s"
2174msgstr ""
2175
2176#, python-format
2177msgid "Invalid maximal deny banners counter %s"
2178msgstr ""
2179
2180#, python-format
2181msgid "Invalid grace delay %s"
2182msgstr ""
2183
2184#, python-format
2185msgid "Invalid poor man's threshold %s"
2186msgstr ""
2187
2188#, python-format
2189msgid "Invalid balancezero value %s"
2190msgstr ""
2191
2192msgid ""
2193"Your Print Quota account balance is Low.\n"
2194"Soon you'll not be allowed to print anymore.\n"
2195"Please contact the Print Quota Administrator to solve the problem."
2196msgstr ""
2197
2198#, python-format
2199msgid ""
2200"You are not allowed to print anymore because\n"
2201"your Print Quota is exceeded on printer %s."
2202msgstr ""
2203
2204#, python-format
2205msgid ""
2206"You will soon be forbidden to print anymore because\n"
2207"your Print Quota is almost reached on printer %s."
2208msgstr ""
2209
2210#, python-format
2211msgid "Incorrect value %s for the duplicatesdelay directive in section %s"
2212msgstr ""
2213
2214#, python-format
2215msgid "Incorrect value %s for the noprintingmaxdelay directive in section %s"
2216msgstr ""
2217
2218#, python-format
2219msgid "Option accountbanner in section %s only supports values in %s"
2220msgstr ""
2221
2222#, python-format
2223msgid "Option trustjobsize for printer %s is incorrect"
2224msgstr ""
2225
2226msgid "History"
2227msgstr ""
2228
2229msgid "Users"
2230msgstr ""
2231
2232msgid "Groups"
2233msgstr ""
2234
2235msgid "Printers"
2236msgstr ""
2237
2238msgid "Users Print Quotas"
2239msgstr ""
2240
2241msgid "Users Groups Print Quotas"
2242msgstr ""
2243
2244msgid "History of Payments"
2245msgstr ""
2246
2247msgid "Printers Groups Membership"
2248msgstr ""
2249
2250msgid "Users Groups Membership"
2251msgstr ""
2252
2253msgid "Billing Codes"
2254msgstr ""
2255
2256msgid "All"
2257msgstr ""
2258
2259msgid "Comma Separated Values"
2260msgstr ""
2261
2262msgid "Semicolon Separated Values"
2263msgstr ""
2264
2265msgid "Tabulation Separated Values"
2266msgstr ""
2267
2268msgid "eXtensible Markup Language"
2269msgstr ""
2270
2271msgid "CUPS' page_log"
2272msgstr ""
2273
2274#, python-format
2275msgid "Invalid modifier [%s] for --data command line option, see help."
2276msgstr ""
2277
2278msgid ""
2279"Dumping all PyKota's datas forces format to XML, and disables --sum and "
2280"filters."
2281msgstr ""
2282
2283#, python-format
2284msgid "Invalid modifier [%s] for --format command line option, see help."
2285msgstr ""
2286
2287msgid "XML output is disabled because the jaxml module is not available."
2288msgstr ""
2289
2290#, python-format
2291msgid "Invalid data type [%s] for --sum command line option, see help."
2292msgstr ""
2293
2294msgid "PyKota data dumper failed : I/O error"
2295msgstr ""
2296
2297#, python-format
2298msgid "Unsupported logging subsystem %s"
2299msgstr ""
2300
2301#, python-format
2302msgid "Report for %s quota on printer %s"
2303msgstr ""
2304
2305#, python-format
2306msgid "Pages grace time: %i days"
2307msgstr ""
2308
2309#, python-format
2310msgid "Price per job: %.3f"
2311msgstr ""
2312
2313#, python-format
2314msgid "Price per page: %.3f"
2315msgstr ""
2316
2317msgid ""
2318"Group          overcharge   used    soft    hard    balance grace         "
2319"total       paid warn"
2320msgstr ""
2321
2322msgid ""
2323"User           overcharge   used    soft    hard    balance grace         "
2324"total       paid warn"
2325msgstr ""
2326
2327msgid "unknown"
2328msgstr ""
2329
2330#, python-format
2331msgid "Real : %s"
2332msgstr ""
2333
2334#, python-format
2335msgid "Total : %9i"
2336msgstr ""
2337
2338msgid "N/A"
2339msgstr ""
2340
2341#, python-format
2342msgid "Unsupported reporter backend %s"
2343msgstr ""
2344
2345#, python-format
2346msgid "Refunded %i pages and %.3f credits by %s (%s) on %s"
2347msgstr ""
2348
2349#, python-format
2350msgid "Unsupported quota storage backend %s"
2351msgstr ""
2352
2353msgid "Done"
2354msgstr ""
2355
2356msgid "Average speed"
2357msgstr ""
2358
2359msgid "entries per second"
2360msgstr ""
2361
2362#, python-format
2363msgid "Strange problem with uid(%s) : %s"
2364msgstr ""
2365
2366#, python-format
2367msgid "Running as user '%s'."
2368msgstr ""
2369
2370msgid "No user named 'pykota'. Not dropping priviledges."
2371msgstr ""
2372
2373#, python-format
2374msgid "Impossible to drop priviledges : %s"
2375msgstr ""
2376
2377msgid "Priviledges dropped. Now running as user 'pykota'."
2378msgstr ""
2379
2380#, python-format
2381msgid "Impossible to regain priviledges : %s"
2382msgstr ""
2383
2384msgid "Regained priviledges. Now running as root."
2385msgstr ""
2386
2387msgid "Please report bugs to :"
2388msgstr ""
2389
2390#, python-format
2391msgid ""
2392"\n"
2393"\n"
2394"Please contact your system administrator :\n"
2395"\n"
2396"\t%s - <%s>\n"
2397msgstr ""
2398
2399#, python-format
2400msgid "Unable to match user %s on printer %s, applying default policy (%s)"
2401msgstr ""
2402
2403#, python-format
2404msgid ""
2405"Unable to find user %s's account balance, applying default policy (%s) for "
2406"printer %s"
2407msgstr ""
2408
2409#, python-format
2410msgid "User %s will not be charged for printing."
2411msgstr ""
2412
2413#, python-format
2414msgid "Print Quota exceeded for group %s on printer %s"
2415msgstr ""
2416
2417msgid "Print Quota Exceeded"
2418msgstr ""
2419
2420#, python-format
2421msgid "Print Quota low for group %s on printer %s"
2422msgstr ""
2423
2424msgid "Print Quota Low"
2425msgstr ""
2426
2427#, python-format
2428msgid ""
2429"Search base %s doesn't seem to exist. Probable misconfiguration. Please "
2430"double check /etc/pykota/pykota.conf : %s"
2431msgstr ""
2432
2433#, python-format
2434msgid "Search for %s(%s) from %s(scope=%s) returned no answer."
2435msgstr ""
2436
2437#, python-format
2438msgid "Problem adding LDAP entry (%s, %s)"
2439msgstr ""
2440
2441#, python-format
2442msgid "Problem deleting LDAP entry (%s)"
2443msgstr ""
2444
2445#, python-format
2446msgid "Problem modifying LDAP entry (%s, %s)"
2447msgstr ""
2448
2449#, python-format
2450msgid ""
2451"No pykotaAccountBalance object found for user %s. Did you create LDAP "
2452"entries manually ?"
2453msgstr ""
2454
2455msgid "Hidden because of privacy concerns"
2456msgstr ""
2457
2458#, python-format
2459msgid ""
2460"Unable to find an existing objectClass %s entry with %s=%s to attach "
2461"pykotaAccount objectClass"
2462msgstr ""
2463
2464#, python-format
2465msgid "%s. A new entry will be created instead."
2466msgstr ""
2467
2468#, python-format
2469msgid "Unable to find an existing entry to attach pykotaGroup objectclass %s"
2470msgstr ""
2471
2472msgid ""
2473"Your version of python-mysqldb is too old. Please install a newer release."
2474msgstr ""
2475
2476#, python-format
2477msgid "A problem occured while reading printer %s's internal page counter."
2478msgstr ""
2479
2480#, python-format
2481msgid "Retrieving printer %s's page counter from database instead."
2482msgstr ""
2483
2484#, python-format
2485msgid ""
2486"Couldn't retrieve printer %s's internal page counter either before or after "
2487"printing."
2488msgstr ""
2489
2490#, python-format
2491msgid "Job's size forced to 1 page for printer %s."
2492msgstr ""
2493
2494#, python-format
2495msgid "No previous job in database for printer %s."
2496msgstr ""
2497
2498#, python-format
2499msgid "Inconsistent values for printer %s's internal page counter."
2500msgstr ""
2501
2502#, python-format
2503msgid "Unknown printer address in HARDWARE(%s) for printer %s"
2504msgstr ""
2505
2506#, python-format
2507msgid "Launching HARDWARE(%s)..."
2508msgstr ""
2509
2510#, python-format
2511msgid "SIGTERM was sent to hardware accounter %s (pid: %s)"
2512msgstr ""
2513
2514#, python-format
2515msgid "Line [%s] skipped in accounter's output. Trying again..."
2516msgstr ""
2517
2518#, python-format
2519msgid "Hardware accounter %s exit code is %s"
2520msgstr ""
2521
2522#, python-format
2523msgid "Unable to query printer %s via HARDWARE(%s)"
2524msgstr ""
2525
2526#, python-format
2527msgid ""
2528"Unable to precompute the job's size and ink coverage with the generic PDL "
2529"analyzer : %s"
2530msgstr ""
2531
2532#, python-format
2533msgid "Problem during connection to %s:%s : %s"
2534msgstr ""
2535
2536#, python-format
2537msgid "Problem while sending PJL query to %s:%s : %s"
2538msgstr ""
2539
2540#, python-format
2541msgid "Problem while receiving PJL answer from %s:%s : %s"
2542msgstr ""
2543
2544#, python-format
2545msgid "Waiting for printer %s to be printing..."
2546msgstr ""
2547
2548#, python-format
2549msgid "Waiting for printer %s's idle status to stabilize..."
2550msgstr ""
2551
2552#, python-format
2553msgid ""
2554"PJL querying stage interrupted. Using latest value seen for internal page "
2555"counter (%s) on printer %s."
2556msgstr ""
2557
2558#, python-format
2559msgid ""
2560"SNMP querying stage interrupted. Using latest value seen for internal page "
2561"counter (%s) on printer %s."
2562msgstr ""
2563
2564#, python-format
2565msgid "Network error while doing SNMP queries on printer %s : %s"
2566msgstr ""
2567
2568#, python-format
2569msgid "SNMP message decoding error for printer %s : %s"
2570msgstr ""
2571
2572#, python-format
2573msgid "Problem encountered while doing SNMP queries on printer %s : %s"
2574msgstr ""
2575
2576#, python-format
2577msgid "Unable to precompute the job's size with the generic PDL analyzer : %s"
2578msgstr ""
2579
2580#, python-format
2581msgid "Launching SOFTWARE(%s)..."
2582msgstr ""
2583
2584#, python-format
2585msgid "Unable to compute job size with accounter %s"
2586msgstr ""
2587
2588#, python-format
2589msgid "Problem while waiting for software accounter pid %s to exit : %s"
2590msgstr ""
2591
2592#, python-format
2593msgid "Software accounter %s exit code is %s"
2594msgstr ""
2595
2596msgid "Totals may be inaccurate if some users are members of several groups."
2597msgstr ""
2598
2599msgid "PyKota Data Dumper"
2600msgstr ""
2601
2602msgid "Dump"
2603msgstr ""
2604
2605msgid "Please click on the above button"
2606msgstr ""
2607
2608msgid "Data Type"
2609msgstr ""
2610
2611msgid "Output Format"
2612msgstr ""
2613
2614msgid "Filter"
2615msgstr ""
2616
2617msgid "Summarize"
2618msgstr ""
2619
2620msgid "only for payments or history"
2621msgstr ""
2622
2623msgid "PyKota Reports"
2624msgstr ""
2625
2626msgid "Report"
2627msgstr ""
2628
2629msgid "Printer"
2630msgstr ""
2631
2632msgid "User / Group names mask"
2633msgstr ""
2634
2635msgid "Groups report"
2636msgstr ""
2637
2638msgid "Empty"
2639msgstr ""
2640
2641msgid "Action"
2642msgstr ""
2643
2644msgid "User"
2645msgstr ""
2646
2647msgid "Hostname"
2648msgstr ""
2649
2650msgid "JobId"
2651msgstr ""
2652
2653msgid "Number of pages"
2654msgstr ""
2655
2656msgid "Cost"
2657msgstr ""
2658
2659msgid "Copies"
2660msgstr ""
2661
2662msgid "Number of bytes"
2663msgstr ""
2664
2665msgid "Printer's internal counter"
2666msgstr ""
2667
2668msgid "Options"
2669msgstr ""
2670
2671msgid "MD5Sum"
2672msgstr ""
2673
2674msgid "Billing code"
2675msgstr ""
2676
2677msgid "Precomputed number of pages"
2678msgstr ""
2679
2680msgid "Precomputed cost"
2681msgstr ""
2682
2683msgid "Pages details"
2684msgstr ""
2685
2686msgid "(not supported yet)"
2687msgstr ""
2688
2689msgid "Previous page"
2690msgstr ""
2691
2692msgid "PyKota Quotes"
2693msgstr ""
2694
2695msgid "Quote"
2696msgstr ""
2697
2698msgid ""
2699"The exact cost of a print job can only be determined for a particular user. "
2700"Please retry while logged-in."
2701msgstr ""
Note: See TracBrowser for help on using the browser.