def create_group(name, email, url_root, owner): """ _name_ Name of group _email_ Email address for group (?) _url_root_ acSite _owner_ MCID of user/doctor that controls this group """ u = User() u.mcid = mcid_generator.next_mcid() u.email = email u.set_password(str(u.mcid)) u.first_name = name u.last_name = 'Group' u.rolehack = 'rls' u.acctype = 'GROUP' u.updatetime = 0 u.ccrlogupdatetime = 0 u.save() g = Group() g.grouptypeid = 0 g.name = name g.accid_id = u.mcid g.save() p = Practice() p.providergroupid = g p.practicename = name p.accid_id = u.mcid p.save() p.practiceRlsUrl = urljoin(url_root, 'acct/ws/R.php?pid=%d' % p.practiceid) p.save() g.parentid = p.practiceid g.save() ga = Groupadmin() ga.groupinstanceid = g.groupinstanceid ga.adminaccid = owner ga.save() add_to_group(g, owner) return g, p