def request(self, data, values, append): request = self.factory.get("/", data=data) url = utils.get_url_with_modified_params(request, values, append=append) parts = six.moves.urllib.parse.urlparse(url) return six.moves.urllib.parse.parse_qs(parts.query)
def build_links(self, request): data = request.GET for col in self.columns.visible_columns(): if self.sort_key and self.sort_field: field = self.sort_field code = field.get_value_for_name(col.name) value = data.get(self.sort_key, "") reverse = value.startswith("-") if reverse: value = value[1:] is_active = code == value next_value = "-%s" % code if not reverse and is_active else code mods = {self.sort_key: next_value} else: is_active = False reverse = False mods = {} url = get_url_with_modified_params(request, mods) if mods else None link = Link(content=col.label, url=url, is_active=is_active, reverse=reverse, sortable=col.sortable, column=col) yield link
def field_links(request, field): url = request.get_full_path() form_field = field.field field_value = field.value() if hasattr(form_field, 'build_links'): for value in form_field.build_links(request, field): yield value else: for code, label in form_field.choices: is_active = is_selected_choice(field_value, code) link_url = utils.get_url_with_modified_params(url, {field.name: code}) yield Link(link_url, label, is_active, value=code)
def bound_field_link_builder(field, request): url = request.get_full_path() form_field = field.field field_value = field.value() if hasattr(form_field, 'build_links'): for value in form_field.build_links(request, field): yield value else: for code, label in form_field.choices: is_active = is_selected_choice(field_value, code) link_url = utils.get_url_with_modified_params(url, {field.name: code}) yield Link(content=label, url=link_url, is_active=is_active, value=code)
def build_links(self, request, bound_field): value = bound_field.value() field_name = bound_field.name text_value = force_text(value) if value is not None else None for k, v in self.choices: content = force_text(v) key = force_text(k) is_active = text_value and text_value == key if is_active and self.toggle: next_value = key if text_value.startswith("-") else "-%s" % key else: next_value = key url = utils.get_url_with_modified_params(request, {field_name: next_value}) yield ui.Link(url=url, content=content, is_active=is_active)
def build_links(self, request, bound_field): value = bound_field.value() field_name = bound_field.name text_value = force_text(value) if value is not None else None for k, v in self.choices: content = force_text(v) key = force_text(k) is_active = text_value and text_value == key if is_active and self.toggle: next_value = key if text_value.startswith("-") else "-%s" % key else: next_value = key url = utils.get_url_with_modified_params(request, {field_name: next_value}) yield ui.Link(url=url, content=content, is_active=is_active)
def build_links(self, request): data = request.GET sort_name = getattr(self, "sort_parameter_name", None) for col in self.columns.visible(): if sort_name: field = self.sort_field code = field.get_value_for_name(col.name) value = data.get(sort_name, "") reverse = value.startswith("-") if reverse: value = value[1:] is_active = code == value next_value = "-%s" % code if not reverse and is_active else code mods = {sort_name: next_value} else: is_active = False reverse = False mods = {} url = get_url_with_modified_params(request, mods) link = ui.Link(content=col.label, url=url, is_active=is_active, reverse=reverse, sortable=col.sortable, column=col) yield link
def current_url(context, **kwargs): request = context['request'] return gutils.get_url_with_modified_params(request, kwargs)
def current_url(context, **kwargs): request = context['request'] return gutils.get_url_with_modified_params(request, kwargs)
def request(self, data, values, append): request = self.factory.get("/", data=data) url = utils.get_url_with_modified_params(request, values, append=append) parts = six.moves.urllib.parse.urlparse(url) return six.moves.urllib.parse.parse_qs(parts.query)
def create_url(self, request): current_url = request.get_full_path() url = utils.get_url_with_modified_params(self.to, {"next": current_url}) return url
def create_link(self, request, number): base_url = request.get_full_path() param = self.paginator.parameter_name url = utils.get_url_with_modified_params(request, {param: number}) return ui.Link(url=url, content=six.text_type(number), is_active=url == base_url)
def create_link(self, request, number): param = self.paginator.parameter_name url = utils.get_url_with_modified_params(request, {param: number}) return ui.Link(url=url, content=six.text_type(number), is_active=number == self.number)
def create_url(self, request): current_url = request.get_full_path() url = utils.get_url_with_modified_params(self.to, {"next": current_url}) return url