├── .gitignore
├── README.md
├── adapters
├── jquery-example.html
├── jquery-min.js
└── jquery.js
├── browse.php
├── cache
├── .htaccess
├── base.css
├── base.js
├── theme_dark.css
├── theme_dark.js
├── theme_default.css
└── theme_default.js
├── composer.json
├── conf
├── .htaccess
├── config.php
└── upload.htaccess
├── core
├── .htaccess
├── autoload.php
├── bootstrap.php
├── class
│ ├── browser.php
│ ├── minifier.php
│ ├── session.php
│ └── uploader.php
└── types
│ ├── type_img.php
│ └── type_mime.php
├── css
├── 000.base.css
├── 001.transForm.css
├── 999.agent.css
└── index.php
├── doc
├── .htaccess
├── Changelog.md
├── LICENSE.GPL
└── LICENSE.LGPL
├── favicon.ico
├── index.php
├── integration
├── .htaccess
├── BolmerCMS.php
├── drupal.php
└── laraveladministrator.php
├── js
├── 000._jquery.js
├── 002._jqueryui.js
├── 006.jquery.transForm.js
├── 010.jquery.fixes.js
├── 020.jquery.rightClick.js
├── 021.jquery.taphold.js
├── 022.jquery.shDropUpload.js
├── 029.jquery.agent.js
├── 030.jquery.helper.js
├── 031.jquery.md5.js
├── 040.object.js
├── 041.dialogs.js
├── 050.init.js
├── 060.toolbar.js
├── 070.settings.js
├── 080.files.js
├── 090.folders.js
├── 091.menus.js
├── 091.viewImage.js
├── 100.clipboard.js
├── 110.dropUpload.js
├── 120.misc.js
└── index.php
├── js_localize.php
├── lang
├── .htaccess
├── af.php
├── bg.php
├── ca.php
├── cs.php
├── da.php
├── de.php
├── el.php
├── en.php
├── es.php
├── et.php
├── fa.php
├── fi.php
├── fr.php
├── he.php
├── hu.php
├── id.php
├── it.php
├── ja.php
├── lt.php
├── lv.php
├── nl.php
├── no.php
├── pl.php
├── pt-br.php
├── pt.php
├── ro.php
├── ru.php
├── sk.php
├── sv.php
├── tr.php
├── uk.php
├── vi.php
└── zh-cn.php
├── lib
├── .htaccess
├── class_fastImage.php
├── class_image.php
├── class_image_gd.php
├── class_image_gmagick.php
├── class_image_imagick.php
├── class_zipFolder.php
├── helper_dir.php
├── helper_file.php
├── helper_httpCache.php
├── helper_path.php
├── helper_phpGet.php
└── helper_text.php
├── themes
├── dark
│ ├── 01.ui.css
│ ├── 02.transForm.css
│ ├── 03.misc.css
│ ├── README
│ ├── css.php
│ ├── img
│ │ ├── bg_transparent.png
│ │ ├── files
│ │ │ ├── big
│ │ │ │ ├── ..png
│ │ │ │ ├── .image.png
│ │ │ │ ├── avi.png
│ │ │ │ ├── bat.png
│ │ │ │ ├── bmp.png
│ │ │ │ ├── bz2.png
│ │ │ │ ├── ccd.png
│ │ │ │ ├── cgi.png
│ │ │ │ ├── com.png
│ │ │ │ ├── csh.png
│ │ │ │ ├── cue.png
│ │ │ │ ├── deb.png
│ │ │ │ ├── dll.png
│ │ │ │ ├── doc.png
│ │ │ │ ├── docx.png
│ │ │ │ ├── exe.png
│ │ │ │ ├── fla.png
│ │ │ │ ├── flv.png
│ │ │ │ ├── fon.png
│ │ │ │ ├── gif.png
│ │ │ │ ├── gz.png
│ │ │ │ ├── htm.png
│ │ │ │ ├── html.png
│ │ │ │ ├── ini.png
│ │ │ │ ├── iso.png
│ │ │ │ ├── jar.png
│ │ │ │ ├── java.png
│ │ │ │ ├── jpeg.png
│ │ │ │ ├── jpg.png
│ │ │ │ ├── js.png
│ │ │ │ ├── mds.png
│ │ │ │ ├── mdx.png
│ │ │ │ ├── mid.png
│ │ │ │ ├── midi.png
│ │ │ │ ├── mkv.png
│ │ │ │ ├── mov.png
│ │ │ │ ├── mp3.png
│ │ │ │ ├── mp4.png
│ │ │ │ ├── mpeg.png
│ │ │ │ ├── mpg.png
│ │ │ │ ├── nfo.png
│ │ │ │ ├── nrg.png
│ │ │ │ ├── ogg.png
│ │ │ │ ├── pdf.png
│ │ │ │ ├── php.png
│ │ │ │ ├── phps.png
│ │ │ │ ├── pl.png
│ │ │ │ ├── pm.png
│ │ │ │ ├── png.png
│ │ │ │ ├── ppt.png
│ │ │ │ ├── pptx.png
│ │ │ │ ├── psd.png
│ │ │ │ ├── qt.png
│ │ │ │ ├── rar.png
│ │ │ │ ├── rpm.png
│ │ │ │ ├── rtf.png
│ │ │ │ ├── sh.png
│ │ │ │ ├── sql.png
│ │ │ │ ├── srt.png
│ │ │ │ ├── sub.png
│ │ │ │ ├── swf.png
│ │ │ │ ├── tgz.png
│ │ │ │ ├── tif.png
│ │ │ │ ├── tiff.png
│ │ │ │ ├── torrent.png
│ │ │ │ ├── ttf.png
│ │ │ │ ├── txt.png
│ │ │ │ ├── wav.png
│ │ │ │ ├── wma.png
│ │ │ │ ├── xls.png
│ │ │ │ ├── xlsx.png
│ │ │ │ └── zip.png
│ │ │ └── small
│ │ │ │ ├── ..png
│ │ │ │ ├── .image.png
│ │ │ │ ├── avi.png
│ │ │ │ ├── bat.png
│ │ │ │ ├── bmp.png
│ │ │ │ ├── bz2.png
│ │ │ │ ├── ccd.png
│ │ │ │ ├── cgi.png
│ │ │ │ ├── com.png
│ │ │ │ ├── csh.png
│ │ │ │ ├── cue.png
│ │ │ │ ├── deb.png
│ │ │ │ ├── dll.png
│ │ │ │ ├── doc.png
│ │ │ │ ├── docx.png
│ │ │ │ ├── exe.png
│ │ │ │ ├── fla.png
│ │ │ │ ├── flv.png
│ │ │ │ ├── fon.png
│ │ │ │ ├── gif.png
│ │ │ │ ├── gz.png
│ │ │ │ ├── htm.png
│ │ │ │ ├── html.png
│ │ │ │ ├── ini.png
│ │ │ │ ├── iso.png
│ │ │ │ ├── jar.png
│ │ │ │ ├── java.png
│ │ │ │ ├── jpeg.png
│ │ │ │ ├── jpg.png
│ │ │ │ ├── js.png
│ │ │ │ ├── mds.png
│ │ │ │ ├── mdx.png
│ │ │ │ ├── mid.png
│ │ │ │ ├── midi.png
│ │ │ │ ├── mkv.png
│ │ │ │ ├── mov.png
│ │ │ │ ├── mp3.png
│ │ │ │ ├── mp4.png
│ │ │ │ ├── mpeg.png
│ │ │ │ ├── mpg.png
│ │ │ │ ├── nfo.png
│ │ │ │ ├── nrg.png
│ │ │ │ ├── ogg.png
│ │ │ │ ├── pdf.png
│ │ │ │ ├── php.png
│ │ │ │ ├── phps.png
│ │ │ │ ├── pl.png
│ │ │ │ ├── pm.png
│ │ │ │ ├── png.png
│ │ │ │ ├── ppt.png
│ │ │ │ ├── pptx.png
│ │ │ │ ├── psd.png
│ │ │ │ ├── qt.png
│ │ │ │ ├── rar.png
│ │ │ │ ├── rpm.png
│ │ │ │ ├── rtf.png
│ │ │ │ ├── sh.png
│ │ │ │ ├── sql.png
│ │ │ │ ├── srt.png
│ │ │ │ ├── sub.png
│ │ │ │ ├── swf.png
│ │ │ │ ├── tgz.png
│ │ │ │ ├── tif.png
│ │ │ │ ├── tiff.png
│ │ │ │ ├── torrent.png
│ │ │ │ ├── ttf.png
│ │ │ │ ├── txt.png
│ │ │ │ ├── wav.png
│ │ │ │ ├── wma.png
│ │ │ │ ├── xls.png
│ │ │ │ ├── xlsx.png
│ │ │ │ └── zip.png
│ │ ├── icons
│ │ │ ├── about.png
│ │ │ ├── clipboard-add.png
│ │ │ ├── clipboard-clear.png
│ │ │ ├── clipboard.png
│ │ │ ├── copy.png
│ │ │ ├── delete.png
│ │ │ ├── download.png
│ │ │ ├── folder-new.png
│ │ │ ├── maximize.png
│ │ │ ├── move.png
│ │ │ ├── refresh.png
│ │ │ ├── rename.png
│ │ │ ├── select.png
│ │ │ ├── settings.png
│ │ │ ├── upload.png
│ │ │ └── view.png
│ │ ├── kcf_logo.png
│ │ ├── loading.gif
│ │ ├── tree
│ │ │ ├── denied.png
│ │ │ ├── folder.png
│ │ │ ├── minus.png
│ │ │ └── plus.png
│ │ ├── ui-icons_black.png
│ │ ├── ui-icons_grey.png
│ │ └── ui-icons_white.png
│ ├── init.js
│ └── js.php
└── default
│ ├── 01.ui.css
│ ├── 02.transForm.css
│ ├── 03.misc.css
│ ├── README
│ ├── css.php
│ ├── img
│ ├── bg_transparent.png
│ ├── files
│ │ ├── big
│ │ │ ├── ..png
│ │ │ ├── .image.png
│ │ │ ├── avi.png
│ │ │ ├── bat.png
│ │ │ ├── bmp.png
│ │ │ ├── bz2.png
│ │ │ ├── ccd.png
│ │ │ ├── cgi.png
│ │ │ ├── com.png
│ │ │ ├── csh.png
│ │ │ ├── cue.png
│ │ │ ├── deb.png
│ │ │ ├── dll.png
│ │ │ ├── doc.png
│ │ │ ├── docx.png
│ │ │ ├── exe.png
│ │ │ ├── fla.png
│ │ │ ├── flv.png
│ │ │ ├── fon.png
│ │ │ ├── gif.png
│ │ │ ├── gz.png
│ │ │ ├── htm.png
│ │ │ ├── html.png
│ │ │ ├── ini.png
│ │ │ ├── iso.png
│ │ │ ├── jar.png
│ │ │ ├── java.png
│ │ │ ├── jpeg.png
│ │ │ ├── jpg.png
│ │ │ ├── js.png
│ │ │ ├── mds.png
│ │ │ ├── mdx.png
│ │ │ ├── mid.png
│ │ │ ├── midi.png
│ │ │ ├── mkv.png
│ │ │ ├── mov.png
│ │ │ ├── mp3.png
│ │ │ ├── mp4.png
│ │ │ ├── mpeg.png
│ │ │ ├── mpg.png
│ │ │ ├── nfo.png
│ │ │ ├── nrg.png
│ │ │ ├── ogg.png
│ │ │ ├── pdf.png
│ │ │ ├── php.png
│ │ │ ├── phps.png
│ │ │ ├── pl.png
│ │ │ ├── pm.png
│ │ │ ├── png.png
│ │ │ ├── ppt.png
│ │ │ ├── pptx.png
│ │ │ ├── psd.png
│ │ │ ├── qt.png
│ │ │ ├── rar.png
│ │ │ ├── rpm.png
│ │ │ ├── rtf.png
│ │ │ ├── sh.png
│ │ │ ├── sql.png
│ │ │ ├── srt.png
│ │ │ ├── sub.png
│ │ │ ├── swf.png
│ │ │ ├── tgz.png
│ │ │ ├── tif.png
│ │ │ ├── tiff.png
│ │ │ ├── torrent.png
│ │ │ ├── ttf.png
│ │ │ ├── txt.png
│ │ │ ├── wav.png
│ │ │ ├── wma.png
│ │ │ ├── xls.png
│ │ │ ├── xlsx.png
│ │ │ └── zip.png
│ │ └── small
│ │ │ ├── ..png
│ │ │ ├── .image.png
│ │ │ ├── avi.png
│ │ │ ├── bat.png
│ │ │ ├── bmp.png
│ │ │ ├── bz2.png
│ │ │ ├── ccd.png
│ │ │ ├── cgi.png
│ │ │ ├── com.png
│ │ │ ├── csh.png
│ │ │ ├── cue.png
│ │ │ ├── deb.png
│ │ │ ├── dll.png
│ │ │ ├── doc.png
│ │ │ ├── docx.png
│ │ │ ├── exe.png
│ │ │ ├── fla.png
│ │ │ ├── flv.png
│ │ │ ├── fon.png
│ │ │ ├── gif.png
│ │ │ ├── gz.png
│ │ │ ├── htm.png
│ │ │ ├── html.png
│ │ │ ├── ini.png
│ │ │ ├── iso.png
│ │ │ ├── jar.png
│ │ │ ├── java.png
│ │ │ ├── jpeg.png
│ │ │ ├── jpg.png
│ │ │ ├── js.png
│ │ │ ├── mds.png
│ │ │ ├── mdx.png
│ │ │ ├── mid.png
│ │ │ ├── midi.png
│ │ │ ├── mkv.png
│ │ │ ├── mov.png
│ │ │ ├── mp3.png
│ │ │ ├── mp4.png
│ │ │ ├── mpeg.png
│ │ │ ├── mpg.png
│ │ │ ├── nfo.png
│ │ │ ├── nrg.png
│ │ │ ├── ogg.png
│ │ │ ├── pdf.png
│ │ │ ├── php.png
│ │ │ ├── phps.png
│ │ │ ├── pl.png
│ │ │ ├── pm.png
│ │ │ ├── png.png
│ │ │ ├── ppt.png
│ │ │ ├── pptx.png
│ │ │ ├── psd.png
│ │ │ ├── qt.png
│ │ │ ├── rar.png
│ │ │ ├── rpm.png
│ │ │ ├── rtf.png
│ │ │ ├── sh.png
│ │ │ ├── sql.png
│ │ │ ├── srt.png
│ │ │ ├── sub.png
│ │ │ ├── swf.png
│ │ │ ├── tgz.png
│ │ │ ├── tif.png
│ │ │ ├── tiff.png
│ │ │ ├── torrent.png
│ │ │ ├── ttf.png
│ │ │ ├── txt.png
│ │ │ ├── wav.png
│ │ │ ├── wma.png
│ │ │ ├── xls.png
│ │ │ ├── xlsx.png
│ │ │ └── zip.png
│ ├── icons
│ │ ├── about.png
│ │ ├── clipboard-add.png
│ │ ├── clipboard-clear.png
│ │ ├── clipboard.png
│ │ ├── copy.png
│ │ ├── delete.png
│ │ ├── download.png
│ │ ├── folder-new.png
│ │ ├── maximize.png
│ │ ├── move.png
│ │ ├── refresh.png
│ │ ├── rename.png
│ │ ├── select.png
│ │ ├── settings.png
│ │ ├── upload.png
│ │ └── view.png
│ ├── kcf_logo.png
│ ├── loading.gif
│ ├── tree
│ │ ├── denied.png
│ │ ├── folder.png
│ │ ├── minus.png
│ │ └── plus.png
│ ├── ui-icons_black.png
│ ├── ui-icons_blue.png
│ └── ui-icons_white.png
│ ├── init.js
│ └── js.php
├── tpl
├── .htaccess
├── tpl_browser.php
├── tpl_css.php
└── tpl_javascript.php
├── upload.php
└── upload
└── .htaccess
/.gitignore:
--------------------------------------------------------------------------------
1 | .idea/*
2 | upload/*
3 | [Tt]humbs.db
4 | *.DS_Store
5 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # KCFinder web file manager
2 | http://kcfinder.sunhater.com
3 | Pavel Tzonkov (sunhater@sunhater.com)
4 |
5 | ## Overview
6 | KCFinder is free open-source replacement of CKFinder web file manager. It can be integrated into FCKeditor, CKEditor, and TinyMCE WYSIWYG web editors (or your custom web applications) to upload and manage images, flash movies, and other files that can be embedded into an editor's generated HTML content.
7 |
8 | ## Licenses
9 | * GNU General Public License, version 3
10 | * GNU Lesser General Public License, version 3
11 |
12 | ## Features
13 | * Ajax engine with JSON responses
14 | * Multiple files upload
15 | * Upload files using HTML5 drag and drop from local file manager
16 | * Drag and drop images from external HTML pages. Multiple images can be dropped using selection (Firefox only)
17 | * Download multiple files or a folder as single ZIP file
18 | * Select multiple files with the Ctrl/Command key
19 | * Clipboard for copying, moving and downloading multiple files
20 | * Easy to integrate and configure in web applications
21 | * Option to select and return several files. For custom applications only
22 | * Resize uploaded images. Configurable maximum image resolution
23 | * PNG watermark support
24 | * Configurable thumbnail resolution
25 | * Automaticaly rotate and/or flip uploaded images depending on the orientation info EXIF tag if it exist
26 | * Multiple themes support
27 | * Multilanguage system
28 | * Preview images in full size
29 |
30 | ## Compatibility
31 | * KCFinder is officialy tested on Apache 2 web server only, but probably it will work on other web servers.
32 | * PHP 5.3 or better is required. Safe mode should be off.
33 | * At least one of these PHP extensions is required: GD, ImageMagick or GraphicsMagick.
34 | * To work with client-side HTTP cache, the PHP must be installed as Apache module.
35 | * KCFinder supports MIME type recognition for the uploaded files. If you plan to use this feature, you should to load Fileinfo PHP extension.
36 | * PHP ZIP extension should be loaded in order to have an option to download multiple files and directories as single ZIP file.
37 | * Automatic rotating and flipping images requires PHP EXIF extension.
38 |
--------------------------------------------------------------------------------
/adapters/jquery-example.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | KCFinder jQuery Adapter Example
4 |
5 |
6 |
17 |
32 |
33 |
34 |
35 |
36 |
--------------------------------------------------------------------------------
/adapters/jquery-min.js:
--------------------------------------------------------------------------------
1 | /*! jQuery adapter for KCFinder
2 | * http://kcfinder.sunhater.com
3 | * Pavel Tzonkov
4 | */
5 | (function(b){var a="browse.php";b.fn.kcfinder=function(d){var c,f,e=b(this).get(0),h={url:a,lang:"",theme:"",type:"",dir:"",callback:false,callbackMultiple:false},j=b(""),g=["lang","theme","type","dir"];b.extend(true,h,d);c=h.url;c+=(c.indexOf("?")===-1)?"?":"&";for(f in g){f=g[f];if(h[f].length){c+=f+"="+encodeURIComponent(h[f])+"&"}}c=c.substr(0,c.length-1);j.css({margin:0,padding:0,width:b(e).innerWidth(),height:b(e).innerHeight(),border:"none"}).attr({src:c});b(e).html(j);if(b.isFunction(h.callback)||b.isFunction(h.callbackMultiple)){if(!window.KCFinder){window.KCFinder={}}if(b.isFunction(h.callback)){window.KCFinder.callBack=h.callback}else{if(window.KCFinder&&window.KCFinder.callback){delete window.KCFinder.callback}}if(b.isFunction(h.callbackMultiple)){window.KCFinder.callBackMultiple=h.callbackMultiple}else{if(window.KCFinder&&window.KCFinder.callbackMultiple){delete window.KCFinder.callbackMultiple}}}else{if(window.KCFinder){delete window.KCFinder}}}})(jQuery);
--------------------------------------------------------------------------------
/adapters/jquery.js:
--------------------------------------------------------------------------------
1 | /*! jQuery adapter for KCFinder
2 | * http://kcfinder.sunhater.com
3 | * Pavel Tzonkov
4 | */
5 | /* BASE USAGE:
6 | *
7 | *
10 | */
11 |
12 | (function($) {
13 | var defaultURL = "browse.php"; // Define here your default URL to KCFinder
14 |
15 | $.fn.kcfinder = function(options) {
16 |
17 | var url, i,
18 | t = $(this).get(0),
19 |
20 | // Default options
21 | o = {
22 | url: defaultURL,
23 | lang: "",
24 | theme: "",
25 | type: "",
26 | dir: "",
27 | callback: false,
28 | callbackMultiple: false
29 | },
30 | ifr = $(''),
31 |
32 | // GET parameters to parse URL
33 | parse = ['lang', 'theme', 'type', 'dir'];
34 |
35 | $.extend(true, o, options);
36 |
37 | // Parse URL
38 | url = o.url;
39 | url += (url.indexOf('?') === -1) ? '?' : "&";
40 | for (i in parse) {
41 | i = parse[i];
42 | if (o[i].length)
43 | url += i + "=" + encodeURIComponent(o[i]) + "&";
44 | }
45 | url = url.substr(0, url.length - 1);
46 |
47 | // Iframe setup
48 | ifr.css({
49 | margin: 0,
50 | padding: 0,
51 | width: $(t).innerWidth(),
52 | height: $(t).innerHeight(),
53 | border: "none"
54 | }).attr({
55 | src: url
56 | });
57 |
58 | $(t).html(ifr);
59 |
60 | // Callbacks
61 | if ($.isFunction(o.callback) || $.isFunction(o.callbackMultiple)) {
62 | if (!window.KCFinder)
63 | window.KCFinder = {};
64 |
65 | // Single file callback
66 | if ($.isFunction(o.callback))
67 | window.KCFinder.callBack = o.callback;
68 | else if (window.KCFinder && window.KCFinder.callback)
69 | delete window.KCFinder.callback;
70 |
71 | // Multiple files callback
72 | if ($.isFunction(o.callbackMultiple))
73 | window.KCFinder.callBackMultiple = o.callbackMultiple;
74 | else if (window.KCFinder && window.KCFinder.callbackMultiple)
75 | delete window.KCFinder.callbackMultiple;
76 |
77 | // No callbacks
78 | } else if (window.KCFinder)
79 | delete window.KCFinder;
80 | }
81 |
82 | })(jQuery);
--------------------------------------------------------------------------------
/browse.php:
--------------------------------------------------------------------------------
1 |
9 | * @copyright 2010-2014 KCFinder Project
10 | * @license http://opensource.org/licenses/GPL-3.0 GPLv3
11 | * @license http://opensource.org/licenses/LGPL-3.0 LGPLv3
12 | * @link http://kcfinder.sunhater.com
13 | */
14 |
15 | require "core/bootstrap.php";
16 | $browser = "kcfinder\\browser"; // To execute core/bootstrap.php on older
17 | $browser = new $browser(); // PHP versions (even PHP 4)
18 | $browser->action();
19 |
--------------------------------------------------------------------------------
/cache/.htaccess:
--------------------------------------------------------------------------------
1 |
2 | Order allow,deny
3 | Deny from all
4 |
5 |
--------------------------------------------------------------------------------
/cache/base.css:
--------------------------------------------------------------------------------
1 | html,body{overflow:hidden}body,form,th,td{margin:0;padding:0}a{cursor:pointer}*{font-family:Tahoma,Verdana,Arial,sans-serif;font-size:11px}table{border-collapse:collapse}#left{float:left;display:block;width:25%}#right{float:left;display:block;width:75%}#settings{display:none;padding:0;float:left;width:100%}#settings>div{float:left}#folders{padding:5px;overflow:auto}#toolbar{padding:5px}#files{padding:5px;overflow:auto}#status{padding:5px;float:left;overflow:hidden}#fileinfo{float:left}#clipboard div{width:16px;height:16px}.folders{margin-left:16px}div.file{overflow-x:hidden;float:left;text-align:center;cursor:default;white-space:nowrap}div.file .thumb{background:no-repeat center center}#files table{width:100%}tr.file{cursor:default}tr.file>td{white-space:nowrap}tr.file>td.name{background-repeat:no-repeat;background-position:left center;padding-left:20px;width:100%}tr.file>td.time,tr.file>td.size{text-align:right}#toolbar{cursor:default;white-space:nowrap}#toolbar a{padding-left:20px;text-decoration:none;background:no-repeat left center}#toolbar a:hover,a[href="#upload"].uploadHover{color:#000}#upload{position:absolute;overflow:hidden;opacity:0;filter:alpha(opacity=0)}#upload input,#upload input::-webkit-file-upload-button{cursor:pointer}span.brace{padding-left:11px;cursor:default}span.brace.opened,span.brace.closed{cursor:pointer}#menu,#clipboard{position:absolute;display:none;z-index:101;cursor:default}#menu .box,#alert{max-width:350px}#clipboard{z-index:99}#loading{display:none;float:right}.menu{background:#888;white-space:nowrap}.menu a{display:block}.menu .list{max-height:0;overflow-y:auto;overflow-x:hidden;white-space:nowrap}#uploadResponse,.file .access,.file .hasThumb{display:none}#resizer{position:absolute;z-index:98;top:0;background:#000;opacity:0;filter:alpha(opacity=0)}#lang{opacity:0;filter:alpha(opacity=0)}.tf-select,.tf-multiple,.tf-file,.tf-radio,.tf-checkbox,.tf-button{cursor:default;overflow:auto;display:-moz-inline-box;display:inline-block;zoom:1;vertical-align:middle}.tf-select .tf-selected{float:left;white-space:nowrap}.tf-select .tf-menu{display:none;position:absolute;max-height:173px;overflow-x:hidden;overflow-y:auto}.tf-select.tf-opened .tf-menu{display:block}.tf-select .tf-button{float:right}.tf-select select,.tf-multiple select{position:absolute;left:-1000000px;opacity:0;filter:alpha(opacity=0)}.tf-select .tf-menu ul,.tf-multiple ul{padding:0;margin:0;list-style-type:none}.tf-select .tf-menu li,.tf-multiple li{padding:0;margin:0}.tf-multiple span,.tf-select .tf-button span{white-space:nowrap}.tf-textarea{resize:none;overflow:auto}.tf-multiple{max-height:118px}.tf-file input,.tf-radio input,.tf-checkbox input,.tf-button input,.tf-button button{position:absolute;opacity:0;filter:alpha(opacity=0);outline:0;margin:0;padding:0}.tf-file{overflow:hidden}.tf-file .tf-info{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;float:right}.tf-file .tf-button{float:right}body.mobile{-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none}body.firefox #files>div{overflow:auto;margin-bottom:5px}
--------------------------------------------------------------------------------
/cache/theme_dark.js:
--------------------------------------------------------------------------------
1 | $.each(["loading.gif","ui-icons_black.png","ui-icons_grey.png","ui-icons_white.png"],function(b,a){new Image().src="themes/dark/img/"+a});
--------------------------------------------------------------------------------
/cache/theme_default.js:
--------------------------------------------------------------------------------
1 | $.each(["loading.gif","ui-icons_black.png","ui-icons_blue.png","ui-icons_white.png"],function(b,a){new Image().src="themes/default/img/"+a});
--------------------------------------------------------------------------------
/composer.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "sunhater/kcfinder",
3 | "description": "KCFinder web file manager",
4 | "version": "3.20-test2",
5 | "type": "library",
6 | "keywords": [
7 | "kcfinder",
8 | "finder",
9 | "file",
10 | "manager",
11 | "explorer",
12 | "file manager",
13 | "file explorer"
14 | ],
15 | "homepage": "http://kcfinder.sunhater.com",
16 | "time": "2014-08-24",
17 | "license": [
18 | "GPL-3.0+",
19 | "LGPL-3.0+"
20 | ],
21 | "authors": [
22 | {
23 | "name": "Pavel Tzonkov",
24 | "email": "sunhater@sunhater.com",
25 | "homepage": "http://sunhater.com",
26 | "role": "Developer"
27 | }
28 | ],
29 | "support": {
30 | "email": "sunhater@sunhater.com",
31 | "issues": "https://github.com/sunhater/kcfinder/issues",
32 | "source": "https://github.com/sunhater/kcfinder"
33 | },
34 | "require": {
35 | "php": ">=5.3.0",
36 | "ext-gd": "*"
37 | },
38 | "suggest": {
39 | "ext-fileinfo": "*",
40 | "ext-exif": "*",
41 | "ext-curl": "*",
42 | "ext-http": "*",
43 | "ext-sockets": "*",
44 | "ext-imagick": "*",
45 | "ext-gmagick": "*",
46 | "ext-zip": "*"
47 | }
48 | }
--------------------------------------------------------------------------------
/conf/.htaccess:
--------------------------------------------------------------------------------
1 |
2 | Order allow,deny
3 | Deny from all
4 |
5 |
--------------------------------------------------------------------------------
/conf/config.php:
--------------------------------------------------------------------------------
1 |
9 | * @copyright 2010-2014 KCFinder Project
10 | * @license http://opensource.org/licenses/GPL-3.0 GPLv3
11 | * @license http://opensource.org/licenses/LGPL-3.0 LGPLv3
12 | * @link http://kcfinder.sunhater.com
13 | */
14 |
15 | /* IMPORTANT!!! Do not comment or remove uncommented settings in this file
16 | even if you are using session configuration.
17 | See http://kcfinder.sunhater.com/install for setting descriptions */
18 |
19 | return array(
20 |
21 |
22 | // GENERAL SETTINGS
23 |
24 | 'disabled' => true,
25 | 'uploadURL' => "upload",
26 | 'uploadDir' => "",
27 | 'theme' => "default",
28 |
29 | 'types' => array(
30 |
31 | // (F)CKEditor types
32 | 'files' => "",
33 | 'flash' => "swf",
34 | 'images' => "*img",
35 |
36 | // TinyMCE types
37 | 'file' => "",
38 | 'media' => "swf flv avi mpg mpeg qt mov wmv asf rm",
39 | 'image' => "*img",
40 | ),
41 |
42 |
43 | // IMAGE SETTINGS
44 |
45 | 'imageDriversPriority' => "imagick gmagick gd",
46 | 'jpegQuality' => 90,
47 | 'thumbsDir' => ".thumbs",
48 |
49 | 'maxImageWidth' => 0,
50 | 'maxImageHeight' => 0,
51 |
52 | 'thumbWidth' => 100,
53 | 'thumbHeight' => 100,
54 |
55 | 'watermark' => "",
56 |
57 |
58 | // DISABLE / ENABLE SETTINGS
59 |
60 | 'denyZipDownload' => false,
61 | 'denyUpdateCheck' => false,
62 | 'denyExtensionRename' => false,
63 |
64 |
65 | // PERMISSION SETTINGS
66 |
67 | 'dirPerms' => 0755,
68 | 'filePerms' => 0644,
69 |
70 | 'access' => array(
71 |
72 | 'files' => array(
73 | 'upload' => true,
74 | 'delete' => true,
75 | 'copy' => true,
76 | 'move' => true,
77 | 'rename' => true
78 | ),
79 |
80 | 'dirs' => array(
81 | 'create' => true,
82 | 'delete' => true,
83 | 'rename' => true
84 | )
85 | ),
86 |
87 | 'deniedExts' => "exe com msi bat cgi pl php phps phtml php3 php4 php5 php6 py pyc pyo pcgi pcgi3 pcgi4 pcgi5 pchi6",
88 |
89 |
90 | // MISC SETTINGS
91 |
92 | 'filenameChangeChars' => array(/*
93 | ' ' => "_",
94 | ':' => "."
95 | */),
96 |
97 | 'dirnameChangeChars' => array(/*
98 | ' ' => "_",
99 | ':' => "."
100 | */),
101 |
102 | 'mime_magic' => "",
103 |
104 | 'cookieDomain' => "",
105 | 'cookiePath' => "",
106 | 'cookiePrefix' => 'KCFINDER_',
107 |
108 |
109 | // THE FOLLOWING SETTINGS CANNOT BE OVERRIDED WITH SESSION SETTINGS
110 |
111 | '_sessionVar' => "KCFINDER",
112 | '_check4htaccess' => true,
113 | '_normalizeFilenames' => false,
114 | '_dropUploadMaxFilesize' => 10485760,
115 | //'_tinyMCEPath' => "/tiny_mce",
116 | //'_cssMinCmd' => "java -jar /path/to/yuicompressor.jar --type css {file}",
117 | //'_jsMinCmd' => "java -jar /path/to/yuicompressor.jar --type js {file}",
118 | );
119 |
--------------------------------------------------------------------------------
/conf/upload.htaccess:
--------------------------------------------------------------------------------
1 |
2 | php_flag engine Off
3 |
4 |
5 | php_flag engine Off
6 |
7 |
8 | php_flag engine Off
9 |
10 |
11 | Options -ExecCGI
12 |
13 |
14 | RemoveHandler .cgi .pl .py .pyc .pyo .phtml .php .php3 .php4 .php5 .php6 .pcgi .pcgi3 .pcgi4 .pcgi5 .pchi6 .inc
15 | RemoveType .cgi .pl .py .pyc .pyo .phtml .php .php3 .php4 .php5 .php6 .pcgi .pcgi3 .pcgi4 .pcgi5 .pchi6 .inc
16 | SetHandler None
17 | SetHandler default-handler
18 |
19 | # Remove both lines below if you want to render HTML files from the upload folder
20 | AddType text/plain .html
21 | AddType text/plain .htm
22 |
--------------------------------------------------------------------------------
/core/.htaccess:
--------------------------------------------------------------------------------
1 |
2 | Order allow,deny
3 | Deny from all
4 |
5 |
--------------------------------------------------------------------------------
/core/autoload.php:
--------------------------------------------------------------------------------
1 |
9 | * @copyright 2010-2014 KCFinder Project
10 | * @license http://opensource.org/licenses/GPL-3.0 GPLv3
11 | * @license http://opensource.org/licenses/LGPL-3.0 LGPLv3
12 | * @link http://kcfinder.sunhater.com
13 | */
14 |
15 | spl_autoload_register(function($path) {
16 | $path = explode("\\", $path);
17 |
18 | if (count($path) == 1)
19 | return;
20 |
21 | list($ns, $class) = $path;
22 |
23 | if ($ns == "kcfinder") {
24 | if (in_array($class, array("uploader", "browser", "minifier", "session")))
25 | require "core/class/$class.php";
26 | elseif (file_exists("core/types/$class.php"))
27 | require "core/types/$class.php";
28 | elseif (file_exists("lib/class_$class.php"))
29 | require "lib/class_$class.php";
30 | elseif (file_exists("lib/helper_$class.php"))
31 | require "lib/helper_$class.php";
32 | }
33 | });
34 |
--------------------------------------------------------------------------------
/core/class/minifier.php:
--------------------------------------------------------------------------------
1 |
9 | * @copyright 2010-2014 KCFinder Project
10 | * @license http://opensource.org/licenses/GPL-3.0 GPLv3
11 | * @license http://opensource.org/licenses/LGPL-3.0 LGPLv3
12 | * @link http://kcfinder.sunhater.com
13 | */
14 |
15 | namespace kcfinder;
16 |
17 | class minifier {
18 |
19 | protected $config;
20 | protected $type = "js";
21 | protected $minCmd = "";
22 | protected $mime = array(
23 | 'js' => "text/javascript",
24 | 'css' => "text/css"
25 | );
26 |
27 | public function __construct($type=null) {
28 | $this->config = require("conf/config.php");
29 | $type = strtolower($type);
30 | if (isset($this->mime[$type]))
31 | $this->type = $type;
32 | if (isset($this->config["_{$this->type}MinCmd"]))
33 | $this->minCmd = $this->config["_{$this->type}MinCmd"];
34 | }
35 |
36 | public function minify($cacheFile=null, $dir=null) {
37 | if ($dir === null)
38 | $dir = dirname($_SERVER['SCRIPT_FILENAME']);
39 |
40 | // MODIFICATION TIME FILES
41 | $mtFiles = array(
42 | __FILE__,
43 | $_SERVER['SCRIPT_FILENAME'],
44 | "conf/config.php"
45 | );
46 |
47 | // GET SOURCE CODE FILES
48 | $files = dir::content($dir, array(
49 | 'types' => "file",
50 | 'pattern' => '/^.*\.' . $this->type . '$/'
51 | ));
52 |
53 | // GET NEWEST MODIFICATION TIME
54 | $mtime = 0;
55 | foreach (array_merge($mtFiles, $files) as $file) {
56 | $fmtime = filemtime($file);
57 | if ($fmtime > $mtime)
58 | $mtime = $fmtime;
59 | }
60 |
61 | $header = "Content-Type: {$this->mime[$this->type]}";
62 |
63 | // GET SOURCE CODE FROM CLIENT HTTP CACHE IF EXISTS
64 | httpCache::checkMTime($mtime, $header);
65 |
66 | // OUTPUT SOURCE CODE
67 | header($header);
68 |
69 | // GET SOURCE CODE FROM SERVER-SIDE CACHE
70 | if (($cacheFile !== null) &&
71 | file_exists($cacheFile) &&
72 | (
73 | (filemtime($cacheFile) >= $mtime) ||
74 | !is_writable($cacheFile) // if cache file cannot be modified
75 | ) // the script will output it always
76 | ) { // with its distribution content
77 | readfile($cacheFile);
78 | die;
79 | }
80 |
81 | // MINIFY AND JOIN SOURCE CODE
82 | $source = "";
83 | foreach ($files as $file) {
84 |
85 | if (strlen($this->minCmd) && (substr($file, 4, 1) != "_")) {
86 | $cmd = str_replace("{file}", $file, $this->minCmd);
87 | $source .= `$cmd`;
88 |
89 | } else
90 | $source .= file_get_contents($file);
91 | }
92 |
93 | // UPDATE SERVER-SIDE CACHE
94 | if (($cacheFile !== null) &&
95 | (
96 | is_writable($cacheFile) ||
97 | (
98 | !file_exists($cacheFile) &&
99 | dir::isWritable(dirname($cacheFile))
100 | )
101 | )
102 | ) {
103 | file_put_contents($cacheFile, $source);
104 | touch($cacheFile, $mtime);
105 | }
106 |
107 | // OUTPUT SOURCE CODE
108 | echo $source;
109 |
110 | }
111 | }
112 |
--------------------------------------------------------------------------------
/core/class/session.php:
--------------------------------------------------------------------------------
1 |
9 | * @copyright 2010-2014 KCFinder Project
10 | * @license http://opensource.org/licenses/GPL-3.0 GPLv3
11 | * @license http://opensource.org/licenses/LGPL-3.0 LGPLv3
12 | * @link http://kcfinder.sunhater.com
13 | */
14 |
15 | namespace kcfinder;
16 |
17 | class session {
18 |
19 | const SESSION_VAR = "_sessionVar";
20 | public $values;
21 | protected $config;
22 |
23 | public function __construct($configFile) {
24 |
25 | // Start session if it is not already started
26 | if (!session_id())
27 | session_start();
28 |
29 | $config = require($configFile);
30 |
31 | // _sessionVar option is set
32 | if (isset($config[self::SESSION_VAR])) {
33 | $session = &$config[self::SESSION_VAR];
34 |
35 | // _sessionVar option is string
36 | if (is_string($session))
37 | $session = &$_SESSION[$session];
38 |
39 | if (!is_array($session))
40 | $session = array();
41 |
42 | // Use global _SESSION array if _sessionVar option is not set
43 | } else
44 | $session = &$_SESSION;
45 |
46 | // Securing the session
47 | $stamp = array(
48 | 'ip' => $_SERVER['REMOTE_ADDR'],
49 | 'agent' => md5($_SERVER['HTTP_USER_AGENT'])
50 | );
51 | if (!isset($session['stamp']))
52 | $session['stamp'] = $stamp;
53 | elseif (!is_array($session['stamp']) || ($session['stamp'] !== $stamp)) {
54 | // Destroy session if user agent is different (e.g. after browser update)
55 | if ($session['stamp']['ip'] === $stamp['ip'])
56 | session_destroy();
57 | die;
58 | }
59 |
60 | // Load session configuration
61 | foreach ($config as $key => $val)
62 | $this->config[$key] = ((substr($key, 0, 1) != "_") && isset($session[$key]))
63 | ? $session[$key]
64 | : $val;
65 |
66 | // Session data goes to 'self' element
67 | if (!isset($session['self']))
68 | $session['self'] = array();
69 | $this->values = &$session['self'];
70 | }
71 |
72 | public function getConfig() {
73 | return $this->config;
74 | }
75 |
76 | }
77 |
--------------------------------------------------------------------------------
/core/types/type_img.php:
--------------------------------------------------------------------------------
1 |
9 | * @copyright 2010-2014 KCFinder Project
10 | * @license http://opensource.org/licenses/GPL-3.0 GPLv3
11 | * @license http://opensource.org/licenses/LGPL-3.0 LGPLv3
12 | * @link http://kcfinder.sunhater.com
13 | */
14 |
15 | namespace kcfinder;
16 |
17 | class type_img {
18 |
19 | public function checkFile($file, array $config) {
20 |
21 | $driver = isset($config['imageDriversPriority'])
22 | ? image::getDriver(explode(" ", $config['imageDriversPriority'])) : "gd";
23 |
24 | $img = image::factory($driver, $file);
25 |
26 | if ($img->initError)
27 | return "Unknown image format/encoding.";
28 |
29 | return true;
30 | }
31 | }
32 |
--------------------------------------------------------------------------------
/core/types/type_mime.php:
--------------------------------------------------------------------------------
1 |
9 | * @copyright 2010-2014 KCFinder Project
10 | * @license http://opensource.org/licenses/GPL-3.0 GPLv3
11 | * @license http://opensource.org/licenses/LGPL-3.0 LGPLv3
12 | * @link http://kcfinder.sunhater.com
13 | */
14 |
15 | namespace kcfinder;
16 |
17 | class type_mime {
18 |
19 | public function checkFile($file, array $config) {
20 | if (!class_exists("finfo"))
21 | return "Fileinfo PECL extension is missing.";
22 |
23 | if (!isset($config['params']))
24 | return "Undefined MIME types.";
25 |
26 | $finfo = strlen($config['mime_magic'])
27 | ? new \finfo(FILEINFO_MIME, $config['mime_magic'])
28 | : new \finfo(FILEINFO_MIME);
29 | if (!$finfo)
30 | return "Opening fileinfo database failed.";
31 |
32 | $type = $finfo->file($file);
33 | $type = substr($type, 0, strrpos($type, ";"));
34 |
35 | $mimes = $config['params'];
36 | if (substr($mimes, 0, 1) == "!") {
37 | $mimes = trim(substr($mimes, 1));
38 | return in_array($type , explode(" ", $mimes))
39 | ? "You can't upload such files."
40 | : true;
41 | }
42 |
43 | return !in_array($type , explode(" ", $mimes))
44 | ? "You can't upload such files."
45 | : true;
46 | }
47 | }
48 |
--------------------------------------------------------------------------------
/css/000.base.css:
--------------------------------------------------------------------------------
1 | html, body {
2 | overflow: hidden;
3 | }
4 |
5 | body, form, th, td {
6 | margin: 0;
7 | padding: 0;
8 | }
9 |
10 | a {
11 | cursor: pointer;
12 | }
13 |
14 | * {
15 | font-family: Tahoma, Verdana, Arial, sans-serif;
16 | font-size: 11px;
17 | }
18 |
19 | table {
20 | border-collapse: collapse;
21 | }
22 |
23 | #left {
24 | float: left;
25 | display: block;
26 | width: 25%;
27 | }
28 |
29 | #right {
30 | float: left;
31 | display: block;
32 | width: 75%;
33 | }
34 |
35 | #settings {
36 | display: none;
37 | padding: 0;
38 | float: left;
39 | width: 100%;
40 | }
41 |
42 | #settings > div {
43 | float: left;
44 | }
45 |
46 | #folders {
47 | padding: 5px;
48 | overflow: auto;
49 | }
50 |
51 | #toolbar {
52 | padding: 5px;
53 | }
54 |
55 | #files {
56 | padding: 5px;
57 | overflow: auto;
58 | }
59 |
60 | #status {
61 | padding: 5px;
62 | float: left;
63 | overflow: hidden;
64 | }
65 |
66 | #fileinfo {
67 | float: left;
68 | }
69 |
70 | #clipboard div {
71 | width: 16px;
72 | height: 16px;
73 | }
74 |
75 | .folders {
76 | margin-left: 16px;
77 | }
78 |
79 | div.file {
80 | overflow-x: hidden;
81 | float: left;
82 | text-align: center;
83 | cursor: default;
84 | white-space: nowrap;
85 | }
86 |
87 | div.file .thumb {
88 | background: no-repeat center center;
89 | }
90 |
91 | #files table {
92 | width: 100%;
93 | }
94 |
95 | tr.file {
96 | cursor: default;
97 | }
98 |
99 | tr.file > td {
100 | white-space: nowrap;
101 | }
102 |
103 | tr.file > td.name {
104 | background-repeat: no-repeat;
105 | background-position: left center;
106 | padding-left: 20px;
107 | width: 100%;
108 | }
109 |
110 | tr.file > td.time,
111 | tr.file > td.size {
112 | text-align: right;
113 | }
114 |
115 | #toolbar {
116 | cursor: default;
117 | white-space: nowrap;
118 | }
119 |
120 | #toolbar a {
121 | padding-left: 20px;
122 | text-decoration: none;
123 | background: no-repeat left center;
124 | }
125 |
126 | #toolbar a:hover, a[href="#upload"].uploadHover {
127 | color: #000;
128 | }
129 |
130 | #upload {
131 | position: absolute;
132 | overflow: hidden;
133 | opacity: 0;
134 | filter: alpha(opacity=0);
135 | }
136 | #upload input, #upload input::-webkit-file-upload-button {
137 | cursor: pointer;
138 | }
139 |
140 | span.brace {
141 | padding-left: 11px;
142 | cursor: default;
143 | }
144 |
145 | span.brace.opened, span.brace.closed {
146 | cursor: pointer;
147 | }
148 |
149 | #menu, #clipboard {
150 | position: absolute;
151 | display: none;
152 | z-index: 101;
153 | cursor: default;
154 | }
155 |
156 | #menu .box, #alert {
157 | max-width: 350px;
158 | }
159 |
160 | #clipboard {
161 | z-index: 99;
162 | }
163 |
164 | #loading {
165 | display: none;
166 | float: right;
167 | }
168 |
169 | .menu {
170 | background: #888;
171 | white-space: nowrap;
172 | }
173 |
174 | .menu a {
175 | display: block;
176 | }
177 |
178 | .menu .list {
179 | max-height: 0;
180 | overflow-y: auto;
181 | overflow-x: hidden;
182 | white-space: nowrap;
183 | }
184 |
185 | #uploadResponse,
186 | .file .access,
187 | .file .hasThumb {
188 | display: none;
189 | }
190 |
191 | #resizer {
192 | position: absolute;
193 | z-index: 98;
194 | top: 0;
195 | background: #000;
196 | opacity: 0;
197 | filter: alpha(opacity=0);
198 | }
199 |
200 | #lang {
201 | opacity: 0;
202 | filter: alpha(opacity=0);
203 | }
--------------------------------------------------------------------------------
/css/001.transForm.css:
--------------------------------------------------------------------------------
1 | .tf-select, .tf-multiple, .tf-file, .tf-radio, .tf-checkbox, .tf-button {
2 | cursor: default;
3 | overflow: auto;
4 | display: -moz-inline-box;
5 | display: inline-block;
6 | zoom: 1;
7 | vertical-align: middle;
8 | }
9 |
10 | .tf-select .tf-selected {
11 | float: left;
12 | white-space: nowrap;
13 | }
14 |
15 | .tf-select .tf-menu {
16 | display: none;
17 | position: absolute;
18 | max-height: 173px;
19 | overflow-x: hidden;
20 | overflow-y: auto;
21 | }
22 |
23 | .tf-select.tf-opened .tf-menu {
24 | display: block;
25 | }
26 |
27 | .tf-select .tf-button {
28 | float: right;
29 | }
30 |
31 | .tf-select select,
32 | .tf-multiple select {
33 | position: absolute;
34 | left: -1000000px;
35 | opacity: 0;
36 | filter: alpha(opacity=0);
37 | }
38 |
39 | .tf-select .tf-menu ul,
40 | .tf-multiple ul {
41 | padding: 0;
42 | margin: 0;
43 | list-style-type: none;
44 | }
45 |
46 | .tf-select .tf-menu li,
47 | .tf-multiple li {
48 | padding: 0;
49 | margin: 0;
50 | }
51 |
52 | .tf-multiple span,
53 | .tf-select .tf-button span {
54 | white-space: nowrap;
55 | }
56 |
57 | .tf-textarea {
58 | resize: none;
59 | overflow: auto;
60 | }
61 |
62 | .tf-multiple {
63 | max-height: 118px;
64 | }
65 | .tf-file input,
66 | .tf-radio input,
67 | .tf-checkbox input,
68 | .tf-button input,
69 | .tf-button button {
70 | position: absolute;
71 | opacity: 0;
72 | filter: alpha(opacity=0);
73 | outline: none;
74 | margin: 0;
75 | padding: 0;
76 | }
77 | .tf-file {
78 | overflow: hidden;
79 | }
80 | .tf-file .tf-info {
81 | overflow: hidden;
82 | text-overflow: ellipsis;
83 | white-space: nowrap;
84 | float: right;
85 | }
86 | .tf-file .tf-button {
87 | float: right;
88 | }
89 |
--------------------------------------------------------------------------------
/css/999.agent.css:
--------------------------------------------------------------------------------
1 | body.mobile {
2 | -webkit-touch-callout: none;
3 | -webkit-user-select: none;
4 | -moz-user-select: none;
5 | }
6 |
7 | body.firefox #files > div {
8 | overflow: auto;
9 | margin-bottom: 5px;
10 | }
--------------------------------------------------------------------------------
/css/index.php:
--------------------------------------------------------------------------------
1 |
9 | * @copyright 2010-2014 KCFinder Project
10 | * @license http://opensource.org/licenses/GPL-3.0 GPLv3
11 | * @license http://opensource.org/licenses/LGPL-3.0 LGPLv3
12 | * @link http://kcfinder.sunhater.com
13 | */
14 |
15 | namespace kcfinder;
16 |
17 | chdir("..");
18 | require "core/autoload.php";
19 | $min = new minifier("css");
20 | $min->minify("cache/base.css");
21 |
--------------------------------------------------------------------------------
/doc/.htaccess:
--------------------------------------------------------------------------------
1 |
2 | Order allow,deny
3 | Deny from all
4 |
5 |
--------------------------------------------------------------------------------
/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/favicon.ico
--------------------------------------------------------------------------------
/index.php:
--------------------------------------------------------------------------------
1 |
2 | Order allow,deny
3 | Deny from all
4 |
5 |
--------------------------------------------------------------------------------
/integration/BolmerCMS.php:
--------------------------------------------------------------------------------
1 |
9 | * @copyright 2010-2014 KCFinder Project
10 | * @license http://opensource.org/licenses/GPL-3.0 GPLv3
11 | * @license http://opensource.org/licenses/LGPL-3.0 LGPLv3
12 | * @link http://kcfinder.sunhater.com
13 | */
14 | class BolmerCMS{
15 | protected static $authenticated = false;
16 | static function checkAuth() {
17 | $current_cwd = getcwd();
18 | if ( ! self::$authenticated) {
19 | define('BOLMER_API_MODE', true);
20 | define('IN_MANAGER_MODE', true);
21 | $init = realpath(dirname(dirname(dirname(dirname(dirname(dirname(__FILE__))))))."/index.php");
22 | include_once($init);
23 | $type = getService('user', true)->getLoginUserType();
24 | if($type=='manager'){
25 | self::$authenticated = true;
26 | if (!isset($_SESSION['KCFINDER'])) {
27 | $_SESSION['KCFINDER'] = array();
28 | }
29 | if(!isset($_SESSION['KCFINDER']['disabled'])) {
30 | $_SESSION['KCFINDER']['disabled'] = false;
31 | }
32 | $_SESSION['KCFINDER']['_check4htaccess'] = false;
33 | $_SESSION['KCFINDER']['uploadURL'] = '/assets/';
34 | $_SESSION['KCFINDER']['uploadDir'] = BOLMER_BASE_PATH.'assets/';
35 | $_SESSION['KCFINDER']['theme'] = 'default';
36 | }
37 | }
38 |
39 | chdir($current_cwd);
40 | return self::$authenticated;
41 | }
42 | }
43 | \kcfinder\cms\BolmerCMS::checkAuth();
--------------------------------------------------------------------------------
/integration/drupal.php:
--------------------------------------------------------------------------------
1 |
9 | * @copyright 2010-2014 KCFinder Project
10 | * @license http://opensource.org/licenses/GPL-3.0 GPLv3
11 | * @license http://opensource.org/licenses/LGPL-3.0 LGPLv3
12 | * @link http://kcfinder.sunhater.com
13 | */
14 |
15 | // gets a valid drupal_path
16 | function get_drupal_path() {
17 | if (!empty($_SERVER['SCRIPT_FILENAME'])) {
18 | $drupal_path = dirname(dirname(dirname(dirname($_SERVER['SCRIPT_FILENAME']))));
19 | if (!file_exists($drupal_path . '/includes/bootstrap.inc')) {
20 | $drupal_path = dirname(dirname(dirname($_SERVER['SCRIPT_FILENAME'])));
21 | $depth = 2;
22 | do {
23 | $drupal_path = dirname($drupal_path);
24 | $depth++;
25 | } while (!($bootstrap_file_found = file_exists($drupal_path . '/includes/bootstrap.inc')) && $depth < 10);
26 | }
27 | }
28 |
29 | if (!isset($bootstrap_file_found) || !$bootstrap_file_found) {
30 | $drupal_path = '../../../../..';
31 | if (!file_exists($drupal_path . '/includes/bootstrap.inc')) {
32 | $drupal_path = '../..';
33 | do {
34 | $drupal_path .= '/..';
35 | $depth = substr_count($drupal_path, '..');
36 | } while (!($bootstrap_file_found = file_exists($drupal_path . '/includes/bootstrap.inc')) && $depth < 10);
37 | }
38 | }
39 | return $drupal_path;
40 | }
41 |
42 | function CheckAuthentication($drupal_path) {
43 |
44 | static $authenticated;
45 |
46 | if (!isset($authenticated)) {
47 |
48 | if (!isset($bootstrap_file_found) || $bootstrap_file_found) {
49 | $current_cwd = getcwd();
50 | if (!defined('DRUPAL_ROOT')){
51 | define('DRUPAL_ROOT', $drupal_path);
52 | }
53 |
54 | // Simulate being in the drupal root folder so we can share the session
55 | chdir(DRUPAL_ROOT);
56 |
57 | global $base_url;
58 | $base_root = (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] == 'on') ? 'https' : 'http';
59 | $base_url = $base_root .= '://'. preg_replace('/[^a-z0-9-:._]/i', '', $_SERVER['HTTP_HOST']);
60 |
61 | if ($dir = trim(dirname($_SERVER['SCRIPT_NAME']), '\,/')) {
62 | $base_path = "/$dir";
63 | $base_url .= $base_path;
64 | }
65 |
66 | // correct base_url so it points to Drupal root
67 | $pos = strpos($base_url, '/sites/');
68 | $base_url = substr($base_url, 0, $pos); // drupal root absolute url
69 |
70 | // If we aren't in a Drupal installation, or if Drupal path hasn't been properly found, die
71 | if(!file_exists(DRUPAL_ROOT . '/includes/bootstrap.inc')) {
72 | die("The CMS integration service for -drupal- requires KCFinder to be properly placed inside your Drupal installation.");
73 | }
74 |
75 |
76 | // bootstrap
77 | require_once(DRUPAL_ROOT . '/includes/bootstrap.inc');
78 | drupal_bootstrap(DRUPAL_BOOTSTRAP_FULL);
79 |
80 | // if user has access permission...
81 | if (user_access('access kcfinder')) {
82 | if (!isset($_SESSION['KCFINDER'])) {
83 | $_SESSION['KCFINDER'] = array();
84 | $_SESSION['KCFINDER']['disabled'] = false;
85 | }
86 |
87 | // User has permission, so make sure KCFinder is not disabled!
88 | if(!isset($_SESSION['KCFINDER']['disabled'])) {
89 | $_SESSION['KCFINDER']['disabled'] = false;
90 | }
91 |
92 | global $user;
93 | $_SESSION['KCFINDER']['uploadURL'] = strtr(variable_get('kcfinder_upload_url', 'sites/default/files/kcfinder'), array('%u' => $user->uid, '%n' => $user->name));
94 | $_SESSION['KCFINDER']['uploadDir'] = strtr(variable_get('kcfinder_upload_dir', ''), array('%u' => $user->uid, '%n' => $user->name));
95 | $_SESSION['KCFINDER']['theme'] = variable_get('kcfinder_theme', 'default');
96 |
97 | //echo '
uploadURL: ' . $_SESSION['KCFINDER']['uploadURL']
;
98 | //echo '
uploadDir: ' . $_SESSION['KCFINDER']['uploadDir']
;
99 |
100 | chdir($current_cwd);
101 |
102 | return true;
103 | }
104 |
105 | chdir($current_cwd);
106 | return false;
107 | }
108 | }
109 | }
110 |
111 | CheckAuthentication(get_drupal_path());
112 |
--------------------------------------------------------------------------------
/integration/laraveladministrator.php:
--------------------------------------------------------------------------------
1 |
9 | * @copyright 2010-2014 KCFinder Project
10 | * @license http://opensource.org/licenses/GPL-3.0 GPLv3
11 | * @license http://opensource.org/licenses/LGPL-3.0 LGPLv3
12 | * @link http://kcfinder.sunhater.com
13 | */
14 |
15 | class LaravelAdministrator {
16 | protected static $authenticated = false;
17 | protected static $bootstrapAutoload = '/bootstrap/autoload.php';
18 | protected static $bootstrapStart = '/bootstrap/start.php';
19 |
20 | static function getLaravelPath() {
21 |
22 | //absolute path method
23 | if (!empty($_SERVER['SCRIPT_FILENAME'])) {
24 | $laravelPath = dirname(dirname(dirname(dirname(dirname(dirname(dirname(dirname($_SERVER['SCRIPT_FILENAME']))))))));
25 | if (!file_exists($laravelPath . self::$bootstrapAutoload)) {
26 | $laravelPath = dirname(dirname(dirname(dirname($_SERVER['SCRIPT_FILENAME']))));
27 | $depth = 3;
28 | do {
29 | $laravelPath = dirname($laravelPath);
30 | $depth++;
31 | $autoloadFound = file_exists($laravelPath . self::$bootstrapAutoload);
32 | } while (!$autoloadFound && $depth < 10);
33 | }
34 | else {
35 | $autoloadFound = true;
36 | }
37 | }
38 |
39 | //relative path method
40 | if (!isset($autoloadFound) || !$autoloadFound) {
41 | $laravelPath = '../../../../../../..';
42 | if (!file_exists($laravelPath . self::$bootstrapAutoload)) {
43 | $laravelPath = '../../..';
44 | $depth = 3;
45 | do {
46 | $laravelPath .= '/..';
47 | $depth++;
48 | } while (!($autoloadFound = file_exists($laravelPath . self::$bootstrapAutoload)) && $depth < 10);
49 | }
50 | else {
51 | $autoloadFound = true;
52 | }
53 | }
54 |
55 | return $laravelPath;
56 | }
57 |
58 | static function runIntegration() {
59 |
60 | $laravelPath = self::getLaravelPath();
61 |
62 | if(file_exists($laravelPath . '/bootstrap/autoload.php')) {
63 | $currentCwd = getcwd();
64 |
65 | // Simulate being in the laravel root folder so we can share the session (is this really needed?)
66 | // chdir($laravelPath);
67 |
68 | // bootstrap
69 | require $laravelPath.'/bootstrap/autoload.php';
70 | $app = require_once $laravelPath.'/bootstrap/start.php';
71 | $app->boot(); //Boot the application's service providers.
72 |
73 | //get the admin check closure that should be supplied in the admin config
74 | $permission = \Illuminate\Support\Facades\Config::get('administrator::administrator.permission');
75 | $hasPermission = $permission();
76 | self::$authenticated = $hasPermission;
77 |
78 | //start session if not started already
79 | if (session_id() == "") {
80 | session_start();
81 | $iStartedTheSession = true;
82 | }
83 |
84 | if (!isset($_SESSION['KCFINDER'])) {
85 | $_SESSION['KCFINDER'] = array();
86 | }
87 |
88 | //if this is a simple true value, user is logged in
89 | if ($hasPermission == true) {
90 |
91 | $configFactory = \Illuminate\Support\Facades\App::make('admin_config_factory');
92 | $modelName = \Illuminate\Support\Facades\Input::get('model');
93 | $fieldName = \Illuminate\Support\Facades\Input::get('field');
94 |
95 | if(!empty($modelName) && !empty($fieldName)) {
96 |
97 | $modelConfig = $configFactory->make($modelName, true);
98 | $modelConfigOptions = $modelConfig->getOption('edit_fields');
99 | $kcfinderOptions = $modelConfigOptions[$fieldName]["kcfinder"];
100 |
101 | //allow users to use an option called 'enabled' instead of 'disabled'
102 | if(isset($kcfinderOptions["enabled"])) {
103 | $kcfinderOptions["disabled"] = !$kcfinderOptions["enabled"];
104 | }
105 |
106 | //save all options to the session
107 | foreach ($kcfinderOptions as $optKey => $optValue) {
108 | $_SESSION['KCFINDER'][$optKey] = $optValue;
109 | }
110 |
111 | self::$authenticated = !$_SESSION['KCFINDER']['disabled'];
112 |
113 | }
114 | }
115 | else {
116 | //clean and reset the session variable
117 | $_SESSION['KCFINDER'] = array();
118 | }
119 |
120 | //close the session if I started it
121 | if (isset($iStartedTheSession)) {
122 | session_write_close();
123 | }
124 |
125 | // chdir($currentCwd);
126 | return self::$authenticated;
127 | }
128 | else {
129 | die("The integration service for 'Laravel Administrator' failed. Laravel root path not found!");
130 | }
131 |
132 | }
133 |
134 | }
135 |
136 | \kcfinder\integration\LaravelAdministrator::runIntegration();
137 |
--------------------------------------------------------------------------------
/js/010.jquery.fixes.js:
--------------------------------------------------------------------------------
1 | /** This file is part of KCFinder project
2 | *
3 | * @desc My jQuery UI fixes
4 | * @package KCFinder
5 | * @version 3.12
6 | * @author Pavel Tzonkov
7 | * @copyright 2010-2014 KCFinder Project
8 | * @license http://opensource.org/licenses/GPL-3.0 GPLv3
9 | * @license http://opensource.org/licenses/LGPL-3.0 LGPLv3
10 | * @link http://kcfinder.sunhater.com
11 | */
12 |
13 | (function($) {
14 |
15 | $.fn.oldMenu = $.fn.menu;
16 | $.fn.menu = function(p1, p2, p3) {
17 | var ret = $(this).oldMenu(p1, p2, p3);
18 | $(this).each(function() {
19 | if (!$(this).hasClass('sh-menu')) {
20 | $(this).addClass('sh-menu')
21 | .children().first().addClass('ui-menu-item-first');
22 | $(this).children().last().addClass('ui-menu-item-last');
23 | $(this).find('.ui-menu').addClass('sh-menu').each(function() {
24 | $(this).children().first().addClass('ui-menu-item-first');
25 | $(this).children().last().addClass('ui-menu-item-last');
26 | });
27 | }
28 | });
29 | return ret;
30 | };
31 |
32 | })(jQuery);
--------------------------------------------------------------------------------
/js/020.jquery.rightClick.js:
--------------------------------------------------------------------------------
1 | /** This file is part of KCFinder project
2 | *
3 | * @desc Right Click jQuery Plugin
4 | * @package KCFinder
5 | * @version 3.12
6 | * @author Pavel Tzonkov
7 | * @copyright 2010-2014 KCFinder Project
8 | * @license http://opensource.org/licenses/GPL-3.0 GPLv3
9 | * @license http://opensource.org/licenses/LGPL-3.0 LGPLv3
10 | * @link http://kcfinder.sunhater.com
11 | */
12 |
13 | (function($) {
14 | $.fn.rightClick = function(func) {
15 | var events = "contextmenu rightclick";
16 | $(this).each(function() {
17 | $(this).unbind(events).bind(events, function(e) {
18 | $.globalBlur();
19 | e.preventDefault();
20 | $.clearSelection();
21 | if ($.isFunction(func))
22 | func(this, e);
23 | });
24 | });
25 | return $(this);
26 | };
27 | })(jQuery);
--------------------------------------------------------------------------------
/js/021.jquery.taphold.js:
--------------------------------------------------------------------------------
1 | // @author Rich Adams
2 |
3 | // Implements a tap and hold functionality. If you click/tap and release, it will trigger a normal
4 | // click event. But if you click/tap and hold for 1s (default), it will trigger a taphold event instead.
5 |
6 | ;(function($)
7 | {
8 | // Default options
9 | var defaults = {
10 | duration: 1000, // ms
11 | clickHandler: null
12 | }
13 |
14 | // When start of a taphold event is triggered.
15 | function startHandler(event)
16 | {
17 | var $elem = jQuery(this);
18 |
19 | // Merge the defaults and any user defined settings.
20 | settings = jQuery.extend({}, defaults, event.data);
21 |
22 | // If object also has click handler, store it and unbind. Taphold will trigger the
23 | // click itself, rather than normal propagation.
24 | if (typeof $elem.data("events") != "undefined"
25 | && typeof $elem.data("events").click != "undefined")
26 | {
27 | // Find the one without a namespace defined.
28 | for (var c in $elem.data("events").click)
29 | {
30 | if ($elem.data("events").click[c].namespace == "")
31 | {
32 | var handler = $elem.data("events").click[c].handler
33 | $elem.data("taphold_click_handler", handler);
34 | $elem.unbind("click", handler);
35 | break;
36 | }
37 | }
38 | }
39 | // Otherwise, if a custom click handler was explicitly defined, then store it instead.
40 | else if (typeof settings.clickHandler == "function")
41 | {
42 | $elem.data("taphold_click_handler", settings.clickHandler);
43 | }
44 |
45 | // Reset the flags
46 | $elem.data("taphold_triggered", false); // If a hold was triggered
47 | $elem.data("taphold_clicked", false); // If a click was triggered
48 | $elem.data("taphold_cancelled", false); // If event has been cancelled.
49 |
50 | // Set the timer for the hold event.
51 | $elem.data("taphold_timer",
52 | setTimeout(function()
53 | {
54 | // If event hasn't been cancelled/clicked already, then go ahead and trigger the hold.
55 | if (!$elem.data("taphold_cancelled")
56 | && !$elem.data("taphold_clicked"))
57 | {
58 | // Trigger the hold event, and set the flag to say it's been triggered.
59 | $elem.trigger(jQuery.extend(event, jQuery.Event("taphold")));
60 | $elem.data("taphold_triggered", true);
61 | }
62 | }, settings.duration));
63 | }
64 |
65 | // When user ends a tap or click, decide what we should do.
66 | function stopHandler(event)
67 | {
68 | var $elem = jQuery(this);
69 |
70 | // If taphold has been cancelled, then we're done.
71 | if ($elem.data("taphold_cancelled")) { return; }
72 |
73 | // Clear the hold timer. If it hasn't already triggered, then it's too late anyway.
74 | clearTimeout($elem.data("taphold_timer"));
75 |
76 | // If hold wasn't triggered and not already clicked, then was a click event.
77 | if (!$elem.data("taphold_triggered")
78 | && !$elem.data("taphold_clicked"))
79 | {
80 | // If click handler, trigger it.
81 | if (typeof $elem.data("taphold_click_handler") == "function")
82 | {
83 | $elem.data("taphold_click_handler")(jQuery.extend(event, jQuery.Event("click")));
84 | }
85 |
86 | // Set flag to say we've triggered the click event.
87 | $elem.data("taphold_clicked", true);
88 | }
89 | }
90 |
91 | // If a user prematurely leaves the boundary of the object we're working on.
92 | function leaveHandler(event)
93 | {
94 | // Cancel the event.
95 | $(this).data("taphold_cancelled", true);
96 | }
97 |
98 | // Determine if touch events are supported.
99 | var touchSupported = ("ontouchstart" in window) // Most browsers
100 | || ("onmsgesturechange" in window); // Microsoft
101 |
102 | var taphold = $.event.special.taphold =
103 | {
104 | setup: function(data)
105 | {
106 | $(this).bind((touchSupported ? "touchstart" : "mousedown"), data, startHandler)
107 | .bind((touchSupported ? "touchend" : "mouseup"), stopHandler)
108 | .bind((touchSupported ? "touchmove touchcancel" : "mouseleave"), leaveHandler);
109 | },
110 | teardown: function(namespaces)
111 | {
112 | $(this).unbind((touchSupported ? "touchstart" : "mousedown"), startHandler)
113 | .unbind((touchSupported ? "touchend" : "mouseup"), stopHandler)
114 | .unbind((touchSupported ? "touchmove touchcancel" : "mouseleave"), leaveHandler);
115 | }
116 | };
117 | })(jQuery);
--------------------------------------------------------------------------------
/js/029.jquery.agent.js:
--------------------------------------------------------------------------------
1 | /** This file is part of KCFinder project
2 | *
3 | * @desc User Agent jQuery Plugin
4 | * @package KCFinder
5 | * @version 3.12
6 | * @author Pavel Tzonkov
7 | * @copyright 2010-2014 KCFinder Project
8 | * @license http://opensource.org/licenses/GPL-3.0 GPLv3
9 | * @license http://opensource.org/licenses/LGPL-3.0 LGPLv3
10 | * @link http://kcfinder.sunhater.com
11 | */
12 |
13 | (function($) {
14 | $.agent = {};
15 |
16 | var agent = " " + navigator.userAgent,
17 |
18 | patterns = [
19 | {
20 | expr: / [a-z]+\/[0-9a-z\.]+/ig,
21 | delim: "/"
22 | }, {
23 | expr: / [a-z]+:[0-9a-z\.]+/ig,
24 | delim: ":",
25 | keys: ["rv", "version"]
26 | }, {
27 | expr: / [a-z]+\s+[0-9a-z\.]+/ig,
28 | delim: /\s+/,
29 | keys: ["opera", "msie", "firefox", "android"]
30 | }, {
31 | expr: /[ \/\(]([a-z0-9_]+)[ ;\)\/]/ig,
32 | keys: "i386|i486|i586|i686|x86|x64|x86_64|intel|ppc|powerpc|windows|macintosh|darwin|unix|linux|sunos|android|iphone|ipad|ipod|amiga|amigaos|beos|wii|playstation|gentoo|fedora|slackware|ubuntu|archlinux|debian|mint|mageia|mandriva|freebsd|openbsd|netbsd|solaris|opensolaris|x11|mobile|phone".split('|'),
33 | sub: "platform"
34 | }
35 | ];
36 |
37 | $.each(patterns, function(i, pattern) {
38 | var elements = agent.match(pattern.expr);
39 | if (elements === null)
40 | return;
41 | $.each(elements, function(j, ag) {
42 | ag = ag.replace(/^\s+/, "").toLowerCase();
43 | var key = ag.replace(pattern.expr, "$1"),
44 | val = true;
45 | if (typeof pattern.delim != "undefined") {
46 | ag = ag.split(pattern.delim);
47 | key = ag[0];
48 | val = ag[1];
49 | }
50 |
51 | if (typeof pattern.keys != "undefined") {
52 | var exists = false, k = 0;
53 | for (; k < pattern.keys.length; k++)
54 | if (pattern.keys[k] == key) {
55 | exists = true;
56 | break;
57 | }
58 | if (!exists)
59 | return;
60 | }
61 |
62 | if (typeof pattern.sub != "undefined") {
63 | if (typeof $.agent[pattern.sub] != "object")
64 | $.agent[pattern.sub] = {};
65 | if (typeof $.agent[pattern.sub][key] == "undefined")
66 | $.agent[pattern.sub][key] = val;
67 |
68 | } else if (typeof $.agent[key] == "undefined")
69 | $.agent[key] = val;
70 | });
71 | });
72 |
73 | if (!$.agent.platform)
74 | $.agent.platform = {};
75 |
76 | // Check for mobile device
77 | $.mobile = false;
78 | var keys = "mobile|android|iphone|ipad|ipod|iemobile|phone".split('|');
79 | a = $.agent;
80 |
81 | $.each([a, a.platform], function(i, p) {
82 | for (var j = 0; j < keys.length; j++) {
83 | if (p[keys[j]]) {
84 | $.mobile = true;
85 | return false;
86 | }
87 | }
88 | });
89 | })(jQuery);
--------------------------------------------------------------------------------
/js/040.object.js:
--------------------------------------------------------------------------------
1 | /** This file is part of KCFinder project
2 | *
3 | * @desc Base JavaScript object properties
4 | * @package KCFinder
5 | * @version 3.12
6 | * @author Pavel Tzonkov
7 | * @copyright 2010-2014 KCFinder Project
8 | * @license http://opensource.org/licenses/GPL-3.0 GPLv3
9 | * @license http://opensource.org/licenses/LGPL-3.0 LGPLv3
10 | * @link http://kcfinder.sunhater.com
11 | */
12 |
13 | var _ = {
14 | opener: {},
15 | support: {},
16 | files: [],
17 | clipboard: [],
18 | labels: [],
19 | shows: [],
20 | orders: [],
21 | cms: "",
22 | scrollbarWidth: 20
23 | };
24 |
--------------------------------------------------------------------------------
/js/070.settings.js:
--------------------------------------------------------------------------------
1 | /** This file is part of KCFinder project
2 | *
3 | * @desc Settings panel functionality
4 | * @package KCFinder
5 | * @version 3.12
6 | * @author Pavel Tzonkov
7 | * @copyright 2010-2014 KCFinder Project
8 | * @license http://opensource.org/licenses/GPL-3.0 GPLv3
9 | * @license http://opensource.org/licenses/LGPL-3.0 LGPLv3
10 | * @link http://kcfinder.sunhater.com
11 | */
12 |
13 | _.initSettings = function() {
14 | $('#settings fieldset').disableTextSelect();
15 |
16 | if (!_.shows.length)
17 | $('#show input[type="checkbox"]').each(function(i) {
18 | _.shows[i] = this.name;
19 | });
20 |
21 | var shows = _.shows;
22 |
23 | if (!$.$.kuki.isSet('showname')) {
24 | $.$.kuki.set('showname', "on");
25 | $.each(shows, function (i, val) {
26 | if (val != "name") $.$.kuki.set('show' + val, "off");
27 | });
28 | }
29 |
30 | $('#show input[type="checkbox"]').click(function() {
31 | $.$.kuki.set('show' + this.name, this.checked ? "on" : "off")
32 | $('#files .file div.' + this.name).css('display', this.checked ? "block" : "none");
33 | });
34 |
35 | $.each(shows, function(i, val) {
36 | $('#show input[name="' + val + '"]').get(0).checked = ($.$.kuki.get('show' + val) == "on") ? "checked" : "";
37 | });
38 |
39 | if (!_.orders.length)
40 | $('#order input[type="radio"]').each(function(i) {
41 | _.orders[i] = this.value;
42 | })
43 |
44 | var orders = _.orders;
45 |
46 | if (!$.$.kuki.isSet('order'))
47 | $.$.kuki.set('order', "name");
48 |
49 | if (!$.$.kuki.isSet('orderDesc'))
50 | $.$.kuki.set('orderDesc', "off");
51 |
52 | $('#order input[value="' + $.$.kuki.get('order') + '"]').get(0).checked = true;
53 | $('#order input[name="desc"]').get(0).checked = ($.$.kuki.get('orderDesc') == "on");
54 |
55 | $('#order input[type="radio"]').click(function() {
56 | $.$.kuki.set('order', this.value);
57 | _.orderFiles();
58 | });
59 |
60 | $('#order input[name="desc"]').click(function() {
61 | $.$.kuki.set('orderDesc', this.checked ? 'on' : "off");
62 | _.orderFiles();
63 | });
64 |
65 | if (!$.$.kuki.isSet('view'))
66 | $.$.kuki.set('view', "thumbs");
67 |
68 | if ($.$.kuki.get('view') == "list")
69 | $('#show').parent().hide();
70 |
71 | $('#view input[value="' + $.$.kuki.get('view') + '"]').get(0).checked = true;
72 |
73 | $('#view input').click(function() {
74 | var view = this.value;
75 | if ($.$.kuki.get('view') != view) {
76 | $.$.kuki.set('view', view);
77 | if (view == "list")
78 | $('#show').parent().hide();
79 | else
80 | $('#show').parent().show();
81 | }
82 | _.fixFilesHeight();
83 | _.refresh();
84 | });
85 | $('#settings fieldset, #settings input, #settings label').transForm();
86 | _.initLangs();
87 | };
88 |
89 |
90 | _.initLangs = function() {
91 | $.each(_.langs, function(id, lng) {
92 | var opt = $('');
93 | opt.val(id).text(lng);
94 | if (id == _.lang)
95 | opt.attr({selected: true});
96 | $('#lang').append(opt);
97 | });
98 | $('#lang').change(function() {
99 | window.location = _.getURL("browser", this.value) + "&theme=" + encodeURIComponent(_.theme);
100 | });
101 | }
--------------------------------------------------------------------------------
/js/120.misc.js:
--------------------------------------------------------------------------------
1 | /** This file is part of KCFinder project
2 | *
3 | * @desc Miscellaneous functionality
4 | * @package KCFinder
5 | * @version 3.12
6 | * @author Pavel Tzonkov
7 | * @copyright 2010-2014 KCFinder Project
8 | * @license http://opensource.org/licenses/GPL-3.0 GPLv3
9 | * @license http://opensource.org/licenses/LGPL-3.0 LGPLv3
10 | * @link http://kcfinder.sunhater.com
11 | */
12 |
13 | _.orderFiles = function(callBack, selected) {
14 | var order = $.$.kuki.get('order'),
15 | desc = ($.$.kuki.get('orderDesc') == "on"),
16 | a1, b1, arr;
17 |
18 | if (!_.files || !_.files.sort)
19 | _.files = [];
20 |
21 | _.files = _.files.sort(function(a, b) {
22 | if (!order) order = "name";
23 |
24 | if (order == "date") {
25 | a1 = a.mtime;
26 | b1 = b.mtime;
27 | } else if (order == "type") {
28 | a1 = $.$.getFileExtension(a.name);
29 | b1 = $.$.getFileExtension(b.name);
30 | } else if (order == "size") {
31 | a1 = a.size;
32 | b1 = b.size;
33 | } else {
34 | a1 = a[order].toLowerCase();
35 | b1 = b[order].toLowerCase();
36 | }
37 |
38 | if ((order == "size") || (order == "date")) {
39 | if (a1 < b1) return desc ? 1 : -1;
40 | if (a1 > b1) return desc ? -1 : 1;
41 | }
42 |
43 | if (a1 == b1) {
44 | a1 = a.name.toLowerCase();
45 | b1 = b.name.toLowerCase();
46 | arr = [a1, b1];
47 | arr = arr.sort();
48 | return (arr[0] == a1) ? -1 : 1;
49 | }
50 |
51 | arr = [a1, b1];
52 | arr = arr.sort();
53 | if (arr[0] == a1) return desc ? 1 : -1;
54 | return desc ? -1 : 1;
55 | });
56 |
57 | _.showFiles(callBack, selected);
58 | _.initFiles();
59 | };
60 |
61 | _.humanSize = function(size) {
62 | if (size < 1024) {
63 | size = size.toString() + " B";
64 | } else if (size < 1048576) {
65 | size /= 1024;
66 | size = parseInt(size).toString() + " KB";
67 | } else if (size < 1073741824) {
68 | size /= 1048576;
69 | size = parseInt(size).toString() + " MB";
70 | } else if (size < 1099511627776) {
71 | size /= 1073741824;
72 | size = parseInt(size).toString() + " GB";
73 | } else {
74 | size /= 1099511627776;
75 | size = parseInt(size).toString() + " TB";
76 | }
77 | return size;
78 | };
79 |
80 | _.getURL = function(act, lang) {
81 | if (!lang)
82 | lang = _.lang;
83 | var url = "browse.php?type=" + encodeURIComponent(_.type) + "&lng=" + encodeURIComponent(lang);
84 | if (_.opener.name)
85 | url += "&opener=" + encodeURIComponent(_.opener.name);
86 | if (act)
87 | url += "&act=" + encodeURIComponent(act);
88 | if (_.cms)
89 | url += "&cms=" + encodeURIComponent(_.cms);
90 | return url;
91 | };
92 |
93 | _.label = function(index, data) {
94 | var label = _.labels[index] ? _.labels[index] : index;
95 | if (data)
96 | $.each(data, function(key, val) {
97 | label = label.replace("{" + key + "}", val);
98 | });
99 | return label;
100 | };
101 |
102 | _.check4errors = function(data) {
103 | if (!data.error)
104 | return false;
105 | var msg = data.error.join
106 | ? data.error.join("\n")
107 | : data.error;
108 | _.alert(msg);
109 | return true;
110 | };
111 |
112 | _.post = function(url, data) {
113 | var html = '';
123 | $('#menu').html(html).show();
124 | $('#postForm').get(0).submit();
125 | };
126 |
127 | _.fadeFiles = function() {
128 | $('#files > div').css({
129 | opacity: "0.4",
130 | filter: "alpha(opacity=40)"
131 | });
132 | };
133 |
--------------------------------------------------------------------------------
/js/index.php:
--------------------------------------------------------------------------------
1 |
9 | * @copyright 2010-2014 KCFinder Project
10 | * @license http://opensource.org/licenses/GPL-3.0 GPLv3
11 | * @license http://opensource.org/licenses/LGPL-3.0 LGPLv3
12 | * @link http://kcfinder.sunhater.com
13 | */
14 |
15 | namespace kcfinder;
16 |
17 | chdir("..");
18 | require "core/autoload.php";
19 | $min = new minifier("js");
20 | $min->minify("cache/base.js");
21 |
--------------------------------------------------------------------------------
/js_localize.php:
--------------------------------------------------------------------------------
1 |
9 | * @copyright 2010-2014 KCFinder Project
10 | * @license http://opensource.org/licenses/GPL-3.0 GPLv3
11 | * @license http://opensource.org/licenses/LGPL-3.0 LGPLv3
12 | * @link http://kcfinder.sunhater.com
13 | */
14 |
15 | namespace kcfinder;
16 | require "core/autoload.php";
17 |
18 | if (!isset($_GET['lng']) || ($_GET['lng'] == 'en') ||
19 | ($_GET['lng'] != basename($_GET['lng'])) ||
20 | !is_file("lang/" . $_GET['lng'] . ".php")
21 | ) {
22 | header("Content-Type: text/javascript");
23 | die;
24 | }
25 |
26 | $file = "lang/" . $_GET['lng'] . ".php";
27 | $mtime = @filemtime($file);
28 |
29 | if ($mtime)
30 | httpCache::checkMTime($mtime, "Content-Type: text/javascript");
31 |
32 | require $file;
33 | header("Content-Type: text/javascript");
34 |
35 | echo "_.labels={";
36 |
37 | $i = 0;
38 | foreach ($lang as $english => $native) {
39 | if (substr($english, 0, 1) != "_") {
40 | echo "'" . text::jsValue($english) . "':\"" . text::jsValue($native) . "\"";
41 | if (++$i < count($lang))
42 | echo ",";
43 | }
44 | }
45 |
46 | echo "}";
47 |
--------------------------------------------------------------------------------
/lang/.htaccess:
--------------------------------------------------------------------------------
1 |
2 | Order allow,deny
3 | Deny from all
4 |
5 |
--------------------------------------------------------------------------------
/lang/en.php:
--------------------------------------------------------------------------------
1 |
9 | * @copyright 2010-2014 KCFinder Project
10 | * @license http://opensource.org/licenses/GPL-3.0 GPLv3
11 | * @license http://opensource.org/licenses/LGPL-3.0 LGPLv3
12 | * @link http://kcfinder.sunhater.com
13 | */
14 |
15 | $lang = array(
16 | '_lang' => "English",
17 | '_native' => "English",
18 | '_locale' => "en_US.UTF-8",
19 | '_charset' => "utf-8",
20 |
21 | // Date time formats. See http://www.php.net/manual/en/function.strftime.php
22 | '_dateTimeFull' => "%A, %B %e, %Y %I:%M %p",
23 | '_dateTimeMid' => "%a %b %e %Y %I:%M %p",
24 | '_dateTimeSmall' => "%m/%d/%Y %I:%M %p",
25 | );
26 |
--------------------------------------------------------------------------------
/lang/zh-cn.php:
--------------------------------------------------------------------------------
1 | "Chinese Simplified",
13 | '_native' => "中国简体",
14 | '_locale' => "zh_CN.UTF-8", // UNIX localization code
15 | '_charset' => "utf-8", // Browser charset
16 |
17 | // Date time formats. See http://www.php.net/manual/en/function.strftime.php
18 | '_dateTimeFull' => "%A, %e %B, %Y %H:%M",
19 | '_dateTimeMid' => "%a %e %b %Y %H:%M",
20 | '_dateTimeSmall' => "%Y-%m-%d %H:%M",
21 |
22 | "You don't have permissions to upload files." => "您没有权限上传文件。",
23 | "You don't have permissions to browse server." => "您没有权限查看服务器文件。",
24 | "Cannot move uploaded file to target folder." => "无法移动上传文件到指定文件夹。",
25 | "Unknown error." => "发生不可预知异常。",
26 | "The uploaded file exceeds {size} bytes." => "文件大小超过{size}字节。",
27 | "The uploaded file was only partially uploaded." => "文件未完全上传。",
28 | "No file was uploaded." => "文件未上传。",
29 | "Missing a temporary folder." => "临时文件夹不存在。",
30 | "Failed to write file." => "写入文件失败。",
31 | "Denied file extension." => "禁止的文件扩展名。",
32 | "Unknown image format/encoding." => "无法确认图片格式。",
33 | "The image is too big and/or cannot be resized." => "图片大太,且(或)无法更改大小。",
34 | "Cannot create {dir} folder." => "无法创建{dir}文件夹。",
35 | "Cannot rename the folder." => "无法重命名该文件夹。",
36 | "Cannot write to upload folder." => "无法写入上传文件夹。",
37 | "Cannot read .htaccess" => "文件.htaccess无法读取。",
38 | "Incorrect .htaccess file. Cannot rewrite it!" => "文件.htaccess错误,无法重写。",
39 | "Cannot read upload folder." => "无法读取上传目录。",
40 | "Cannot access or create thumbnails folder." => "无法访问或创建缩略图文件夹。",
41 | "Cannot access or write to upload folder." => "无法访问或写入上传文件夹。",
42 | "Please enter new folder name." => "请输入文件夹名。",
43 | "Unallowable characters in folder name." => "文件夹名含有禁止字符。",
44 | "Folder name shouldn't begins with '.'" => "文件夹名不能以点(.)为首字符。",
45 | "Please enter new file name." => "请输入新文件名。",
46 | "Unallowable characters in file name." => "文件名含有禁止字符。",
47 | "File name shouldn't begins with '.'" => "文件名不能以点(.)为首字符。",
48 | "Are you sure you want to delete this file?" => "是否确认删除该文件?",
49 | "Are you sure you want to delete this folder and all its content?" => "是否确认删除该文件夹以及其子文件和子目录?",
50 | "Non-existing directory type." => "不存在的目录类型。",
51 | "Undefined MIME types." => "未定义的MIME类型。",
52 | "Fileinfo PECL extension is missing." => "文件PECL属性不存在。",
53 | "Opening fileinfo database failed." => "打开文件属性数据库出错。",
54 | "You can't upload such files." => "你无法上传该文件。",
55 | "The file '{file}' does not exist." => "文件{file}不存在。",
56 | "Cannot read '{file}'." => "无法读取文件{file}。",
57 | "Cannot copy '{file}'." => "无法复制文件{file}。",
58 | "Cannot move '{file}'." => "无法移动文件{file}。",
59 | "Cannot delete '{file}'." => "无法删除文件{file}。",
60 | "Cannot delete the folder." => "无法删除该文件夹。",
61 | "Click to remove from the Clipboard" => "点击从剪贴板删除",
62 | "This file is already added to the Clipboard." => "文件已复制到剪贴板。",
63 | "The files in the Clipboard are not readable." => "剪贴板上该文件无法读取。",
64 | "{count} files in the Clipboard are not readable. Do you want to copy the rest?" => "剪贴板{count}个文件无法读取。 是否复制静态文件?",
65 | "The files in the Clipboard are not movable." => "剪贴板上该文件无法移动。",
66 | "{count} files in the Clipboard are not movable. Do you want to move the rest?" => "剪贴板{count}个文件无法移动。 是否移动静态文件?",
67 | "The files in the Clipboard are not removable." => "剪贴板上该文件无法删除。",
68 | "{count} files in the Clipboard are not removable. Do you want to delete the rest?" => "剪贴板{count}个文件无法删除。 是否删除静态文件?",
69 | "The selected files are not removable." => "选中文件未删除。",
70 | "{count} selected files are not removable. Do you want to delete the rest?" => "选中的{count}个文件未删除。是否删除静态文件?",
71 | "Are you sure you want to delete all selected files?" => "是否确认删除选中文件?",
72 | "Failed to delete {count} files/folders." => "{count}个文件或文件夹无法删除。",
73 | "A file or folder with that name already exists." => "文件或文件夹已存在。",
74 | "Copy files here" => "复制到这里",
75 | "Move files here" => "移动到这里",
76 | "Delete files" => "删除这些文件",
77 | "Clear the Clipboard" => "清除剪贴板",
78 | "Are you sure you want to delete all files in the Clipboard?" => "是否确认删除所有在剪贴板的文件?",
79 | "Copy {count} files" => "复制 {count} 个文件",
80 | "Move {count} files" => "移动 {count} 个文件 ",
81 | "Add to Clipboard" => "添加到剪贴板",
82 | "Inexistant or inaccessible folder." => "不存在或不可访问的文件夹。",
83 | "New folder name:" => "新文件夹名:",
84 | "New file name:" => "新文件夹:",
85 | "Upload" => "上传",
86 | "Refresh" => "刷新",
87 | "Settings" => "设置",
88 | "Maximize" => "最大化",
89 | "About" => "关于",
90 | "files" => "文件",
91 | "selected files" => "选中的文件",
92 | "View:" => "视图:",
93 | "Show:" => "显示:",
94 | "Order by:" => "排序:",
95 | "Thumbnails" => "图标",
96 | "List" => "列表",
97 | "Name" => "文件名",
98 | "Type" => "种类",
99 | "Size" => "大小",
100 | "Date" => "日期",
101 | "Descending" => "降序",
102 | "Uploading file..." => "正在上传文件...",
103 | "Loading image..." => "正在加载图片...",
104 | "Loading folders..." => "正在加载文件夹...",
105 | "Loading files..." => "正在加载文件...",
106 | "New Subfolder..." => "新建文件夹...",
107 | "Rename..." => "重命名...",
108 | "Delete" => "删除",
109 | "OK" => "OK",
110 | "Cancel" => "取消",
111 | "Select" => "选择",
112 | "Select Thumbnail" => "选择缩略图",
113 | "Select Thumbnails" => "选择缩略图",
114 | "View" => "查看",
115 | "Download" => "下载",
116 | "Download files" => "下载文件",
117 | "Clipboard" => "剪贴板",
118 | "Checking for new version..." => "正在检查新版本...",
119 | "Unable to connect!" => "无法链接!",
120 | "Download version {version} now!" => "马上下载{version}版本!",
121 | "KCFinder is up to date!" => "KCFinder已经是最新的!",
122 | "Licenses:" => "许可证",
123 | "Attention" => "注意",
124 | "Question" => "问题",
125 | "Yes" => "是",
126 | "No" => "否",
127 | "You cannot rename the extension of files!" => "禁止修改文件后缀",
128 | "Uploading file {number} of {count}... {progress}" => "正在上传文件{number} / {count}... {progress}",
129 | "Failed to upload {filename}!" => "上传失败{filename}!",
130 | );
131 |
--------------------------------------------------------------------------------
/lib/.htaccess:
--------------------------------------------------------------------------------
1 |
2 | Order allow,deny
3 | Deny from all
4 |
5 |
--------------------------------------------------------------------------------
/lib/class_fastImage.php:
--------------------------------------------------------------------------------
1 | load($uri);
27 | }
28 |
29 | public function load($uri)
30 | {
31 | if ($this->handle) $this->close();
32 |
33 | $this->uri = $uri;
34 | // Joy - this is a fix for URLs missing "http:"
35 | if ($uri[0] == '/' && $uri[1] == '/') {
36 | $uri = 'http:' . $uri;
37 | }
38 |
39 | $this->handle = fopen(
40 | $uri,
41 | 'r',
42 | false,
43 | stream_context_create(array(
44 | 'http'=> array('timeout' => 0.5),
45 | ))
46 | );
47 | }
48 |
49 | public function isValid()
50 | {
51 | return empty($this->handle) ? false : true;
52 | }
53 |
54 | public function close()
55 | {
56 | if (is_resource($this->handle)) fclose($this->handle);
57 | }
58 |
59 |
60 | public function getSize()
61 | {
62 | $this->strpos = 0;
63 | if ($this->getType())
64 | {
65 | return array_values($this->parseSize());
66 | }
67 |
68 | return false;
69 | }
70 |
71 |
72 | public function getType()
73 | {
74 | $this->strpos = 0;
75 |
76 | if (!$this->type)
77 | {
78 | switch ($this->getChars(2))
79 | {
80 | case "BM":
81 | return $this->type = 'bmp';
82 | case "GI":
83 | return $this->type = 'gif';
84 | case chr(0xFF).chr(0xd8):
85 | return $this->type = 'jpeg';
86 | case chr(0x89).'P':
87 | return $this->type = 'png';
88 | default:
89 | return false;
90 | }
91 | }
92 |
93 | return $this->type;
94 | }
95 |
96 |
97 | private function parseSize()
98 | {
99 | $this->strpos = 0;
100 |
101 | switch ($this->type)
102 | {
103 | case 'png':
104 | return $this->parseSizeForPNG();
105 | case 'gif':
106 | return $this->parseSizeForGIF();
107 | case 'bmp':
108 | return $this->parseSizeForBMP();
109 | case 'jpeg':
110 | return $this->parseSizeForJPEG();
111 | }
112 |
113 | return null;
114 | }
115 |
116 |
117 | private function parseSizeForPNG()
118 | {
119 | $chars = $this->getChars(25);
120 |
121 | return unpack("N*", substr($chars, 16, 8));
122 | }
123 |
124 |
125 | private function parseSizeForGIF()
126 | {
127 | $chars = $this->getChars(11);
128 |
129 | return unpack("S*", substr($chars, 6, 4));
130 | }
131 |
132 |
133 | private function parseSizeForBMP()
134 | {
135 | $chars = $this->getChars(29);
136 | $chars = substr($chars, 14, 14);
137 | $type = unpack('C', $chars);
138 |
139 | return (reset($type) == 40) ? unpack('L*', substr($chars, 4)) : unpack('L*', substr($chars, 4, 8));
140 | }
141 |
142 |
143 | private function parseSizeForJPEG()
144 | {
145 | $state = null;
146 | $i = 0;
147 |
148 | while (true)
149 | {
150 | switch ($state)
151 | {
152 | default:
153 | $this->getChars(2);
154 | $state = 'started';
155 | break;
156 | case 'started':
157 | $b = $this->getByte();
158 | if ($b === false) return false;
159 |
160 | $state = $b == 0xFF ? 'sof' : 'started';
161 | break;
162 |
163 | case 'sof':
164 | $b = $this->getByte();
165 | if (in_array($b, range(0xe0, 0xef)))
166 | {
167 | $state = 'skipframe';
168 | }
169 | elseif (in_array($b, array_merge(range(0xC0,0xC3), range(0xC5,0xC7), range(0xC9,0xCB), range(0xCD,0xCF))))
170 | {
171 | $state = 'readsize';
172 | }
173 | elseif ($b == 0xFF)
174 | {
175 | $state = 'sof';
176 | }
177 | else
178 | {
179 | $state = 'skipframe';
180 | }
181 | break;
182 |
183 | case 'skipframe':
184 | $skip = $this->readInt($this->getChars(2)) - 2;
185 | $state = 'doskip';
186 | break;
187 |
188 | case 'doskip':
189 | $this->getChars($skip);
190 | $state = 'started';
191 | break;
192 |
193 | case 'readsize':
194 | $c = $this->getChars(7);
195 |
196 | return array($this->readInt(substr($c, 5, 2)), $this->readInt(substr($c, 3, 2)));
197 | }
198 | }
199 | }
200 |
201 |
202 | private function getChars($n)
203 | {
204 | $response = null;
205 |
206 | // do we need more data?
207 | if ($this->strpos + $n -1 >= strlen($this->str))
208 | {
209 | $end = ($this->strpos + $n);
210 |
211 | while (strlen($this->str) < $end && $response !== false)
212 | {
213 | // read more from the file handle
214 | $need = $end - ftell($this->handle);
215 |
216 | if ($response = fread($this->handle, $need))
217 | {
218 | $this->str .= $response;
219 | }
220 | else
221 | {
222 | return false;
223 | }
224 | }
225 | }
226 |
227 | $result = substr($this->str, $this->strpos, $n);
228 | $this->strpos += $n;
229 |
230 | return $result;
231 | }
232 |
233 |
234 | private function getByte()
235 | {
236 | $c = $this->getChars(1);
237 | $b = unpack("C", $c);
238 |
239 | return reset($b);
240 | }
241 |
242 |
243 | private function readInt($str)
244 | {
245 | $size = unpack("C*", $str);
246 |
247 | return ($size[1] << 8) + $size[2];
248 | }
249 |
250 |
251 | public function __destruct()
252 | {
253 | $this->close();
254 | }
255 | }
--------------------------------------------------------------------------------
/lib/class_zipFolder.php:
--------------------------------------------------------------------------------
1 |
10 | * @copyright 2010-2014 KCFinder Project
11 | * @license http://opensource.org/licenses/GPL-3.0 GPLv3
12 | * @license http://opensource.org/licenses/LGPL-3.0 LGPLv3
13 | * @link http://kcfinder.sunhater.com
14 | */
15 |
16 | namespace kcfinder;
17 |
18 | class zipFolder {
19 | protected $zip;
20 | protected $root;
21 | protected $ignored;
22 |
23 | function __construct($file, $folder, $ignored=null) {
24 | $this->zip = new \ZipArchive();
25 |
26 | $this->ignored = is_array($ignored)
27 | ? $ignored
28 | : ($ignored ? array($ignored) : array());
29 |
30 | if ($this->zip->open($file, \ZipArchive::CREATE) !== TRUE)
31 | throw new \Exception("cannot open <$file>\n");
32 |
33 | $folder = rtrim($folder, '/');
34 |
35 | if (strstr($folder, '/')) {
36 | $this->root = substr($folder, 0, strrpos($folder, '/') + 1);
37 | $folder = substr($folder, strrpos($folder, '/') + 1);
38 | }
39 |
40 | $this->zip($folder);
41 | $this->zip->close();
42 | }
43 |
44 | function zip($folder, $parent=null) {
45 | $full_path = "{$this->root}$parent$folder";
46 | $zip_path = "$parent$folder";
47 | $this->zip->addEmptyDir($zip_path);
48 | $dir = new \DirectoryIterator($full_path);
49 | foreach ($dir as $file)
50 | if (!$file->isDot()) {
51 | $filename = $file->getFilename();
52 | if (!in_array($filename, $this->ignored)) {
53 | if ($file->isDir())
54 | $this->zip($filename, "$zip_path/");
55 | else
56 | $this->zip->addFile("$full_path/$filename", "$zip_path/$filename");
57 | }
58 | }
59 | }
60 | }
61 |
--------------------------------------------------------------------------------
/lib/helper_dir.php:
--------------------------------------------------------------------------------
1 |
9 | * @copyright 2010-2014 KCFinder Project
10 | * @license http://opensource.org/licenses/GPL-3.0 GPLv3
11 | * @license http://opensource.org/licenses/LGPL-3.0 LGPLv3
12 | * @link http://kcfinder.sunhater.com
13 | */
14 |
15 | namespace kcfinder;
16 |
17 | class dir {
18 |
19 | /** Checks if the given directory is really writable. The standard PHP
20 | * function is_writable() does not work properly on Windows servers
21 | * @param string $dir
22 | * @return bool */
23 |
24 | static function isWritable($dir) {
25 | $dir = path::normalize($dir);
26 | if (!is_dir($dir))
27 | return false;
28 | $i = 0;
29 | do {
30 | $file = "$dir/is_writable_" . md5($i++);
31 | } while (file_exists($file));
32 | if (!@touch($file))
33 | return false;
34 | unlink($file);
35 | return true;
36 | }
37 |
38 | /** Recursively delete the given directory. Returns TRUE on success.
39 | * If $firstFailExit parameter is true (default), the method returns the
40 | * path to the first failed file or directory which cannot be deleted.
41 | * If $firstFailExit is false, the method returns an array with failed
42 | * files and directories which cannot be deleted. The third parameter
43 | * $failed is used for internal use only.
44 | * @param string $dir
45 | * @param bool $firstFailExit
46 | * @param array $failed
47 | * @return mixed */
48 |
49 | static function prune($dir, $firstFailExit=true, array $failed=null) {
50 | if ($failed === null) $failed = array();
51 | $files = self::content($dir);
52 | if ($files === false) {
53 | if ($firstFailExit)
54 | return $dir;
55 | $failed[] = $dir;
56 | return $failed;
57 | }
58 |
59 | foreach ($files as $file) {
60 | if (is_dir($file)) {
61 | $failed_in = self::prune($file, $firstFailExit, $failed);
62 | if ($failed_in !== true) {
63 | if ($firstFailExit)
64 | return $failed_in;
65 | if (is_array($failed_in))
66 | $failed = array_merge($failed, $failed_in);
67 | else
68 | $failed[] = $failed_in;
69 | }
70 | } elseif (!@unlink($file)) {
71 | if ($firstFailExit)
72 | return $file;
73 | $failed[] = $file;
74 | }
75 | }
76 |
77 | if (!@rmdir($dir)) {
78 | if ($firstFailExit)
79 | return $dir;
80 | $failed[] = $dir;
81 | }
82 |
83 | return count($failed) ? $failed : true;
84 | }
85 |
86 | /** Get the content of the given directory. Returns an array with filenames
87 | * or FALSE on failure
88 | * @param string $dir
89 | * @param array $options
90 | * @return mixed */
91 |
92 | static function content($dir, array $options=null) {
93 |
94 | $defaultOptions = array(
95 | 'types' => "all", // Allowed: "all" or possible return values
96 | // of filetype(), or an array with them
97 | 'addPath' => true, // Whether to add directory path to filenames
98 | 'pattern' => '/./', // Regular expression pattern for filename
99 | 'followLinks' => true
100 | );
101 |
102 | if (!is_dir($dir) || !is_readable($dir))
103 | return false;
104 |
105 | if (strtoupper(substr(PHP_OS, 0, 3)) == "WIN")
106 | $dir = str_replace("\\", "/", $dir);
107 | $dir = rtrim($dir, "/");
108 |
109 | $dh = @opendir($dir);
110 | if ($dh === false)
111 | return false;
112 |
113 | if ($options === null)
114 | $options = $defaultOptions;
115 |
116 | foreach ($defaultOptions as $key => $val)
117 | if (!isset($options[$key]))
118 | $options[$key] = $val;
119 |
120 | $files = array();
121 | while (($file = @readdir($dh)) !== false) {
122 |
123 | if (($file == '.') || ($file == '..') ||
124 | !preg_match($options['pattern'], $file)
125 | )
126 | continue;
127 |
128 | $fullpath = "$dir/$file";
129 | $type = filetype($fullpath);
130 |
131 | // If file is a symlink, get the true type of its destination
132 | if ($options['followLinks'] && ($type == "link"))
133 | $type = filetype(realpath($fullpath));
134 |
135 | if (($options['types'] === "all") || ($type === $options['types']) ||
136 | (is_array($options['types']) && in_array($type, $options['types']))
137 | )
138 | $files[] = $options['addPath'] ? $fullpath : $file;
139 | }
140 | closedir($dh);
141 | usort($files, array(__NAMESPACE__ . "\\dir", "fileSort"));
142 | return $files;
143 | }
144 |
145 | static function fileSort($a, $b) {
146 | if (function_exists("mb_strtolower")) {
147 | $a = mb_strtolower($a);
148 | $b = mb_strtolower($b);
149 | } else {
150 | $a = strtolower($a);
151 | $b = strtolower($b);
152 | }
153 | if ($a == $b) return 0;
154 | return ($a < $b) ? -1 : 1;
155 | }
156 | }
157 |
--------------------------------------------------------------------------------
/lib/helper_httpCache.php:
--------------------------------------------------------------------------------
1 |
9 | * @copyright 2010-2014 KCFinder Project
10 | * @license http://opensource.org/licenses/GPL-3.0 GPLv3
11 | * @license http://opensource.org/licenses/LGPL-3.0 LGPLv3
12 | * @link http://kcfinder.sunhater.com
13 | */
14 |
15 | namespace kcfinder;
16 |
17 | class httpCache {
18 | const DEFAULT_TYPE = "text/html";
19 | const DEFAULT_EXPIRE = 604800; // in seconds
20 |
21 | /** Cache a file. The $type parameter might define the MIME type of the file
22 | * or path to magic file to autodetect the MIME type. If you skip $type
23 | * parameter the method will try with the default magic file. Autodetection
24 | * of MIME type requires Fileinfo PHP extension used in file::getMimeType()
25 | * @param string $file
26 | * @param string $type
27 | * @param integer $expire
28 | * @param array $headers */
29 |
30 | static function file($file, $type=null, $expire=null, array $headers=null) {
31 | $mtime = @filemtime($file);
32 | if ($mtime !== false) self::checkMTime($mtime);
33 |
34 | if ($type === null) {
35 | $magic = ((substr($type, 0, 1) == "/") || preg_match('/^[a-z]\:/i', $type))
36 | ? $type : null;
37 | $type = file::getMimeType($file, $magic);
38 | if (!$type) $type = null;
39 | }
40 |
41 | self::content(@file_get_contents($file), $mtime, $type, $expire, $headers, false);
42 | }
43 |
44 | /** Cache the given $content with $mtime modification time.
45 | * @param binary $content
46 | * @param integer $mtime
47 | * @param string $type
48 | * @param integer $expire
49 | * @param array $headers
50 | * @param bool $checkMTime */
51 |
52 | static function content($content, $mtime, $type=null, $expire=null, array $headers=null, $checkMTime=true) {
53 | if ($checkMTime) self::checkMTime($mtime);
54 | if ($type === null) $type = self::DEFAULT_TYPE;
55 | if ($expire === null) $expire = self::DEFAULT_EXPIRE;
56 | $size = strlen($content);
57 | $expires = gmdate("D, d M Y H:i:s", time() + $expire) . " GMT";
58 | header("Content-Type: $type");
59 | header("Expires: $expires");
60 | header("Cache-Control: max-age=$expire");
61 | header("Pragma: !invalid");
62 | header("Content-Length: $size");
63 | if ($headers !== null) foreach ($headers as $header) header($header);
64 | echo $content;
65 | }
66 |
67 | /** Check if given modification time is newer than client-side one. If not,
68 | * the method will tell the client to get the content from its own cache.
69 | * Afterwards the script process will be terminated. This feature requires
70 | * the PHP to be configured as Apache module.
71 | * @param integer $mtime
72 | * @param mixed $sendHeaders */
73 |
74 | static function checkMTime($mtime, $sendHeaders=null) {
75 | header("Last-Modified: " . gmdate("D, d M Y H:i:s", $mtime) . " GMT");
76 |
77 | $headers = function_exists("getallheaders")
78 | ? getallheaders()
79 | : (function_exists("apache_request_headers")
80 | ? apache_request_headers()
81 | : false);
82 |
83 | if (is_array($headers) && isset($headers['If-Modified-Since'])) {
84 | $client_mtime = explode(';', $headers['If-Modified-Since']);
85 | $client_mtime = @strtotime($client_mtime[0]);
86 | if ($client_mtime >= $mtime) {
87 | header('HTTP/1.1 304 Not Modified');
88 | if (is_array($sendHeaders) && count($sendHeaders))
89 | foreach ($sendHeaders as $header)
90 | header($header);
91 | elseif ($sendHeaders !== null)
92 | header($sendHeaders);
93 | die;
94 | }
95 | }
96 | }
97 |
98 | }
99 |
--------------------------------------------------------------------------------
/lib/helper_path.php:
--------------------------------------------------------------------------------
1 |
9 | * @copyright 2010-2014 KCFinder Project
10 | * @license http://opensource.org/licenses/GPL-3.0 GPLv3
11 | * @license http://opensource.org/licenses/LGPL-3.0 LGPLv3
12 | * @link http://kcfinder.sunhater.com
13 | */
14 |
15 | namespace kcfinder;
16 |
17 | class path {
18 |
19 | /** Get the absolute URL path of the given one. Returns FALSE if the URL
20 | * is not valid or the current directory cannot be resolved (getcwd())
21 | * @param string $path
22 | * @return string */
23 |
24 | static function rel2abs_url($path) {
25 | if (substr($path, 0, 1) == "/") return $path;
26 | $dir = @getcwd();
27 |
28 | if (!isset($_SERVER['DOCUMENT_ROOT']) || ($dir === false))
29 | return false;
30 |
31 | $dir = self::normalize($dir);
32 | $doc_root = self::normalize(realpath($_SERVER['DOCUMENT_ROOT']));
33 |
34 | if (substr($dir, 0, strlen($doc_root)) != $doc_root)
35 | return false;
36 |
37 | $return = self::normalize(substr($dir, strlen($doc_root)) . "/$path");
38 | if (substr($return, 0, 1) !== "/")
39 | $return = "/$return";
40 |
41 | return $return;
42 | }
43 |
44 | /** Resolve full filesystem path of given URL. Returns FALSE if the URL
45 | * cannot be resolved
46 | * @param string $url
47 | * @return string */
48 |
49 | static function url2fullPath($url) {
50 | $url = self::normalize($url);
51 |
52 | $uri = isset($_SERVER['SCRIPT_NAME'])
53 | ? $_SERVER['SCRIPT_NAME'] : (isset($_SERVER['PHP_SELF'])
54 | ? $_SERVER['PHP_SELF']
55 | : false);
56 |
57 | $uri = self::normalize($uri);
58 |
59 | if (substr($url, 0, 1) !== "/") {
60 | if ($uri === false) return false;
61 | $url = dirname($uri) . "/$url";
62 | }
63 |
64 | if (isset($_SERVER['DOCUMENT_ROOT'])) {
65 | return self::normalize(realpath($_SERVER['DOCUMENT_ROOT']) . "/$url");
66 |
67 | } else {
68 | if ($uri === false) return false;
69 |
70 | if (isset($_SERVER['SCRIPT_FILENAME'])) {
71 | $scr_filename = self::normalize($_SERVER['SCRIPT_FILENAME']);
72 | return self::normalize(substr($scr_filename, 0, -strlen($uri)) . "/$url");
73 | }
74 |
75 | $count = count(explode('/', $uri)) - 1;
76 | for ($i = 0, $chdir = ""; $i < $count; $i++)
77 | $chdir .= "../";
78 | $chdir = self::normalize($chdir);
79 |
80 | $dir = getcwd();
81 | if (($dir === false) || !@chdir($chdir))
82 | return false;
83 | $rdir = getcwd();
84 | chdir($dir);
85 | return ($rdir !== false) ? self::normalize($rdir . "/$url") : false;
86 | }
87 | }
88 |
89 | /** Normalize the given path. On Windows servers backslash will be replaced
90 | * with slash. Removes unnecessary double slashes and double dots. Removes
91 | * last slash if it exists. Examples:
92 | * path::normalize("C:\\any\\path\\") returns "C:/any/path"
93 | * path::normalize("/your/path/..//home/") returns "/your/home"
94 | * @param string $path
95 | * @return string */
96 |
97 | static function normalize($path) {
98 |
99 | // Backslash to slash convert
100 | if (strtoupper(substr(PHP_OS, 0, 3)) == "WIN") {
101 | $path = preg_replace('/([^\\\])\\\+([^\\\])/s', "$1/$2", $path);
102 | if (substr($path, -1) == "\\") $path = substr($path, 0, -1);
103 | if (substr($path, 0, 1) == "\\") $path = "/" . substr($path, 1);
104 | }
105 |
106 | $path = preg_replace('/\/+/s', "/", $path);
107 |
108 | $path = "/$path";
109 | if (substr($path, -1) != "/")
110 | $path .= "/";
111 |
112 | $expr = '/\/([^\/]{1}|[^\.\/]{2}|[^\/]{3,})\/\.\.\//s';
113 | while (preg_match($expr, $path))
114 | $path = preg_replace($expr, "/", $path);
115 |
116 | $path = substr($path, 0, -1);
117 | $path = substr($path, 1);
118 | return $path;
119 | }
120 |
121 | /** Encode URL Path
122 | * @param string $path
123 | * @return string */
124 |
125 | static function urlPathEncode($path) {
126 | $path = self::normalize($path);
127 | $encoded = "";
128 | foreach (explode("/", $path) as $dir)
129 | $encoded .= rawurlencode($dir) . "/";
130 | $encoded = substr($encoded, 0, -1);
131 | return $encoded;
132 | }
133 |
134 | /** Decode URL Path
135 | * @param string $path
136 | * @return string */
137 |
138 | static function urlPathDecode($path) {
139 | $path = self::normalize($path);
140 | $decoded = "";
141 | foreach (explode("/", $path) as $dir)
142 | $decoded .= rawurldecode($dir) . "/";
143 | $decoded = substr($decoded, 0, -1);
144 | return $decoded;
145 | }
146 |
147 | }
148 |
--------------------------------------------------------------------------------
/lib/helper_phpGet.php:
--------------------------------------------------------------------------------
1 |
9 | * @copyright 2010-2014 KCFinder Project
10 | * @license http://opensource.org/licenses/GPL-3.0 GPLv3
11 | * @license http://opensource.org/licenses/LGPL-3.0 LGPLv3
12 | * @link http://kcfinder.sunhater.com
13 | */
14 |
15 | namespace kcfinder;
16 |
17 | class phpGet {
18 |
19 | static public $methods = array('curl', 'fopen', 'http', 'socket');
20 | static public $urlExpr = '/^([a-z]+):\/\/((([\p{L}\d\-]+\.)+[\p{L}]{1,4})(\:(\d{1,6}))?(\/.*)*)?$/u';
21 | static public $socketExpr = '/^[A-Z]+\/\d+(\.\d+)\s+\d+\s+OK\s*([a-zA-Z0-9\-]+\:\s*[^\n]*\n)*\s*([a-f0-9]+\r?\n)?(.*)$/s';
22 |
23 | static public function get($url, $file=null, $method=null) {
24 | if ($file === true)
25 | $file = basename($url);
26 | if ($file !== null) {
27 | if (is_dir($file))
28 | $file = rtrim($file, '/') . '/' . basename($url);
29 | $exists = file_exists($file);
30 | if (!@touch($file))
31 | return false;
32 | if (!$exists)
33 | @unlink($file);
34 | }
35 |
36 | if (in_array($method, self::$methods, true)) {
37 | $check = "check_$method";
38 | $get = "get_$method";
39 | if (self::$check())
40 | $content = self::$get($url);
41 | else
42 | return false;
43 | } else {
44 |
45 | foreach (self::$methods as $m) {
46 | $check = "check_$m";
47 | $get = "get_$m";
48 | if (self::$check()) {
49 | $content = self::$get($url);
50 | if ((($method !== true) && (strtolower($method) != "all")) ||
51 | ($content !== false)
52 | )
53 | break;
54 | }
55 | }
56 | if (!isset($content))
57 | return false;
58 | }
59 |
60 | return ($file !== null)
61 | ? @file_put_contents($file, $content)
62 | : $content;
63 | }
64 |
65 | static public function get_fopen($url) {
66 | return @file_get_contents($url);
67 | }
68 |
69 | static public function get_curl($url) {
70 | return (
71 | (false !== ( $curl = @curl_init($url) )) &&
72 | ( @ob_start() || (@curl_close($curl) && false)) &&
73 | ( @curl_exec($curl) || (@curl_close($curl) && false)) &&
74 | ((false !== ( $content = @ob_get_clean() )) || (@curl_close($curl) && false)) &&
75 | ( @curl_close($curl) || true)
76 | )
77 | ? $content
78 | : false;
79 | }
80 |
81 | static public function get_http($url) {
82 | return (
83 | (false !== ($content = @http_get($url))) &&
84 | (
85 | (
86 | preg_match(self::$socketExpr, $content, $match) &&
87 | false !== ($content = $match[4])
88 | ) || true
89 | )
90 | )
91 | ? $content
92 | : false;
93 | }
94 |
95 | static public function get_socket($url) {
96 | if (!preg_match(self::$urlExpr, $url, $match))
97 | return false;
98 |
99 | $protocol = $match[1];
100 | $host = $match[3];
101 | $port = strlen($match[6]) ? $match[6] : 80;
102 | $path = strlen($match[7]) ? $match[7] : "/";
103 |
104 | $cmd =
105 | "GET $path " . strtoupper($protocol) . "/1.1\r\n" .
106 | "Host: $host\r\n" .
107 | "Connection: Close\r\n\r\n";
108 |
109 | if ((false !== ( $socket = @socket_create(AF_INET, SOCK_STREAM, SOL_TCP) )) &&
110 | (false !== @socket_connect($socket, $host, $port) ) &&
111 | (false !== @socket_write($socket, $cmd, strlen($cmd)) ) &&
112 | (false !== ( $content = @socket_read($socket, 2048) ))
113 | ) {
114 | do {
115 | $piece = @socket_read($socket, 2048);
116 | $content .= $piece;
117 | } while ($piece);
118 |
119 | $content = preg_match(self::$socketExpr, $content, $match)
120 | ? $match[4] : false;
121 | }
122 |
123 | if (isset($socket) && is_resource($socket))
124 | @socket_close($socket);
125 | else
126 | return false;
127 |
128 | return isset($content) ? $content : false;
129 | }
130 |
131 | static private function check_fopen() {
132 | return
133 | ini_get('allow_url_fopen') &&
134 | function_exists('file_get_contents');
135 | }
136 |
137 | static private function check_curl() {
138 | return
139 | function_exists('curl_init') &&
140 | function_exists('curl_exec') &&
141 | function_exists('curl_close') &&
142 | function_exists('ob_start') &&
143 | function_exists('ob_get_clean');
144 | }
145 |
146 | static private function check_http() {
147 | return function_exists('http_get');
148 | }
149 |
150 | static private function check_socket() {
151 | return
152 | function_exists('socket_create') &&
153 | function_exists('socket_connect') &&
154 | function_exists('socket_write') &&
155 | function_exists('socket_read') &&
156 | function_exists('socket_close');
157 | }
158 | }
159 |
--------------------------------------------------------------------------------
/lib/helper_text.php:
--------------------------------------------------------------------------------
1 |
9 | * @copyright 2010-2014 KCFinder Project
10 | * @license http://opensource.org/licenses/GPL-3.0 GPLv3
11 | * @license http://opensource.org/licenses/LGPL-3.0 LGPLv3
12 | * @link http://kcfinder.sunhater.com
13 | */
14 |
15 | namespace kcfinder;
16 |
17 | class text {
18 |
19 | /** Replace repeated white spaces to single space
20 | * @param string $string
21 | * @return string */
22 |
23 | static function clearWhitespaces($string) {
24 | return trim(preg_replace('/\s+/s', " ", $string));
25 | }
26 |
27 | /** Normalize the string for HTML attribute value
28 | * @param string $string
29 | * @return string */
30 |
31 | static function htmlValue($string) {
32 | return
33 | str_replace('"', """,
34 | str_replace("'", ''',
35 | str_replace('<', '<',
36 | str_replace('&', "&",
37 | $string))));
38 | }
39 |
40 | /** Normalize the string for JavaScript string value
41 | * @param string $string
42 | * @return string */
43 |
44 | static function jsValue($string) {
45 | return
46 | preg_replace('/\r?\n/', "\\n",
47 | str_replace('"', "\\\"",
48 | str_replace("'", "\\'",
49 | str_replace("\\", "\\\\",
50 | $string))));
51 | }
52 |
53 | }
54 |
--------------------------------------------------------------------------------
/themes/dark/README:
--------------------------------------------------------------------------------
1 | This folder contains files for designing default visual theme for KCFinder.
2 | Some icons are taken from default KDE4 visual theme (http://www.kde.org)
3 |
4 | Theme Details:
5 |
6 | Version: 1.0
7 | Author: Pavel Tzonkov
8 | Licenses: GPLv3 - http://opensource.org/licenses/GPL-3.0
9 | LGPLv3 - http://opensource.org/licenses/LGPL-3.0
10 |
--------------------------------------------------------------------------------
/themes/dark/css.php:
--------------------------------------------------------------------------------
1 | minify("cache/theme_$theme.css");
11 |
--------------------------------------------------------------------------------
/themes/dark/img/bg_transparent.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/bg_transparent.png
--------------------------------------------------------------------------------
/themes/dark/img/files/big/..png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/big/..png
--------------------------------------------------------------------------------
/themes/dark/img/files/big/.image.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/big/.image.png
--------------------------------------------------------------------------------
/themes/dark/img/files/big/avi.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/big/avi.png
--------------------------------------------------------------------------------
/themes/dark/img/files/big/bat.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/big/bat.png
--------------------------------------------------------------------------------
/themes/dark/img/files/big/bmp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/big/bmp.png
--------------------------------------------------------------------------------
/themes/dark/img/files/big/bz2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/big/bz2.png
--------------------------------------------------------------------------------
/themes/dark/img/files/big/ccd.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/big/ccd.png
--------------------------------------------------------------------------------
/themes/dark/img/files/big/cgi.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/big/cgi.png
--------------------------------------------------------------------------------
/themes/dark/img/files/big/com.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/big/com.png
--------------------------------------------------------------------------------
/themes/dark/img/files/big/csh.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/big/csh.png
--------------------------------------------------------------------------------
/themes/dark/img/files/big/cue.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/big/cue.png
--------------------------------------------------------------------------------
/themes/dark/img/files/big/deb.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/big/deb.png
--------------------------------------------------------------------------------
/themes/dark/img/files/big/dll.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/big/dll.png
--------------------------------------------------------------------------------
/themes/dark/img/files/big/doc.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/big/doc.png
--------------------------------------------------------------------------------
/themes/dark/img/files/big/docx.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/big/docx.png
--------------------------------------------------------------------------------
/themes/dark/img/files/big/exe.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/big/exe.png
--------------------------------------------------------------------------------
/themes/dark/img/files/big/fla.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/big/fla.png
--------------------------------------------------------------------------------
/themes/dark/img/files/big/flv.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/big/flv.png
--------------------------------------------------------------------------------
/themes/dark/img/files/big/fon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/big/fon.png
--------------------------------------------------------------------------------
/themes/dark/img/files/big/gif.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/big/gif.png
--------------------------------------------------------------------------------
/themes/dark/img/files/big/gz.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/big/gz.png
--------------------------------------------------------------------------------
/themes/dark/img/files/big/htm.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/big/htm.png
--------------------------------------------------------------------------------
/themes/dark/img/files/big/html.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/big/html.png
--------------------------------------------------------------------------------
/themes/dark/img/files/big/ini.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/big/ini.png
--------------------------------------------------------------------------------
/themes/dark/img/files/big/iso.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/big/iso.png
--------------------------------------------------------------------------------
/themes/dark/img/files/big/jar.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/big/jar.png
--------------------------------------------------------------------------------
/themes/dark/img/files/big/java.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/big/java.png
--------------------------------------------------------------------------------
/themes/dark/img/files/big/jpeg.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/big/jpeg.png
--------------------------------------------------------------------------------
/themes/dark/img/files/big/jpg.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/big/jpg.png
--------------------------------------------------------------------------------
/themes/dark/img/files/big/js.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/big/js.png
--------------------------------------------------------------------------------
/themes/dark/img/files/big/mds.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/big/mds.png
--------------------------------------------------------------------------------
/themes/dark/img/files/big/mdx.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/big/mdx.png
--------------------------------------------------------------------------------
/themes/dark/img/files/big/mid.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/big/mid.png
--------------------------------------------------------------------------------
/themes/dark/img/files/big/midi.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/big/midi.png
--------------------------------------------------------------------------------
/themes/dark/img/files/big/mkv.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/big/mkv.png
--------------------------------------------------------------------------------
/themes/dark/img/files/big/mov.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/big/mov.png
--------------------------------------------------------------------------------
/themes/dark/img/files/big/mp3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/big/mp3.png
--------------------------------------------------------------------------------
/themes/dark/img/files/big/mp4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/big/mp4.png
--------------------------------------------------------------------------------
/themes/dark/img/files/big/mpeg.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/big/mpeg.png
--------------------------------------------------------------------------------
/themes/dark/img/files/big/mpg.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/big/mpg.png
--------------------------------------------------------------------------------
/themes/dark/img/files/big/nfo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/big/nfo.png
--------------------------------------------------------------------------------
/themes/dark/img/files/big/nrg.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/big/nrg.png
--------------------------------------------------------------------------------
/themes/dark/img/files/big/ogg.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/big/ogg.png
--------------------------------------------------------------------------------
/themes/dark/img/files/big/pdf.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/big/pdf.png
--------------------------------------------------------------------------------
/themes/dark/img/files/big/php.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/big/php.png
--------------------------------------------------------------------------------
/themes/dark/img/files/big/phps.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/big/phps.png
--------------------------------------------------------------------------------
/themes/dark/img/files/big/pl.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/big/pl.png
--------------------------------------------------------------------------------
/themes/dark/img/files/big/pm.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/big/pm.png
--------------------------------------------------------------------------------
/themes/dark/img/files/big/png.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/big/png.png
--------------------------------------------------------------------------------
/themes/dark/img/files/big/ppt.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/big/ppt.png
--------------------------------------------------------------------------------
/themes/dark/img/files/big/pptx.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/big/pptx.png
--------------------------------------------------------------------------------
/themes/dark/img/files/big/psd.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/big/psd.png
--------------------------------------------------------------------------------
/themes/dark/img/files/big/qt.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/big/qt.png
--------------------------------------------------------------------------------
/themes/dark/img/files/big/rar.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/big/rar.png
--------------------------------------------------------------------------------
/themes/dark/img/files/big/rpm.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/big/rpm.png
--------------------------------------------------------------------------------
/themes/dark/img/files/big/rtf.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/big/rtf.png
--------------------------------------------------------------------------------
/themes/dark/img/files/big/sh.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/big/sh.png
--------------------------------------------------------------------------------
/themes/dark/img/files/big/sql.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/big/sql.png
--------------------------------------------------------------------------------
/themes/dark/img/files/big/srt.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/big/srt.png
--------------------------------------------------------------------------------
/themes/dark/img/files/big/sub.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/big/sub.png
--------------------------------------------------------------------------------
/themes/dark/img/files/big/swf.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/big/swf.png
--------------------------------------------------------------------------------
/themes/dark/img/files/big/tgz.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/big/tgz.png
--------------------------------------------------------------------------------
/themes/dark/img/files/big/tif.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/big/tif.png
--------------------------------------------------------------------------------
/themes/dark/img/files/big/tiff.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/big/tiff.png
--------------------------------------------------------------------------------
/themes/dark/img/files/big/torrent.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/big/torrent.png
--------------------------------------------------------------------------------
/themes/dark/img/files/big/ttf.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/big/ttf.png
--------------------------------------------------------------------------------
/themes/dark/img/files/big/txt.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/big/txt.png
--------------------------------------------------------------------------------
/themes/dark/img/files/big/wav.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/big/wav.png
--------------------------------------------------------------------------------
/themes/dark/img/files/big/wma.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/big/wma.png
--------------------------------------------------------------------------------
/themes/dark/img/files/big/xls.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/big/xls.png
--------------------------------------------------------------------------------
/themes/dark/img/files/big/xlsx.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/big/xlsx.png
--------------------------------------------------------------------------------
/themes/dark/img/files/big/zip.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/big/zip.png
--------------------------------------------------------------------------------
/themes/dark/img/files/small/..png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/small/..png
--------------------------------------------------------------------------------
/themes/dark/img/files/small/.image.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/small/.image.png
--------------------------------------------------------------------------------
/themes/dark/img/files/small/avi.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/small/avi.png
--------------------------------------------------------------------------------
/themes/dark/img/files/small/bat.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/small/bat.png
--------------------------------------------------------------------------------
/themes/dark/img/files/small/bmp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/small/bmp.png
--------------------------------------------------------------------------------
/themes/dark/img/files/small/bz2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/small/bz2.png
--------------------------------------------------------------------------------
/themes/dark/img/files/small/ccd.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/small/ccd.png
--------------------------------------------------------------------------------
/themes/dark/img/files/small/cgi.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/small/cgi.png
--------------------------------------------------------------------------------
/themes/dark/img/files/small/com.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/small/com.png
--------------------------------------------------------------------------------
/themes/dark/img/files/small/csh.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/small/csh.png
--------------------------------------------------------------------------------
/themes/dark/img/files/small/cue.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/small/cue.png
--------------------------------------------------------------------------------
/themes/dark/img/files/small/deb.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/small/deb.png
--------------------------------------------------------------------------------
/themes/dark/img/files/small/dll.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/small/dll.png
--------------------------------------------------------------------------------
/themes/dark/img/files/small/doc.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/small/doc.png
--------------------------------------------------------------------------------
/themes/dark/img/files/small/docx.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/small/docx.png
--------------------------------------------------------------------------------
/themes/dark/img/files/small/exe.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/small/exe.png
--------------------------------------------------------------------------------
/themes/dark/img/files/small/fla.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/small/fla.png
--------------------------------------------------------------------------------
/themes/dark/img/files/small/flv.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/small/flv.png
--------------------------------------------------------------------------------
/themes/dark/img/files/small/fon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/small/fon.png
--------------------------------------------------------------------------------
/themes/dark/img/files/small/gif.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/small/gif.png
--------------------------------------------------------------------------------
/themes/dark/img/files/small/gz.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/small/gz.png
--------------------------------------------------------------------------------
/themes/dark/img/files/small/htm.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/small/htm.png
--------------------------------------------------------------------------------
/themes/dark/img/files/small/html.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/small/html.png
--------------------------------------------------------------------------------
/themes/dark/img/files/small/ini.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/small/ini.png
--------------------------------------------------------------------------------
/themes/dark/img/files/small/iso.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/small/iso.png
--------------------------------------------------------------------------------
/themes/dark/img/files/small/jar.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/small/jar.png
--------------------------------------------------------------------------------
/themes/dark/img/files/small/java.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/small/java.png
--------------------------------------------------------------------------------
/themes/dark/img/files/small/jpeg.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/small/jpeg.png
--------------------------------------------------------------------------------
/themes/dark/img/files/small/jpg.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/small/jpg.png
--------------------------------------------------------------------------------
/themes/dark/img/files/small/js.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/small/js.png
--------------------------------------------------------------------------------
/themes/dark/img/files/small/mds.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/small/mds.png
--------------------------------------------------------------------------------
/themes/dark/img/files/small/mdx.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/small/mdx.png
--------------------------------------------------------------------------------
/themes/dark/img/files/small/mid.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/small/mid.png
--------------------------------------------------------------------------------
/themes/dark/img/files/small/midi.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/small/midi.png
--------------------------------------------------------------------------------
/themes/dark/img/files/small/mkv.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/small/mkv.png
--------------------------------------------------------------------------------
/themes/dark/img/files/small/mov.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/small/mov.png
--------------------------------------------------------------------------------
/themes/dark/img/files/small/mp3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/small/mp3.png
--------------------------------------------------------------------------------
/themes/dark/img/files/small/mp4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/small/mp4.png
--------------------------------------------------------------------------------
/themes/dark/img/files/small/mpeg.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/small/mpeg.png
--------------------------------------------------------------------------------
/themes/dark/img/files/small/mpg.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/small/mpg.png
--------------------------------------------------------------------------------
/themes/dark/img/files/small/nfo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/small/nfo.png
--------------------------------------------------------------------------------
/themes/dark/img/files/small/nrg.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/small/nrg.png
--------------------------------------------------------------------------------
/themes/dark/img/files/small/ogg.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/small/ogg.png
--------------------------------------------------------------------------------
/themes/dark/img/files/small/pdf.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/small/pdf.png
--------------------------------------------------------------------------------
/themes/dark/img/files/small/php.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/small/php.png
--------------------------------------------------------------------------------
/themes/dark/img/files/small/phps.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/small/phps.png
--------------------------------------------------------------------------------
/themes/dark/img/files/small/pl.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/small/pl.png
--------------------------------------------------------------------------------
/themes/dark/img/files/small/pm.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/small/pm.png
--------------------------------------------------------------------------------
/themes/dark/img/files/small/png.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/small/png.png
--------------------------------------------------------------------------------
/themes/dark/img/files/small/ppt.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/small/ppt.png
--------------------------------------------------------------------------------
/themes/dark/img/files/small/pptx.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/small/pptx.png
--------------------------------------------------------------------------------
/themes/dark/img/files/small/psd.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/small/psd.png
--------------------------------------------------------------------------------
/themes/dark/img/files/small/qt.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/small/qt.png
--------------------------------------------------------------------------------
/themes/dark/img/files/small/rar.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/small/rar.png
--------------------------------------------------------------------------------
/themes/dark/img/files/small/rpm.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/small/rpm.png
--------------------------------------------------------------------------------
/themes/dark/img/files/small/rtf.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/small/rtf.png
--------------------------------------------------------------------------------
/themes/dark/img/files/small/sh.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/small/sh.png
--------------------------------------------------------------------------------
/themes/dark/img/files/small/sql.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/small/sql.png
--------------------------------------------------------------------------------
/themes/dark/img/files/small/srt.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/small/srt.png
--------------------------------------------------------------------------------
/themes/dark/img/files/small/sub.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/small/sub.png
--------------------------------------------------------------------------------
/themes/dark/img/files/small/swf.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/small/swf.png
--------------------------------------------------------------------------------
/themes/dark/img/files/small/tgz.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/small/tgz.png
--------------------------------------------------------------------------------
/themes/dark/img/files/small/tif.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/small/tif.png
--------------------------------------------------------------------------------
/themes/dark/img/files/small/tiff.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/small/tiff.png
--------------------------------------------------------------------------------
/themes/dark/img/files/small/torrent.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/small/torrent.png
--------------------------------------------------------------------------------
/themes/dark/img/files/small/ttf.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/small/ttf.png
--------------------------------------------------------------------------------
/themes/dark/img/files/small/txt.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/small/txt.png
--------------------------------------------------------------------------------
/themes/dark/img/files/small/wav.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/small/wav.png
--------------------------------------------------------------------------------
/themes/dark/img/files/small/wma.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/small/wma.png
--------------------------------------------------------------------------------
/themes/dark/img/files/small/xls.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/small/xls.png
--------------------------------------------------------------------------------
/themes/dark/img/files/small/xlsx.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/small/xlsx.png
--------------------------------------------------------------------------------
/themes/dark/img/files/small/zip.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/files/small/zip.png
--------------------------------------------------------------------------------
/themes/dark/img/icons/about.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/icons/about.png
--------------------------------------------------------------------------------
/themes/dark/img/icons/clipboard-add.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/icons/clipboard-add.png
--------------------------------------------------------------------------------
/themes/dark/img/icons/clipboard-clear.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/icons/clipboard-clear.png
--------------------------------------------------------------------------------
/themes/dark/img/icons/clipboard.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/icons/clipboard.png
--------------------------------------------------------------------------------
/themes/dark/img/icons/copy.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/icons/copy.png
--------------------------------------------------------------------------------
/themes/dark/img/icons/delete.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/icons/delete.png
--------------------------------------------------------------------------------
/themes/dark/img/icons/download.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/icons/download.png
--------------------------------------------------------------------------------
/themes/dark/img/icons/folder-new.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/icons/folder-new.png
--------------------------------------------------------------------------------
/themes/dark/img/icons/maximize.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/icons/maximize.png
--------------------------------------------------------------------------------
/themes/dark/img/icons/move.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/icons/move.png
--------------------------------------------------------------------------------
/themes/dark/img/icons/refresh.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/icons/refresh.png
--------------------------------------------------------------------------------
/themes/dark/img/icons/rename.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/icons/rename.png
--------------------------------------------------------------------------------
/themes/dark/img/icons/select.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/icons/select.png
--------------------------------------------------------------------------------
/themes/dark/img/icons/settings.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/icons/settings.png
--------------------------------------------------------------------------------
/themes/dark/img/icons/upload.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/icons/upload.png
--------------------------------------------------------------------------------
/themes/dark/img/icons/view.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/icons/view.png
--------------------------------------------------------------------------------
/themes/dark/img/kcf_logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/kcf_logo.png
--------------------------------------------------------------------------------
/themes/dark/img/loading.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/loading.gif
--------------------------------------------------------------------------------
/themes/dark/img/tree/denied.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/tree/denied.png
--------------------------------------------------------------------------------
/themes/dark/img/tree/folder.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/tree/folder.png
--------------------------------------------------------------------------------
/themes/dark/img/tree/minus.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/tree/minus.png
--------------------------------------------------------------------------------
/themes/dark/img/tree/plus.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/tree/plus.png
--------------------------------------------------------------------------------
/themes/dark/img/ui-icons_black.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/ui-icons_black.png
--------------------------------------------------------------------------------
/themes/dark/img/ui-icons_grey.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/ui-icons_grey.png
--------------------------------------------------------------------------------
/themes/dark/img/ui-icons_white.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/dark/img/ui-icons_white.png
--------------------------------------------------------------------------------
/themes/dark/init.js:
--------------------------------------------------------------------------------
1 | // Preload some images
2 | $.each([
3 | "loading.gif",
4 | "ui-icons_black.png",
5 | "ui-icons_grey.png",
6 | "ui-icons_white.png"
7 | ], function(i, img) {
8 | new Image().src = "themes/dark/img/" + img;
9 | });
10 |
--------------------------------------------------------------------------------
/themes/dark/js.php:
--------------------------------------------------------------------------------
1 | minify("cache/theme_$theme.js");
11 |
--------------------------------------------------------------------------------
/themes/default/README:
--------------------------------------------------------------------------------
1 | This folder contains files for designing default visual theme for KCFinder.
2 | Some icons are taken from default KDE4 visual theme (http://www.kde.org)
3 |
4 | Theme Details:
5 |
6 | Version: 1.0
7 | Author: Pavel Tzonkov
8 | Licenses: GPLv3 - http://opensource.org/licenses/GPL-3.0
9 | LGPLv3 - http://opensource.org/licenses/LGPL-3.0
10 |
--------------------------------------------------------------------------------
/themes/default/css.php:
--------------------------------------------------------------------------------
1 | minify("cache/theme_$theme.css");
11 |
--------------------------------------------------------------------------------
/themes/default/img/bg_transparent.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/bg_transparent.png
--------------------------------------------------------------------------------
/themes/default/img/files/big/..png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/big/..png
--------------------------------------------------------------------------------
/themes/default/img/files/big/.image.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/big/.image.png
--------------------------------------------------------------------------------
/themes/default/img/files/big/avi.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/big/avi.png
--------------------------------------------------------------------------------
/themes/default/img/files/big/bat.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/big/bat.png
--------------------------------------------------------------------------------
/themes/default/img/files/big/bmp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/big/bmp.png
--------------------------------------------------------------------------------
/themes/default/img/files/big/bz2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/big/bz2.png
--------------------------------------------------------------------------------
/themes/default/img/files/big/ccd.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/big/ccd.png
--------------------------------------------------------------------------------
/themes/default/img/files/big/cgi.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/big/cgi.png
--------------------------------------------------------------------------------
/themes/default/img/files/big/com.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/big/com.png
--------------------------------------------------------------------------------
/themes/default/img/files/big/csh.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/big/csh.png
--------------------------------------------------------------------------------
/themes/default/img/files/big/cue.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/big/cue.png
--------------------------------------------------------------------------------
/themes/default/img/files/big/deb.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/big/deb.png
--------------------------------------------------------------------------------
/themes/default/img/files/big/dll.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/big/dll.png
--------------------------------------------------------------------------------
/themes/default/img/files/big/doc.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/big/doc.png
--------------------------------------------------------------------------------
/themes/default/img/files/big/docx.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/big/docx.png
--------------------------------------------------------------------------------
/themes/default/img/files/big/exe.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/big/exe.png
--------------------------------------------------------------------------------
/themes/default/img/files/big/fla.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/big/fla.png
--------------------------------------------------------------------------------
/themes/default/img/files/big/flv.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/big/flv.png
--------------------------------------------------------------------------------
/themes/default/img/files/big/fon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/big/fon.png
--------------------------------------------------------------------------------
/themes/default/img/files/big/gif.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/big/gif.png
--------------------------------------------------------------------------------
/themes/default/img/files/big/gz.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/big/gz.png
--------------------------------------------------------------------------------
/themes/default/img/files/big/htm.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/big/htm.png
--------------------------------------------------------------------------------
/themes/default/img/files/big/html.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/big/html.png
--------------------------------------------------------------------------------
/themes/default/img/files/big/ini.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/big/ini.png
--------------------------------------------------------------------------------
/themes/default/img/files/big/iso.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/big/iso.png
--------------------------------------------------------------------------------
/themes/default/img/files/big/jar.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/big/jar.png
--------------------------------------------------------------------------------
/themes/default/img/files/big/java.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/big/java.png
--------------------------------------------------------------------------------
/themes/default/img/files/big/jpeg.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/big/jpeg.png
--------------------------------------------------------------------------------
/themes/default/img/files/big/jpg.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/big/jpg.png
--------------------------------------------------------------------------------
/themes/default/img/files/big/js.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/big/js.png
--------------------------------------------------------------------------------
/themes/default/img/files/big/mds.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/big/mds.png
--------------------------------------------------------------------------------
/themes/default/img/files/big/mdx.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/big/mdx.png
--------------------------------------------------------------------------------
/themes/default/img/files/big/mid.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/big/mid.png
--------------------------------------------------------------------------------
/themes/default/img/files/big/midi.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/big/midi.png
--------------------------------------------------------------------------------
/themes/default/img/files/big/mkv.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/big/mkv.png
--------------------------------------------------------------------------------
/themes/default/img/files/big/mov.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/big/mov.png
--------------------------------------------------------------------------------
/themes/default/img/files/big/mp3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/big/mp3.png
--------------------------------------------------------------------------------
/themes/default/img/files/big/mp4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/big/mp4.png
--------------------------------------------------------------------------------
/themes/default/img/files/big/mpeg.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/big/mpeg.png
--------------------------------------------------------------------------------
/themes/default/img/files/big/mpg.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/big/mpg.png
--------------------------------------------------------------------------------
/themes/default/img/files/big/nfo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/big/nfo.png
--------------------------------------------------------------------------------
/themes/default/img/files/big/nrg.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/big/nrg.png
--------------------------------------------------------------------------------
/themes/default/img/files/big/ogg.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/big/ogg.png
--------------------------------------------------------------------------------
/themes/default/img/files/big/pdf.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/big/pdf.png
--------------------------------------------------------------------------------
/themes/default/img/files/big/php.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/big/php.png
--------------------------------------------------------------------------------
/themes/default/img/files/big/phps.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/big/phps.png
--------------------------------------------------------------------------------
/themes/default/img/files/big/pl.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/big/pl.png
--------------------------------------------------------------------------------
/themes/default/img/files/big/pm.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/big/pm.png
--------------------------------------------------------------------------------
/themes/default/img/files/big/png.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/big/png.png
--------------------------------------------------------------------------------
/themes/default/img/files/big/ppt.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/big/ppt.png
--------------------------------------------------------------------------------
/themes/default/img/files/big/pptx.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/big/pptx.png
--------------------------------------------------------------------------------
/themes/default/img/files/big/psd.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/big/psd.png
--------------------------------------------------------------------------------
/themes/default/img/files/big/qt.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/big/qt.png
--------------------------------------------------------------------------------
/themes/default/img/files/big/rar.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/big/rar.png
--------------------------------------------------------------------------------
/themes/default/img/files/big/rpm.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/big/rpm.png
--------------------------------------------------------------------------------
/themes/default/img/files/big/rtf.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/big/rtf.png
--------------------------------------------------------------------------------
/themes/default/img/files/big/sh.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/big/sh.png
--------------------------------------------------------------------------------
/themes/default/img/files/big/sql.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/big/sql.png
--------------------------------------------------------------------------------
/themes/default/img/files/big/srt.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/big/srt.png
--------------------------------------------------------------------------------
/themes/default/img/files/big/sub.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/big/sub.png
--------------------------------------------------------------------------------
/themes/default/img/files/big/swf.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/big/swf.png
--------------------------------------------------------------------------------
/themes/default/img/files/big/tgz.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/big/tgz.png
--------------------------------------------------------------------------------
/themes/default/img/files/big/tif.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/big/tif.png
--------------------------------------------------------------------------------
/themes/default/img/files/big/tiff.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/big/tiff.png
--------------------------------------------------------------------------------
/themes/default/img/files/big/torrent.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/big/torrent.png
--------------------------------------------------------------------------------
/themes/default/img/files/big/ttf.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/big/ttf.png
--------------------------------------------------------------------------------
/themes/default/img/files/big/txt.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/big/txt.png
--------------------------------------------------------------------------------
/themes/default/img/files/big/wav.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/big/wav.png
--------------------------------------------------------------------------------
/themes/default/img/files/big/wma.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/big/wma.png
--------------------------------------------------------------------------------
/themes/default/img/files/big/xls.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/big/xls.png
--------------------------------------------------------------------------------
/themes/default/img/files/big/xlsx.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/big/xlsx.png
--------------------------------------------------------------------------------
/themes/default/img/files/big/zip.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/big/zip.png
--------------------------------------------------------------------------------
/themes/default/img/files/small/..png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/small/..png
--------------------------------------------------------------------------------
/themes/default/img/files/small/.image.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/small/.image.png
--------------------------------------------------------------------------------
/themes/default/img/files/small/avi.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/small/avi.png
--------------------------------------------------------------------------------
/themes/default/img/files/small/bat.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/small/bat.png
--------------------------------------------------------------------------------
/themes/default/img/files/small/bmp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/small/bmp.png
--------------------------------------------------------------------------------
/themes/default/img/files/small/bz2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/small/bz2.png
--------------------------------------------------------------------------------
/themes/default/img/files/small/ccd.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/small/ccd.png
--------------------------------------------------------------------------------
/themes/default/img/files/small/cgi.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/small/cgi.png
--------------------------------------------------------------------------------
/themes/default/img/files/small/com.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/small/com.png
--------------------------------------------------------------------------------
/themes/default/img/files/small/csh.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/small/csh.png
--------------------------------------------------------------------------------
/themes/default/img/files/small/cue.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/small/cue.png
--------------------------------------------------------------------------------
/themes/default/img/files/small/deb.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/small/deb.png
--------------------------------------------------------------------------------
/themes/default/img/files/small/dll.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/small/dll.png
--------------------------------------------------------------------------------
/themes/default/img/files/small/doc.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/small/doc.png
--------------------------------------------------------------------------------
/themes/default/img/files/small/docx.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/small/docx.png
--------------------------------------------------------------------------------
/themes/default/img/files/small/exe.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/small/exe.png
--------------------------------------------------------------------------------
/themes/default/img/files/small/fla.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/small/fla.png
--------------------------------------------------------------------------------
/themes/default/img/files/small/flv.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/small/flv.png
--------------------------------------------------------------------------------
/themes/default/img/files/small/fon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/small/fon.png
--------------------------------------------------------------------------------
/themes/default/img/files/small/gif.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/small/gif.png
--------------------------------------------------------------------------------
/themes/default/img/files/small/gz.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/small/gz.png
--------------------------------------------------------------------------------
/themes/default/img/files/small/htm.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/small/htm.png
--------------------------------------------------------------------------------
/themes/default/img/files/small/html.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/small/html.png
--------------------------------------------------------------------------------
/themes/default/img/files/small/ini.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/small/ini.png
--------------------------------------------------------------------------------
/themes/default/img/files/small/iso.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/small/iso.png
--------------------------------------------------------------------------------
/themes/default/img/files/small/jar.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/small/jar.png
--------------------------------------------------------------------------------
/themes/default/img/files/small/java.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/small/java.png
--------------------------------------------------------------------------------
/themes/default/img/files/small/jpeg.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/small/jpeg.png
--------------------------------------------------------------------------------
/themes/default/img/files/small/jpg.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/small/jpg.png
--------------------------------------------------------------------------------
/themes/default/img/files/small/js.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/small/js.png
--------------------------------------------------------------------------------
/themes/default/img/files/small/mds.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/small/mds.png
--------------------------------------------------------------------------------
/themes/default/img/files/small/mdx.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/small/mdx.png
--------------------------------------------------------------------------------
/themes/default/img/files/small/mid.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/small/mid.png
--------------------------------------------------------------------------------
/themes/default/img/files/small/midi.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/small/midi.png
--------------------------------------------------------------------------------
/themes/default/img/files/small/mkv.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/small/mkv.png
--------------------------------------------------------------------------------
/themes/default/img/files/small/mov.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/small/mov.png
--------------------------------------------------------------------------------
/themes/default/img/files/small/mp3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/small/mp3.png
--------------------------------------------------------------------------------
/themes/default/img/files/small/mp4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/small/mp4.png
--------------------------------------------------------------------------------
/themes/default/img/files/small/mpeg.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/small/mpeg.png
--------------------------------------------------------------------------------
/themes/default/img/files/small/mpg.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/small/mpg.png
--------------------------------------------------------------------------------
/themes/default/img/files/small/nfo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/small/nfo.png
--------------------------------------------------------------------------------
/themes/default/img/files/small/nrg.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/small/nrg.png
--------------------------------------------------------------------------------
/themes/default/img/files/small/ogg.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/small/ogg.png
--------------------------------------------------------------------------------
/themes/default/img/files/small/pdf.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/small/pdf.png
--------------------------------------------------------------------------------
/themes/default/img/files/small/php.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/small/php.png
--------------------------------------------------------------------------------
/themes/default/img/files/small/phps.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/small/phps.png
--------------------------------------------------------------------------------
/themes/default/img/files/small/pl.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/small/pl.png
--------------------------------------------------------------------------------
/themes/default/img/files/small/pm.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/small/pm.png
--------------------------------------------------------------------------------
/themes/default/img/files/small/png.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/small/png.png
--------------------------------------------------------------------------------
/themes/default/img/files/small/ppt.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/small/ppt.png
--------------------------------------------------------------------------------
/themes/default/img/files/small/pptx.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/small/pptx.png
--------------------------------------------------------------------------------
/themes/default/img/files/small/psd.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/small/psd.png
--------------------------------------------------------------------------------
/themes/default/img/files/small/qt.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/small/qt.png
--------------------------------------------------------------------------------
/themes/default/img/files/small/rar.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/small/rar.png
--------------------------------------------------------------------------------
/themes/default/img/files/small/rpm.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/small/rpm.png
--------------------------------------------------------------------------------
/themes/default/img/files/small/rtf.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/small/rtf.png
--------------------------------------------------------------------------------
/themes/default/img/files/small/sh.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/small/sh.png
--------------------------------------------------------------------------------
/themes/default/img/files/small/sql.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/small/sql.png
--------------------------------------------------------------------------------
/themes/default/img/files/small/srt.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/small/srt.png
--------------------------------------------------------------------------------
/themes/default/img/files/small/sub.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/small/sub.png
--------------------------------------------------------------------------------
/themes/default/img/files/small/swf.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/small/swf.png
--------------------------------------------------------------------------------
/themes/default/img/files/small/tgz.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/small/tgz.png
--------------------------------------------------------------------------------
/themes/default/img/files/small/tif.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/small/tif.png
--------------------------------------------------------------------------------
/themes/default/img/files/small/tiff.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/small/tiff.png
--------------------------------------------------------------------------------
/themes/default/img/files/small/torrent.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/small/torrent.png
--------------------------------------------------------------------------------
/themes/default/img/files/small/ttf.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/small/ttf.png
--------------------------------------------------------------------------------
/themes/default/img/files/small/txt.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/small/txt.png
--------------------------------------------------------------------------------
/themes/default/img/files/small/wav.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/small/wav.png
--------------------------------------------------------------------------------
/themes/default/img/files/small/wma.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/small/wma.png
--------------------------------------------------------------------------------
/themes/default/img/files/small/xls.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/small/xls.png
--------------------------------------------------------------------------------
/themes/default/img/files/small/xlsx.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/small/xlsx.png
--------------------------------------------------------------------------------
/themes/default/img/files/small/zip.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/files/small/zip.png
--------------------------------------------------------------------------------
/themes/default/img/icons/about.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/icons/about.png
--------------------------------------------------------------------------------
/themes/default/img/icons/clipboard-add.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/icons/clipboard-add.png
--------------------------------------------------------------------------------
/themes/default/img/icons/clipboard-clear.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/icons/clipboard-clear.png
--------------------------------------------------------------------------------
/themes/default/img/icons/clipboard.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/icons/clipboard.png
--------------------------------------------------------------------------------
/themes/default/img/icons/copy.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/icons/copy.png
--------------------------------------------------------------------------------
/themes/default/img/icons/delete.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/icons/delete.png
--------------------------------------------------------------------------------
/themes/default/img/icons/download.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/icons/download.png
--------------------------------------------------------------------------------
/themes/default/img/icons/folder-new.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/icons/folder-new.png
--------------------------------------------------------------------------------
/themes/default/img/icons/maximize.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/icons/maximize.png
--------------------------------------------------------------------------------
/themes/default/img/icons/move.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/icons/move.png
--------------------------------------------------------------------------------
/themes/default/img/icons/refresh.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/icons/refresh.png
--------------------------------------------------------------------------------
/themes/default/img/icons/rename.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/icons/rename.png
--------------------------------------------------------------------------------
/themes/default/img/icons/select.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/icons/select.png
--------------------------------------------------------------------------------
/themes/default/img/icons/settings.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/icons/settings.png
--------------------------------------------------------------------------------
/themes/default/img/icons/upload.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/icons/upload.png
--------------------------------------------------------------------------------
/themes/default/img/icons/view.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/icons/view.png
--------------------------------------------------------------------------------
/themes/default/img/kcf_logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/kcf_logo.png
--------------------------------------------------------------------------------
/themes/default/img/loading.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/loading.gif
--------------------------------------------------------------------------------
/themes/default/img/tree/denied.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/tree/denied.png
--------------------------------------------------------------------------------
/themes/default/img/tree/folder.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/tree/folder.png
--------------------------------------------------------------------------------
/themes/default/img/tree/minus.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/tree/minus.png
--------------------------------------------------------------------------------
/themes/default/img/tree/plus.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/tree/plus.png
--------------------------------------------------------------------------------
/themes/default/img/ui-icons_black.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/ui-icons_black.png
--------------------------------------------------------------------------------
/themes/default/img/ui-icons_blue.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/ui-icons_blue.png
--------------------------------------------------------------------------------
/themes/default/img/ui-icons_white.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sunhater/kcfinder/b645d2a81e647d63780c238b130593e32b4d95a9/themes/default/img/ui-icons_white.png
--------------------------------------------------------------------------------
/themes/default/init.js:
--------------------------------------------------------------------------------
1 | // Preload some images
2 | $.each([
3 | "loading.gif",
4 | "ui-icons_black.png",
5 | "ui-icons_blue.png",
6 | "ui-icons_white.png"
7 | ], function(i, img) {
8 | new Image().src = "themes/default/img/" + img;
9 | });
10 |
--------------------------------------------------------------------------------
/themes/default/js.php:
--------------------------------------------------------------------------------
1 | minify("cache/theme_$theme.js");
11 |
--------------------------------------------------------------------------------
/tpl/.htaccess:
--------------------------------------------------------------------------------
1 |
2 | Order allow,deny
3 | Deny from all
4 |
--------------------------------------------------------------------------------
/tpl/tpl_browser.php:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | KCFinder: /session['dir'] ?>
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
18 |
19 |
20 |
21 |
31 |
32 |
33 |
34 |
35 |
44 |
45 |
46 |
47 |
58 |
59 |
60 |
61 |
76 |
77 |
78 |
79 |
80 |
81 |
82 |
83 |
84 |
87 |
88 |
89 |
90 |
91 |
92 |
--------------------------------------------------------------------------------
/tpl/tpl_css.php:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
--------------------------------------------------------------------------------
/tpl/tpl_javascript.php:
--------------------------------------------------------------------------------
1 |
4 |
5 |
6 | opener['name'] == "tinymce"):
8 | ?>
9 |
10 | config['theme']}/js.php")):
14 | ?>
15 |
16 |
19 |
40 |
--------------------------------------------------------------------------------
/upload.php:
--------------------------------------------------------------------------------
1 |
9 | * @copyright 2010-2014 KCFinder Project
10 | * @license http://opensource.org/licenses/GPL-3.0 GPLv3
11 | * @license http://opensource.org/licenses/LGPL-3.0 LGPLv3
12 | * @link http://kcfinder.sunhater.com
13 | */
14 |
15 | require "core/bootstrap.php";
16 | $uploader = "kcfinder\\uploader"; // To execute core/bootstrap.php on older
17 | $uploader = new $uploader(); // PHP versions (even PHP 4)
18 | $uploader->upload();
19 |
--------------------------------------------------------------------------------
/upload/.htaccess:
--------------------------------------------------------------------------------
1 |
2 | php_flag engine Off
3 |
4 |
5 | php_flag engine Off
6 |
7 |
8 | php_flag engine Off
9 |
10 |
11 | Options -ExecCGI
12 |
13 |
14 | RemoveHandler .cgi .pl .py .pyc .pyo .phtml .php .php3 .php4 .php5 .php6 .pcgi .pcgi3 .pcgi4 .pcgi5 .pchi6 .inc
15 | RemoveType .cgi .pl .py .pyc .pyo .phtml .php .php3 .php4 .php5 .php6 .pcgi .pcgi3 .pcgi4 .pcgi5 .pchi6 .inc
16 | SetHandler None
17 | SetHandler default-handler
18 |
19 | # Remove both lines below if you want to render HTML files from the upload folder
20 | AddType text/plain .html
21 | AddType text/plain .htm
22 |
--------------------------------------------------------------------------------