Compare commits
374 Commits
Author | SHA1 | Date | |
---|---|---|---|
|
b097ac2b2d | ||
|
f047f94ad9 | ||
|
072f1c8158 | ||
|
ca19318671 | ||
|
c80c2b146a | ||
|
a23df9ffb8 | ||
|
ba911bd09c | ||
|
138fc4d43c | ||
|
57d6ef9520 | ||
|
ba793c27cb | ||
|
160fd8ecbf | ||
|
270956c10d | ||
|
17ad8d0632 | ||
|
787d37853b | ||
|
906d83a3b0 | ||
|
bfd8f1b5e0 | ||
|
2029f020a3 | ||
|
84ad7e4ef9 | ||
|
e8c124a0cf | ||
|
af300036b4 | ||
|
a64630b387 | ||
|
3f91022cde | ||
|
840363badb | ||
|
7be15da13a | ||
|
b87dc5a45b | ||
|
8658bac71a | ||
|
2cabbad0d6 | ||
|
a8e0c049f2 | ||
|
69ffcc2d32 | ||
|
a087e96d69 | ||
|
15dd200b28 | ||
|
aaa24df8a3 | ||
|
d7f1c68366 | ||
|
a60d5556af | ||
|
811994423d | ||
|
d6c5696f96 | ||
|
cb9341451b | ||
|
abb9b7bd0e | ||
|
318fefbbfd | ||
|
b8b6d32a33 | ||
|
bd65025a4c | ||
|
42cfe55ef3 | ||
|
c6a9374488 | ||
|
029872a212 | ||
|
838a346c29 | ||
|
e53f261c69 | ||
|
f6832982bb | ||
|
07d4eee151 | ||
|
59609aaee9 | ||
|
3c5a859f28 | ||
|
c71f891af2 | ||
|
7494491637 | ||
|
e0fb8b3285 | ||
|
ba2455a87f | ||
|
6f80d345a8 | ||
|
8d7f7d68aa | ||
|
1b66788d96 | ||
|
28b002dbee | ||
|
326b7f54e1 | ||
|
0a280e177b | ||
|
f24747e92f | ||
|
ede2316f53 | ||
|
26d0de5985 | ||
|
df208faf25 | ||
|
bcc9f21fc1 | ||
|
4169de4d6b | ||
|
bc4e1b349a | ||
|
8520658c34 | ||
|
9545ec2894 | ||
|
188d2825b1 | ||
|
c4084343dc | ||
|
3a0e620065 | ||
|
421d5c2e24 | ||
|
4e6c446ce4 | ||
|
b649cd1519 | ||
|
0e05e6d0a1 | ||
|
5ae35ee763 | ||
|
6b5556f338 | ||
|
aa92ab9e83 | ||
|
01d152ede5 | ||
|
1cbf46d2a5 | ||
|
53733ccdf5 | ||
|
6245c4654c | ||
|
1f3d501a04 | ||
|
842bca74f9 | ||
|
27c598d96e | ||
|
3cd11139a2 | ||
|
1aec23008e | ||
|
9d8552a272 | ||
|
9648bd6a42 | ||
|
cb6eb4b1b3 | ||
|
07fcb40aab | ||
|
010b984a93 | ||
|
6d188f1271 | ||
|
2fecdef3e0 | ||
|
8783f00460 | ||
|
b727b29275 | ||
|
d0544462d5 | ||
|
47a1c0989c | ||
|
07d67787d8 | ||
|
586c21a2c1 | ||
|
b80eeeebbf | ||
|
151f70773d | ||
|
491e0e4068 | ||
|
f4ea5dab4a | ||
|
1f15b636e2 | ||
|
4b7aba378c | ||
|
4c96efe1c7 | ||
|
799f1ecd13 | ||
|
f1a2a44079 | ||
|
fd89ea1d90 | ||
|
5a017a0d5a | ||
|
e53d72e977 | ||
|
10c651c0a5 | ||
|
bf2cf3c048 | ||
|
1458623998 | ||
|
09abaa9a3c | ||
|
1217d2d699 | ||
|
ee30ba509a | ||
|
3617a7fb80 | ||
|
7d324ce51f | ||
|
a6a95780da | ||
|
a99c28f234 | ||
|
bdcab107eb | ||
|
7b216484de | ||
|
08f2f6e165 | ||
|
67e5779402 | ||
|
9a447a83bd | ||
|
35d85b4e99 | ||
|
1be5e121b3 | ||
|
fbfbcd0439 | ||
|
801ee05872 | ||
|
3e3b2813cd | ||
|
f7fbd2e256 | ||
|
71d22fb9e0 | ||
|
ff40e2129f | ||
|
4c3267c1f8 | ||
|
2a1f864e6f | ||
|
c160c89027 | ||
|
9d26d5ae7e | ||
|
cc7d9ee912 | ||
|
0b6b2b0f33 | ||
|
91a9621648 | ||
|
45922c1e7b | ||
|
14960af036 | ||
|
f915bdea3b | ||
|
befdf54952 | ||
|
94deb369b1 | ||
|
87b3c6bfee | ||
|
9ac5973907 | ||
|
2f288703bf | ||
|
d76fad3a51 | ||
|
da438f2f0b | ||
|
4245f2019e | ||
|
49eb730757 | ||
|
b506405a2c | ||
|
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 |
48
.gitignore
vendored
@@ -1,48 +1,6 @@
|
||||
|
||||
# Build folders to ignore
|
||||
bin
|
||||
build
|
||||
#target
|
||||
build.local.xml
|
||||
|
||||
# Eclipse
|
||||
.classpath
|
||||
.ant-targets-*
|
||||
|
||||
# Numerous always-ignore extensions
|
||||
*.diff
|
||||
*.err
|
||||
*.orig
|
||||
*.log
|
||||
*.rej
|
||||
*.swo
|
||||
*.swp
|
||||
*.vi
|
||||
*~
|
||||
*.sass-cache
|
||||
|
||||
# OS or Editor folders
|
||||
.DS_Store
|
||||
.cache
|
||||
.project
|
||||
.settings
|
||||
.tmproj
|
||||
nbproject
|
||||
Thumbs.db
|
||||
|
||||
# Dreamweaver added files
|
||||
_notes
|
||||
dwsync.xml
|
||||
|
||||
# Komodo
|
||||
*.komodoproject
|
||||
.komodotools
|
||||
|
||||
# Folders to ignore
|
||||
.hg
|
||||
.svn
|
||||
.CVS
|
||||
intermediate
|
||||
publish
|
||||
.idea
|
||||
local
|
||||
*.sublime-*
|
||||
|
||||
test
|
||||
|
19
LICENSE.md
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.
|
453
README.md
@@ -1,119 +1,418 @@
|
||||
# h5ai v0.5   ·   a beautified Apache index
|
||||
# h5ai
|
||||
**a modern HTTP web server index for Apache httpd, lighttpd, nginx and Cherokee**
|
||||
|
||||
|
||||
## Screenshots
|
||||
|
||||
<a href="http://github.com/lrsjng/h5ai/raw/master/resources/h5ai-v0.4-details.png" target="_blank">
|
||||
<img src="http://github.com/lrsjng/h5ai/raw/master/resources/h5ai-v0.4-details.png" width="400px" alt="screenshot" title="screenshot" style="display: inline" />
|
||||
</a>
|
||||
     
|
||||
<a href="http://github.com/lrsjng/h5ai/raw/master/resources/h5ai-v0.4-icons.png" target="_blank">
|
||||
<img src="http://github.com/lrsjng/h5ai/raw/master/resources/h5ai-v0.4-icons.png" width="400px" alt="screenshot" title="screenshot" style="display: inline" />
|
||||
</a>
|
||||
|
||||
|
||||
## Live example
|
||||
|
||||
View a [sample folder](http://larsjung.de/h5ai/sample)
|
||||
*(the files are all empty to save webspace)*
|
||||
The preferred way to report a bug or make a feature request is to
|
||||
create [a new issue](http://github.com/lrsjng/h5ai/issues/new) on GitHub!
|
||||
|
||||
|
||||
## Install
|
||||
|
||||
Everything you need is located in folder `target`.
|
||||
(**note:** please don't use files from the `src` folder for installation,
|
||||
they need to be preprocessed to work correctly)
|
||||
|
||||
* Copy folder `h5ai` to the web-root directory of your server or alternativly set an alias `/h5ai/` to
|
||||
this folder.
|
||||
* Add the content of file `dot.htaccess` to the `.htaccess` file inside the directory
|
||||
you want to be styled (you might have to create this file). This directory and any subdirectories will be
|
||||
styled by h5ai.
|
||||
|
||||
Optionally add `h5ai.header.html` and/or `h5ai.footer.html` files to any of the styled folders to [display
|
||||
custom top or bottom sections](http://larsjung.de/h5ai/sample/customize). The content of those files
|
||||
will be wrapped by `<header>` and `<footer>` tags.
|
||||
You'll find a preprocessed package, as well as detailed installation
|
||||
instructions on the [project page](http://larsjung.de/h5ai/).
|
||||
|
||||
|
||||
## License and References
|
||||
## Build
|
||||
|
||||
<a rel="license" href="http://creativecommons.org/licenses/by-sa/3.0/"><img alt="Creative Commons License" style="border-width:0" src="http://i.creativecommons.org/l/by-sa/3.0/88x31.png" /></a>
|
||||
[h5ai](http://larsjung.de/h5ai) is provided under the terms of the [CC BY-SA 3.0 License](http://creativecommons.org/licenses/by-sa/3.0/).
|
||||
It is based on
|
||||
[HTML5 Boilerplate](http://html5boilerplate.com),
|
||||
[jQuery](http://jquery.com),
|
||||
[Modernizr](http://www.modernizr.com) and
|
||||
[Faenza icon set](http://tiheum.deviantart.com/art/Faenza-Icons-173323228),
|
||||
please respect their rights.
|
||||
(there are repositories of the latest [releases](http://release.larsjung.de/h5ai/) and [dev builds](http://release.larsjung.de/h5ai/dev/))
|
||||
|
||||
If you want to build **h5ai** yourself you need to install the build tool [fQuery](http://larsjung.de/fquery/) first:
|
||||
|
||||
> npm install -g fquery
|
||||
|
||||
This will install fQuery and its command line tool `makejs`. Run `makejs --help` to see if everything
|
||||
worked fine.
|
||||
|
||||
To clone and build the project run the following commands.
|
||||
You'll find a new directory `build` including a fresh zipball.
|
||||
|
||||
> git clone git://github.com/lrsjng/h5ai.git
|
||||
> cd h5ai
|
||||
> makejs release
|
||||
|
||||
|
||||
## License
|
||||
|
||||
**h5ai** is provided under the terms of the [MIT License](http://github.com/lrsjng/h5ai/blob/develop/LICENSE.md).
|
||||
|
||||
It profits from these great projects:
|
||||
[Faenza icon set](http://tiheum.deviantart.com/art/Faenza-Icons-173323228) (GPL),
|
||||
[HTML5 ★ Boilerplate](http://html5boilerplate.com) (MIT),
|
||||
[jQuery](http://jquery.com) (MIT),
|
||||
[jQuery.filedrop](http://www.github.com/weixiyen/jquery-filedrop) (MIT),
|
||||
[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),
|
||||
[spin.js](http://fgnass.github.com/spin.js/) (MIT),
|
||||
[SyntaxHighlighter](http://alexgorbatchev.com/SyntaxHighlighter/) (MIT/GPL),
|
||||
[Underscore.js](http://underscorejs.org) (MIT)
|
||||
|
||||
|
||||
## Changelog
|
||||
(**h5ai** uses [semantic versioning](http://semver.org/))
|
||||
|
||||
### v0.5
|
||||
*2011-07-01*
|
||||
### v0.22.1 - *2012-10-16*
|
||||
|
||||
* added tree sidebar
|
||||
* bug fix concerning API requests in PHP mode
|
||||
* minor changes in responsive styles
|
||||
|
||||
|
||||
### v0.22 - *2012-10-14*
|
||||
|
||||
* general changes h5ai directory layout and configuration
|
||||
* splits configuration file (`config.json`) into files `options.json`, `types.json` and `langs.json`
|
||||
* localization now in separate files
|
||||
* adds auto-refresh
|
||||
* adds drag'n'drop upload (PHP, experimental)
|
||||
* adds file deletion (PHP, experimental)
|
||||
* cleans and improves PHP code
|
||||
* PHP no longer respects htaccess restrictions (so be careful)
|
||||
* PHP ignore patterns might include paths now
|
||||
* improves separation between aai and php mode
|
||||
* improves performance in aai mode
|
||||
* adds optional binary prefixes for file sizes
|
||||
* improves filter: autofocus on keypress, clear on `ESC`
|
||||
* download packages now packaged relative to current folder
|
||||
* download package name changable
|
||||
* splits type `js` into `js` and `json`
|
||||
* prevents some errors with files > 2GB on 32bit OS
|
||||
* adds max subfolder size in tree view
|
||||
* adds ctrl-click file selection
|
||||
* adds Piwik analytics extension
|
||||
* temp download packages are now stored in the `cache`-folder and deleted as soon as possible
|
||||
* updates translations
|
||||
* adds `he` translation by [Tomer Cohen](https://github.com/tomer)
|
||||
* updates 3rd party libs
|
||||
|
||||
|
||||
### 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*
|
||||
### v0.4 - *2011-06-27*
|
||||
|
||||
* added better fallback, in case JavaScript is disabled
|
||||
* rewrote js, fixed middle-button click etc. problems
|
||||
* refactored css
|
||||
* sorted, added and moved icons and images
|
||||
* updated dot.access
|
||||
* 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*
|
||||
### v0.3.2 - *2011-06-24*
|
||||
|
||||
* removed lib versions from file names
|
||||
* added 'empty' indicator for icons view
|
||||
* removes lib versions from file names
|
||||
* adds 'empty' indicator for icons view
|
||||
|
||||
|
||||
### v0.3.1
|
||||
*2011-06-24*
|
||||
### v0.3.1 - *2011-06-24*
|
||||
|
||||
* refactored js
|
||||
* added `folderClick` and `fileClick` callback hooks
|
||||
* fixed .emtpy style
|
||||
* refactores js
|
||||
* adds `folderClick` and `fileClick` callback hooks
|
||||
* fixes .emtpy style
|
||||
|
||||
|
||||
### v0.3
|
||||
*2011-06-23*
|
||||
### v0.3 - *2011-06-23*
|
||||
|
||||
* included build stuff, files previously found in the base directory are now located in folder `target`
|
||||
* includes build stuff, files previously found in the base directory are now located in folder `target`
|
||||
* styles and scripts are now minified
|
||||
* added Modernizr 2.0.4 for future use
|
||||
* updated jQuery to version 1.6.1
|
||||
* adds Modernizr 2.0.4 for future use
|
||||
* updates jQuery to version 1.6.1
|
||||
|
||||
|
||||
### v0.2.3
|
||||
*2011-06-17*
|
||||
### v0.2.3 - *2011-06-17*
|
||||
|
||||
* more refactoring in main.js
|
||||
* ~~added custom js support, and global includes~~ *removed, only custom top and bottom sections supported*
|
||||
|
||||
|
||||
### v0.2.2
|
||||
*2011-06-16*
|
||||
### v0.2.2 - *2011-06-16*
|
||||
|
||||
* refactored a lot, added some comments
|
||||
* included fixes from [NumEricR](http://github.com/NumEricR/h5ai)
|
||||
* added top/bottom message support, only basicly styled
|
||||
* 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*
|
||||
### v0.2.1 - *2011-06-16*
|
||||
|
||||
* fixed croped filenames
|
||||
* fixed missing .png extension in header
|
||||
* added some color to the links
|
||||
* added changelog
|
||||
* fixes croped filenames
|
||||
* fixes missing .png extension in header
|
||||
* adds some color to the links
|
||||
* adds changelog
|
||||
|
||||
|
||||
### v0.2
|
||||
*2011-06-15*
|
||||
### v0.2 - *2011-06-15*
|
||||
|
||||
* added icon view
|
||||
* adds icon view
|
||||
|
||||
|
@@ -1,19 +0,0 @@
|
||||
custom = true
|
||||
|
||||
|
||||
# project
|
||||
project.name = h5ai
|
||||
project.version = 0.5
|
||||
|
||||
|
||||
# src
|
||||
src.dir = src
|
||||
|
||||
|
||||
# build
|
||||
build.dir = target
|
||||
|
||||
|
||||
# libs
|
||||
lib.scripp.jar = tools/scripp.jar
|
||||
|
58
build.xml
@@ -1,58 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<project
|
||||
name="h5ai"
|
||||
basedir="."
|
||||
xmlns:scripp="antlib:de.larsjung.scripp.ant"
|
||||
>
|
||||
<target name="init">
|
||||
<property file="build.properties" />
|
||||
<tstamp>
|
||||
<format property="build.stamp" pattern="yyyy-MM-dd-HHmmss" />
|
||||
</tstamp>
|
||||
<property name="build.label" value="${project.name} ${project.version} b${build.stamp}" />
|
||||
<echo>Build: ${build.label}</echo>
|
||||
<taskdef
|
||||
resource="de/larsjung/scripp/ant/antlib.xml"
|
||||
uri="antlib:de.larsjung.scripp.ant"
|
||||
classpath="${lib.scripp.jar}"
|
||||
/>
|
||||
</target>
|
||||
|
||||
|
||||
<target name="clean" depends="init">
|
||||
<delete dir="${build.dir}" />
|
||||
</target>
|
||||
|
||||
|
||||
<target name="build" depends="clean">
|
||||
<mkdir dir="${build.dir}" />
|
||||
<copy todir="${build.dir}">
|
||||
<fileset dir="${src.dir}" />
|
||||
</copy>
|
||||
<replace dir="${build.dir}">
|
||||
<replacefilter token="%BUILD%" value="${build.label}" />
|
||||
<replacefilter token="%BUILD_NAME%" value="${project.name}" />
|
||||
<replacefilter token="%BUILD_VERSION%" value="${project.version}" />
|
||||
<replacefilter token="%BUILD_STAMP%" value="${build.stamp}" />
|
||||
</replace>
|
||||
|
||||
<scripp.dir dir="${build.dir}/h5ai/css" />
|
||||
<scripp.dir dir="${build.dir}/h5ai/js" />
|
||||
</target>
|
||||
|
||||
|
||||
<macrodef name="scripp.dir">
|
||||
<attribute name="dir" />
|
||||
<sequential>
|
||||
<scripp:process>
|
||||
<fileset dir="@{dir}" includes="**/*.less,**/*.css,**/*.js" excludes="inc/**/*,**/*.min.css,**/*.min.js" />
|
||||
<globmapper from="*.less" to="*.css" />
|
||||
<globmapper from="*.css" to="*.css" />
|
||||
<globmapper from="*.js" to="*.js" />
|
||||
</scripp:process>
|
||||
<delete dir="@{dir}/inc">
|
||||
<fileset dir="@{dir}" includes="**/*.less" />
|
||||
</delete>
|
||||
</sequential>
|
||||
</macrodef>
|
||||
</project>
|
169
makefile.js
Normal file
@@ -0,0 +1,169 @@
|
||||
/*jshint node: true */
|
||||
'use strict';
|
||||
|
||||
|
||||
var path = require('path'),
|
||||
|
||||
pkg = require('./package.json'),
|
||||
|
||||
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'
|
||||
]
|
||||
},
|
||||
|
||||
handlebarsEnv = {
|
||||
pkg: pkg
|
||||
},
|
||||
|
||||
mapSrc = function (blob) {
|
||||
|
||||
return blob.source.replace(src, build).replace(/\.less$/, '.css').replace(/\.jade$/, '');
|
||||
},
|
||||
|
||||
mapRoot = function (blob) {
|
||||
|
||||
return blob.source.replace(root, path.join(build, '_h5ai'));
|
||||
};
|
||||
|
||||
|
||||
module.exports = function (make) {
|
||||
|
||||
var Event = make.Event,
|
||||
$ = make.fQuery,
|
||||
moment = make.moment;
|
||||
|
||||
|
||||
make.version('>=0.8.1');
|
||||
make.defaults('build');
|
||||
|
||||
|
||||
make.before(function () {
|
||||
|
||||
handlebarsEnv.stamp = moment().format('YYYY-MM-DD HH:mm:ss');
|
||||
});
|
||||
|
||||
|
||||
make.target('check-version', [], 'add git info to dev builds').async(function (done, fail) {
|
||||
|
||||
if (!/-dev$/.test(pkg.version)) {
|
||||
done();
|
||||
return;
|
||||
}
|
||||
|
||||
$.git(root, function (err, result) {
|
||||
|
||||
pkg.version += '-' + result.revListOriginMasterHead.length + '-' + result.revParseHead.slice(0, 7);
|
||||
Event.info({
|
||||
method: 'check-version',
|
||||
message: 'version set to ' + pkg.version
|
||||
});
|
||||
done();
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
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/client/js: **/*.js, ! lib/**')
|
||||
.jshint(jshint);
|
||||
});
|
||||
|
||||
|
||||
make.target('build', ['check-version'], 'build all updated files').sync(function () {
|
||||
|
||||
$(src + ': _h5ai/client/js/*.js')
|
||||
.modified(mapSrc, $(src + ': _h5ai/client/js/**'))
|
||||
.includify()
|
||||
.uglifyjs()
|
||||
.write($.OVERWRITE, mapSrc);
|
||||
|
||||
$(src + ': _h5ai/client/css/*.less')
|
||||
.modified(mapSrc, $(src + ': _h5ai/client/css/**'))
|
||||
.less()
|
||||
.cssmin()
|
||||
.write($.OVERWRITE, mapSrc);
|
||||
|
||||
$(src + ': **/*.jade')
|
||||
.modified(mapSrc)
|
||||
.handlebars(handlebarsEnv)
|
||||
.jade()
|
||||
.write($.OVERWRITE, mapSrc);
|
||||
|
||||
$(src + ': **, ! _h5ai/client/js/**, ! _h5ai/client/css/**, ! **/*.jade')
|
||||
.modified(mapSrc)
|
||||
.handlebars(handlebarsEnv)
|
||||
.write($.OVERWRITE, mapSrc);
|
||||
|
||||
$(root + ': README*, LICENSE*')
|
||||
.modified(mapRoot)
|
||||
.write($.OVERWRITE, mapRoot);
|
||||
});
|
||||
|
||||
|
||||
make.target('build-uncompressed', ['check-version'], 'build all updated files without compression').sync(function () {
|
||||
|
||||
$(src + ': _h5ai/client/js/*.js')
|
||||
.modified(mapSrc, $(src + ': _h5ai/client/js/**'))
|
||||
.includify()
|
||||
// .uglifyjs()
|
||||
.write($.OVERWRITE, mapSrc);
|
||||
|
||||
$(src + ': _h5ai/client/css/*.less')
|
||||
.modified(mapSrc, $(src + ': _h5ai/client/css/**'))
|
||||
.less()
|
||||
// .cssmin()
|
||||
.write($.OVERWRITE, mapSrc);
|
||||
|
||||
$(src + ': **/*.jade')
|
||||
.modified(mapSrc)
|
||||
.handlebars(handlebarsEnv)
|
||||
.jade()
|
||||
.write($.OVERWRITE, mapSrc);
|
||||
|
||||
$(src + ': **, ! _h5ai/client/js/**, ! _h5ai/client/css/**, ! **/*.jade')
|
||||
.modified(mapSrc)
|
||||
.handlebars(handlebarsEnv)
|
||||
.write($.OVERWRITE, mapSrc);
|
||||
|
||||
$(root + ': README*, LICENSE*')
|
||||
.modified(mapRoot)
|
||||
.write($.OVERWRITE, mapRoot);
|
||||
});
|
||||
|
||||
|
||||
make.target('release', ['clean', 'build'], 'create a zipball').async(function (done, fail) {
|
||||
|
||||
$(build + ': **').shzip({
|
||||
target: path.join(build, pkg.name + '-' + pkg.version + '.zip'),
|
||||
dir: build,
|
||||
callback: done
|
||||
});
|
||||
});
|
||||
};
|
12
package.json
Normal file
@@ -0,0 +1,12 @@
|
||||
{
|
||||
"name": "h5ai",
|
||||
"version": "0.22.1",
|
||||
"description": "a modern HTTP web server index",
|
||||
"url": "http://larsjung.de/h5ai/",
|
||||
"author": "Lars Jung",
|
||||
"license": "MIT",
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/lrsjng/h5ai.git"
|
||||
}
|
||||
}
|
Before Width: | Height: | Size: 68 KiB |
Before Width: | Height: | Size: 64 KiB |
Before Width: | Height: | Size: 74 KiB |
45
src/_h5ai/.htaccess
Normal file
@@ -0,0 +1,45 @@
|
||||
|
||||
Options -Indexes
|
||||
|
||||
DirectoryIndex index.html
|
||||
|
||||
<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>
|
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.
|
73
src/_h5ai/client/css/inc/bottombar.less
Normal file
@@ -0,0 +1,73 @@
|
||||
|
||||
#bottombar {
|
||||
position: fixed;
|
||||
z-index: 5;
|
||||
width: 100%;
|
||||
height: 18px;
|
||||
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 {
|
||||
position: absolute;
|
||||
left: 0;
|
||||
display: block;
|
||||
padding: 0 8px;
|
||||
}
|
||||
.center {
|
||||
display: block;
|
||||
}
|
||||
.right {
|
||||
position: absolute;
|
||||
right: 0;
|
||||
display: block;
|
||||
padding: 0 8px;
|
||||
}
|
||||
.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;
|
||||
|
||||
&:before {
|
||||
content: '·'
|
||||
}
|
||||
}
|
||||
&.default {
|
||||
}
|
||||
&.dynamic {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
}
|
30
src/_h5ai/client/css/inc/content.less
Normal file
@@ -0,0 +1,30 @@
|
||||
|
||||
#content {
|
||||
max-width: 960px;
|
||||
margin: 50px auto;
|
||||
font-size: 16px;
|
||||
}
|
||||
|
||||
#content-header, #content-footer {
|
||||
color: #333;
|
||||
|
||||
a, a:active, a:visited {
|
||||
color: #2080FF;
|
||||
text-decoration: none;
|
||||
cursor: pointer;
|
||||
|
||||
&:hover {
|
||||
color: #555;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#content-header {
|
||||
padding-bottom: 12px;
|
||||
margin-bottom: 32px;
|
||||
}
|
||||
|
||||
#content-footer {
|
||||
padding-top: 12px;
|
||||
margin-top: 32px;
|
||||
}
|
32
src/_h5ai/client/css/inc/context-menu.less
Normal file
@@ -0,0 +1,32 @@
|
||||
|
||||
#extended .context-menu {
|
||||
|
||||
display: block;
|
||||
position: absolute;
|
||||
right: 0;
|
||||
top: 0;
|
||||
background-color: rgb(241,241,241);
|
||||
border: 1px solid rgb(210,210,210);
|
||||
color: #999;
|
||||
z-index: 10;
|
||||
font-size: 0.9em;
|
||||
|
||||
ul {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
list-style: none;
|
||||
text-align: left;
|
||||
|
||||
li {
|
||||
padding: 8px 12px 10px 12px;
|
||||
white-space: nowrap;
|
||||
border-top: 1px solid rgb(231,231,231);
|
||||
.transition(all 0.2s ease-in-out);
|
||||
|
||||
&:hover {
|
||||
color: #e80;
|
||||
background-color: rgba(255,255,255,0.8);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
30
src/_h5ai/client/css/inc/delete.less
Normal file
@@ -0,0 +1,30 @@
|
||||
|
||||
#delete {
|
||||
display: none;
|
||||
.topbar-right;
|
||||
.transition(all 0.2s ease-in-out);
|
||||
|
||||
&.failed {
|
||||
background-color: rgba(255,0,0,0.5);
|
||||
}
|
||||
}
|
||||
|
||||
#delete-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;
|
||||
}
|
||||
}
|
30
src/_h5ai/client/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;
|
||||
}
|
||||
}
|
89
src/_h5ai/client/css/inc/dropbox.less
Normal file
@@ -0,0 +1,89 @@
|
||||
|
||||
#content {
|
||||
border: 1px dashed #fff;
|
||||
.border-radius(8px);
|
||||
.transition(border-color 0.2s ease-in-out);
|
||||
|
||||
&.hint {
|
||||
border-color: #ddd;
|
||||
}
|
||||
&.match {
|
||||
border-color: #999;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
#uploads {
|
||||
width: 450px;
|
||||
margin: 12px auto;
|
||||
padding: 0;
|
||||
list-style: none;
|
||||
|
||||
.upload {
|
||||
color: #555;
|
||||
font-size: 0.9em;
|
||||
|
||||
.name {
|
||||
display: inline-block;
|
||||
white-space: nowrap;
|
||||
overflow: hidden;
|
||||
|
||||
&:before {
|
||||
display: inline-block;
|
||||
content: '•';
|
||||
color: #55c;
|
||||
width: 1em;
|
||||
text-align: center;
|
||||
padding-right: 1em;
|
||||
}
|
||||
}
|
||||
|
||||
.size {
|
||||
display: none;
|
||||
float: right;
|
||||
white-space: nowrap;
|
||||
|
||||
&:after {
|
||||
content: ' bytes'
|
||||
}
|
||||
}
|
||||
|
||||
.error {
|
||||
float: right;
|
||||
white-space: nowrap;
|
||||
color: #c55;
|
||||
}
|
||||
|
||||
.finished {
|
||||
float: right;
|
||||
white-space: nowrap;
|
||||
color: #008200;
|
||||
}
|
||||
|
||||
.progress {
|
||||
display: inline-block;
|
||||
margin: 4px 8px;
|
||||
|
||||
width: 84px;
|
||||
height: 8px;
|
||||
background-color: #ddd;
|
||||
overflow: hidden;
|
||||
float: right;
|
||||
|
||||
.bar {
|
||||
width: 0%;
|
||||
height: 100%;
|
||||
background-color: #999;
|
||||
}
|
||||
}
|
||||
|
||||
&.finished .name:before {
|
||||
content: '✔';
|
||||
color: #008200;
|
||||
}
|
||||
&.error .name:before {
|
||||
content: '✖';
|
||||
color: #c55;
|
||||
}
|
||||
}
|
||||
}
|
46
src/_h5ai/client/css/inc/extended-details.less
Normal file
@@ -0,0 +1,46 @@
|
||||
|
||||
#extended.view-details {
|
||||
|
||||
li {
|
||||
|
||||
&.header {
|
||||
display: list-item;
|
||||
}
|
||||
|
||||
&.entry {
|
||||
|
||||
a, a:active, a:visited {
|
||||
border-bottom: 1px solid #e8e8e8;
|
||||
}
|
||||
|
||||
// needs to be here, to not conflict with header fields
|
||||
.icon, .label, .date, .size {
|
||||
padding: 6px;
|
||||
}
|
||||
}
|
||||
|
||||
.icon.small {
|
||||
display: inline-block;
|
||||
position: absolute;
|
||||
left: 0;
|
||||
top: -2px;
|
||||
width: 16px;
|
||||
}
|
||||
|
||||
.label {
|
||||
margin: 0 270px 0 24px;
|
||||
}
|
||||
|
||||
.date {
|
||||
position: absolute;
|
||||
right: 100px;
|
||||
top: 0;
|
||||
}
|
||||
|
||||
.size {
|
||||
position: absolute;
|
||||
right: 0;
|
||||
top: 0;
|
||||
}
|
||||
}
|
||||
}
|
42
src/_h5ai/client/css/inc/extended-grid.less
Normal file
@@ -0,0 +1,42 @@
|
||||
|
||||
#extended.view-grid {
|
||||
|
||||
li {
|
||||
|
||||
&.entry {
|
||||
float: left;
|
||||
|
||||
a, a:active, a:visited {
|
||||
float: left;
|
||||
margin: 2px;
|
||||
padding: 8px;
|
||||
width: 164px;
|
||||
height: 24px;
|
||||
border: 2px solid rgba(0,0,0,0);
|
||||
.border-radius(5px);
|
||||
|
||||
&:hover, &.hover {
|
||||
border-color: #e8e8e8;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.icon.small {
|
||||
display: inline-block;
|
||||
position: relative;
|
||||
left: 0;
|
||||
top: -2px;
|
||||
width: 16px;
|
||||
}
|
||||
|
||||
.label {
|
||||
display: inline-block;
|
||||
padding-left: 6px;
|
||||
max-width: 140px;
|
||||
}
|
||||
|
||||
.date, .size {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
}
|
47
src/_h5ai/client/css/inc/extended-icons.less
Normal file
@@ -0,0 +1,47 @@
|
||||
|
||||
#extended.view-icons {
|
||||
|
||||
li {
|
||||
text-align: center;
|
||||
|
||||
&.entry {
|
||||
float: left;
|
||||
|
||||
a, a:active, a:visited {
|
||||
float: left;
|
||||
margin: 8px;
|
||||
padding: 8px;
|
||||
width: 100px;
|
||||
height: 120px;
|
||||
border: 2px solid rgba(0,0,0,0);
|
||||
.border-radius(5px);
|
||||
|
||||
&:hover, &.hover {
|
||||
border-color: #e8e8e8;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.icon.big {
|
||||
display: block;
|
||||
height: 48px;
|
||||
margin-bottom: 6px;
|
||||
}
|
||||
|
||||
.label {
|
||||
text-align: center;
|
||||
word-wrap: break-word;
|
||||
white-space: normal;
|
||||
}
|
||||
|
||||
.date, .size {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
|
||||
.empty, .no-match {
|
||||
margin: 0 120px;
|
||||
padding: 16px;
|
||||
height: 120px;
|
||||
}
|
||||
}
|
39
src/_h5ai/client/css/inc/extended-list.less
Normal file
@@ -0,0 +1,39 @@
|
||||
|
||||
#extended.view-list {
|
||||
|
||||
li {
|
||||
|
||||
&.entry {
|
||||
|
||||
a, a:active, a:visited {
|
||||
height: 56px;
|
||||
border-bottom: 1px solid #e8e8e8;
|
||||
}
|
||||
}
|
||||
|
||||
.icon, .label, .date, .size {
|
||||
padding: 6px;
|
||||
}
|
||||
|
||||
.icon.big {
|
||||
display: inline-block;
|
||||
position: absolute;
|
||||
left: 0;
|
||||
top: -2px;
|
||||
width: 100px;
|
||||
}
|
||||
|
||||
.label {
|
||||
margin: 0 270px 0 106px;
|
||||
}
|
||||
|
||||
.date {
|
||||
margin: 0 0 0 106px;
|
||||
}
|
||||
|
||||
.date, .size {
|
||||
position: relative;
|
||||
top: -6px;
|
||||
}
|
||||
}
|
||||
}
|
168
src/_h5ai/client/css/inc/extended.less
Normal file
@@ -0,0 +1,168 @@
|
||||
|
||||
#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 {
|
||||
display: none;
|
||||
|
||||
a, a:active, a:visited {
|
||||
color: #333;
|
||||
cursor: pointer;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
ul {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
list-style: none;
|
||||
}
|
||||
|
||||
li {
|
||||
position: relative;
|
||||
white-space: nowrap;
|
||||
|
||||
&.header {
|
||||
display: none;
|
||||
font-size: 13px;
|
||||
|
||||
a, a:active, a:visited {
|
||||
padding: 6px 6px 18px 6px;
|
||||
opacity: 0.4;
|
||||
.transition(all 0.2s ease-in-out);
|
||||
|
||||
img {
|
||||
display: none;
|
||||
position: relative;
|
||||
top: -2px;
|
||||
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;
|
||||
overflow: hidden;
|
||||
|
||||
&:hover, &.hover {
|
||||
color: #e80;
|
||||
background-color: #f6f6f6;
|
||||
border-color: #e8e8e8;
|
||||
}
|
||||
}
|
||||
|
||||
&.selected:not(.selecting), &.selecting:not(.selected) {
|
||||
|
||||
a, a:active, a:visited {
|
||||
border-color: rgba(240,100,0,0.2);
|
||||
background-color: rgba(240,100,0,0.2);
|
||||
|
||||
&:hover, &.hover {
|
||||
border-color: rgba(240,100,0,0.2);
|
||||
background-color: rgba(240,100,0,0.2);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
&.error {
|
||||
|
||||
a, a:active, a:visited {
|
||||
color: #aaa;
|
||||
|
||||
&:hover, &.hover {
|
||||
color: #e80;
|
||||
}
|
||||
}
|
||||
|
||||
.label .hint {
|
||||
padding: 0 6px;
|
||||
font-size: 0.9em;
|
||||
color: #c55;
|
||||
}
|
||||
}
|
||||
|
||||
&.folder-parent {
|
||||
|
||||
.date, .size {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
|
||||
.icon {
|
||||
display: none;
|
||||
text-align: center;
|
||||
|
||||
img {
|
||||
|
||||
&.thumb {
|
||||
.box-shadow(0 0 0 1px #ddd);
|
||||
}
|
||||
}
|
||||
|
||||
&.small {
|
||||
|
||||
img {
|
||||
max-width: 16px;
|
||||
max-height: 16px;
|
||||
}
|
||||
}
|
||||
|
||||
&.big {
|
||||
|
||||
img {
|
||||
max-width: 100px;
|
||||
max-height: 48px;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.label {
|
||||
display: block;
|
||||
overflow: hidden;
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
.date {
|
||||
text-align: right;
|
||||
width: 160px;
|
||||
}
|
||||
|
||||
.size {
|
||||
text-align: right;
|
||||
width: 80px;
|
||||
}
|
||||
}
|
||||
|
||||
.empty, .no-match {
|
||||
margin: 50px 0;
|
||||
text-align: center;
|
||||
color: #ddd;
|
||||
font-size: 5em;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.no-match {
|
||||
display: none;
|
||||
}
|
||||
}
|
@@ -1,68 +1,85 @@
|
||||
|
||||
#table {
|
||||
#data-apache-autoindex, #data-php-no-js-fallback {
|
||||
max-width: 960px;
|
||||
margin: 0 auto 80px auto;
|
||||
|
||||
table {
|
||||
display: block;
|
||||
width: 100%;
|
||||
border-collapse: collapse;
|
||||
|
||||
th, td {
|
||||
padding: 3px 6px;
|
||||
padding: 6px;
|
||||
text-align: left;
|
||||
border: none;
|
||||
}
|
||||
th {
|
||||
padding-bottom: 18px;
|
||||
opacity: 0.4;
|
||||
.transition( all 0.2s ease-in-out );
|
||||
|
||||
&:hover, &:hover a {
|
||||
color: #555;
|
||||
cursor: pointer;
|
||||
opacity: 0.9;
|
||||
}
|
||||
a, a:visited {
|
||||
color: #555;
|
||||
font-weight: normal;
|
||||
text-decoration: none;
|
||||
cursor: pointer;
|
||||
opacity: 0.4;
|
||||
.transition(all 0.2s ease-in-out);
|
||||
|
||||
img {
|
||||
width: 12px;
|
||||
height: 12px;
|
||||
padding: 0 8px;
|
||||
&: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;
|
||||
color: #ccc;
|
||||
font-size: 0.9em;
|
||||
|
||||
img {
|
||||
width: 16px;
|
||||
height: 16px;
|
||||
padding-top: 2px;
|
||||
position: relative;
|
||||
top: -2px;
|
||||
}
|
||||
}
|
||||
td:nth-child(2), th:nth-child(2) {
|
||||
width: 682px;
|
||||
max-width: 682px;
|
||||
overflow: hidden;
|
||||
white-space: nowrap;
|
||||
}
|
||||
td:nth-child(3), th:nth-child(3) {
|
||||
text-align: right;
|
||||
width: 160px;
|
||||
min-width: 160px;
|
||||
white-space: nowrap;
|
||||
}
|
||||
td:nth-child(4), th:nth-child(4) {
|
||||
text-align: right;
|
||||
width: 70px;
|
||||
min-width: 70px;
|
||||
white-space: nowrap;
|
||||
}
|
||||
}
|
||||
}
|
19
src/_h5ai/client/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;
|
||||
}
|
||||
}
|
||||
}
|
24
src/_h5ai/client/css/inc/general.less
Normal file
@@ -0,0 +1,24 @@
|
||||
|
||||
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;
|
||||
}
|
||||
|
||||
html.js .hideOnJs, html.no-js .hideOnNoJs {
|
||||
display: none;
|
||||
}
|
||||
html.oldie {
|
||||
.oldBrowser {
|
||||
display: inline !important;
|
||||
}
|
||||
#tree {
|
||||
display: none !important;
|
||||
}
|
||||
}
|
75
src/_h5ai/client/css/inc/h5ai-info.less
Normal file
@@ -0,0 +1,75 @@
|
||||
|
||||
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;
|
||||
}
|
||||
.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: 310px;
|
||||
line-height: 1.2em;
|
||||
}
|
||||
}
|
||||
|
||||
#bottombar {
|
||||
font-size: 13px;
|
||||
}
|
||||
}
|
54
src/_h5ai/client/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);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
141
src/_h5ai/client/css/inc/preview-img.less
Normal file
@@ -0,0 +1,141 @@
|
||||
|
||||
#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);
|
||||
.transition(background-color 0.3s ease-in-out);
|
||||
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
#pv-img-content {
|
||||
position: fixed;
|
||||
|
||||
}
|
||||
|
||||
// @check-white: rgba(255,255,255,0.5);
|
||||
// @check-black: rgba(0,0,0,0.2);
|
||||
@check-white: #f8f8f8;
|
||||
@check-black: #e8e8e8;
|
||||
#pv-img-image {
|
||||
max-width: 100%;
|
||||
max-height: 100%;
|
||||
border: 2px solid #fff;
|
||||
.border-radius(4px);
|
||||
|
||||
background-color: @check-white;
|
||||
background-image:
|
||||
-webkit-linear-gradient(45deg, @check-black 25%, transparent 25%, transparent 75%, @check-black 75%, @check-black),
|
||||
-webkit-linear-gradient(45deg, @check-black 25%, transparent 25%, transparent 75%, @check-black 75%, @check-black);
|
||||
background-size: 60px 60px;
|
||||
background-position: 0 0, 30px 30px
|
||||
}
|
||||
|
||||
#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);
|
||||
}
|
159
src/_h5ai/client/css/inc/preview-txt.less
Normal file
@@ -0,0 +1,159 @@
|
||||
|
||||
#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 {
|
||||
word-break: break-all;
|
||||
|
||||
.syntaxhighlighter {
|
||||
overflow: visible !important;
|
||||
|
||||
.gutter .line {
|
||||
border-right: none !important;
|
||||
}
|
||||
// .code .line, table td.code .container textarea {
|
||||
// white-space: normal !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);
|
||||
}
|
16
src/_h5ai/client/css/inc/qrcode.less
Normal file
@@ -0,0 +1,16 @@
|
||||
|
||||
#qrcode {
|
||||
display: none;
|
||||
position: fixed;
|
||||
right: 16px;
|
||||
bottom: 50px;
|
||||
z-index: 1;
|
||||
|
||||
background-color: #fff;
|
||||
border: 2px solid #ddd;
|
||||
padding: 8px;
|
||||
|
||||
canvas {
|
||||
display: block;
|
||||
}
|
||||
}
|
58
src/_h5ai/client/css/inc/responsive.less
Normal file
@@ -0,0 +1,58 @@
|
||||
|
||||
@media only screen and (max-width: 500px) {
|
||||
body {
|
||||
margin: 8px;
|
||||
}
|
||||
#topbar {
|
||||
.crumb {
|
||||
display: none;
|
||||
}
|
||||
.current {
|
||||
display: block;
|
||||
}
|
||||
.view span {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
#extended.view-details {
|
||||
.header .label, .entry .label {
|
||||
margin-right: 110px;
|
||||
}
|
||||
.header .date, .entry .date {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
#extended.view-icons {
|
||||
padding: 0;
|
||||
border: none;
|
||||
margin: 0 -14px;
|
||||
}
|
||||
#bottombar {
|
||||
.center {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
#tree {
|
||||
display: none !important;
|
||||
}
|
||||
}
|
||||
|
||||
@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;
|
||||
}
|
||||
}
|
89
src/_h5ai/client/css/inc/topbar.less
Normal file
@@ -0,0 +1,89 @@
|
||||
|
||||
#topbar {
|
||||
position: fixed;
|
||||
z-index: 5;
|
||||
width: 100%;
|
||||
min-height: 30px;
|
||||
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;
|
||||
}
|
||||
}
|
119
src/_h5ai/client/css/inc/tree.less
Normal file
@@ -0,0 +1,119 @@
|
||||
|
||||
#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);
|
||||
}
|
||||
}
|
||||
|
||||
.indicator {
|
||||
position: relative;
|
||||
top: 2px;
|
||||
display: inline-block;
|
||||
width: 16px;
|
||||
height: 22px;
|
||||
float: left;
|
||||
opacity: 0.7;
|
||||
cursor: pointer;
|
||||
|
||||
img {
|
||||
width: 12px;
|
||||
height: 12px;
|
||||
.transition(all 0.2s ease-in-out);
|
||||
}
|
||||
&.open {
|
||||
img {
|
||||
.transform(rotate(90deg));
|
||||
}
|
||||
}
|
||||
&.unknown {
|
||||
opacity: 0.3;
|
||||
}
|
||||
&.none {
|
||||
opacity: 0;
|
||||
cursor: inherit;
|
||||
}
|
||||
}
|
||||
a, a:active, a.visited {
|
||||
display: block;
|
||||
height: 1.231em;
|
||||
line-height: 1.231em;
|
||||
margin-left: 14px;
|
||||
padding: 4px 6px;
|
||||
color: #555;
|
||||
border: 1px solid rgba(0,0,0,0);
|
||||
.border-radius(5px);
|
||||
text-decoration: none;
|
||||
opacity: 0.7;
|
||||
|
||||
&:hover, &.hover {
|
||||
color: #e80;
|
||||
background-color: rgba(255,255,255,0.5);
|
||||
opacity: 1;
|
||||
}
|
||||
}
|
||||
.icon {
|
||||
position: relative;
|
||||
top: -2px;
|
||||
margin-right: 6px;
|
||||
|
||||
img {
|
||||
width: 16px;
|
||||
height: 16px;
|
||||
}
|
||||
}
|
||||
.hint {
|
||||
margin-left: 6px;
|
||||
font-size: 0.9em;
|
||||
color: #ccc;
|
||||
}
|
||||
.content {
|
||||
list-style: none;
|
||||
margin: 0;
|
||||
padding: 0 0 0 24px;
|
||||
}
|
||||
.summary {
|
||||
margin: 0 0 0 24px;
|
||||
color: #999;
|
||||
font-style: italic;
|
||||
}
|
||||
.current {
|
||||
> a, > a:active, > a:visited {
|
||||
background-color: rgba(255,255,255,0.5);
|
||||
border-color: rgb(221,221,221);
|
||||
opacity: 1;
|
||||
}
|
||||
}
|
||||
.error {
|
||||
> a, > a:active, > a:visited {
|
||||
color: #999;
|
||||
&:hover, &.hover {
|
||||
color: #e80;
|
||||
}
|
||||
}
|
||||
.hint {
|
||||
color: #c55;
|
||||
}
|
||||
}
|
||||
}
|
188
src/_h5ai/client/css/lib/h5bp-main-footer.less
Normal file
@@ -0,0 +1,188 @@
|
||||
|
||||
/* ==========================================================================
|
||||
Helper classes
|
||||
========================================================================== */
|
||||
|
||||
/*
|
||||
* Image replacement
|
||||
*/
|
||||
|
||||
.ir {
|
||||
background-color: transparent;
|
||||
border: 0;
|
||||
overflow: hidden;
|
||||
/* IE 6/7 fallback */
|
||||
*text-indent: -9999px;
|
||||
}
|
||||
|
||||
.ir:before {
|
||||
content: "";
|
||||
display: block;
|
||||
width: 0;
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
/*
|
||||
* 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;
|
||||
}
|
||||
|
||||
/*
|
||||
* Clearfix: contain floats
|
||||
*
|
||||
* For modern browsers
|
||||
* 1. The space content is one way to avoid an Opera bug when the
|
||||
* `contenteditable` attribute is included anywhere else in the document.
|
||||
* Otherwise it causes space to appear at the top and bottom of elements
|
||||
* that receive the `clearfix` class.
|
||||
* 2. The use of `table` rather than `block` is only necessary if using
|
||||
* `:before` to contain the top-margins of child elements.
|
||||
*/
|
||||
|
||||
.clearfix:before,
|
||||
.clearfix:after {
|
||||
content: " "; /* 1 */
|
||||
display: table; /* 2 */
|
||||
}
|
||||
|
||||
.clearfix:after {
|
||||
clear: both;
|
||||
}
|
||||
|
||||
/*
|
||||
* For IE 6/7 only
|
||||
* Include this rule to trigger hasLayout and contain floats.
|
||||
*/
|
||||
|
||||
.clearfix {
|
||||
*zoom: 1;
|
||||
}
|
||||
|
||||
/* ==========================================================================
|
||||
EXAMPLE Media Queries for Responsive Design.
|
||||
Theses examples override the primary ('mobile first') styles.
|
||||
Modify as content requires.
|
||||
========================================================================== */
|
||||
|
||||
@media only screen and (min-width: 35em) {
|
||||
/* Style adjustments for viewports that meet the condition */
|
||||
}
|
||||
|
||||
@media only screen and (-webkit-min-device-pixel-ratio: 1.5),
|
||||
only screen and (min-resolution: 144dpi) {
|
||||
/* Style adjustments for high resolution devices */
|
||||
}
|
||||
|
||||
/* ==========================================================================
|
||||
Print styles.
|
||||
Inlined to avoid required HTTP connection: h5bp.com/r
|
||||
========================================================================== */
|
||||
|
||||
@media print {
|
||||
* {
|
||||
background: transparent !important;
|
||||
color: #000 !important; /* Black prints faster: h5bp.com/s */
|
||||
box-shadow:none !important;
|
||||
text-shadow: none !important;
|
||||
}
|
||||
|
||||
a,
|
||||
a:visited {
|
||||
text-decoration: underline;
|
||||
}
|
||||
|
||||
a[href]:after {
|
||||
content: " (" attr(href) ")";
|
||||
}
|
||||
|
||||
abbr[title]:after {
|
||||
content: " (" attr(title) ")";
|
||||
}
|
||||
|
||||
/*
|
||||
* Don't show links for images, or javascript/internal links
|
||||
*/
|
||||
|
||||
.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; /* 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;
|
||||
}
|
||||
}
|
94
src/_h5ai/client/css/lib/h5bp-main-header.less
Normal file
@@ -0,0 +1,94 @@
|
||||
/*
|
||||
* 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.
|
||||
*/
|
||||
|
||||
/* ==========================================================================
|
||||
Base styles: opinionated defaults
|
||||
========================================================================== */
|
||||
|
||||
html,
|
||||
button,
|
||||
input,
|
||||
select,
|
||||
textarea {
|
||||
color: #222;
|
||||
}
|
||||
|
||||
body {
|
||||
font-size: 1em;
|
||||
line-height: 1.4;
|
||||
}
|
||||
|
||||
/*
|
||||
* Remove text-shadow in selection highlight: h5bp.com/i
|
||||
* These selection declarations have to be separate.
|
||||
* Customize the background color to match your design.
|
||||
*/
|
||||
|
||||
::-moz-selection {
|
||||
background: #b3d4fc;
|
||||
text-shadow: none;
|
||||
}
|
||||
|
||||
::selection {
|
||||
background: #b3d4fc;
|
||||
text-shadow: none;
|
||||
}
|
||||
|
||||
/*
|
||||
* A better looking default horizontal rule
|
||||
*/
|
||||
|
||||
hr {
|
||||
display: block;
|
||||
height: 1px;
|
||||
border: 0;
|
||||
border-top: 1px solid #ccc;
|
||||
margin: 1em 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
/*
|
||||
* Remove the gap between images and the bottom of their containers: h5bp.com/i/440
|
||||
*/
|
||||
|
||||
img {
|
||||
vertical-align: middle;
|
||||
}
|
||||
|
||||
/*
|
||||
* Remove default fieldset styles.
|
||||
*/
|
||||
|
||||
fieldset {
|
||||
border: 0;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
/*
|
||||
* Allow only vertical resizing of textareas.
|
||||
*/
|
||||
|
||||
textarea {
|
||||
resize: vertical;
|
||||
}
|
||||
|
||||
/* ==========================================================================
|
||||
Chrome Frame prompt
|
||||
========================================================================== */
|
||||
|
||||
.chromeframe {
|
||||
margin: 0.2em 0;
|
||||
background: #ccc;
|
||||
color: #000;
|
||||
padding: 0.2em 0;
|
||||
}
|
||||
|
||||
/* ==========================================================================
|
||||
Author's custom styles
|
||||
========================================================================== */
|
504
src/_h5ai/client/css/lib/h5bp-normalize.less
Normal file
@@ -0,0 +1,504 @@
|
||||
/*! normalize.css v1.0.1 | MIT License | git.io/normalize */
|
||||
|
||||
/* ==========================================================================
|
||||
HTML5 display definitions
|
||||
========================================================================== */
|
||||
|
||||
/*
|
||||
* Corrects `block` display not defined in IE 6/7/8/9 and Firefox 3.
|
||||
*/
|
||||
|
||||
article,
|
||||
aside,
|
||||
details,
|
||||
figcaption,
|
||||
figure,
|
||||
footer,
|
||||
header,
|
||||
hgroup,
|
||||
nav,
|
||||
section,
|
||||
summary {
|
||||
display: block;
|
||||
}
|
||||
|
||||
/*
|
||||
* Corrects `inline-block` display not defined in IE 6/7/8/9 and Firefox 3.
|
||||
*/
|
||||
|
||||
audio,
|
||||
canvas,
|
||||
video {
|
||||
display: inline-block;
|
||||
*display: inline;
|
||||
*zoom: 1;
|
||||
}
|
||||
|
||||
/*
|
||||
* Prevents modern browsers from displaying `audio` without controls.
|
||||
* Remove excess height in iOS 5 devices.
|
||||
*/
|
||||
|
||||
audio:not([controls]) {
|
||||
display: none;
|
||||
height: 0;
|
||||
}
|
||||
|
||||
/*
|
||||
* Addresses styling for `hidden` attribute not present in IE 7/8/9, Firefox 3,
|
||||
* and Safari 4.
|
||||
* Known issue: no IE 6 support.
|
||||
*/
|
||||
|
||||
[hidden] {
|
||||
display: none;
|
||||
}
|
||||
|
||||
/* ==========================================================================
|
||||
Base
|
||||
========================================================================== */
|
||||
|
||||
/*
|
||||
* 1. Corrects text resizing oddly in IE 6/7 when body `font-size` is set using
|
||||
* `em` units.
|
||||
* 2. Prevents iOS text size adjust after orientation change, without disabling
|
||||
* user zoom.
|
||||
*/
|
||||
|
||||
html {
|
||||
font-size: 100%; /* 1 */
|
||||
-webkit-text-size-adjust: 100%; /* 2 */
|
||||
-ms-text-size-adjust: 100%; /* 2 */
|
||||
}
|
||||
|
||||
/*
|
||||
* Addresses `font-family` inconsistency between `textarea` and other form
|
||||
* elements.
|
||||
*/
|
||||
|
||||
html,
|
||||
button,
|
||||
input,
|
||||
select,
|
||||
textarea {
|
||||
font-family: sans-serif;
|
||||
}
|
||||
|
||||
/*
|
||||
* Addresses margins handled incorrectly in IE 6/7.
|
||||
*/
|
||||
|
||||
body {
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
/* ==========================================================================
|
||||
Links
|
||||
========================================================================== */
|
||||
|
||||
/*
|
||||
* Addresses `outline` inconsistency between Chrome and other browsers.
|
||||
*/
|
||||
|
||||
a:focus {
|
||||
outline: thin dotted;
|
||||
}
|
||||
|
||||
/*
|
||||
* Improves readability when focused and also mouse hovered in all browsers.
|
||||
*/
|
||||
|
||||
a:active,
|
||||
a:hover {
|
||||
outline: 0;
|
||||
}
|
||||
|
||||
/* ==========================================================================
|
||||
Typography
|
||||
========================================================================== */
|
||||
|
||||
/*
|
||||
* Addresses font sizes and margins set differently in IE 6/7.
|
||||
* Addresses font sizes within `section` and `article` in Firefox 4+, Safari 5,
|
||||
* and Chrome.
|
||||
*/
|
||||
|
||||
h1 {
|
||||
font-size: 2em;
|
||||
margin: 0.67em 0;
|
||||
}
|
||||
|
||||
h2 {
|
||||
font-size: 1.5em;
|
||||
margin: 0.83em 0;
|
||||
}
|
||||
|
||||
h3 {
|
||||
font-size: 1.17em;
|
||||
margin: 1em 0;
|
||||
}
|
||||
|
||||
h4 {
|
||||
font-size: 1em;
|
||||
margin: 1.33em 0;
|
||||
}
|
||||
|
||||
h5 {
|
||||
font-size: 0.83em;
|
||||
margin: 1.67em 0;
|
||||
}
|
||||
|
||||
h6 {
|
||||
font-size: 0.75em;
|
||||
margin: 2.33em 0;
|
||||
}
|
||||
|
||||
/*
|
||||
* Addresses styling not present in IE 7/8/9, Safari 5, and Chrome.
|
||||
*/
|
||||
|
||||
abbr[title] {
|
||||
border-bottom: 1px dotted;
|
||||
}
|
||||
|
||||
/*
|
||||
* Addresses style set to `bolder` in Firefox 3+, Safari 4/5, and Chrome.
|
||||
*/
|
||||
|
||||
b,
|
||||
strong {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
blockquote {
|
||||
margin: 1em 40px;
|
||||
}
|
||||
|
||||
/*
|
||||
* Addresses styling not present in Safari 5 and Chrome.
|
||||
*/
|
||||
|
||||
dfn {
|
||||
font-style: italic;
|
||||
}
|
||||
|
||||
/*
|
||||
* Addresses styling not present in IE 6/7/8/9.
|
||||
*/
|
||||
|
||||
mark {
|
||||
background: #ff0;
|
||||
color: #000;
|
||||
}
|
||||
|
||||
/*
|
||||
* Addresses margins set differently in IE 6/7.
|
||||
*/
|
||||
|
||||
p,
|
||||
pre {
|
||||
margin: 1em 0;
|
||||
}
|
||||
|
||||
/*
|
||||
* Corrects font family set oddly in IE 6, Safari 4/5, and Chrome.
|
||||
*/
|
||||
|
||||
code,
|
||||
kbd,
|
||||
pre,
|
||||
samp {
|
||||
font-family: monospace, serif;
|
||||
_font-family: 'courier new', monospace;
|
||||
font-size: 1em;
|
||||
}
|
||||
|
||||
/*
|
||||
* Improves readability of pre-formatted text in all browsers.
|
||||
*/
|
||||
|
||||
pre {
|
||||
white-space: pre;
|
||||
white-space: pre-wrap;
|
||||
word-wrap: break-word;
|
||||
}
|
||||
|
||||
/*
|
||||
* Addresses CSS quotes not supported in IE 6/7.
|
||||
*/
|
||||
|
||||
q {
|
||||
quotes: none;
|
||||
}
|
||||
|
||||
/*
|
||||
* Addresses `quotes` property not supported in Safari 4.
|
||||
*/
|
||||
|
||||
q:before,
|
||||
q:after {
|
||||
content: '';
|
||||
content: none;
|
||||
}
|
||||
|
||||
/*
|
||||
* Addresses inconsistent and variable font size in all browsers.
|
||||
*/
|
||||
|
||||
small {
|
||||
font-size: 80%;
|
||||
}
|
||||
|
||||
/*
|
||||
* Prevents `sub` and `sup` affecting `line-height` in all browsers.
|
||||
*/
|
||||
|
||||
sub,
|
||||
sup {
|
||||
font-size: 75%;
|
||||
line-height: 0;
|
||||
position: relative;
|
||||
vertical-align: baseline;
|
||||
}
|
||||
|
||||
sup {
|
||||
top: -0.5em;
|
||||
}
|
||||
|
||||
sub {
|
||||
bottom: -0.25em;
|
||||
}
|
||||
|
||||
/* ==========================================================================
|
||||
Lists
|
||||
========================================================================== */
|
||||
|
||||
/*
|
||||
* Addresses margins set differently in IE 6/7.
|
||||
*/
|
||||
|
||||
dl,
|
||||
menu,
|
||||
ol,
|
||||
ul {
|
||||
margin: 1em 0;
|
||||
}
|
||||
|
||||
dd {
|
||||
margin: 0 0 0 40px;
|
||||
}
|
||||
|
||||
/*
|
||||
* Addresses paddings set differently in IE 6/7.
|
||||
*/
|
||||
|
||||
menu,
|
||||
ol,
|
||||
ul {
|
||||
padding: 0 0 0 40px;
|
||||
}
|
||||
|
||||
/*
|
||||
* Corrects list images handled incorrectly in IE 7.
|
||||
*/
|
||||
|
||||
nav ul,
|
||||
nav ol {
|
||||
list-style: none;
|
||||
list-style-image: none;
|
||||
}
|
||||
|
||||
/* ==========================================================================
|
||||
Embedded content
|
||||
========================================================================== */
|
||||
|
||||
/*
|
||||
* 1. Removes border when inside `a` element in IE 6/7/8/9 and Firefox 3.
|
||||
* 2. Improves image quality when scaled in IE 7.
|
||||
*/
|
||||
|
||||
img {
|
||||
border: 0; /* 1 */
|
||||
-ms-interpolation-mode: bicubic; /* 2 */
|
||||
}
|
||||
|
||||
/*
|
||||
* Corrects overflow displayed oddly in IE 9.
|
||||
*/
|
||||
|
||||
svg:not(:root) {
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
/* ==========================================================================
|
||||
Figures
|
||||
========================================================================== */
|
||||
|
||||
/*
|
||||
* Addresses margin not present in IE 6/7/8/9, Safari 5, and Opera 11.
|
||||
*/
|
||||
|
||||
figure {
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
/* ==========================================================================
|
||||
Forms
|
||||
========================================================================== */
|
||||
|
||||
/*
|
||||
* Corrects margin displayed oddly in IE 6/7.
|
||||
*/
|
||||
|
||||
form {
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
/*
|
||||
* Define consistent border, margin, and padding.
|
||||
*/
|
||||
|
||||
fieldset {
|
||||
border: 1px solid #c0c0c0;
|
||||
margin: 0 2px;
|
||||
padding: 0.35em 0.625em 0.75em;
|
||||
}
|
||||
|
||||
/*
|
||||
* 1. Corrects color not being inherited in IE 6/7/8/9.
|
||||
* 2. Corrects text not wrapping in Firefox 3.
|
||||
* 3. Corrects alignment displayed oddly in IE 6/7.
|
||||
*/
|
||||
|
||||
legend {
|
||||
border: 0; /* 1 */
|
||||
padding: 0;
|
||||
white-space: normal; /* 2 */
|
||||
*margin-left: -7px; /* 3 */
|
||||
}
|
||||
|
||||
/*
|
||||
* 1. Corrects font size not being inherited in all browsers.
|
||||
* 2. Addresses margins set differently in IE 6/7, Firefox 3+, Safari 5,
|
||||
* and Chrome.
|
||||
* 3. Improves appearance and consistency in all browsers.
|
||||
*/
|
||||
|
||||
button,
|
||||
input,
|
||||
select,
|
||||
textarea {
|
||||
font-size: 100%; /* 1 */
|
||||
margin: 0; /* 2 */
|
||||
vertical-align: baseline; /* 3 */
|
||||
*vertical-align: middle; /* 3 */
|
||||
}
|
||||
|
||||
/*
|
||||
* Addresses Firefox 3+ setting `line-height` on `input` using `!important` in
|
||||
* the UA stylesheet.
|
||||
*/
|
||||
|
||||
button,
|
||||
input {
|
||||
line-height: normal;
|
||||
}
|
||||
|
||||
/*
|
||||
* 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
|
||||
* and `video` controls.
|
||||
* 2. Corrects inability to style clickable `input` types in iOS.
|
||||
* 3. Improves usability and consistency of cursor style between image-type
|
||||
* `input` and others.
|
||||
* 4. Removes inner spacing in IE 7 without affecting normal text inputs.
|
||||
* Known issue: inner spacing remains in IE 6.
|
||||
*/
|
||||
|
||||
button,
|
||||
html input[type="button"], /* 1 */
|
||||
input[type="reset"],
|
||||
input[type="submit"] {
|
||||
-webkit-appearance: button; /* 2 */
|
||||
cursor: pointer; /* 3 */
|
||||
*overflow: visible; /* 4 */
|
||||
}
|
||||
|
||||
/*
|
||||
* Re-set default cursor for disabled elements.
|
||||
*/
|
||||
|
||||
button[disabled],
|
||||
input[disabled] {
|
||||
cursor: default;
|
||||
}
|
||||
|
||||
/*
|
||||
* 1. Addresses box sizing set to content-box in IE 8/9.
|
||||
* 2. Removes excess padding in IE 8/9.
|
||||
* 3. Removes excess padding in IE 7.
|
||||
* Known issue: excess padding remains in IE 6.
|
||||
*/
|
||||
|
||||
input[type="checkbox"],
|
||||
input[type="radio"] {
|
||||
box-sizing: border-box; /* 1 */
|
||||
padding: 0; /* 2 */
|
||||
*height: 13px; /* 3 */
|
||||
*width: 13px; /* 3 */
|
||||
}
|
||||
|
||||
/*
|
||||
* 1. Addresses `appearance` set to `searchfield` in Safari 5 and Chrome.
|
||||
* 2. Addresses `box-sizing` set to `border-box` in Safari 5 and Chrome
|
||||
* (include `-moz` to future-proof).
|
||||
*/
|
||||
|
||||
input[type="search"] {
|
||||
-webkit-appearance: textfield; /* 1 */
|
||||
-moz-box-sizing: content-box;
|
||||
-webkit-box-sizing: content-box; /* 2 */
|
||||
box-sizing: content-box;
|
||||
}
|
||||
|
||||
/*
|
||||
* Removes inner padding and search cancel button in Safari 5 and Chrome
|
||||
* on OS X.
|
||||
*/
|
||||
|
||||
input[type="search"]::-webkit-search-cancel-button,
|
||||
input[type="search"]::-webkit-search-decoration {
|
||||
-webkit-appearance: none;
|
||||
}
|
||||
|
||||
/*
|
||||
* Removes inner padding and border in Firefox 3+.
|
||||
*/
|
||||
|
||||
button::-moz-focus-inner,
|
||||
input::-moz-focus-inner {
|
||||
border: 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
/*
|
||||
* 1. Removes default vertical scrollbar in IE 6/7/8/9.
|
||||
* 2. Improves readability and alignment in all browsers.
|
||||
*/
|
||||
|
||||
textarea {
|
||||
overflow: auto; /* 1 */
|
||||
vertical-align: top; /* 2 */
|
||||
}
|
||||
|
||||
/* ==========================================================================
|
||||
Tables
|
||||
========================================================================== */
|
||||
|
||||
/*
|
||||
* Remove most spacing between table cells.
|
||||
*/
|
||||
|
||||
table {
|
||||
border-collapse: collapse;
|
||||
border-spacing: 0;
|
||||
}
|
57
src/_h5ai/client/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/client/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/client/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;
|
||||
}
|
35
src/_h5ai/client/css/styles.less
Normal file
@@ -0,0 +1,35 @@
|
||||
|
||||
@import "lib/h5bp-normalize";
|
||||
@import "lib/h5bp-main-header";
|
||||
|
||||
@import "lib/mixins";
|
||||
@import "lib/sh/shCore";
|
||||
@import "lib/sh/shThemeDefault";
|
||||
|
||||
@import "inc/general";
|
||||
@import "inc/topbar";
|
||||
@import "inc/bottombar";
|
||||
@import "inc/download";
|
||||
@import "inc/delete";
|
||||
@import "inc/filter";
|
||||
@import "inc/l10n";
|
||||
@import "inc/tree";
|
||||
@import "inc/qrcode";
|
||||
@import "inc/preview-img";
|
||||
@import "inc/preview-txt";
|
||||
|
||||
@import "inc/content";
|
||||
@import "inc/extended";
|
||||
@import "inc/extended-details";
|
||||
@import "inc/extended-icons";
|
||||
@import "inc/extended-list";
|
||||
@import "inc/extended-grid";
|
||||
// @import "inc/context-menu";
|
||||
@import "inc/dropbox";
|
||||
@import "inc/fallback-table";
|
||||
|
||||
@import "inc/responsive";
|
||||
|
||||
@import "inc/h5ai-info";
|
||||
|
||||
@import "lib/h5bp-main-footer";
|
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: 586 B After Width: | Height: | Size: 586 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/client/icons/16x16/folder-home.png
Normal file
After Width: | Height: | Size: 618 B |
BIN
src/_h5ai/client/icons/16x16/folder-open.png
Normal file
After Width: | Height: | Size: 431 B |
BIN
src/_h5ai/client/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/client/icons/16x16/folder-parent.png
Normal file
After Width: | Height: | Size: 621 B |
BIN
src/_h5ai/client/icons/16x16/folder.png
Normal file
After Width: | Height: | Size: 395 B |
Before Width: | Height: | Size: 655 B After Width: | Height: | Size: 655 B |
Before Width: | Height: | Size: 551 B 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: 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/client/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 |
Before Width: | Height: | Size: 384 B After Width: | Height: | Size: 384 B |
Before Width: | Height: | Size: 660 B After Width: | Height: | Size: 660 B |
Before Width: | Height: | Size: 660 B After Width: | Height: | Size: 660 B |
Before Width: | Height: | Size: 627 B After Width: | Height: | Size: 627 B |
Before Width: | Height: | Size: 613 B After Width: | Height: | Size: 613 B |
Before Width: | Height: | Size: 586 B After Width: | Height: | Size: 586 B |
Before Width: | Height: | Size: 510 B After Width: | Height: | Size: 510 B |
Before Width: | Height: | Size: 406 B After Width: | Height: | Size: 406 B |