2017-07-23 19:56:51 +02:00
{% extends "main.html" %}
2021-04-08 19:15:53 +02:00
{% from 'bootstrap/utils.html' import render_messages %}
2020-11-03 16:32:04 +01:00
{% block title %}Capture{% endblock %}
2017-07-23 19:56:51 +02:00
2021-01-18 13:03:10 +01:00
{% block card %}
< meta property = "og:title" content = "Lookyloo" / >
< meta property = "og:type" content = "website" / >
< meta
property="og:description"
content="Lookyloo captures websites and let you investigate them."
/>
< meta
property="og:image"
2021-01-18 16:57:27 +01:00
content="https://{{public_domain}}{{ url_for('static', filename='lookyloo.jpeg') }}"
2021-01-18 13:03:10 +01:00
/>
< meta
property="og:url"
2021-01-18 16:57:27 +01:00
content="https://{{public_domain}}"
2021-01-18 13:03:10 +01:00
/>
< meta name = "twitter:card" content = "summary_large_image" >
{% endblock %}
2017-07-23 19:56:51 +02:00
{% block content %}
< div class = "container" >
2019-06-28 11:59:34 +02:00
< center >
2020-11-03 17:16:37 +01:00
< a href = "{{ url_for('index') }}" title = "Go back to index" >
< img src = "{{ url_for('static', filename='lookyloo.jpeg') }}"
alt="Lookyloo" width="400">
< / a >
2019-06-28 11:59:34 +02:00
< / center >
< / br >
2021-04-08 19:15:53 +02:00
{{ render_messages(container=True, dismissible=True) }}
< / br >
2020-11-03 16:32:04 +01:00
< form role = "form" action = "{{ url_for('capture_web') }}" method = post enctype = multipart/form-data >
2020-05-22 17:36:22 +02:00
< div class = "form-group row" >
< div class = "col-sm-10" >
< div class = "form-check" >
2020-12-10 17:23:37 +01:00
< input class = "form-check-input" type = "checkbox" name = "listing" checked = "true" > < / input >
2020-05-22 17:36:22 +02:00
< label for = "listing" class = "form-check-label" > Display results on public page< / label >
< / div >
< / div >
< / div >
2019-06-28 11:59:34 +02:00
< div class = "form-group row" >
< label for = "url" class = "col-sm-2 col-form-label" > URL:< / label >
< div class = "col-sm-10" >
2020-07-08 00:37:29 +02:00
< input type = "text" class = "form-control" name = "url" id = url placeholder = "URL to capture" required >
2019-06-27 17:47:21 +02:00
< / div >
2019-06-28 11:59:34 +02:00
< / div >
2019-06-27 17:47:21 +02:00
2020-11-03 19:26:24 +01:00
{% if max_depth >= 2 %}
2019-06-28 11:59:34 +02:00
< div class = "form-group row" >
< label for = "depth" class = "col-sm-2 col-form-label" > Link Depth:< / label >
< div class = "col-sm-1" >
< select class = "form-control" name = "depth" id = depth >
2020-11-03 19:26:24 +01:00
{% for depth in range(max_depth) %}
< option value = "{{ depth + 1 }}" > {{ depth + 1 }}< / option >
{% endfor %}
2019-06-28 11:59:34 +02:00
< / select >
2017-07-23 19:56:51 +02:00
< / div >
2019-06-28 11:59:34 +02:00
< / div >
2020-11-03 19:26:24 +01:00
{%endif%}
2019-06-27 17:47:21 +02:00
2020-07-08 00:37:29 +02:00
< div class = "form-group row" >
2020-07-17 18:39:50 +02:00
< label for = "referer" class = "col-sm-2 col-form-label" > Referer (Optional):< / label >
2020-07-08 00:37:29 +02:00
< div class = "col-sm-10" >
2020-07-17 18:39:50 +02:00
< input type = "text" class = "form-control" name = "referer" id = referer placeholder = "Pass referer of the URL" >
2020-07-08 00:37:29 +02:00
< / div >
< / div >
2021-06-18 17:12:50 +02:00
< div class = "form-group row" >
< label for = "proxy" class = "col-sm-2 col-form-label" > Proxy (Optional):< / label >
< div class = "col-sm-10" >
2021-06-25 16:36:57 +02:00
< input type = "text" class = "form-control" name = "proxy" id = "proxy" placeholder = "Expected format: [scheme]://[username]:[password]@[hostname]:[port]" >
2021-06-18 17:12:50 +02:00
< / div >
< / div >
2020-01-24 10:17:41 +01:00
< div class = "form-group row" >
< label for = "cookies" class = "col-sm-6" > Cookies (JSON export from the Firefox plugin Cookie Quick Manager)< / label >
< div class = "col-sm-4" >
2020-01-24 11:25:53 +01:00
< input type = "file" class = "form-control-file" id = "cookies" name = "cookies" >
2020-01-24 10:17:41 +01:00
< / div >
< / div >
2019-06-28 11:59:34 +02:00
< div class = "dropdown-divider" > < / div >
2020-12-10 17:23:37 +01:00
< p style = "font-size: x-large" > < b > Browser Configuration< / b > (Lookyloo uses an emulated browser for all captures)< / p >
{% if personal_ua %}
< div class = "form-group row" >
< div class = "col-sm-10" >
< div class = "form-check" >
< input class = "form-check-input" type = "checkbox" name = "personal_ua" > < / input >
2021-04-08 13:47:58 +02:00
< label for = "personal_ua" class = "form-check-label" > Tick the box to use the current < a href = "https://en.wikipedia.org/wiki/User_agent" > user-agent< / a > of your own browser:< / br >
2020-12-10 17:23:37 +01:00
{{ personal_ua }}
< / label >
< / div >
< / div >
< / div >
< / br >
< div > Or pick the user agent of your choice:< / div >
< / br >
{% endif %}
2019-06-28 11:59:34 +02:00
< div class = "form-group row" >
< label for = "os" class = "col-sm-2 col-form-label" > Operating System:< / label >
< div class = "col-sm-10" >
< select class = "form-control" name = "os" id = "os" >
{% for os in user_agents.keys() %}
2021-01-20 20:54:37 +01:00
<!-- Select the default os -->
< option value = "{{ os }}" { % if os = =default['os'] % } selected { % endif % } > {{ os }}< / option >
2019-06-27 17:47:21 +02:00
{% endfor%}
2019-06-28 11:59:34 +02:00
< / select >
2019-03-29 20:11:44 +01:00
< / div >
2019-06-28 11:59:34 +02:00
< / div >
{% for os, browsers in user_agents.items() %}
2021-01-20 20:54:37 +01:00
<!-- Hide the browsers that aren't part of the default os -->
< div id = "{{os.replace(' ', '_')}}" class = "style-sub-1 form-group row" { % if not os = =default['os'] % } style = "display: none;" { % endif % } >
2019-06-28 11:59:34 +02:00
< label for = "browser" class = "col-sm-2 col-form-label" > Browser Type:< / label >
< div class = "col-sm-10" >
2021-01-20 20:54:37 +01:00
<!-- Disable all the selects not related to the default os -->
< select class = "form-control" name = "browser" { % if not os = =default['os'] % } disabled { % endif % } >
2019-06-28 11:59:34 +02:00
{% for browser in browsers.keys()%}
2021-01-20 20:54:37 +01:00
<!-- Select the default browser -->
< option value = "{{ browser }}" { % if browser = =default['browser'] % } selected { % endif % } > {{ browser }}< / option >
2019-06-28 11:59:34 +02:00
{% endfor%}
< / select >
< / div >
< / div >
2019-06-27 17:47:21 +02:00
{% for browser, user_agents in browsers.items()%}
2021-01-20 20:54:37 +01:00
<!-- Hide the user agents that aren't part of the default OS and browsers that aren't part of the default os -->
< div id = "{{os.replace(' ', '_')}}_{{browser.replace(' ', '_')}}" class = "style-sub-2 form-group row" { % if not os = =default['os'] or not browser = =default['browser']%} style = "display: none;" { % endif % } >
2019-06-28 11:59:34 +02:00
< label for = "user_agent" class = "col-sm-2 col-form-label" > User Agent:< / label >
< div class = "col-sm-10" >
2021-01-20 20:54:37 +01:00
<!-- Disable all the selects, unless it is in default os and browser -->
< select class = "form-control" name = "user_agent" { % if not os = =default['os'] or not browser = =default['browser'] % } disabled { % endif % } >
2019-06-27 17:47:21 +02:00
{% for user_agent in user_agents %}
2021-01-20 20:54:37 +01:00
<!-- Select the default ua -->
< option value = "{{ user_agent }}" { % if user_agent = =default['useragent'] % } selected { % endif % } > {{ user_agent }}< / option >
2019-03-29 20:11:44 +01:00
{% endfor%}
2019-06-28 11:59:34 +02:00
< / select >
2019-06-27 17:47:21 +02:00
< / div >
2019-06-28 11:59:34 +02:00
< / div >
2019-06-27 17:47:21 +02:00
{% endfor%}
2019-06-28 11:59:34 +02:00
{% endfor%}
< div class = "dropdown-divider" > < / div >
2020-07-17 18:39:50 +02:00
< center >
2021-01-29 16:35:44 +01:00
< b > By default, the capture is public. If you do not want that, untick the box at the top of the form.< / b >
< / br >
2021-04-09 15:45:20 +02:00
< / br >
< button type = "submit" class = "new-capture-button" id = "btn-looking" > Start looking!< / button >
2020-08-07 17:06:25 +02:00
< div id = "long" style = "display:none" > Please wait, it can take a while on big websites...< / div >
< div id = "too-long" style = "display:none" > ... No, really, I mean it.< / div >
< div id = "way-too-long" style = "display:none" > Told ya!< / div >
2020-07-17 18:39:50 +02:00
< / center >
2019-06-28 11:59:34 +02:00
< / form >
2017-07-23 19:56:51 +02:00
< / div >
{% endblock %}
2019-03-29 20:11:44 +01:00
{% block scripts %}
2019-06-28 11:59:34 +02:00
{{ super() }}
2021-06-17 02:36:01 +02:00
< script src = '{{ url_for(' static ' , filename = 'capture.js' ) } } '
integrity="{{get_sri('static', 'capture.js')}}"
crossorigin="anonymous">< / script >
2019-03-29 20:11:44 +01:00
{% endblock %}