diff --git a/addons/event_moodle/event_moodle.py b/addons/event_moodle/event_moodle.py
index 7ed5e19c5ff..410e8ce644a 100644
--- a/addons/event_moodle/event_moodle.py
+++ b/addons/event_moodle/event_moodle.py
@@ -35,39 +35,40 @@ class event_moodle(osv.osv):
'serveur_moodle': fields.char('Moodle server', 128, required=True,help="URL where you have your moodle server ")
}
- url='http://127.0.0.1/moodle/webservice/xmlrpc/server.php?wstoken=3ecfb383330044a884b1ee86e0872b47'
-
+ url=''
def configure_moodle(self,cr,uid,ids,context=None):
- self.write(cr,uid,ids,{'id':1})
+ self.write(cr,uid,[1],{'id':1})
#save information that you need to create the url
-
+ return {'type': 'ir.actions.act_window_close'}
+ #use to quit the wizard
def make_url(self,cr,uid,ids,context=None):
config_moodle = self.browse(cr, uid, ids, context=context)
if config_moodle[0].moodle_username and config_moodle[0].moodle_password:
url='http://'+config_moodle[0].serveur_moodle+'/moodle/webservice/xmlrpc/simpleserver.php?wsusername='+config_moodle[0].moodle_username+'&wspassword='+config_moodle[0].moodle_password
#connexion with password and username
#to do warning on special char
- print config_moodle[0].moodle_token
if config_moodle[0].moodle_token:
url='http://'+config_moodle[0].serveur_moodle+'/moodle/webservice/xmlrpc/server.php?wstoken='+config_moodle[0].moodle_token
#connexion with token
self.url = url
return url
-
#create a good url for xmlrpc connect
- def create_moodle_user(self,dic_user):
+ def create_moodle_user(self,cr,uid,ids,dic_user):
+ self.make_url(cr,uid,ids,context=None)
sock = xmlrpclib.ServerProxy(self.url)
#connect to moodle
return sock.core_user_create_users(dic_user)
#add user un moodle and return list of id and username
- def create_moodle_courses(self,courses):
+ def create_moodle_courses(self,cr,uid,ids,courses):
+ self.make_url(cr,uid,ids,context=None)
sock = xmlrpclib.ServerProxy(self.url)
#connect to moodle
return sock.core_course_create_courses(courses)
#add course un moodle
- def moodle_enrolled(self,enrolled):
+ def moodle_enrolled(self,cr,uid,ids,enrolled):
+ self.make_url(cr,uid,ids,context=None)
sock = xmlrpclib.ServerProxy(self.url)
#connect to moodle
sock.enrol_manual_enrol_users(enrolled)
@@ -83,8 +84,9 @@ class event_moodle(osv.osv):
return passwd
# create a random password
def check_email(self,email):
- if (email.count('@')!=1 and email.count('.')<1):
- raise osv.except_osv(_('Error!'),_("Your email '%s' is wrong") % (email))
+ if email:
+ if (email.count('@')!=1 and email.count('.')<1):
+ raise osv.except_osv(_('Error!'),_("Your email '%s' is wrong") % (email))
def make_username(self,username,response_courses):
if username:
@@ -111,7 +113,7 @@ class event_event(osv.osv):
dic_courses= [{'fullname' :name_event,'shortname' :'','summary':event[0].note,'categoryid':1}]
#create a dict course
moodle_pool = self.pool.get('event.moodle')
- response_courses = moodle_pool.create_moodle_courses(dic_courses)
+ response_courses = moodle_pool.create_moodle_courses(cr,uid,[1],dic_courses)
self.write(cr,uid,ids,{'moodle_id':response_courses[0]['id']})
#create a course in moodle and keep the id
for registration in event[0].registration_ids:
@@ -131,7 +133,7 @@ class event_event(osv.osv):
#add the dictionary in a list
self.pool.get('event.registration').write(cr,uid,[registration.id],{'moodle_user_password':passwd,'moodle_users':name_user})
#write in database the password and the username
- response_user = moodle_pool.create_moodle_user(list_users)
+ response_user = moodle_pool.create_moodle_user(cr,uid,[1],list_users)
#create users in moodle
enrolled =[]
for dic in response_user:
@@ -140,7 +142,7 @@ class event_event(osv.osv):
'userid' :dic['id'],
'courseid' :response_courses[0]['id']
}]
- moodle_pool.moodle_enrolled(enrolled)
+ moodle_pool.moodle_enrolled(cr,uid,[1],enrolled)
#link a course with users
return super(event_event, self).button_confirm(cr, uid, ids, context)
@@ -167,7 +169,7 @@ class event_registration(osv.osv):
'email': register[0].email
}]
#create a dictionary for an use
- response_user = moodle_pool.create_moodle_user(dic_users)
+ response_user = moodle_pool.create_moodle_user(cr,uid,[1],dic_users)
self.pool.get('event.registration').write(cr,uid,ids,{'moodle_user_password':passwd,'moodle_users':name_user})
#write in database the password and the username
enrolled=[{
@@ -175,6 +177,6 @@ class event_registration(osv.osv):
'userid' :response_user[0]['id'],#use the response of the create user
'courseid' :register[0].event_id.moodle_id
}]
- moodle_pool.moodle_enrolled(enrolled)
+ moodle_pool.moodle_enrolled(cr,uid,[1],enrolled)
return super(event_registration, self).check_confirm(cr, uid, ids, context)
diff --git a/addons/event_moodle/wizard_moodle.xml b/addons/event_moodle/wizard_moodle.xml
index fc43554a342..e6d400cdc66 100644
--- a/addons/event_moodle/wizard_moodle.xml
+++ b/addons/event_moodle/wizard_moodle.xml
@@ -22,7 +22,7 @@
+ string="Configure Moodle" icon="gtk-ok"/>