def create_req(request): """Form for registering a new user. """ if request.POST: mcid = normalize_mcid(request.POST['mcid']) form = CreateForm(request.POST) if form.is_valid(): object = User() object.mcid = mcid object.updatetime = 0 object.ccrlogupdatetime = 0 object.acctype = 'SPONSORED' object.first_name = form.clean_data['first_name'] object.last_name = form.clean_data['last_name'] object.enable_simtrak = False object.enable_dod = False object.save() return submit_redirect(request, object, save_redirect='user?mcid=%(mcid)s', edit_redirect='edit?mcid=%(mcid)s') else: mcid = mcid_generator.next_mcid_str() form = CreateForm() return render_to_response('users/create.html', default_context(request, form=form, mcid=mcid))
def create_req(request): """Form for registering a new user. """ if request.POST: mcid = normalize_mcid(request.POST["mcid"]) form = CreateForm(request.POST) if form.is_valid(): object = User() object.mcid = mcid object.updatetime = 0 object.ccrlogupdatetime = 0 object.acctype = "SPONSORED" object.first_name = form.clean_data["first_name"] object.last_name = form.clean_data["last_name"] object.enable_simtrak = False object.enable_dod = False object.save() return submit_redirect( request, object, save_redirect="user?mcid=%(mcid)s", edit_redirect="edit?mcid=%(mcid)s" ) else: mcid = mcid_generator.next_mcid_str() form = CreateForm() return render_to_response("users/create.html", default_context(request, form=form, mcid=mcid))
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
def create_data(url_root): gateway = urljoin(url_root, 'router/') transaction.enter_transaction_management() doctor = User() doctor.mcid = mcid_generator.next_mcid() doctor.first_name = 'Demo' doctor.last_name = 'Doctor' doctor.email = '*****@*****.**' doctor.updatetime = 0 doctor.ccrlogupdatetime = 0 doctor.save() physician = User() physician.mcid = mcid_generator.next_mcid() physician.first_name = 'Demo' physician.last_name = 'Physician' physician.email = '*****@*****.**' physician.updatetime = 0 physician.ccrlogupdatetime = 0 physician.save() g, p = create_group('Demo Group Worklist', '*****@*****.**', url_root, doctor.mcid) add_to_group(g, physician.mcid) patients = [] for first_name, last_name, email, currentccr, reason, ccrs in PATIENTS: user = User() user.first_name = first_name user.last_name = last_name user.email = email user.mcid = mcid_generator.next_mcid() user.acctype = 'USER' user.rolehack = 'ccrlhm' user.updatetime = 0 user.ccrlogupdatetime = 0 user.save() patients.append(user) # Set worklist sql_execute(ACCOUNT_RLS_SQL, user.mcid, p.practiceRlsUrl) if not currentccr: continue sql_execute(DOCUMENT_TYPE_SQL, user.mcid, currentccr) ev = Practiceccrevent() ev.practiceid = p ev.PatientGivenName = user.first_name ev.PatientFamilyName = user.last_name ev.PatientIdentifier = user.mcid ev.PatientIdentifierSource = 'Patient Medcommons ID' ev.Guid = currentccr ev.Purpose = reason ev.SenderProviderId = 'idp' ev.ReceiverProviderId = 'idp' ev.DOB = '16 Jan 1968 05:00:00 GMT' ev.CXPServerURL = '' ev.CXPServerVendor = 'Medcommons' ev.ViewerURL = urljoin(gateway, 'access?g=%s' % currentccr) ev.Comment = '\n 3D Imaging Consult\n ' ev.CreationDateTime = 1162365858 ev.ConfirmationCode = tn_generator.next_tracking_number() ev.RegistrySecret = '' ev.PatientSex = 'Female' ev.PatientAge = '' ev.Status = 'New' ev.ViewStatus = 'Visible' ev.save() sql_execute(CCRLOG_SQL, user.mcid, currentccr, 'CCR', ev.ConfirmationCode) for ccr in ccrs: sql_execute(CCRLOG_SQL, user.mcid, ccr, 'CCR', tn_generator.next_tracking_number()) sql_execute(TODIR_SQL, g.groupinstanceid, doctor.email, doctor.email, doctor.mcid) sql_execute(TODIR_SQL, g.groupinstanceid, physician.email, physician.email, physician.mcid) demoCCR = 'fdfbbb9cf53f8577b420ed72567cd2104589fb0d' sql_execute(CCRLOG_SQL, doctor.mcid, demoCCR, 'DICOM Import', tn_generator.next_tracking_number()) sql_execute(CCRLOG_SQL, patients[0].mcid, demoCCR, 'DICOM Import', tn_generator.next_tracking_number()) sql_execute(CCRLOG_SQL, patients[0].mcid, PATIENTS[0][3], 'DICOM Import', tn_generator.next_tracking_number()) # Secondary group if 0: g2, p2 = create_group('Healthy Doctors', '*****@*****.**', url_root, doctor.mcid) p = MCProperty() p.property = 'acDemoDoctor' p.value = doctor.mcid p.save() transaction.leave_transaction_management()