Home | History | Annotate | Download | only in base
      1 <!DOCTYPE html>
      2 
      3 <html>
      4 
      5 <head>
      6 
      7 <script>
      8 function addRow(name, url, isdir, size, date_modified) {
      9   if (name == ".")
     10     return;
     11 
     12   var root = "" + document.location;
     13   if (root.substr(-1) !== "/")
     14     root += "/";
     15 
     16   var table = document.getElementById("table");
     17   var row = document.createElement("tr");
     18   var file_cell = document.createElement("td");
     19   var link = document.createElement("a");
     20 
     21   link.className = isdir ? "icon dir" : "icon file";
     22 
     23   if (name == "..") {
     24     link.href = root + "..";
     25     link.innerText = document.getElementById("parentDirText").innerText;
     26     link.className = "icon up";
     27     size = "";
     28     date_modified = "";
     29   } else {
     30     if (isdir) {
     31       name = name + "/";
     32       url = url + "/";
     33       size = "";
     34     } else {
     35       link.draggable = "true";
     36       link.addEventListener("dragstart", onDragStart, false);
     37     }
     38     link.innerText = name;
     39     link.href = root + url;
     40   }
     41   file_cell.appendChild(link);
     42 
     43   row.appendChild(file_cell);
     44   row.appendChild(createCell(size));
     45   row.appendChild(createCell(date_modified));
     46 
     47   table.appendChild(row);
     48 }
     49 
     50 function onDragStart(e) {
     51   var el = e.srcElement;
     52   var name = el.innerText.replace(":", "");
     53   var download_url_data = "application/octet-stream:" + name + ":" + el.href;
     54   e.dataTransfer.setData("DownloadURL", download_url_data);
     55   e.dataTransfer.effectAllowed = "copy";
     56 }
     57 
     58 function createCell(text) {
     59   var cell = document.createElement("td");
     60   cell.setAttribute("class", "detailsColumn");
     61   cell.innerText = text;
     62   return cell;
     63 }
     64 
     65 function start(location) {
     66   var header = document.getElementById("header");
     67   header.innerText = header.innerText.replace("LOCATION", location);
     68 
     69   document.getElementById("title").innerText = header.innerText;
     70 }
     71 
     72 function onListingParsingError() {
     73   var box = document.getElementById("listingParsingErrorBox");
     74   box.innerHTML = box.innerHTML.replace("LOCATION", encodeURI(document.location)
     75       + "?raw");
     76   box.style.display = "block";
     77 }
     78 </script>
     79 
     80 <style>
     81 
     82   h1 {
     83     border-bottom: 1px solid #c0c0c0;
     84     margin-bottom: 10px;
     85     padding-bottom: 10px;
     86     white-space: nowrap;
     87   }
     88 
     89   table {
     90     border-collapse: collapse;
     91   }
     92 
     93   tr.header {
     94     font-weight: bold;
     95   }
     96 
     97   td.detailsColumn {
     98     padding-left: 2em;
     99     text-align: right;
    100     white-space: nowrap;
    101   }
    102 
    103   a.icon {
    104     padding-left: 1.5em;
    105     text-decoration: none;
    106   }
    107 
    108   a.icon:hover {
    109     text-decoration: underline;
    110   }
    111 
    112   a.file {
    113     background : url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAAABnRSTlMAAAAAAABupgeRAAABHUlEQVR42o2RMW7DIBiF3498iHRJD5JKHurL+CRVBp+i2T16tTynF2gO0KSb5ZrBBl4HHDBuK/WXACH4eO9/CAAAbdvijzLGNE1TVZXfZuHg6XCAQESAZXbOKaXO57eiKG6ft9PrKQIkCQqFoIiQFBGlFIB5nvM8t9aOX2Nd18oDzjnPgCDpn/BH4zh2XZdlWVmWiUK4IgCBoFMUz9eP6zRN75cLgEQhcmTQIbl72O0f9865qLAAsURAAgKBJKEtgLXWvyjLuFsThCSstb8rBCaAQhDYWgIZ7myM+TUBjDHrHlZcbMYYk34cN0YSLcgS+wL0fe9TXDMbY33fR2AYBvyQ8L0Gk8MwREBrTfKe4TpTzwhArXWi8HI84h/1DfwI5mhxJamFAAAAAElFTkSuQmCC ") left top no-repeat;
    114   }
    115 
    116   a.dir {
    117     background : url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAd5JREFUeNqMU79rFUEQ/vbuodFEEkzAImBpkUabFP4ldpaJhZXYm/RiZWsv/hkWFglBUyTIgyAIIfgIRjHv3r39MePM7N3LcbxAFvZ2b2bn22/mm3XMjF+HL3YW7q28YSIw8mBKoBihhhgCsoORot9d3/ywg3YowMXwNde/PzGnk2vn6PitrT+/PGeNaecg4+qNY3D43vy16A5wDDd4Aqg/ngmrjl/GoN0U5V1QquHQG3q+TPDVhVwyBffcmQGJmSVfyZk7R3SngI4JKfwDJ2+05zIg8gbiereTZRHhJ5KCMOwDFLjhoBTn2g0ghagfKeIYJDPFyibJVBtTREwq60SpYvh5++PpwatHsxSm9QRLSQpEVSd7/TYJUb49TX7gztpjjEffnoVw66+Ytovs14Yp7HaKmUXeX9rKUoMoLNW3srqI5fWn8JejrVkK0QcrkFLOgS39yoKUQe292WJ1guUHG8K2o8K00oO1BTvXoW4yasclUTgZYJY9aFNfAThX5CZRmczAV52oAPoupHhWRIUUAOoyUIlYVaAa/VbLbyiZUiyFbjQFNwiZQSGl4IDy9sO5Wrty0QLKhdZPxmgGcDo8ejn+c/6eiK9poz15Kw7Dr/vN/z6W7q++091/AQYA5mZ8GYJ9K0AAAAAASUVORK5CYII= ") left top no-repeat;
    118   }
    119 
    120   a.up {
    121     background : url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAmlJREFUeNpsU0toU0EUPfPysx/tTxuDH9SCWhUDooIbd7oRUUTMouqi2iIoCO6lceHWhegy4EJFinWjrlQUpVm0IIoFpVDEIthm0dpikpf3ZuZ6Z94nrXhhMjM3c8895977BBHB2PznK8WPtDgyWH5q77cPH8PpdXuhpQT4ifR9u5sfJb1bmw6VivahATDrxcRZ2njfoaMv+2j7mLDn93MPiNRMvGbL18L9IpF8h9/TN+EYkMffSiOXJ5+hkD+PdqcLpICWHOHc2CC+LEyA/K+cKQMnlQHJX8wqYG3MAJy88Wa4OLDvEqAEOpJd0LxHIMdHBziowSwVlF8D6QaicK01krw/JynwcKoEwZczewroTvZirlKJs5CqQ5CG8pb57FnJUA0LYCXMX5fibd+p8LWDDemcPZbzQyjvH+Ki1TlIciElA7ghwLKV4kRZstt2sANWRjYTAGzuP2hXZFpJ/GsxgGJ0ox1aoFWsDXyyxqCs26+ydmagFN/rRjymJ1898bzGzmQE0HCZpmk5A0RFIv8Pn0WYPsiu6t/Rsj6PauVTwffTSzGAGZhUG2F06hEc9ibS7OPMNp6ErYFlKavo7MkhmTqCxZ/jwzGA9Hx82H2BZSw1NTN9Gx8ycHkajU/7M+jInsDC7DiaEmo1bNl1AMr9ASFgqVu9MCTIzoGUimXVAnnaN0PdBBDCCYbEtMk6wkpQwIG0sn0PQIUF4GsTwLSIFKNqF6DVrQq+IWVrQDxAYQC/1SsYOI4pOxKZrfifiUSbDUisif7XlpGIPufXd/uvdvZm760M0no1FZcnrzUdjw7au3vu/BVgAFLXeuTxhTXVAAAAAElFTkSuQmCC ") left top no-repeat;
    122   }
    123 
    124   #listingParsingErrorBox {
    125     border: 1px solid black;
    126     background: #fae691;
    127     padding: 10px;
    128     display: none;
    129   }
    130 </style>
    131 
    132 <title id="title"></title>
    133 
    134 </head>
    135 
    136 <body>
    137 
    138 <div id="listingParsingErrorBox" i18n-values=".innerHTML:listingParsingErrorBoxText"></div>
    139 
    140 <span id="parentDirText" style="display:none" i18n-content="parentDirText"></span>
    141 
    142 <h1 id="header" i18n-content="header"></h1>
    143 
    144 <table id="table">
    145   <tr class="header">
    146     <td i18n-content="headerName"></td>
    147     <td class="detailsColumn" i18n-content="headerSize"></td>
    148     <td class="detailsColumn" i18n-content="headerDateModified"></td>
    149   </tr>
    150 </table>
    151 
    152 </body>
    153 
    154 </html>
    155