diff --git a/website/web/__init__.py b/website/web/__init__.py index cd7518aa..df71be14 100644 --- a/website/web/__init__.py +++ b/website/web/__init__.py @@ -2017,20 +2017,44 @@ def add_context(tree_uuid: str, node_uuid: str) -> WerkzeugResponse | None: def __prepare_node_view(capture_uuid: str, nodes: list[tuple[str, str]], from_popup: bool=False) -> str: - to_return = f'The capture contains this value in {len(nodes)} nodes, click below to see them on the tree:' - to_return += '' return to_return +def __prepare_title_in_modal(capture_uuid: str, title: str, from_popup: bool=False) -> str: + span_title = f'{title}' + if from_popup: + return f'{span_title}' + return f'{span_title}' + + +def __prepare_landings_in_modal(landing_page: str) -> str: + return f"""{shorten_string(landing_page, 100, with_title=True)}""" + + @app.route('/tables//', methods=['POST']) def post_table(table_name: str, value: str) -> Response: from_popup = True if (request.args.get('from_popup') and request.args.get('from_popup') == 'True') else False @@ -2087,16 +2111,11 @@ def post_table(table_name: str, value: str) -> Response: captures = captures[start:start + length] prepared_captures = [] for capture_uuid, title, landing_page, capture_time, nodes in captures: - _nodes = __prepare_node_view(capture_uuid, nodes, from_popup) to_append = { 'capture_time': capture_time.isoformat(), - 'landing_page': f"""{shorten_string(landing_page, 100, with_title=True)}""" + 'capture_title': f'{__prepare_title_in_modal(capture_uuid, title, from_popup)}
{__prepare_node_view(capture_uuid, nodes, from_popup)}', + 'landing_page': __prepare_landings_in_modal(landing_page) } - if from_popup: - to_append['capture_title'] = f""" {title}""" - else: - to_append['capture_title'] = f"""{title}""" - to_append['capture_title'] += f'
{_nodes}' prepared_captures.append(to_append) return jsonify({'draw': draw, 'recordsTotal': total, 'recordsFiltered': total if not search else total_filtered, 'data': prepared_captures}) @@ -2108,16 +2127,11 @@ def post_table(table_name: str, value: str) -> Response: captures = captures[start:start + length] prepared_captures = [] for capture_uuid, title, landing_page, capture_time, nodes in captures: - _nodes = __prepare_node_view(capture_uuid, nodes, from_popup) to_append = { 'capture_time': capture_time.isoformat(), - 'landing_page': f"""{shorten_string(landing_page, 100, with_title=True)}""" + 'capture_title': f'{__prepare_title_in_modal(capture_uuid, title, from_popup)}
{__prepare_node_view(capture_uuid, nodes, from_popup)}', + 'landing_page': __prepare_landings_in_modal(landing_page) } - if from_popup: - to_append['capture_title'] = f"""{title}""" - else: - to_append['capture_title'] = f"""{title}""" - to_append['capture_title'] += f'
{_nodes}' prepared_captures.append(to_append) return jsonify({'draw': draw, 'recordsTotal': total, 'recordsFiltered': total if not search else total_filtered, 'data': prepared_captures}) @@ -2129,16 +2143,11 @@ def post_table(table_name: str, value: str) -> Response: captures = captures[start:start + length] prepared_captures = [] for capture_uuid, title, landing_page, capture_time, nodes in captures: - _nodes = __prepare_node_view(capture_uuid, nodes, from_popup) to_append = { 'capture_time': capture_time.isoformat(), - 'landing_page': f"""{shorten_string(landing_page, 100, with_title=True)}""" + 'capture_title': f'{__prepare_title_in_modal(capture_uuid, title, from_popup)}
{__prepare_node_view(capture_uuid, nodes, from_popup)}', + 'landing_page': __prepare_landings_in_modal(landing_page) } - if from_popup: - to_append['capture_title'] = f""" {title}""" - else: - to_append['capture_title'] = f"""{title}""" - to_append['capture_title'] += f'
{_nodes}' prepared_captures.append(to_append) return jsonify({'draw': draw, 'recordsTotal': total, 'recordsFiltered': total if not search else total_filtered, 'data': prepared_captures}) @@ -2152,8 +2161,8 @@ def post_table(table_name: str, value: str) -> Response: for capture_uuid, title, landing_page, capture_time in captures: to_append = { 'capture_time': capture_time.isoformat(), - 'capture_title': f"""{title}""", - 'landing_page': f"""{shorten_string(landing_page, 100, with_title=True)}""" + 'capture_title': __prepare_title_in_modal(capture_uuid, title, from_popup), + 'landing_page': __prepare_landings_in_modal(landing_page) } prepared_captures.append(to_append) return jsonify({'draw': draw, 'recordsTotal': total, 'recordsFiltered': total if not search else total_filtered, 'data': prepared_captures}) @@ -2168,8 +2177,8 @@ def post_table(table_name: str, value: str) -> Response: for capture_uuid, title, landing_page, capture_time in captures: to_append = { 'capture_time': capture_time.isoformat(), - 'capture_title': f"""{title}""", - 'landing_page': f"""{shorten_string(landing_page, 100, with_title=True)}""" + 'capture_title': __prepare_title_in_modal(capture_uuid, title, from_popup), + 'landing_page': __prepare_landings_in_modal(landing_page) } prepared_captures.append(to_append) return jsonify({'draw': draw, 'recordsTotal': total, 'recordsFiltered': total if not search else total_filtered, 'data': prepared_captures}) @@ -2183,8 +2192,8 @@ def post_table(table_name: str, value: str) -> Response: for capture_uuid, title, landing_page, capture_time in captures: to_append = { 'capture_time': capture_time.isoformat(), - 'capture_title': f"""{title}""", - 'landing_page': f"""{shorten_string(landing_page, 100, with_title=True)}""" + 'capture_title': __prepare_title_in_modal(capture_uuid, title, from_popup), + 'landing_page': __prepare_landings_in_modal(landing_page) } prepared_captures.append(to_append) return jsonify({'draw': draw, 'recordsTotal': total, 'recordsFiltered': total if not search else total_filtered, 'data': prepared_captures}) @@ -2196,16 +2205,11 @@ def post_table(table_name: str, value: str) -> Response: captures = captures[start:start + length] prepared_captures = [] for capture_uuid, title, landing_page, capture_time, nodes in captures: - _nodes = __prepare_node_view(capture_uuid, nodes, from_popup) to_append = { 'capture_time': capture_time.isoformat(), - 'landing_page': f"""{shorten_string(landing_page, 100, with_title=True)}""" + 'capture_title': f'{__prepare_title_in_modal(capture_uuid, title, from_popup)}
{__prepare_node_view(capture_uuid, nodes, from_popup)}', + 'landing_page': __prepare_landings_in_modal(landing_page) } - if from_popup: - to_append['capture_title'] = f"""{title}""" - else: - to_append['capture_title'] = f"""{title}""" - to_append['capture_title'] += f'
{_nodes}' prepared_captures.append(to_append) return jsonify({'draw': draw, 'recordsTotal': total, 'recordsFiltered': total if not search else total_filtered, 'data': prepared_captures}) @@ -2217,16 +2221,11 @@ def post_table(table_name: str, value: str) -> Response: captures = captures[start:start + length] prepared_captures = [] for capture_uuid, title, landing_page, capture_time, nodes in captures: - _nodes = __prepare_node_view(capture_uuid, nodes, from_popup) to_append = { 'capture_time': capture_time.isoformat(), - 'landing_page': f"""{shorten_string(landing_page, 100, with_title=True)}""" + 'capture_title': f'{__prepare_title_in_modal(capture_uuid, title, from_popup)}
{__prepare_node_view(capture_uuid, nodes, from_popup)}', + 'landing_page': __prepare_landings_in_modal(landing_page) } - if from_popup: - to_append['capture_title'] = f"""{title}""" - else: - to_append['capture_title'] = f"""{title}""" - to_append['capture_title'] += f'
{_nodes}' prepared_captures.append(to_append) return jsonify({'draw': draw, 'recordsTotal': total, 'recordsFiltered': total if not search else total_filtered, 'data': prepared_captures}) return jsonify({}) diff --git a/website/web/templates/tree_hostnames.html b/website/web/templates/tree_hostnames.html index 45dadd4a..fe34c034 100644 --- a/website/web/templates/tree_hostnames.html +++ b/website/web/templates/tree_hostnames.html @@ -19,8 +19,10 @@ + There are {{ info['nodes'] | length }} URLs in this hostname in the current tree. +

-