mirror of
https://github.com/lrsjng/h5ai.git
synced 2025-06-08 10:32:23 -04:00
Some fixes.
This commit is contained in:
parent
8ee98ed7bd
commit
b7387adfc8
15 changed files with 94 additions and 80 deletions
4
.gitignore
vendored
4
.gitignore
vendored
|
@ -3,7 +3,9 @@
|
||||||
bin
|
bin
|
||||||
build
|
build
|
||||||
#target
|
#target
|
||||||
build.local.xml
|
|
||||||
|
build.local.*
|
||||||
|
|
||||||
|
|
||||||
# Eclipse
|
# Eclipse
|
||||||
.classpath
|
.classpath
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
# h5ai v0.5.1   ·   a beautified Apache index
|
# h5ai v0.5.2   ·   a beautified Apache index
|
||||||
|
|
||||||
|
|
||||||
## Screenshots
|
## Screenshots
|
||||||
|
@ -47,6 +47,13 @@ please respect their rights.
|
||||||
|
|
||||||
## Changelog
|
## Changelog
|
||||||
|
|
||||||
|
### v0.5.2
|
||||||
|
*2011-07-02*
|
||||||
|
|
||||||
|
* details view adjusts to window width
|
||||||
|
* linked icon for *.gz and *.bz2
|
||||||
|
|
||||||
|
|
||||||
### v0.5.1
|
### v0.5.1
|
||||||
*2011-07-01*
|
*2011-07-01*
|
||||||
|
|
||||||
|
|
|
@ -3,7 +3,7 @@ custom = true
|
||||||
|
|
||||||
# project
|
# project
|
||||||
project.name = h5ai
|
project.name = h5ai
|
||||||
project.version = 0.5.1
|
project.version = 0.5.2
|
||||||
|
|
||||||
|
|
||||||
# src
|
# src
|
||||||
|
|
|
@ -8,14 +8,16 @@
|
||||||
# Options +FollowSymLinks
|
# Options +FollowSymLinks
|
||||||
|
|
||||||
|
|
||||||
################################
|
|
||||||
# cache images for 52 weeks
|
|
||||||
################################
|
|
||||||
|
|
||||||
<IfModule mod_headers.c>
|
<IfModule mod_headers.c>
|
||||||
|
|
||||||
|
################################
|
||||||
|
# cache images for 52 weeks
|
||||||
|
################################
|
||||||
|
|
||||||
<FilesMatch "\.png$">
|
<FilesMatch "\.png$">
|
||||||
Header set Cache-Control "max-age=31449600, public"
|
Header set Cache-Control "max-age=31449600, public"
|
||||||
</FilesMatch>
|
</FilesMatch>
|
||||||
|
|
||||||
</IfModule>
|
</IfModule>
|
||||||
|
|
||||||
|
|
||||||
|
@ -54,6 +56,7 @@
|
||||||
|
|
||||||
IndexOrderDefault Ascending Name
|
IndexOrderDefault Ascending Name
|
||||||
|
|
||||||
|
IndexOptions Type=text/html;h5ai=%BUILD_VERSION%
|
||||||
IndexOptions Charset=UTF-8
|
IndexOptions Charset=UTF-8
|
||||||
IndexOptions FancyIndexing
|
IndexOptions FancyIndexing
|
||||||
IndexOptions HTMLTable
|
IndexOptions HTMLTable
|
||||||
|
@ -87,9 +90,9 @@
|
||||||
AddIcon /h5ai/icons/16x16/makefile.png .pom pom.xml build.xml
|
AddIcon /h5ai/icons/16x16/makefile.png .pom pom.xml build.xml
|
||||||
AddIcon /h5ai/icons/16x16/bin.png .so .o
|
AddIcon /h5ai/icons/16x16/bin.png .so .o
|
||||||
|
|
||||||
AddIcon /h5ai/icons/16x16/zip.png .zip .Z .z .jar .war
|
|
||||||
AddIcon /h5ai/icons/16x16/tar.png .tar
|
|
||||||
AddIcon /h5ai/icons/16x16/archive.png .tar.gz .tgz .tar.bz2
|
AddIcon /h5ai/icons/16x16/archive.png .tar.gz .tgz .tar.bz2
|
||||||
|
AddIcon /h5ai/icons/16x16/zip.png .zip .Z .z .jar .war .gz .bz2
|
||||||
|
AddIcon /h5ai/icons/16x16/tar.png .tar
|
||||||
AddIcon /h5ai/icons/16x16/pdf.png .pdf
|
AddIcon /h5ai/icons/16x16/pdf.png .pdf
|
||||||
AddIcon /h5ai/icons/16x16/deb.png .deb
|
AddIcon /h5ai/icons/16x16/deb.png .deb
|
||||||
AddIcon /h5ai/icons/16x16/rpm.png .rpm
|
AddIcon /h5ai/icons/16x16/rpm.png .rpm
|
||||||
|
|
|
@ -8,6 +8,7 @@
|
||||||
list-style: none;
|
list-style: none;
|
||||||
|
|
||||||
li {
|
li {
|
||||||
|
position: relative;
|
||||||
white-space: nowrap;
|
white-space: nowrap;
|
||||||
clear: both;
|
clear: both;
|
||||||
|
|
||||||
|
@ -45,17 +46,16 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
.icon, .label, .date, .size {
|
.icon, .label, .date, .size {
|
||||||
display: inline-block;
|
padding: 6px;
|
||||||
padding: 3px 6px 6px 6px;
|
|
||||||
text-align: left;
|
|
||||||
}
|
}
|
||||||
.icon {
|
.icon {
|
||||||
text-align: center;
|
display: inline-block;
|
||||||
|
position: absolute;
|
||||||
|
left: 0;
|
||||||
|
top: 2px;
|
||||||
width: 16px;
|
width: 16px;
|
||||||
//float: left;
|
|
||||||
|
|
||||||
img {
|
img {
|
||||||
padding-top: 4px;
|
|
||||||
width: 16px;
|
width: 16px;
|
||||||
height: 16px;
|
height: 16px;
|
||||||
}
|
}
|
||||||
|
@ -64,22 +64,27 @@
|
||||||
display: none;
|
display: none;
|
||||||
}
|
}
|
||||||
.label {
|
.label {
|
||||||
width: 682px;
|
display: block;
|
||||||
|
margin: 0 220px 0 24px;
|
||||||
|
overflow: hidden;
|
||||||
white-space: nowrap;
|
white-space: nowrap;
|
||||||
//word-wrap: break-word;
|
text-align: left;
|
||||||
//float: left;
|
|
||||||
}
|
}
|
||||||
.date {
|
.date {
|
||||||
|
position: absolute;
|
||||||
|
right: 70px;
|
||||||
|
top: 0;
|
||||||
text-align: right;
|
text-align: right;
|
||||||
width: 160px;
|
width: 140px;
|
||||||
white-space: nowrap;
|
white-space: nowrap;
|
||||||
//float: right;
|
|
||||||
}
|
}
|
||||||
.size {
|
.size {
|
||||||
|
position: absolute;
|
||||||
|
right: 0;
|
||||||
|
top: 0;
|
||||||
text-align: right;
|
text-align: right;
|
||||||
width: 70px;
|
width: 50px;
|
||||||
white-space: nowrap;
|
white-space: nowrap;
|
||||||
//float: right;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -11,7 +11,7 @@
|
||||||
<img class="techclass" src="/h5ai/images/html5-storage.png" alt="html5-storage" />
|
<img class="techclass" src="/h5ai/images/html5-storage.png" alt="html5-storage" />
|
||||||
<img class="techclass" src="/h5ai/images/html5-css3.png" alt="html5-css3" />
|
<img class="techclass" src="/h5ai/images/html5-css3.png" alt="html5-css3" />
|
||||||
</a>
|
</a>
|
||||||
<a href="http://larsjung.de/h5ai" target="_blank" title="%BUILD_NAME% %BUILD_VERSION%">h5ai</a>
|
<a href="http://larsjung.de/h5ai" target="_blank" title="h5ai %BUILD_VERSION%">h5ai</a>
|
||||||
using
|
using
|
||||||
<a href="http://tiheum.deviantart.com/art/Faenza-Icons-173323228" target="_blank" title="icon theme for Gnome">Faenza icons</a>
|
<a href="http://tiheum.deviantart.com/art/Faenza-Icons-173323228" target="_blank" title="icon theme for Gnome">Faenza icons</a>
|
||||||
</footer>
|
</footer>
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
<head>
|
<head>
|
||||||
<meta charset="utf-8">
|
<meta charset="utf-8">
|
||||||
<title>Directory index · styled with h5ai</title>
|
<title>Directory index · styled with h5ai</title>
|
||||||
<meta name="h5ai-version" content="%BUILD_NAME% %BUILD_VERSION%">
|
<meta name="h5ai-version" content="h5ai %BUILD_VERSION%">
|
||||||
<meta name="description" content="Directory index styled with h5ai (http://larsjung.de/h5ai)">
|
<meta name="description" content="Directory index styled with h5ai (http://larsjung.de/h5ai)">
|
||||||
<meta name="keywords" content="directory, index, autoindex, h5ai">
|
<meta name="keywords" content="directory, index, autoindex, h5ai">
|
||||||
<link rel="shortcut icon" type="image/png" href="/h5ai/images/h5ai-16x16.png">
|
<link rel="shortcut icon" type="image/png" href="/h5ai/images/h5ai-16x16.png">
|
||||||
|
|
|
@ -256,7 +256,6 @@
|
||||||
// in case of floats
|
// in case of floats
|
||||||
$( "#extended" ).append( $( "<div class='clearfix' />" ) );
|
$( "#extended" ).append( $( "<div class='clearfix' />" ) );
|
||||||
|
|
||||||
|
|
||||||
// click callbacks
|
// click callbacks
|
||||||
$( "#extended .entry.folder" )
|
$( "#extended .entry.folder" )
|
||||||
.click( function() {
|
.click( function() {
|
||||||
|
@ -269,7 +268,6 @@
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/*******************************
|
/*******************************
|
||||||
* init views
|
* init views
|
||||||
*******************************/
|
*******************************/
|
||||||
|
|
|
@ -10,7 +10,7 @@
|
||||||
$( function() {
|
$( function() {
|
||||||
|
|
||||||
window.setTimeout( function() {
|
window.setTimeout( function() {
|
||||||
// $.h5aiTree = new H5aiTree();
|
$.h5aiTree = new H5aiTree();
|
||||||
}, 1 );
|
}, 1 );
|
||||||
} );
|
} );
|
||||||
|
|
||||||
|
@ -18,9 +18,9 @@
|
||||||
H5aiTree = function ( options ) {
|
H5aiTree = function ( options ) {
|
||||||
|
|
||||||
|
|
||||||
var h5aiMetaRegEx = /<meta name="h5ai-version"/;
|
|
||||||
var folderRegEx = /\/$/;
|
var folderRegEx = /\/$/;
|
||||||
var pathnameRegEx = /^(\/(.*\/)*)([^\/]+\/?)$/;
|
var pathnameRegEx = /^(\/(.*\/)*)([^\/]+\/?)$/;
|
||||||
|
var contentTypeRegEx = /^text\/html;h5ai=/;
|
||||||
|
|
||||||
|
|
||||||
function init() {
|
function init() {
|
||||||
|
@ -156,54 +156,50 @@
|
||||||
|
|
||||||
function fetchEntries( pathname, includeParent, callback ) {
|
function fetchEntries( pathname, includeParent, callback ) {
|
||||||
|
|
||||||
$.ajax( {
|
checkPathname( pathname, function ( status ) {
|
||||||
url: pathname,
|
console.log( "checkPathname", pathname, status );
|
||||||
type: "GET",
|
if ( status !== 0 ) {
|
||||||
dataType: "html",
|
callback( status );
|
||||||
error: function ( xhr ) {
|
} else {
|
||||||
|
$.ajax( {
|
||||||
callback( xhr.status );
|
url: pathname,
|
||||||
},
|
type: "GET",
|
||||||
success: function ( html ) {
|
dataType: "html",
|
||||||
|
error: function ( xhr ) {
|
||||||
if ( ! h5aiMetaRegEx.test( html ) ) {
|
// since it was checked before this should never happen
|
||||||
callback( 200 );
|
callback( xhr.status );
|
||||||
} else {
|
},
|
||||||
var entries = [];
|
success: function ( html, status, xhr ) {
|
||||||
$( html ).find( "#table table td" ).closest( "tr" ).each( function () {
|
if ( !contentTypeRegEx.test( xhr.getResponseHeader( "Content-Type" ) ) ) {
|
||||||
var entry = new Entry( pathname, this );
|
// since it was checked before this should never happen
|
||||||
if ( !entry.isParentFolder || includeParent ) {
|
callback( xhr.status );
|
||||||
entries.push( entry );
|
} else {
|
||||||
|
var entries = [];
|
||||||
|
$( html ).find( "#table table td" ).closest( "tr" ).each( function () {
|
||||||
|
var entry = new Entry( pathname, this );
|
||||||
|
if ( !entry.isParentFolder || includeParent ) {
|
||||||
|
entries.push( entry );
|
||||||
|
};
|
||||||
|
} );
|
||||||
|
callback( entries );
|
||||||
};
|
};
|
||||||
} );
|
}
|
||||||
callback( entries );
|
} );
|
||||||
};
|
};
|
||||||
}
|
|
||||||
} );
|
} );
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
/*
|
|
||||||
* Checks pathname for accessibility.
|
|
||||||
* Calls callback with argument 0 if pathname is a h5ai styled directory.
|
|
||||||
* Otherwise it returns the http response status.
|
|
||||||
*/
|
|
||||||
function checkPathname( pathname, callback ) {
|
function checkPathname( pathname, callback ) {
|
||||||
|
|
||||||
$.ajax( {
|
$.ajax( {
|
||||||
url: pathname,
|
url: pathname,
|
||||||
type: "GET",
|
type: "HEAD",
|
||||||
dataType: "html",
|
complete: function ( xhr ) {
|
||||||
error: function ( xhr ) {
|
if ( xhr.status === 200 && contentTypeRegEx.test( xhr.getResponseHeader( "Content-Type" ) ) ) {
|
||||||
|
|
||||||
callback( xhr.status );
|
|
||||||
},
|
|
||||||
success: function ( html ) {
|
|
||||||
|
|
||||||
if ( h5aiMetaRegEx.test( html ) ) {
|
|
||||||
callback( 0 );
|
callback( 0 );
|
||||||
} else {
|
} else {
|
||||||
callback( 200 );
|
callback( xhr.status );
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
} );
|
} );
|
||||||
|
@ -220,7 +216,7 @@
|
||||||
var $tds = $( tableRow ).find( "td" );
|
var $tds = $( tableRow ).find( "td" );
|
||||||
var $img = $( $tds.get( 0 ) ).find( "img" );
|
var $img = $( $tds.get( 0 ) ).find( "img" );
|
||||||
var $a= $( $tds.get( 1 ) ).find( "a" );
|
var $a= $( $tds.get( 1 ) ).find( "a" );
|
||||||
|
|
||||||
this.parentFolder = folder;
|
this.parentFolder = folder;
|
||||||
this.icon16 = $img.attr( "src" );
|
this.icon16 = $img.attr( "src" );
|
||||||
this.alt = $img.attr( "alt" );
|
this.alt = $img.attr( "alt" );
|
||||||
|
@ -251,7 +247,7 @@
|
||||||
|
|
||||||
|
|
||||||
this.isComplete = function () {
|
this.isComplete = function () {
|
||||||
|
|
||||||
if ( this.isFolder ) {
|
if ( this.isFolder ) {
|
||||||
if ( this.content === undefined ) {
|
if ( this.content === undefined ) {
|
||||||
return false;
|
return false;
|
||||||
|
@ -268,7 +264,7 @@
|
||||||
|
|
||||||
|
|
||||||
this.toHtml = function () {
|
this.toHtml = function () {
|
||||||
|
|
||||||
var $entry = $( "<div class='entry' />" );
|
var $entry = $( "<div class='entry' />" );
|
||||||
|
|
||||||
try {
|
try {
|
||||||
|
|
|
@ -1,3 +1,3 @@
|
||||||
// @include "inc/jquery.json.min.js"
|
// @include "inc/jquery.json.min.js"
|
||||||
// @include "inc/h5ai.js"
|
// @include "inc/h5ai.js"
|
||||||
// @include "inc/h5aitree.js"
|
// #not#include "inc/h5aitree.js"
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
################################
|
################################
|
||||||
# h5ai 0.5.1
|
# h5ai 0.5.2
|
||||||
# customized .htaccess
|
# customized .htaccess
|
||||||
################################
|
################################
|
||||||
|
|
||||||
|
@ -8,14 +8,16 @@
|
||||||
# Options +FollowSymLinks
|
# Options +FollowSymLinks
|
||||||
|
|
||||||
|
|
||||||
################################
|
|
||||||
# cache images for 52 weeks
|
|
||||||
################################
|
|
||||||
|
|
||||||
<IfModule mod_headers.c>
|
<IfModule mod_headers.c>
|
||||||
|
|
||||||
|
################################
|
||||||
|
# cache images for 52 weeks
|
||||||
|
################################
|
||||||
|
|
||||||
<FilesMatch "\.png$">
|
<FilesMatch "\.png$">
|
||||||
Header set Cache-Control "max-age=31449600, public"
|
Header set Cache-Control "max-age=31449600, public"
|
||||||
</FilesMatch>
|
</FilesMatch>
|
||||||
|
|
||||||
</IfModule>
|
</IfModule>
|
||||||
|
|
||||||
|
|
||||||
|
@ -54,6 +56,7 @@
|
||||||
|
|
||||||
IndexOrderDefault Ascending Name
|
IndexOrderDefault Ascending Name
|
||||||
|
|
||||||
|
IndexOptions Type=text/html;h5ai=0.5.2
|
||||||
IndexOptions Charset=UTF-8
|
IndexOptions Charset=UTF-8
|
||||||
IndexOptions FancyIndexing
|
IndexOptions FancyIndexing
|
||||||
IndexOptions HTMLTable
|
IndexOptions HTMLTable
|
||||||
|
@ -87,9 +90,9 @@
|
||||||
AddIcon /h5ai/icons/16x16/makefile.png .pom pom.xml build.xml
|
AddIcon /h5ai/icons/16x16/makefile.png .pom pom.xml build.xml
|
||||||
AddIcon /h5ai/icons/16x16/bin.png .so .o
|
AddIcon /h5ai/icons/16x16/bin.png .so .o
|
||||||
|
|
||||||
AddIcon /h5ai/icons/16x16/zip.png .zip .Z .z .jar .war
|
|
||||||
AddIcon /h5ai/icons/16x16/tar.png .tar
|
|
||||||
AddIcon /h5ai/icons/16x16/archive.png .tar.gz .tgz .tar.bz2
|
AddIcon /h5ai/icons/16x16/archive.png .tar.gz .tgz .tar.bz2
|
||||||
|
AddIcon /h5ai/icons/16x16/zip.png .zip .Z .z .jar .war .gz .bz2
|
||||||
|
AddIcon /h5ai/icons/16x16/tar.png .tar
|
||||||
AddIcon /h5ai/icons/16x16/pdf.png .pdf
|
AddIcon /h5ai/icons/16x16/pdf.png .pdf
|
||||||
AddIcon /h5ai/icons/16x16/deb.png .deb
|
AddIcon /h5ai/icons/16x16/deb.png .deb
|
||||||
AddIcon /h5ai/icons/16x16/rpm.png .rpm
|
AddIcon /h5ai/icons/16x16/rpm.png .rpm
|
||||||
|
|
File diff suppressed because one or more lines are too long
|
@ -11,7 +11,7 @@
|
||||||
<img class="techclass" src="/h5ai/images/html5-storage.png" alt="html5-storage" />
|
<img class="techclass" src="/h5ai/images/html5-storage.png" alt="html5-storage" />
|
||||||
<img class="techclass" src="/h5ai/images/html5-css3.png" alt="html5-css3" />
|
<img class="techclass" src="/h5ai/images/html5-css3.png" alt="html5-css3" />
|
||||||
</a>
|
</a>
|
||||||
<a href="http://larsjung.de/h5ai" target="_blank" title="h5ai 0.5.1">h5ai</a>
|
<a href="http://larsjung.de/h5ai" target="_blank" title="h5ai 0.5.2">h5ai</a>
|
||||||
using
|
using
|
||||||
<a href="http://tiheum.deviantart.com/art/Faenza-Icons-173323228" target="_blank" title="icon theme for Gnome">Faenza icons</a>
|
<a href="http://tiheum.deviantart.com/art/Faenza-Icons-173323228" target="_blank" title="icon theme for Gnome">Faenza icons</a>
|
||||||
</footer>
|
</footer>
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
<head>
|
<head>
|
||||||
<meta charset="utf-8">
|
<meta charset="utf-8">
|
||||||
<title>Directory index · styled with h5ai</title>
|
<title>Directory index · styled with h5ai</title>
|
||||||
<meta name="h5ai-version" content="h5ai 0.5.1">
|
<meta name="h5ai-version" content="h5ai 0.5.2">
|
||||||
<meta name="description" content="Directory index styled with h5ai (http://larsjung.de/h5ai)">
|
<meta name="description" content="Directory index styled with h5ai (http://larsjung.de/h5ai)">
|
||||||
<meta name="keywords" content="directory, index, autoindex, h5ai">
|
<meta name="keywords" content="directory, index, autoindex, h5ai">
|
||||||
<link rel="shortcut icon" type="image/png" href="/h5ai/images/h5ai-16x16.png">
|
<link rel="shortcut icon" type="image/png" href="/h5ai/images/h5ai-16x16.png">
|
||||||
|
|
File diff suppressed because one or more lines are too long
Loading…
Add table
Add a link
Reference in a new issue