def brokerEditProfileLogic(request): if (request.method != 'POST'): return err_GE002() old_url = None broker = request.role_user if broker.user.photo: old_url = broker.user.photo.name broker_form = BrokerForm(request.POST, instance=broker) if not broker_form.is_valid(): return err_GE031(broker_form) user_form = BrokerUserForm(request.POST, request.FILES, instance=broker.user) if not user_form.is_valid(): return err_GE031(user_form) broker_form.save() user_form.save() new_url = None if broker.user.photo: new_url = broker.user.photo.name ImageHelper.generate_image(old_url, new_url) return HttpJSONSuccessResponse()
def brokerEditProfileLogic(request): if (request.method != 'POST'): return err_GE002() old_url = None broker = request.role_user if broker.user.photo: old_url = broker.user.photo.name broker_form = BrokerForm(request.POST, instance=broker) if not broker_form.is_valid(): return err_GE031(broker_form) user_form = BrokerUserForm(request.POST, request.FILES, instance=broker.user) if not user_form.is_valid(): return err_GE031(user_form) broker_form.save() user_form.save() new_url = None if broker.user.photo: new_url = broker.user.photo.name ImageHelper.generate_image(old_url, new_url) return HttpJSONSuccessResponse()
def createBroker(request): if (request.method != 'POST'): return err_GE002() broker_form = CreateBrokerForm(request.POST) mhluser_form = CreateBrokerMHLUserForm(request.POST, request.FILES) if (not mhluser_form.is_valid()): return err_GE031(mhluser_form) if (not broker_form.is_valid()): return err_GE031(broker_form) createNewBroker(mhluser_form, broker_form, request.role_user) return HttpJSONSuccessResponse()
def createOfficeStaff(request): if (request.method != 'POST'): return err_GE002() staff_form = CreateOfficeStaffForm(request.POST) mhluser_form = CreateMHLUserForm(request.POST, request.FILES) if (not mhluser_form.is_valid()): return err_GE031(mhluser_form) if (not staff_form.is_valid()): return err_GE031(staff_form) createNewOfficeStaff(mhluser_form, staff_form, request.role_user) return HttpJSONSuccessResponse()
def providerEditProfileLogic(request): if (request.method != 'POST'): return err_GE002() provider = request.role_user phys = Physician.objects.filter(user=provider) if phys and len(phys): phys = phys[0] else: phys = None old_url = None if provider.photo: old_url = provider.photo.name provider_form = ProviderForm(data=request.POST, files=request.FILES, instance=provider) if (not provider_form.is_valid()): return err_GE031(provider_form) physician_form = None if (phys): physician_form = PhysicianForm(request.POST, instance=phys) if (not physician_form.is_valid()): return err_GE031(physician_form) provider = provider_form.save(commit=False) provider.lat = provider_form.cleaned_data['lat'] provider.longit = provider_form.cleaned_data['longit'] provider.licensure_states = provider_form.cleaned_data['licensure_states'] #add by xlin in 20120611 for issue897 that add city, address, zip into database provider.address1 = provider_form.cleaned_data['address1'] provider.address2 = provider_form.cleaned_data['address2'] provider.city = provider_form.cleaned_data['city'] provider.state = provider_form.cleaned_data['state'] provider.zip = provider_form.cleaned_data['zip'] provider.save() if (physician_form): physician_form.save() new_url = None if provider.photo: new_url = provider.photo.name #thumbnail creating code moved from here to save method of provider mode #use common method to generate ImageHelper.generate_image(old_url, new_url) return HttpJSONSuccessResponse()
def composeReferLogic(request, api_secret=None, ss=None): if (request.method != 'POST'): return err_GE002() form = MessageReferForm(request.POST, request.FILES) if (not form.is_valid()): return err_GE031(form) sender = request.user sender_role_user = request.role_user subject = u'Refer' body = form.cleaned_data['reason_of_refer'] recipients = form.cleaned_data['user_recipients'] attachments = [] if ('attachments' in request.FILES): attachments = request.FILES.getlist('attachments') createNewMessage(request, sender, sender_role_user, recipients, body, ccs=None, subject=subject, uploads=attachments, file_data_list=None, refer_data=form.cleaned_data, api_secret=api_secret, ss=ss) return HttpJSONSuccessResponse()
def changePasswordLogic(request): if (request.method != 'POST'): return err_GE002() form = ChangePasswordForm(request.mhluser, request.POST) if (not form.is_valid()): return err_GE031(form) change_pass_common(form, request) return HttpJSONSuccessResponse()
def providerEditProfileLogic(request): if (request.method != 'POST'): return err_GE002() provider = request.role_user phys = Physician.objects.filter(user=provider) if phys and len(phys): phys = phys[0] else: phys = None old_url = None if provider.photo: old_url = provider.photo.name provider_form = ProviderForm(data=request.POST, files=request.FILES, instance=provider) if (not provider_form.is_valid()): return err_GE031(provider_form) physician_form = None if (phys): physician_form = PhysicianForm(request.POST, instance=phys) if (not physician_form.is_valid()): return err_GE031(physician_form) provider = provider_form.save(commit=False) provider.lat = provider_form.cleaned_data['lat'] provider.longit = provider_form.cleaned_data['longit'] provider.licensure_states = provider_form.cleaned_data['licensure_states'] #add by xlin in 20120611 for issue897 that add city, address, zip into database provider.address1 = provider_form.cleaned_data['address1'] provider.address2 = provider_form.cleaned_data['address2'] provider.city = provider_form.cleaned_data['city'] provider.state = provider_form.cleaned_data['state'] provider.zip = provider_form.cleaned_data['zip'] provider.save() if (physician_form): physician_form.save() new_url = None if provider.photo: new_url = provider.photo.name #thumbnail creating code moved from here to save method of provider mode #use common method to generate ImageHelper.generate_image(old_url, new_url) return HttpJSONSuccessResponse()
def changePasswordLogic(request): if (request.method != 'POST'): return err_GE002() form = ChangePasswordForm(request.mhluser, request.POST) if (not form.is_valid()): return err_GE031(form) change_pass_common(form, request) return HttpJSONSuccessResponse()
def listTasksLogic(request): if (request.method != 'POST'): return err_GE002() form = TaskListForm(request.POST) if (not form.is_valid()): return err_GE031(form) data = getFollowUpList(form.cleaned_data, request.mhluser.id) return HttpJSONSuccessResponse(data=data)
def practiceSearch(request): if (request.method != 'POST'): return err_GE002() form = PracticeSearchForm(request.POST) if (not form.is_valid()): return err_GE031(form) data = getPracticeList(form.cleaned_data, org_type_id=RESERVED_ORGANIZATION_TYPE_ID_PRACTICE) return HttpJSONSuccessResponse(data=data)
def createProvider(request): if (request.method != 'POST'): return err_GE002() form = CreateProviderForm(request.POST) if (not form.is_valid()): return err_GE031(form) createNewProvider(form, request.role_user) return HttpJSONSuccessResponse()
def smartPhoneCallLogic(request, *args, **kwargs): if (request.method != 'POST'): return err_GE002() if (not request.mhluser.mobile_phone): return err_TE005() called_number = '' called_mhluser = None form = USNumberForm(request.POST) if(not form.is_valid()): return err_GE031(form) if('user_id' in kwargs): user_id = kwargs['user_id'] called_mhluser = MHLUser.objects.filter(pk=user_id) if (not called_mhluser): return err_GE010() called_mhluser = called_mhluser[0] if (not called_mhluser.mobile_phone): return err_TE005() called_number = called_mhluser.mobile_phone if('practice_id' in kwargs): practice_id = kwargs['practice_id'] called_practice = PracticeLocation.objects.filter(id=practice_id) if not called_practice: return err_GE010() called_number = called_practice[0].practice_phone if called_practice[0].backline_phone: called_number = called_practice[0].backline_phone if (not called_number): return err_TE006() elif('number' in request.POST): called_number = form.cleaned_data['number'] elif('number' in kwargs): called_number = kwargs['number'] if not called_mhluser and not called_number: return err_TE003() log = Click2Call_Log() log.caller = request.mhluser log.called_user = called_mhluser log.called_number = called_number log.caller_number = form.cleaned_data['caller_number'] role_user = request.role_user if role_user and hasattr(role_user, "current_site") and role_user.current_site: log.current_site = role_user.current_site log.source = 'APP' log.save() data = { 'number': ''.join(['+1',str(settings.TWILIO_C2C_NUMBER)]) } return HttpJSONSuccessResponse(data=data)
def searchStaff(request): if (request.method != 'POST'): return err_GE002() form = StaffSearchForm(request.POST) if (not form.is_valid()): return err_GE031(form) data = getStaffList(form.cleaned_data) return HttpJSONSuccessResponse(data=data)
def siteSearch(request): if (request.method != 'POST'): return err_GE002() form = SiteSearchForm(request.POST) if (not form.is_valid()): return err_GE031(form) data = getSiteList(form.cleaned_data) return HttpJSONSuccessResponse(data=data)
def updateTaskLogic(request, task_id): if (request.method != 'POST'): return err_GE002() form = UpdateTaskForm(request.POST) if (not form.is_valid()): return err_GE031(form) updateFollowUp(form.cleaned_data, task_id, request.mhluser.id) return HttpJSONSuccessResponse()
def newTaskLogic(request): if (request.method != 'POST'): return err_GE002() form = NewTaskForm(request.POST) if (not form.is_valid()): return err_GE031(form) task = createFollowUp(form.cleaned_data, request.mhluser.id) data = {'id': task.id} return HttpJSONSuccessResponse(data=data)
def practiceManageLogic(request): user_type = int(request.user_type) role_user = request.role_user if (request.method != 'POST'): # Get the user's current practices, and list them. practices = role_user.practices.filter(\ organization_type__id=RESERVED_ORGANIZATION_TYPE_ID_PRACTICE) if USER_TYPE_OFFICE_MANAGER == user_type: practices = get_managed_practice(role_user) practices = [[p.id, p.practice_name] for p in practices] current_practice = role_user.current_practice if ('pk' in dir(current_practice)): current_practice = current_practice.pk data = { 'practices': practices, 'current_practice': current_practice, } return HttpJSONSuccessResponse(data=data) # office staff can't change current practice if USER_TYPE_OFFICE_STAFF == user_type: return err403(request) form = SetPracticeForm(request.POST, user_type=user_type) if (not form.is_valid()): return err_GE031(form) new_practice = form.cleaned_data['current_practice'] if (new_practice == None): # Clearing the current practice. role_user.current_practice = None role_user.save() data = { 'providers': [], 'staff': [], } return HttpJSONSuccessResponse(data=data) if (new_practice in role_user.practices.values_list('id', flat=True)): # great, do the change. role_user.current_practice_id = new_practice role_user.save() data = { 'providers': getPracticeProviders(new_practice)['users'], 'staff': getPracticeStaff(new_practice)['users'], } return HttpJSONSuccessResponse(data=data) err_obj = { 'errno': 'AM001', 'descr': _('Invalid practice selection.'), } return HttpResponseBadRequest(content=json.dumps(err_obj), mimetype='application/json')
def practiceManageLogic(request): user_type = int(request.user_type) role_user = request.role_user if (request.method != 'POST'): # Get the user's current practices, and list them. practices = role_user.practices.filter(\ organization_type__id=RESERVED_ORGANIZATION_TYPE_ID_PRACTICE) if USER_TYPE_OFFICE_MANAGER == user_type: practices = get_managed_practice(role_user) practices = [[p.id, p.practice_name] for p in practices] current_practice = role_user.current_practice if ('pk' in dir(current_practice)): current_practice = current_practice.pk data = { 'practices':practices, 'current_practice':current_practice, } return HttpJSONSuccessResponse(data=data) # office staff can't change current practice if USER_TYPE_OFFICE_STAFF == user_type: return err403(request) form = SetPracticeForm(request.POST, user_type=user_type) if (not form.is_valid()): return err_GE031(form) new_practice = form.cleaned_data['current_practice'] if (new_practice == None): # Clearing the current practice. role_user.current_practice = None role_user.save() data = { 'providers': [], 'staff': [], } return HttpJSONSuccessResponse(data=data) if (new_practice in role_user.practices.values_list('id', flat=True)): # great, do the change. role_user.current_practice_id = new_practice role_user.save() data = { 'providers': getPracticeProviders(new_practice)['users'], 'staff': getPracticeStaff(new_practice)['users'], } return HttpJSONSuccessResponse(data=data) err_obj = { 'errno': 'AM001', 'descr': _('Invalid practice selection.'), } return HttpResponseBadRequest(content=json.dumps(err_obj), mimetype='application/json')
def updateMobilePhoneLogic(request): if (request.method != 'POST'): return err_GE002() form = UpdateMobileForm(request.POST) if (not form.is_valid()): return err_GE031(form) mhluser_id = request.mhluser.id mobile_phone = form.cleaned_data["mobile_phone"] if has_mhluser_with_mobile_phone(mobile_phone, mhluser_id): return err_AM020() MHLUser.objects.filter(id=mhluser_id).update(mobile_phone=mobile_phone) return HttpJSONSuccessResponse()
def updateMobilePhoneLogic(request): if (request.method != 'POST'): return err_GE002() form = UpdateMobileForm(request.POST) if (not form.is_valid()): return err_GE031(form) mhluser_id = request.mhluser.id mobile_phone = form.cleaned_data["mobile_phone"] if has_mhluser_with_mobile_phone(mobile_phone, mhluser_id): return err_AM020() MHLUser.objects.filter(id=mhluser_id).update(mobile_phone=mobile_phone) return HttpJSONSuccessResponse()
def markMessageLogic(request, read_flag=True): if (request.method != 'POST'): return err_GE002() form = MsgBatchIDForm(request.POST) if (not form.is_valid()): return err_GE031(form) read_timestamp = 0 if read_flag: read_timestamp = int(time.time()) message_ids = form.cleaned_data['message_ids'] MessageBodyUserStatus.objects.filter(user=request.user, read_flag=not read_flag, msg_body__message__uuid__in=message_ids).\ update(read_flag=read_flag, read_timestamp=read_timestamp) return HttpJSONSuccessResponse()
def markMessageLogic(request, read_flag=True): if (request.method != 'POST'): return err_GE002() form = MsgBatchIDForm(request.POST) if (not form.is_valid()): return err_GE031(form) read_timestamp = 0 if read_flag: read_timestamp = int(time.time()) message_ids = form.cleaned_data['message_ids'] MessageBodyUserStatus.objects.filter(user=request.user, read_flag=not read_flag, msg_body__message__uuid__in=message_ids).\ update(read_flag=read_flag, read_timestamp=read_timestamp) return HttpJSONSuccessResponse()
def getReferPDFLogic(request, refer_id, ss=None): """ get_refer_pdf :param request: Request info :type request: django.core.handlers.wsgi.WSGIRequest :param refer_id: referall id :type refer_id: uuid :returns: django.http.HttpResponse -- the result in an HttpResonse object """ if (request.method != 'POST'): return err_GE002() form = MsgGetForm(request.POST) if (not form.is_valid()): return err_GE031(form) refer = get_object_or_404(MessageRefer, uuid=refer_id) message = refer.message if ((message.sender and request.user.pk != message.sender.pk) and not ((request.user.pk, ) in message.recipients.values_list('id') or (request.user.pk, ) in message.ccs.values_list('id'))): return err403( request, err_msg=_("You don't seem to be a valid recipient for this file.")) # special for mobile app api # Get/set up data for KMS. request.session['key'] = request.device_assn.secret try: clearkey = decrypt_cipherkey(request, refer, ss=ss) except KeyInvalidException: return err_GE021() try: response = refer.get_file(request, key=clearkey) return response except Exception as e: err_email_body = '\n'.join([ ('PDF file not exist!'), ''.join(['Server: ', settings.SERVER_ADDRESS]), ''.join(['Session: ', str(request.session.session_key)]), ''.join(['Message: ', (u'PDF file not exist in media/refer/pdf')]), ''.join(['Exception: ', str(e)]), ''.join(['Exception data: ', str(e.args)]), ]) mail_admins(_('PDF folder not exist'), err_email_body) raise Exception( _('A seemingly invalid URL has been stored for Refer Pdf.'))
def officeStaffEditProfileLogic(request): if (request.method != 'POST'): return err_GE002() staff = request.role_user old_url = None if staff.user.photo: old_url = staff.user.photo.name staff_form = OfficeStaffForm(request.POST, instance=staff) if not staff_form.is_valid(): return err_GE031(staff_form) user_form = UserForm(request.POST, request.FILES, instance=staff.user) if not user_form.is_valid(): return err_GE031(user_form) user_form.save(commit=False) staff_form.save() new_url = None if staff.user.photo: new_url = staff.user.photo.name ImageHelper.generate_image(old_url, new_url) return HttpJSONSuccessResponse()
def officeStaffEditProfileLogic(request): if (request.method != 'POST'): return err_GE002() staff = request.role_user old_url = None if staff.user.photo: old_url = staff.user.photo.name staff_form = OfficeStaffForm(request.POST, instance=staff) if not staff_form.is_valid(): return err_GE031(staff_form) user_form = UserForm(request.POST, request.FILES, instance=staff.user) if not user_form.is_valid(): return err_GE031(user_form) user_form.save(commit=False) staff_form.save() new_url = None if staff.user.photo: new_url = staff.user.photo.name ImageHelper.generate_image(old_url, new_url) return HttpJSONSuccessResponse()
def siteManageLogic(request): user = request.role_user if (request.method != 'POST'): # Get the user's current practices, and list them. sites = user.sites.values('id', 'name') sites = [[s['id'], s['name']] for s in sites] current_site = user.current_site if ('pk' in dir(current_site)): current_site = current_site.pk data = { 'sites': sites, 'current_site': current_site, } return HttpJSONSuccessResponse(data=data) form = SetSiteForm(request.POST) if (not form.is_valid()): return err_GE031(form) new_site = form.cleaned_data['current_site'] if (new_site == None): # Clearing the current site. user.current_site = None user.save() data = { 'providers': [], 'staff': [], 'med_students': [], } return HttpJSONSuccessResponse(data=data) if (new_site in user.sites.values_list('id', flat=True)): # great, do the change. user.current_site_id = new_site user.save() data = { 'med_students': getSiteStudents(new_site)['users'], 'providers': getSiteProviders(new_site)['users'], 'staff': getSiteStaff(new_site)['users'], } return HttpJSONSuccessResponse(data=data) err_obj = { 'errno': 'AM001', 'descr': _('Invalid site selection.'), } return HttpResponseBadRequest(content=json.dumps(err_obj), mimetype='application/json')
def siteManageLogic(request): user = request.role_user if (request.method != 'POST'): # Get the user's current practices, and list them. sites = user.sites.values('id', 'name') sites = [[s['id'], s['name']] for s in sites] current_site = user.current_site if ('pk' in dir(current_site)): current_site = current_site.pk data = { 'sites':sites, 'current_site':current_site, } return HttpJSONSuccessResponse(data=data) form = SetSiteForm(request.POST) if (not form.is_valid()): return err_GE031(form) new_site = form.cleaned_data['current_site'] if (new_site == None): # Clearing the current site. user.current_site = None user.save() data = { 'providers': [], 'staff': [], 'med_students': [], } return HttpJSONSuccessResponse(data=data) if (new_site in user.sites.values_list('id', flat=True)): # great, do the change. user.current_site_id = new_site user.save() data = { 'med_students': getSiteStudents(new_site)['users'], 'providers': getSiteProviders(new_site)['users'], 'staff': getSiteStaff(new_site)['users'], } return HttpJSONSuccessResponse(data=data) err_obj = { 'errno': 'AM001', 'descr': _('Invalid site selection.'), } return HttpResponseBadRequest(content=json.dumps(err_obj), mimetype='application/json')
def getReferPDFLogic(request, refer_id, ss=None): """ get_refer_pdf :param request: Request info :type request: django.core.handlers.wsgi.WSGIRequest :param refer_id: referall id :type refer_id: uuid :returns: django.http.HttpResponse -- the result in an HttpResonse object """ if (request.method != 'POST'): return err_GE002() form = MsgGetForm(request.POST) if (not form.is_valid()): return err_GE031(form) refer = get_object_or_404(MessageRefer, uuid=refer_id) message = refer.message if ((message.sender and request.user.pk != message.sender.pk) and not ((request.user.pk,) in message.recipients.values_list('id') or (request.user.pk,) in message.ccs.values_list('id'))): return err403(request, err_msg=_("You don't seem to be a valid recipient for this file.")) # special for mobile app api # Get/set up data for KMS. request.session['key'] = request.device_assn.secret try: clearkey = decrypt_cipherkey(request, refer, ss=ss) except KeyInvalidException: return err_GE021() try: response = refer.get_file(request, key=clearkey) return response except Exception as e: err_email_body = '\n'.join([ ('PDF file not exist!'), ''.join(['Server: ', settings.SERVER_ADDRESS]), ''.join(['Session: ', str(request.session.session_key)]), ''.join(['Message: ', (u'PDF file not exist in media/refer/pdf')]), ''.join(['Exception: ', str(e)]), ''.join(['Exception data: ', str(e.args)]), ]) mail_admins(_('PDF folder not exist'), err_email_body) raise Exception(_('A seemingly invalid URL has been stored for Refer Pdf.'))
def callFwdPrefsLogic(request): mhluser = request.mhluser role_user = request.role_user user_type = request.user_type if 100 == user_type: return err_DM020() if (request.method == 'GET'): choices = ['Voicemail'] if (mhluser.mobile_phone): choices.append('Mobile') if (role_user.office_phone): choices.append('Office') if (mhluser.phone): choices.append('Other') data = { 'choices': choices, 'current': role_user.get_forward_voicemail_display() } return HttpJSONSuccessResponse(data=data) form = GetFwdPrefsForm(request.POST) if (not form.is_valid()): return err_GE031(form) choice = form.cleaned_data['forward'] if (choice == 'Mobile'): if (not mhluser.mobile_phone): return _err_AM010() role_user.forward_voicemail = "MO" elif (choice == 'Office'): if (not role_user.office_phone): return _err_AM010() role_user.forward_voicemail = "OF" elif (choice == 'Other'): if (not mhluser.phone): return _err_AM010() role_user.forward_voicemail = "OT" else: role_user.forward_voicemail = "VM" role_user.save() return HttpJSONSuccessResponse()
def callFwdPrefsLogic(request): mhluser = request.mhluser role_user = request.role_user user_type = request.user_type if 100 == user_type: return err_DM020() if (request.method == 'GET'): choices = ['Voicemail'] if (mhluser.mobile_phone): choices.append('Mobile') if (role_user.office_phone): choices.append('Office') if (mhluser.phone): choices.append('Other') data = { 'choices': choices, 'current': role_user.get_forward_voicemail_display() } return HttpJSONSuccessResponse(data=data) form = GetFwdPrefsForm(request.POST) if (not form.is_valid()): return err_GE031(form) choice = form.cleaned_data['forward'] if (choice == 'Mobile'): if (not mhluser.mobile_phone): return _err_AM010() role_user.forward_voicemail = "MO" elif (choice == 'Office'): if (not role_user.office_phone): return _err_AM010() role_user.forward_voicemail = "OF" elif (choice == 'Other'): if (not mhluser.phone): return _err_AM010() role_user.forward_voicemail = "OT" else: role_user.forward_voicemail = "VM" role_user.save() return HttpJSONSuccessResponse()
def getReceivedMessagesLogic(request, return_python=False): """ Gets a list of the received message headers. If return_python is true, this will just return the object that would have been converted to JSON format. """ if (request.method != 'POST'): return err_GE002() form = MsgListForm(request.POST) if (not form.is_valid()): return err_GE031(form) data = getReceivedMessageListData(request.user, form.cleaned_data) if (return_python): return { 'data': data, 'warnings': {}, } return HttpJSONSuccessResponse(data=data)
def updateReferLogic(request, refer_id): """ update_refer :param request: Recipient info :type request: django.core.handlers.wsgi.WSGIRequest :param refer_id: The refferal's id :type refer_id: uuid :returns: { 'data': {}, 'warnings': {}, } """ if (request.method != 'POST'): return err_GE002() form = ReferEditForm(request.POST) if (not form.is_valid()): return err_GE031(form) updateRefer(request, form, refer_id) return HttpJSONSuccessResponse()
def composeReferLogic(request, api_secret=None, ss=None): if (request.method != 'POST'): return err_GE002() form = MessageReferForm(request.POST, request.FILES) if (not form.is_valid()): return err_GE031(form) sender = request.user sender_role_user = request.role_user subject = u'Refer' body = form.cleaned_data['reason_of_refer'] recipients = form.cleaned_data['user_recipients'] attachments = [] if ('attachments' in request.FILES): attachments = request.FILES.getlist('attachments') createNewMessage(request, sender, sender_role_user, recipients, body, ccs=None, subject=subject, uploads=attachments, file_data_list=None, refer_data=form.cleaned_data, api_secret=api_secret, ss=ss) return HttpJSONSuccessResponse()
def updateReferLogic(request, refer_id): """ update_refer :param request: Recipient info :type request: django.core.handlers.wsgi.WSGIRequest :param refer_id: The refferal's id :type refer_id: uuid :returns: { 'data': {}, 'warnings': {}, } """ if (request.method != 'POST'): return err_GE002() form = ReferEditForm(request.POST) if (not form.is_valid()): return err_GE031(form) updateRefer(request, form, refer_id) return HttpJSONSuccessResponse()
def getReceivedMessagesLogic(request, return_python=False): """ Gets a list of the received message headers. If return_python is true, this will just return the object that would have been converted to JSON format. """ if (request.method != 'POST'): return err_GE002() form = MsgListForm(request.POST) if (not form.is_valid()): return err_GE031(form) data = getReceivedMessageListData(request.user, form.cleaned_data) if (return_python): return { 'data': data, 'warnings': {}, } return HttpJSONSuccessResponse(data=data)
def pageUserLogic(request, user_id): if (request.method != 'POST'): return err_GE002() form = PagerNumberForm(request.POST) if (not form.is_valid()): return err_GE031(form) if (not MHLUser.objects.filter(pk=user_id).exists()): return err_GE010() provider = None try: provider = Provider.objects.get(user=user_id) except Provider.DoesNotExist: # This is ok. pass office_staff = None try: office_staff = OfficeStaff.objects.get(user=user_id) except OfficeStaff.DoesNotExist: # this is okay. pass paged = None # The user getting paged. if (provider): paged = provider if (not provider.pager): return err_TE002() elif (office_staff): paged = office_staff if (not office_staff.pager): return err_TE002() else: # Error! User doesn't appear to be a provider or an office staffer. return err_GE010() send_page(request.mhluser, paged, form.cleaned_data['number']) return HttpJSONSuccessResponse()
def composeMessageLogic(request, recipients_together=True, ss=None): if (request.method != 'POST'): return err_GE002() form = MsgCompositionForm(request.POST) if (not form.is_valid()): return err_GE031(form) sender = request.user sender_role_user = request.role_user subject = form.cleaned_data['subject'] body = form.cleaned_data['body'] recipients = [] form.cleaned_data['recipients'] if 'recipients' in form.cleaned_data and len(form.cleaned_data['recipients']) > 0: recipients = form.cleaned_data['recipients'] elif 'practice_recipients' in form.cleaned_data and \ len(form.cleaned_data['practice_recipients']) > 0: recipients = form.cleaned_data['practice_recipients'] ccs = [] if 'ccs' in form.cleaned_data and len(form.cleaned_data['ccs']) > 0: ccs = form.cleaned_data['ccs'] attachments = [] if ('attachment' in request.FILES): attachments = request.FILES.getlist('attachment') attachment_count = len(attachments) if not sendMessageCheck(sender, attachment_count, recipients, ccs): return HttpJSONErrorResponse(errno='MS002') exist_attchments = None if 'message_id' in form.cleaned_data and form.cleaned_data['message_id']\ and 'attachment_ids' in form.cleaned_data and \ len(form.cleaned_data['attachment_ids']) > 0: exist_attchments = { "message_id": form.cleaned_data['message_id'], "attachment_ids": form.cleaned_data['attachment_ids'] } exist_refer = None if 'message_id' in form.cleaned_data and form.cleaned_data['message_id'] \ and 'refer_id' in form.cleaned_data and form.cleaned_data['refer_id']: exist_refer = { "message_id": form.cleaned_data['message_id'], "refer_id": form.cleaned_data['refer_id'] } thread_uuid = None if 'thread_uuid' in form.cleaned_data and form.cleaned_data['thread_uuid']: thread_uuid = form.cleaned_data['thread_uuid'] if recipients_together: createNewMessage(request, sender, sender_role_user, recipients, body, ccs=ccs, subject=subject, uploads=attachments, exist_attchments=exist_attchments, exist_refer=exist_refer, thread_uuid=thread_uuid, ss=ss) else: createNewADS(request, sender, sender_role_user, recipients, body, subject=subject, uploads=attachments) return HttpJSONSuccessResponse()
def composeMessageLogic(request, recipients_together=True, ss=None): if (request.method != 'POST'): return err_GE002() form = MsgCompositionForm(request.POST) if (not form.is_valid()): return err_GE031(form) sender = request.user sender_role_user = request.role_user subject = form.cleaned_data['subject'] body = form.cleaned_data['body'] recipients = [] form.cleaned_data['recipients'] if 'recipients' in form.cleaned_data and len( form.cleaned_data['recipients']) > 0: recipients = form.cleaned_data['recipients'] elif 'practice_recipients' in form.cleaned_data and \ len(form.cleaned_data['practice_recipients']) > 0: recipients = form.cleaned_data['practice_recipients'] ccs = [] if 'ccs' in form.cleaned_data and len(form.cleaned_data['ccs']) > 0: ccs = form.cleaned_data['ccs'] attachments = [] if ('attachment' in request.FILES): attachments = request.FILES.getlist('attachment') attachment_count = len(attachments) if not sendMessageCheck(sender, attachment_count, recipients, ccs): return HttpJSONErrorResponse(errno='MS002') exist_attchments = None if 'message_id' in form.cleaned_data and form.cleaned_data['message_id']\ and 'attachment_ids' in form.cleaned_data and \ len(form.cleaned_data['attachment_ids']) > 0: exist_attchments = { "message_id": form.cleaned_data['message_id'], "attachment_ids": form.cleaned_data['attachment_ids'] } exist_refer = None if 'message_id' in form.cleaned_data and form.cleaned_data['message_id'] \ and 'refer_id' in form.cleaned_data and form.cleaned_data['refer_id']: exist_refer = { "message_id": form.cleaned_data['message_id'], "refer_id": form.cleaned_data['refer_id'] } thread_uuid = None if 'thread_uuid' in form.cleaned_data and form.cleaned_data['thread_uuid']: thread_uuid = form.cleaned_data['thread_uuid'] if recipients_together: createNewMessage(request, sender, sender_role_user, recipients, body, ccs=ccs, subject=subject, uploads=attachments, exist_attchments=exist_attchments, exist_refer=exist_refer, thread_uuid=thread_uuid, ss=ss) else: createNewADS(request, sender, sender_role_user, recipients, body, subject=subject, uploads=attachments) return HttpJSONSuccessResponse()