--- a/iro/acounting.py Sat Oct 08 12:32:58 2011 +0200
+++ b/iro/acounting.py Fri Nov 18 22:32:57 2011 +0100
@@ -9,8 +9,13 @@
Database.__init__(self,connection)
self.id=id
- def setId(self,id):
+ def setId(self,id, user):
self.id=id
+ if user:
+ self.connect()
+ self.cursor.execute ("INSERT INTO %s (id,user) VALUES ('%s','%s')" % (self.connection['overview'], self.id,user.name))
+ self.disconnect()
+
def getStatus(self):
self.connect()
--- a/iro/iro.py Sat Oct 08 12:32:58 2011 +0200
+++ b/iro/iro.py Fri Nov 18 22:32:57 2011 +0100
@@ -34,7 +34,7 @@
UserDB.__init__(self, None,userlist,jobqueue)
def createUser(self, user):
- self.userlist[self.createHash(user)]=user["class"](self.jobqueue)
+ self.userlist[self.createHash(user)]=user["class"](user["name"],self.jobqueue)
--- a/iro/joblist.py Sat Oct 08 12:32:58 2011 +0200
+++ b/iro/joblist.py Fri Nov 18 22:32:57 2011 +0100
@@ -31,35 +31,35 @@
def __getitem__(self,key):
return self.jobs[key]
- def __registerJob__(self, job):
+ def __registerJob__(self, job, user):
id = self._createID()
if self.dbconn:
job.setAcounting(self.manager.Acounting(id,self.dbconn))
- job.setId(id)
+ job.setId(id, user)
self.jobs[id]=job
self.queue.put(job)
return id
- def newSMS(self, message, recipients, provider="default"):
+ def newSMS(self, message, recipients, provider="default", user=None):
'''
creates a new SMS
'''
job=self.manager.SMSJob(self.providerlist, provider,message, content.SMS(message),recipients)
- return self.__registerJob__(job)
+ return self.__registerJob__(job,user)
- def newFAX(self,subject, fax,recipients,provider="default"):
+ def newFAX(self,subject, fax,recipients,provider="default",user=None):
'''
creates a new Fax
'''
job=self.manager.FaxJob(self.providerlist, provider,subject, content.FAX(subject,'' ,fax),recipients)
- return self.__registerJob__(job)
+ return self.__registerJob__(job,user)
- def newMail(self, subject, body, recipients, frm, provider="default"):
+ def newMail(self, subject, body, recipients, frm, provider="default",user=None):
'''
creates a new Mail
'''
job=self.manager.MailJob(self.providerlist, provider,subject, content.Mail(subject, body, frm),recipients)
- return self.__registerJob__(job)
+ return self.__registerJob__(job,user)
def _createID(self):
'''
--- a/iro/user.py Sat Oct 08 12:32:58 2011 +0200
+++ b/iro/user.py Fri Nov 18 22:32:57 2011 +0100
@@ -31,9 +31,10 @@
'''
class for a xmlrpc user
'''
- def __init__(self,jobqueue):
+ def __init__(self, name, jobqueue):
self.jobqueue=jobqueue
self.jobs={}
+ self.name=name
self.features=["mail", "sms", "fax", ]
def status(self,id=None,detailed=False):
@@ -82,7 +83,7 @@
'''
if not "sms" in self.features:
raise NotSupportedFeature("sms")
- id = self.jobqueue.newSMS(message,recipients,provider)
+ id = self.jobqueue.newSMS(message,recipients,provider,user=self)
self.jobs[id]=self.jobqueue[id]
return id
@@ -99,7 +100,7 @@
fax=[fax]
f=[i.data for i in fax]
- id = self.jobqueue.newFAX(subject, f,recipients,provider)
+ id = self.jobqueue.newFAX(subject, f,recipients,provider,user=self)
self.jobs[id]=self.jobqueue[id]
return id
@@ -107,7 +108,7 @@
if not "mail" in self.features:
raise NotSupportedFeature("mail")
logger.debug("startMail(%s,%s,%s,%s,%s)"%(subject, body, recipients, frm, provider))
- id = self.jobqueue.newMail(subject, body, recipients, frm, provider)
+ id = self.jobqueue.newMail(subject, body, recipients, frm, provider,user=self)
self.jobs[id]=self.jobqueue[id]
return id
@@ -124,6 +125,6 @@
return self.jobqueue.providerlist.getDefault(name)["name"]
class Admin(User):
- def __init__(self,jobqueue):
- User.__init__(self, jobqueue)
+ def __init__(self, name, jobqueue):
+ User.__init__(self, name, jobqueue)
self.jobs=jobqueue.jobs
--- a/iro/xmlrpc/SecureUserdbXMLRPCServer.py Sat Oct 08 12:32:58 2011 +0200
+++ b/iro/xmlrpc/SecureUserdbXMLRPCServer.py Fri Nov 18 22:32:57 2011 +0100
@@ -27,7 +27,7 @@
return m.hexdigest()
def createUser(self,user):
- self.userlist[self.createHash(user)]=self.userClass(self.jobqueue)
+ self.userlist[self.createHash(user)]=self.userClass(user["name"],self.jobqueue)
def __getitem__(self,key):
return self.userlist[key]