| <!DOCTYPE html> | 
| <html> | 
|   <head> | 
|     <meta charset='utf-8'>  | 
|     <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no" /> | 
|     <title>listing directory {directory}</title> | 
|     <style>{style}</style> | 
|     <script> | 
|       function $(id){ | 
|         var el = 'string' == typeof id | 
|           ? document.getElementById(id) | 
|           : id; | 
|   | 
|         el.on = function(event, fn){ | 
|           if ('content loaded' == event) { | 
|             event = window.attachEvent ? "load" : "DOMContentLoaded"; | 
|           } | 
|           el.addEventListener | 
|             ? el.addEventListener(event, fn, false) | 
|             : el.attachEvent("on" + event, fn); | 
|         }; | 
|   | 
|         el.all = function(selector){ | 
|           return $(el.querySelectorAll(selector)); | 
|         }; | 
|   | 
|         el.each = function(fn){ | 
|           for (var i = 0, len = el.length; i < len; ++i) { | 
|             fn($(el[i]), i); | 
|           } | 
|         }; | 
|   | 
|         el.getClasses = function(){ | 
|           return this.getAttribute('class').split(/\s+/); | 
|         }; | 
|   | 
|         el.addClass = function(name){ | 
|           var classes = this.getAttribute('class'); | 
|           el.setAttribute('class', classes | 
|             ? classes + ' ' + name | 
|             : name); | 
|         }; | 
|   | 
|         el.removeClass = function(name){ | 
|           var classes = this.getClasses().filter(function(curr){ | 
|             return curr != name; | 
|           }); | 
|           this.setAttribute('class', classes.join(' ')); | 
|         }; | 
|   | 
|         return el; | 
|       } | 
|   | 
|       function search() { | 
|         var str = $('search').value.toLowerCase(); | 
|         var links = $('files').all('a'); | 
|   | 
|         links.each(function(link){ | 
|           var text = link.textContent.toLowerCase(); | 
|   | 
|           if ('..' == text) return; | 
|           if (str.length && ~text.indexOf(str)) { | 
|             link.addClass('highlight'); | 
|           } else { | 
|             link.removeClass('highlight'); | 
|           } | 
|         }); | 
|       } | 
|   | 
|       $(window).on('content loaded', function(){ | 
|         $('search').on('keyup', search); | 
|       }); | 
|     </script> | 
|   </head> | 
|   <body class="directory"> | 
|     <input id="search" type="text" placeholder="Search" autocomplete="off" /> | 
|     <div id="wrapper"> | 
|       <h1><a href="/">~</a>{linked-path}</h1> | 
|       {files} | 
|     </div> | 
|   </body> | 
| </html> |