witten
/
luminotes
Archived
1
0
Fork 0

Set email util.

This commit is contained in:
Dan Helfman 2007-09-27 02:33:24 +00:00
parent c23b4b324c
commit 0052858fdc
3 changed files with 59 additions and 2 deletions

View File

@ -91,6 +91,10 @@ class User( Persistent ):
return d
def __set_email_address( self, email_address ):
self.update_revision()
self.__email_address = email_address
def __set_password( self, password ):
self.update_revision()
self.__salt = self.__create_salt()
@ -109,7 +113,7 @@ class User( Persistent ):
self.__rate_plan = rate_plan
username = property( lambda self: self.secondary_id )
email_address = property( lambda self: self.__email_address )
email_address = property( lambda self: self.__email_address, __set_email_address )
password = property( None, __set_password )
storage_bytes = property( lambda self: self.__storage_bytes, __set_storage_bytes )
rate_plan = property( lambda self: self.__rate_plan, __set_rate_plan )

53
tools/setemail.py Executable file
View File

@ -0,0 +1,53 @@
#!/usr/bin/python2.5
import os
import os.path
import sys
from config.Common import settings
from controller.Database import Database
from controller.Scheduler import Scheduler
class Setter( object ):
def __init__( self, scheduler, database, username, email_address ):
self.scheduler = scheduler
self.database = database
self.username = username
self.email_address = email_address
self.password = None
threads = (
self.set_email_address(),
)
for thread in threads:
self.scheduler.add( thread )
self.scheduler.wait_for( thread )
def set_email_address( self ):
self.database.load( u"User %s" % self.username, self.scheduler.thread )
user = ( yield Scheduler.SLEEP )
if user is None:
raise Exception( "user %s is unknown" % self.username )
user.email_address = self.email_address
self.database.save( user )
print "email set"
def main( program_name, args ):
print "IMPORTANT: Stop the Luminotes server before running this program."
if len( args ) < 2:
print "usage: %s username emailaddress" % program_name
sys.exit( 1 )
scheduler = Scheduler()
database = Database( scheduler, "data.db" )
initializer = Setter( scheduler, database, *args )
scheduler.wait_until_idle()
if __name__ == "__main__":
import sys
main( sys.argv[ 0 ], sys.argv[ 1: ] )

View File

@ -32,7 +32,7 @@ class Setter( object ):
user.rate_plan = int( self.rate_plan )
self.database.save( user )
print "password reset"
print "rate plan set"
def main( program_name, args ):