Changeset 2054 for pykota/trunk/bin/edpykota
- Timestamp:
- 02/13/05 23:02:29 (19 years ago)
- Files:
-
- 1 modified
Legend:
- Unmodified
- Added
- Removed
-
pykota/trunk/bin/edpykota
r2036 r2054 24 24 # 25 25 # $Log$ 26 # Revision 1.87 2005/02/13 22:02:28 jalet 27 # Big database structure changes. Upgrade script is now included as well as 28 # the new LDAP schema. 29 # Introduction of the -o | --overcharge command line option to edpykota. 30 # The output of repykota is more complete, but doesn't fit in 80 columns anymore. 31 # Introduction of the new 'maxdenybanners' directive. 32 # 26 33 # Revision 1.86 2005/01/21 14:40:01 jalet 27 34 # edpykota's --delete command line tool doesn't use "*" as its default argument … … 337 344 If both are to be set, separate them with a comma. 338 345 Floating point values are allowed. 346 347 -o | --overcharge f Sets the overcharging factor applied to the user 348 when computing the cost of a print job. Positive or 349 negative floating point values are allowed, 350 this allows you to do some really creative 351 things like giving money to an user whenever 352 he prints. The number of pages in a print job 353 is not modified by this coefficient, only the 354 cost of the job for a particular user. 355 Only users have a coefficient. 339 356 340 357 -i | --ingroups g1[,g2...] Puts the users into each of the groups … … 480 497 When printing either on hplj1 or hplj2, print quota will also be 481 498 checked and accounted for on virtual printers Laser and HP. 499 500 $ edpykota --overcharge 2.5 poorstudent 501 502 This will overcharge the poorstudent user by a factor of 2.5. 503 504 $ edpykota --overcharge -1 jerome 505 506 User jerome will actually earn money whenever he prints. 507 508 $ edpykota --overcharge 0 boss 509 510 User boss can print at will, it won't cost him anything because the 511 cost of each print job will be multiplied by zero before charging 512 his account. 482 513 483 514 This program is free software; you can redistribute it and/or modify … … 532 563 (softlimit, hardlimit) = (hardlimit, softlimit) 533 564 565 overcharge = options["overcharge"] 566 if overcharge : 567 try : 568 overcharge = float(overcharge.strip()) 569 except (ValueError, AttributeError) : 570 raise PyKotaToolError, _("Invalid overcharge value %s") % options["overcharge"] 571 534 572 balance = options["balance"] 535 573 if balance : … … 710 748 entrypquota.setUsage(used) 711 749 750 if overcharge is not None : 751 if changed[entry.Name].get("overcharge") is None : 752 entry.setOverChargeFactor(overcharge) 753 changed[entry.Name]["overcharge"] = overcharge 754 712 755 if balance : 713 756 if changed[entry.Name].get("balance") is None : … … 742 785 "printer" : "*", \ 743 786 } 744 short_options = "vhd c:l:b:i:naugrp:P:S:H:G:RU:"745 long_options = ["help", "version", " charge=", "delete", "limitby=", "balance=", "ingroups=", "noquota", "add", "users", "groups", "reset", "hardreset", "prototype=", "printer=", "softlimit=", "hardlimit=", "pgroups=", "used="]787 short_options = "vhdo:c:l:b:i:naugrp:P:S:H:G:RU:" 788 long_options = ["help", "version", "overcharge=", "charge=", "delete", "limitby=", "balance=", "ingroups=", "noquota", "add", "users", "groups", "reset", "hardreset", "prototype=", "printer=", "softlimit=", "hardlimit=", "pgroups=", "used="] 746 789 747 790 # Initializes the command line tool … … 771 814 options["hardreset"] = options["R"] or options["hardreset"] 772 815 options["used"] = options["U"] or options["used"] 816 options["overcharge"] = options["o"] or options["overcharge"] 773 817 774 818 if options["help"] : … … 784 828 elif options["noquota"] and (options["prototype"] or options["hardlimit"] or options["softlimit"]) : 785 829 raise PyKotaToolError, _("incompatible options, see help.") 786 elif options["groups"] and (options["balance"] or options["ingroups"] or options["used"] ) :830 elif options["groups"] and (options["balance"] or options["ingroups"] or options["used"] or options["overcharge"]) : 787 831 raise PyKotaToolError, _("incompatible options, see help.") 788 832 else :