<!DOCTYPE html>
<!-- Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership. The
ASF licenses this file to you under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance
with the License. You may obtain a copy of the License at .
http://www.apache.org/licenses/LICENSE-2.0 . Unless required by
applicable law or agreed to in writing, software distributed under the
License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES
OR CONDITIONS OF ANY KIND, either express or implied. See the License
for the specific language governing permissions and limitations under
the License. -->
<html lang="en">
  <head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" id="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, minimum-scale=0.5">
    <!-- The above 3 meta tags *must* come first in the head; any other head content must come *after* these tags -->
    
    <!-- Left empty on purpose!-->
    <title></title>

    <!-- Bootstrap -->
    
    <link href="css/bootstrap.min.css" rel="stylesheet" media="all">
    <link href="css/scaffolding.css" rel="stylesheet" media="all">
    <link href="css/modal.css" rel="stylesheet" media="all">
    <link href="css/spinner.css" rel="stylesheet" media="all">
    <link rel="alternate" href="/api/static.lua"/>
    <link rel="stylesheet" href="//cdn.jsdelivr.net/font-hack/2.013/css/hack.min.css">

    <!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries -->
    <!-- WARNING: Respond.js doesn't work if you view the page via file:// -->
    <!--[if lt IE 9]>
      <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
      <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
    <![endif]-->
  </head>
  
  <body onload="parseURL();">
    <div id="portrait_notice" style="display: none;" class="card">Switch to landscape mode on your device for the best experience</div>
    <header class="navbar navbar-default" style="margin-bottom: 0px; background: linear-gradient(to bottom, rgba(229,229,229,1) 0%,rgba(191,191,191,1) 100%);">
      
    <div class="container-fluid">
      <!-- Brand and toggle get grouped for better mobile display -->
      <div class="navbar-header collapse navbar-collapse">
      <a class="navbar-brand" href="./" onclick="location.href='./';"><span><img src="images/logo.png" style="margin-top: -10px !important;" height="30"/>&nbsp;</a>
      </div>
    
    
    <!-- Quick search -->
    
            
      
      <form class="quickform" style="padding-top: 8px; float: left; page-break-before: avoid; page-break-after: avoid;" id="quickform" action="list.html" method="get" onsubmit="return search(this.elements['q'].value,this.elements['d'].getAttribute('data'), false, this.elements['checkall'].checked);">
        <div class="unifiedsearch">
        
        <input type="checkbox" style="display: none" id="checkall" name="checkall"/>
        
        <ul id="advanced_search">
          <li><b>Where to search:</b></li>
          <li><a href="javascript:void(0);" class="searchlistoption checked" onclick="search_set_list('this');" id="search_list_this">This list</a></li>
          <li><a href="javascript:void(0);" class="searchlistoption" onclick="search_set_list('domain');" id="search_list_domain">This domain</a></li>
          <li><a href="javascript:void(0);" class="searchlistoption" onclick="search_set_list('global');"  id="search_list_global">All lists</a></li>
          <li class="divider"></li>
          <li><b>Date range:</b>
            <span id='drh'><input title="Click to change the date range" style="padding-left: 20px; border: none; cursor: url(images/daterange.ico), text; min-width: 200px; margin-right: 10px; background-color: transparent; font-size: 9pt;" name="d" id='d' data="lte=1M" value="Less than 1 month ago" onclick="datePicker(this);" readonly="readonly"/></span>
          </li>
        </ul>
        
        <input type="text" name="q" id="q" placeholder="Search this list..." style="border-top: none; border-bottom: none;"/>
        <button type="submit" title="Search!" value="Search!" class="btn btn-primary"><span class="glyphicon glyphicon-search"> </span></button>
        <div id="q-dropdown" onclick="toggleView('advanced_search');"><span class="glyphicon glyphicon-chevron-down" title="Search settings..."> </span></div>
        </div>
        
      </form>
      <form id="project_select_form">
        <select style="float: left; margin-top: 12px; display: none;" id="project_select" onchange='switch_project(this.value);'></select>
      </form>
           
    <div id="prefs" style="float: left;">
      
      
      <ul class="nav navbar-nav" id="userprefs" style="position: absolute; right: 18px;">
        <li class="dropdown navbar-right">
          <!-- themes -->
          <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false"><img id="timg" src="images/themes.png" style="width: 32px;" title="Theme selector"/>
            <span class="caret"></span>
          </a>
            <ul class="dropdown-menu" id="themes_dropdown">
              <li><a href="javascript:void(0)" onclick="set_theme('threaded')">Threaded view</a></li>
              <li><a href="javascript:void(0)" onclick="set_theme('flat')">Flat view</a></li>
              <li><a href="javascript:void(0)" onclick="set_theme('treeview')">Treview</a></li>
              <!-- <li><a href="api/static.lua/" onclick="location.href='/api/static.lua/' + current_list + '@' + current_domain;return false;">Static HTML lists</a></li> -->
          </ul>
        </li>
      <li id="threading_mobile" class="navbar-right" style="display: none;">
          <img onclick="set_theme( (current_listmode == 'threaded') ? 'flat' : 'threaded');" title="Enabl or disable threaded view" id="threaded_mobile_img" src="images/threading_disabled.png" style="width: 32px;"/>
        </li>
      <li class="dropdown navbar-right" id="login">
          
          <!-- user prefs -->
          <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false"><img id="uimg" src="images/user_loggedout.png" style="width: 32px; margin-top: -4px;"  title="Not logged in"/>
            <span class="caret"></span></a>
            <ul class="dropdown-menu" id="prefs_dropdown">
            
          </ul>
      </li>
      
      
      <li>
        <div title="Enable/disable social rendering" onclick="set_skin('chatty');" id="chatty_link" > </div>
      </li>
      </ul>
      
    </div>
    
    </div>
    </header>
    
    <!-- quick-nav -->
    <header id="listview_header" class="navbar navbar-default" style="margin: 0px; height: 32px; margin-bottom: 10px; background: #FFF !important;">
      <!-- ML/search title -->
      <span id="listview_title"></span>
      <!-- ML nav chevrons -->
      <span id="listview_chevrons"> &nbsp;</span>
    </header>
    
    <div>
       <noscript>
          <div class="bs-callout bs-callout-alert">
            This site requires JavaScript enabled. Please enable it.
          </div>
      </noscript>
      
    <div>
      <div id="sidebar" class="hidden-xs hidden-sm col-md-3 col-lg-2" style="float: left;">&nbsp;
        <div id="sidebar_calendar"></div>
        <div id="sidebar_stats"></div>
        <div id="sidebar_wordcloud"></div>
      </div>
      
      <!--
      <div id="datepicker_mobile_parent" style="margin-bottom: 5px;" class="col-xs-10 col-sm-10 hidden-md hidden-lg" style="float: left;">
          Pick a month: <select onchange="toggleEmail(this.value);" id="datepicker_mobile"></select>
      </div>
      -->
      <div id="list_picker" class="col-xs-12 col-md-8 col-lg-10" style="float: left;">
        <ul id="list_picker_ul">
          
        </ul>
      </div>
      <div id="emails_parent" class="col-xs-12 col-md-8 col-lg-10" style="float: left;">
        <div id="emails">
          
        </div>
      </div>
      </div>
    </div>
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
    <!-- Include all compiled plugins (below), or include individual files as needed -->
    <script src="js/bootstrap.min.js"></script>
    <script src="js/config.js"></script>
    <script src="js/wordcloud.js"></script>
    <script src="js/weburl.js"></script>
    <script src="js/d3.min.js"></script>
    <script src="js/ponymail.js"></script>
    <div id="splash" class="splash fade-in"> &nbsp; </div>
    <div style="clear: both;"></div>
    <script type="text/javascript">
      $.event.special.swipe.scrollSupressionThreshold = 20;
      $.event.special.swipe.verticalDistanceThreshold = 30;
      $( "#emails" ).on( "swipe", ponymail_swipe );
    </script>
  </body>
</html>
