witten
/
luminotes
Archived
1
0
Fork 0

New tool for updating a user's rate plan: tools/set_plan.py

This commit is contained in:
Dan Helfman 2008-05-29 13:48:33 -07:00
parent f8e454d4b6
commit 602045c112
2 changed files with 48 additions and 1 deletions

4
NEWS
View File

@ -1,5 +1,7 @@
1.4.0: ??
*
* Implemented some basic user administration features.
* Added new rate plans with support for user administration.
* Wrote a tool for manually updating a user's rate plan: tools/set_plan.py
1.3.40: May 27, 2008
* Added some minor product page tweaks like meta description tags.

45
tools/set_plan.py Executable file
View File

@ -0,0 +1,45 @@
#!/usr/bin/python2.4
import os
import os.path
import sys
from controller.Database import Database
from model.Notebook import Notebook
from model.User import User
class Plan_setter( object ):
"""
Set the rate plan for a particular user.
"""
def __init__( self, database, user_id, rate_plan ):
self.database = database
self.user_id = user_id
self.rate_plan = rate_plan
self.set_plan()
self.database.commit()
def set_plan( self ):
user = self.database.load( User, self.user_id )
if not user:
print "user id %s unknown" % self.user_id
sys.exit( 1 )
user.rate_plan = self.rate_plan
self.database.save( user )
def main( args ):
database = Database()
ranker = Plan_setter( database, *args )
if __name__ == "__main__":
args = sys.argv[ 1: ]
if len( args ) != 2:
print "usage: %s user_id rate_plan_index" % sys.argv[ 0 ]
sys.exit( 1 )
main( args )