1
0
mirror of https://github.com/lrsjng/h5ai.git synced 2025-08-30 01:00:07 +02:00

Compare commits

..

208 Commits
v0.6 ... v0.21

Author SHA1 Message Date
Lars Jung
bdb8c3f099 Updates version to 0.21. 2012-08-06 19:26:32 +02:00
Lars Jung
bc945895cf Merge branch 'develop' 2012-08-06 19:24:04 +02:00
Lars Jung
aa9ed865f6 Adds font references. 2012-08-06 19:17:27 +02:00
Lars Jung
a8a6871ebd Updates preview styles. 2012-08-06 16:47:17 +02:00
Lars Jung
61ae46386e Updates config. 2012-08-06 14:10:20 +02:00
Lars Jung
219234dfdd Minor style changes. 2012-08-06 01:03:54 +02:00
Lars Jung
c29b681c1b Updates readme. 2012-08-06 00:26:43 +02:00
Lars Jung
8c2c02fe82 Updates readme. 2012-08-06 00:25:25 +02:00
Lars Jung
9c1142bd02 Adds markdown preview rendering. Adds markdown type and icons. 2012-08-06 00:21:00 +02:00
Lars Jung
298d2e2efd Loads SyntaxHighlighter on demand. 2012-08-05 22:01:40 +02:00
Lars Jung
d4a213beac Updates makefile.js. 2012-08-05 19:56:26 +02:00
Lars Jung
0f948a56d8 Updates readme. 2012-08-05 17:42:06 +02:00
Lars Jung
a8e0474cca Updates readme. 2012-08-05 17:39:33 +02:00
Lars Jung
725cb1a6b8 Updates makefile to work with fQuery 0.3.0. 2012-08-05 17:33:19 +02:00
Lars Jung
a0a8882db7 Updates readme. 2012-08-05 02:56:28 +02:00
Lars Jung
f366779f7b Updates text preview styling. 2012-08-05 02:37:52 +02:00
Lars Jung
90b0b97e22 Adds text file preview and highlighting. 2012-08-04 21:47:22 +02:00
Lars Jung
974392d2eb Cleans preview-img code. 2012-08-04 15:41:42 +02:00
Lars Jung
2bcf6593a9 Adds keyboard support to image preview. 2012-08-04 01:10:44 +02:00
Lars Jung
a6fdf653a1 Updates makefile. 2012-08-03 17:09:48 +02:00
Lars Jung
0ff3d900fe Adds localization for filter placeholder. 2012-08-03 15:09:04 +02:00
Lars Jung
ce75e45b03 Updates 'el'. 2012-08-03 12:35:04 +02:00
Lars Jung
a3c68c61f8 Updates lang 'el' 2012-08-03 11:55:32 +02:00
Lars Jung
38011bd9a7 Adds date format for 'el'. 2012-08-03 11:46:12 +02:00
Lars Jung
f5e7b10d94 Refactores css. 2012-08-03 01:06:23 +02:00
Lars Jung
7ad5958487 Updates libs. 2012-08-03 00:49:28 +02:00
Lars Jung
695d5148bb updates readme. 2012-08-03 00:32:07 +02:00
Lars Jung
87103f1c3f changes language code 'gr' to 'el'. 2012-08-03 00:29:26 +02:00
Lars Jung
77f301057b Updates readme. 2012-08-03 00:06:43 +02:00
Lars Jung
9e6c612513 Improves filter. See readme and config.js. 2012-08-03 00:03:27 +02:00
Lars Jung
eaf6ad3fcb Updates readme. 2012-08-02 23:14:45 +02:00
Lars Jung
e25e5b72f4 Adds Google Analytics support (async). 2012-08-02 23:13:43 +02:00
Lars Jung
65b1823c5d Updates Modernizr to 2.6.1. 2012-08-02 22:26:52 +02:00
Lars Jung
8682e202a9 Changes build process from ant to fquery. 2012-08-02 14:35:25 +02:00
Lars Jung
3349108f7e Refactores entry model. 2012-07-17 21:28:34 +02:00
Lars Jung
050d91daa8 Refactors entry model. Hopefully not breaking anything. 2012-07-17 19:42:23 +02:00
Lars Jung
a4c81135d5 Updates, guess what.., encoding #!@#*. 2012-07-17 14:20:30 +02:00
Lars Jung
30d48fb1ef Updates location checking. 2012-07-17 13:49:37 +02:00
Lars Jung
f65f5021ae Improves location check. 2012-07-17 12:00:09 +02:00
Lars Jung
8273f0ded0 Merge pull request #76 from Neelfyn/patch-1
Add French date format
2012-07-16 13:14:48 -07:00
Antoine
07e8c67338 Add French date format 2012-07-16 22:30:05 +03:00
Lars Jung
162f32f5b8 Minor style updates. 2012-07-16 17:38:37 +02:00
Lars Jung
68497e749b Hopefully fixed href bugs for all browsers now. 2012-07-16 17:23:01 +02:00
Lars Jung
8fea7bfb74 Fixes undecoded label bug. 2012-07-16 14:00:05 +02:00
Lars Jung
7e6549faee Updates readme. 2012-07-16 01:12:06 +02:00
Lars Jung
4724214b9e Adds no-js fallback to PHP verison. 2012-07-15 23:29:21 +02:00
Lars Jung
1828855f63 Single source of truth for current location. 2012-07-15 19:34:20 +02:00
Lars Jung
17c31fc9d9 Fixes issue 72: Duplicate tree entries and emtpy main view. 2012-07-15 18:58:10 +02:00
Lars Jung
b6d6bf8ba7 Cleans code. 2012-07-15 14:06:16 +02:00
Lars Jung
2282a0ba71 Fixes problems with misalgined image previews. 2012-07-14 19:45:30 +02:00
Lars Jung
864687aedf Fixes broken callback in tree. 2012-07-14 18:26:22 +02:00
Lars Jung
93d13d6177 Updates readme. 2012-07-14 16:49:02 +02:00
Lars Jung
74450a252a Updates readme. 2012-07-14 16:47:35 +02:00
Lars Jung
87f9ada878 Updates readme. 2012-07-14 16:42:07 +02:00
Lars Jung
f6d24d050f Splits settings.js. 2012-07-14 16:34:12 +02:00
Lars Jung
64640ada83 Adds ajax abstraction. Refactors global dependencies. 2012-07-13 17:57:02 +02:00
Lars Jung
018a574d5e Another take on command button that doesn't work. 2012-07-13 13:16:05 +02:00
Lars Jung
52ffd8720a Starts fixing cmd/control select issues on mac. 2012-07-12 23:27:49 +02:00
Lars Jung
a7ffda422b Minor changes in build.xml. 2012-07-12 13:25:16 +02:00
Lars Jung
e870292878 Merge pull request #75 from manuelbieh/develop
Fixed "Call to undefined method PharData::add_file()"
2012-07-12 03:50:21 -07:00
Manuel Bieh
875b4fbe0e Fixed "Call to undefined method PharData::add_file()" -> Method is called addFile (camel cased, http://am.php.net/manual/de/phar.addfile.php) 2012-07-12 11:14:40 +02:00
Lars Jung
d47b996c9f Updates modulejs to 0.2. 2012-07-11 01:00:39 +02:00
Lars Jung
84a2ed582f Minor refactorings. 2012-07-09 00:43:01 +02:00
Lars Jung
cad50f76e2 Updates to modulejs 0.1. 2012-07-08 15:04:14 +02:00
Lars Jung
9266be9708 Updates jQuery.qrcode to 0.2 and jQuery.scrollpanel to 0.1. 2012-07-04 21:30:33 +02:00
Lars Jung
76e89820eb Updates jQuery.scrollpanel. 2012-07-04 16:28:19 +02:00
Lars Jung
bd76573401 Minor changes. 2012-07-01 14:05:09 +02:00
Lars Jung
6c3f271a3e Bundles jQuery with the main script. 2012-06-07 21:22:04 +02:00
Lars Jung
85f0af61d0 Moves LICENSE and README to folder _h5ai in the release package. 2012-05-28 18:33:25 +02:00
Lars Jung
3d06b0b81a Adds hu translation. 2012-05-28 15:06:07 +02:00
Lars Jung
09c8cf04af Version is now 0.21-pre. 2012-05-11 19:09:01 +02:00
Lars Jung
387ded1033 Merge branch 'develop' 2012-05-11 19:06:44 +02:00
Lars Jung
4cb9967b39 Thumbnails and image preview. 2012-05-11 18:54:52 +02:00
Lars Jung
faf1ce0bcf Merge branch 'develop' 2012-04-19 01:04:03 +02:00
Lars Jung
ce3ef3a195 Sets default settings. 2012-04-19 01:00:19 +02:00
Lars Jung
ade6cf8e0b Final modifications. 2012-04-19 00:57:43 +02:00
Lars Jung
de92767e5a Adds support for tarred downloads. 2012-04-17 23:38:15 +02:00
Lars Jung
e67c854cb5 Fixes problems with file type recognition. 2012-04-17 14:32:47 +02:00
Lars Jung
cc06b07d52 Fixes syntax error in ZipIt.php. 2012-04-16 21:04:04 +02:00
Lars Jung
71ed41fa69 Refactored and lots of modification. See README.md. 2012-04-16 12:53:54 +02:00
Lars Jung
859a680e19 Switches from date.js to Moment.js and adds underscore.js. 2012-04-01 01:03:09 +02:00
Lars Jung
240adb79eb Refactores js. 2012-03-31 21:30:13 +02:00
Lars Jung
4a530f5ec0 Minor changes. 2012-03-29 23:15:32 +02:00
Lars Jung
eb7f3878b1 Moves PHP feature checks into main class. 2012-03-27 20:02:23 +02:00
Lars Jung
972be7677c Enhanced feature checks. 2012-03-27 04:05:55 +02:00
Lars Jung
0d22407a2d Changes on index page. 2012-03-26 01:32:15 +02:00
Lars Jung
c173d74d06 Adds PHP support checks to index page. 2012-03-25 22:49:05 +02:00
Lars Jung
eda1a3b6ac Fixes a zipped download failure feedback bug. 2012-03-25 03:02:27 +02:00
Lars Jung
e4b6bace43 Adds options to info page. 2012-03-25 01:09:35 +01:00
Lars Jung
908848bfc7 Refactored info page assets. 2012-03-25 00:45:32 +01:00
Lars Jung
764bc0034c Adds a info index file at /_h5ai. 2012-03-25 00:09:43 +01:00
Lars Jung
c2e76dee24 Caches h5ai files only for 7 days now. 2012-03-25 00:09:04 +01:00
Lars Jung
81cce9e07c Fixes thumbnail size for portrait screenshots in icon view. 2012-03-24 21:51:23 +01:00
Lars Jung
cdb9157cd1 Disable hash changes since they break logical browser history. 2012-03-24 21:39:00 +01:00
Lars Jung
f34de37913 Fixes mousewheel scrolling, was broke mystically. 2012-03-12 23:33:04 +01:00
Lars Jung
3f0327ff1d Adds sr translation by Goran. 2012-03-12 22:31:52 +01:00
Lars Jung
998d3f30c6 Merge pull request #46 from sindresorhus/develop
Norwegian translation
2012-03-12 14:12:32 -07:00
Sindre Sorhus
0eda3f3701 Norwegian translation 2012-03-12 13:31:58 +01:00
Lars Jung
db4bfec2dd Minor changes. 2012-03-07 20:58:30 +01:00
Lars Jung
a796bd606f Refactores localization. 2012-03-07 17:29:20 +01:00
Lars Jung
1152c00018 Updates libs: jQuery, amplify and jQuery.fracs. 2012-03-07 14:18:49 +01:00
Lars Jung
194a202a0b Renames main script file to H5ai.js and main h5ai reference to h5ai. 2012-03-07 02:33:48 +01:00
Lars Jung
fbff8686bf Removes unnecessary closures. 2012-03-07 01:58:34 +01:00
Lars Jung
b1f6bd0d67 Fixes warnings on https sites loading http resources. 2012-03-06 01:24:47 +01:00
Lars Jung
89a85c0dd2 Semantic changes on file names. 2012-03-04 23:23:33 +01:00
Lars Jung
18181edad9 Fixes minor CSS bug. 2012-03-04 23:06:05 +01:00
Lars Jung
db946f2812 Adds a very basic print style. 2012-03-02 17:26:23 +01:00
Lars Jung
833a8ed13f Adds html5 shiv for IE < 9. 2012-03-01 10:54:42 +01:00
Lars Jung
51c5eb53e7 Adds missing html-tag classes for old browsers. 2012-02-29 17:01:48 +01:00
Lars Jung
3e318e43e8 Updates readme. 2012-02-29 16:39:11 +01:00
Lars Jung
d4c80612dc Fixes js problems in IE 7+8. Hides broken tree view in those browsers and adds a message to the footer. 2012-02-29 16:34:24 +01:00
Lars Jung
13693a4f3b Updates readme. 2012-02-28 13:38:41 +01:00
Lars Jung
1f1a6938ba Merge branch 'develop' of github.com:lrsjng/h5ai into develop 2012-02-28 13:37:24 +01:00
Lars Jung
a45725052b Changes options for dev. 2012-02-28 13:37:12 +01:00
Lars Jung
d90f7f33f7 Merge pull request #41 from metasta/develop
Added Japanese (ja) translation
2012-02-28 04:36:00 -08:00
metasta
f917f3b570 first japanese translation 2012-02-28 12:46:52 +09:00
Lars Jung
4be6e0f4c3 Updates readme. 2012-02-25 16:30:27 +01:00
Lars Jung
ad82ecad6f Merge pull request #40 from midday/ro-locale
Thank you!
2012-02-25 07:27:42 -08:00
Jakob Cosoroaba
14db2a2db7 fixed missing caron 2012-02-25 17:21:10 +02:00
Jakob Cosoroaba
e1c7e3da59 Added Romanian Locale 2012-02-25 17:21:10 +02:00
Lars Jung
6bbf0604b8 Updates lv translation and replaces spaces with tabs in config.js. 2012-02-24 23:38:59 +01:00
Lars Jung
16d4aa3aa9 Changes version to pre0.19. 2012-02-24 18:14:33 +01:00
Lars Jung
796fc75533 Merge branch 'develop' 2012-02-24 17:02:46 +01:00
Lars Jung
cc13005a1d Prepares release. 2012-02-24 16:52:31 +01:00
Lars Jung
cdb0f9035d Minor changes. 2012-02-24 16:37:37 +01:00
Lars Jung
041c172a55 Adds support for zipped download of htaccess restricted files. 2012-02-24 16:31:47 +01:00
Lars Jung
08cc2834df Adds en- and decoding for URL hashes. 2012-02-24 00:01:43 +01:00
Lars Jung
997f1cd80f Improves URL hashs. 2012-02-23 22:41:17 +01:00
Lars Jung
7c1feaebc0 Changes download button style while zipping. 2012-02-23 12:38:11 +01:00
Lars Jung
f1175f5149 More design changes. 2012-02-22 23:47:05 +01:00
Lars Jung
556d206ab8 Hide filter input field if no filter is set. 2012-02-22 13:18:46 +01:00
Lars Jung
bfebcb3bcd Changes design. 2012-02-22 11:38:53 +01:00
Lars Jung
32023fc86e Updates readme. 2012-02-22 07:22:04 +01:00
Lars Jung
78dc01d5b3 Merge pull request #38 from medicalwei/develop
Add translation to zh-tw, and fix translation on zh-cn.
2012-02-21 22:16:50 -08:00
Yao Wei (魏銘廷)
4e90a41614 added zh-tw translation. fix zh-cn translation. 2012-02-22 13:24:49 +08:00
Lars Jung
1b0c9d81ac Adds animated loading gif. 2012-02-21 21:29:47 +01:00
Lars Jung
84f543aca5 Filter accepts RegExp and primitive search sequences. 2012-02-21 01:59:19 +01:00
Lars Jung
749a87eaf7 Reduces number of HTTP requests. 2012-02-20 16:35:48 +01:00
Lars Jung
6901044518 Small js fixes. 2012-02-20 15:08:29 +01:00
Lars Jung
b39fbb8dc0 Removes console.log lines. 2012-02-20 03:12:12 +01:00
Lars Jung
d7b3bd79f8 Fixes build process. 2012-02-20 03:06:01 +01:00
Lars Jung
c8d079b826 Updates readme. 2012-02-20 02:47:00 +01:00
Lars Jung
8ee901517b Removes some redundancy. 2012-02-20 02:46:02 +01:00
Lars Jung
6bfbdb4d05 Adds optional QRCodes and filtering for displayed files. 2012-02-19 22:29:42 +01:00
Lars Jung
bc6e9fb150 Improves zipped download. 2012-02-17 23:21:13 +01:00
Lars Jung
f51a0b80a7 Js version uses settings.thumbTypes too. 2012-02-17 13:47:09 +01:00
Lars Jung
d56d0716cb Fixes problems with thumbnails for filenames with single and double quotes. 2012-02-17 11:28:08 +01:00
Lars Jung
42d3dfe80e Updates readme. 2012-02-17 03:25:57 +01:00
Lars Jung
1a8ef62188 Fixes broken links in custom headers/footers. Updates default options. 2012-02-17 03:23:42 +01:00
Lars Jung
ecf91b506e Disallows indexing the _h5ai folder by default. 2012-02-17 01:21:43 +01:00
Lars Jung
ca4d3ae315 Adds classes to <html> to distinguish h5ai versions. 2012-02-17 01:18:57 +01:00
Lars Jung
ba12154566 Updates build process. 2012-02-16 00:55:13 +01:00
Lars Jung
ba3e61c1d0 Moves thumbTypes to config.js. 2012-02-16 00:34:55 +01:00
Lars Jung
9f10e92175 Fixes include problems as well as Win path problems. 2012-02-15 18:41:13 +01:00
Lars Jung
d72ea22fb0 Small fix on initial tree view display. 2012-02-14 13:16:28 +01:00
Lars Jung
76f107cbfe Fixes problems with folder recognition in the JS version. 2012-02-13 00:11:19 +01:00
Lars Jung
cbdd185602 Makes custom headers/footers optional. Disabled by default. 2012-02-12 23:56:19 +01:00
Lars Jung
20858a1f43 Switches indentation to tabs. 2012-02-12 22:35:38 +01:00
Lars Jung
231ba3013b Updates es translation. 2012-02-12 21:59:17 +01:00
Lars Jung
47b6260186 Prepares for 0.18. 2012-02-12 02:40:14 +01:00
Lars Jung
8308c70f90 Merge branch 'develop' 2011-11-28 00:50:22 +01:00
Lars Jung
3baab50953 Last changes before release. 2011-11-28 00:49:22 +01:00
Lars Jung
4e4e654467 Fixes config. 2011-11-26 20:56:07 +01:00
Lars Jung
ff32e198a6 Merge branch 'switch-root' into develop 2011-11-26 20:54:32 +01:00
Lars Jung
ebec62adac Changes a lot... forgot to commit. 2011-11-26 20:53:51 +01:00
Lars Jung
74d967a27a Merge branch 'develop' 2011-11-02 00:57:18 +01:00
Lars Jung
6a5c35ad9a Last changes before release. 2011-11-02 00:56:55 +01:00
Lars Jung
4901034721 A lot of small fixes. 2011-11-01 22:33:00 +01:00
Lars Jung
8b1d6b9ef7 Updates readme. 2011-10-30 22:05:25 +01:00
Lars Jung
0fcd4e9709 Merge branch 'redesign-js' into develop 2011-10-30 21:55:05 +01:00
Lars Jung
4a65ce61df Improves file selection for zipped download. Zipped download is now disabled by default. 2011-10-30 21:50:25 +01:00
Lars Jung
3c23c7e956 Changes default language from to . 2011-10-07 16:38:30 +02:00
Lars Jung
caced60eaa More refactorings. 2011-10-06 05:12:29 +02:00
Lars Jung
4c1ed3d1e8 Redesigned js. 2011-09-29 13:43:22 +02:00
Lars Jung
8670b248a9 Refactorings. 2011-09-27 17:45:09 +02:00
Lars Jung
7f46dceba0 Minor refactorings. 2011-09-24 03:26:03 +02:00
Lars Jung
a95aef17be Removed release folder. 2011-09-23 17:09:05 +02:00
Lars Jung
e8dcb83d92 Improved HTML head sections. 2011-09-23 17:05:40 +02:00
Lars Jung
03de1d9472 Sorted translations in options.js. 2011-09-18 22:45:30 +02:00
Lars Jung
5e486e0aa2 Moved to version 0.16. 2011-09-18 19:54:18 +02:00
Lars Jung
a8f62f187c Added it translation. Switched to wepp. 2011-09-18 19:49:26 +02:00
Lars Jung
8e21a3c038 Fixed security issues. 2011-09-06 20:57:49 +02:00
Lars Jung
df30c67ade Added selection and zipped download. 2011-09-04 21:18:55 +02:00
Lars Jung
2d3b0eed4f Added selection and zipped download. 2011-09-04 21:18:19 +02:00
Lars Jung
a371ee2afd Minor additions. 2011-09-01 14:27:58 +02:00
Lars Jung
480c4aab79 Added thumbs and slide option. 2011-08-16 21:03:09 +02:00
Lars Jung
745bff09cb Changes in /h5ai/.htaccess 2011-08-12 19:04:14 +02:00
Lars Jung
7d6ced78da Fixes on PHP interpretation and tree display. 2011-08-12 15:58:03 +02:00
Lars Jung
b9835ebaad Added PHP implementation. For a full list of changes see README.md. 2011-08-06 13:26:44 +02:00
Lars Jung
8da046d550 Updated readme. 2011-07-30 13:45:26 +02:00
Lars Jung
e5b7ee6125 Added tr translation. 2011-07-30 13:19:28 +02:00
Lars Jung
e70d9029d2 Added es translation. 2011-07-30 12:35:51 +02:00
Lars Jung
b561082bca Updated build process and readme. 2011-07-29 13:52:51 +02:00
Lars Jung
ae464169a6 Updated readme. 2011-07-29 03:25:48 +02:00
Lars Jung
0f681930b3 Fixed unchecked use of console.log. 2011-07-29 02:36:53 +02:00
Lars Jung
5db74d054f Improved preformance for large directories. Changed build process. 2011-07-28 18:07:13 +02:00
Lars Jung
2e179df6e5 Changed license to MIT. 2011-07-27 02:25:00 +02:00
Lars Jung
8aed077297 Improved tree scrollbar. 2011-07-26 16:40:18 +02:00
Lars Jung
89fd74c4ab Fixed problems with ' in links 2011-07-24 18:05:44 +02:00
Lars Jung
5708b2e38e * fixed problems with XAMPP on Windows (see dot.htaccess comments for instructions)
* fixed tree fade-in-fade-out effect for small displays ([issue #6](http://github.com/lrsjng/h5ai/issues/6))
* added custom scrollbar to tree ([issue #6](http://github.com/lrsjng/h5ai/issues/6))
* fixed broken links caused by URI encoding/decoding ([issue #9](http://github.com/lrsjng/h5ai/issues/9))
* added "empty" to localization (hope Google Translate did a good job here)
2011-07-24 15:25:43 +02:00
Lars Jung
2407cd50ce Merge pull request #7 from MarcoSharper/master
Czech and Slovak translation
2011-07-19 11:46:04 -07:00
Marek Hrabe
fbcb8cb5e8 Added Slovak translation 2011-07-19 20:38:09 +02:00
Marek Hrabe
d822eb63e2 Added Czech translation 2011-07-19 20:33:03 +02:00
Lars Jung
5245b131b8 Forgot to build target. 2011-07-18 23:24:26 +02:00
Lars Jung
0293d54789 Finally decided to release v0.9. Totally flushed by the feedback of the last 2 days. Thanks. See README.md for changes. 2011-07-18 23:22:24 +02:00
Lars Jung
0d4edcb047 Lots of changes. See README.md changelog. 2011-07-08 03:32:23 +02:00
Lars Jung
a339814582 Updated screenshots. 2011-07-07 02:59:10 +02:00
Lars Jung
8eac4ca133 Removed shadows. Reworked tree side bar. 2011-07-07 02:26:07 +02:00
452 changed files with 15030 additions and 2225 deletions

50
.gitignore vendored
View File

@@ -1,50 +1,6 @@
# Build folders to ignore
bin
build
#target
build.local.*
# 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.txt Normal file
View 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.

409
README.md
View File

@@ -1,148 +1,369 @@
# h5ai v0.6 &#160; · &#160; a beautified Apache index
# h5ai
Please don't use files from the `src` folder for installation.
They need to be preprocessed to work correctly. You'll find a preprocessed
package on the [project page](http://larsjung.de/h5ai/).
* to report a bug or make a feature request please create [a new issue](http://github.com/lrsjng/h5ai/issues/new) on GitHub
* website with download, docs and demo: <http://larsjung.de/h5ai>
* sources: <http://github.com/lrsjng/h5ai>
h5ai is provided under the terms of the [MIT License](http://github.com/lrsjng/h5ai/blob/master/LICENSE.txt).
It profits from these great projects:
[AmplifyJS](http://amplifyjs.com)&nbsp;(MIT/GPL),
[Faenza icon set](http://tiheum.deviantart.com/art/Faenza-Icons-173323228)&nbsp;(GPL),
[HTML5 ★ Boilerplate](http://html5boilerplate.com),
[jQuery](http://jquery.com)&nbsp;(MIT/GPL),
[jQuery.fracs](http://larsjung.de/fracs/)&nbsp;(MIT),
[jQuery.mousewheel](http://github.com/brandonaaron/jquery-mousewheel)&nbsp;(MIT),
[jQuery.qrcode](http://larsjung.de/qrcode/)&nbsp;(MIT),
[jQuery.scrollpanel](http://larsjung.de/scrollpanel/)&nbsp;(MIT),
[markdown-js](http://github.com/evilstreak/markdown-js)&nbsp;(MIT),
[Modernizr](http://www.modernizr.com)&nbsp;(MIT/BSD),
[modulejs](http://larsjung.de/modulejs/)&nbsp;(MIT),
[Moment.js](http://momentjs.com)&nbsp;(MIT),
[SyntaxHighlighter](http://alexgorbatchev.com/SyntaxHighlighter/)&nbsp;(MIT/GPL),
[Underscore.js](http://underscorejs.org)&nbsp;(MIT)
## Screenshots
## Build
<a href="http://larsjung.de/h5ai/sample/screenshots/h5ai-v0.5.2-details.png" target="_blank">
<img src="http://larsjung.de/h5ai/sample/screenshots/h5ai-v0.5.2-details.png" width="400px" alt="screenshot" title="details view" style="display: inline" />
</a>
&#160; &#160; &#160;
<a href="http://larsjung.de/h5ai/sample/screenshots/h5ai-v0.5.2-icons.png" target="_blank">
<img src="http://larsjung.de/h5ai/sample/screenshots/h5ai-v0.5.2-icons.png" width="400px" alt="screenshot" title="icons view" style="display: inline" />
</a>
A prebuilt package can be found on the [project page](http://larsjung.de/h5ai/). If you want to build
h5ai yourself you need to install [fQuery](http://larsjung.de/fquery/) first:
> npm install -g fquery
## Live example
To build the project run the following command inside the project's root directory
View a [sample folder](http://larsjung.de/h5ai/sample)
*(the files are all empty to save webspace)*
> makejs
Run `makejs -t` to list all possible targets.
## Install
Everything you need is located in folder `target`.
* 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.
* Adjust `options.js` inside the `h5ai` folder to your needs. Defaults will be fine for a start.
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.
## License and References
<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.
## Changelog
### v0.6
*2011-07-05*
### v0.21 - *2012-08-06*
* refactored js
* added localization, see options.js
* 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.5.3
*2011-07-04*
### v0.20 - *2012-05-11*
* refactored js
* added basic options support
* commented options.js
* optional tree sidebar
* 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.5.2
*2011-07-02*
### 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
* linked icon for *.gz and *.bz2
* links icon for *.gz and *.bz2
### v0.5.1
*2011-07-01*
### v0.5.1 - *2011-07-01*
* disabled tree sidebar for now, since it had unwanted side effects
* disables tree sidebar for now, since it had unwanted side effects
### v0.5
*2011-07-01*
### v0.5 - *2011-07-01*
* added tree sidebar
* 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

View File

@@ -1,19 +0,0 @@
custom = true
# project
project.name = h5ai
project.version = 0.6
# src
src.dir = src
# build
build.dir = target
# libs
lib.scripp.jar = tools/scripp.jar

View File

@@ -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>

185
makefile.js Normal file
View File

@@ -0,0 +1,185 @@
/*jshint node: true */
'use strict';
var path = require('path'),
child_process = require('child_process');
var version = '0.21',
root = path.resolve(__dirname),
src = path.join(root, 'src'),
build = path.join(root, 'build'),
jshint = {
// Enforcing Options
bitwise: true,
curly: true,
eqeqeq: true,
forin: true,
latedef: true,
newcap: true,
noempty: true,
plusplus: true,
trailing: true,
undef: true,
// Environments
browser: true,
// Globals
predef: [
'modulejs'
]
},
mapper = function (blob) {
return blob.source.replace(src, build).replace(/\.less$/, '.css');
},
mapperRoot = function (blob) {
return blob.source.replace(root, build + '/_h5ai');
};
module.exports = function (make) {
var Event = make.Event,
$ = make.fQuery,
moment = make.moment,
stamp, replacements;
make.defaults('build');
make.before(function () {
stamp = moment();
replacements = {
version: version,
stamp: stamp.format('YYYY-MM-DD HH:mm:ss')
};
Event.info({ method: 'before', message: version + ' ' + replacements.stamp });
});
make.target('inc', [], 'increase build number, if any')
.sync(function () {
var re = /-(\d+)$/;
var match = version.match(re);
if (match) {
var number = parseInt(match[1], 10) + 1;
var newVersion = version.replace(re, '-' + number);
$('makefile.js').replace([[version, newVersion]]).write($.OVERWRITE, 'makefile.js');
version = newVersion;
replacements.version = version;
Event.ok({ method: 'inc', message: 'version is now ' + version });
}
});
make.target('clean', [], 'delete build folder')
.sync(function () {
$.rmfr($.I_AM_SURE, build);
});
make.target('lint', [], 'lint all JavaScript files with JSHint')
.sync(function () {
$(src + '/_h5ai/js: **/*.js, ! *.min.js, ! inc/lib/**')
.jshint(jshint);
});
make.target('build', [], 'build all updated files')
.sync(function () {
$(src + ': _h5ai/js/*.js')
.modified(mapper, $(src + ': _h5ai/js/**'))
.includify()
.uglifyjs()
.write($.OVERWRITE, mapper);
$(src + ': _h5ai/css/*.less')
.modified(mapper, $(src + ': _h5ai/css/**'))
.less()
.cssmin()
.write($.OVERWRITE, mapper);
$(src + ': **, ! _h5ai/js/**, ! _h5ai/css/**')
.modified(mapper)
.mustache(replacements)
.write($.OVERWRITE, mapper);
$(root + ': README*, LICENSE*')
.modified(mapperRoot)
.write($.OVERWRITE, mapperRoot);
});
make.target('build-uncompressed', [], 'build all updated files without compression')
.sync(function () {
$(src + ': _h5ai/js/*.js')
.modified(mapper, $(src + ': _h5ai/js/**'))
.includify()
// .uglifyjs()
.write($.OVERWRITE, mapper);
$(src + ': _h5ai/css/*.less')
.modified(mapper, $(src + ': _h5ai/css/**'))
.less()
// .cssmin()
.write($.OVERWRITE, mapper);
$(src + ': **, ! _h5ai/js/**, ! _h5ai/css/**')
.modified(mapper)
.mustache(replacements)
.write($.OVERWRITE, mapper);
$(root + ': README*, LICENSE*')
.modified(mapperRoot)
.write($.OVERWRITE, mapperRoot);
});
make.target('release', ['inc', 'clean', 'build'], 'create a zipball')
.async(function (done, fail) {
var target = path.join(build, 'h5ai-' + version + '.zip'),
cmd = 'zip',
args = ['-ro', target, '_h5ai'],
options = { cwd: build },
proc = child_process.spawn(cmd, args, options);
Event.info({ method: 'exec', message: cmd + ' ' + args.join(' ') });
// proc.stdout.on('data', function (data) {
// process.stdout.write(data);
// });
proc.stderr.on('data', function (data) {
process.stderr.write(data);
});
proc.on('exit', function (code) {
if (code) {
Event.error({ method: 'exec', message: cmd + ' exit code ' + code });
fail();
} else {
Event.ok({ method: 'exec', message: 'created zipball ' + target });
done();
}
});
});
};

43
src/_h5ai/.htaccess Normal file
View File

@@ -0,0 +1,43 @@
Options -Indexes
<IfModule mod_expires.c>
Header set Cache-Control "public"
ExpiresActive on
# Perhaps better to whitelist expires rules? Perhaps.
ExpiresDefault "access plus 1 month"
# cache.manifest needs re-requests in FF 3.6 (thx Remy ~Introducing HTML5)
ExpiresByType text/cache-manifest "access plus 0 seconds"
# your document html
ExpiresByType text/html "access plus 0 seconds"
# data
ExpiresByType text/xml "access plus 0 seconds"
ExpiresByType application/xml "access plus 0 seconds"
ExpiresByType application/json "access plus 0 seconds"
# media: images, video, audio
ExpiresByType image/gif "access plus 1 month"
ExpiresByType image/png "access plus 1 month"
ExpiresByType image/jpg "access plus 1 month"
ExpiresByType image/jpeg "access plus 1 month"
ExpiresByType video/ogg "access plus 1 month"
ExpiresByType audio/ogg "access plus 1 month"
ExpiresByType video/mp4 "access plus 1 month"
ExpiresByType video/webm "access plus 1 month"
# webfonts
ExpiresByType font/truetype "access plus 1 month"
ExpiresByType font/opentype "access plus 1 month"
ExpiresByType font/woff "access plus 1 month"
ExpiresByType image/svg+xml "access plus 1 month"
ExpiresByType application/vnd.ms-fontobject "access plus 1 month"
# css and javascript
ExpiresByType text/css "access plus 1 month"
ExpiresByType application/javascript "access plus 1 month"
ExpiresByType text/javascript "access plus 1 month"
</IfModule>

View File

@@ -0,0 +1,23 @@
################################
# h5ai {{version}}
# customized .htaccess
################################
Options +Indexes
Options +FollowSymLinks
HeaderName /_h5ai/apache/h5ai-header.html
ReadmeName /_h5ai/apache/h5ai-footer.html
IndexIgnore _h5ai*
IndexOptions Charset=UTF-8
IndexOptions FancyIndexing
IndexOptions FoldersFirst
IndexOptions HTMLTable
IndexOptions NameWidth=*
IndexOptions SuppressDescription
IndexOptions SuppressHTMLPreamble
IndexOptions SuppressRules
IndexOptions Type=text/html;h5ai={{version}}
IndexOptions XHTML

View File

@@ -0,0 +1,6 @@
<!-- generated code ends here -->
</div>
<script src="/_h5ai/config.js"></script>
<script src="/_h5ai/js/scripts.js"></script>
</body>
</html>

View File

@@ -0,0 +1,38 @@
<!DOCTYPE html>
<!--[if lt IE 7]> <html class="no-js ie6 oldie" lang="en"> <![endif]-->
<!--[if IE 7]> <html class="no-js ie7 oldie" lang="en"> <![endif]-->
<!--[if IE 8]> <html class="no-js ie8 oldie" lang="en"> <![endif]-->
<!--[if gt IE 8]><!--> <html class="no-js" lang="en"> <!--<![endif]-->
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<title>Directory index · styled with h5ai</title>
<meta name="description" content="Directory index styled with h5ai (http://larsjung.de/h5ai)">
<meta name="viewport" content="width=device-width">
<link rel="shortcut icon" type="image/png" href="/_h5ai/images/h5ai-16x16.png">
<link rel="apple-touch-icon" type="image/png" href="/_h5ai/images/h5ai-48x48.png">
<link rel="stylesheet" href="//fonts.googleapis.com/css?family=Ubuntu+Mono:400,700,400italic,700italic|Ubuntu:400,700,400italic,700italic">
<link rel="stylesheet" href="/_h5ai/css/styles.css">
<script src="/_h5ai/js/modernizr.js"></script>
</head>
<body id="h5ai-main">
<div id="topbar" class="clearfix">
<ul id="navbar"></ul>
</div>
<div id="content">
<div id="extended" class="clearfix"></div>
</div>
<div id="bottombar" class="clearfix">
<span class="left">
<a id="h5ai-reference" href="http://larsjung.de/h5ai" title="h5ai project page">h5ai {{version}}</a>
<span class="hideOnJs noJsMsg"> ⚡ JavaScript is disabled! ⚡ </span>
<span class="oldBrowser"> ⚡ Some features disabled! Works best in <a href="http://browsehappy.com">modern browsers</a>. ⚡ </span>
</span>
<span class="right"></span>
<span class="center"></span>
</div>
<div id="data-apache-autoindex" class="hideOnJs">
<!--
The following code was generated by Apache's autoindex module. It is not valid HTML5, but gets
removed from the DOM tree as soon as possible. The actual page should render as valid HTML5.
-->

7
src/_h5ai/cache/README.md vendored Normal file
View File

@@ -0,0 +1,7 @@
# Cache
This directory is used for server side caching. To use caching make this
directory writable for your webserver.
There is no critical data in here. You can savely remove any content. This
will clear the cache.

693
src/_h5ai/config.js Normal file
View File

@@ -0,0 +1,693 @@
/*
* h5ai {{version}}
*
* Configuration
* options, types and localization
*/
var H5AI_CONFIG = {
"options": {
/*
* The absolute links to webroot and h5ai.
* Do not change this unless you know what you are doing.
*/
"rootAbsHref": "/",
"h5aiAbsHref": "/_h5ai/",
/*
* Spacing of the main content.
* Left and right will be added to a minimum of 30px. Top and bottom
* are calculated relative to the top and bottom bar heights.
*/
"spacing": {
"maxWidth": 960,
"top": 50,
"right": "auto",
"bottom": 50,
"left": "auto"
},
/*
* An array of view modes the user may choose from. Currently there
* are two possible values: "details" and "icons". The first value
* indicates the default view mode. If only one value is given the
* view mode is fixed and the selector buttons are hidden.
* The user selected view mode is also stored local in modern browsers
* so that it will be persistent.
*
* Set parent folder labels to real folder names.
*/
"view": {
"modes": ["details", "icons"],
"setParentFolderLabels": true
},
/*
* Extensions in alphabetical order.
*/
/*
* Show a clickable breadcrumb.
*/
"crumb": {
"enabled": true
},
/*
* Filenames of customized header and footer files to look for
* in each folder.
*/
"custom": {
"enabled": true,
"header": "_h5ai.header.html",
"footer": "_h5ai.footer.html"
},
/*
* EXPLICITLY: USE "shell" ON YOUR OWN RISK.
*
* Requires PHP on the server.
* Enable packaged download of selected entries.
* Execution: "php", "shell".
* Supported formats: "tar", "zip".
*/
"download": {
"enabled": true,
"execution": "shell",
"format": "tar"
},
/*
* Allow filtering the displayed files and folders.
* Will check entries for right order of characters, i.e.
* "ab" matches "ab", "axb", "xaxbx" but not "ba".
* Space separated sequences get OR-ed.
*
* Filters will be treated as JavaScript regular expressions
* if you prefix them with "re:".
*/
"filter": {
"enabled": true
},
/*
* Requires PHP on the server.
* Calc the size of folders.
* Depends on du.
*/
"foldersize": {
"enabled": true
},
/*
* Associative array of folders and their HTTP status codes to
* avoid HEAD requests to that folders. The key (folder) must start
* and end with a slash (/).
* For example
* "/some/folder/": 200
* will always return HTTP status 200 (OK), which will be interpreted
* as a non auto indexed folder, that means a folder containing an
* appropriate default index file.
*/
"folderstatus": {
"enabled": true,
"folders": {}
},
/*
* Adds Google Analytics asynchronous tracking code.
*
* for example:
* "gaq": [
* ["_setAccount", "UA-xxxxxx-x"],
* ["_setDomainName", ".your-domain.tld"],
* ["_trackPageview"],
* ["_trackPageLoadTime"]
* ]
*
* see: http://support.google.com/googleanalytics/bin/topic.py?hl=en&topic=27612
*/
"google-analytics": {
"enabled": true,
"gaq": []
},
/*
* Localization, for example "en", "de" etc. - see "langs" below for
* possible values. Adjust it to your needs. If lang is not found in
* "langs" it defaults to "en".
*
* Optionally try to use browser language, falls back to previous
* specified language.
*/
"l10n": {
"enabled": true,
"lang": "en",
"useBrowserLang": true
},
/*
* Link the hover effects between crumb, main view and tree.
*/
"link-hover-states": {
"enabled": true
},
/*
* Shows the server mode in the bottom left corner.
* display values:
* 0: only show mode
* 1: mode and servername
* 2: mode, servername and -version
*/
"mode": {
"enabled": true,
"display": 2
},
/*
* Show an image preview on click.
*/
"preview-img": {
"enabled": true,
"types": ["bmp", "gif", "ico", "image", "jpg", "png", "tiff"]
},
/*
* Show text file preview on click.
* "types" maps file types to SyntaxHighligher brushes. Special case: "markdown" will
* be rendered as HTML.
*
* For available brushes see http://alexgorbatchev.com/SyntaxHighlighter/manual/brushes/
*/
"preview-txt": {
"enabled": true,
"types": {
"authors": "plain",
"copying": "plain",
"c": "c",
"cpp": "cpp",
"css": "css",
"h": "c",
"hpp": "cpp",
"install": "plain",
"log": "plain",
"java": "java",
"makefile": "xml",
"markdown": "plain",
"php": "php",
"python": "python",
"readme": "plain",
"rb": "ruby",
"rtf": "plain",
"script": "shell",
"text": "plain",
"js": "js",
"xml": "xml"
}
},
/*
* Show QRCodes on hovering files.
*/
"qrcode": {
"enabled": true,
"size": 150
},
/*
* Make entries selectable. At the moment only needed for packaged download.
*/
"select": {
"enabled": true
},
/*
* Default sort order is a two letter code. The first letter specifies
* the column: "n" for "Name", "d" for "Date" or "s" for "Size". The
* second letter specifies the sort order: "a" for "ascending" or "d"
* for "descending".
*/
"sort": {
"enabled": true,
"order": "na"
},
/*
* Show additional info in a statusbar.
*/
"statusbar": {
"enabled": true
},
/*
* Requires PHP on the server.
* Show thumbnails for image files. Needs the "/_h5ai/cache" folder to be
* writable for the Apache Server.
* - img thumbnails depend on PHP-GD
* - mov thumbnails depend on ffmpeg
* - doc thumbnails depend on convert
*/
"thumbnails": {
"enabled": true,
"img": ["bmp", "gif", "ico", "image", "jpg", "png", "tiff"],
"mov": ["video"],
"doc": ["pdf", "ps"],
"delay": 1
},
/*
* Replace window title with current breadcrumb.
*/
"title": {
"enabled": true
},
/*
* Show a folder tree.
* Note that this tree might have side effects as it sends HEAD requests
* to the folders, and therefore will invoke index.php scripts. Use
* "folderstatus" above to avoid such requests.
* It might also affect performance significantly.
*
* Slide tree bar into viewport if there is enough space.
*/
"tree": {
"enabled": true,
"slide": true
}
},
/*
* File types mapped to file extensions. In alphabetical order.
*/
"types": {
"archive": [".tar.bz2", ".tar.gz", ".tgz"],
"audio": [".aif", ".flac", ".m4a", ".mid", ".mp3", ".mpa", ".ra", ".ogg", ".wav", ".wma"],
"authors": ["authors"],
"bin": [".class", ".o", ".so"],
"blank": [],
"bmp": [".bmp"],
"c": [".c"],
"calc": [".ods", ".ots", ".xlr", ".xls", ".xlsx"],
"cd": [".cue", ".iso"],
"copying": ["copying", "license"],
"cpp": [".cpp"],
"css": [".css", ".less"],
"deb": [".deb"],
"default": [],
"doc": [".doc", ".docx", ".odm", ".odt", ".ott"],
"draw": [".drw"],
"eps": [".eps"],
"exe": [".bat", ".cmd", ".exe"],
"folder": [],
"folder-home": [],
"folder-open": [],
"folder-page": [],
"folder-parent": [],
"gif": [".gif"],
"gzip": [".gz"],
"h": [".h"],
"hpp": [".hpp"],
"html": [".htm", ".html", ".shtml"],
"ico": [".ico"],
"image": [".xpm"],
"install": ["install"],
"java": [".java"],
"jpg": [".jpg", ".jpeg"],
"js": [".js", ".json"],
"log": [".log", "changelog"],
"makefile": [".pom", "build.xml", "pom.xml"],
"markdown": [".markdown", ".md"],
"package": [],
"pdf": [".pdf"],
"php": [".php"],
"playlist": [".m3u", ".m3u8", ".pls"],
"png": [".png"],
"pres": [".odp", ".otp", ".pps", ".ppt", ".pptx"],
"ps": [".ps"],
"psd": [".psd"],
"py": [".py"],
"rar": [".rar"],
"rb": [".rb"],
"readme": ["readme"],
"rpm": [".rpm"],
"rss": [".rss"],
"rtf": [".rtf"],
"script": [".conf", ".csh", ".ini", ".ksh", ".sh", ".shar", ".tcl"],
"source": [],
"sql": [],
"tar": [".tar"],
"tex": [".tex"],
"text": [".diff", ".patch", ".text", ".txt"],
"tiff": [".tiff"],
"unknown": [],
"vcal": [".vcal"],
"video": [".avi", ".flv", ".mkv", ".mov", ".mp4", ".mpg", ".rm", ".swf", ".vob", ".wmv"],
"xml": [".xml"],
"zip": [".7z", ".bz2", ".jar", ".lzma", ".war", ".z", ".Z", ".zip"]
},
/*
* Available translations. "en" in first place as a reference, otherwise in alphabetical order.
*
* Date format is used in detailed view, for example: "YYYY-MM-DD HH:mm:ss"
* Syntax as specified by Moment.js (http://momentjs.com)
*/
"langs": {
"en": {
"lang": "english",
"details": "details",
"icons": "icons",
"name": "Name",
"lastModified": "Last modified",
"size": "Size",
"parentDirectory": "Parent Directory",
"empty": "empty",
"folders": "folders",
"files": "files",
"download": "download",
"noMatch": "no match",
"dateFormat": "YYYY-MM-DD HH:mm",
"filter": "filter"
},
"bg": {
"lang": "български",
"details": "детайли",
"icons": "икони",
"name": "Име",
"lastModified": "Последна промяна",
"size": "Размер",
"parentDirectory": "Предходна директория",
"empty": "празно",
"folders": "папки",
"files": "файлове"
},
"cs": {
"lang": "čeština",
"details": "podrobnosti",
"icons": "ikony",
"name": "Název",
"lastModified": "Upraveno",
"size": "Velikost",
"parentDirectory": "Nadřazený adresář",
"empty": "prázdný",
"folders": "složek",
"files": "souborů"
},
"de": {
"lang": "deutsch",
"details": "Details",
"icons": "Icons",
"name": "Name",
"lastModified": "Geändert",
"size": "Größe",
"parentDirectory": "Übergeordnetes Verzeichnis",
"empty": "leer",
"folders": "Ordner",
"files": "Dateien",
"download": "Download",
"noMatch": "keine Treffer",
"dateFormat": "DD.MM.YYYY HH:mm",
"filter": "Filter"
},
"el": {
"lang": "ελληνικά",
"details": "λεπτομέρειες",
"icons": "εικονίδια",
"name": "Όνομα",
"lastModified": "Τελευταία τροποποίηση",
"size": "Μέγεθος",
"parentDirectory": "Προηγούμενος Κατάλογος",
"empty": "κενό",
"folders": "φάκελοι",
"files": "αρχεία",
"download": "μεταμόρφωση",
"noMatch": "κανένα αποτέλεσμα",
"dateFormat": "DD/MM/YYYY HH:mm"
},
"es": {
"lang": "español",
"details": "Detalles",
"icons": "Íconos",
"name": "Nombre",
"lastModified": "Última modificación",
"size": "Tamaño",
"parentDirectory": "Directorio superior",
"empty": "vacío",
"folders": "Directorios",
"files": "Archivos",
"download": "Descargar"
},
"fr": {
"lang": "français",
"details": "détails",
"icons": "icônes",
"name": "Nom",
"lastModified": "Dernière modification",
"size": "Taille",
"parentDirectory": "Dossier parent",
"empty": "vide",
"folders": "Répertoires",
"files": "Fichiers",
"download": "télécharger",
"noMatch": "rien trouvé",
"dateFormat": "DD/MM/YYYY HH:mm"
},
"hu": {
"lang": "magyar",
"details": "részletek",
"icons": "ikonok",
"name": "Név",
"lastModified": "Utoljára módosítva",
"size": "Méret",
"parentDirectory": "Szülő könyvtár",
"empty": "üres",
"folders": "mappák",
"files": "fájlok",
"download": "letöltés",
"noMatch": "nincs találat",
"dateFormat": "YYYY-MM-DD HH:mm"
},
"it": {
"lang": "italiano",
"details": "dettagli",
"icons": "icone",
"name": "Nome",
"lastModified": "Ultima modifica",
"size": "Dimensione",
"parentDirectory": "Cartella Superiore",
"empty": "vuota",
"folders": "cartelle",
"files": "file"
},
"ja": {
"lang": "日本語",
"details": "詳細",
"icons": "アイコン",
"name": "名前",
"lastModified": "変更日",
"size": "サイズ",
"parentDirectory": "親フォルダ",
"empty": "項目なし",
"folders": "フォルダ",
"files": "ファイル",
"download": "ダウンロード",
"noMatch": "一致なし"
},
"lv": {
"lang": "latviešu",
"details": "detaļas",
"icons": "ikonas",
"name": "Nosaukums",
"lastModified": "Pēdējoreiz modificēts",
"size": "Izmērs",
"parentDirectory": "Vecākdirektorijs",
"empty": "tukšs",
"folders": "mapes",
"files": "faili",
"download": "lejupielādēt",
"noMatch": "nav sakritības",
"dateFormat": "YYYY-MM-DD HH:mm"
},
"nb": {
"lang": "norwegian",
"details": "detaljer",
"icons": "ikoner",
"name": "Navn",
"lastModified": "Sist endret",
"size": "Størrelse",
"parentDirectory": "Overordnet mappe",
"empty": "tom",
"folders": "mapper",
"files": "filer",
"download": "last ned",
"noMatch": "ingen treff"
},
"nl": {
"lang": "nederlands",
"details": "details",
"icons": "iconen",
"name": "Naam",
"lastModified": "Laatste wijziging",
"size": "Grootte",
"parentDirectory": "Bovenliggende map",
"empty": "lege"
},
"pl": {
"lang": "polski",
"details": "szczegóły",
"icons": "ikony",
"name": "Nazwa",
"lastModified": "Ostatnia modyfikacja",
"size": "Rozmiar",
"parentDirectory": "Katalog nadrzędny",
"empty": "pusty",
"folders": "foldery",
"files": "pliki"
},
"pt": {
"lang": "português",
"details": "detalhes",
"icons": "ícones",
"name": "Nome",
"lastModified": "Última modificação",
"size": "Tamanho",
"parentDirectory": "Diretório superior",
"empty": "vazio",
"folders": "pastas",
"files": "arquivos"
},
"ro": {
"lang": "română",
"details": "detalii",
"icons": "pictograme",
"name": "nume",
"lastModified": "ultima modificare",
"size": "mărime",
"parentDirectory": "dosar părinte",
"empty": "gol",
"folders": "dosar",
"files": "fişiere",
"download": "descarcă",
"noMatch": "0 rezultate"
},
"ru": {
"lang": "русский",
"details": "детали",
"icons": "иконки",
"name": "Имя",
"lastModified": "Последние изменения",
"size": "Размер",
"parentDirectory": "Главная директория",
"empty": "пусто",
"folders": "папки",
"files": "файлы"
},
"sk": {
"lang": "slovenčina",
"details": "podrobnosti",
"icons": "ikony",
"name": "Názov",
"lastModified": "Upravené",
"size": "Velkosť",
"parentDirectory": "Nadriadený priečinok",
"empty": "prázdny",
"folders": "priečinkov",
"files": "súborov"
},
"sr": {
"lang": "srpski",
"details": "detalji",
"icons": "ikone",
"name": "Ime",
"lastModified": "Poslednja modifikacija",
"size": "Veličina",
"parentDirectory": "Roditeljski direktorijum",
"empty": "prazno",
"folders": "direktorijum",
"files": "fajlovi",
"download": "download",
"noMatch": "bez poklapanja"
},
"sv": {
"lang": "svenska",
"details": "detaljerad",
"icons": "ikoner",
"name": "Filnamn",
"lastModified": "Senast ändrad",
"size": "Filstorlek",
"parentDirectory": "Till överordnad mapp",
"empty": "tom"
},
"tr": {
"lang": "türkçe",
"details": "detaylar",
"icons": "ikonlar",
"name": "İsim",
"lastModified": "Son Düzenleme",
"size": "Boyut",
"parentDirectory": "Üst Dizin",
"empty": "boş",
"folders": "klasörler",
"files": "dosyalar",
"download": "indir"
},
"zh-cn": {
"lang": "简体中文",
"details": "详情",
"icons": "图标",
"name": "文件名",
"lastModified": "上次修改",
"size": "大小",
"parentDirectory": "上层文件夹",
"empty": "空文件夹",
"folders": "文件夹",
"files": "文件",
"download": "下载"
},
"zh-tw": {
"lang": "正體中文",
"details": "詳細資料",
"icons": "圖示",
"name": "檔名",
"lastModified": "上次修改",
"size": "大小",
"parentDirectory": "上層目錄",
"empty": "空資料夾",
"folders": "資料夾",
"files": "檔案",
"download": "下載"
}
}
};

34
src/_h5ai/config.php Normal file
View File

@@ -0,0 +1,34 @@
<?php
/*
* h5ai {{version}}
*
* PHP Configuration
* filesystem paths and file ignore rules
*/
global $H5AI_CONFIG;
$H5AI_CONFIG = array(
/*
* This configuration assumes that h5ai is installed
* in the webroot directory of the Apache server.
*/
"ROOT_ABS_PATH" => dirname(dirname(__FILE__)),
/*
* Files/folders that should not be listed. Specified
* by the complete filename or by a regular expression.
* http://www.php.net/manual/en/function.preg-match.php
*/
"IGNORE" => array(),
"IGNORE_PATTERNS" => array("/^\\./", "/^_h5ai/"),
/*
* Folders that contain one of these files will be considered
* as none h5ai folders.
*/
"INDEX_FILES" => array("index.html", "index.htm", "index.php")
);
?>

View File

@@ -1,40 +1,58 @@
#table {
#data-apache-autoindex, #data-php-no-js-fallback {
max-width: 960px;
margin: 0 auto;
table {
display: block;
width: 100%;
border-collapse: collapse;
th, td {
padding: 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;
@@ -43,26 +61,23 @@
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;
}
}
}

View File

@@ -0,0 +1,67 @@
#bottombar {
position: fixed;
z-index: 5;
width: 100%;
left: 0;
bottom: 0;
padding: 6px 0 8px 0;
.vert-gradient(rgb(241,241,241), rgb(228,228,228));
border-top: 1px solid rgb(210,210,210);
color: #999;
text-align: center;
a, a:active, a:visited {
color: #555;
text-decoration: none;
.transition(all 0.2s ease-in-out);
opacity: 0.7;
&:hover {
color: #e80;
opacity: 1;
}
}
.left {
display: block;
padding: 0 8px;
float: left
}
.center {
display: block;
margin: 0 100px;
}
.right {
display: block;
padding: 0 8px;
float: right
}
.noJsMsg {
color: #c33;
margin-left: 16px;
}
.oldBrowser {
display: none;
color: #c33;
margin-left: 16px;
a, a:active, a:visited {
color: #c33;
text-decoration: underline;
&:hover {
color: #e80;
}
}
}
.status {
.sep {
display: inline-block;
padding: 0 6px;
}
&.default {
}
&.dynamic {
display: none;
}
}
}

View File

@@ -0,0 +1,31 @@
#content {
max-width: 960px;
margin: 50px auto;
font-size: 16px;
}
#content-header, #content-footer {
a, a:active, a:visited {
color: #2080FF;
text-decoration: none;
cursor: pointer;
&:hover {
color: #68A9FF;
}
}
}
#content-header {
padding-bottom: 12px;
margin-bottom: 32px;
}
#content-footer {
padding-top: 12px;
margin-top: 32px;
}

View File

@@ -0,0 +1,22 @@
#context {
position: fixed;
z-index: 1;
display: none;
right: 16px;
bottom: 50px;
background-color: #fff;
border: 2px solid #ddd;
padding: 8px;
span {
display: block;
}
.qrcode {
canvas {
display: block;
}
}
}

View 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;
}
}

View File

@@ -0,0 +1,374 @@
#selection-rect {
display: none;
position: absolute;
left: 0;
top: 0;
z-index: 2;
border: 1px dashed rgba(240,100,0,0.5);
background-color: rgba(240,100,0,0.2);
}
#extended.view-details {
display: none;
ul {
margin: 0;
padding: 0;
list-style: none;
li {
position: relative;
white-space: nowrap;
clear: both;
&.header {
font-size: 13px;
a, a:active, a:visited {
padding-bottom: 18px;
color: #555;
text-decoration: none;
opacity: 0.4;
cursor: pointer;
.transition(all 0.2s ease-in-out);
img.ascending, img.descending {
position: relative;
top: -2px;
display: none;
width: 12px;
height: 12px;
padding: 0 8px;
}
&:hover {
color: #555;
opacity: 0.9;
}
&.ascending img.ascending {
display: inline;
}
&.descending img.descending {
display: inline;
}
}
}
&.entry {
a, a:active, a:visited {
display: block;
color: #555;
text-decoration: none;
cursor: pointer;
border-bottom: 1px solid #e8e8e8;
&:hover, &.hover {
background-color: #f6f6f6;
color: #e80;
}
}
&.selected:not(.selecting) a, &.selecting:not(.selected) a {
border-color: rgba(240,100,0,0.2);
background-color: rgba(240,100,0,0.2);
}
&.error {
a, a:active, a:visited {
color: #aaa;
.label {
.hint {
margin-left: 12px;
font-size: 0.9em;
color: #c55;
}
}
&:hover, &.hover {
opacity: 1;
background-color: #f6f6f6;
color: #e80;
}
}
}
&.folder-parent {
.date, .size {
display: none;
}
}
}
.icon, .label, .date, .size {
padding: 6px;
}
.icon {
display: inline-block;
position: absolute;
left: 0;
top: -2px;
width: 16px;
text-align: center;
img {
max-width: 16px;
max-height: 16px;
&.thumb {
.box-shadow(0 0 0 1px #ddd);
}
}
}
.icon.big {
display: none;
}
.label {
display: block;
margin: 0 270px 0 24px;
overflow: hidden;
white-space: nowrap;
text-align: left;
}
.date {
position: absolute;
right: 100px;
top: 0;
text-align: right;
width: 160px;
white-space: nowrap;
}
.size {
position: absolute;
right: 0;
top: 0;
text-align: right;
width: 80px;
white-space: nowrap;
}
}
}
.empty, .no-match {
text-align: center;
margin: 50px 0;
color: #ddd;
font-size: 5em;
font-weight: bold;
}
.no-match {
display: none;
}
}
#extended.view-list {
display: none;
ul {
margin: 0;
padding: 0;
list-style: none;
li {
position: relative;
white-space: nowrap;
clear: both;
&.header {
display: none;
}
&.entry {
a, a:active, a:visited {
display: block;
color: #555;
text-decoration: none;
cursor: pointer;
border-bottom: 1px solid #e8e8e8;
height: 56px;
&:hover, &.hover {
background-color: #f6f6f6;
color: #e80;
}
}
&.selected:not(.selecting) a, &.selecting:not(.selected) a {
border-color: rgba(240,100,0,0.2);
background-color: rgba(240,100,0,0.2);
}
&.error {
a, a:active, a:visited {
color: #aaa;
.label {
.hint {
margin-left: 12px;
font-size: 0.9em;
color: #c55;
}
}
&:hover, &.hover {
opacity: 1;
background-color: #f6f6f6;
color: #e80;
}
}
}
&.folder-parent {
.date, .size {
display: none;
}
}
}
.icon, .label, .date, .size {
padding: 6px;
}
.icon {
display: inline-block;
position: absolute;
left: 0;
top: -2px;
width: 100px;
text-align: center;
img {
max-width: 100px;
max-height: 48px;
&.thumb {
.box-shadow(0 0 0 1px #ddd);
}
}
}
.icon.small {
display: none;
}
.label {
display: block;
margin: 0 270px 0 106px;
overflow: hidden;
white-space: nowrap;
text-align: left;
}
.date {
margin: 0 0 0 106px;
text-align: right;
width: 160px;
white-space: nowrap;
}
.size {
text-align: right;
width: 80px;
white-space: nowrap;
}
}
}
.empty, .no-match {
text-align: center;
margin: 50px 0;
color: #ddd;
font-size: 5em;
font-weight: bold;
}
.no-match {
display: none;
}
}
#extended.view-icons {
display: none;
padding: 3px;
ul {
margin: 0;
padding: 0;
list-style: none;
li {
&.header {
display: none;
}
&.entry {
float: left;
a, a:active, a:visited {
display: block;
margin: 8px;
padding: 8px;
width: 100px;
height: 120px;
float: left;
text-align: center;
text-decoration: none;
overflow: hidden;
border-radius: 5px;
color: #555;
cursor: pointer;
border: 2px solid rgba(0,0,0,0);
&:hover, &.hover {
color: #e80;
border-color: #eee;
background-color: #f6f6f6;
}
.icon {
display: block;
height: 48px;
margin-bottom: 6px;
img {
max-width: 100px;
max-height: 48px;
&.thumb {
.box-shadow(0 0 0 1px #ddd);
}
}
}
.icon.small {
display: none;
}
.label {
display: block;
word-wrap: break-word;
}
.date, .size {
display: none;
}
}
&.selected:not(.selecting) a, &.selecting:not(.selected) a {
border-color: rgba(240,100,0,0.2);
background-color: rgba(240,100,0,0.2);
}
&.error {
a, a:active, a:visited {
color: #aaa;
text-decoration: none;
.label {
.hint {
padding: 0 6px;
font-size: 0.9em;
color: #c55;
}
}
&:hover, &.hover {
color: #e80;
border-color: #eee;
background-color: #f6f6f6;
}
}
}
}
}
}
.empty, .no-match {
margin: 0 120px;
padding: 16px;
height: 120px;
text-align: center;
color: #ddd;
font-size: 5em;
font-weight: bold;
}
.no-match {
display: none;
}
}

View 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;
}
}
}

View File

@@ -0,0 +1,77 @@
body#h5ai-info {
font-family: Ubuntu, Arial, sans;
margin: 2em auto 4em auto;
font-size: 20px;
color: #555;
max-width: 600px;
text-align: center;
.build-version {
display: block;
// font-size: 0.9em;
// color: #aaa;
}
.build-stamp {
display: block;
margin-top: 0.3em;
font-size: 0.6em;
color: #aaa;
}
h1 {
font-size: 3.6em;
margin: 0;
}
h2 {
font-size: 1.15em;
margin: 2.6em 0 0 0;
}
p {
line-height: 1.6em;
}
p + p {
margin-top: 1.2em;
}
li {
margin-top: 0.6em;
line-height: 1.4em;
}
#tests {
display: inline-block;
list-style-type: none;
text-align: left;
margin: 0;
padding: 0;
.test-label {
display: inline-block;
width: 300px;
}
.test-result {
display: inline-block;
width: 70px;
text-align: right;
font-weight: bold;
color: #aaa;
&.test-passed {
color: #5a5;
}
&.test-failed {
color: #a55;
}
}
.test-info {
margin: 4px 0 12px 12px;
font-size: 0.7em;
color: #aaa;
width: 300px;
line-height: 1.2em;
}
}
#bottombar {
font-size: 13px;
}
}

View 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);
}
}
}
}
}

View File

@@ -0,0 +1,129 @@
#pv-img-overlay {
display: none;
position: fixed;
left: 0;
top: 0;
right: 0;
bottom: 0;
z-index: 100;
background-color: rgba(0,0,0,0.5);
text-align: center;
}
#pv-img-content {
position: fixed;
}
#pv-img-image {
max-width: 100%;
max-height: 100%;
border: 2px solid #fff;
.border-radius(4px);
}
#pv-img-overlay.fullscreen {
background-color: #111;
#pv-img-image {
border: 0;
.border-radius(0);
}
}
#pv-img-close {
position: fixed;
width: 100%;
height: 100%;
cursor: pointer;
}
#pv-img-prev {
position: fixed;
cursor: pointer;
}
#pv-img-next {
position: fixed;
cursor: pointer;
}
#pv-img-buttons, #pv-img-topbuttons {
list-style: none;
list-style-image: none;
margin: 0;
padding: 0;
img {
position: relative;
top: -2px;
width: 16px;
height: 16px;
}
img + span, img + input {
margin-left: 6px;
}
input {
background-color: rgba(255,255,255,0.1);
border: none;
color: #ccc;
}
.bar-label {
display: block;
color: #ccc;
height: 30px;
line-height: 30px;
padding: 0 10px;
opacity: 0.7;
.transition(all 0.2s ease-in-out);
}
.bar-highlight {
background-color: rgba(255,255,255,0.1);
opacity: 1.0;
}
@bar-sep-border: 1px solid rgba(255,255,255,0.05);
.bar-button {
.bar-label;
cursor: pointer;
&:hover, &.hover {
.bar-highlight;
}
}
.bar-left {
float: left;
border-right: @bar-sep-border;
}
.bar-right {
float: right;
border-left: @bar-sep-border;
}
}
#pv-img-topbar {
position: fixed;
z-index: 5;
width: 100%;
left: 0;
top: 0;
.vert-gradient(rgb(37,37,37), rgb(24,24,24));
border-bottom: 1px solid rgb(27,27,27);
}
#pv-img-bottombar {
position: fixed;
z-index: 5;
width: 100%;
left: 0;
bottom: 0;
.vert-gradient(rgb(27,27,27), rgb(14,14,14));
border-top: 1px solid rgb(45,45,45);
}

View File

@@ -0,0 +1,154 @@
#pv-txt-overlay {
display: none;
position: fixed;
left: 0;
top: 0;
right: 0;
bottom: 0;
z-index: 100;
background-color: rgba(0,0,0,0.5);
text-align: center;
}
#pv-txt-content {
max-width: 960px;
margin: 0 auto;
padding: 10px;
background-color: #fff;
border: 2px solid #fff;
.border-radius(4px);
text-align: left;
overflow: auto;
position: relative;
}
#pv-txt-text {
.syntaxhighlighter {
overflow: visible !important;
.gutter .line {
border-right: none !important;
}
}
&.markdown {
font-size: 16px;
padding: 8px 24px;
a, a:active, a:visited {
color: #2080FF;
text-decoration: none;
cursor: pointer;
&:hover {
color: #68A9FF;
}
}
pre, code {
font-family: "Ubuntu Mono", monospace;
}
code {
color: #008200;
}
}
}
#pv-txt-close {
position: fixed;
left: 0;
top: 0;
width: 100%;
height: 100%;
cursor: pointer;
}
#pv-txt-prev {
position: fixed;
cursor: pointer;
}
#pv-txt-next {
position: fixed;
cursor: pointer;
}
#pv-txt-buttons, #pv-txt-topbuttons {
list-style: none;
list-style-image: none;
margin: 0;
padding: 0;
img {
position: relative;
top: -2px;
width: 16px;
height: 16px;
}
img + span, img + input {
margin-left: 6px;
}
input {
background-color: rgba(255,255,255,0.1);
border: none;
color: #ccc;
}
.bar-label {
display: block;
color: #ccc;
height: 30px;
line-height: 30px;
padding: 0 10px;
opacity: 0.7;
.transition(all 0.2s ease-in-out);
}
.bar-highlight {
background-color: rgba(255,255,255,0.1);
opacity: 1.0;
}
@bar-sep-border: 1px solid rgba(255,255,255,0.05);
.bar-button {
.bar-label;
cursor: pointer;
&:hover, &.hover {
.bar-highlight;
}
}
.bar-left {
float: left;
border-right: @bar-sep-border;
}
.bar-right {
float: right;
border-left: @bar-sep-border;
}
}
#pv-txt-topbar {
position: fixed;
z-index: 5;
width: 100%;
left: 0;
top: 0;
.vert-gradient(rgb(37,37,37), rgb(24,24,24));
border-bottom: 1px solid rgb(27,27,27);
}
#pv-txt-bottombar {
position: fixed;
z-index: 5;
width: 100%;
left: 0;
bottom: 0;
.vert-gradient(rgb(27,27,27), rgb(14,14,14));
border-top: 1px solid rgb(45,45,45);
}

View File

@@ -0,0 +1,57 @@
@media only screen and (max-width: 500px) {
#topbar {
.view span {
display: none;
}
}
#extended.view-icons {
padding: 0;
border: none;
margin: 0 -14px;
}
}
@media only screen and (max-width: 350px) {
#topbar {
.crumb {
display: none;
}
.current {
display: block;
}
}
#extended.view-details {
.header .label, .entry .label {
margin-right: 110px;
}
.header .date, .entry .date {
display: none;
}
}
#bottombar {
.center {
display: none;
}
}
}
@media print {
a[href]:after {
content: "";
}
#topbar {
position: static;
margin-bottom: 2em;
.view, #download {
display: none;
}
}
#bottombar {
position: static;
margin-top: 2em;
}
#tree {
display: none !important;
}
}

View File

@@ -0,0 +1,88 @@
#topbar {
position: fixed;
z-index: 5;
width: 100%;
left: 0;
top: 0;
.vert-gradient(rgb(241,241,241), rgb(228,228,228));
border-bottom: 1px solid rgb(210,210,210);
}
.topbar-highlight {
background-color: rgba(255,255,255,0.5);
opacity: 1.0;
}
.topbar-hover {
.topbar-highlight;
color: #e80;
}
@topbar-sep-border: 1px solid rgba(0,0,0,0.05);
.topbar-left {
float: left;
border-right: @topbar-sep-border;
}
.topbar-right {
float: right;
border-left: @topbar-sep-border;
}
#navbar {
list-style: none;
list-style-image: none;
margin: 0;
padding: 0;
a, a:active, a:visited, span.element {
color: #555;
cursor: pointer;
text-decoration: none;
opacity: 0.7;
.transition(all 0.2s ease-in-out);
display: block;
height: 30px;
line-height: 30px;
padding: 0 10px;
&:hover, &.hover {
.topbar-hover;
}
}
.current {
a, span.element {
.topbar-highlight;
}
}
img {
position: relative;
top: -2px;
width: 16px;
height: 16px;
}
img + span, img + input {
margin-left: 6px;
}
.crumb {
.topbar-left;
.hint {
margin-left: 8px;
font-style: italic;
color: #999;
}
img.hint {
width: 14px;
height: 14px;
opacity: 0.8;
}
}
.view {
.topbar-right;
}
}

123
src/_h5ai/css/inc/tree.less Normal file
View File

@@ -0,0 +1,123 @@
#tree {
display: none;
position: fixed;
left: 0;
top: 31px;
height: 100%;
z-index: 3;
overflow: auto;
padding: 8px;
background-color: rgb(241,241,241);
border-right: 2px solid rgb(221,221,221);
.sp-scrollbar {
margin: 8px 8px 8px 0;
width: 6px;
background-color: rgb(210,210,210);
.border-radius(3px);
cursor: pointer;
.sp-thumb {
background-color: rgb(180,180,180);
.border-radius(3px);
}
&.active .sp-thumb {
background-color: rgb(150,150,150);
}
}
.entry {
.indicator {
display: inline-block;
width: 16px;
height: 25px;
float: left;
img {
position: relative;
left: 0;
top: 3px;
width: 12px;
height: 12px;
vertical-align: bottom;
.transition(all 0.2s ease-in-out);
}
&.open {
cursor: pointer;
opacity: 0.7;
img {
.transform(rotate(90deg));
}
}
&.close {
cursor: pointer;
opacity: 0.7;
}
&.unknown {
cursor: pointer;
opacity: 0.3;
}
&.none {
opacity: 0;
}
}
> a, > a:active, > a.visited {
margin-left: 16px;
padding: 4px 6px;
border: 1px solid rgba(0,0,0,0);
.border-radius(5px);
display: block;
color: #555;
text-decoration: none;
opacity: 0.7;
&:hover, &.hover {
color: #e80;
background-color: rgba(255,255,255,0.5);
opacity: 1;
}
.label {
display: inline-block;
}
.icon {
display: inline-block;
width: 20px;
img {
width: 16px;
height: 16px;
vertical-align: bottom;
}
}
.hint {
display: inline-block;
margin-left: 12px;
font-size: 0.9em;
color: #ccc;
}
}
&.current {
> a, > a:active, > a:visited {
border: 1px solid rgb(221,221,221);
background-color: rgba(255,255,255,0.5);
opacity: 1;
}
}
&.error {
> a, > a:active, > a:visited {
color: #999;
&:hover, &.hover {
color: #e80;
}
}
.hint {
color: #c55;
}
}
.content, ul.content {
list-style: none;
margin: 0;
padding: 0 0 0 24px;
}
}
}

View File

@@ -0,0 +1,294 @@
/*
* HTML5 ✰ Boilerplate
*
* What follows is the result of much research on cross-browser styling.
* Credit left inline and big thanks to Nicolas Gallagher, Jonathan Neal,
* Kroc Camen, and the H5BP dev community and team.
*
* Detailed information about this CSS: h5bp.com/css
*
* ==|== normalize ==========================================================
*/
/* =============================================================================
HTML5 display definitions
========================================================================== */
article, aside, details, figcaption, figure, footer, header, hgroup, nav, section { display: block; }
audio, canvas, video { display: inline-block; *display: inline; *zoom: 1; }
audio:not([controls]) { display: none; }
[hidden] { display: none; }
/* =============================================================================
Base
========================================================================== */
/*
* 1. Correct text resizing oddly in IE6/7 when body font-size is set using em units
* 2. Force vertical scrollbar in non-IE
* 3. Prevent iOS text size adjust on device orientation change, without disabling user zoom: h5bp.com/g
*/
html { font-size: 100%; overflow-y: scroll; -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%; }
body { margin: 0; font-size: 13px; line-height: 1.231; }
body, button, input, select, textarea { font-family: sans-serif; color: #222; }
/*
* Remove text-shadow in selection highlight: h5bp.com/i
* These selection declarations have to be separate
* Also: hot pink! (or customize the background color to match your design)
*/
::-moz-selection { background: #fe57a1; color: #fff; text-shadow: none; }
::selection { background: #fe57a1; color: #fff; text-shadow: none; }
/* =============================================================================
Links
========================================================================== */
a { color: #00e; }
a:visited { color: #551a8b; }
a:hover { color: #06e; }
a:focus { outline: thin dotted; }
/* Improve readability when focused and hovered in all browsers: h5bp.com/h */
a:hover, a:active { outline: 0; }
/* =============================================================================
Typography
========================================================================== */
abbr[title] { border-bottom: 1px dotted; }
b, strong { font-weight: bold; }
blockquote { margin: 1em 40px; }
dfn { font-style: italic; }
hr { display: block; height: 1px; border: 0; border-top: 1px solid #ccc; margin: 1em 0; padding: 0; }
ins { background: #ff9; color: #000; text-decoration: none; }
mark { background: #ff0; color: #000; font-style: italic; font-weight: bold; }
/* Redeclare monospace font family: h5bp.com/j */
pre, code, kbd, samp { font-family: monospace, serif; _font-family: 'courier new', monospace; font-size: 1em; }
/* Improve readability of pre-formatted text in all browsers */
pre { white-space: pre; white-space: pre-wrap; word-wrap: break-word; }
q { quotes: none; }
q:before, q:after { content: ""; content: none; }
small { font-size: 85%; }
/* Position subscript and superscript content without affecting line-height: h5bp.com/k */
sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; }
sup { top: -0.5em; }
sub { bottom: -0.25em; }
/* =============================================================================
Lists
========================================================================== */
ul, ol { margin: 1em 0; padding: 0 0 0 40px; }
dd { margin: 0 0 0 40px; }
nav ul, nav ol { list-style: none; list-style-image: none; margin: 0; padding: 0; }
/* =============================================================================
Embedded content
========================================================================== */
/*
* 1. Improve image quality when scaled in IE7: h5bp.com/d
* 2. Remove the gap between images and borders on image containers: h5bp.com/e
*/
img { border: 0; -ms-interpolation-mode: bicubic; vertical-align: middle; }
/*
* Correct overflow not hidden in IE9
*/
svg:not(:root) { overflow: hidden; }
/* =============================================================================
Figures
========================================================================== */
figure { margin: 0; }
/* =============================================================================
Forms
========================================================================== */
form { margin: 0; }
fieldset { border: 0; margin: 0; padding: 0; }
/* Indicate that 'label' will shift focus to the associated form element */
label { cursor: pointer; }
/*
* 1. Correct color not inheriting in IE6/7/8/9
* 2. Correct alignment displayed oddly in IE6/7
*/
legend { border: 0; *margin-left: -7px; padding: 0; }
/*
* 1. Correct font-size not inheriting in all browsers
* 2. Remove margins in FF3/4 S5 Chrome
* 3. Define consistent vertical alignment display in all browsers
*/
button, input, select, textarea { font-size: 100%; margin: 0; vertical-align: baseline; *vertical-align: middle; }
/*
* 1. Define line-height as normal to match FF3/4 (set using !important in the UA stylesheet)
* 2. Correct inner spacing displayed oddly in IE6/7
*/
button, input { line-height: normal; *overflow: visible; }
/*
* Reintroduce inner spacing in 'table' to avoid overlap and whitespace issues in IE6/7
*/
table button, table input { *overflow: auto; }
/*
* 1. Display hand cursor for clickable form elements
* 2. Allow styling of clickable form elements in iOS
*/
button, input[type="button"], input[type="reset"], input[type="submit"] { cursor: pointer; -webkit-appearance: button; }
/*
* Consistent box sizing and appearance
*/
input[type="checkbox"], input[type="radio"] { box-sizing: border-box; }
input[type="search"] { -webkit-appearance: textfield; -moz-box-sizing: content-box; -webkit-box-sizing: content-box; box-sizing: content-box; }
input[type="search"]::-webkit-search-decoration { -webkit-appearance: none; }
/*
* Remove inner padding and border in FF3/4: h5bp.com/l
*/
button::-moz-focus-inner, input::-moz-focus-inner { border: 0; padding: 0; }
/*
* 1. Remove default vertical scrollbar in IE6/7/8/9
* 2. Allow only vertical resizing
*/
textarea { overflow: auto; vertical-align: top; resize: vertical; }
/* Colors for form validity */
input:valid, textarea:valid { }
input:invalid, textarea:invalid { background-color: #f0dddd; }
/* =============================================================================
Tables
========================================================================== */
table { border-collapse: collapse; border-spacing: 0; }
td { vertical-align: top; }
/* ==|== primary styles =====================================================
Author:
========================================================================== */
/* ==|== non-semantic helper classes ========================================
Please define your styles before this section.
========================================================================== */
/* For image replacement */
.ir { display: block; border: 0; text-indent: -999em; overflow: hidden; background-color: transparent; background-repeat: no-repeat; text-align: left; direction: ltr; }
.ir br { display: none; }
/* Hide from both screenreaders and browsers: h5bp.com/u */
.hidden { display: none !important; visibility: hidden; }
/* Hide only visually, but have it available for screenreaders: h5bp.com/v */
.visuallyhidden { border: 0; clip: rect(0 0 0 0); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; }
/* Extends the .visuallyhidden class to allow the element to be focusable when navigated to via the keyboard: h5bp.com/p */
.visuallyhidden.focusable:active, .visuallyhidden.focusable:focus { clip: auto; height: auto; margin: 0; overflow: visible; position: static; width: auto; }
/* Hide visually and from screenreaders, but maintain layout */
.invisible { visibility: hidden; }
/* Contain floats: h5bp.com/q */
.clearfix:before, .clearfix:after { content: ""; display: table; }
.clearfix:after { clear: both; }
.clearfix { zoom: 1; }
/* ==|== media queries ======================================================
PLACEHOLDER Media Queries for Responsive Design.
These override the primary ('mobile first') styles
Modify as content requires.
========================================================================== */
@media only screen and (min-width: 480px) {
/* Style adjustments for viewports 480px and over go here */
}
@media only screen and (min-width: 768px) {
/* Style adjustments for viewports 768px and over go here */
}
/* ==|== print styles =======================================================
Print styles.
Inlined to avoid required HTTP connection: h5bp.com/r
========================================================================== */
@media print {
* { background: transparent !important; color: black !important; text-shadow: none !important; filter:none !important; -ms-filter: none !important; } /* Black prints faster: h5bp.com/s */
a, a:visited { text-decoration: underline; }
a[href]:after { content: " (" attr(href) ")"; }
abbr[title]:after { content: " (" attr(title) ")"; }
.ir a:after, a[href^="javascript:"]:after, a[href^="#"]:after { content: ""; } /* Don't show links for images, or javascript/internal links */
pre, blockquote { border: 1px solid #999; page-break-inside: avoid; }
thead { display: table-header-group; } /* h5bp.com/t */
tr, img { page-break-inside: avoid; }
img { max-width: 100% !important; }
@page { margin: 0.5cm; }
p, h2, h3 { orphans: 3; widows: 3; }
h2, h3 { page-break-after: avoid; }
}

View 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 */
}

View 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;
}

View 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;
}

View File

@@ -0,0 +1,120 @@
/**
* SyntaxHighlighter
* http://alexgorbatchev.com/SyntaxHighlighter
*
* SyntaxHighlighter is donationware. If you are using it, please donate.
* http://alexgorbatchev.com/SyntaxHighlighter/donate.html
*
* @version
* 3.0.83 (July 02 2010)
*
* @copyright
* Copyright (C) 2004-2010 Alex Gorbatchev.
*
* @license
* Dual licensed under the MIT and GPL licenses.
*/
.syntaxhighlighter {
background-color: #0a2b1d !important;
}
.syntaxhighlighter .line.alt1 {
background-color: #0a2b1d !important;
}
.syntaxhighlighter .line.alt2 {
background-color: #0a2b1d !important;
}
.syntaxhighlighter .line.highlighted.alt1, .syntaxhighlighter .line.highlighted.alt2 {
background-color: #233729 !important;
}
.syntaxhighlighter .line.highlighted.number {
color: white !important;
}
.syntaxhighlighter table caption {
color: #f8f8f8 !important;
}
.syntaxhighlighter .gutter {
color: #497958 !important;
}
.syntaxhighlighter .gutter .line {
border-right: 3px solid #41a83e !important;
}
.syntaxhighlighter .gutter .line.highlighted {
background-color: #41a83e !important;
color: #0a2b1d !important;
}
.syntaxhighlighter.printing .line .content {
border: none !important;
}
.syntaxhighlighter.collapsed {
overflow: visible !important;
}
.syntaxhighlighter.collapsed .toolbar {
color: #96dd3b !important;
background: black !important;
border: 1px solid #41a83e !important;
}
.syntaxhighlighter.collapsed .toolbar a {
color: #96dd3b !important;
}
.syntaxhighlighter.collapsed .toolbar a:hover {
color: white !important;
}
.syntaxhighlighter .toolbar {
color: white !important;
background: #41a83e !important;
border: none !important;
}
.syntaxhighlighter .toolbar a {
color: white !important;
}
.syntaxhighlighter .toolbar a:hover {
color: #ffe862 !important;
}
.syntaxhighlighter .plain, .syntaxhighlighter .plain a {
color: #f8f8f8 !important;
}
.syntaxhighlighter .comments, .syntaxhighlighter .comments a {
color: #336442 !important;
}
.syntaxhighlighter .string, .syntaxhighlighter .string a {
color: #9df39f !important;
}
.syntaxhighlighter .keyword {
color: #96dd3b !important;
}
.syntaxhighlighter .preprocessor {
color: #91bb9e !important;
}
.syntaxhighlighter .variable {
color: #ffaa3e !important;
}
.syntaxhighlighter .value {
color: #f7e741 !important;
}
.syntaxhighlighter .functions {
color: #ffaa3e !important;
}
.syntaxhighlighter .constants {
color: #e0e8ff !important;
}
.syntaxhighlighter .script {
font-weight: bold !important;
color: #96dd3b !important;
background-color: none !important;
}
.syntaxhighlighter .color1, .syntaxhighlighter .color1 a {
color: #eb939a !important;
}
.syntaxhighlighter .color2, .syntaxhighlighter .color2 a {
color: #91bb9e !important;
}
.syntaxhighlighter .color3, .syntaxhighlighter .color3 a {
color: #edef7d !important;
}
.syntaxhighlighter .comments {
font-style: italic !important;
}
.syntaxhighlighter .keyword {
font-weight: bold !important;
}

View File

@@ -0,0 +1,128 @@
/**
* SyntaxHighlighter
* http://alexgorbatchev.com/SyntaxHighlighter
*
* SyntaxHighlighter is donationware. If you are using it, please donate.
* http://alexgorbatchev.com/SyntaxHighlighter/donate.html
*
* @version
* 3.0.83 (July 02 2010)
*
* @copyright
* Copyright (C) 2004-2010 Alex Gorbatchev.
*
* @license
* Dual licensed under the MIT and GPL licenses.
*/
.syntaxhighlighter {
background-color: white !important;
}
.syntaxhighlighter .line.alt1 {
background-color: white !important;
}
.syntaxhighlighter .line.alt2 {
background-color: white !important;
}
.syntaxhighlighter .line.highlighted.alt1, .syntaxhighlighter .line.highlighted.alt2 {
background-color: #c3defe !important;
}
.syntaxhighlighter .line.highlighted.number {
color: white !important;
}
.syntaxhighlighter table caption {
color: black !important;
}
.syntaxhighlighter .gutter {
color: #787878 !important;
}
.syntaxhighlighter .gutter .line {
border-right: 3px solid #d4d0c8 !important;
}
.syntaxhighlighter .gutter .line.highlighted {
background-color: #d4d0c8 !important;
color: white !important;
}
.syntaxhighlighter.printing .line .content {
border: none !important;
}
.syntaxhighlighter.collapsed {
overflow: visible !important;
}
.syntaxhighlighter.collapsed .toolbar {
color: #3f5fbf !important;
background: white !important;
border: 1px solid #d4d0c8 !important;
}
.syntaxhighlighter.collapsed .toolbar a {
color: #3f5fbf !important;
}
.syntaxhighlighter.collapsed .toolbar a:hover {
color: #aa7700 !important;
}
.syntaxhighlighter .toolbar {
color: #a0a0a0 !important;
background: #d4d0c8 !important;
border: none !important;
}
.syntaxhighlighter .toolbar a {
color: #a0a0a0 !important;
}
.syntaxhighlighter .toolbar a:hover {
color: red !important;
}
.syntaxhighlighter .plain, .syntaxhighlighter .plain a {
color: black !important;
}
.syntaxhighlighter .comments, .syntaxhighlighter .comments a {
color: #3f5fbf !important;
}
.syntaxhighlighter .string, .syntaxhighlighter .string a {
color: #2a00ff !important;
}
.syntaxhighlighter .keyword {
color: #7f0055 !important;
}
.syntaxhighlighter .preprocessor {
color: #646464 !important;
}
.syntaxhighlighter .variable {
color: #aa7700 !important;
}
.syntaxhighlighter .value {
color: #009900 !important;
}
.syntaxhighlighter .functions {
color: #ff1493 !important;
}
.syntaxhighlighter .constants {
color: #0066cc !important;
}
.syntaxhighlighter .script {
font-weight: bold !important;
color: #7f0055 !important;
background-color: none !important;
}
.syntaxhighlighter .color1, .syntaxhighlighter .color1 a {
color: gray !important;
}
.syntaxhighlighter .color2, .syntaxhighlighter .color2 a {
color: #ff1493 !important;
}
.syntaxhighlighter .color3, .syntaxhighlighter .color3 a {
color: red !important;
}
.syntaxhighlighter .keyword {
font-weight: bold !important;
}
.syntaxhighlighter .xml .keyword {
color: #3f7f7f !important;
font-weight: normal !important;
}
.syntaxhighlighter .xml .color1, .syntaxhighlighter .xml .color1 a {
color: #7f007f !important;
}
.syntaxhighlighter .xml .string {
font-style: italic !important;
color: #2a00ff !important;
}

View File

@@ -0,0 +1,113 @@
/**
* SyntaxHighlighter
* http://alexgorbatchev.com/SyntaxHighlighter
*
* SyntaxHighlighter is donationware. If you are using it, please donate.
* http://alexgorbatchev.com/SyntaxHighlighter/donate.html
*
* @version
* 3.0.83 (July 02 2010)
*
* @copyright
* Copyright (C) 2004-2010 Alex Gorbatchev.
*
* @license
* Dual licensed under the MIT and GPL licenses.
*/
.syntaxhighlighter {
background-color: black !important;
}
.syntaxhighlighter .line.alt1 {
background-color: black !important;
}
.syntaxhighlighter .line.alt2 {
background-color: black !important;
}
.syntaxhighlighter .line.highlighted.alt1, .syntaxhighlighter .line.highlighted.alt2 {
background-color: #2a3133 !important;
}
.syntaxhighlighter .line.highlighted.number {
color: white !important;
}
.syntaxhighlighter table caption {
color: #d3d3d3 !important;
}
.syntaxhighlighter .gutter {
color: #d3d3d3 !important;
}
.syntaxhighlighter .gutter .line {
border-right: 3px solid #990000 !important;
}
.syntaxhighlighter .gutter .line.highlighted {
background-color: #990000 !important;
color: black !important;
}
.syntaxhighlighter.printing .line .content {
border: none !important;
}
.syntaxhighlighter.collapsed {
overflow: visible !important;
}
.syntaxhighlighter.collapsed .toolbar {
color: #ebdb8d !important;
background: black !important;
border: 1px solid #990000 !important;
}
.syntaxhighlighter.collapsed .toolbar a {
color: #ebdb8d !important;
}
.syntaxhighlighter.collapsed .toolbar a:hover {
color: #ff7d27 !important;
}
.syntaxhighlighter .toolbar {
color: white !important;
background: #990000 !important;
border: none !important;
}
.syntaxhighlighter .toolbar a {
color: white !important;
}
.syntaxhighlighter .toolbar a:hover {
color: #9ccff4 !important;
}
.syntaxhighlighter .plain, .syntaxhighlighter .plain a {
color: #d3d3d3 !important;
}
.syntaxhighlighter .comments, .syntaxhighlighter .comments a {
color: #ff7d27 !important;
}
.syntaxhighlighter .string, .syntaxhighlighter .string a {
color: #ff9e7b !important;
}
.syntaxhighlighter .keyword {
color: aqua !important;
}
.syntaxhighlighter .preprocessor {
color: #aec4de !important;
}
.syntaxhighlighter .variable {
color: #ffaa3e !important;
}
.syntaxhighlighter .value {
color: #009900 !important;
}
.syntaxhighlighter .functions {
color: #81cef9 !important;
}
.syntaxhighlighter .constants {
color: #ff9e7b !important;
}
.syntaxhighlighter .script {
font-weight: bold !important;
color: aqua !important;
background-color: none !important;
}
.syntaxhighlighter .color1, .syntaxhighlighter .color1 a {
color: #ebdb8d !important;
}
.syntaxhighlighter .color2, .syntaxhighlighter .color2 a {
color: #ff7d27 !important;
}
.syntaxhighlighter .color3, .syntaxhighlighter .color3 a {
color: #aec4de !important;
}

View File

@@ -0,0 +1,117 @@
/**
* SyntaxHighlighter
* http://alexgorbatchev.com/SyntaxHighlighter
*
* SyntaxHighlighter is donationware. If you are using it, please donate.
* http://alexgorbatchev.com/SyntaxHighlighter/donate.html
*
* @version
* 3.0.83 (July 02 2010)
*
* @copyright
* Copyright (C) 2004-2010 Alex Gorbatchev.
*
* @license
* Dual licensed under the MIT and GPL licenses.
*/
.syntaxhighlighter {
background-color: #121212 !important;
}
.syntaxhighlighter .line.alt1 {
background-color: #121212 !important;
}
.syntaxhighlighter .line.alt2 {
background-color: #121212 !important;
}
.syntaxhighlighter .line.highlighted.alt1, .syntaxhighlighter .line.highlighted.alt2 {
background-color: #2c2c29 !important;
}
.syntaxhighlighter .line.highlighted.number {
color: white !important;
}
.syntaxhighlighter table caption {
color: white !important;
}
.syntaxhighlighter .gutter {
color: #afafaf !important;
}
.syntaxhighlighter .gutter .line {
border-right: 3px solid #3185b9 !important;
}
.syntaxhighlighter .gutter .line.highlighted {
background-color: #3185b9 !important;
color: #121212 !important;
}
.syntaxhighlighter.printing .line .content {
border: none !important;
}
.syntaxhighlighter.collapsed {
overflow: visible !important;
}
.syntaxhighlighter.collapsed .toolbar {
color: #3185b9 !important;
background: black !important;
border: 1px solid #3185b9 !important;
}
.syntaxhighlighter.collapsed .toolbar a {
color: #3185b9 !important;
}
.syntaxhighlighter.collapsed .toolbar a:hover {
color: #d01d33 !important;
}
.syntaxhighlighter .toolbar {
color: white !important;
background: #3185b9 !important;
border: none !important;
}
.syntaxhighlighter .toolbar a {
color: white !important;
}
.syntaxhighlighter .toolbar a:hover {
color: #96daff !important;
}
.syntaxhighlighter .plain, .syntaxhighlighter .plain a {
color: white !important;
}
.syntaxhighlighter .comments, .syntaxhighlighter .comments a {
color: #696854 !important;
}
.syntaxhighlighter .string, .syntaxhighlighter .string a {
color: #e3e658 !important;
}
.syntaxhighlighter .keyword {
color: #d01d33 !important;
}
.syntaxhighlighter .preprocessor {
color: #435a5f !important;
}
.syntaxhighlighter .variable {
color: #898989 !important;
}
.syntaxhighlighter .value {
color: #009900 !important;
}
.syntaxhighlighter .functions {
color: #aaaaaa !important;
}
.syntaxhighlighter .constants {
color: #96daff !important;
}
.syntaxhighlighter .script {
font-weight: bold !important;
color: #d01d33 !important;
background-color: none !important;
}
.syntaxhighlighter .color1, .syntaxhighlighter .color1 a {
color: #ffc074 !important;
}
.syntaxhighlighter .color2, .syntaxhighlighter .color2 a {
color: #4a8cdb !important;
}
.syntaxhighlighter .color3, .syntaxhighlighter .color3 a {
color: #96daff !important;
}
.syntaxhighlighter .functions {
font-weight: bold !important;
}

View File

@@ -0,0 +1,113 @@
/**
* SyntaxHighlighter
* http://alexgorbatchev.com/SyntaxHighlighter
*
* SyntaxHighlighter is donationware. If you are using it, please donate.
* http://alexgorbatchev.com/SyntaxHighlighter/donate.html
*
* @version
* 3.0.83 (July 02 2010)
*
* @copyright
* Copyright (C) 2004-2010 Alex Gorbatchev.
*
* @license
* Dual licensed under the MIT and GPL licenses.
*/
.syntaxhighlighter {
background-color: #222222 !important;
}
.syntaxhighlighter .line.alt1 {
background-color: #222222 !important;
}
.syntaxhighlighter .line.alt2 {
background-color: #222222 !important;
}
.syntaxhighlighter .line.highlighted.alt1, .syntaxhighlighter .line.highlighted.alt2 {
background-color: #253e5a !important;
}
.syntaxhighlighter .line.highlighted.number {
color: white !important;
}
.syntaxhighlighter table caption {
color: lime !important;
}
.syntaxhighlighter .gutter {
color: #38566f !important;
}
.syntaxhighlighter .gutter .line {
border-right: 3px solid #435a5f !important;
}
.syntaxhighlighter .gutter .line.highlighted {
background-color: #435a5f !important;
color: #222222 !important;
}
.syntaxhighlighter.printing .line .content {
border: none !important;
}
.syntaxhighlighter.collapsed {
overflow: visible !important;
}
.syntaxhighlighter.collapsed .toolbar {
color: #428bdd !important;
background: black !important;
border: 1px solid #435a5f !important;
}
.syntaxhighlighter.collapsed .toolbar a {
color: #428bdd !important;
}
.syntaxhighlighter.collapsed .toolbar a:hover {
color: lime !important;
}
.syntaxhighlighter .toolbar {
color: #aaaaff !important;
background: #435a5f !important;
border: none !important;
}
.syntaxhighlighter .toolbar a {
color: #aaaaff !important;
}
.syntaxhighlighter .toolbar a:hover {
color: #9ccff4 !important;
}
.syntaxhighlighter .plain, .syntaxhighlighter .plain a {
color: lime !important;
}
.syntaxhighlighter .comments, .syntaxhighlighter .comments a {
color: #428bdd !important;
}
.syntaxhighlighter .string, .syntaxhighlighter .string a {
color: lime !important;
}
.syntaxhighlighter .keyword {
color: #aaaaff !important;
}
.syntaxhighlighter .preprocessor {
color: #8aa6c1 !important;
}
.syntaxhighlighter .variable {
color: aqua !important;
}
.syntaxhighlighter .value {
color: #f7e741 !important;
}
.syntaxhighlighter .functions {
color: #ff8000 !important;
}
.syntaxhighlighter .constants {
color: yellow !important;
}
.syntaxhighlighter .script {
font-weight: bold !important;
color: #aaaaff !important;
background-color: none !important;
}
.syntaxhighlighter .color1, .syntaxhighlighter .color1 a {
color: red !important;
}
.syntaxhighlighter .color2, .syntaxhighlighter .color2 a {
color: yellow !important;
}
.syntaxhighlighter .color3, .syntaxhighlighter .color3 a {
color: #ffaa3e !important;
}

View File

@@ -0,0 +1,113 @@
/**
* SyntaxHighlighter
* http://alexgorbatchev.com/SyntaxHighlighter
*
* SyntaxHighlighter is donationware. If you are using it, please donate.
* http://alexgorbatchev.com/SyntaxHighlighter/donate.html
*
* @version
* 3.0.83 (July 02 2010)
*
* @copyright
* Copyright (C) 2004-2010 Alex Gorbatchev.
*
* @license
* Dual licensed under the MIT and GPL licenses.
*/
.syntaxhighlighter {
background-color: #0f192a !important;
}
.syntaxhighlighter .line.alt1 {
background-color: #0f192a !important;
}
.syntaxhighlighter .line.alt2 {
background-color: #0f192a !important;
}
.syntaxhighlighter .line.highlighted.alt1, .syntaxhighlighter .line.highlighted.alt2 {
background-color: #253e5a !important;
}
.syntaxhighlighter .line.highlighted.number {
color: #38566f !important;
}
.syntaxhighlighter table caption {
color: #d1edff !important;
}
.syntaxhighlighter .gutter {
color: #afafaf !important;
}
.syntaxhighlighter .gutter .line {
border-right: 3px solid #435a5f !important;
}
.syntaxhighlighter .gutter .line.highlighted {
background-color: #435a5f !important;
color: #0f192a !important;
}
.syntaxhighlighter.printing .line .content {
border: none !important;
}
.syntaxhighlighter.collapsed {
overflow: visible !important;
}
.syntaxhighlighter.collapsed .toolbar {
color: #428bdd !important;
background: black !important;
border: 1px solid #435a5f !important;
}
.syntaxhighlighter.collapsed .toolbar a {
color: #428bdd !important;
}
.syntaxhighlighter.collapsed .toolbar a:hover {
color: #1dc116 !important;
}
.syntaxhighlighter .toolbar {
color: #d1edff !important;
background: #435a5f !important;
border: none !important;
}
.syntaxhighlighter .toolbar a {
color: #d1edff !important;
}
.syntaxhighlighter .toolbar a:hover {
color: #8aa6c1 !important;
}
.syntaxhighlighter .plain, .syntaxhighlighter .plain a {
color: #d1edff !important;
}
.syntaxhighlighter .comments, .syntaxhighlighter .comments a {
color: #428bdd !important;
}
.syntaxhighlighter .string, .syntaxhighlighter .string a {
color: #1dc116 !important;
}
.syntaxhighlighter .keyword {
color: #b43d3d !important;
}
.syntaxhighlighter .preprocessor {
color: #8aa6c1 !important;
}
.syntaxhighlighter .variable {
color: #ffaa3e !important;
}
.syntaxhighlighter .value {
color: #f7e741 !important;
}
.syntaxhighlighter .functions {
color: #ffaa3e !important;
}
.syntaxhighlighter .constants {
color: #e0e8ff !important;
}
.syntaxhighlighter .script {
font-weight: bold !important;
color: #b43d3d !important;
background-color: none !important;
}
.syntaxhighlighter .color1, .syntaxhighlighter .color1 a {
color: #f8bb00 !important;
}
.syntaxhighlighter .color2, .syntaxhighlighter .color2 a {
color: white !important;
}
.syntaxhighlighter .color3, .syntaxhighlighter .color3 a {
color: #ffaa3e !important;
}

View File

@@ -0,0 +1,113 @@
/**
* SyntaxHighlighter
* http://alexgorbatchev.com/SyntaxHighlighter
*
* SyntaxHighlighter is donationware. If you are using it, please donate.
* http://alexgorbatchev.com/SyntaxHighlighter/donate.html
*
* @version
* 3.0.83 (July 02 2010)
*
* @copyright
* Copyright (C) 2004-2010 Alex Gorbatchev.
*
* @license
* Dual licensed under the MIT and GPL licenses.
*/
.syntaxhighlighter {
background-color: #1b2426 !important;
}
.syntaxhighlighter .line.alt1 {
background-color: #1b2426 !important;
}
.syntaxhighlighter .line.alt2 {
background-color: #1b2426 !important;
}
.syntaxhighlighter .line.highlighted.alt1, .syntaxhighlighter .line.highlighted.alt2 {
background-color: #323e41 !important;
}
.syntaxhighlighter .line.highlighted.number {
color: #b9bdb6 !important;
}
.syntaxhighlighter table caption {
color: #b9bdb6 !important;
}
.syntaxhighlighter .gutter {
color: #afafaf !important;
}
.syntaxhighlighter .gutter .line {
border-right: 3px solid #435a5f !important;
}
.syntaxhighlighter .gutter .line.highlighted {
background-color: #435a5f !important;
color: #1b2426 !important;
}
.syntaxhighlighter.printing .line .content {
border: none !important;
}
.syntaxhighlighter.collapsed {
overflow: visible !important;
}
.syntaxhighlighter.collapsed .toolbar {
color: #5ba1cf !important;
background: black !important;
border: 1px solid #435a5f !important;
}
.syntaxhighlighter.collapsed .toolbar a {
color: #5ba1cf !important;
}
.syntaxhighlighter.collapsed .toolbar a:hover {
color: #5ce638 !important;
}
.syntaxhighlighter .toolbar {
color: white !important;
background: #435a5f !important;
border: none !important;
}
.syntaxhighlighter .toolbar a {
color: white !important;
}
.syntaxhighlighter .toolbar a:hover {
color: #e0e8ff !important;
}
.syntaxhighlighter .plain, .syntaxhighlighter .plain a {
color: #b9bdb6 !important;
}
.syntaxhighlighter .comments, .syntaxhighlighter .comments a {
color: #878a85 !important;
}
.syntaxhighlighter .string, .syntaxhighlighter .string a {
color: #5ce638 !important;
}
.syntaxhighlighter .keyword {
color: #5ba1cf !important;
}
.syntaxhighlighter .preprocessor {
color: #435a5f !important;
}
.syntaxhighlighter .variable {
color: #ffaa3e !important;
}
.syntaxhighlighter .value {
color: #009900 !important;
}
.syntaxhighlighter .functions {
color: #ffaa3e !important;
}
.syntaxhighlighter .constants {
color: #e0e8ff !important;
}
.syntaxhighlighter .script {
font-weight: bold !important;
color: #5ba1cf !important;
background-color: none !important;
}
.syntaxhighlighter .color1, .syntaxhighlighter .color1 a {
color: #e0e8ff !important;
}
.syntaxhighlighter .color2, .syntaxhighlighter .color2 a {
color: white !important;
}
.syntaxhighlighter .color3, .syntaxhighlighter .color3 a {
color: #ffaa3e !important;
}

52
src/_h5ai/css/styles.less Normal file
View File

@@ -0,0 +1,52 @@
@import "lib/h5bp-norm";
@import "lib/mixins";
@import "lib/sh/shCore";
@import "lib/sh/shThemeDefault";
html { overflow-y: auto; }
::-moz-selection { background: #68A9FF; color: #fff; text-shadow: none; }
::selection { background: #68A9FF; color: #fff; text-shadow: none; }
body {
font-family: Ubuntu, sans-serif;
font-size: 13px;
color: #555;
background-color: #fff;
margin: 30px;
}
@import "inc/topbar";
@import "inc/download";
@import "inc/filter";
@import "inc/content";
@import "inc/extended";
@import "inc/bottombar";
@import "inc/l10n";
@import "inc/tree";
@import "inc/context";
@import "inc/apache-autoindex-table";
@import "inc/preview-img";
@import "inc/preview-txt";
@import "inc/responsive";
@import "inc/h5ai-info";
html.js .hideOnJs, html.no-js .hideOnNoJs {
display: none;
}
html.oldie {
.oldBrowser {
display: inline !important;
}
#tree {
display: none !important;
}
}

View File

Before

Width:  |  Height:  |  Size: 551 B

After

Width:  |  Height:  |  Size: 551 B

View File

Before

Width:  |  Height:  |  Size: 554 B

After

Width:  |  Height:  |  Size: 554 B

View File

Before

Width:  |  Height:  |  Size: 492 B

After

Width:  |  Height:  |  Size: 492 B

View File

Before

Width:  |  Height:  |  Size: 551 B

After

Width:  |  Height:  |  Size: 551 B

View File

Before

Width:  |  Height:  |  Size: 227 B

After

Width:  |  Height:  |  Size: 227 B

View File

Before

Width:  |  Height:  |  Size: 663 B

After

Width:  |  Height:  |  Size: 663 B

View File

Before

Width:  |  Height:  |  Size: 554 B

After

Width:  |  Height:  |  Size: 554 B

View File

Before

Width:  |  Height:  |  Size: 506 B

After

Width:  |  Height:  |  Size: 506 B

View File

Before

Width:  |  Height:  |  Size: 757 B

After

Width:  |  Height:  |  Size: 757 B

View File

Before

Width:  |  Height:  |  Size: 699 B

After

Width:  |  Height:  |  Size: 699 B

View File

Before

Width:  |  Height:  |  Size: 599 B

After

Width:  |  Height:  |  Size: 599 B

View File

Before

Width:  |  Height:  |  Size: 592 B

After

Width:  |  Height:  |  Size: 592 B

View File

Before

Width:  |  Height:  |  Size: 671 B

After

Width:  |  Height:  |  Size: 671 B

View File

Before

Width:  |  Height:  |  Size: 311 B

After

Width:  |  Height:  |  Size: 311 B

View File

Before

Width:  |  Height:  |  Size: 535 B

After

Width:  |  Height:  |  Size: 535 B

View File

Before

Width:  |  Height:  |  Size: 679 B

After

Width:  |  Height:  |  Size: 679 B

View File

Before

Width:  |  Height:  |  Size: 619 B

After

Width:  |  Height:  |  Size: 619 B

View File

Before

Width:  |  Height:  |  Size: 846 B

After

Width:  |  Height:  |  Size: 846 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 618 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 431 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 591 B

View File

Before

Width:  |  Height:  |  Size: 494 B

After

Width:  |  Height:  |  Size: 494 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 395 B

View File

Before

Width:  |  Height:  |  Size: 655 B

After

Width:  |  Height:  |  Size: 655 B

View File

Before

Width:  |  Height:  |  Size: 551 B

After

Width:  |  Height:  |  Size: 551 B

View File

Before

Width:  |  Height:  |  Size: 504 B

After

Width:  |  Height:  |  Size: 504 B

View File

Before

Width:  |  Height:  |  Size: 530 B

After

Width:  |  Height:  |  Size: 530 B

View File

Before

Width:  |  Height:  |  Size: 770 B

After

Width:  |  Height:  |  Size: 770 B

View File

Before

Width:  |  Height:  |  Size: 792 B

After

Width:  |  Height:  |  Size: 792 B

View File

Before

Width:  |  Height:  |  Size: 671 B

After

Width:  |  Height:  |  Size: 671 B

View File

Before

Width:  |  Height:  |  Size: 788 B

After

Width:  |  Height:  |  Size: 788 B

View File

Before

Width:  |  Height:  |  Size: 658 B

After

Width:  |  Height:  |  Size: 658 B

View File

Before

Width:  |  Height:  |  Size: 675 B

After

Width:  |  Height:  |  Size: 675 B

View File

Before

Width:  |  Height:  |  Size: 540 B

After

Width:  |  Height:  |  Size: 540 B

View File

Before

Width:  |  Height:  |  Size: 423 B

After

Width:  |  Height:  |  Size: 423 B

View File

Before

Width:  |  Height:  |  Size: 614 B

After

Width:  |  Height:  |  Size: 614 B

View File

Before

Width:  |  Height:  |  Size: 627 B

After

Width:  |  Height:  |  Size: 627 B

View File

Before

Width:  |  Height:  |  Size: 614 B

After

Width:  |  Height:  |  Size: 614 B

View File

Before

Width:  |  Height:  |  Size: 799 B

After

Width:  |  Height:  |  Size: 799 B

View File

Before

Width:  |  Height:  |  Size: 757 B

After

Width:  |  Height:  |  Size: 757 B

View File

Before

Width:  |  Height:  |  Size: 610 B

After

Width:  |  Height:  |  Size: 610 B

View File

Before

Width:  |  Height:  |  Size: 679 B

After

Width:  |  Height:  |  Size: 679 B

View File

Before

Width:  |  Height:  |  Size: 629 B

After

Width:  |  Height:  |  Size: 629 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 817 B

View File

Before

Width:  |  Height:  |  Size: 622 B

After

Width:  |  Height:  |  Size: 622 B

View File

Before

Width:  |  Height:  |  Size: 743 B

After

Width:  |  Height:  |  Size: 743 B

View File

Before

Width:  |  Height:  |  Size: 621 B

After

Width:  |  Height:  |  Size: 621 B

View File

Before

Width:  |  Height:  |  Size: 781 B

After

Width:  |  Height:  |  Size: 781 B

View File

Before

Width:  |  Height:  |  Size: 384 B

After

Width:  |  Height:  |  Size: 384 B

View File

Before

Width:  |  Height:  |  Size: 660 B

After

Width:  |  Height:  |  Size: 660 B

View File

Before

Width:  |  Height:  |  Size: 660 B

After

Width:  |  Height:  |  Size: 660 B

View File

Before

Width:  |  Height:  |  Size: 627 B

After

Width:  |  Height:  |  Size: 627 B

View File

Before

Width:  |  Height:  |  Size: 613 B

After

Width:  |  Height:  |  Size: 613 B

View File

Before

Width:  |  Height:  |  Size: 586 B

After

Width:  |  Height:  |  Size: 586 B

View File

Before

Width:  |  Height:  |  Size: 510 B

After

Width:  |  Height:  |  Size: 510 B

View File

Before

Width:  |  Height:  |  Size: 406 B

After

Width:  |  Height:  |  Size: 406 B

View File

Before

Width:  |  Height:  |  Size: 677 B

After

Width:  |  Height:  |  Size: 677 B

View File

Before

Width:  |  Height:  |  Size: 463 B

After

Width:  |  Height:  |  Size: 463 B

View File

Before

Width:  |  Height:  |  Size: 654 B

After

Width:  |  Height:  |  Size: 654 B

View File

Before

Width:  |  Height:  |  Size: 556 B

After

Width:  |  Height:  |  Size: 556 B

View File

Before

Width:  |  Height:  |  Size: 556 B

After

Width:  |  Height:  |  Size: 556 B

Some files were not shown because too many files have changed in this diff Show More