Compare commits
256 Commits
Author | SHA1 | Date | |
---|---|---|---|
|
bdb8c3f099 | ||
|
bc945895cf | ||
|
aa9ed865f6 | ||
|
a8a6871ebd | ||
|
61ae46386e | ||
|
219234dfdd | ||
|
c29b681c1b | ||
|
8c2c02fe82 | ||
|
9c1142bd02 | ||
|
298d2e2efd | ||
|
d4a213beac | ||
|
0f948a56d8 | ||
|
a8e0474cca | ||
|
725cb1a6b8 | ||
|
a0a8882db7 | ||
|
f366779f7b | ||
|
90b0b97e22 | ||
|
974392d2eb | ||
|
2bcf6593a9 | ||
|
a6fdf653a1 | ||
|
0ff3d900fe | ||
|
ce75e45b03 | ||
|
a3c68c61f8 | ||
|
38011bd9a7 | ||
|
f5e7b10d94 | ||
|
7ad5958487 | ||
|
695d5148bb | ||
|
87103f1c3f | ||
|
77f301057b | ||
|
9e6c612513 | ||
|
eaf6ad3fcb | ||
|
e25e5b72f4 | ||
|
65b1823c5d | ||
|
8682e202a9 | ||
|
3349108f7e | ||
|
050d91daa8 | ||
|
a4c81135d5 | ||
|
30d48fb1ef | ||
|
f65f5021ae | ||
|
8273f0ded0 | ||
|
07e8c67338 | ||
|
162f32f5b8 | ||
|
68497e749b | ||
|
8fea7bfb74 | ||
|
7e6549faee | ||
|
4724214b9e | ||
|
1828855f63 | ||
|
17c31fc9d9 | ||
|
b6d6bf8ba7 | ||
|
2282a0ba71 | ||
|
864687aedf | ||
|
93d13d6177 | ||
|
74450a252a | ||
|
87f9ada878 | ||
|
f6d24d050f | ||
|
64640ada83 | ||
|
018a574d5e | ||
|
52ffd8720a | ||
|
a7ffda422b | ||
|
e870292878 | ||
|
875b4fbe0e | ||
|
d47b996c9f | ||
|
84a2ed582f | ||
|
cad50f76e2 | ||
|
9266be9708 | ||
|
76e89820eb | ||
|
bd76573401 | ||
|
6c3f271a3e | ||
|
85f0af61d0 | ||
|
3d06b0b81a | ||
|
09c8cf04af | ||
|
387ded1033 | ||
|
4cb9967b39 | ||
|
faf1ce0bcf | ||
|
ce3ef3a195 | ||
|
ade6cf8e0b | ||
|
de92767e5a | ||
|
e67c854cb5 | ||
|
cc06b07d52 | ||
|
71ed41fa69 | ||
|
859a680e19 | ||
|
240adb79eb | ||
|
4a530f5ec0 | ||
|
eb7f3878b1 | ||
|
972be7677c | ||
|
0d22407a2d | ||
|
c173d74d06 | ||
|
eda1a3b6ac | ||
|
e4b6bace43 | ||
|
908848bfc7 | ||
|
764bc0034c | ||
|
c2e76dee24 | ||
|
81cce9e07c | ||
|
cdb9157cd1 | ||
|
f34de37913 | ||
|
3f0327ff1d | ||
|
998d3f30c6 | ||
|
0eda3f3701 | ||
|
db4bfec2dd | ||
|
a796bd606f | ||
|
1152c00018 | ||
|
194a202a0b | ||
|
fbff8686bf | ||
|
b1f6bd0d67 | ||
|
89a85c0dd2 | ||
|
18181edad9 | ||
|
db946f2812 | ||
|
833a8ed13f | ||
|
51c5eb53e7 | ||
|
3e318e43e8 | ||
|
d4c80612dc | ||
|
13693a4f3b | ||
|
1f1a6938ba | ||
|
a45725052b | ||
|
d90f7f33f7 | ||
|
f917f3b570 | ||
|
4be6e0f4c3 | ||
|
ad82ecad6f | ||
|
14db2a2db7 | ||
|
e1c7e3da59 | ||
|
6bbf0604b8 | ||
|
16d4aa3aa9 | ||
|
796fc75533 | ||
|
cc13005a1d | ||
|
cdb0f9035d | ||
|
041c172a55 | ||
|
08cc2834df | ||
|
997f1cd80f | ||
|
7c1feaebc0 | ||
|
f1175f5149 | ||
|
556d206ab8 | ||
|
bfebcb3bcd | ||
|
32023fc86e | ||
|
78dc01d5b3 | ||
|
4e90a41614 | ||
|
1b0c9d81ac | ||
|
84f543aca5 | ||
|
749a87eaf7 | ||
|
6901044518 | ||
|
b39fbb8dc0 | ||
|
d7b3bd79f8 | ||
|
c8d079b826 | ||
|
8ee901517b | ||
|
6bfbdb4d05 | ||
|
bc6e9fb150 | ||
|
f51a0b80a7 | ||
|
d56d0716cb | ||
|
42d3dfe80e | ||
|
1a8ef62188 | ||
|
ecf91b506e | ||
|
ca4d3ae315 | ||
|
ba12154566 | ||
|
ba3e61c1d0 | ||
|
9f10e92175 | ||
|
d72ea22fb0 | ||
|
76f107cbfe | ||
|
cbdd185602 | ||
|
20858a1f43 | ||
|
231ba3013b | ||
|
47b6260186 | ||
|
8308c70f90 | ||
|
3baab50953 | ||
|
4e4e654467 | ||
|
ff32e198a6 | ||
|
ebec62adac | ||
|
74d967a27a | ||
|
6a5c35ad9a | ||
|
4901034721 | ||
|
8b1d6b9ef7 | ||
|
0fcd4e9709 | ||
|
4a65ce61df | ||
|
3c23c7e956 | ||
|
caced60eaa | ||
|
4c1ed3d1e8 | ||
|
8670b248a9 | ||
|
7f46dceba0 | ||
|
a95aef17be | ||
|
e8dcb83d92 | ||
|
03de1d9472 | ||
|
5e486e0aa2 | ||
|
a8f62f187c | ||
|
8e21a3c038 | ||
|
df30c67ade | ||
|
2d3b0eed4f | ||
|
a371ee2afd | ||
|
480c4aab79 | ||
|
745bff09cb | ||
|
7d6ced78da | ||
|
b9835ebaad | ||
|
8da046d550 | ||
|
e5b7ee6125 | ||
|
e70d9029d2 | ||
|
b561082bca | ||
|
ae464169a6 | ||
|
0f681930b3 | ||
|
5db74d054f | ||
|
2e179df6e5 | ||
|
8aed077297 | ||
|
89fd74c4ab | ||
|
5708b2e38e | ||
|
2407cd50ce | ||
|
fbcb8cb5e8 | ||
|
d822eb63e2 | ||
|
5245b131b8 | ||
|
0293d54789 | ||
|
0d4edcb047 | ||
|
a339814582 | ||
|
8eac4ca133 | ||
|
e4646734f2 | ||
|
e54abe08ca | ||
|
faaddd8d60 | ||
|
d599425452 | ||
|
3e6197d2fc | ||
|
ecf93da505 | ||
|
e91a127771 | ||
|
b8fba3ac8e | ||
|
b7387adfc8 | ||
|
8ee98ed7bd | ||
|
067e0970f8 | ||
|
13ddb670b8 | ||
|
ed1a19dd5c | ||
|
c06bfea09b | ||
|
e3da1c2603 | ||
|
e14787e258 | ||
|
4fd85accef | ||
|
177dade3a5 | ||
|
a529a32d3a | ||
|
4f09cbf00e | ||
|
e07f05864c | ||
|
b07d702896 | ||
|
ea716b36aa | ||
|
81ec9b2743 | ||
|
ccb26f4774 | ||
|
31bf39bb45 | ||
|
32ec4f5b5e | ||
|
4da215fc68 | ||
|
d37ff20f67 | ||
|
df947590f6 | ||
|
7602ab55d7 | ||
|
ff2bddf826 | ||
|
58639ce621 | ||
|
e5ca966266 | ||
|
9e521a188d | ||
|
490fe36947 | ||
|
c045f0dc77 | ||
|
657f280826 | ||
|
bf57f4535c | ||
|
0e5802f0d7 | ||
|
9ca2b61a9c | ||
|
eb20529d08 | ||
|
1c9cb5def4 | ||
|
3576db818b | ||
|
9b3575ee78 | ||
|
76855274ad | ||
|
2d9cdac8a4 | ||
|
0eca53c3e5 |
6
.gitignore
vendored
Normal file
@@ -0,0 +1,6 @@
|
||||
|
||||
build
|
||||
local
|
||||
*.sublime-*
|
||||
|
||||
test
|
19
LICENSE.txt
Normal file
@@ -0,0 +1,19 @@
|
||||
Copyright (c) 2012 Lars Jung, http://larsjung.de
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy of
|
||||
this software and associated documentation files (the "Software"), to deal in
|
||||
the Software without restriction, including without limitation the rights to
|
||||
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
|
||||
of the Software, and to permit persons to whom the Software is furnished to do
|
||||
so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.
|
374
README.md
@@ -1,31 +1,369 @@
|
||||
h5ai - a beautified Apache index
|
||||
================================
|
||||
# h5ai
|
||||
|
||||
Screenshot
|
||||
----------
|
||||
Please don't use files from the `src` folder for installation.
|
||||
They need to be preprocessed to work correctly. You'll find a preprocessed
|
||||
package on the [project page](http://larsjung.de/h5ai/).
|
||||
|
||||

|
||||
* to report a bug or make a feature request please create [a new issue](http://github.com/lrsjng/h5ai/issues/new) on GitHub
|
||||
* website with download, docs and demo: <http://larsjung.de/h5ai>
|
||||
* sources: <http://github.com/lrsjng/h5ai>
|
||||
|
||||
compare it to the built in index
|
||||
|
||||

|
||||
h5ai is provided under the terms of the [MIT License](http://github.com/lrsjng/h5ai/blob/master/LICENSE.txt).
|
||||
It profits from these great projects:
|
||||
[AmplifyJS](http://amplifyjs.com) (MIT/GPL),
|
||||
[Faenza icon set](http://tiheum.deviantart.com/art/Faenza-Icons-173323228) (GPL),
|
||||
[HTML5 ★ Boilerplate](http://html5boilerplate.com),
|
||||
[jQuery](http://jquery.com) (MIT/GPL),
|
||||
[jQuery.fracs](http://larsjung.de/fracs/) (MIT),
|
||||
[jQuery.mousewheel](http://github.com/brandonaaron/jquery-mousewheel) (MIT),
|
||||
[jQuery.qrcode](http://larsjung.de/qrcode/) (MIT),
|
||||
[jQuery.scrollpanel](http://larsjung.de/scrollpanel/) (MIT),
|
||||
[markdown-js](http://github.com/evilstreak/markdown-js) (MIT),
|
||||
[Modernizr](http://www.modernizr.com) (MIT/BSD),
|
||||
[modulejs](http://larsjung.de/modulejs/) (MIT),
|
||||
[Moment.js](http://momentjs.com) (MIT),
|
||||
[SyntaxHighlighter](http://alexgorbatchev.com/SyntaxHighlighter/) (MIT/GPL),
|
||||
[Underscore.js](http://underscorejs.org) (MIT)
|
||||
|
||||
|
||||
Install
|
||||
-------
|
||||
## Build
|
||||
|
||||
* copy the `h5ai` folder to the web-root directory of your server
|
||||
* add the content of file `dot-htaccess` to the `.htaccess` file in the directory
|
||||
you want to be indexed (you might have to create this file)
|
||||
A prebuilt package can be found on the [project page](http://larsjung.de/h5ai/). If you want to build
|
||||
h5ai yourself you need to install [fQuery](http://larsjung.de/fquery/) first:
|
||||
|
||||
> npm install -g fquery
|
||||
|
||||
License
|
||||
-------
|
||||
To build the project run the following command inside the project's root directory
|
||||
|
||||
This project is licensed under the [CC BY-SA 3.0 License](http://creativecommons.org/licenses/by-sa/3.0/)
|
||||
> makejs
|
||||
|
||||
It is based on the awesome [HTML5 Boilerplate](http://html5boilerplate.com) and the beautiful
|
||||
[Faenza icon set](http://tiheum.deviantart.com/art/Faenza-Icons-173323228), please respect their rights.
|
||||
Run `makejs -t` to list all possible targets.
|
||||
|
||||
|
||||
|
||||
## Changelog
|
||||
|
||||
### v0.21 - *2012-08-06*
|
||||
|
||||
* fixes misaligned image previews
|
||||
* adds no JavaScript fallback to PHP version
|
||||
* fixes duplicate tree entries and empty main views
|
||||
* adds Google Analytics support (async)
|
||||
* improves filter (now ignorecase, now only checks if chars in right order)
|
||||
* adds keyboard support to image preview (space, enter, backspace, left, right, up, down, f, esc)
|
||||
* adds text file preview and highlighting with [SyntaxHighlighter](http://alexgorbatchev.com/SyntaxHighlighter/) (same keys as img preview)
|
||||
* adds Markdown preview with [markdown-js](http://github.com/evilstreak/markdown-js)
|
||||
* adds new type `markdown`
|
||||
* changes language code `gr` to `el`
|
||||
* adds localization for filter placeholder
|
||||
* adds `hu` translation by [Rodolffo](http://github.com/Rodolffo)
|
||||
* updates to [jQuery.qrcode](http://larsjung.de/qrcode/) 0.2
|
||||
* updates to [jQuery.scrollpanel](http://larsjung.de/scrollpanel/) 0.1
|
||||
* updates to [modulejs](http://larsjung.de/modulejs/) 0.2
|
||||
* updates to [Moment.js](http://momentjs.com) 1.7.0
|
||||
* updates to [Underscore.js](http://underscorejs.org) 1.3.3
|
||||
|
||||
|
||||
### v0.20 - *2012-05-11*
|
||||
|
||||
* adds image preview
|
||||
* adds thumbnails for video and pdf
|
||||
* adds support for lighttpd, nginx and cherokee and maybe other webservers with PHP
|
||||
* adds folder size in PHP version via shell `du`
|
||||
* fixes some localization problems
|
||||
* updates info page at `/_h5ai/`
|
||||
* switches to JSHint
|
||||
|
||||
|
||||
### v0.19 - *2012-04-19*
|
||||
|
||||
* adds lots of config options
|
||||
* changes in `config.js` and `h5ai.htaccess`
|
||||
* fixes js problems in IE 7+8
|
||||
* hides broken tree view in IE < 9, adds a message to the footer
|
||||
* removes hash changes since they break logical browser history
|
||||
* fixes thumbnail size for portrait images in icon view
|
||||
* fixes problems with file type recognition
|
||||
* adds an info page at `/_h5ai/`
|
||||
* sort order is preserved while browsing
|
||||
* removes PHP error messages on thumbnail generation
|
||||
* fixes PHP some problems with packed download
|
||||
* adds support for tarred downloads
|
||||
* changes crumb image for folders with an index file
|
||||
* adds `index.php` to use h5ai in non-Apache environments
|
||||
* switches from [Datejs](http://www.datejs.com) to [Moment.js](http://momentjs.com)
|
||||
* adds [underscore.js](http://underscorejs.org)
|
||||
* fixes mousewheel problems, updates [jQuery.mousewheel](http://github.com/brandonaaron/jquery-mousewheel) to 3.0.6
|
||||
* updates `lv` translation
|
||||
* adds `ro` translation by [Jakob Cosoroabă](http://github.com/midday)
|
||||
* adds `ja` translation by [metasta](http://github.com/metasta)
|
||||
* adds `nb` translation by [Sindre Sorhus](http://github.com/sindresorhus)
|
||||
* adds `sr` translation by [vBm](http://github.com/vBm)
|
||||
* adds `gr` translation by [xhmikosr](http://github.com/xhmikosr)
|
||||
|
||||
|
||||
### v0.18 - *2012-02-24*
|
||||
|
||||
* adds optional QRCode display
|
||||
* adds optional filtering for displayed files and folders
|
||||
* updates design
|
||||
* improves zipped download
|
||||
* adds support for zipped download of htaccess restricted files
|
||||
* changes h5ai.htaccess
|
||||
* custom headers/footers are now optional and disabled by default
|
||||
* fixes problems with folder recognition in the JS version
|
||||
* fixes include problems in PHP version
|
||||
* fixes path problems on servers running on Windows in PHP version
|
||||
* fixes broken links in custom headers/footers while zipped download enabled
|
||||
* fixes problems with thumbnails for files with single or double quotes in filename
|
||||
* improves url hashes
|
||||
* updates year in `LICENSE.TXT`
|
||||
* updates es translation
|
||||
* adds `zh-tw` translation by [Yao Wei](http://github.com/medicalwei)
|
||||
* updates `zh-cn` translation
|
||||
|
||||
|
||||
### v0.17 - *2011-11-28*
|
||||
|
||||
* h5ai is now located in `_h5ai` to reduce collisions
|
||||
* switches from HTML5 Boilerplate reset to normalization
|
||||
* adds some style changes for small devices
|
||||
* configuration (options, types, translations) now via `config.js`
|
||||
* icons for JS version are now configured via `config.js`
|
||||
* sort order configuration changed
|
||||
* sorting is now done without page reload
|
||||
* adds `customHeader` and `customFooter` to `config.js`
|
||||
* supports restricted folders to some extent
|
||||
* some style changes on tree and language menu
|
||||
* fixes total file/folder count in status bar
|
||||
* adds support for use with userdir (requires some manual changes)
|
||||
|
||||
|
||||
### v0.16 - *2011-11-02*
|
||||
|
||||
* sorts translations in `options.js`
|
||||
* improves HTML head sections
|
||||
* refactors JavaScript and PHP a lot
|
||||
* improves/fixes file selection for zipped download
|
||||
* fixes scrollbar and header/footer link issues (didn't work when zipped download enabled)
|
||||
* adds support for ctrl-select
|
||||
* `dateFormat` in `options.js` changed, now affecting JS and PHP version
|
||||
* `dateFormat` is localizable by adding it to a translation in `options.js`
|
||||
* PHP version is now configurable via `php/config.php` (set custom doc root and other PHP related things)
|
||||
* image thumbs and zipped download is disabled by default now, but works fine if PHP is configured
|
||||
|
||||
|
||||
### v0.15.2 - *2011-09-18*
|
||||
|
||||
* adds `it` translation by [Salvo Gentile](http://github.com/SalvoGentile) and [Marco Patriarca](http://github.com/Fexys)
|
||||
* switches build process from scripp to wepp
|
||||
|
||||
|
||||
### v0.15.1 - *2011-09-06*
|
||||
|
||||
* fixes security issues with the zipped download feature
|
||||
* makes zipped download optional (but enabled by default)
|
||||
|
||||
|
||||
### v0.15 - *2011-09-04*
|
||||
|
||||
* adds zipped download for selected files
|
||||
* cleans and refactores
|
||||
|
||||
|
||||
### v0.14.1 - *2011-09-01*
|
||||
|
||||
* display meta information in bottom bar (icon view)
|
||||
* adds `zh-cn` translation by [Dongsheng Cai](http://github.com/dongsheng)
|
||||
* adds `pl` translation by Radosław Zając
|
||||
* adds `ru` translation by Богдан Илюхин
|
||||
|
||||
|
||||
### v0.14 - *2011-08-16*
|
||||
|
||||
* adds image thumbnails for PHP version
|
||||
* new option `slideTree` to turn off auto slide in
|
||||
|
||||
|
||||
### v0.13.2 - *2011-08-12*
|
||||
|
||||
* changes in `/h5ai/.htaccess` ... PHP configuration ...
|
||||
|
||||
|
||||
### v0.13.1 - *2011-08-12*
|
||||
|
||||
* fixes initial tree display
|
||||
* adds sort order option
|
||||
* adds/fixes some translations
|
||||
* adds `lv` translation by Sandis Veinbergs
|
||||
|
||||
|
||||
### v0.13 - *2011-08-06*
|
||||
|
||||
* adds PHP implementation! (should work with PHP 5.2+)
|
||||
* adds new options
|
||||
* changes layout of the bottom bar to display status information
|
||||
* adds language selector to the bottom bar
|
||||
* quotes keys in `options.js` to make it valid json
|
||||
* changes value of option `lang` from `undefined` to `null`
|
||||
* adds some new keys to `h5aiLangs`
|
||||
* adds browser caching rules for css and js
|
||||
* adds `pt` translation by [Jonnathan](http://github.com/jonnsl)
|
||||
* adds `bg` translation by George Andonov
|
||||
|
||||
|
||||
### v0.12.3 - *2011-07-30*
|
||||
|
||||
* adds `tr` translation by [Batuhan Icoz](http://github.com/batuhanicoz)
|
||||
|
||||
|
||||
### v0.12.2 - *2011-07-30*
|
||||
|
||||
* adds `es` translation by Jose David Calderon Serrano
|
||||
|
||||
|
||||
### v0.12.1 - *2011-07-29*
|
||||
|
||||
* fixes unchecked use of console.log
|
||||
|
||||
|
||||
### v0.12 - *2011-07-28*
|
||||
|
||||
* improves performance
|
||||
|
||||
|
||||
### v0.11 - *2011-07-27*
|
||||
|
||||
* changes license to MIT license, see `LICENSE.txt`
|
||||
|
||||
|
||||
### v0.10.2 - *2011-07-26*
|
||||
|
||||
* improves tree scrollbar
|
||||
|
||||
|
||||
### v0.10.1 - *2011-07-24*
|
||||
|
||||
* fixes problems with ' in links
|
||||
|
||||
|
||||
### v0.10 - *2011-07-24*
|
||||
|
||||
* fixes problems with XAMPP on Windows (see `dot.htaccess` comments for instructions)
|
||||
* fixes tree fade-in-fade-out effect for small displays ([issue #6](http://github.com/lrsjng/h5ai/issues/6))
|
||||
* adds custom scrollbar to tree ([issue #6](http://github.com/lrsjng/h5ai/issues/6))
|
||||
* fixes broken links caused by URI encoding/decoding ([issue #9](http://github.com/lrsjng/h5ai/issues/9))
|
||||
* adds "empty" to localization (hope Google Translate did a good job here)
|
||||
|
||||
|
||||
### v0.9 - *2011-07-18*
|
||||
|
||||
* links hover states between crumb, extended view and tree
|
||||
* fixes size of tree view (now there's a ugly scrollbar, hopefully will be fixed)
|
||||
* refactores js to improve performance and cleaned code
|
||||
* adds caching for folder status codes and content
|
||||
* adds `fr` translation by [Nicolas](http://github.com/Nicosmos)
|
||||
* adds `nl` translation by [Stefan de Konink](http://github.com/skinkie)
|
||||
* adds `sv` translation by Oscar Carlsson
|
||||
|
||||
|
||||
### v0.8 - *2011-07-08*
|
||||
|
||||
* removes slashes from folder labels
|
||||
* optionally rename parent folder entries to real folder names, see `options.js`
|
||||
* long breadcrumbs (multiple rows) no longer hide content
|
||||
* error folder icons are opaque now
|
||||
* refactores js a lot (again...)
|
||||
|
||||
|
||||
### v0.7 - *2011-07-07*
|
||||
|
||||
* removes shadows
|
||||
* smarter tree side bar
|
||||
|
||||
|
||||
### v0.6 - *2011-07-05*
|
||||
|
||||
* refactores js
|
||||
* adds localization, see `options.js`
|
||||
|
||||
|
||||
### v0.5.3 - *2011-07-04*
|
||||
|
||||
* refactores js
|
||||
* adds basic options support via `options.js`
|
||||
* adds comments to `options.js`
|
||||
* adds optional tree sidebar
|
||||
|
||||
|
||||
### v0.5.2 - *2011-07-02*
|
||||
|
||||
* details view adjusts to window width
|
||||
* links icon for *.gz and *.bz2
|
||||
|
||||
|
||||
### v0.5.1 - *2011-07-01*
|
||||
|
||||
* disables tree sidebar for now, since it had unwanted side effects
|
||||
|
||||
|
||||
### v0.5 - *2011-07-01*
|
||||
|
||||
* adds tree sidebar
|
||||
* some refactorings
|
||||
|
||||
|
||||
### v0.4 - *2011-06-27*
|
||||
|
||||
* adds better fallback, in case JavaScript is disabled
|
||||
* rewrites js, fixed middle-button click etc. problems
|
||||
* refactors css
|
||||
* sorts, adds and moves icons and images
|
||||
* updates dot.access
|
||||
|
||||
|
||||
### v0.3.2 - *2011-06-24*
|
||||
|
||||
* removes lib versions from file names
|
||||
* adds 'empty' indicator for icons view
|
||||
|
||||
|
||||
### v0.3.1 - *2011-06-24*
|
||||
|
||||
* refactores js
|
||||
* adds `folderClick` and `fileClick` callback hooks
|
||||
* fixes .emtpy style
|
||||
|
||||
|
||||
### v0.3 - *2011-06-23*
|
||||
|
||||
* includes build stuff, files previously found in the base directory are now located in folder `target`
|
||||
* styles and scripts are now minified
|
||||
* adds Modernizr 2.0.4 for future use
|
||||
* updates jQuery to version 1.6.1
|
||||
|
||||
|
||||
### v0.2.3 - *2011-06-17*
|
||||
|
||||
* more refactoring in main.js
|
||||
|
||||
|
||||
### v0.2.2 - *2011-06-16*
|
||||
|
||||
* refactores a lot, adds some comments
|
||||
* includes fixes from [NumEricR](http://github.com/NumEricR)
|
||||
* adds top/bottom message support, only basicly styled
|
||||
|
||||
|
||||
### v0.2.1 - *2011-06-16*
|
||||
|
||||
* fixes croped filenames
|
||||
* fixes missing .png extension in header
|
||||
* adds some color to the links
|
||||
* adds changelog
|
||||
|
||||
|
||||
### v0.2 - *2011-06-15*
|
||||
|
||||
* adds icon view
|
||||
|
||||
|
87
dot-htaccess
@@ -1,87 +0,0 @@
|
||||
|
||||
<IfModule mod_autoindex.c>
|
||||
|
||||
Options +Indexes +FollowSymLinks
|
||||
|
||||
IndexOptions Charset=UTF-8
|
||||
IndexOptions FancyIndexing
|
||||
IndexOptions HTMLTable
|
||||
IndexOptions XHTML
|
||||
IndexOptions SuppressHTMLPreamble
|
||||
IndexOptions SuppressRules
|
||||
IndexOptions SuppressDescription
|
||||
IndexOptions FoldersFirst
|
||||
IndexOptions IgnoreCase
|
||||
IndexOptions IconsAreLinks
|
||||
IndexOptions VersionSort
|
||||
|
||||
DirectoryIndex IGNORE-DEFAULT-INDEX-FILES
|
||||
IndexOrderDefault Ascending Name
|
||||
IndexIgnore h5ai .??* *~ *# RCS CVS *,v *,t
|
||||
|
||||
HeaderName /h5ai/header.html
|
||||
ReadmeName /h5ai/footer.html
|
||||
|
||||
AddIconByType /h5ai/icons/png.png image/png
|
||||
AddIconByType /h5ai/icons/jpg.png image/jpeg
|
||||
AddIconByType /h5ai/icons/gif.png image/gif
|
||||
AddIconByType /h5ai/icons/ico.png image/x-icon
|
||||
AddIconByType /h5ai/icons/bmp.png image/x-ms-bmp
|
||||
|
||||
AddIconByType /h5ai/icons/html.png text/html
|
||||
AddIconByType /h5ai/icons/css.png text/css
|
||||
AddIcon /h5ai/icons/css.png .less
|
||||
AddIconByType /h5ai/icons/xml.png application/xml
|
||||
AddIconByType /h5ai/icons/js.png application/javascript application/json
|
||||
AddIconByType /h5ai/icons/php.png application/x-httpd-php
|
||||
|
||||
AddIconByType /h5ai/icons/java.png text/x-java
|
||||
AddIconByType /h5ai/icons/py.png text/x-python
|
||||
AddIconByType /h5ai/icons/rb.png application/x-ruby
|
||||
AddIconByType /h5ai/icons/cpp.png text/x-c++src
|
||||
AddIconByType /h5ai/icons/hpp.png text/x-c++hdr
|
||||
AddIconByType /h5ai/icons/c.png text/x-csrc
|
||||
AddIconByType /h5ai/icons/h.png text/x-chdr
|
||||
AddIconByType /h5ai/icons/tex.png text/x-tex
|
||||
AddIcon /h5ai/icons/script.png .conf .ini .sh .shar .csh .ksh .tcl
|
||||
|
||||
AddIcon /h5ai/icons/log.png log Log LOG
|
||||
|
||||
AddIconByType /h5ai/icons/bin.png application/java-vm
|
||||
AddIcon /h5ai/icons/bin.png .so .o
|
||||
AddIconByType /h5ai/icons/exe.png application/x-executable application/x-msdos-program
|
||||
|
||||
AddIconByType /h5ai/icons/makefile.png text/x-makefile
|
||||
AddIcon /h5ai/icons/makefile.png pom.xml .pom build.xml
|
||||
|
||||
AddIconByType /h5ai/icons/pdf.png application/pdf
|
||||
AddIconByType /h5ai/icons/rtf.png text/rtf application/rtf
|
||||
|
||||
AddIcon /h5ai/icons/zip.png .zip .Z .z .jar .war
|
||||
AddIcon /h5ai/icons/tar.png .tar
|
||||
AddIcon /h5ai/icons/archive.png .tar.gz .tgz .tar.bz2
|
||||
AddIcon /h5ai/icons/pdf.png .pdf
|
||||
AddIcon /h5ai/icons/deb.png .deb
|
||||
AddIcon /h5ai/icons/rpm.png .rpm
|
||||
AddIcon /h5ai/icons/cd.png .iso .cue
|
||||
|
||||
AddIcon /h5ai/icons/authors.png AUTHORS
|
||||
AddIcon /h5ai/icons/install.png INSTALL
|
||||
AddIcon /h5ai/icons/copying.png COPYING LICENSE
|
||||
AddIcon /h5ai/icons/readme.png README
|
||||
|
||||
AddIconByType /h5ai/icons/text.png text/*
|
||||
AddIconByType /h5ai/icons/image.png image/*
|
||||
AddIconByType /h5ai/icons/audio.png audio/*
|
||||
AddIconByType /h5ai/icons/video.png video/*
|
||||
|
||||
AddIconByEncoding /h5ai/icons/zip.png x-compress x-gzip x-bzip2
|
||||
|
||||
AddIcon /h5ai/icons/parent.png ..
|
||||
AddIcon /h5ai/icons/folder.png ^^DIRECTORY^^
|
||||
AddIcon /h5ai/icons/blank.png ^^BLANKICON^^
|
||||
|
||||
DefaultIcon /h5ai/icons/unknown.png
|
||||
|
||||
</IfModule>
|
||||
|
@@ -1,21 +0,0 @@
|
||||
<!-- generated code ends here -->
|
||||
<div id="empty">empty</div>
|
||||
<div id="special"></div>
|
||||
</section>
|
||||
<footer>
|
||||
<a id="html5" href="http://www.w3.org/html/logo/" target="_blank" title="HTML5 semantics & CSS3">
|
||||
<img class="logo" src="/h5ai/images/html5.png" alt="html5" />
|
||||
<img class="techclass" src="/h5ai/images/html5-semantics.png" alt="html5-semantics" />
|
||||
<img class="techclass" src="/h5ai/images/html5-css3.png" alt="html5-css3" />
|
||||
</a>
|
||||
<a href="http://github.com/larrrs/h5ai" target="_blank" title="html5autoindex v0.1">h5ai</a>
|
||||
using
|
||||
<a href="http://html5boilerplate.com" target="_blank" title="a rock-solid default for HTML5 awesome">HTML5 Boilerplate</a>
|
||||
and
|
||||
<a href="http://tiheum.deviantart.com/art/Faenza-Icons-173323228" target="_blank" title="icon theme for Gnome">Faenza icons</a>
|
||||
</footer>
|
||||
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.5.1/jquery.js"></script>
|
||||
<script>window.jQuery || document.write( '<script src="/h5ai/lib/jquery-1.5.min.js"><\/script>' )</script>
|
||||
<script src="/h5ai/main.js"></script>
|
||||
</body>
|
||||
</html>
|
@@ -1,24 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>Index</title>
|
||||
<link rel="shortcut icon" href="/h5ai/icons/folder.png" />
|
||||
<link rel="apple-touch-icon" href="/h5ai/images/folder.png">
|
||||
<link rel="stylesheet" type="text/css" href="http://fonts.googleapis.com/css?family=Ubuntu:regular,italic,bold">
|
||||
<link rel="stylesheet" type="text/css" href="/h5ai/main.css">
|
||||
</head>
|
||||
<body>
|
||||
<nav>
|
||||
<ul>
|
||||
<li id="domain"><a href="/"><img src="/h5ai/icons/home.png" alt="domain" /><span>domain</span></a></li>
|
||||
</ul>
|
||||
<div class="clearfix"></div>
|
||||
</nav>
|
||||
<section id="content">
|
||||
<!--
|
||||
The following code was generated by apache's autoindex module. It is not valid HTML 5 for the
|
||||
reason, that 'align' and 'valign' attributes on the td element are obsolete. Both of them are
|
||||
removed via javascript. The actual page should render as perfect HTML 5, even if the produced
|
||||
source is not valid HTML 5.
|
||||
-->
|
Before Width: | Height: | Size: 662 B |
Before Width: | Height: | Size: 409 B |
Before Width: | Height: | Size: 1.5 KiB |
Before Width: | Height: | Size: 424 B |
Before Width: | Height: | Size: 428 B |
Before Width: | Height: | Size: 811 B |
@@ -1,140 +0,0 @@
|
||||
|
||||
/* HTML5 ✰ Boilerplate reset */
|
||||
|
||||
html, body, div, span, object, iframe,
|
||||
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
|
||||
abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp,
|
||||
small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li,
|
||||
fieldset, form, label, legend,
|
||||
table, caption, tbody, tfoot, thead, tr, th, td,
|
||||
article, aside, canvas, details, figcaption, figure,
|
||||
footer, header, hgroup, menu, nav, section, summary,
|
||||
time, mark, audio, video {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
border: 0;
|
||||
font-size: 100%;
|
||||
font: inherit;
|
||||
vertical-align: baseline;
|
||||
}
|
||||
|
||||
article, aside, details, figcaption, figure,
|
||||
footer, header, hgroup, menu, nav, section {
|
||||
display: block;
|
||||
}
|
||||
|
||||
blockquote, q { quotes: none; }
|
||||
blockquote:before, blockquote:after,
|
||||
q:before, q:after { content: ""; content: none; }
|
||||
ins { background-color: #ff9; color: #000; text-decoration: none; }
|
||||
mark { background-color: #ff9; color: #000; font-style: italic; font-weight: bold; }
|
||||
del { text-decoration: line-through; }
|
||||
abbr[title], dfn[title] { border-bottom: 1px dotted; cursor: help; }
|
||||
table { border-collapse: collapse; border-spacing: 0; }
|
||||
hr { display: block; height: 1px; border: 0; border-top: 1px solid #ccc; margin: 1em 0; padding: 0; }
|
||||
input, select { vertical-align: middle; }
|
||||
|
||||
body { font:13px/1.231 sans-serif; *font-size:small; }
|
||||
select, input, textarea, button { font:99% sans-serif; }
|
||||
pre, code, kbd, samp { font-family: monospace, sans-serif; }
|
||||
|
||||
/*
|
||||
html { overflow-y: scroll; }
|
||||
*/
|
||||
a:hover, a:active { outline: none; }
|
||||
ul, ol { margin-left: 2em; }
|
||||
ol { list-style-type: decimal; }
|
||||
nav ul, nav li { margin: 0; list-style:none; list-style-image: none; }
|
||||
small { font-size: 85%; }
|
||||
strong, th { font-weight: bold; }
|
||||
td { vertical-align: top; }
|
||||
sub, sup { font-size: 75%; line-height: 0; position: relative; }
|
||||
sup { top: -0.5em; }
|
||||
sub { bottom: -0.25em; }
|
||||
|
||||
pre { white-space: pre; white-space: pre-wrap; word-wrap: break-word; padding: 15px; }
|
||||
textarea { overflow: auto; }
|
||||
.ie6 legend, .ie7 legend { margin-left: -7px; }
|
||||
input[type="radio"] { vertical-align: text-bottom; }
|
||||
input[type="checkbox"] { vertical-align: bottom; }
|
||||
.ie7 input[type="checkbox"] { vertical-align: baseline; }
|
||||
.ie6 input { vertical-align: text-bottom; }
|
||||
label, input[type="button"], input[type="submit"], input[type="image"], button { cursor: pointer; }
|
||||
button, input, select, textarea { margin: 0; }
|
||||
input:valid, textarea:valid { }
|
||||
input:invalid, textarea:invalid { border-radius: 1px; -moz-box-shadow: 0px 0px 5px red; -webkit-box-shadow: 0px 0px 5px red; box-shadow: 0px 0px 5px red; }
|
||||
.no-boxshadow input:invalid, .no-boxshadow textarea:invalid { background-color: #f0dddd; }
|
||||
|
||||
|
||||
::-moz-selection{ background: #FF5E99; color:#fff; text-shadow: none; }
|
||||
::selection { background:#FF5E99; color:#fff; text-shadow: none; }
|
||||
a:link { -webkit-tap-highlight-color: #FF5E99; }
|
||||
button { width: auto; overflow: visible; }
|
||||
.ie7 img { -ms-interpolation-mode: bicubic; }
|
||||
|
||||
body, select, input, textarea { color: #444; }
|
||||
h1, h2, h3, h4, h5, h6 { font-weight: bold; }
|
||||
a, a:active, a:visited { color: #607890; }
|
||||
a:hover { color: #036; }
|
||||
|
||||
|
||||
/**
|
||||
* Primary styles
|
||||
*
|
||||
* Author:
|
||||
*/
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
.ir { display: block; text-indent: -999em; overflow: hidden; background-repeat: no-repeat; text-align: left; direction: ltr; }
|
||||
.hidden { display: none; visibility: hidden; }
|
||||
.visuallyhidden { border: 0; clip: rect(0 0 0 0); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; }
|
||||
.visuallyhidden.focusable:active,
|
||||
.visuallyhidden.focusable:focus { clip: auto; height: auto; margin: 0; overflow: visible; position: static; width: auto; }
|
||||
.invisible { visibility: hidden; }
|
||||
.clearfix:before, .clearfix:after { content: "\0020"; display: block; height: 0; overflow: hidden; }
|
||||
.clearfix:after { clear: both; }
|
||||
.clearfix { zoom: 1; }
|
||||
|
||||
|
||||
@media all and (orientation:portrait) {
|
||||
|
||||
}
|
||||
|
||||
@media all and (orientation:landscape) {
|
||||
|
||||
}
|
||||
|
||||
@media screen and (max-device-width: 480px) {
|
||||
|
||||
/* html { -webkit-text-size-adjust:none; -ms-text-size-adjust:none; } */
|
||||
}
|
||||
|
||||
|
||||
@media print {
|
||||
* { background: transparent !important; color: black !important; text-shadow: none !important; filter:none !important;
|
||||
-ms-filter: none !important; }
|
||||
a, a:visited { color: #444 !important; text-decoration: underline; }
|
||||
a[href]:after { content: " (" attr(href) ")"; }
|
||||
abbr[title]:after { content: " (" attr(title) ")"; }
|
||||
.ir a:after, a[href^="javascript:"]:after, a[href^="#"]:after { content: ""; }
|
||||
pre, blockquote { border: 1px solid #999; page-break-inside: avoid; }
|
||||
thead { display: table-header-group; }
|
||||
tr, img { page-break-inside: avoid; }
|
||||
@page { margin: 0.5cm; }
|
||||
p, h2, h3 { orphans: 3; widows: 3; }
|
||||
h2, h3{ page-break-after: avoid; }
|
||||
}
|
||||
|
||||
/* END - HTML5 ✰ Boilerplate */
|
16
h5ai/lib/jquery-1.5.min.js
vendored
180
h5ai/main.css
@@ -1,180 +0,0 @@
|
||||
|
||||
@import "lib/html5reset.css";
|
||||
|
||||
|
||||
body {
|
||||
font-family: Ubuntu, sans-serif;
|
||||
font-size: 16px;
|
||||
color: #555;
|
||||
margin: 80px 30px;
|
||||
}
|
||||
|
||||
|
||||
a, a:visited {
|
||||
color: #555;
|
||||
text-decoration: none;
|
||||
}
|
||||
a:hover {
|
||||
color: #333;
|
||||
}
|
||||
|
||||
|
||||
nav {
|
||||
position: fixed;
|
||||
width: 100%;
|
||||
left: 0px;
|
||||
top: 0px;
|
||||
font-size: 0.85em;
|
||||
background-color: rgb(240,240,240);
|
||||
border-bottom: 1px solid rgb(225,225,225);
|
||||
-webkit-box-shadow: 0px 0px 30px #555;
|
||||
-moz-box-shadow: 0px 0px 30px #555;
|
||||
box-shadow: 0px 0px 30px #555;
|
||||
}
|
||||
nav li {
|
||||
float: left;
|
||||
border-right: 1px dotted rgb(225,225,225);
|
||||
cursor: pointer;
|
||||
opacity: 0.7;
|
||||
}
|
||||
nav li.hover, nav li.hover a {
|
||||
background-color: rgba(255,255,255,0.5);
|
||||
opacity: 1.0;
|
||||
}
|
||||
nav a {
|
||||
display: block
|
||||
height: 30px;
|
||||
line-height: 30px;
|
||||
padding: 4px 10px;
|
||||
}
|
||||
nav img {
|
||||
vertical-align: bottom;
|
||||
padding-right: 6px;
|
||||
padding-bottom: 6px;
|
||||
}
|
||||
|
||||
|
||||
section#content {
|
||||
max-width: 980px;
|
||||
margin: 0px auto;
|
||||
}
|
||||
|
||||
|
||||
table {
|
||||
width: 100%;
|
||||
border-collapse: collapse;
|
||||
}
|
||||
table {
|
||||
display: block;
|
||||
}
|
||||
table tr.hover, table tr.hover a {
|
||||
background-color: rgb(235,245,250);
|
||||
background-color: #eeeeee;
|
||||
color: #333;
|
||||
cursor: pointer;
|
||||
}
|
||||
table th, table td {
|
||||
padding: 3px 6px;
|
||||
text-align: left;
|
||||
border: none;
|
||||
}
|
||||
table th {
|
||||
padding-bottom: 18px;
|
||||
opacity: 0.4;
|
||||
}
|
||||
table th.hover {
|
||||
cursor: pointer;
|
||||
opacity: 0.9;
|
||||
}
|
||||
table th a, table th a:visited {
|
||||
color: #555;
|
||||
font-weight: normal;
|
||||
}
|
||||
table th a img {
|
||||
width: 12px;
|
||||
height: 12px;
|
||||
padding: 0px 8px;
|
||||
}
|
||||
table td {
|
||||
border: 1px solid #ddd;
|
||||
border-left: 0px;
|
||||
border-right: 0px;
|
||||
}
|
||||
table .icon {
|
||||
text-align: center;
|
||||
width: 16px;
|
||||
}
|
||||
table .icon img {
|
||||
width: 16px;
|
||||
height: 16px;
|
||||
padding-top: 2px;
|
||||
}
|
||||
table .name {
|
||||
width: 682px;
|
||||
max-width: 682px;
|
||||
overflow: hidden;
|
||||
white-space: nowrap;
|
||||
}
|
||||
table .date {
|
||||
text-align: right;
|
||||
width: 160px;
|
||||
min-width: 160px;
|
||||
white-space: nowrap;
|
||||
}
|
||||
table .size {
|
||||
text-align: right;
|
||||
width: 70px;
|
||||
min-width: 70px;
|
||||
white-space: nowrap;
|
||||
}
|
||||
|
||||
|
||||
div#empty {
|
||||
display: none;
|
||||
text-align: center;
|
||||
margin: 50px 0px;
|
||||
color: #ddd;
|
||||
font-size: 5em;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
|
||||
div#special {
|
||||
display: none;
|
||||
text-align: center;
|
||||
margin: 50px 0px;
|
||||
}
|
||||
|
||||
|
||||
footer {
|
||||
position: fixed;
|
||||
width: 100%;
|
||||
left: 0px;
|
||||
bottom: 0px;
|
||||
padding: 10px 0px;
|
||||
border-top: 1px solid rgb(225,225,225);
|
||||
background-color: rgb(240,240,240);
|
||||
color: #999;
|
||||
font-size: 0.85em;
|
||||
text-align: center;
|
||||
-webkit-box-shadow: 0px 0px 30px #555;
|
||||
-moz-box-shadow: 0px 0px 30px #555;
|
||||
box-shadow: 0px 0px 30px #555;
|
||||
}
|
||||
|
||||
|
||||
#html5 {
|
||||
position: absolute;
|
||||
left: 6px;
|
||||
bottom: 6px;
|
||||
float: left;
|
||||
}
|
||||
#html5 img {
|
||||
opacity: 0.4;
|
||||
width: 20px;
|
||||
height: 20px;
|
||||
}
|
||||
#html5:hover img {
|
||||
opacity: 0.8;
|
||||
}
|
||||
|
159
h5ai/main.js
@@ -1,159 +0,0 @@
|
||||
( function( $ ) {
|
||||
|
||||
var columnClasses = [ "icon", "name", "date", "size" ];
|
||||
var defaultSortOrder = "C=N;O=A"
|
||||
var h5aiPath = "/h5ai"
|
||||
|
||||
|
||||
$( function() {
|
||||
|
||||
init();
|
||||
} );
|
||||
|
||||
|
||||
function init () {
|
||||
|
||||
convertToHtml5();
|
||||
addBreadcrumb();
|
||||
addColumnClasses();
|
||||
initTableRows();
|
||||
addSortOrderIcons();
|
||||
//specialFiles();
|
||||
};
|
||||
|
||||
|
||||
function convertToHtml5() {
|
||||
|
||||
$( "td" ).removeAttr( "align" ).removeAttr( "valign" );
|
||||
};
|
||||
|
||||
|
||||
function addBreadcrumb() {
|
||||
|
||||
$( "#domain span" ).text( document.domain );
|
||||
var pathname = decodeURI( document.location.pathname );
|
||||
var parts = pathname.split( "/" );
|
||||
var path = "/";
|
||||
var $ul = $( "nav ul" );
|
||||
for ( idx in parts ) {
|
||||
var part = parts[idx];
|
||||
if ( part !== "" ) {
|
||||
path += part + "/";
|
||||
$ul.append( $( "<li class='crumb'><a href='" + path + "'><img src='" + h5aiPath + "/icons/crumb.png' alt='>' />" + part + "</a></li>" ) );
|
||||
}
|
||||
}
|
||||
|
||||
$( "nav li a" ).closest( "li" )
|
||||
.hover(
|
||||
function () {
|
||||
$( this ).addClass( "hover" );
|
||||
},
|
||||
function () {
|
||||
$( this ).removeClass( "hover" );
|
||||
}
|
||||
)
|
||||
.click( function () {
|
||||
document.location.href = $( this ).find( "a" ).attr( "href" );
|
||||
} );
|
||||
|
||||
document.title = document.domain + pathname;
|
||||
};
|
||||
|
||||
|
||||
function getColumnClass( idx ) {
|
||||
|
||||
if ( idx >= 0 && idx < columnClasses.length ) {
|
||||
return columnClasses[idx];
|
||||
}
|
||||
return "unknown";
|
||||
};
|
||||
|
||||
|
||||
function addColumnClasses() {
|
||||
|
||||
$( "tr" ).each( function () {
|
||||
var colIdx = 0;
|
||||
$( this ).find( "th,td" ).each( function () {
|
||||
$( this ).addClass( getColumnClass( colIdx ) );
|
||||
colIdx++;
|
||||
} );
|
||||
} );
|
||||
};
|
||||
|
||||
|
||||
function initTableRows() {
|
||||
|
||||
$( "th a" ).closest( "th" )
|
||||
.hover(
|
||||
function () {
|
||||
$( this ).addClass( "hover" );
|
||||
},
|
||||
function () {
|
||||
$( this ).removeClass( "hover" );
|
||||
}
|
||||
)
|
||||
.click( function () {
|
||||
document.location.href = $( this ).find( "a" ).attr( "href" );
|
||||
} );
|
||||
$( "td.name a" ).closest( "tr" )
|
||||
.hover(
|
||||
function () {
|
||||
$( this ).addClass( "hover" );
|
||||
},
|
||||
function () {
|
||||
$( this ).removeClass( "hover" );
|
||||
}
|
||||
)
|
||||
.click( function () {
|
||||
document.location.href = $( this ).find( "td.name a" ).attr( "href" );
|
||||
} );
|
||||
$dataRows = $( "td" ).closest( "tr" );
|
||||
if ( $dataRows.size() === 0 || $dataRows.size() === 1 && $dataRows.find( "td.name a" ).text() === "Parent Directory" ) {
|
||||
$( "#empty" ).show();
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
function addSortOrderIcons() {
|
||||
|
||||
var order = document.location.search;
|
||||
if ( order === "" ) {
|
||||
order = defaultSortOrder;
|
||||
}
|
||||
var $icon;
|
||||
if ( order.indexOf( "O=A" ) >= 0 ) {
|
||||
$icon = $( "<img src='" + h5aiPath + "/icons/ascending.png' class='sort' alt='ascending' />" );
|
||||
} else {
|
||||
$icon = $( "<img src='" + h5aiPath + "/icons/descending.png' class='sort' alt='descending' />" );
|
||||
}
|
||||
if ( order.indexOf( "C=N" ) >= 0 ) {
|
||||
$( "th.name a" ).append( $icon );
|
||||
} else if ( order.indexOf( "C=M" ) >= 0 ) {
|
||||
$( "th.date a" ).prepend( $icon );
|
||||
} else if ( order.indexOf( "C=S" ) >= 0 ) {
|
||||
$( "th.size a" ).prepend( $icon );
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
function specialFiles() {
|
||||
|
||||
specialFile( "README", "readme.png" );
|
||||
specialFile( "ChangeLog", "changelog.png" );
|
||||
specialFile( "INSTALL", "install.png" );
|
||||
specialFile( "COPYING", "copying.png" );
|
||||
specialFile( "LICENSE", "copying.png" );
|
||||
specialFile( "AUTHORS", "authors.png" );
|
||||
};
|
||||
|
||||
|
||||
function specialFile( name, img ) {
|
||||
|
||||
if ( $( "td.name a:contains(" + name + ")" ).size() > 0 ) {
|
||||
$( "#special" )
|
||||
.append( $( "<img src='" + h5aiPath + "/images/" + img + "' alt='readme' />" ) )
|
||||
.show();
|
||||
}
|
||||
};
|
||||
|
||||
} )( jQuery );
|
185
makefile.js
Normal file
@@ -0,0 +1,185 @@
|
||||
/*jshint node: true */
|
||||
'use strict';
|
||||
|
||||
|
||||
var path = require('path'),
|
||||
child_process = require('child_process');
|
||||
|
||||
|
||||
var version = '0.21',
|
||||
|
||||
root = path.resolve(__dirname),
|
||||
src = path.join(root, 'src'),
|
||||
build = path.join(root, 'build'),
|
||||
|
||||
jshint = {
|
||||
// Enforcing Options
|
||||
bitwise: true,
|
||||
curly: true,
|
||||
eqeqeq: true,
|
||||
forin: true,
|
||||
latedef: true,
|
||||
newcap: true,
|
||||
noempty: true,
|
||||
plusplus: true,
|
||||
trailing: true,
|
||||
undef: true,
|
||||
|
||||
// Environments
|
||||
browser: true,
|
||||
|
||||
// Globals
|
||||
predef: [
|
||||
'modulejs'
|
||||
]
|
||||
},
|
||||
|
||||
mapper = function (blob) {
|
||||
|
||||
return blob.source.replace(src, build).replace(/\.less$/, '.css');
|
||||
},
|
||||
|
||||
mapperRoot = function (blob) {
|
||||
|
||||
return blob.source.replace(root, build + '/_h5ai');
|
||||
};
|
||||
|
||||
|
||||
module.exports = function (make) {
|
||||
|
||||
var Event = make.Event,
|
||||
$ = make.fQuery,
|
||||
moment = make.moment,
|
||||
stamp, replacements;
|
||||
|
||||
|
||||
make.defaults('build');
|
||||
|
||||
|
||||
make.before(function () {
|
||||
|
||||
stamp = moment();
|
||||
|
||||
replacements = {
|
||||
version: version,
|
||||
stamp: stamp.format('YYYY-MM-DD HH:mm:ss')
|
||||
};
|
||||
|
||||
Event.info({ method: 'before', message: version + ' ' + replacements.stamp });
|
||||
});
|
||||
|
||||
|
||||
make.target('inc', [], 'increase build number, if any')
|
||||
.sync(function () {
|
||||
|
||||
var re = /-(\d+)$/;
|
||||
var match = version.match(re);
|
||||
|
||||
if (match) {
|
||||
var number = parseInt(match[1], 10) + 1;
|
||||
var newVersion = version.replace(re, '-' + number);
|
||||
|
||||
$('makefile.js').replace([[version, newVersion]]).write($.OVERWRITE, 'makefile.js');
|
||||
|
||||
version = newVersion;
|
||||
replacements.version = version;
|
||||
Event.ok({ method: 'inc', message: 'version is now ' + version });
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
make.target('clean', [], 'delete build folder')
|
||||
.sync(function () {
|
||||
|
||||
$.rmfr($.I_AM_SURE, build);
|
||||
});
|
||||
|
||||
|
||||
make.target('lint', [], 'lint all JavaScript files with JSHint')
|
||||
.sync(function () {
|
||||
|
||||
$(src + '/_h5ai/js: **/*.js, ! *.min.js, ! inc/lib/**')
|
||||
.jshint(jshint);
|
||||
});
|
||||
|
||||
|
||||
make.target('build', [], 'build all updated files')
|
||||
.sync(function () {
|
||||
|
||||
$(src + ': _h5ai/js/*.js')
|
||||
.modified(mapper, $(src + ': _h5ai/js/**'))
|
||||
.includify()
|
||||
.uglifyjs()
|
||||
.write($.OVERWRITE, mapper);
|
||||
|
||||
$(src + ': _h5ai/css/*.less')
|
||||
.modified(mapper, $(src + ': _h5ai/css/**'))
|
||||
.less()
|
||||
.cssmin()
|
||||
.write($.OVERWRITE, mapper);
|
||||
|
||||
$(src + ': **, ! _h5ai/js/**, ! _h5ai/css/**')
|
||||
.modified(mapper)
|
||||
.mustache(replacements)
|
||||
.write($.OVERWRITE, mapper);
|
||||
|
||||
$(root + ': README*, LICENSE*')
|
||||
.modified(mapperRoot)
|
||||
.write($.OVERWRITE, mapperRoot);
|
||||
});
|
||||
|
||||
|
||||
make.target('build-uncompressed', [], 'build all updated files without compression')
|
||||
.sync(function () {
|
||||
|
||||
$(src + ': _h5ai/js/*.js')
|
||||
.modified(mapper, $(src + ': _h5ai/js/**'))
|
||||
.includify()
|
||||
// .uglifyjs()
|
||||
.write($.OVERWRITE, mapper);
|
||||
|
||||
$(src + ': _h5ai/css/*.less')
|
||||
.modified(mapper, $(src + ': _h5ai/css/**'))
|
||||
.less()
|
||||
// .cssmin()
|
||||
.write($.OVERWRITE, mapper);
|
||||
|
||||
$(src + ': **, ! _h5ai/js/**, ! _h5ai/css/**')
|
||||
.modified(mapper)
|
||||
.mustache(replacements)
|
||||
.write($.OVERWRITE, mapper);
|
||||
|
||||
$(root + ': README*, LICENSE*')
|
||||
.modified(mapperRoot)
|
||||
.write($.OVERWRITE, mapperRoot);
|
||||
});
|
||||
|
||||
|
||||
make.target('release', ['inc', 'clean', 'build'], 'create a zipball')
|
||||
.async(function (done, fail) {
|
||||
|
||||
var target = path.join(build, 'h5ai-' + version + '.zip'),
|
||||
cmd = 'zip',
|
||||
args = ['-ro', target, '_h5ai'],
|
||||
options = { cwd: build },
|
||||
proc = child_process.spawn(cmd, args, options);
|
||||
|
||||
Event.info({ method: 'exec', message: cmd + ' ' + args.join(' ') });
|
||||
|
||||
// proc.stdout.on('data', function (data) {
|
||||
// process.stdout.write(data);
|
||||
// });
|
||||
proc.stderr.on('data', function (data) {
|
||||
process.stderr.write(data);
|
||||
});
|
||||
proc.on('exit', function (code) {
|
||||
if (code) {
|
||||
Event.error({ method: 'exec', message: cmd + ' exit code ' + code });
|
||||
fail();
|
||||
} else {
|
||||
Event.ok({ method: 'exec', message: 'created zipball ' + target });
|
||||
done();
|
||||
}
|
||||
});
|
||||
});
|
||||
};
|
BIN
screen.png
Before Width: | Height: | Size: 85 KiB |
43
src/_h5ai/.htaccess
Normal file
@@ -0,0 +1,43 @@
|
||||
|
||||
Options -Indexes
|
||||
|
||||
<IfModule mod_expires.c>
|
||||
Header set Cache-Control "public"
|
||||
ExpiresActive on
|
||||
|
||||
# Perhaps better to whitelist expires rules? Perhaps.
|
||||
ExpiresDefault "access plus 1 month"
|
||||
|
||||
# cache.manifest needs re-requests in FF 3.6 (thx Remy ~Introducing HTML5)
|
||||
ExpiresByType text/cache-manifest "access plus 0 seconds"
|
||||
|
||||
# your document html
|
||||
ExpiresByType text/html "access plus 0 seconds"
|
||||
|
||||
# data
|
||||
ExpiresByType text/xml "access plus 0 seconds"
|
||||
ExpiresByType application/xml "access plus 0 seconds"
|
||||
ExpiresByType application/json "access plus 0 seconds"
|
||||
|
||||
# media: images, video, audio
|
||||
ExpiresByType image/gif "access plus 1 month"
|
||||
ExpiresByType image/png "access plus 1 month"
|
||||
ExpiresByType image/jpg "access plus 1 month"
|
||||
ExpiresByType image/jpeg "access plus 1 month"
|
||||
ExpiresByType video/ogg "access plus 1 month"
|
||||
ExpiresByType audio/ogg "access plus 1 month"
|
||||
ExpiresByType video/mp4 "access plus 1 month"
|
||||
ExpiresByType video/webm "access plus 1 month"
|
||||
|
||||
# webfonts
|
||||
ExpiresByType font/truetype "access plus 1 month"
|
||||
ExpiresByType font/opentype "access plus 1 month"
|
||||
ExpiresByType font/woff "access plus 1 month"
|
||||
ExpiresByType image/svg+xml "access plus 1 month"
|
||||
ExpiresByType application/vnd.ms-fontobject "access plus 1 month"
|
||||
|
||||
# css and javascript
|
||||
ExpiresByType text/css "access plus 1 month"
|
||||
ExpiresByType application/javascript "access plus 1 month"
|
||||
ExpiresByType text/javascript "access plus 1 month"
|
||||
</IfModule>
|
23
src/_h5ai/apache/autoindex.htaccess
Normal file
@@ -0,0 +1,23 @@
|
||||
################################
|
||||
# h5ai {{version}}
|
||||
# customized .htaccess
|
||||
################################
|
||||
|
||||
Options +Indexes
|
||||
Options +FollowSymLinks
|
||||
|
||||
HeaderName /_h5ai/apache/h5ai-header.html
|
||||
ReadmeName /_h5ai/apache/h5ai-footer.html
|
||||
|
||||
IndexIgnore _h5ai*
|
||||
|
||||
IndexOptions Charset=UTF-8
|
||||
IndexOptions FancyIndexing
|
||||
IndexOptions FoldersFirst
|
||||
IndexOptions HTMLTable
|
||||
IndexOptions NameWidth=*
|
||||
IndexOptions SuppressDescription
|
||||
IndexOptions SuppressHTMLPreamble
|
||||
IndexOptions SuppressRules
|
||||
IndexOptions Type=text/html;h5ai={{version}}
|
||||
IndexOptions XHTML
|
6
src/_h5ai/apache/h5ai-footer.html
Normal file
@@ -0,0 +1,6 @@
|
||||
<!-- generated code ends here -->
|
||||
</div>
|
||||
<script src="/_h5ai/config.js"></script>
|
||||
<script src="/_h5ai/js/scripts.js"></script>
|
||||
</body>
|
||||
</html>
|
38
src/_h5ai/apache/h5ai-header.html
Normal file
@@ -0,0 +1,38 @@
|
||||
<!DOCTYPE html>
|
||||
<!--[if lt IE 7]> <html class="no-js ie6 oldie" lang="en"> <![endif]-->
|
||||
<!--[if IE 7]> <html class="no-js ie7 oldie" lang="en"> <![endif]-->
|
||||
<!--[if IE 8]> <html class="no-js ie8 oldie" lang="en"> <![endif]-->
|
||||
<!--[if gt IE 8]><!--> <html class="no-js" lang="en"> <!--<![endif]-->
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
|
||||
<title>Directory index · styled with h5ai</title>
|
||||
<meta name="description" content="Directory index styled with h5ai (http://larsjung.de/h5ai)">
|
||||
<meta name="viewport" content="width=device-width">
|
||||
<link rel="shortcut icon" type="image/png" href="/_h5ai/images/h5ai-16x16.png">
|
||||
<link rel="apple-touch-icon" type="image/png" href="/_h5ai/images/h5ai-48x48.png">
|
||||
<link rel="stylesheet" href="//fonts.googleapis.com/css?family=Ubuntu+Mono:400,700,400italic,700italic|Ubuntu:400,700,400italic,700italic">
|
||||
<link rel="stylesheet" href="/_h5ai/css/styles.css">
|
||||
<script src="/_h5ai/js/modernizr.js"></script>
|
||||
</head>
|
||||
<body id="h5ai-main">
|
||||
<div id="topbar" class="clearfix">
|
||||
<ul id="navbar"></ul>
|
||||
</div>
|
||||
<div id="content">
|
||||
<div id="extended" class="clearfix"></div>
|
||||
</div>
|
||||
<div id="bottombar" class="clearfix">
|
||||
<span class="left">
|
||||
<a id="h5ai-reference" href="http://larsjung.de/h5ai" title="h5ai project page">h5ai {{version}}</a>
|
||||
<span class="hideOnJs noJsMsg"> ⚡ JavaScript is disabled! ⚡ </span>
|
||||
<span class="oldBrowser"> ⚡ Some features disabled! Works best in <a href="http://browsehappy.com">modern browsers</a>. ⚡ </span>
|
||||
</span>
|
||||
<span class="right"></span>
|
||||
<span class="center"></span>
|
||||
</div>
|
||||
<div id="data-apache-autoindex" class="hideOnJs">
|
||||
<!--
|
||||
The following code was generated by Apache's autoindex module. It is not valid HTML5, but gets
|
||||
removed from the DOM tree as soon as possible. The actual page should render as valid HTML5.
|
||||
-->
|
7
src/_h5ai/cache/README.md
vendored
Normal file
@@ -0,0 +1,7 @@
|
||||
# Cache
|
||||
|
||||
This directory is used for server side caching. To use caching make this
|
||||
directory writable for your webserver.
|
||||
|
||||
There is no critical data in here. You can savely remove any content. This
|
||||
will clear the cache.
|
693
src/_h5ai/config.js
Normal file
@@ -0,0 +1,693 @@
|
||||
/*
|
||||
* h5ai {{version}}
|
||||
*
|
||||
* Configuration
|
||||
* options, types and localization
|
||||
*/
|
||||
|
||||
var H5AI_CONFIG = {
|
||||
|
||||
"options": {
|
||||
|
||||
/*
|
||||
* The absolute links to webroot and h5ai.
|
||||
* Do not change this unless you know what you are doing.
|
||||
*/
|
||||
"rootAbsHref": "/",
|
||||
"h5aiAbsHref": "/_h5ai/",
|
||||
|
||||
/*
|
||||
* Spacing of the main content.
|
||||
* Left and right will be added to a minimum of 30px. Top and bottom
|
||||
* are calculated relative to the top and bottom bar heights.
|
||||
*/
|
||||
"spacing": {
|
||||
"maxWidth": 960,
|
||||
"top": 50,
|
||||
"right": "auto",
|
||||
"bottom": 50,
|
||||
"left": "auto"
|
||||
},
|
||||
|
||||
/*
|
||||
* An array of view modes the user may choose from. Currently there
|
||||
* are two possible values: "details" and "icons". The first value
|
||||
* indicates the default view mode. If only one value is given the
|
||||
* view mode is fixed and the selector buttons are hidden.
|
||||
* The user selected view mode is also stored local in modern browsers
|
||||
* so that it will be persistent.
|
||||
*
|
||||
* Set parent folder labels to real folder names.
|
||||
*/
|
||||
"view": {
|
||||
"modes": ["details", "icons"],
|
||||
"setParentFolderLabels": true
|
||||
},
|
||||
|
||||
|
||||
|
||||
|
||||
/*
|
||||
* Extensions in alphabetical order.
|
||||
*/
|
||||
|
||||
/*
|
||||
* Show a clickable breadcrumb.
|
||||
*/
|
||||
"crumb": {
|
||||
"enabled": true
|
||||
},
|
||||
|
||||
/*
|
||||
* Filenames of customized header and footer files to look for
|
||||
* in each folder.
|
||||
*/
|
||||
"custom": {
|
||||
"enabled": true,
|
||||
"header": "_h5ai.header.html",
|
||||
"footer": "_h5ai.footer.html"
|
||||
},
|
||||
|
||||
/*
|
||||
* EXPLICITLY: USE "shell" ON YOUR OWN RISK.
|
||||
*
|
||||
* Requires PHP on the server.
|
||||
* Enable packaged download of selected entries.
|
||||
* Execution: "php", "shell".
|
||||
* Supported formats: "tar", "zip".
|
||||
*/
|
||||
"download": {
|
||||
"enabled": true,
|
||||
"execution": "shell",
|
||||
"format": "tar"
|
||||
},
|
||||
|
||||
/*
|
||||
* Allow filtering the displayed files and folders.
|
||||
* Will check entries for right order of characters, i.e.
|
||||
* "ab" matches "ab", "axb", "xaxbx" but not "ba".
|
||||
* Space separated sequences get OR-ed.
|
||||
*
|
||||
* Filters will be treated as JavaScript regular expressions
|
||||
* if you prefix them with "re:".
|
||||
*/
|
||||
"filter": {
|
||||
"enabled": true
|
||||
},
|
||||
|
||||
/*
|
||||
* Requires PHP on the server.
|
||||
* Calc the size of folders.
|
||||
* Depends on du.
|
||||
*/
|
||||
"foldersize": {
|
||||
"enabled": true
|
||||
},
|
||||
|
||||
/*
|
||||
* Associative array of folders and their HTTP status codes to
|
||||
* avoid HEAD requests to that folders. The key (folder) must start
|
||||
* and end with a slash (/).
|
||||
* For example
|
||||
* "/some/folder/": 200
|
||||
* will always return HTTP status 200 (OK), which will be interpreted
|
||||
* as a non auto indexed folder, that means a folder containing an
|
||||
* appropriate default index file.
|
||||
*/
|
||||
"folderstatus": {
|
||||
"enabled": true,
|
||||
"folders": {}
|
||||
},
|
||||
|
||||
/*
|
||||
* Adds Google Analytics asynchronous tracking code.
|
||||
*
|
||||
* for example:
|
||||
* "gaq": [
|
||||
* ["_setAccount", "UA-xxxxxx-x"],
|
||||
* ["_setDomainName", ".your-domain.tld"],
|
||||
* ["_trackPageview"],
|
||||
* ["_trackPageLoadTime"]
|
||||
* ]
|
||||
*
|
||||
* see: http://support.google.com/googleanalytics/bin/topic.py?hl=en&topic=27612
|
||||
*/
|
||||
"google-analytics": {
|
||||
"enabled": true,
|
||||
"gaq": []
|
||||
},
|
||||
|
||||
/*
|
||||
* Localization, for example "en", "de" etc. - see "langs" below for
|
||||
* possible values. Adjust it to your needs. If lang is not found in
|
||||
* "langs" it defaults to "en".
|
||||
*
|
||||
* Optionally try to use browser language, falls back to previous
|
||||
* specified language.
|
||||
*/
|
||||
"l10n": {
|
||||
"enabled": true,
|
||||
"lang": "en",
|
||||
"useBrowserLang": true
|
||||
},
|
||||
|
||||
/*
|
||||
* Link the hover effects between crumb, main view and tree.
|
||||
*/
|
||||
"link-hover-states": {
|
||||
"enabled": true
|
||||
},
|
||||
|
||||
/*
|
||||
* Shows the server mode in the bottom left corner.
|
||||
* display values:
|
||||
* 0: only show mode
|
||||
* 1: mode and servername
|
||||
* 2: mode, servername and -version
|
||||
*/
|
||||
"mode": {
|
||||
"enabled": true,
|
||||
"display": 2
|
||||
},
|
||||
|
||||
/*
|
||||
* Show an image preview on click.
|
||||
*/
|
||||
"preview-img": {
|
||||
"enabled": true,
|
||||
"types": ["bmp", "gif", "ico", "image", "jpg", "png", "tiff"]
|
||||
},
|
||||
|
||||
/*
|
||||
* Show text file preview on click.
|
||||
* "types" maps file types to SyntaxHighligher brushes. Special case: "markdown" will
|
||||
* be rendered as HTML.
|
||||
*
|
||||
* For available brushes see http://alexgorbatchev.com/SyntaxHighlighter/manual/brushes/
|
||||
*/
|
||||
"preview-txt": {
|
||||
"enabled": true,
|
||||
"types": {
|
||||
"authors": "plain",
|
||||
"copying": "plain",
|
||||
"c": "c",
|
||||
"cpp": "cpp",
|
||||
"css": "css",
|
||||
"h": "c",
|
||||
"hpp": "cpp",
|
||||
"install": "plain",
|
||||
"log": "plain",
|
||||
"java": "java",
|
||||
"makefile": "xml",
|
||||
"markdown": "plain",
|
||||
"php": "php",
|
||||
"python": "python",
|
||||
"readme": "plain",
|
||||
"rb": "ruby",
|
||||
"rtf": "plain",
|
||||
"script": "shell",
|
||||
"text": "plain",
|
||||
"js": "js",
|
||||
"xml": "xml"
|
||||
}
|
||||
},
|
||||
|
||||
/*
|
||||
* Show QRCodes on hovering files.
|
||||
*/
|
||||
"qrcode": {
|
||||
"enabled": true,
|
||||
"size": 150
|
||||
},
|
||||
|
||||
/*
|
||||
* Make entries selectable. At the moment only needed for packaged download.
|
||||
*/
|
||||
"select": {
|
||||
"enabled": true
|
||||
},
|
||||
|
||||
/*
|
||||
* Default sort order is a two letter code. The first letter specifies
|
||||
* the column: "n" for "Name", "d" for "Date" or "s" for "Size". The
|
||||
* second letter specifies the sort order: "a" for "ascending" or "d"
|
||||
* for "descending".
|
||||
*/
|
||||
"sort": {
|
||||
"enabled": true,
|
||||
"order": "na"
|
||||
},
|
||||
|
||||
/*
|
||||
* Show additional info in a statusbar.
|
||||
*/
|
||||
"statusbar": {
|
||||
"enabled": true
|
||||
},
|
||||
|
||||
/*
|
||||
* Requires PHP on the server.
|
||||
* Show thumbnails for image files. Needs the "/_h5ai/cache" folder to be
|
||||
* writable for the Apache Server.
|
||||
* - img thumbnails depend on PHP-GD
|
||||
* - mov thumbnails depend on ffmpeg
|
||||
* - doc thumbnails depend on convert
|
||||
*/
|
||||
"thumbnails": {
|
||||
"enabled": true,
|
||||
"img": ["bmp", "gif", "ico", "image", "jpg", "png", "tiff"],
|
||||
"mov": ["video"],
|
||||
"doc": ["pdf", "ps"],
|
||||
"delay": 1
|
||||
},
|
||||
|
||||
/*
|
||||
* Replace window title with current breadcrumb.
|
||||
*/
|
||||
"title": {
|
||||
"enabled": true
|
||||
},
|
||||
|
||||
/*
|
||||
* Show a folder tree.
|
||||
* Note that this tree might have side effects as it sends HEAD requests
|
||||
* to the folders, and therefore will invoke index.php scripts. Use
|
||||
* "folderstatus" above to avoid such requests.
|
||||
* It might also affect performance significantly.
|
||||
*
|
||||
* Slide tree bar into viewport if there is enough space.
|
||||
*/
|
||||
"tree": {
|
||||
"enabled": true,
|
||||
"slide": true
|
||||
}
|
||||
},
|
||||
|
||||
|
||||
/*
|
||||
* File types mapped to file extensions. In alphabetical order.
|
||||
*/
|
||||
"types": {
|
||||
"archive": [".tar.bz2", ".tar.gz", ".tgz"],
|
||||
"audio": [".aif", ".flac", ".m4a", ".mid", ".mp3", ".mpa", ".ra", ".ogg", ".wav", ".wma"],
|
||||
"authors": ["authors"],
|
||||
"bin": [".class", ".o", ".so"],
|
||||
"blank": [],
|
||||
"bmp": [".bmp"],
|
||||
"c": [".c"],
|
||||
"calc": [".ods", ".ots", ".xlr", ".xls", ".xlsx"],
|
||||
"cd": [".cue", ".iso"],
|
||||
"copying": ["copying", "license"],
|
||||
"cpp": [".cpp"],
|
||||
"css": [".css", ".less"],
|
||||
"deb": [".deb"],
|
||||
"default": [],
|
||||
"doc": [".doc", ".docx", ".odm", ".odt", ".ott"],
|
||||
"draw": [".drw"],
|
||||
"eps": [".eps"],
|
||||
"exe": [".bat", ".cmd", ".exe"],
|
||||
"folder": [],
|
||||
"folder-home": [],
|
||||
"folder-open": [],
|
||||
"folder-page": [],
|
||||
"folder-parent": [],
|
||||
"gif": [".gif"],
|
||||
"gzip": [".gz"],
|
||||
"h": [".h"],
|
||||
"hpp": [".hpp"],
|
||||
"html": [".htm", ".html", ".shtml"],
|
||||
"ico": [".ico"],
|
||||
"image": [".xpm"],
|
||||
"install": ["install"],
|
||||
"java": [".java"],
|
||||
"jpg": [".jpg", ".jpeg"],
|
||||
"js": [".js", ".json"],
|
||||
"log": [".log", "changelog"],
|
||||
"makefile": [".pom", "build.xml", "pom.xml"],
|
||||
"markdown": [".markdown", ".md"],
|
||||
"package": [],
|
||||
"pdf": [".pdf"],
|
||||
"php": [".php"],
|
||||
"playlist": [".m3u", ".m3u8", ".pls"],
|
||||
"png": [".png"],
|
||||
"pres": [".odp", ".otp", ".pps", ".ppt", ".pptx"],
|
||||
"ps": [".ps"],
|
||||
"psd": [".psd"],
|
||||
"py": [".py"],
|
||||
"rar": [".rar"],
|
||||
"rb": [".rb"],
|
||||
"readme": ["readme"],
|
||||
"rpm": [".rpm"],
|
||||
"rss": [".rss"],
|
||||
"rtf": [".rtf"],
|
||||
"script": [".conf", ".csh", ".ini", ".ksh", ".sh", ".shar", ".tcl"],
|
||||
"source": [],
|
||||
"sql": [],
|
||||
"tar": [".tar"],
|
||||
"tex": [".tex"],
|
||||
"text": [".diff", ".patch", ".text", ".txt"],
|
||||
"tiff": [".tiff"],
|
||||
"unknown": [],
|
||||
"vcal": [".vcal"],
|
||||
"video": [".avi", ".flv", ".mkv", ".mov", ".mp4", ".mpg", ".rm", ".swf", ".vob", ".wmv"],
|
||||
"xml": [".xml"],
|
||||
"zip": [".7z", ".bz2", ".jar", ".lzma", ".war", ".z", ".Z", ".zip"]
|
||||
},
|
||||
|
||||
|
||||
/*
|
||||
* Available translations. "en" in first place as a reference, otherwise in alphabetical order.
|
||||
*
|
||||
* Date format is used in detailed view, for example: "YYYY-MM-DD HH:mm:ss"
|
||||
* Syntax as specified by Moment.js (http://momentjs.com)
|
||||
*/
|
||||
"langs": {
|
||||
|
||||
"en": {
|
||||
"lang": "english",
|
||||
"details": "details",
|
||||
"icons": "icons",
|
||||
"name": "Name",
|
||||
"lastModified": "Last modified",
|
||||
"size": "Size",
|
||||
"parentDirectory": "Parent Directory",
|
||||
"empty": "empty",
|
||||
"folders": "folders",
|
||||
"files": "files",
|
||||
"download": "download",
|
||||
"noMatch": "no match",
|
||||
"dateFormat": "YYYY-MM-DD HH:mm",
|
||||
"filter": "filter"
|
||||
},
|
||||
|
||||
"bg": {
|
||||
"lang": "български",
|
||||
"details": "детайли",
|
||||
"icons": "икони",
|
||||
"name": "Име",
|
||||
"lastModified": "Последна промяна",
|
||||
"size": "Размер",
|
||||
"parentDirectory": "Предходна директория",
|
||||
"empty": "празно",
|
||||
"folders": "папки",
|
||||
"files": "файлове"
|
||||
},
|
||||
|
||||
"cs": {
|
||||
"lang": "čeština",
|
||||
"details": "podrobnosti",
|
||||
"icons": "ikony",
|
||||
"name": "Název",
|
||||
"lastModified": "Upraveno",
|
||||
"size": "Velikost",
|
||||
"parentDirectory": "Nadřazený adresář",
|
||||
"empty": "prázdný",
|
||||
"folders": "složek",
|
||||
"files": "souborů"
|
||||
},
|
||||
|
||||
"de": {
|
||||
"lang": "deutsch",
|
||||
"details": "Details",
|
||||
"icons": "Icons",
|
||||
"name": "Name",
|
||||
"lastModified": "Geändert",
|
||||
"size": "Größe",
|
||||
"parentDirectory": "Übergeordnetes Verzeichnis",
|
||||
"empty": "leer",
|
||||
"folders": "Ordner",
|
||||
"files": "Dateien",
|
||||
"download": "Download",
|
||||
"noMatch": "keine Treffer",
|
||||
"dateFormat": "DD.MM.YYYY HH:mm",
|
||||
"filter": "Filter"
|
||||
},
|
||||
|
||||
"el": {
|
||||
"lang": "ελληνικά",
|
||||
"details": "λεπτομέρειες",
|
||||
"icons": "εικονίδια",
|
||||
"name": "Όνομα",
|
||||
"lastModified": "Τελευταία τροποποίηση",
|
||||
"size": "Μέγεθος",
|
||||
"parentDirectory": "Προηγούμενος Κατάλογος",
|
||||
"empty": "κενό",
|
||||
"folders": "φάκελοι",
|
||||
"files": "αρχεία",
|
||||
"download": "μεταμόρφωση",
|
||||
"noMatch": "κανένα αποτέλεσμα",
|
||||
"dateFormat": "DD/MM/YYYY HH:mm"
|
||||
},
|
||||
|
||||
"es": {
|
||||
"lang": "español",
|
||||
"details": "Detalles",
|
||||
"icons": "Íconos",
|
||||
"name": "Nombre",
|
||||
"lastModified": "Última modificación",
|
||||
"size": "Tamaño",
|
||||
"parentDirectory": "Directorio superior",
|
||||
"empty": "vacío",
|
||||
"folders": "Directorios",
|
||||
"files": "Archivos",
|
||||
"download": "Descargar"
|
||||
},
|
||||
|
||||
"fr": {
|
||||
"lang": "français",
|
||||
"details": "détails",
|
||||
"icons": "icônes",
|
||||
"name": "Nom",
|
||||
"lastModified": "Dernière modification",
|
||||
"size": "Taille",
|
||||
"parentDirectory": "Dossier parent",
|
||||
"empty": "vide",
|
||||
"folders": "Répertoires",
|
||||
"files": "Fichiers",
|
||||
"download": "télécharger",
|
||||
"noMatch": "rien trouvé",
|
||||
"dateFormat": "DD/MM/YYYY HH:mm"
|
||||
},
|
||||
|
||||
"hu": {
|
||||
"lang": "magyar",
|
||||
"details": "részletek",
|
||||
"icons": "ikonok",
|
||||
"name": "Név",
|
||||
"lastModified": "Utoljára módosítva",
|
||||
"size": "Méret",
|
||||
"parentDirectory": "Szülő könyvtár",
|
||||
"empty": "üres",
|
||||
"folders": "mappák",
|
||||
"files": "fájlok",
|
||||
"download": "letöltés",
|
||||
"noMatch": "nincs találat",
|
||||
"dateFormat": "YYYY-MM-DD HH:mm"
|
||||
},
|
||||
|
||||
"it": {
|
||||
"lang": "italiano",
|
||||
"details": "dettagli",
|
||||
"icons": "icone",
|
||||
"name": "Nome",
|
||||
"lastModified": "Ultima modifica",
|
||||
"size": "Dimensione",
|
||||
"parentDirectory": "Cartella Superiore",
|
||||
"empty": "vuota",
|
||||
"folders": "cartelle",
|
||||
"files": "file"
|
||||
},
|
||||
|
||||
"ja": {
|
||||
"lang": "日本語",
|
||||
"details": "詳細",
|
||||
"icons": "アイコン",
|
||||
"name": "名前",
|
||||
"lastModified": "変更日",
|
||||
"size": "サイズ",
|
||||
"parentDirectory": "親フォルダ",
|
||||
"empty": "項目なし",
|
||||
"folders": "フォルダ",
|
||||
"files": "ファイル",
|
||||
"download": "ダウンロード",
|
||||
"noMatch": "一致なし"
|
||||
},
|
||||
|
||||
"lv": {
|
||||
"lang": "latviešu",
|
||||
"details": "detaļas",
|
||||
"icons": "ikonas",
|
||||
"name": "Nosaukums",
|
||||
"lastModified": "Pēdējoreiz modificēts",
|
||||
"size": "Izmērs",
|
||||
"parentDirectory": "Vecākdirektorijs",
|
||||
"empty": "tukšs",
|
||||
"folders": "mapes",
|
||||
"files": "faili",
|
||||
"download": "lejupielādēt",
|
||||
"noMatch": "nav sakritības",
|
||||
"dateFormat": "YYYY-MM-DD HH:mm"
|
||||
},
|
||||
|
||||
"nb": {
|
||||
"lang": "norwegian",
|
||||
"details": "detaljer",
|
||||
"icons": "ikoner",
|
||||
"name": "Navn",
|
||||
"lastModified": "Sist endret",
|
||||
"size": "Størrelse",
|
||||
"parentDirectory": "Overordnet mappe",
|
||||
"empty": "tom",
|
||||
"folders": "mapper",
|
||||
"files": "filer",
|
||||
"download": "last ned",
|
||||
"noMatch": "ingen treff"
|
||||
},
|
||||
|
||||
"nl": {
|
||||
"lang": "nederlands",
|
||||
"details": "details",
|
||||
"icons": "iconen",
|
||||
"name": "Naam",
|
||||
"lastModified": "Laatste wijziging",
|
||||
"size": "Grootte",
|
||||
"parentDirectory": "Bovenliggende map",
|
||||
"empty": "lege"
|
||||
},
|
||||
|
||||
"pl": {
|
||||
"lang": "polski",
|
||||
"details": "szczegóły",
|
||||
"icons": "ikony",
|
||||
"name": "Nazwa",
|
||||
"lastModified": "Ostatnia modyfikacja",
|
||||
"size": "Rozmiar",
|
||||
"parentDirectory": "Katalog nadrzędny",
|
||||
"empty": "pusty",
|
||||
"folders": "foldery",
|
||||
"files": "pliki"
|
||||
},
|
||||
|
||||
"pt": {
|
||||
"lang": "português",
|
||||
"details": "detalhes",
|
||||
"icons": "ícones",
|
||||
"name": "Nome",
|
||||
"lastModified": "Última modificação",
|
||||
"size": "Tamanho",
|
||||
"parentDirectory": "Diretório superior",
|
||||
"empty": "vazio",
|
||||
"folders": "pastas",
|
||||
"files": "arquivos"
|
||||
},
|
||||
|
||||
"ro": {
|
||||
"lang": "română",
|
||||
"details": "detalii",
|
||||
"icons": "pictograme",
|
||||
"name": "nume",
|
||||
"lastModified": "ultima modificare",
|
||||
"size": "mărime",
|
||||
"parentDirectory": "dosar părinte",
|
||||
"empty": "gol",
|
||||
"folders": "dosar",
|
||||
"files": "fişiere",
|
||||
"download": "descarcă",
|
||||
"noMatch": "0 rezultate"
|
||||
},
|
||||
|
||||
"ru": {
|
||||
"lang": "русский",
|
||||
"details": "детали",
|
||||
"icons": "иконки",
|
||||
"name": "Имя",
|
||||
"lastModified": "Последние изменения",
|
||||
"size": "Размер",
|
||||
"parentDirectory": "Главная директория",
|
||||
"empty": "пусто",
|
||||
"folders": "папки",
|
||||
"files": "файлы"
|
||||
},
|
||||
|
||||
"sk": {
|
||||
"lang": "slovenčina",
|
||||
"details": "podrobnosti",
|
||||
"icons": "ikony",
|
||||
"name": "Názov",
|
||||
"lastModified": "Upravené",
|
||||
"size": "Velkosť",
|
||||
"parentDirectory": "Nadriadený priečinok",
|
||||
"empty": "prázdny",
|
||||
"folders": "priečinkov",
|
||||
"files": "súborov"
|
||||
},
|
||||
|
||||
"sr": {
|
||||
"lang": "srpski",
|
||||
"details": "detalji",
|
||||
"icons": "ikone",
|
||||
"name": "Ime",
|
||||
"lastModified": "Poslednja modifikacija",
|
||||
"size": "Veličina",
|
||||
"parentDirectory": "Roditeljski direktorijum",
|
||||
"empty": "prazno",
|
||||
"folders": "direktorijum",
|
||||
"files": "fajlovi",
|
||||
"download": "download",
|
||||
"noMatch": "bez poklapanja"
|
||||
},
|
||||
|
||||
"sv": {
|
||||
"lang": "svenska",
|
||||
"details": "detaljerad",
|
||||
"icons": "ikoner",
|
||||
"name": "Filnamn",
|
||||
"lastModified": "Senast ändrad",
|
||||
"size": "Filstorlek",
|
||||
"parentDirectory": "Till överordnad mapp",
|
||||
"empty": "tom"
|
||||
},
|
||||
|
||||
"tr": {
|
||||
"lang": "türkçe",
|
||||
"details": "detaylar",
|
||||
"icons": "ikonlar",
|
||||
"name": "İsim",
|
||||
"lastModified": "Son Düzenleme",
|
||||
"size": "Boyut",
|
||||
"parentDirectory": "Üst Dizin",
|
||||
"empty": "boş",
|
||||
"folders": "klasörler",
|
||||
"files": "dosyalar",
|
||||
"download": "indir"
|
||||
},
|
||||
|
||||
"zh-cn": {
|
||||
"lang": "简体中文",
|
||||
"details": "详情",
|
||||
"icons": "图标",
|
||||
"name": "文件名",
|
||||
"lastModified": "上次修改",
|
||||
"size": "大小",
|
||||
"parentDirectory": "上层文件夹",
|
||||
"empty": "空文件夹",
|
||||
"folders": "文件夹",
|
||||
"files": "文件",
|
||||
"download": "下载"
|
||||
},
|
||||
|
||||
"zh-tw": {
|
||||
"lang": "正體中文",
|
||||
"details": "詳細資料",
|
||||
"icons": "圖示",
|
||||
"name": "檔名",
|
||||
"lastModified": "上次修改",
|
||||
"size": "大小",
|
||||
"parentDirectory": "上層目錄",
|
||||
"empty": "空資料夾",
|
||||
"folders": "資料夾",
|
||||
"files": "檔案",
|
||||
"download": "下載"
|
||||
}
|
||||
}
|
||||
};
|
34
src/_h5ai/config.php
Normal file
@@ -0,0 +1,34 @@
|
||||
<?php
|
||||
/*
|
||||
* h5ai {{version}}
|
||||
*
|
||||
* PHP Configuration
|
||||
* filesystem paths and file ignore rules
|
||||
*/
|
||||
|
||||
global $H5AI_CONFIG;
|
||||
|
||||
$H5AI_CONFIG = array(
|
||||
|
||||
/*
|
||||
* This configuration assumes that h5ai is installed
|
||||
* in the webroot directory of the Apache server.
|
||||
*/
|
||||
"ROOT_ABS_PATH" => dirname(dirname(__FILE__)),
|
||||
|
||||
/*
|
||||
* Files/folders that should not be listed. Specified
|
||||
* by the complete filename or by a regular expression.
|
||||
* http://www.php.net/manual/en/function.preg-match.php
|
||||
*/
|
||||
"IGNORE" => array(),
|
||||
"IGNORE_PATTERNS" => array("/^\\./", "/^_h5ai/"),
|
||||
|
||||
/*
|
||||
* Folders that contain one of these files will be considered
|
||||
* as none h5ai folders.
|
||||
*/
|
||||
"INDEX_FILES" => array("index.html", "index.htm", "index.php")
|
||||
);
|
||||
|
||||
?>
|
83
src/_h5ai/css/inc/apache-autoindex-table.less
Normal file
@@ -0,0 +1,83 @@
|
||||
|
||||
#data-apache-autoindex, #data-php-no-js-fallback {
|
||||
max-width: 960px;
|
||||
margin: 0 auto;
|
||||
|
||||
table {
|
||||
display: block;
|
||||
width: 100%;
|
||||
border-collapse: collapse;
|
||||
|
||||
th, td {
|
||||
padding: 6px;
|
||||
text-align: left;
|
||||
border: none;
|
||||
}
|
||||
th {
|
||||
padding-bottom: 18px;
|
||||
|
||||
a, a:visited {
|
||||
color: #555;
|
||||
font-weight: normal;
|
||||
text-decoration: none;
|
||||
cursor: pointer;
|
||||
opacity: 0.4;
|
||||
.transition(all 0.2s ease-in-out);
|
||||
|
||||
&:hover {
|
||||
color: #555;
|
||||
opacity: 0.9;
|
||||
}
|
||||
}
|
||||
span {
|
||||
color: #555;
|
||||
font-weight: normal;
|
||||
opacity: 0.4;
|
||||
}
|
||||
}
|
||||
td {
|
||||
border: 1px solid #ddd;
|
||||
border-left: none;
|
||||
border-right: none;
|
||||
overflow: hidden;
|
||||
white-space: nowrap;
|
||||
font-size: 16px;
|
||||
|
||||
a, a:active, a:visited {
|
||||
display: block;
|
||||
color: #555;
|
||||
text-decoration: none;
|
||||
cursor: pointer;
|
||||
|
||||
&:hover {
|
||||
color: #e80;
|
||||
}
|
||||
}
|
||||
}
|
||||
td:nth-child(1), th:nth-child(1) {
|
||||
text-align: center;
|
||||
width: 16px;
|
||||
|
||||
img {
|
||||
width: 16px;
|
||||
height: 16px;
|
||||
position: relative;
|
||||
top: -2px;
|
||||
}
|
||||
}
|
||||
td:nth-child(2), th:nth-child(2) {
|
||||
width: 682px;
|
||||
max-width: 682px;
|
||||
}
|
||||
td:nth-child(3), th:nth-child(3) {
|
||||
text-align: right;
|
||||
width: 160px;
|
||||
min-width: 160px;
|
||||
}
|
||||
td:nth-child(4), th:nth-child(4) {
|
||||
text-align: right;
|
||||
width: 70px;
|
||||
min-width: 70px;
|
||||
}
|
||||
}
|
||||
}
|
67
src/_h5ai/css/inc/bottombar.less
Normal file
@@ -0,0 +1,67 @@
|
||||
|
||||
#bottombar {
|
||||
position: fixed;
|
||||
z-index: 5;
|
||||
width: 100%;
|
||||
left: 0;
|
||||
bottom: 0;
|
||||
padding: 6px 0 8px 0;
|
||||
.vert-gradient(rgb(241,241,241), rgb(228,228,228));
|
||||
border-top: 1px solid rgb(210,210,210);
|
||||
|
||||
color: #999;
|
||||
text-align: center;
|
||||
|
||||
a, a:active, a:visited {
|
||||
color: #555;
|
||||
text-decoration: none;
|
||||
.transition(all 0.2s ease-in-out);
|
||||
opacity: 0.7;
|
||||
|
||||
&:hover {
|
||||
color: #e80;
|
||||
opacity: 1;
|
||||
}
|
||||
}
|
||||
.left {
|
||||
display: block;
|
||||
padding: 0 8px;
|
||||
float: left
|
||||
}
|
||||
.center {
|
||||
display: block;
|
||||
margin: 0 100px;
|
||||
}
|
||||
.right {
|
||||
display: block;
|
||||
padding: 0 8px;
|
||||
float: right
|
||||
}
|
||||
.noJsMsg {
|
||||
color: #c33;
|
||||
margin-left: 16px;
|
||||
}
|
||||
.oldBrowser {
|
||||
display: none;
|
||||
color: #c33;
|
||||
margin-left: 16px;
|
||||
a, a:active, a:visited {
|
||||
color: #c33;
|
||||
text-decoration: underline;
|
||||
&:hover {
|
||||
color: #e80;
|
||||
}
|
||||
}
|
||||
}
|
||||
.status {
|
||||
.sep {
|
||||
display: inline-block;
|
||||
padding: 0 6px;
|
||||
}
|
||||
&.default {
|
||||
}
|
||||
&.dynamic {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
}
|
31
src/_h5ai/css/inc/content.less
Normal file
@@ -0,0 +1,31 @@
|
||||
|
||||
#content {
|
||||
max-width: 960px;
|
||||
margin: 50px auto;
|
||||
font-size: 16px;
|
||||
}
|
||||
|
||||
|
||||
#content-header, #content-footer {
|
||||
|
||||
a, a:active, a:visited {
|
||||
color: #2080FF;
|
||||
text-decoration: none;
|
||||
cursor: pointer;
|
||||
|
||||
&:hover {
|
||||
color: #68A9FF;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
#content-header {
|
||||
padding-bottom: 12px;
|
||||
margin-bottom: 32px;
|
||||
}
|
||||
|
||||
#content-footer {
|
||||
padding-top: 12px;
|
||||
margin-top: 32px;
|
||||
}
|
22
src/_h5ai/css/inc/context.less
Normal file
@@ -0,0 +1,22 @@
|
||||
|
||||
#context {
|
||||
position: fixed;
|
||||
z-index: 1;
|
||||
display: none;
|
||||
right: 16px;
|
||||
bottom: 50px;
|
||||
|
||||
background-color: #fff;
|
||||
border: 2px solid #ddd;
|
||||
padding: 8px;
|
||||
|
||||
span {
|
||||
display: block;
|
||||
}
|
||||
|
||||
.qrcode {
|
||||
canvas {
|
||||
display: block;
|
||||
}
|
||||
}
|
||||
}
|
30
src/_h5ai/css/inc/download.less
Normal file
@@ -0,0 +1,30 @@
|
||||
|
||||
#download {
|
||||
display: none;
|
||||
.topbar-right;
|
||||
.transition(all 0.2s ease-in-out);
|
||||
|
||||
&.failed {
|
||||
background-color: rgba(255,0,0,0.5);
|
||||
}
|
||||
}
|
||||
|
||||
#download-auth {
|
||||
display: none;
|
||||
position: fixed;
|
||||
z-index: 5;
|
||||
left: 0;
|
||||
top: 0;
|
||||
.vert-gradient(rgb(241,241,241), rgb(228,228,228));
|
||||
border: 1px solid rgb(210,210,210);
|
||||
|
||||
input {
|
||||
display: block;
|
||||
margin: 4px 6px;
|
||||
border: 1px solid rgb(210,210,210);
|
||||
font-family: Ubuntu, sans-serif;
|
||||
color: #555;
|
||||
background-color: rgba(255,255,255,1);
|
||||
width: 100px;
|
||||
}
|
||||
}
|
374
src/_h5ai/css/inc/extended.less
Normal file
@@ -0,0 +1,374 @@
|
||||
|
||||
#selection-rect {
|
||||
display: none;
|
||||
position: absolute;
|
||||
left: 0;
|
||||
top: 0;
|
||||
z-index: 2;
|
||||
border: 1px dashed rgba(240,100,0,0.5);
|
||||
background-color: rgba(240,100,0,0.2);
|
||||
}
|
||||
|
||||
|
||||
|
||||
#extended.view-details {
|
||||
display: none;
|
||||
|
||||
ul {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
list-style: none;
|
||||
|
||||
li {
|
||||
position: relative;
|
||||
white-space: nowrap;
|
||||
clear: both;
|
||||
|
||||
&.header {
|
||||
font-size: 13px;
|
||||
|
||||
a, a:active, a:visited {
|
||||
padding-bottom: 18px;
|
||||
color: #555;
|
||||
text-decoration: none;
|
||||
opacity: 0.4;
|
||||
cursor: pointer;
|
||||
.transition(all 0.2s ease-in-out);
|
||||
|
||||
img.ascending, img.descending {
|
||||
position: relative;
|
||||
top: -2px;
|
||||
display: none;
|
||||
width: 12px;
|
||||
height: 12px;
|
||||
padding: 0 8px;
|
||||
}
|
||||
&:hover {
|
||||
color: #555;
|
||||
opacity: 0.9;
|
||||
}
|
||||
&.ascending img.ascending {
|
||||
display: inline;
|
||||
}
|
||||
&.descending img.descending {
|
||||
display: inline;
|
||||
}
|
||||
}
|
||||
}
|
||||
&.entry {
|
||||
a, a:active, a:visited {
|
||||
display: block;
|
||||
color: #555;
|
||||
text-decoration: none;
|
||||
cursor: pointer;
|
||||
border-bottom: 1px solid #e8e8e8;
|
||||
|
||||
&:hover, &.hover {
|
||||
background-color: #f6f6f6;
|
||||
color: #e80;
|
||||
}
|
||||
}
|
||||
&.selected:not(.selecting) a, &.selecting:not(.selected) a {
|
||||
border-color: rgba(240,100,0,0.2);
|
||||
background-color: rgba(240,100,0,0.2);
|
||||
}
|
||||
&.error {
|
||||
a, a:active, a:visited {
|
||||
color: #aaa;
|
||||
|
||||
.label {
|
||||
.hint {
|
||||
margin-left: 12px;
|
||||
font-size: 0.9em;
|
||||
color: #c55;
|
||||
}
|
||||
}
|
||||
&:hover, &.hover {
|
||||
opacity: 1;
|
||||
background-color: #f6f6f6;
|
||||
color: #e80;
|
||||
}
|
||||
}
|
||||
}
|
||||
&.folder-parent {
|
||||
.date, .size {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
}
|
||||
.icon, .label, .date, .size {
|
||||
padding: 6px;
|
||||
}
|
||||
.icon {
|
||||
display: inline-block;
|
||||
position: absolute;
|
||||
left: 0;
|
||||
top: -2px;
|
||||
width: 16px;
|
||||
text-align: center;
|
||||
|
||||
img {
|
||||
max-width: 16px;
|
||||
max-height: 16px;
|
||||
&.thumb {
|
||||
.box-shadow(0 0 0 1px #ddd);
|
||||
}
|
||||
}
|
||||
}
|
||||
.icon.big {
|
||||
display: none;
|
||||
}
|
||||
.label {
|
||||
display: block;
|
||||
margin: 0 270px 0 24px;
|
||||
overflow: hidden;
|
||||
white-space: nowrap;
|
||||
text-align: left;
|
||||
}
|
||||
.date {
|
||||
position: absolute;
|
||||
right: 100px;
|
||||
top: 0;
|
||||
text-align: right;
|
||||
width: 160px;
|
||||
white-space: nowrap;
|
||||
}
|
||||
.size {
|
||||
position: absolute;
|
||||
right: 0;
|
||||
top: 0;
|
||||
text-align: right;
|
||||
width: 80px;
|
||||
white-space: nowrap;
|
||||
}
|
||||
}
|
||||
}
|
||||
.empty, .no-match {
|
||||
text-align: center;
|
||||
margin: 50px 0;
|
||||
color: #ddd;
|
||||
font-size: 5em;
|
||||
font-weight: bold;
|
||||
}
|
||||
.no-match {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
#extended.view-list {
|
||||
display: none;
|
||||
|
||||
ul {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
list-style: none;
|
||||
|
||||
li {
|
||||
position: relative;
|
||||
white-space: nowrap;
|
||||
clear: both;
|
||||
|
||||
&.header {
|
||||
display: none;
|
||||
}
|
||||
&.entry {
|
||||
a, a:active, a:visited {
|
||||
display: block;
|
||||
color: #555;
|
||||
text-decoration: none;
|
||||
cursor: pointer;
|
||||
border-bottom: 1px solid #e8e8e8;
|
||||
height: 56px;
|
||||
|
||||
&:hover, &.hover {
|
||||
background-color: #f6f6f6;
|
||||
color: #e80;
|
||||
}
|
||||
}
|
||||
&.selected:not(.selecting) a, &.selecting:not(.selected) a {
|
||||
border-color: rgba(240,100,0,0.2);
|
||||
background-color: rgba(240,100,0,0.2);
|
||||
}
|
||||
&.error {
|
||||
a, a:active, a:visited {
|
||||
color: #aaa;
|
||||
|
||||
.label {
|
||||
.hint {
|
||||
margin-left: 12px;
|
||||
font-size: 0.9em;
|
||||
color: #c55;
|
||||
}
|
||||
}
|
||||
&:hover, &.hover {
|
||||
opacity: 1;
|
||||
background-color: #f6f6f6;
|
||||
color: #e80;
|
||||
}
|
||||
}
|
||||
}
|
||||
&.folder-parent {
|
||||
.date, .size {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
}
|
||||
.icon, .label, .date, .size {
|
||||
padding: 6px;
|
||||
}
|
||||
.icon {
|
||||
display: inline-block;
|
||||
position: absolute;
|
||||
left: 0;
|
||||
top: -2px;
|
||||
width: 100px;
|
||||
text-align: center;
|
||||
|
||||
img {
|
||||
max-width: 100px;
|
||||
max-height: 48px;
|
||||
&.thumb {
|
||||
.box-shadow(0 0 0 1px #ddd);
|
||||
}
|
||||
}
|
||||
}
|
||||
.icon.small {
|
||||
display: none;
|
||||
}
|
||||
.label {
|
||||
display: block;
|
||||
margin: 0 270px 0 106px;
|
||||
overflow: hidden;
|
||||
white-space: nowrap;
|
||||
text-align: left;
|
||||
}
|
||||
.date {
|
||||
margin: 0 0 0 106px;
|
||||
text-align: right;
|
||||
width: 160px;
|
||||
white-space: nowrap;
|
||||
}
|
||||
.size {
|
||||
text-align: right;
|
||||
width: 80px;
|
||||
white-space: nowrap;
|
||||
}
|
||||
}
|
||||
}
|
||||
.empty, .no-match {
|
||||
text-align: center;
|
||||
margin: 50px 0;
|
||||
color: #ddd;
|
||||
font-size: 5em;
|
||||
font-weight: bold;
|
||||
}
|
||||
.no-match {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
#extended.view-icons {
|
||||
display: none;
|
||||
padding: 3px;
|
||||
|
||||
ul {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
list-style: none;
|
||||
|
||||
li {
|
||||
&.header {
|
||||
display: none;
|
||||
}
|
||||
&.entry {
|
||||
float: left;
|
||||
|
||||
a, a:active, a:visited {
|
||||
display: block;
|
||||
margin: 8px;
|
||||
padding: 8px;
|
||||
width: 100px;
|
||||
height: 120px;
|
||||
float: left;
|
||||
text-align: center;
|
||||
text-decoration: none;
|
||||
overflow: hidden;
|
||||
border-radius: 5px;
|
||||
color: #555;
|
||||
cursor: pointer;
|
||||
border: 2px solid rgba(0,0,0,0);
|
||||
|
||||
&:hover, &.hover {
|
||||
color: #e80;
|
||||
border-color: #eee;
|
||||
background-color: #f6f6f6;
|
||||
}
|
||||
.icon {
|
||||
display: block;
|
||||
height: 48px;
|
||||
margin-bottom: 6px;
|
||||
|
||||
img {
|
||||
max-width: 100px;
|
||||
max-height: 48px;
|
||||
&.thumb {
|
||||
.box-shadow(0 0 0 1px #ddd);
|
||||
}
|
||||
}
|
||||
}
|
||||
.icon.small {
|
||||
display: none;
|
||||
}
|
||||
.label {
|
||||
display: block;
|
||||
word-wrap: break-word;
|
||||
}
|
||||
.date, .size {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
&.selected:not(.selecting) a, &.selecting:not(.selected) a {
|
||||
border-color: rgba(240,100,0,0.2);
|
||||
background-color: rgba(240,100,0,0.2);
|
||||
}
|
||||
&.error {
|
||||
a, a:active, a:visited {
|
||||
color: #aaa;
|
||||
text-decoration: none;
|
||||
|
||||
.label {
|
||||
.hint {
|
||||
padding: 0 6px;
|
||||
font-size: 0.9em;
|
||||
color: #c55;
|
||||
}
|
||||
}
|
||||
&:hover, &.hover {
|
||||
color: #e80;
|
||||
border-color: #eee;
|
||||
background-color: #f6f6f6;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
.empty, .no-match {
|
||||
margin: 0 120px;
|
||||
padding: 16px;
|
||||
height: 120px;
|
||||
text-align: center;
|
||||
color: #ddd;
|
||||
font-size: 5em;
|
||||
font-weight: bold;
|
||||
}
|
||||
.no-match {
|
||||
display: none;
|
||||
}
|
||||
}
|
19
src/_h5ai/css/inc/filter.less
Normal file
@@ -0,0 +1,19 @@
|
||||
|
||||
#filter {
|
||||
.topbar-right;
|
||||
|
||||
input {
|
||||
display: none;
|
||||
border: none;
|
||||
font-family: Ubuntu, sans-serif;
|
||||
color: #555;
|
||||
background-color: rgba(0,0,0,0);
|
||||
width: 100px;
|
||||
}
|
||||
|
||||
&.current {
|
||||
input {
|
||||
display: inline;
|
||||
}
|
||||
}
|
||||
}
|
77
src/_h5ai/css/inc/h5ai-info.less
Normal file
@@ -0,0 +1,77 @@
|
||||
|
||||
body#h5ai-info {
|
||||
font-family: Ubuntu, Arial, sans;
|
||||
margin: 2em auto 4em auto;
|
||||
font-size: 20px;
|
||||
color: #555;
|
||||
max-width: 600px;
|
||||
text-align: center;
|
||||
|
||||
.build-version {
|
||||
display: block;
|
||||
// font-size: 0.9em;
|
||||
// color: #aaa;
|
||||
}
|
||||
.build-stamp {
|
||||
display: block;
|
||||
margin-top: 0.3em;
|
||||
font-size: 0.6em;
|
||||
color: #aaa;
|
||||
}
|
||||
h1 {
|
||||
font-size: 3.6em;
|
||||
margin: 0;
|
||||
}
|
||||
h2 {
|
||||
font-size: 1.15em;
|
||||
margin: 2.6em 0 0 0;
|
||||
}
|
||||
p {
|
||||
line-height: 1.6em;
|
||||
}
|
||||
p + p {
|
||||
margin-top: 1.2em;
|
||||
}
|
||||
li {
|
||||
margin-top: 0.6em;
|
||||
line-height: 1.4em;
|
||||
}
|
||||
|
||||
#tests {
|
||||
display: inline-block;
|
||||
list-style-type: none;
|
||||
text-align: left;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
|
||||
.test-label {
|
||||
display: inline-block;
|
||||
width: 300px;
|
||||
}
|
||||
.test-result {
|
||||
display: inline-block;
|
||||
width: 70px;
|
||||
text-align: right;
|
||||
font-weight: bold;
|
||||
color: #aaa;
|
||||
|
||||
&.test-passed {
|
||||
color: #5a5;
|
||||
}
|
||||
&.test-failed {
|
||||
color: #a55;
|
||||
}
|
||||
}
|
||||
.test-info {
|
||||
margin: 4px 0 12px 12px;
|
||||
font-size: 0.7em;
|
||||
color: #aaa;
|
||||
width: 300px;
|
||||
line-height: 1.2em;
|
||||
}
|
||||
}
|
||||
|
||||
#bottombar {
|
||||
font-size: 13px;
|
||||
}
|
||||
}
|
54
src/_h5ai/css/inc/l10n.less
Normal file
@@ -0,0 +1,54 @@
|
||||
|
||||
#langSelector {
|
||||
position: relative;
|
||||
cursor: pointer;
|
||||
|
||||
.langOptions {
|
||||
position: absolute;
|
||||
z-index: 2;
|
||||
overflow: auto;
|
||||
display: none;
|
||||
right: 0;
|
||||
top: 0;
|
||||
max-height: 200px;
|
||||
background-color: rgb(241,241,241);
|
||||
border: 1px solid rgb(210,210,210);
|
||||
|
||||
.sp-scrollbar {
|
||||
margin: 0;
|
||||
width: 6px;
|
||||
background-color: rgb(210,210,210);
|
||||
cursor: pointer;
|
||||
|
||||
.sp-thumb {
|
||||
background-color: rgb(180,180,180);
|
||||
}
|
||||
&.active .sp-thumb {
|
||||
background-color: rgb(150,150,150);
|
||||
}
|
||||
}
|
||||
|
||||
ul {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
list-style: none;
|
||||
text-align: left;
|
||||
|
||||
li {
|
||||
padding: 8px 24px 10px 24px;
|
||||
white-space: nowrap;
|
||||
border-top: 1px solid rgb(231,231,231);
|
||||
.transition(all 0.2s ease-in-out);
|
||||
|
||||
&.current {
|
||||
color: #333;
|
||||
background-color: rgba(255,255,255,0.8);
|
||||
}
|
||||
&:hover {
|
||||
color: #e80;
|
||||
background-color: rgba(255,255,255,0.8);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
129
src/_h5ai/css/inc/preview-img.less
Normal file
@@ -0,0 +1,129 @@
|
||||
|
||||
#pv-img-overlay {
|
||||
display: none;
|
||||
position: fixed;
|
||||
left: 0;
|
||||
top: 0;
|
||||
right: 0;
|
||||
bottom: 0;
|
||||
z-index: 100;
|
||||
|
||||
background-color: rgba(0,0,0,0.5);
|
||||
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
#pv-img-content {
|
||||
position: fixed;
|
||||
|
||||
}
|
||||
|
||||
#pv-img-image {
|
||||
max-width: 100%;
|
||||
max-height: 100%;
|
||||
border: 2px solid #fff;
|
||||
.border-radius(4px);
|
||||
}
|
||||
|
||||
#pv-img-overlay.fullscreen {
|
||||
background-color: #111;
|
||||
|
||||
#pv-img-image {
|
||||
border: 0;
|
||||
.border-radius(0);
|
||||
}
|
||||
}
|
||||
|
||||
#pv-img-close {
|
||||
position: fixed;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
#pv-img-prev {
|
||||
position: fixed;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
#pv-img-next {
|
||||
position: fixed;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
#pv-img-buttons, #pv-img-topbuttons {
|
||||
list-style: none;
|
||||
list-style-image: none;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
|
||||
img {
|
||||
position: relative;
|
||||
top: -2px;
|
||||
width: 16px;
|
||||
height: 16px;
|
||||
}
|
||||
img + span, img + input {
|
||||
margin-left: 6px;
|
||||
}
|
||||
input {
|
||||
background-color: rgba(255,255,255,0.1);
|
||||
border: none;
|
||||
color: #ccc;
|
||||
}
|
||||
|
||||
.bar-label {
|
||||
display: block;
|
||||
color: #ccc;
|
||||
height: 30px;
|
||||
line-height: 30px;
|
||||
padding: 0 10px;
|
||||
opacity: 0.7;
|
||||
.transition(all 0.2s ease-in-out);
|
||||
}
|
||||
|
||||
.bar-highlight {
|
||||
background-color: rgba(255,255,255,0.1);
|
||||
opacity: 1.0;
|
||||
}
|
||||
|
||||
@bar-sep-border: 1px solid rgba(255,255,255,0.05);
|
||||
|
||||
.bar-button {
|
||||
.bar-label;
|
||||
cursor: pointer;
|
||||
&:hover, &.hover {
|
||||
.bar-highlight;
|
||||
}
|
||||
}
|
||||
|
||||
.bar-left {
|
||||
float: left;
|
||||
border-right: @bar-sep-border;
|
||||
}
|
||||
|
||||
.bar-right {
|
||||
float: right;
|
||||
border-left: @bar-sep-border;
|
||||
}
|
||||
}
|
||||
|
||||
#pv-img-topbar {
|
||||
position: fixed;
|
||||
z-index: 5;
|
||||
width: 100%;
|
||||
left: 0;
|
||||
top: 0;
|
||||
.vert-gradient(rgb(37,37,37), rgb(24,24,24));
|
||||
border-bottom: 1px solid rgb(27,27,27);
|
||||
}
|
||||
|
||||
#pv-img-bottombar {
|
||||
position: fixed;
|
||||
z-index: 5;
|
||||
width: 100%;
|
||||
left: 0;
|
||||
bottom: 0;
|
||||
.vert-gradient(rgb(27,27,27), rgb(14,14,14));
|
||||
border-top: 1px solid rgb(45,45,45);
|
||||
}
|
154
src/_h5ai/css/inc/preview-txt.less
Normal file
@@ -0,0 +1,154 @@
|
||||
|
||||
#pv-txt-overlay {
|
||||
display: none;
|
||||
position: fixed;
|
||||
left: 0;
|
||||
top: 0;
|
||||
right: 0;
|
||||
bottom: 0;
|
||||
z-index: 100;
|
||||
|
||||
background-color: rgba(0,0,0,0.5);
|
||||
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
#pv-txt-content {
|
||||
max-width: 960px;
|
||||
margin: 0 auto;
|
||||
padding: 10px;
|
||||
background-color: #fff;
|
||||
border: 2px solid #fff;
|
||||
.border-radius(4px);
|
||||
text-align: left;
|
||||
overflow: auto;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
#pv-txt-text {
|
||||
.syntaxhighlighter {
|
||||
overflow: visible !important;
|
||||
|
||||
.gutter .line {
|
||||
border-right: none !important;
|
||||
}
|
||||
}
|
||||
|
||||
&.markdown {
|
||||
font-size: 16px;
|
||||
padding: 8px 24px;
|
||||
|
||||
a, a:active, a:visited {
|
||||
color: #2080FF;
|
||||
text-decoration: none;
|
||||
cursor: pointer;
|
||||
|
||||
&:hover {
|
||||
color: #68A9FF;
|
||||
}
|
||||
}
|
||||
|
||||
pre, code {
|
||||
font-family: "Ubuntu Mono", monospace;
|
||||
}
|
||||
code {
|
||||
color: #008200;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#pv-txt-close {
|
||||
position: fixed;
|
||||
left: 0;
|
||||
top: 0;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
#pv-txt-prev {
|
||||
position: fixed;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
#pv-txt-next {
|
||||
position: fixed;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
#pv-txt-buttons, #pv-txt-topbuttons {
|
||||
list-style: none;
|
||||
list-style-image: none;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
|
||||
img {
|
||||
position: relative;
|
||||
top: -2px;
|
||||
width: 16px;
|
||||
height: 16px;
|
||||
}
|
||||
img + span, img + input {
|
||||
margin-left: 6px;
|
||||
}
|
||||
input {
|
||||
background-color: rgba(255,255,255,0.1);
|
||||
border: none;
|
||||
color: #ccc;
|
||||
}
|
||||
|
||||
.bar-label {
|
||||
display: block;
|
||||
color: #ccc;
|
||||
height: 30px;
|
||||
line-height: 30px;
|
||||
padding: 0 10px;
|
||||
opacity: 0.7;
|
||||
.transition(all 0.2s ease-in-out);
|
||||
}
|
||||
|
||||
.bar-highlight {
|
||||
background-color: rgba(255,255,255,0.1);
|
||||
opacity: 1.0;
|
||||
}
|
||||
|
||||
@bar-sep-border: 1px solid rgba(255,255,255,0.05);
|
||||
|
||||
.bar-button {
|
||||
.bar-label;
|
||||
cursor: pointer;
|
||||
&:hover, &.hover {
|
||||
.bar-highlight;
|
||||
}
|
||||
}
|
||||
|
||||
.bar-left {
|
||||
float: left;
|
||||
border-right: @bar-sep-border;
|
||||
}
|
||||
|
||||
.bar-right {
|
||||
float: right;
|
||||
border-left: @bar-sep-border;
|
||||
}
|
||||
}
|
||||
|
||||
#pv-txt-topbar {
|
||||
position: fixed;
|
||||
z-index: 5;
|
||||
width: 100%;
|
||||
left: 0;
|
||||
top: 0;
|
||||
.vert-gradient(rgb(37,37,37), rgb(24,24,24));
|
||||
border-bottom: 1px solid rgb(27,27,27);
|
||||
}
|
||||
|
||||
#pv-txt-bottombar {
|
||||
position: fixed;
|
||||
z-index: 5;
|
||||
width: 100%;
|
||||
left: 0;
|
||||
bottom: 0;
|
||||
.vert-gradient(rgb(27,27,27), rgb(14,14,14));
|
||||
border-top: 1px solid rgb(45,45,45);
|
||||
}
|
57
src/_h5ai/css/inc/responsive.less
Normal file
@@ -0,0 +1,57 @@
|
||||
|
||||
@media only screen and (max-width: 500px) {
|
||||
#topbar {
|
||||
.view span {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
#extended.view-icons {
|
||||
padding: 0;
|
||||
border: none;
|
||||
margin: 0 -14px;
|
||||
}
|
||||
}
|
||||
|
||||
@media only screen and (max-width: 350px) {
|
||||
#topbar {
|
||||
.crumb {
|
||||
display: none;
|
||||
}
|
||||
.current {
|
||||
display: block;
|
||||
}
|
||||
}
|
||||
#extended.view-details {
|
||||
.header .label, .entry .label {
|
||||
margin-right: 110px;
|
||||
}
|
||||
.header .date, .entry .date {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
#bottombar {
|
||||
.center {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@media print {
|
||||
a[href]:after {
|
||||
content: "";
|
||||
}
|
||||
#topbar {
|
||||
position: static;
|
||||
margin-bottom: 2em;
|
||||
.view, #download {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
#bottombar {
|
||||
position: static;
|
||||
margin-top: 2em;
|
||||
}
|
||||
#tree {
|
||||
display: none !important;
|
||||
}
|
||||
}
|
88
src/_h5ai/css/inc/topbar.less
Normal file
@@ -0,0 +1,88 @@
|
||||
|
||||
#topbar {
|
||||
position: fixed;
|
||||
z-index: 5;
|
||||
width: 100%;
|
||||
left: 0;
|
||||
top: 0;
|
||||
.vert-gradient(rgb(241,241,241), rgb(228,228,228));
|
||||
border-bottom: 1px solid rgb(210,210,210);
|
||||
}
|
||||
|
||||
|
||||
.topbar-highlight {
|
||||
background-color: rgba(255,255,255,0.5);
|
||||
opacity: 1.0;
|
||||
}
|
||||
|
||||
.topbar-hover {
|
||||
.topbar-highlight;
|
||||
color: #e80;
|
||||
}
|
||||
|
||||
@topbar-sep-border: 1px solid rgba(0,0,0,0.05);
|
||||
|
||||
.topbar-left {
|
||||
float: left;
|
||||
border-right: @topbar-sep-border;
|
||||
}
|
||||
|
||||
.topbar-right {
|
||||
float: right;
|
||||
border-left: @topbar-sep-border;
|
||||
}
|
||||
|
||||
|
||||
#navbar {
|
||||
list-style: none;
|
||||
list-style-image: none;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
|
||||
a, a:active, a:visited, span.element {
|
||||
color: #555;
|
||||
cursor: pointer;
|
||||
text-decoration: none;
|
||||
opacity: 0.7;
|
||||
.transition(all 0.2s ease-in-out);
|
||||
|
||||
display: block;
|
||||
height: 30px;
|
||||
line-height: 30px;
|
||||
padding: 0 10px;
|
||||
|
||||
&:hover, &.hover {
|
||||
.topbar-hover;
|
||||
}
|
||||
}
|
||||
.current {
|
||||
a, span.element {
|
||||
.topbar-highlight;
|
||||
}
|
||||
}
|
||||
img {
|
||||
position: relative;
|
||||
top: -2px;
|
||||
width: 16px;
|
||||
height: 16px;
|
||||
}
|
||||
img + span, img + input {
|
||||
margin-left: 6px;
|
||||
}
|
||||
.crumb {
|
||||
.topbar-left;
|
||||
.hint {
|
||||
margin-left: 8px;
|
||||
font-style: italic;
|
||||
color: #999;
|
||||
}
|
||||
img.hint {
|
||||
width: 14px;
|
||||
height: 14px;
|
||||
opacity: 0.8;
|
||||
}
|
||||
}
|
||||
.view {
|
||||
.topbar-right;
|
||||
}
|
||||
}
|
123
src/_h5ai/css/inc/tree.less
Normal file
@@ -0,0 +1,123 @@
|
||||
|
||||
#tree {
|
||||
display: none;
|
||||
position: fixed;
|
||||
left: 0;
|
||||
top: 31px;
|
||||
height: 100%;
|
||||
z-index: 3;
|
||||
overflow: auto;
|
||||
padding: 8px;
|
||||
background-color: rgb(241,241,241);
|
||||
border-right: 2px solid rgb(221,221,221);
|
||||
|
||||
.sp-scrollbar {
|
||||
margin: 8px 8px 8px 0;
|
||||
width: 6px;
|
||||
background-color: rgb(210,210,210);
|
||||
.border-radius(3px);
|
||||
cursor: pointer;
|
||||
|
||||
.sp-thumb {
|
||||
background-color: rgb(180,180,180);
|
||||
.border-radius(3px);
|
||||
}
|
||||
&.active .sp-thumb {
|
||||
background-color: rgb(150,150,150);
|
||||
}
|
||||
}
|
||||
|
||||
.entry {
|
||||
.indicator {
|
||||
display: inline-block;
|
||||
width: 16px;
|
||||
height: 25px;
|
||||
float: left;
|
||||
|
||||
img {
|
||||
position: relative;
|
||||
left: 0;
|
||||
top: 3px;
|
||||
width: 12px;
|
||||
height: 12px;
|
||||
vertical-align: bottom;
|
||||
.transition(all 0.2s ease-in-out);
|
||||
}
|
||||
&.open {
|
||||
cursor: pointer;
|
||||
opacity: 0.7;
|
||||
img {
|
||||
.transform(rotate(90deg));
|
||||
}
|
||||
}
|
||||
&.close {
|
||||
cursor: pointer;
|
||||
opacity: 0.7;
|
||||
}
|
||||
&.unknown {
|
||||
cursor: pointer;
|
||||
opacity: 0.3;
|
||||
}
|
||||
&.none {
|
||||
opacity: 0;
|
||||
}
|
||||
}
|
||||
> a, > a:active, > a.visited {
|
||||
margin-left: 16px;
|
||||
padding: 4px 6px;
|
||||
border: 1px solid rgba(0,0,0,0);
|
||||
.border-radius(5px);
|
||||
display: block;
|
||||
color: #555;
|
||||
text-decoration: none;
|
||||
opacity: 0.7;
|
||||
|
||||
&:hover, &.hover {
|
||||
color: #e80;
|
||||
background-color: rgba(255,255,255,0.5);
|
||||
opacity: 1;
|
||||
}
|
||||
.label {
|
||||
display: inline-block;
|
||||
}
|
||||
.icon {
|
||||
display: inline-block;
|
||||
width: 20px;
|
||||
img {
|
||||
width: 16px;
|
||||
height: 16px;
|
||||
vertical-align: bottom;
|
||||
}
|
||||
}
|
||||
.hint {
|
||||
display: inline-block;
|
||||
margin-left: 12px;
|
||||
font-size: 0.9em;
|
||||
color: #ccc;
|
||||
}
|
||||
}
|
||||
&.current {
|
||||
> a, > a:active, > a:visited {
|
||||
border: 1px solid rgb(221,221,221);
|
||||
background-color: rgba(255,255,255,0.5);
|
||||
opacity: 1;
|
||||
}
|
||||
}
|
||||
&.error {
|
||||
> a, > a:active, > a:visited {
|
||||
color: #999;
|
||||
&:hover, &.hover {
|
||||
color: #e80;
|
||||
}
|
||||
}
|
||||
.hint {
|
||||
color: #c55;
|
||||
}
|
||||
}
|
||||
.content, ul.content {
|
||||
list-style: none;
|
||||
margin: 0;
|
||||
padding: 0 0 0 24px;
|
||||
}
|
||||
}
|
||||
}
|
294
src/_h5ai/css/lib/h5bp-norm.less
Normal file
@@ -0,0 +1,294 @@
|
||||
/*
|
||||
* HTML5 ✰ Boilerplate
|
||||
*
|
||||
* What follows is the result of much research on cross-browser styling.
|
||||
* Credit left inline and big thanks to Nicolas Gallagher, Jonathan Neal,
|
||||
* Kroc Camen, and the H5BP dev community and team.
|
||||
*
|
||||
* Detailed information about this CSS: h5bp.com/css
|
||||
*
|
||||
* ==|== normalize ==========================================================
|
||||
*/
|
||||
|
||||
|
||||
/* =============================================================================
|
||||
HTML5 display definitions
|
||||
========================================================================== */
|
||||
|
||||
article, aside, details, figcaption, figure, footer, header, hgroup, nav, section { display: block; }
|
||||
audio, canvas, video { display: inline-block; *display: inline; *zoom: 1; }
|
||||
audio:not([controls]) { display: none; }
|
||||
[hidden] { display: none; }
|
||||
|
||||
|
||||
/* =============================================================================
|
||||
Base
|
||||
========================================================================== */
|
||||
|
||||
/*
|
||||
* 1. Correct text resizing oddly in IE6/7 when body font-size is set using em units
|
||||
* 2. Force vertical scrollbar in non-IE
|
||||
* 3. Prevent iOS text size adjust on device orientation change, without disabling user zoom: h5bp.com/g
|
||||
*/
|
||||
|
||||
html { font-size: 100%; overflow-y: scroll; -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%; }
|
||||
|
||||
body { margin: 0; font-size: 13px; line-height: 1.231; }
|
||||
|
||||
body, button, input, select, textarea { font-family: sans-serif; color: #222; }
|
||||
|
||||
/*
|
||||
* Remove text-shadow in selection highlight: h5bp.com/i
|
||||
* These selection declarations have to be separate
|
||||
* Also: hot pink! (or customize the background color to match your design)
|
||||
*/
|
||||
|
||||
::-moz-selection { background: #fe57a1; color: #fff; text-shadow: none; }
|
||||
::selection { background: #fe57a1; color: #fff; text-shadow: none; }
|
||||
|
||||
|
||||
/* =============================================================================
|
||||
Links
|
||||
========================================================================== */
|
||||
|
||||
a { color: #00e; }
|
||||
a:visited { color: #551a8b; }
|
||||
a:hover { color: #06e; }
|
||||
a:focus { outline: thin dotted; }
|
||||
|
||||
/* Improve readability when focused and hovered in all browsers: h5bp.com/h */
|
||||
a:hover, a:active { outline: 0; }
|
||||
|
||||
|
||||
/* =============================================================================
|
||||
Typography
|
||||
========================================================================== */
|
||||
|
||||
abbr[title] { border-bottom: 1px dotted; }
|
||||
|
||||
b, strong { font-weight: bold; }
|
||||
|
||||
blockquote { margin: 1em 40px; }
|
||||
|
||||
dfn { font-style: italic; }
|
||||
|
||||
hr { display: block; height: 1px; border: 0; border-top: 1px solid #ccc; margin: 1em 0; padding: 0; }
|
||||
|
||||
ins { background: #ff9; color: #000; text-decoration: none; }
|
||||
|
||||
mark { background: #ff0; color: #000; font-style: italic; font-weight: bold; }
|
||||
|
||||
/* Redeclare monospace font family: h5bp.com/j */
|
||||
pre, code, kbd, samp { font-family: monospace, serif; _font-family: 'courier new', monospace; font-size: 1em; }
|
||||
|
||||
/* Improve readability of pre-formatted text in all browsers */
|
||||
pre { white-space: pre; white-space: pre-wrap; word-wrap: break-word; }
|
||||
|
||||
q { quotes: none; }
|
||||
q:before, q:after { content: ""; content: none; }
|
||||
|
||||
small { font-size: 85%; }
|
||||
|
||||
/* Position subscript and superscript content without affecting line-height: h5bp.com/k */
|
||||
sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; }
|
||||
sup { top: -0.5em; }
|
||||
sub { bottom: -0.25em; }
|
||||
|
||||
|
||||
/* =============================================================================
|
||||
Lists
|
||||
========================================================================== */
|
||||
|
||||
ul, ol { margin: 1em 0; padding: 0 0 0 40px; }
|
||||
dd { margin: 0 0 0 40px; }
|
||||
nav ul, nav ol { list-style: none; list-style-image: none; margin: 0; padding: 0; }
|
||||
|
||||
|
||||
/* =============================================================================
|
||||
Embedded content
|
||||
========================================================================== */
|
||||
|
||||
/*
|
||||
* 1. Improve image quality when scaled in IE7: h5bp.com/d
|
||||
* 2. Remove the gap between images and borders on image containers: h5bp.com/e
|
||||
*/
|
||||
|
||||
img { border: 0; -ms-interpolation-mode: bicubic; vertical-align: middle; }
|
||||
|
||||
/*
|
||||
* Correct overflow not hidden in IE9
|
||||
*/
|
||||
|
||||
svg:not(:root) { overflow: hidden; }
|
||||
|
||||
|
||||
/* =============================================================================
|
||||
Figures
|
||||
========================================================================== */
|
||||
|
||||
figure { margin: 0; }
|
||||
|
||||
|
||||
/* =============================================================================
|
||||
Forms
|
||||
========================================================================== */
|
||||
|
||||
form { margin: 0; }
|
||||
fieldset { border: 0; margin: 0; padding: 0; }
|
||||
|
||||
/* Indicate that 'label' will shift focus to the associated form element */
|
||||
label { cursor: pointer; }
|
||||
|
||||
/*
|
||||
* 1. Correct color not inheriting in IE6/7/8/9
|
||||
* 2. Correct alignment displayed oddly in IE6/7
|
||||
*/
|
||||
|
||||
legend { border: 0; *margin-left: -7px; padding: 0; }
|
||||
|
||||
/*
|
||||
* 1. Correct font-size not inheriting in all browsers
|
||||
* 2. Remove margins in FF3/4 S5 Chrome
|
||||
* 3. Define consistent vertical alignment display in all browsers
|
||||
*/
|
||||
|
||||
button, input, select, textarea { font-size: 100%; margin: 0; vertical-align: baseline; *vertical-align: middle; }
|
||||
|
||||
/*
|
||||
* 1. Define line-height as normal to match FF3/4 (set using !important in the UA stylesheet)
|
||||
* 2. Correct inner spacing displayed oddly in IE6/7
|
||||
*/
|
||||
|
||||
button, input { line-height: normal; *overflow: visible; }
|
||||
|
||||
/*
|
||||
* Reintroduce inner spacing in 'table' to avoid overlap and whitespace issues in IE6/7
|
||||
*/
|
||||
|
||||
table button, table input { *overflow: auto; }
|
||||
|
||||
/*
|
||||
* 1. Display hand cursor for clickable form elements
|
||||
* 2. Allow styling of clickable form elements in iOS
|
||||
*/
|
||||
|
||||
button, input[type="button"], input[type="reset"], input[type="submit"] { cursor: pointer; -webkit-appearance: button; }
|
||||
|
||||
/*
|
||||
* Consistent box sizing and appearance
|
||||
*/
|
||||
|
||||
input[type="checkbox"], input[type="radio"] { box-sizing: border-box; }
|
||||
input[type="search"] { -webkit-appearance: textfield; -moz-box-sizing: content-box; -webkit-box-sizing: content-box; box-sizing: content-box; }
|
||||
input[type="search"]::-webkit-search-decoration { -webkit-appearance: none; }
|
||||
|
||||
/*
|
||||
* Remove inner padding and border in FF3/4: h5bp.com/l
|
||||
*/
|
||||
|
||||
button::-moz-focus-inner, input::-moz-focus-inner { border: 0; padding: 0; }
|
||||
|
||||
/*
|
||||
* 1. Remove default vertical scrollbar in IE6/7/8/9
|
||||
* 2. Allow only vertical resizing
|
||||
*/
|
||||
|
||||
textarea { overflow: auto; vertical-align: top; resize: vertical; }
|
||||
|
||||
/* Colors for form validity */
|
||||
input:valid, textarea:valid { }
|
||||
input:invalid, textarea:invalid { background-color: #f0dddd; }
|
||||
|
||||
|
||||
/* =============================================================================
|
||||
Tables
|
||||
========================================================================== */
|
||||
|
||||
table { border-collapse: collapse; border-spacing: 0; }
|
||||
td { vertical-align: top; }
|
||||
|
||||
|
||||
/* ==|== primary styles =====================================================
|
||||
Author:
|
||||
========================================================================== */
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
/* ==|== non-semantic helper classes ========================================
|
||||
Please define your styles before this section.
|
||||
========================================================================== */
|
||||
|
||||
/* For image replacement */
|
||||
.ir { display: block; border: 0; text-indent: -999em; overflow: hidden; background-color: transparent; background-repeat: no-repeat; text-align: left; direction: ltr; }
|
||||
.ir br { display: none; }
|
||||
|
||||
/* Hide from both screenreaders and browsers: h5bp.com/u */
|
||||
.hidden { display: none !important; visibility: hidden; }
|
||||
|
||||
/* Hide only visually, but have it available for screenreaders: h5bp.com/v */
|
||||
.visuallyhidden { border: 0; clip: rect(0 0 0 0); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; }
|
||||
|
||||
/* Extends the .visuallyhidden class to allow the element to be focusable when navigated to via the keyboard: h5bp.com/p */
|
||||
.visuallyhidden.focusable:active, .visuallyhidden.focusable:focus { clip: auto; height: auto; margin: 0; overflow: visible; position: static; width: auto; }
|
||||
|
||||
/* Hide visually and from screenreaders, but maintain layout */
|
||||
.invisible { visibility: hidden; }
|
||||
|
||||
/* Contain floats: h5bp.com/q */
|
||||
.clearfix:before, .clearfix:after { content: ""; display: table; }
|
||||
.clearfix:after { clear: both; }
|
||||
.clearfix { zoom: 1; }
|
||||
|
||||
|
||||
|
||||
/* ==|== media queries ======================================================
|
||||
PLACEHOLDER Media Queries for Responsive Design.
|
||||
These override the primary ('mobile first') styles
|
||||
Modify as content requires.
|
||||
========================================================================== */
|
||||
|
||||
@media only screen and (min-width: 480px) {
|
||||
/* Style adjustments for viewports 480px and over go here */
|
||||
|
||||
}
|
||||
|
||||
@media only screen and (min-width: 768px) {
|
||||
/* Style adjustments for viewports 768px and over go here */
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
/* ==|== print styles =======================================================
|
||||
Print styles.
|
||||
Inlined to avoid required HTTP connection: h5bp.com/r
|
||||
========================================================================== */
|
||||
|
||||
@media print {
|
||||
* { background: transparent !important; color: black !important; text-shadow: none !important; filter:none !important; -ms-filter: none !important; } /* Black prints faster: h5bp.com/s */
|
||||
a, a:visited { text-decoration: underline; }
|
||||
a[href]:after { content: " (" attr(href) ")"; }
|
||||
abbr[title]:after { content: " (" attr(title) ")"; }
|
||||
.ir a:after, a[href^="javascript:"]:after, a[href^="#"]:after { content: ""; } /* Don't show links for images, or javascript/internal links */
|
||||
pre, blockquote { border: 1px solid #999; page-break-inside: avoid; }
|
||||
thead { display: table-header-group; } /* h5bp.com/t */
|
||||
tr, img { page-break-inside: avoid; }
|
||||
img { max-width: 100% !important; }
|
||||
@page { margin: 0.5cm; }
|
||||
p, h2, h3 { orphans: 3; widows: 3; }
|
||||
h2, h3 { page-break-after: avoid; }
|
||||
}
|
||||
|
57
src/_h5ai/css/lib/mixins.less
Normal file
@@ -0,0 +1,57 @@
|
||||
|
||||
.border-radius (@radius) {
|
||||
-webkit-border-radius: @radius; /* Saf3-4, iOS 1-3.2, Android <1.6 */
|
||||
-moz-border-radius: @radius; /* FF1-3.6 */
|
||||
border-radius: @radius; /* Opera 10.5, IE9, Saf5, Chrome, FF4, iOS 4, Android 2.1+ */
|
||||
}
|
||||
|
||||
|
||||
.background-clip () {
|
||||
-webkit-background-clip: padding-box;
|
||||
-moz-background-clip: padding;
|
||||
background-clip: padding-box;
|
||||
}
|
||||
|
||||
|
||||
.box-shadow (@shadow) {
|
||||
-webkit-box-shadow: @shadow; /* Saf3-4 */
|
||||
-moz-box-shadow: @shadow; /* FF3.5 - 3.6 */
|
||||
box-shadow: @shadow; /* Opera 10.5, IE9, FF4+, Chrome 10+ */
|
||||
}
|
||||
|
||||
|
||||
.transition (@transition) {
|
||||
-webkit-transition: @transition; /* Saf3.2+, Chrome */
|
||||
-moz-transition: @transition; /* FF4+ */
|
||||
-ms-transition: @transition; /* IE10? */
|
||||
-o-transition: @transition; /* Opera 10.5+ */
|
||||
transition: @transition;
|
||||
}
|
||||
|
||||
|
||||
.transform (@transform) {
|
||||
-webkit-transform: @transform; /* Saf3.1+, Chrome */
|
||||
-moz-transform: @transform; /* FF3.5+ */
|
||||
-ms-transform: @transform; /* IE9 */
|
||||
-o-transform: @transform; /* Opera 10.5 */
|
||||
transform: @transform;
|
||||
zoom: 1;
|
||||
}
|
||||
|
||||
|
||||
.vert-gradient (@top, @bottom) {
|
||||
background-color: @top;
|
||||
background-image: -webkit-gradient(linear, left top, left bottom, from(@top), to(@bottom)); /* Saf4+, Chrome */
|
||||
background-image: -webkit-linear-gradient(top, @top, @bottom); /* Chrome 10+, Saf5.1+, iOS 5+ */
|
||||
background-image: -moz-linear-gradient(top, @top, @bottom); /* FF3.6 */
|
||||
background-image: -ms-linear-gradient(top, @top, @bottom); /* IE10 */
|
||||
background-image: -o-linear-gradient(top, @top, @bottom); /* Opera 11.10+ */
|
||||
background-image: linear-gradient(top, @top, @bottom);
|
||||
}
|
||||
|
||||
|
||||
.background-size (@size) {
|
||||
-webkit-background-size: @size; /* Saf3-4 */
|
||||
-moz-background-size: @size; /* FF3.6 */
|
||||
background-size: @size; /* Opera, IE9, Saf5, Chrome, FF4 */
|
||||
}
|
228
src/_h5ai/css/lib/sh/shCore.less
Normal file
@@ -0,0 +1,228 @@
|
||||
/**
|
||||
* SyntaxHighlighter
|
||||
* http://alexgorbatchev.com/SyntaxHighlighter
|
||||
*
|
||||
* SyntaxHighlighter is donationware. If you are using it, please donate.
|
||||
* http://alexgorbatchev.com/SyntaxHighlighter/donate.html
|
||||
*
|
||||
* @version
|
||||
* 3.0.83 (July 02 2010)
|
||||
*
|
||||
* @copyright
|
||||
* Copyright (C) 2004-2010 Alex Gorbatchev.
|
||||
*
|
||||
* @license
|
||||
* Dual licensed under the MIT and GPL licenses.
|
||||
*/
|
||||
.syntaxhighlighter a,
|
||||
.syntaxhighlighter div,
|
||||
.syntaxhighlighter code,
|
||||
.syntaxhighlighter table,
|
||||
.syntaxhighlighter table td,
|
||||
.syntaxhighlighter table tr,
|
||||
.syntaxhighlighter table tbody,
|
||||
.syntaxhighlighter table thead,
|
||||
.syntaxhighlighter table caption,
|
||||
.syntaxhighlighter textarea {
|
||||
-moz-border-radius: 0 0 0 0 !important;
|
||||
-webkit-border-radius: 0 0 0 0 !important;
|
||||
background: none !important;
|
||||
border: 0 !important;
|
||||
bottom: auto !important;
|
||||
float: none !important;
|
||||
height: auto !important;
|
||||
left: auto !important;
|
||||
line-height: 1.1em !important;
|
||||
margin: 0 !important;
|
||||
outline: 0 !important;
|
||||
overflow: visible !important;
|
||||
padding: 0 !important;
|
||||
position: static !important;
|
||||
right: auto !important;
|
||||
text-align: left !important;
|
||||
top: auto !important;
|
||||
vertical-align: baseline !important;
|
||||
width: auto !important;
|
||||
box-sizing: content-box !important;
|
||||
// font-family: "Consolas", "Bitstream Vera Sans Mono", "Courier New", Courier, monospace !important;
|
||||
font-family: "Ubuntu Mono", "Consolas", "Bitstream Vera Sans Mono", "Courier New", Courier, monospace !important;
|
||||
font-weight: normal !important;
|
||||
font-style: normal !important;
|
||||
// font-size: 1em !important;
|
||||
font-size: 16px !important;
|
||||
min-height: inherit !important;
|
||||
min-height: auto !important;
|
||||
}
|
||||
|
||||
.syntaxhighlighter {
|
||||
width: 100% !important;
|
||||
margin: 1em 0 1em 0 !important;
|
||||
position: relative !important;
|
||||
overflow: auto !important;
|
||||
font-size: 1em !important;
|
||||
}
|
||||
.syntaxhighlighter.source {
|
||||
overflow: hidden !important;
|
||||
}
|
||||
.syntaxhighlighter .bold {
|
||||
font-weight: bold !important;
|
||||
}
|
||||
.syntaxhighlighter .italic {
|
||||
font-style: italic !important;
|
||||
}
|
||||
.syntaxhighlighter .line {
|
||||
white-space: pre !important;
|
||||
}
|
||||
.syntaxhighlighter table {
|
||||
width: 100% !important;
|
||||
}
|
||||
.syntaxhighlighter table caption {
|
||||
text-align: left !important;
|
||||
padding: .5em 0 0.5em 1em !important;
|
||||
}
|
||||
.syntaxhighlighter table td.code {
|
||||
width: 100% !important;
|
||||
}
|
||||
.syntaxhighlighter table td.code .container {
|
||||
position: relative !important;
|
||||
}
|
||||
.syntaxhighlighter table td.code .container textarea {
|
||||
box-sizing: border-box !important;
|
||||
position: absolute !important;
|
||||
left: 0 !important;
|
||||
top: 0 !important;
|
||||
width: 100% !important;
|
||||
height: 100% !important;
|
||||
border: none !important;
|
||||
background: white !important;
|
||||
padding-left: 1em !important;
|
||||
overflow: hidden !important;
|
||||
white-space: pre !important;
|
||||
}
|
||||
.syntaxhighlighter table td.gutter .line {
|
||||
text-align: right !important;
|
||||
padding: 0 0.5em 0 1em !important;
|
||||
}
|
||||
.syntaxhighlighter table td.code .line {
|
||||
padding: 0 1em !important;
|
||||
}
|
||||
.syntaxhighlighter.nogutter td.code .container textarea, .syntaxhighlighter.nogutter td.code .line {
|
||||
padding-left: 0em !important;
|
||||
}
|
||||
.syntaxhighlighter.show {
|
||||
display: block !important;
|
||||
}
|
||||
.syntaxhighlighter.collapsed table {
|
||||
display: none !important;
|
||||
}
|
||||
.syntaxhighlighter.collapsed .toolbar {
|
||||
padding: 0.1em 0.8em 0em 0.8em !important;
|
||||
font-size: 1em !important;
|
||||
position: static !important;
|
||||
width: auto !important;
|
||||
height: auto !important;
|
||||
}
|
||||
.syntaxhighlighter.collapsed .toolbar span {
|
||||
display: inline !important;
|
||||
margin-right: 1em !important;
|
||||
}
|
||||
.syntaxhighlighter.collapsed .toolbar span a {
|
||||
padding: 0 !important;
|
||||
display: none !important;
|
||||
}
|
||||
.syntaxhighlighter.collapsed .toolbar span a.expandSource {
|
||||
display: inline !important;
|
||||
}
|
||||
.syntaxhighlighter .toolbar {
|
||||
position: absolute !important;
|
||||
right: 1px !important;
|
||||
top: 1px !important;
|
||||
width: 11px !important;
|
||||
height: 11px !important;
|
||||
font-size: 10px !important;
|
||||
z-index: 10 !important;
|
||||
}
|
||||
.syntaxhighlighter .toolbar span.title {
|
||||
display: inline !important;
|
||||
}
|
||||
.syntaxhighlighter .toolbar a {
|
||||
display: block !important;
|
||||
text-align: center !important;
|
||||
text-decoration: none !important;
|
||||
padding-top: 1px !important;
|
||||
}
|
||||
.syntaxhighlighter .toolbar a.expandSource {
|
||||
display: none !important;
|
||||
}
|
||||
.syntaxhighlighter.ie {
|
||||
font-size: .9em !important;
|
||||
padding: 1px 0 1px 0 !important;
|
||||
}
|
||||
.syntaxhighlighter.ie .toolbar {
|
||||
line-height: 8px !important;
|
||||
}
|
||||
.syntaxhighlighter.ie .toolbar a {
|
||||
padding-top: 0px !important;
|
||||
}
|
||||
.syntaxhighlighter.printing .line.alt1 .content,
|
||||
.syntaxhighlighter.printing .line.alt2 .content,
|
||||
.syntaxhighlighter.printing .line.highlighted .number,
|
||||
.syntaxhighlighter.printing .line.highlighted.alt1 .content,
|
||||
.syntaxhighlighter.printing .line.highlighted.alt2 .content {
|
||||
background: none !important;
|
||||
}
|
||||
.syntaxhighlighter.printing .line .number {
|
||||
color: #bbbbbb !important;
|
||||
}
|
||||
.syntaxhighlighter.printing .line .content {
|
||||
color: black !important;
|
||||
}
|
||||
.syntaxhighlighter.printing .toolbar {
|
||||
display: none !important;
|
||||
}
|
||||
.syntaxhighlighter.printing a {
|
||||
text-decoration: none !important;
|
||||
}
|
||||
.syntaxhighlighter.printing .plain, .syntaxhighlighter.printing .plain a {
|
||||
color: black !important;
|
||||
}
|
||||
.syntaxhighlighter.printing .comments, .syntaxhighlighter.printing .comments a {
|
||||
color: #008200 !important;
|
||||
}
|
||||
.syntaxhighlighter.printing .string, .syntaxhighlighter.printing .string a {
|
||||
color: blue !important;
|
||||
}
|
||||
.syntaxhighlighter.printing .keyword {
|
||||
color: #006699 !important;
|
||||
font-weight: bold !important;
|
||||
}
|
||||
.syntaxhighlighter.printing .preprocessor {
|
||||
color: gray !important;
|
||||
}
|
||||
.syntaxhighlighter.printing .variable {
|
||||
color: #aa7700 !important;
|
||||
}
|
||||
.syntaxhighlighter.printing .value {
|
||||
color: #009900 !important;
|
||||
}
|
||||
.syntaxhighlighter.printing .functions {
|
||||
color: #ff1493 !important;
|
||||
}
|
||||
.syntaxhighlighter.printing .constants {
|
||||
color: #0066cc !important;
|
||||
}
|
||||
.syntaxhighlighter.printing .script {
|
||||
font-weight: bold !important;
|
||||
}
|
||||
.syntaxhighlighter.printing .color1, .syntaxhighlighter.printing .color1 a {
|
||||
color: gray !important;
|
||||
}
|
||||
.syntaxhighlighter.printing .color2, .syntaxhighlighter.printing .color2 a {
|
||||
color: #ff1493 !important;
|
||||
}
|
||||
.syntaxhighlighter.printing .color3, .syntaxhighlighter.printing .color3 a {
|
||||
color: red !important;
|
||||
}
|
||||
.syntaxhighlighter.printing .break, .syntaxhighlighter.printing .break a {
|
||||
color: black !important;
|
||||
}
|
117
src/_h5ai/css/lib/sh/shThemeDefault.less
Normal file
@@ -0,0 +1,117 @@
|
||||
/**
|
||||
* SyntaxHighlighter
|
||||
* http://alexgorbatchev.com/SyntaxHighlighter
|
||||
*
|
||||
* SyntaxHighlighter is donationware. If you are using it, please donate.
|
||||
* http://alexgorbatchev.com/SyntaxHighlighter/donate.html
|
||||
*
|
||||
* @version
|
||||
* 3.0.83 (July 02 2010)
|
||||
*
|
||||
* @copyright
|
||||
* Copyright (C) 2004-2010 Alex Gorbatchev.
|
||||
*
|
||||
* @license
|
||||
* Dual licensed under the MIT and GPL licenses.
|
||||
*/
|
||||
.syntaxhighlighter {
|
||||
background-color: white !important;
|
||||
}
|
||||
.syntaxhighlighter .line.alt1 {
|
||||
background-color: white !important;
|
||||
}
|
||||
.syntaxhighlighter .line.alt2 {
|
||||
background-color: white !important;
|
||||
}
|
||||
.syntaxhighlighter .line.highlighted.alt1, .syntaxhighlighter .line.highlighted.alt2 {
|
||||
background-color: #e0e0e0 !important;
|
||||
}
|
||||
.syntaxhighlighter .line.highlighted.number {
|
||||
color: black !important;
|
||||
}
|
||||
.syntaxhighlighter table caption {
|
||||
color: black !important;
|
||||
}
|
||||
.syntaxhighlighter .gutter {
|
||||
color: #afafaf !important;
|
||||
}
|
||||
.syntaxhighlighter .gutter .line {
|
||||
border-right: 3px solid #6ce26c !important;
|
||||
}
|
||||
.syntaxhighlighter .gutter .line.highlighted {
|
||||
background-color: #6ce26c !important;
|
||||
color: white !important;
|
||||
}
|
||||
.syntaxhighlighter.printing .line .content {
|
||||
border: none !important;
|
||||
}
|
||||
.syntaxhighlighter.collapsed {
|
||||
overflow: visible !important;
|
||||
}
|
||||
.syntaxhighlighter.collapsed .toolbar {
|
||||
color: blue !important;
|
||||
background: white !important;
|
||||
border: 1px solid #6ce26c !important;
|
||||
}
|
||||
.syntaxhighlighter.collapsed .toolbar a {
|
||||
color: blue !important;
|
||||
}
|
||||
.syntaxhighlighter.collapsed .toolbar a:hover {
|
||||
color: red !important;
|
||||
}
|
||||
.syntaxhighlighter .toolbar {
|
||||
color: white !important;
|
||||
background: #6ce26c !important;
|
||||
border: none !important;
|
||||
}
|
||||
.syntaxhighlighter .toolbar a {
|
||||
color: white !important;
|
||||
}
|
||||
.syntaxhighlighter .toolbar a:hover {
|
||||
color: black !important;
|
||||
}
|
||||
.syntaxhighlighter .plain, .syntaxhighlighter .plain a {
|
||||
color: black !important;
|
||||
}
|
||||
.syntaxhighlighter .comments, .syntaxhighlighter .comments a {
|
||||
color: #008200 !important;
|
||||
}
|
||||
.syntaxhighlighter .string, .syntaxhighlighter .string a {
|
||||
color: blue !important;
|
||||
}
|
||||
.syntaxhighlighter .keyword {
|
||||
color: #006699 !important;
|
||||
}
|
||||
.syntaxhighlighter .preprocessor {
|
||||
color: gray !important;
|
||||
}
|
||||
.syntaxhighlighter .variable {
|
||||
color: #aa7700 !important;
|
||||
}
|
||||
.syntaxhighlighter .value {
|
||||
color: #009900 !important;
|
||||
}
|
||||
.syntaxhighlighter .functions {
|
||||
color: #ff1493 !important;
|
||||
}
|
||||
.syntaxhighlighter .constants {
|
||||
color: #0066cc !important;
|
||||
}
|
||||
.syntaxhighlighter .script {
|
||||
font-weight: bold !important;
|
||||
color: #006699 !important;
|
||||
background-color: none !important;
|
||||
}
|
||||
.syntaxhighlighter .color1, .syntaxhighlighter .color1 a {
|
||||
color: gray !important;
|
||||
}
|
||||
.syntaxhighlighter .color2, .syntaxhighlighter .color2 a {
|
||||
color: #ff1493 !important;
|
||||
}
|
||||
.syntaxhighlighter .color3, .syntaxhighlighter .color3 a {
|
||||
color: red !important;
|
||||
}
|
||||
|
||||
.syntaxhighlighter .keyword {
|
||||
font-weight: bold !important;
|
||||
}
|
120
src/_h5ai/css/lib/sh/shThemeDjango.less
Normal file
@@ -0,0 +1,120 @@
|
||||
/**
|
||||
* SyntaxHighlighter
|
||||
* http://alexgorbatchev.com/SyntaxHighlighter
|
||||
*
|
||||
* SyntaxHighlighter is donationware. If you are using it, please donate.
|
||||
* http://alexgorbatchev.com/SyntaxHighlighter/donate.html
|
||||
*
|
||||
* @version
|
||||
* 3.0.83 (July 02 2010)
|
||||
*
|
||||
* @copyright
|
||||
* Copyright (C) 2004-2010 Alex Gorbatchev.
|
||||
*
|
||||
* @license
|
||||
* Dual licensed under the MIT and GPL licenses.
|
||||
*/
|
||||
.syntaxhighlighter {
|
||||
background-color: #0a2b1d !important;
|
||||
}
|
||||
.syntaxhighlighter .line.alt1 {
|
||||
background-color: #0a2b1d !important;
|
||||
}
|
||||
.syntaxhighlighter .line.alt2 {
|
||||
background-color: #0a2b1d !important;
|
||||
}
|
||||
.syntaxhighlighter .line.highlighted.alt1, .syntaxhighlighter .line.highlighted.alt2 {
|
||||
background-color: #233729 !important;
|
||||
}
|
||||
.syntaxhighlighter .line.highlighted.number {
|
||||
color: white !important;
|
||||
}
|
||||
.syntaxhighlighter table caption {
|
||||
color: #f8f8f8 !important;
|
||||
}
|
||||
.syntaxhighlighter .gutter {
|
||||
color: #497958 !important;
|
||||
}
|
||||
.syntaxhighlighter .gutter .line {
|
||||
border-right: 3px solid #41a83e !important;
|
||||
}
|
||||
.syntaxhighlighter .gutter .line.highlighted {
|
||||
background-color: #41a83e !important;
|
||||
color: #0a2b1d !important;
|
||||
}
|
||||
.syntaxhighlighter.printing .line .content {
|
||||
border: none !important;
|
||||
}
|
||||
.syntaxhighlighter.collapsed {
|
||||
overflow: visible !important;
|
||||
}
|
||||
.syntaxhighlighter.collapsed .toolbar {
|
||||
color: #96dd3b !important;
|
||||
background: black !important;
|
||||
border: 1px solid #41a83e !important;
|
||||
}
|
||||
.syntaxhighlighter.collapsed .toolbar a {
|
||||
color: #96dd3b !important;
|
||||
}
|
||||
.syntaxhighlighter.collapsed .toolbar a:hover {
|
||||
color: white !important;
|
||||
}
|
||||
.syntaxhighlighter .toolbar {
|
||||
color: white !important;
|
||||
background: #41a83e !important;
|
||||
border: none !important;
|
||||
}
|
||||
.syntaxhighlighter .toolbar a {
|
||||
color: white !important;
|
||||
}
|
||||
.syntaxhighlighter .toolbar a:hover {
|
||||
color: #ffe862 !important;
|
||||
}
|
||||
.syntaxhighlighter .plain, .syntaxhighlighter .plain a {
|
||||
color: #f8f8f8 !important;
|
||||
}
|
||||
.syntaxhighlighter .comments, .syntaxhighlighter .comments a {
|
||||
color: #336442 !important;
|
||||
}
|
||||
.syntaxhighlighter .string, .syntaxhighlighter .string a {
|
||||
color: #9df39f !important;
|
||||
}
|
||||
.syntaxhighlighter .keyword {
|
||||
color: #96dd3b !important;
|
||||
}
|
||||
.syntaxhighlighter .preprocessor {
|
||||
color: #91bb9e !important;
|
||||
}
|
||||
.syntaxhighlighter .variable {
|
||||
color: #ffaa3e !important;
|
||||
}
|
||||
.syntaxhighlighter .value {
|
||||
color: #f7e741 !important;
|
||||
}
|
||||
.syntaxhighlighter .functions {
|
||||
color: #ffaa3e !important;
|
||||
}
|
||||
.syntaxhighlighter .constants {
|
||||
color: #e0e8ff !important;
|
||||
}
|
||||
.syntaxhighlighter .script {
|
||||
font-weight: bold !important;
|
||||
color: #96dd3b !important;
|
||||
background-color: none !important;
|
||||
}
|
||||
.syntaxhighlighter .color1, .syntaxhighlighter .color1 a {
|
||||
color: #eb939a !important;
|
||||
}
|
||||
.syntaxhighlighter .color2, .syntaxhighlighter .color2 a {
|
||||
color: #91bb9e !important;
|
||||
}
|
||||
.syntaxhighlighter .color3, .syntaxhighlighter .color3 a {
|
||||
color: #edef7d !important;
|
||||
}
|
||||
|
||||
.syntaxhighlighter .comments {
|
||||
font-style: italic !important;
|
||||
}
|
||||
.syntaxhighlighter .keyword {
|
||||
font-weight: bold !important;
|
||||
}
|
128
src/_h5ai/css/lib/sh/shThemeEclipse.less
Normal file
@@ -0,0 +1,128 @@
|
||||
/**
|
||||
* SyntaxHighlighter
|
||||
* http://alexgorbatchev.com/SyntaxHighlighter
|
||||
*
|
||||
* SyntaxHighlighter is donationware. If you are using it, please donate.
|
||||
* http://alexgorbatchev.com/SyntaxHighlighter/donate.html
|
||||
*
|
||||
* @version
|
||||
* 3.0.83 (July 02 2010)
|
||||
*
|
||||
* @copyright
|
||||
* Copyright (C) 2004-2010 Alex Gorbatchev.
|
||||
*
|
||||
* @license
|
||||
* Dual licensed under the MIT and GPL licenses.
|
||||
*/
|
||||
.syntaxhighlighter {
|
||||
background-color: white !important;
|
||||
}
|
||||
.syntaxhighlighter .line.alt1 {
|
||||
background-color: white !important;
|
||||
}
|
||||
.syntaxhighlighter .line.alt2 {
|
||||
background-color: white !important;
|
||||
}
|
||||
.syntaxhighlighter .line.highlighted.alt1, .syntaxhighlighter .line.highlighted.alt2 {
|
||||
background-color: #c3defe !important;
|
||||
}
|
||||
.syntaxhighlighter .line.highlighted.number {
|
||||
color: white !important;
|
||||
}
|
||||
.syntaxhighlighter table caption {
|
||||
color: black !important;
|
||||
}
|
||||
.syntaxhighlighter .gutter {
|
||||
color: #787878 !important;
|
||||
}
|
||||
.syntaxhighlighter .gutter .line {
|
||||
border-right: 3px solid #d4d0c8 !important;
|
||||
}
|
||||
.syntaxhighlighter .gutter .line.highlighted {
|
||||
background-color: #d4d0c8 !important;
|
||||
color: white !important;
|
||||
}
|
||||
.syntaxhighlighter.printing .line .content {
|
||||
border: none !important;
|
||||
}
|
||||
.syntaxhighlighter.collapsed {
|
||||
overflow: visible !important;
|
||||
}
|
||||
.syntaxhighlighter.collapsed .toolbar {
|
||||
color: #3f5fbf !important;
|
||||
background: white !important;
|
||||
border: 1px solid #d4d0c8 !important;
|
||||
}
|
||||
.syntaxhighlighter.collapsed .toolbar a {
|
||||
color: #3f5fbf !important;
|
||||
}
|
||||
.syntaxhighlighter.collapsed .toolbar a:hover {
|
||||
color: #aa7700 !important;
|
||||
}
|
||||
.syntaxhighlighter .toolbar {
|
||||
color: #a0a0a0 !important;
|
||||
background: #d4d0c8 !important;
|
||||
border: none !important;
|
||||
}
|
||||
.syntaxhighlighter .toolbar a {
|
||||
color: #a0a0a0 !important;
|
||||
}
|
||||
.syntaxhighlighter .toolbar a:hover {
|
||||
color: red !important;
|
||||
}
|
||||
.syntaxhighlighter .plain, .syntaxhighlighter .plain a {
|
||||
color: black !important;
|
||||
}
|
||||
.syntaxhighlighter .comments, .syntaxhighlighter .comments a {
|
||||
color: #3f5fbf !important;
|
||||
}
|
||||
.syntaxhighlighter .string, .syntaxhighlighter .string a {
|
||||
color: #2a00ff !important;
|
||||
}
|
||||
.syntaxhighlighter .keyword {
|
||||
color: #7f0055 !important;
|
||||
}
|
||||
.syntaxhighlighter .preprocessor {
|
||||
color: #646464 !important;
|
||||
}
|
||||
.syntaxhighlighter .variable {
|
||||
color: #aa7700 !important;
|
||||
}
|
||||
.syntaxhighlighter .value {
|
||||
color: #009900 !important;
|
||||
}
|
||||
.syntaxhighlighter .functions {
|
||||
color: #ff1493 !important;
|
||||
}
|
||||
.syntaxhighlighter .constants {
|
||||
color: #0066cc !important;
|
||||
}
|
||||
.syntaxhighlighter .script {
|
||||
font-weight: bold !important;
|
||||
color: #7f0055 !important;
|
||||
background-color: none !important;
|
||||
}
|
||||
.syntaxhighlighter .color1, .syntaxhighlighter .color1 a {
|
||||
color: gray !important;
|
||||
}
|
||||
.syntaxhighlighter .color2, .syntaxhighlighter .color2 a {
|
||||
color: #ff1493 !important;
|
||||
}
|
||||
.syntaxhighlighter .color3, .syntaxhighlighter .color3 a {
|
||||
color: red !important;
|
||||
}
|
||||
|
||||
.syntaxhighlighter .keyword {
|
||||
font-weight: bold !important;
|
||||
}
|
||||
.syntaxhighlighter .xml .keyword {
|
||||
color: #3f7f7f !important;
|
||||
font-weight: normal !important;
|
||||
}
|
||||
.syntaxhighlighter .xml .color1, .syntaxhighlighter .xml .color1 a {
|
||||
color: #7f007f !important;
|
||||
}
|
||||
.syntaxhighlighter .xml .string {
|
||||
font-style: italic !important;
|
||||
color: #2a00ff !important;
|
||||
}
|
113
src/_h5ai/css/lib/sh/shThemeEmacs.less
Normal file
@@ -0,0 +1,113 @@
|
||||
/**
|
||||
* SyntaxHighlighter
|
||||
* http://alexgorbatchev.com/SyntaxHighlighter
|
||||
*
|
||||
* SyntaxHighlighter is donationware. If you are using it, please donate.
|
||||
* http://alexgorbatchev.com/SyntaxHighlighter/donate.html
|
||||
*
|
||||
* @version
|
||||
* 3.0.83 (July 02 2010)
|
||||
*
|
||||
* @copyright
|
||||
* Copyright (C) 2004-2010 Alex Gorbatchev.
|
||||
*
|
||||
* @license
|
||||
* Dual licensed under the MIT and GPL licenses.
|
||||
*/
|
||||
.syntaxhighlighter {
|
||||
background-color: black !important;
|
||||
}
|
||||
.syntaxhighlighter .line.alt1 {
|
||||
background-color: black !important;
|
||||
}
|
||||
.syntaxhighlighter .line.alt2 {
|
||||
background-color: black !important;
|
||||
}
|
||||
.syntaxhighlighter .line.highlighted.alt1, .syntaxhighlighter .line.highlighted.alt2 {
|
||||
background-color: #2a3133 !important;
|
||||
}
|
||||
.syntaxhighlighter .line.highlighted.number {
|
||||
color: white !important;
|
||||
}
|
||||
.syntaxhighlighter table caption {
|
||||
color: #d3d3d3 !important;
|
||||
}
|
||||
.syntaxhighlighter .gutter {
|
||||
color: #d3d3d3 !important;
|
||||
}
|
||||
.syntaxhighlighter .gutter .line {
|
||||
border-right: 3px solid #990000 !important;
|
||||
}
|
||||
.syntaxhighlighter .gutter .line.highlighted {
|
||||
background-color: #990000 !important;
|
||||
color: black !important;
|
||||
}
|
||||
.syntaxhighlighter.printing .line .content {
|
||||
border: none !important;
|
||||
}
|
||||
.syntaxhighlighter.collapsed {
|
||||
overflow: visible !important;
|
||||
}
|
||||
.syntaxhighlighter.collapsed .toolbar {
|
||||
color: #ebdb8d !important;
|
||||
background: black !important;
|
||||
border: 1px solid #990000 !important;
|
||||
}
|
||||
.syntaxhighlighter.collapsed .toolbar a {
|
||||
color: #ebdb8d !important;
|
||||
}
|
||||
.syntaxhighlighter.collapsed .toolbar a:hover {
|
||||
color: #ff7d27 !important;
|
||||
}
|
||||
.syntaxhighlighter .toolbar {
|
||||
color: white !important;
|
||||
background: #990000 !important;
|
||||
border: none !important;
|
||||
}
|
||||
.syntaxhighlighter .toolbar a {
|
||||
color: white !important;
|
||||
}
|
||||
.syntaxhighlighter .toolbar a:hover {
|
||||
color: #9ccff4 !important;
|
||||
}
|
||||
.syntaxhighlighter .plain, .syntaxhighlighter .plain a {
|
||||
color: #d3d3d3 !important;
|
||||
}
|
||||
.syntaxhighlighter .comments, .syntaxhighlighter .comments a {
|
||||
color: #ff7d27 !important;
|
||||
}
|
||||
.syntaxhighlighter .string, .syntaxhighlighter .string a {
|
||||
color: #ff9e7b !important;
|
||||
}
|
||||
.syntaxhighlighter .keyword {
|
||||
color: aqua !important;
|
||||
}
|
||||
.syntaxhighlighter .preprocessor {
|
||||
color: #aec4de !important;
|
||||
}
|
||||
.syntaxhighlighter .variable {
|
||||
color: #ffaa3e !important;
|
||||
}
|
||||
.syntaxhighlighter .value {
|
||||
color: #009900 !important;
|
||||
}
|
||||
.syntaxhighlighter .functions {
|
||||
color: #81cef9 !important;
|
||||
}
|
||||
.syntaxhighlighter .constants {
|
||||
color: #ff9e7b !important;
|
||||
}
|
||||
.syntaxhighlighter .script {
|
||||
font-weight: bold !important;
|
||||
color: aqua !important;
|
||||
background-color: none !important;
|
||||
}
|
||||
.syntaxhighlighter .color1, .syntaxhighlighter .color1 a {
|
||||
color: #ebdb8d !important;
|
||||
}
|
||||
.syntaxhighlighter .color2, .syntaxhighlighter .color2 a {
|
||||
color: #ff7d27 !important;
|
||||
}
|
||||
.syntaxhighlighter .color3, .syntaxhighlighter .color3 a {
|
||||
color: #aec4de !important;
|
||||
}
|
117
src/_h5ai/css/lib/sh/shThemeFadeToGrey.less
Normal file
@@ -0,0 +1,117 @@
|
||||
/**
|
||||
* SyntaxHighlighter
|
||||
* http://alexgorbatchev.com/SyntaxHighlighter
|
||||
*
|
||||
* SyntaxHighlighter is donationware. If you are using it, please donate.
|
||||
* http://alexgorbatchev.com/SyntaxHighlighter/donate.html
|
||||
*
|
||||
* @version
|
||||
* 3.0.83 (July 02 2010)
|
||||
*
|
||||
* @copyright
|
||||
* Copyright (C) 2004-2010 Alex Gorbatchev.
|
||||
*
|
||||
* @license
|
||||
* Dual licensed under the MIT and GPL licenses.
|
||||
*/
|
||||
.syntaxhighlighter {
|
||||
background-color: #121212 !important;
|
||||
}
|
||||
.syntaxhighlighter .line.alt1 {
|
||||
background-color: #121212 !important;
|
||||
}
|
||||
.syntaxhighlighter .line.alt2 {
|
||||
background-color: #121212 !important;
|
||||
}
|
||||
.syntaxhighlighter .line.highlighted.alt1, .syntaxhighlighter .line.highlighted.alt2 {
|
||||
background-color: #2c2c29 !important;
|
||||
}
|
||||
.syntaxhighlighter .line.highlighted.number {
|
||||
color: white !important;
|
||||
}
|
||||
.syntaxhighlighter table caption {
|
||||
color: white !important;
|
||||
}
|
||||
.syntaxhighlighter .gutter {
|
||||
color: #afafaf !important;
|
||||
}
|
||||
.syntaxhighlighter .gutter .line {
|
||||
border-right: 3px solid #3185b9 !important;
|
||||
}
|
||||
.syntaxhighlighter .gutter .line.highlighted {
|
||||
background-color: #3185b9 !important;
|
||||
color: #121212 !important;
|
||||
}
|
||||
.syntaxhighlighter.printing .line .content {
|
||||
border: none !important;
|
||||
}
|
||||
.syntaxhighlighter.collapsed {
|
||||
overflow: visible !important;
|
||||
}
|
||||
.syntaxhighlighter.collapsed .toolbar {
|
||||
color: #3185b9 !important;
|
||||
background: black !important;
|
||||
border: 1px solid #3185b9 !important;
|
||||
}
|
||||
.syntaxhighlighter.collapsed .toolbar a {
|
||||
color: #3185b9 !important;
|
||||
}
|
||||
.syntaxhighlighter.collapsed .toolbar a:hover {
|
||||
color: #d01d33 !important;
|
||||
}
|
||||
.syntaxhighlighter .toolbar {
|
||||
color: white !important;
|
||||
background: #3185b9 !important;
|
||||
border: none !important;
|
||||
}
|
||||
.syntaxhighlighter .toolbar a {
|
||||
color: white !important;
|
||||
}
|
||||
.syntaxhighlighter .toolbar a:hover {
|
||||
color: #96daff !important;
|
||||
}
|
||||
.syntaxhighlighter .plain, .syntaxhighlighter .plain a {
|
||||
color: white !important;
|
||||
}
|
||||
.syntaxhighlighter .comments, .syntaxhighlighter .comments a {
|
||||
color: #696854 !important;
|
||||
}
|
||||
.syntaxhighlighter .string, .syntaxhighlighter .string a {
|
||||
color: #e3e658 !important;
|
||||
}
|
||||
.syntaxhighlighter .keyword {
|
||||
color: #d01d33 !important;
|
||||
}
|
||||
.syntaxhighlighter .preprocessor {
|
||||
color: #435a5f !important;
|
||||
}
|
||||
.syntaxhighlighter .variable {
|
||||
color: #898989 !important;
|
||||
}
|
||||
.syntaxhighlighter .value {
|
||||
color: #009900 !important;
|
||||
}
|
||||
.syntaxhighlighter .functions {
|
||||
color: #aaaaaa !important;
|
||||
}
|
||||
.syntaxhighlighter .constants {
|
||||
color: #96daff !important;
|
||||
}
|
||||
.syntaxhighlighter .script {
|
||||
font-weight: bold !important;
|
||||
color: #d01d33 !important;
|
||||
background-color: none !important;
|
||||
}
|
||||
.syntaxhighlighter .color1, .syntaxhighlighter .color1 a {
|
||||
color: #ffc074 !important;
|
||||
}
|
||||
.syntaxhighlighter .color2, .syntaxhighlighter .color2 a {
|
||||
color: #4a8cdb !important;
|
||||
}
|
||||
.syntaxhighlighter .color3, .syntaxhighlighter .color3 a {
|
||||
color: #96daff !important;
|
||||
}
|
||||
|
||||
.syntaxhighlighter .functions {
|
||||
font-weight: bold !important;
|
||||
}
|
113
src/_h5ai/css/lib/sh/shThemeMDUltra.less
Executable file
@@ -0,0 +1,113 @@
|
||||
/**
|
||||
* SyntaxHighlighter
|
||||
* http://alexgorbatchev.com/SyntaxHighlighter
|
||||
*
|
||||
* SyntaxHighlighter is donationware. If you are using it, please donate.
|
||||
* http://alexgorbatchev.com/SyntaxHighlighter/donate.html
|
||||
*
|
||||
* @version
|
||||
* 3.0.83 (July 02 2010)
|
||||
*
|
||||
* @copyright
|
||||
* Copyright (C) 2004-2010 Alex Gorbatchev.
|
||||
*
|
||||
* @license
|
||||
* Dual licensed under the MIT and GPL licenses.
|
||||
*/
|
||||
.syntaxhighlighter {
|
||||
background-color: #222222 !important;
|
||||
}
|
||||
.syntaxhighlighter .line.alt1 {
|
||||
background-color: #222222 !important;
|
||||
}
|
||||
.syntaxhighlighter .line.alt2 {
|
||||
background-color: #222222 !important;
|
||||
}
|
||||
.syntaxhighlighter .line.highlighted.alt1, .syntaxhighlighter .line.highlighted.alt2 {
|
||||
background-color: #253e5a !important;
|
||||
}
|
||||
.syntaxhighlighter .line.highlighted.number {
|
||||
color: white !important;
|
||||
}
|
||||
.syntaxhighlighter table caption {
|
||||
color: lime !important;
|
||||
}
|
||||
.syntaxhighlighter .gutter {
|
||||
color: #38566f !important;
|
||||
}
|
||||
.syntaxhighlighter .gutter .line {
|
||||
border-right: 3px solid #435a5f !important;
|
||||
}
|
||||
.syntaxhighlighter .gutter .line.highlighted {
|
||||
background-color: #435a5f !important;
|
||||
color: #222222 !important;
|
||||
}
|
||||
.syntaxhighlighter.printing .line .content {
|
||||
border: none !important;
|
||||
}
|
||||
.syntaxhighlighter.collapsed {
|
||||
overflow: visible !important;
|
||||
}
|
||||
.syntaxhighlighter.collapsed .toolbar {
|
||||
color: #428bdd !important;
|
||||
background: black !important;
|
||||
border: 1px solid #435a5f !important;
|
||||
}
|
||||
.syntaxhighlighter.collapsed .toolbar a {
|
||||
color: #428bdd !important;
|
||||
}
|
||||
.syntaxhighlighter.collapsed .toolbar a:hover {
|
||||
color: lime !important;
|
||||
}
|
||||
.syntaxhighlighter .toolbar {
|
||||
color: #aaaaff !important;
|
||||
background: #435a5f !important;
|
||||
border: none !important;
|
||||
}
|
||||
.syntaxhighlighter .toolbar a {
|
||||
color: #aaaaff !important;
|
||||
}
|
||||
.syntaxhighlighter .toolbar a:hover {
|
||||
color: #9ccff4 !important;
|
||||
}
|
||||
.syntaxhighlighter .plain, .syntaxhighlighter .plain a {
|
||||
color: lime !important;
|
||||
}
|
||||
.syntaxhighlighter .comments, .syntaxhighlighter .comments a {
|
||||
color: #428bdd !important;
|
||||
}
|
||||
.syntaxhighlighter .string, .syntaxhighlighter .string a {
|
||||
color: lime !important;
|
||||
}
|
||||
.syntaxhighlighter .keyword {
|
||||
color: #aaaaff !important;
|
||||
}
|
||||
.syntaxhighlighter .preprocessor {
|
||||
color: #8aa6c1 !important;
|
||||
}
|
||||
.syntaxhighlighter .variable {
|
||||
color: aqua !important;
|
||||
}
|
||||
.syntaxhighlighter .value {
|
||||
color: #f7e741 !important;
|
||||
}
|
||||
.syntaxhighlighter .functions {
|
||||
color: #ff8000 !important;
|
||||
}
|
||||
.syntaxhighlighter .constants {
|
||||
color: yellow !important;
|
||||
}
|
||||
.syntaxhighlighter .script {
|
||||
font-weight: bold !important;
|
||||
color: #aaaaff !important;
|
||||
background-color: none !important;
|
||||
}
|
||||
.syntaxhighlighter .color1, .syntaxhighlighter .color1 a {
|
||||
color: red !important;
|
||||
}
|
||||
.syntaxhighlighter .color2, .syntaxhighlighter .color2 a {
|
||||
color: yellow !important;
|
||||
}
|
||||
.syntaxhighlighter .color3, .syntaxhighlighter .color3 a {
|
||||
color: #ffaa3e !important;
|
||||
}
|
113
src/_h5ai/css/lib/sh/shThemeMidnight.less
Normal file
@@ -0,0 +1,113 @@
|
||||
/**
|
||||
* SyntaxHighlighter
|
||||
* http://alexgorbatchev.com/SyntaxHighlighter
|
||||
*
|
||||
* SyntaxHighlighter is donationware. If you are using it, please donate.
|
||||
* http://alexgorbatchev.com/SyntaxHighlighter/donate.html
|
||||
*
|
||||
* @version
|
||||
* 3.0.83 (July 02 2010)
|
||||
*
|
||||
* @copyright
|
||||
* Copyright (C) 2004-2010 Alex Gorbatchev.
|
||||
*
|
||||
* @license
|
||||
* Dual licensed under the MIT and GPL licenses.
|
||||
*/
|
||||
.syntaxhighlighter {
|
||||
background-color: #0f192a !important;
|
||||
}
|
||||
.syntaxhighlighter .line.alt1 {
|
||||
background-color: #0f192a !important;
|
||||
}
|
||||
.syntaxhighlighter .line.alt2 {
|
||||
background-color: #0f192a !important;
|
||||
}
|
||||
.syntaxhighlighter .line.highlighted.alt1, .syntaxhighlighter .line.highlighted.alt2 {
|
||||
background-color: #253e5a !important;
|
||||
}
|
||||
.syntaxhighlighter .line.highlighted.number {
|
||||
color: #38566f !important;
|
||||
}
|
||||
.syntaxhighlighter table caption {
|
||||
color: #d1edff !important;
|
||||
}
|
||||
.syntaxhighlighter .gutter {
|
||||
color: #afafaf !important;
|
||||
}
|
||||
.syntaxhighlighter .gutter .line {
|
||||
border-right: 3px solid #435a5f !important;
|
||||
}
|
||||
.syntaxhighlighter .gutter .line.highlighted {
|
||||
background-color: #435a5f !important;
|
||||
color: #0f192a !important;
|
||||
}
|
||||
.syntaxhighlighter.printing .line .content {
|
||||
border: none !important;
|
||||
}
|
||||
.syntaxhighlighter.collapsed {
|
||||
overflow: visible !important;
|
||||
}
|
||||
.syntaxhighlighter.collapsed .toolbar {
|
||||
color: #428bdd !important;
|
||||
background: black !important;
|
||||
border: 1px solid #435a5f !important;
|
||||
}
|
||||
.syntaxhighlighter.collapsed .toolbar a {
|
||||
color: #428bdd !important;
|
||||
}
|
||||
.syntaxhighlighter.collapsed .toolbar a:hover {
|
||||
color: #1dc116 !important;
|
||||
}
|
||||
.syntaxhighlighter .toolbar {
|
||||
color: #d1edff !important;
|
||||
background: #435a5f !important;
|
||||
border: none !important;
|
||||
}
|
||||
.syntaxhighlighter .toolbar a {
|
||||
color: #d1edff !important;
|
||||
}
|
||||
.syntaxhighlighter .toolbar a:hover {
|
||||
color: #8aa6c1 !important;
|
||||
}
|
||||
.syntaxhighlighter .plain, .syntaxhighlighter .plain a {
|
||||
color: #d1edff !important;
|
||||
}
|
||||
.syntaxhighlighter .comments, .syntaxhighlighter .comments a {
|
||||
color: #428bdd !important;
|
||||
}
|
||||
.syntaxhighlighter .string, .syntaxhighlighter .string a {
|
||||
color: #1dc116 !important;
|
||||
}
|
||||
.syntaxhighlighter .keyword {
|
||||
color: #b43d3d !important;
|
||||
}
|
||||
.syntaxhighlighter .preprocessor {
|
||||
color: #8aa6c1 !important;
|
||||
}
|
||||
.syntaxhighlighter .variable {
|
||||
color: #ffaa3e !important;
|
||||
}
|
||||
.syntaxhighlighter .value {
|
||||
color: #f7e741 !important;
|
||||
}
|
||||
.syntaxhighlighter .functions {
|
||||
color: #ffaa3e !important;
|
||||
}
|
||||
.syntaxhighlighter .constants {
|
||||
color: #e0e8ff !important;
|
||||
}
|
||||
.syntaxhighlighter .script {
|
||||
font-weight: bold !important;
|
||||
color: #b43d3d !important;
|
||||
background-color: none !important;
|
||||
}
|
||||
.syntaxhighlighter .color1, .syntaxhighlighter .color1 a {
|
||||
color: #f8bb00 !important;
|
||||
}
|
||||
.syntaxhighlighter .color2, .syntaxhighlighter .color2 a {
|
||||
color: white !important;
|
||||
}
|
||||
.syntaxhighlighter .color3, .syntaxhighlighter .color3 a {
|
||||
color: #ffaa3e !important;
|
||||
}
|
113
src/_h5ai/css/lib/sh/shThemeRDark.less
Normal file
@@ -0,0 +1,113 @@
|
||||
/**
|
||||
* SyntaxHighlighter
|
||||
* http://alexgorbatchev.com/SyntaxHighlighter
|
||||
*
|
||||
* SyntaxHighlighter is donationware. If you are using it, please donate.
|
||||
* http://alexgorbatchev.com/SyntaxHighlighter/donate.html
|
||||
*
|
||||
* @version
|
||||
* 3.0.83 (July 02 2010)
|
||||
*
|
||||
* @copyright
|
||||
* Copyright (C) 2004-2010 Alex Gorbatchev.
|
||||
*
|
||||
* @license
|
||||
* Dual licensed under the MIT and GPL licenses.
|
||||
*/
|
||||
.syntaxhighlighter {
|
||||
background-color: #1b2426 !important;
|
||||
}
|
||||
.syntaxhighlighter .line.alt1 {
|
||||
background-color: #1b2426 !important;
|
||||
}
|
||||
.syntaxhighlighter .line.alt2 {
|
||||
background-color: #1b2426 !important;
|
||||
}
|
||||
.syntaxhighlighter .line.highlighted.alt1, .syntaxhighlighter .line.highlighted.alt2 {
|
||||
background-color: #323e41 !important;
|
||||
}
|
||||
.syntaxhighlighter .line.highlighted.number {
|
||||
color: #b9bdb6 !important;
|
||||
}
|
||||
.syntaxhighlighter table caption {
|
||||
color: #b9bdb6 !important;
|
||||
}
|
||||
.syntaxhighlighter .gutter {
|
||||
color: #afafaf !important;
|
||||
}
|
||||
.syntaxhighlighter .gutter .line {
|
||||
border-right: 3px solid #435a5f !important;
|
||||
}
|
||||
.syntaxhighlighter .gutter .line.highlighted {
|
||||
background-color: #435a5f !important;
|
||||
color: #1b2426 !important;
|
||||
}
|
||||
.syntaxhighlighter.printing .line .content {
|
||||
border: none !important;
|
||||
}
|
||||
.syntaxhighlighter.collapsed {
|
||||
overflow: visible !important;
|
||||
}
|
||||
.syntaxhighlighter.collapsed .toolbar {
|
||||
color: #5ba1cf !important;
|
||||
background: black !important;
|
||||
border: 1px solid #435a5f !important;
|
||||
}
|
||||
.syntaxhighlighter.collapsed .toolbar a {
|
||||
color: #5ba1cf !important;
|
||||
}
|
||||
.syntaxhighlighter.collapsed .toolbar a:hover {
|
||||
color: #5ce638 !important;
|
||||
}
|
||||
.syntaxhighlighter .toolbar {
|
||||
color: white !important;
|
||||
background: #435a5f !important;
|
||||
border: none !important;
|
||||
}
|
||||
.syntaxhighlighter .toolbar a {
|
||||
color: white !important;
|
||||
}
|
||||
.syntaxhighlighter .toolbar a:hover {
|
||||
color: #e0e8ff !important;
|
||||
}
|
||||
.syntaxhighlighter .plain, .syntaxhighlighter .plain a {
|
||||
color: #b9bdb6 !important;
|
||||
}
|
||||
.syntaxhighlighter .comments, .syntaxhighlighter .comments a {
|
||||
color: #878a85 !important;
|
||||
}
|
||||
.syntaxhighlighter .string, .syntaxhighlighter .string a {
|
||||
color: #5ce638 !important;
|
||||
}
|
||||
.syntaxhighlighter .keyword {
|
||||
color: #5ba1cf !important;
|
||||
}
|
||||
.syntaxhighlighter .preprocessor {
|
||||
color: #435a5f !important;
|
||||
}
|
||||
.syntaxhighlighter .variable {
|
||||
color: #ffaa3e !important;
|
||||
}
|
||||
.syntaxhighlighter .value {
|
||||
color: #009900 !important;
|
||||
}
|
||||
.syntaxhighlighter .functions {
|
||||
color: #ffaa3e !important;
|
||||
}
|
||||
.syntaxhighlighter .constants {
|
||||
color: #e0e8ff !important;
|
||||
}
|
||||
.syntaxhighlighter .script {
|
||||
font-weight: bold !important;
|
||||
color: #5ba1cf !important;
|
||||
background-color: none !important;
|
||||
}
|
||||
.syntaxhighlighter .color1, .syntaxhighlighter .color1 a {
|
||||
color: #e0e8ff !important;
|
||||
}
|
||||
.syntaxhighlighter .color2, .syntaxhighlighter .color2 a {
|
||||
color: white !important;
|
||||
}
|
||||
.syntaxhighlighter .color3, .syntaxhighlighter .color3 a {
|
||||
color: #ffaa3e !important;
|
||||
}
|
52
src/_h5ai/css/styles.less
Normal file
@@ -0,0 +1,52 @@
|
||||
|
||||
@import "lib/h5bp-norm";
|
||||
@import "lib/mixins";
|
||||
@import "lib/sh/shCore";
|
||||
@import "lib/sh/shThemeDefault";
|
||||
|
||||
html { overflow-y: auto; }
|
||||
::-moz-selection { background: #68A9FF; color: #fff; text-shadow: none; }
|
||||
::selection { background: #68A9FF; color: #fff; text-shadow: none; }
|
||||
|
||||
body {
|
||||
font-family: Ubuntu, sans-serif;
|
||||
font-size: 13px;
|
||||
color: #555;
|
||||
background-color: #fff;
|
||||
margin: 30px;
|
||||
}
|
||||
|
||||
|
||||
@import "inc/topbar";
|
||||
@import "inc/download";
|
||||
@import "inc/filter";
|
||||
|
||||
@import "inc/content";
|
||||
@import "inc/extended";
|
||||
|
||||
@import "inc/bottombar";
|
||||
@import "inc/l10n";
|
||||
|
||||
@import "inc/tree";
|
||||
@import "inc/context";
|
||||
@import "inc/apache-autoindex-table";
|
||||
|
||||
@import "inc/preview-img";
|
||||
@import "inc/preview-txt";
|
||||
|
||||
@import "inc/responsive";
|
||||
|
||||
@import "inc/h5ai-info";
|
||||
|
||||
|
||||
html.js .hideOnJs, html.no-js .hideOnNoJs {
|
||||
display: none;
|
||||
}
|
||||
html.oldie {
|
||||
.oldBrowser {
|
||||
display: inline !important;
|
||||
}
|
||||
#tree {
|
||||
display: none !important;
|
||||
}
|
||||
}
|
Before Width: | Height: | Size: 551 B After Width: | Height: | Size: 551 B |
Before Width: | Height: | Size: 554 B After Width: | Height: | Size: 554 B |
Before Width: | Height: | Size: 492 B After Width: | Height: | Size: 492 B |
Before Width: | Height: | Size: 551 B After Width: | Height: | Size: 551 B |
Before Width: | Height: | Size: 227 B After Width: | Height: | Size: 227 B |
Before Width: | Height: | Size: 663 B After Width: | Height: | Size: 663 B |
Before Width: | Height: | Size: 554 B After Width: | Height: | Size: 554 B |
Before Width: | Height: | Size: 506 B After Width: | Height: | Size: 506 B |
Before Width: | Height: | Size: 757 B After Width: | Height: | Size: 757 B |
Before Width: | Height: | Size: 699 B After Width: | Height: | Size: 699 B |
Before Width: | Height: | Size: 599 B After Width: | Height: | Size: 599 B |
Before Width: | Height: | Size: 592 B After Width: | Height: | Size: 592 B |
Before Width: | Height: | Size: 671 B After Width: | Height: | Size: 671 B |
Before Width: | Height: | Size: 311 B After Width: | Height: | Size: 311 B |
Before Width: | Height: | Size: 535 B After Width: | Height: | Size: 535 B |
Before Width: | Height: | Size: 679 B After Width: | Height: | Size: 679 B |
Before Width: | Height: | Size: 619 B After Width: | Height: | Size: 619 B |
Before Width: | Height: | Size: 846 B After Width: | Height: | Size: 846 B |
BIN
src/_h5ai/icons/16x16/folder-home.png
Normal file
After Width: | Height: | Size: 618 B |
BIN
src/_h5ai/icons/16x16/folder-open.png
Normal file
After Width: | Height: | Size: 431 B |
BIN
src/_h5ai/icons/16x16/folder-page.png
Normal file
After Width: | Height: | Size: 591 B |
Before Width: | Height: | Size: 494 B After Width: | Height: | Size: 494 B |
BIN
src/_h5ai/icons/16x16/folder.png
Normal file
After Width: | Height: | Size: 395 B |
Before Width: | Height: | Size: 655 B After Width: | Height: | Size: 655 B |
BIN
src/_h5ai/icons/16x16/gzip.png
Normal file
After Width: | Height: | Size: 551 B |
Before Width: | Height: | Size: 504 B After Width: | Height: | Size: 504 B |
Before Width: | Height: | Size: 530 B After Width: | Height: | Size: 530 B |
Before Width: | Height: | Size: 770 B After Width: | Height: | Size: 770 B |
Before Width: | Height: | Size: 792 B After Width: | Height: | Size: 792 B |
Before Width: | Height: | Size: 671 B After Width: | Height: | Size: 671 B |
Before Width: | Height: | Size: 788 B After Width: | Height: | Size: 788 B |
Before Width: | Height: | Size: 658 B After Width: | Height: | Size: 658 B |
Before Width: | Height: | Size: 675 B After Width: | Height: | Size: 675 B |
Before Width: | Height: | Size: 540 B After Width: | Height: | Size: 540 B |
Before Width: | Height: | Size: 423 B After Width: | Height: | Size: 423 B |
Before Width: | Height: | Size: 614 B After Width: | Height: | Size: 614 B |
Before Width: | Height: | Size: 627 B After Width: | Height: | Size: 627 B |
Before Width: | Height: | Size: 614 B After Width: | Height: | Size: 614 B |
Before Width: | Height: | Size: 799 B After Width: | Height: | Size: 799 B |
Before Width: | Height: | Size: 757 B After Width: | Height: | Size: 757 B |
Before Width: | Height: | Size: 610 B After Width: | Height: | Size: 610 B |
Before Width: | Height: | Size: 679 B After Width: | Height: | Size: 679 B |
Before Width: | Height: | Size: 629 B After Width: | Height: | Size: 629 B |
BIN
src/_h5ai/icons/16x16/ps.png
Normal file
After Width: | Height: | Size: 817 B |
Before Width: | Height: | Size: 622 B After Width: | Height: | Size: 622 B |
Before Width: | Height: | Size: 743 B After Width: | Height: | Size: 743 B |
Before Width: | Height: | Size: 621 B After Width: | Height: | Size: 621 B |
Before Width: | Height: | Size: 781 B After Width: | Height: | Size: 781 B |