{% extends 'index.html' %}

{% block body %}
  <a href='/'>&larr; Index</a><p>
 
  Filename: <a href="/download/{{blob.key()}}/{{blob.filename}}"
    >{{blob.filename}}</a><br>
  Uploaded by: {{obj.create_user_email}} at {{obj.create_time}}<br>
  Size: {{'%.2f' % (blob.size/1e6)}} Mbytes<p>

  <form action="/save/{{blob.key()}}" method="POST">

  <div style='padding: 1em'>
    {% for k in avail_fields %}
    <input type='checkbox' name='key-{{k}}' id='key-{{k}}' value='{{k}}'
       {{'checked' if show_fields.get(k) else ''}}
    ><label for='key-{{k}}'>{{k}}</label></input>
    {% end %}
  </div>

  <table>
    <tr>
      <th>Show?</th>
      <th>Pkts</th>
      <th>MAC Addr</th>
      <th>Alias</th>
    </tr>
    {% for b, n in boxes %}
    <tr>
      <td><input type='checkbox' name='show-{{b}}'
             {{'checked' if checked.get(b) else ''}} /></td>
      <td>{{n}}</td>
      <td>{{b}}</td>
      <td><input name='name-{{b}}' value='{{aliases.get(b, "")}}' /></td>
    </tr>
    {% end %}
    <tr>
      <td><input type='checkbox' name='show-other' /></td>
      <td>{{other}}</td>
      <td>(other)</td>
      <td></td>
    </tr>
  </table>
  <input type='submit' value='Save and View' style='margin: 1em' />
  </form>
{% end %}
