def init(self, request, **kwargs): self.back_url = reverse_lazy("cases:case", kwargs={ "queue_pk": kwargs["queue_pk"], "pk": kwargs["pk"], "tab": "documents" }) self.contacts = get_case_additional_contacts(request, kwargs["pk"]) self.applicant = get_case_applicant(request, kwargs["pk"]) self.template = request.POST.get(TEMPLATE) params = { "case": self.kwargs["pk"], "page": self.request.GET.get("page", 1) } if self.kwargs.get("decision_key"): params["decision"] = self.kwargs["decision_key"] self.templates, _ = get_letter_templates( self.request, convert_dict_to_query_params(params)) self.data = {"total_pages": self.templates["total_pages"]} if self.template and not request.POST.get(TEXT): template, _ = get_letter_template( request, self.template, params=convert_dict_to_query_params({TEXT: True})) self.data[TEXT] = template[TEXT] self.object_pk = kwargs["pk"] self.action = self._validate self.additional_context = { "case": get_case(request, self.object_pk), "applicant": self.applicant, "contacts": self.contacts, }
def get(self, request, **kwargs): if Permission.MANAGE_FLAGGING_RULES.value not in get_user_permissions(request): return redirect(reverse_lazy("cases:cases")) params = {"page": int(request.GET.get("page", 1))} params = get_params_if_exist(request, ["only_my_team", "level", "include_deactivated"], params) data, _ = get_flagging_rules(request, convert_dict_to_query_params(params)) filters = FiltersBar( [ Select(name="level", title=strings.FlaggingRules.List.Filter.Type, options=_levels), Checkboxes( name="only_my_team", options=[Option("true", strings.FlaggingRules.List.Filter.MY_TEAM_ONLY)], classes=["govuk-checkboxes--small", "govuk-!-margin-top-6"], ), Checkboxes( name="include_deactivated", options=[Option("true", strings.FlaggingRules.List.Filter.INCLUDE_DEACTIVATED)], classes=["govuk-checkboxes--small", "govuk-!-margin-top-6"], ), ] ) context = { "data": data, "team": get_gov_user(request)[0]["user"]["team"]["id"], "filters": filters, } return render(request, "flags/flagging-rules-list.html", context)
def get_additional_context(self): status = self.request.GET.get("status") params = {"page": int(self.request.GET.get("page", 1))} if status: params["status"] = status users = get_organisation_users( self.request, str(self.request.session["organisation"]), params) statuses = [ Option(option["key"], option["value"]) for option in [ { "key": "active", "value": "Active" }, { "key": "deactivated", "value": "Deactivated" }, { "key": "", "value": "All" }, ] ] filters = FiltersBar( [Select(name="status", title="status", options=statuses)]) return { "status": status, "data": users, "page": params.pop("page"), "params_str": convert_dict_to_query_params(params), "filters": filters, }
def get_letter_preview(request, layout_id, paragraph_ids): querystring = convert_dict_to_query_params({ "layout": layout_id, "paragraphs": paragraph_ids }) data = client.get(request, f"/letter-templates/generate-preview/?{querystring}") return data.json(), data.status_code
def get_user(request, pk=None, params=None): if pk: url = f"/users/{pk}" else: url = "/users/me/" if params: url = url + "?" + convert_dict_to_query_params(params) return client.get(request, url).json()
def get(self, request, **kwargs): params = { "page": int(request.GET.get("page", 1)), **get_params_if_exist(request, [ "case_status", "team", "queue", "tier", "only_active" ]), } data, _ = get_routing_rules(request, convert_dict_to_query_params(params)) user_data, _ = get_gov_user(request, str(request.session["lite_api_user_id"])) status = request.GET.get("status", "active") filters = FiltersBar([ Select(title=Filter.CASE_STATUS, name="case_status", options=get_statuses(request, True)), *conditional( has_permission(request, Permission.MANAGE_ALL_ROUTING_RULES), [ Select(title=Filter.TEAM, name="team", options=get_teams(request, True)), AutocompleteInput( title=Filter.QUEUE, name="queue", options=get_queues(request, convert_to_options=True), ), ], [ AutocompleteInput( title=Filter.QUEUE, name="queue", options=get_users_team_queues( request, request.session["lite_api_user_id"], True), ), ], ), TextInput(title=Filter.TIER, name="tier"), Checkboxes( name="only_active", options=[Option(True, Filter.ACTIVE_ONLY)], classes=["govuk-checkboxes--small"], ), ]) context = { "data": data, "status": status, "user_data": user_data, "filters": filters, } return render(request, "routing-rules/index.html", context)
def get(self, request, **kwargs): """ List of existing goods (add-preexisting) """ application_id = str(kwargs["pk"]) application = get_application(request, application_id) name = request.GET.get("name", "").strip() description = request.GET.get("description", "").strip() part_number = request.GET.get("part_number", "").strip() control_list_entry = request.GET.get("control_list_entry", "").strip() filters = FiltersBar([ TextInput(title="name", name="name"), TextInput(title="description", name="description"), TextInput(title="control list entry", name="control_list_entry"), TextInput(title="part number", name="part_number"), ]) params = { "page": int(request.GET.get("page", 1)), "name": name, "description": description, "part_number": part_number, "control_list_entry": control_list_entry, "for_application": "True", } goods_list = get_goods(request, **params) context = { "application": application, "data": goods_list, "name": name, "description": description, "part_number": part_number, "control_list_entry": control_list_entry, "draft_id": application_id, "params": params, "page": params.pop("page"), "params_str": convert_dict_to_query_params(params), "filters": filters, "feature_flag_firearms_enabled": settings.FEATURE_FLAG_FIREARMS_ENABLED, } return render(request, "applications/goods/preexisting.html", context)
def get_user(request, pk=None, params=None): if pk: url = USERS_URL + str(pk) else: url = USERS_URL + "me/" if params: from core.helpers import convert_dict_to_query_params url = url + "?" + convert_dict_to_query_params(params) return get(request, url).json()
def get(self, request, **kwargs): search_term = request.GET.get("search_term", "").strip() org_type = request.GET.get("org_type", "").strip() params = { "page": int(request.GET.get("page", 1)), "status": request.GET.get("status", "active") } if search_term: params["search_term"] = search_term if org_type: params["org_type"] = org_type organisations, _ = get_organisations( request, convert_dict_to_query_params(params)) filters = FiltersBar([ TextInput(name="search_term", title=OrganisationsPage.Filters.NAME), Select( name="org_type", title=OrganisationsPage.Filters.TYPE, options=[ Option("individual", OrganisationsPage.Filters.Types.INDIVIDUAL), Option("commercial", OrganisationsPage.Filters.Types.COMMERCIAL), Option("hmrc", OrganisationsPage.Filters.Types.HMRC), ], ), HiddenField(name="status", value=params["status"]), ]) context = { "data": organisations, "filters": filters, "search_term": params.get("search_term", ""), "tab": params.get("status"), "in_review_total": get_menu_notifications(request)["notifications"].get( "organisations"), "can_manage_organisations": Permission.MANAGE_ORGANISATIONS.value in get_user_permissions(request), } return render(request, "organisations/index.html", context)
def get(self, request, **kwargs): params = {"page": int(request.GET.get("page", 1)), "submitted": str_to_bool(request.GET.get("submitted", True))} organisation = get_organisation(request, request.session["organisation"]) applications = get_applications(request, **params) context = { "applications": applications, "organisation": organisation, "params": params, "page": params.pop("page"), "params_str": convert_dict_to_query_params(params), } return render( request, "applications/applications.html" if params["submitted"] else "applications/drafts.html", context )
def get(self, request, **kwargs): letter_template_id = str(kwargs["pk"]) params = convert_dict_to_query_params({ "generate_preview": True, "activity": True }) response, _ = get_letter_template(request, letter_template_id, params=params) context = { "letter_template": response["template"], "preview": response["preview"], "activity": response.get("activity", []), } return render(request, "letter-templates/letter-template.html", context)
def get(self, request, **kwargs): params = { "page": int(request.GET.get("page", 1)), "name": request.GET.get("name", "") } data, _ = get_letter_templates(request, convert_dict_to_query_params(params)) filters = FiltersBar([ TextInput(name="name", title="name"), ]) context = { "data": data, "filters": filters, } return render(request, "letter-templates/letter-templates.html", context)
def get(self, request, *args, **kwargs): search_term = request.GET.get("search_term", "").strip() params = {"page": int(request.GET.get("page", 1))} if search_term: params["search_term"] = search_term organisations = get_organisations( request, org_type=["commercial", "individual"], **params) params_str = convert_dict_to_query_params(params) context = { "organisations": organisations, "params": params, "page": params.pop("page"), "params_str": params_str, "show_error": kwargs.get("show_error", False), } return render(request, "hmrc/select-organisation.html", context)
def get_letter_preview(request, layout_id, paragraph_ids): data = {"layout": str(layout_id), "paragraphs": paragraph_ids} get_params = "?" + convert_dict_to_query_params(data) data = get(request, LETTER_TEMPLATES_URL + GENERATE_PREVIEW_URL + get_params) return data.json(), data.status_code