def test_check_admin_permission_false(): u = fEMRUser.objects.create_user( username="******", password="******", email="*****@*****.**", ) assert not check_admin_permission(u) u.delete()
def test_check_admin_permission_true(): u = fEMRUser.objects.create_user( username="******", password="******", email="*****@*****.**", ) g = Group.objects.get_or_create(name="fEMR Admin")[0] g.user_set.add(u) assert check_admin_permission(u) u.delete() g.delete()
def fetch_csv_export(request, export_id=None): if request.user.is_authenticated: if check_admin_permission(request.user): export = CSVExport.objects.get(pk=export_id) with open(export.file.url, "rb") as file_handle: resp = HttpResponse(file_handle.read(), content_type="text/csv") resp[ "Content-Disposition"] = f'attachment; filename="{os.path.basename(export.file.path)}"' return resp else: return_response = redirect("main:permission_denied") else: return_response = redirect("main:not_logged_in") return return_response
def csv_export_list(request): if request.user.is_authenticated: if check_admin_permission(request.user): exports = CSVExport.objects.filter( user=request.user).order_by("-id") paginator = Paginator(exports, 10) page_number = request.GET.get("page") page_obj = paginator.get_page(page_number) return_response = render(request, "admin/export_list.html", {"exports": page_obj}) else: return_response = redirect("main:permission_denied") else: return_response = redirect("main:not_logged_in") return return_response
def run_patient_csv_export(request, timeframe=1): if request.user.is_authenticated: if check_admin_permission(request.user): campaign = Campaign.objects.get(name=request.user.current_campaign) csv_export_handler.delay(request.user.pk, campaign.id, timeframe) messages.info( request, "We're building your CSV - you'll receive a message once it's done. This may take up to 10 minutes.", ) return_response = render(request, "admin/home.html", { "user": request.user, "page_name": "Admin" }) else: return_response = redirect("main:permission_denied") else: return_response = redirect("main:not_logged_in") return return_response
def has_admin_group(user: fEMRUser) -> bool: return check_admin_permission(user)
def wrap(request, *args, **kwargs): if check_admin_permission(request.user): return_response = view_func(request, *args, **kwargs) else: return_response = redirect("main:permission_denied") return return_response