diff --git a/Changelog b/Changelog
index 170cededd..c807d97c6 100644
--- a/Changelog
+++ b/Changelog
@@ -13,6 +13,7 @@
- Search result view optimization
- Adddd new volume root option `searchTimeout` (default 30s)
- Added new crient command `opendir` - opens selected item's parent folder at search result
+ - Sortable "Places" (your favorites)
- And some minor bug fixes
diff --git a/css/elfinder.full.css b/css/elfinder.full.css
index 3930e0e9a..765abaccc 100644
--- a/css/elfinder.full.css
+++ b/css/elfinder.full.css
@@ -1,6 +1,6 @@
/*!
* elFinder - file manager for web
- * Version 2.1.5 (2.1-src Nightly: e9fe571) (2016-01-16)
+ * Version 2.1.5 (2.1-src Nightly: 62ee5c1) (2016-01-17)
* http://elfinder.org
*
* Copyright 2009-2016, Studio 42
@@ -1296,6 +1296,30 @@ div.elfinder-cwd-wrapper-list tr.ui-state-default td span.ui-icon {
/* File: /css/places.css */
+/*********************************************/
+/* PLACES STYLES */
+/*********************************************/
+/* root extra icon */
+.elfinder-places-root-icon {
+ position: absolute;
+ top: 2px;
+ cursor: pointer;
+ display: none;
+}
+.elfinder-ltr .elfinder-places-root-icon {
+ right: 10px;
+}
+.elfinder-rtl .elfinder-places-root-icon {
+ left: 10px;
+}
+.elfinder-navbar-expanded .elfinder-places-root-icon {
+ display: inline-block;
+}
+
+/* dragging helper base */
+.elfinder-place-drag {
+ font-size: 0.8em;
+}
/* File: /css/quicklook.css */
/* quicklook window */
diff --git a/css/elfinder.min.css b/css/elfinder.min.css
index b57f9375a..cc2e0a317 100644
--- a/css/elfinder.min.css
+++ b/css/elfinder.min.css
@@ -1,9 +1,9 @@
/*!
* elFinder - file manager for web
- * Version 2.1.5 (2.1-src Nightly: e9fe571) (2016-01-16)
+ * Version 2.1.5 (2.1-src Nightly: 62ee5c1) (2016-01-17)
* http://elfinder.org
*
* Copyright 2009-2016, Studio 42
* Licensed under a 3 clauses BSD license
*/
-.elfinder-dialog-resize{margin-top:.3em}.elfinder-resize-type{float:left;margin-bottom:.4em}.elfinder-resize-control{padding-top:3em}.elfinder-resize-control input[type=text]{border:1px solid #aaa;text-align:right}.elfinder-resize-preview{width:400px;height:400px;padding:10px;background:#fff;border:1px solid #aaa;float:right;position:relative;overflow:auto}.elfinder-resize-handle{position:relative}.elfinder-resize-handle-hline,.elfinder-resize-handle-vline{position:absolute;background-image:url("../img/crop.gif")}.elfinder-resize-handle-hline{width:100%;height:1px!important;background-repeat:repeat-x}.elfinder-resize-handle-vline{width:1px!important;height:100%;background-repeat:repeat-y}.elfinder-resize-handle-hline-top{top:0;left:0}.elfinder-resize-handle-hline-bottom{bottom:0;left:0}.elfinder-resize-handle-vline-left{top:0;left:0}.elfinder-resize-handle-vline-right{top:0;right:0}.elfinder-resize-handle-point{position:absolute;width:8px;height:8px;border:1px solid #777;background:0 0}.elfinder-resize-handle-point-n{top:0;left:50%;margin-top:-5px;margin-left:-5px}.elfinder-resize-handle-point-ne{top:0;right:0;margin-top:-5px;margin-right:-5px}.elfinder-resize-handle-point-e{top:50%;right:0;margin-top:-5px;margin-right:-5px}.elfinder-resize-handle-point-se{bottom:0;right:0;margin-bottom:-5px;margin-right:-5px}.elfinder-resize-handle-point-s{bottom:0;left:50%;margin-bottom:-5px;margin-left:-5px}.elfinder-resize-handle-point-sw{bottom:0;left:0;margin-bottom:-5px;margin-left:-5px}.elfinder-resize-handle-point-w{top:50%;left:0;margin-top:-5px;margin-left:-5px}.elfinder-resize-handle-point-nw{top:0;left:0;margin-top:-5px;margin-left:-5px}.elfinder-resize-spinner{position:absolute;width:200px;height:30px;top:50%;margin-top:-25px;left:50%;margin-left:-100px;text-align:center;background:url(../img/progress.gif) center bottom repeat-x}.elfinder-resize-row{margin-bottom:7px;position:relative}.elfinder-resize-label{float:left;width:80px;padding-top:3px}.elfinder-resize-reset{width:16px;height:16px;position:absolute;margin-top:-8px}.elfinder-dialog .elfinder-dialog-resize .ui-resizable-e{height:100%;width:10px}.elfinder-dialog .elfinder-dialog-resize .ui-resizable-s{width:100%;height:10px}.elfinder-dialog .elfinder-dialog-resize .ui-resizable-se{background:0 0;bottom:0;right:0;margin-right:-7px;margin-bottom:-7px}.elfinder-dialog-resize .ui-icon-grip-solid-vertical{position:absolute;top:50%;right:0;margin-top:-8px;margin-right:-11px}.elfinder-dialog-resize .ui-icon-grip-solid-horizontal{position:absolute;left:50%;bottom:0;margin-left:-8px;margin-bottom:-11px}.elfinder-resize-row .elfinder-buttonset{float:right}.elfinder-resize-rotate-slider{float:left;width:195px;margin:7px}.elfinder-file-edit{width:99%;height:99%;margin:0;padding:2px;border:1px solid #ccc}div.elfinder-cwd-wrapper-list tr.ui-state-default td{position:relative}div.elfinder-cwd-wrapper-list tr.ui-state-default td span.ui-icon{position:absolute;top:.4em;left:0;right:0;margin:auto 0 auto auto}.elfinder-help{margin-bottom:.5em}.elfinder-help .ui-tabs-panel{padding:.5em}.elfinder-dialog .ui-tabs .ui-tabs-nav li a{padding:.2em 1em}.elfinder-help-shortcuts{height:300px;padding:1em;margin:.5em 0;overflow:auto}.elfinder-help-shortcut{white-space:nowrap;clear:both}.elfinder-help-shortcut-pattern{float:left;width:160px}.elfinder-help-logo{width:100px;height:96px;float:left;margin-right:1em;background:url('../img/logo.png') center center no-repeat}.elfinder-help h3{font-size:1.5em;margin:.2em 0 .3em}.elfinder-help-separator{clear:both;padding:.5em}.elfinder-help-link{padding:2px}.elfinder-help .ui-priority-secondary{font-size:.9em}.elfinder-help .ui-priority-primary{margin-bottom:7px}.elfinder-help-team{clear:both;text-align:right;border-bottom:1px solid #ccc;margin:.5em 0;font-size:.9em}.elfinder-help-team div{float:left}.elfinder-help-license{font-size:.9em}.elfinder-help-disabled{font-weight:700;text-align:center;margin:90px 0}.elfinder-help .elfinder-dont-panic{display:block;border:1px solid transparent;width:200px;height:200px;margin:30px auto;text-decoration:none;text-align:center;position:relative;background:#d90004;-moz-box-shadow:5px 5px 9px #111;-webkit-box-shadow:5px 5px 9px #111;box-shadow:5px 5px 9px #111;background:-moz-radial-gradient(80px 80px,circle farthest-corner,#d90004 35%,#960004 100%);background:-webkit-gradient(radial,80 80,60,80 80,120,from(#d90004),to(#960004));-moz-border-radius:100px;-webkit-border-radius:100px;border-radius:100px;outline:none}.elfinder-help .elfinder-dont-panic span{font-size:3em;font-weight:700;text-align:center;color:#fff;position:absolute;left:0;top:45px}.elfinder{padding:0;position:relative;display:block}.elfinder-rtl{text-align:right;direction:rtl}.elfinder-workzone{padding:0;position:relative;overflow:hidden}.elfinder-lock,.elfinder-perms,.elfinder-symlink{position:absolute;width:16px;height:16px;background-image:url(../img/toolbar.png);background-repeat:no-repeat;background-position:0 -528px}.elfinder-na .elfinder-perms{background-position:0 -96px}.elfinder-ro .elfinder-perms{background-position:0 -64px}.elfinder-wo .elfinder-perms{background-position:0 -80px}.elfinder-lock{background-position:0 -656px}.elfinder-drag-helper{width:70px;height:60px;padding:0 0 0 25px;z-index:100000}.elfinder-drag-helper.html5-native{position:absolute;top:-1000px;left:-1000px}.elfinder-drag-helper-icon-status{position:absolute;width:16px;height:16px;left:42px;top:60px;background:url('../img/toolbar.png') 0 -96px no-repeat;display:block}.elfinder-drag-helper-move .elfinder-drag-helper-icon-status{background-position:0 -720px}.elfinder-drag-helper-plus .elfinder-drag-helper-icon-status{background-position:0 -544px}.elfinder-drag-num{position:absolute;top:0;left:0;width:16px;height:14px;text-align:center;padding-top:2px;font-weight:700;color:#fff;background-color:red;-moz-border-radius:8px;-webkit-border-radius:8px;border-radius:8px}.elfinder-drag-helper .elfinder-cwd-icon{margin:0 0 0 -24px;float:left}.elfinder-overlay{position:absolute}.elfinder .elfinder-panel{position:relative;background-image:none;padding:7px 12px}[draggable=true]{-khtml-user-drag:element}.elfinder-contextmenu,.elfinder-contextmenu-sub{display:none;position:absolute;border:1px solid #aaa;background:#fff;color:#555;padding:4px 0}.elfinder-contextmenu-sub{top:5px}.elfinder-contextmenu-ltr .elfinder-contextmenu-sub{margin-left:-5px}.elfinder-contextmenu-rtl .elfinder-contextmenu-sub{margin-right:-5px}.elfinder-contextmenu-item{position:relative;display:block;padding:4px 30px;text-decoration:none;white-space:nowrap;cursor:default}.elfinder-contextmenu-item .ui-icon{width:16px;height:16px;position:absolute;left:2px;top:50%;margin-top:-8px;display:none}.elfinder-contextmenu-item.elfinder-touch{padding:12px 30px}.elfinder-contextmenu .elfinder-contextmenu-item span{display:block}.elfinder-contextmenu-ltr .elfinder-contextmenu-item{text-align:left}.elfinder-contextmenu-rtl .elfinder-contextmenu-item{text-align:right}.elfinder-contextmenu-ltr .elfinder-contextmenu-sub .elfinder-contextmenu-item{padding-left:12px}.elfinder-contextmenu-rtl .elfinder-contextmenu-sub .elfinder-contextmenu-item{padding-right:12px}.elfinder-contextmenu-extra-icon,.elfinder-contextmenu-arrow,.elfinder-contextmenu-icon{position:absolute;top:50%;margin-top:-8px;overflow:hidden}.elfinder-contextmenu-ltr .elfinder-contextmenu-icon{left:8px}.elfinder-contextmenu-rtl .elfinder-contextmenu-icon,.elfinder-contextmenu-ltr .elfinder-contextmenu-extra-icon{right:8px}.elfinder-contextmenu-rtl .elfinder-contextmenu-extra-icon{left:8px}.elfinder-contextmenu-arrow{width:16px;height:16px;background:url('../img/arrows-normal.png') 5px 4px no-repeat}.elfinder-contextmenu-ltr .elfinder-contextmenu-arrow{right:5px}.elfinder-contextmenu-rtl .elfinder-contextmenu-arrow{left:5px;background-position:0 -10px}.elfinder-contextmenu-extra-icon a,.elfinder-contextmenu-extra-icon span{display:inline-block;width:100%;height:100%;padding:20px;margin:0;color:transparent!important;text-decoration:none;cursor:pointer}.elfinder-contextmenu .ui-state-hover{border:0 solid;background-image:none}.elfinder-contextmenu-separator{height:0;border-top:1px solid #ccc;margin:0 1px}.elfinder-cwd-wrapper{overflow:auto;position:relative;padding:2px;margin:0}.elfinder-cwd-wrapper-list{padding:0}.elfinder-cwd{position:relative;cursor:default;padding:0;margin:0;-ms-touch-action:auto;touch-action:auto;-webkit-tap-highlight-color:rgba(0,0,0,0);-webkit-touch-callout:none;user-select:none;-webkit-user-select:none;-moz-user-select:none;-khtml-user-select:none}.elfinder .elfinder-cwd-wrapper.elfinder-droppable-active{outline:2px solid #8cafed;outline-offset:-2px}.elfinder-cwd-wrapper-empty .elfinder-cwd:after{display:block;position:absolute;top:40%;left:0;right:0;margin-top:-2em;line-height:1.5em;text-align:center;white-space:pre-wrap;opacity:.6;font-weight:700}.elfinder-cwd-view-icons .elfinder-cwd-file{width:120px;height:80px;padding-bottom:2px;cursor:default;border:none}.elfinder-ltr .elfinder-cwd-view-icons .elfinder-cwd-file{float:left;margin:0 3px 12px 0}.elfinder-rtl .elfinder-cwd-view-icons .elfinder-cwd-file{float:right;margin:0 0 5px 3px}.elfinder-cwd-view-icons .elfinder-cwd-file .ui-state-hover{border:0 solid}.elfinder-cwd-view-icons .elfinder-cwd-file-wrapper{width:52px;height:52px;margin:1px auto;padding:2px;position:relative}.elfinder-cwd-view-icons .elfinder-cwd-filename{text-align:center;max-height:32px;white-space:pre-wrap;word-break:normal;overflow:hidden;text-overflow:ellipsis;-o-text-overflow:ellipsis;margin:3px 1px 0;padding:1px;-moz-border-radius:8px;-webkit-border-radius:8px;border-radius:8px}.elfinder-cwd-view-icons .elfinder-perms{bottom:4px;right:2px}.elfinder-cwd-view-icons .elfinder-lock{top:-3px;right:-2px}.elfinder-cwd-view-icons .elfinder-symlink{bottom:6px;left:0}.elfinder-cwd-icon{display:block;width:48px;height:48px;margin:0 auto;background:url('../img/icons-big.png') 0 0 no-repeat;-moz-background-clip:padding;-webkit-background-clip:padding-box;background-clip:padding-box}.elfinder-cwd .elfinder-droppable-active .elfinder-cwd-icon{background-position:0 -100px}.elfinder-cwd-icon-directory{background-position:0 -50px}.elfinder-cwd-icon-application{background-position:0 -150px}.elfinder-cwd-icon-x-empty,.elfinder-cwd-icon-text{background-position:0 -200px}.elfinder-cwd-icon-image,.elfinder-cwd-icon-vnd-adobe-photoshop,.elfinder-cwd-icon-postscript{background-position:0 -250px}.elfinder-cwd-icon-audio{background-position:0 -300px}.elfinder-cwd-icon-video,.elfinder-cwd-icon-flash-video{background-position:0 -350px}.elfinder-cwd-icon-rtf,.elfinder-cwd-icon-rtfd{background-position:0 -401px}.elfinder-cwd-icon-pdf{background-position:0 -450px}.elfinder-cwd-icon-ms-excel,.elfinder-cwd-icon-msword,.elfinder-cwd-icon-vnd-ms-excel,.elfinder-cwd-icon-vnd-ms-excel-addin-macroEnabled-12,.elfinder-cwd-icon-vnd-ms-excel-sheet-binary-macroEnabled-12,.elfinder-cwd-icon-vnd-ms-excel-sheet-macroEnabled-12,.elfinder-cwd-icon-vnd-ms-excel-template-macroEnabled-12,.elfinder-cwd-icon-vnd-ms-office,.elfinder-cwd-icon-vnd-ms-powerpoint,.elfinder-cwd-icon-vnd-ms-powerpoint-addin-macroEnabled-12,.elfinder-cwd-icon-vnd-ms-powerpoint-presentation-macroEnabled-12,.elfinder-cwd-icon-vnd-ms-powerpoint-slide-macroEnabled-12,.elfinder-cwd-icon-vnd-ms-powerpoint-slideshow-macroEnabled-12,.elfinder-cwd-icon-vnd-ms-powerpoint-template-macroEnabled-12,.elfinder-cwd-icon-vnd-ms-word,.elfinder-cwd-icon-vnd-ms-word-document-macroEnabled-12,.elfinder-cwd-icon-vnd-ms-word-template-macroEnabled-12,.elfinder-cwd-icon-vnd-oasis-opendocument-chart,.elfinder-cwd-icon-vnd-oasis-opendocument-database,.elfinder-cwd-icon-vnd-oasis-opendocument-formula,.elfinder-cwd-icon-vnd-oasis-opendocument-graphics,.elfinder-cwd-icon-vnd-oasis-opendocument-graphics-template,.elfinder-cwd-icon-vnd-oasis-opendocument-image,.elfinder-cwd-icon-vnd-oasis-opendocument-presentation,.elfinder-cwd-icon-vnd-oasis-opendocument-presentation-template,.elfinder-cwd-icon-vnd-oasis-opendocument-spreadsheet,.elfinder-cwd-icon-vnd-oasis-opendocument-spreadsheet-template,.elfinder-cwd-icon-vnd-oasis-opendocument-text,.elfinder-cwd-icon-vnd-oasis-opendocument-text-master,.elfinder-cwd-icon-vnd-oasis-opendocument-text-template,.elfinder-cwd-icon-vnd-oasis-opendocument-text-web,.elfinder-cwd-icon-vnd-openofficeorg-extension,.elfinder-cwd-icon-vnd-openxmlformats-officedocument-presentationml-presentation,.elfinder-cwd-icon-vnd-openxmlformats-officedocument-presentationml-slide,.elfinder-cwd-icon-vnd-openxmlformats-officedocument-presentationml-slideshow,.elfinder-cwd-icon-vnd-openxmlformats-officedocument-presentationml-template,.elfinder-cwd-icon-vnd-openxmlformats-officedocument-spreadsheetml-sheet,.elfinder-cwd-icon-vnd-openxmlformats-officedocument-spreadsheetml-template,.elfinder-cwd-icon-vnd-openxmlformats-officedocument-wordprocessingml-document,.elfinder-cwd-icon-vnd-openxmlformats-officedocument-wordprocessingml-template{background-position:0 -500px}.elfinder-cwd-icon-html{background-position:0 -550px}.elfinder-cwd-icon-css{background-position:0 -600px}.elfinder-cwd-icon-javascript,.elfinder-cwd-icon-x-javascript{background-position:0 -650px}.elfinder-cwd-icon-x-perl{background-position:0 -700px}.elfinder-cwd-icon-x-python{background-position:0 -750px}.elfinder-cwd-icon-x-ruby{background-position:0 -800px}.elfinder-cwd-icon-x-sh,.elfinder-cwd-icon-x-shellscript{background-position:0 -850px}.elfinder-cwd-icon-x-c,.elfinder-cwd-icon-x-csrc,.elfinder-cwd-icon-x-chdr,.elfinder-cwd-icon-x-c--,.elfinder-cwd-icon-x-c--src,.elfinder-cwd-icon-x-c--hdr,.elfinder-cwd-icon-x-java,.elfinder-cwd-icon-x-java-source{background-position:0 -900px}.elfinder-cwd-icon-x-php{background-position:0 -950px}.elfinder-cwd-icon-xml{background-position:0 -1000px}.elfinder-cwd-icon-zip,.elfinder-cwd-icon-x-zip,.elfinder-cwd-icon-x-xz,.elfinder-cwd-icon-x-7z-compressed{background-position:0 -1050px}.elfinder-cwd-icon-x-gzip,.elfinder-cwd-icon-x-tar{background-position:0 -1100px}.elfinder-cwd-icon-x-bzip,.elfinder-cwd-icon-x-bzip2{background-position:0 -1150px}.elfinder-cwd-icon-x-rar,.elfinder-cwd-icon-x-rar-compressed{background-position:0 -1200px}.elfinder-cwd-icon-x-shockwave-flash{background-position:0 -1250px}.elfinder-cwd-icon-group{background-position:0 -1300px}.elfinder-cwd input{width:100%;border:0 solid;margin:0;padding:0}.elfinder-cwd-view-icons input{text-align:center}.elfinder-cwd-view-icons textarea{width:100%;border:0 solid;margin:0;padding:0;text-align:center;overflow:hidden;resize:none}.elfinder-cwd-view-icons{text-align:center}.elfinder-cwd table{width:100%;border-collapse:separate;border:0 solid;margin:0 0 10px;border-spacing:0;box-sizing:padding-box;padding:2px}.elfinder .elfinder-cwd table thead tr{border-left:0 solid;border-top:0 solid;border-right:0 solid}.elfinder .elfinder-cwd table thead td{padding:4px 14px}.elfinder .elfinder-cwd table thead td.ui-state-active{background:#ebf1f6;background:-moz-linear-gradient(top,#ebf1f6 0%,#abd3ee 50%,#89c3eb 51%,#d5ebfb 100%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,#ebf1f6),color-stop(50%,#abd3ee),color-stop(51%,#89c3eb),color-stop(100%,#d5ebfb));background:-webkit-linear-gradient(top,#ebf1f6 0%,#abd3ee 50%,#89c3eb 51%,#d5ebfb 100%);background:-o-linear-gradient(top,#ebf1f6 0%,#abd3ee 50%,#89c3eb 51%,#d5ebfb 100%);background:-ms-linear-gradient(top,#ebf1f6 0%,#abd3ee 50%,#89c3eb 51%,#d5ebfb 100%);background:linear-gradient(to bottom,#ebf1f6 0%,#abd3ee 50%,#89c3eb 51%,#d5ebfb 100%);filter:progid:DXImageTransform.Microsoft.gradient( startColorstr='#ebf1f6', endColorstr='#d5ebfb',GradientType=0 )}.elfinder .elfinder-cwd table td{padding:4px 12px;white-space:pre;overflow:hidden;text-align:right;cursor:default;border:0 solid}.elfinder .elfinder-cwd table td div{box-sizing:content-box}.elfinder .elfinder-cwd tr.elfinder-touch td{padding:10px 12px}.elfinder .elfinder-cwd tr.elfinder-cwd-file.elfinder-touch td{padding:13px 12px}.elfinder-ltr .elfinder-cwd table td{text-align:right}.elfinder-ltr .elfinder-cwd table td:first-child{text-align:left}.elfinder-rtl .elfinder-cwd table td{text-align:left}.elfinder-rtl .elfinder-cwd table td:first-child{text-align:right}.elfinder-odd-row{background:#eee}.elfinder-cwd-view-list .elfinder-cwd-file-wrapper{width:97%;position:relative}.elfinder-ltr .elfinder-cwd-view-list .elfinder-cwd-file-wrapper{padding-left:23px}.elfinder-rtl .elfinder-cwd-view-list .elfinder-cwd-file-wrapper{padding-right:23px}.elfinder-cwd-view-list .elfinder-perms,.elfinder-cwd-view-list .elfinder-lock,.elfinder-cwd-view-list .elfinder-symlink{top:50%;margin-top:-6px}.elfinder-ltr .elfinder-cwd-view-list .elfinder-perms{left:7px}.elfinder-ltr .elfinder-cwd-view-list .elfinder-lock{left:9px;top:0}.elfinder-ltr .elfinder-cwd-view-list .elfinder-symlink{left:-7px}.elfinder-cwd-view-list td .elfinder-cwd-icon{width:16px;height:16px;position:absolute;top:50%;margin-top:-8px;background-image:url(../img/icons-small.png)}.elfinder-ltr .elfinder-cwd-view-list .elfinder-cwd-icon{left:0}.elfinder-rtl .elfinder-cwd-view-list .elfinder-cwd-icon{right:0}.std42-dialog{padding:0;position:absolute;left:auto;right:auto}.std42-dialog .ui-dialog-titlebar{border-left:0 solid transparent;border-top:0 solid transparent;border-right:0 solid transparent;-moz-border-radius-bottomleft:0;-webkit-border-bottom-left-radius:0;border-bottom-left-radius:0;-moz-border-radius-bottomright:0;-webkit-border-bottom-right-radius:0;border-bottom-right-radius:0;font-weight:400;padding:.2em 1em}.std42-dialog .ui-dialog-titlebar-close,.std42-dialog .ui-dialog-titlebar-close:hover{padding:1px}.elfinder-rtl .elfinder-dialog .ui-dialog-titlebar{text-align:right}.elfinder-rtl .elfinder-dialog .ui-dialog-titlebar .ui-dialog-titlebar-close{right:auto;left:.3em}.std42-dialog .ui-dialog-content{padding:.3em .5em}.std42-dialog .ui-dialog-buttonpane{border:0 solid;margin:0;padding:.5em .7em}.std42-dialog .ui-dialog-buttonpane button{margin:0 0 0 .4em;padding:0;outline:0 solid}.std42-dialog .ui-dialog-buttonpane button span{padding:2px 9px}.std42-dialog .ui-dialog-buttonpane button span.ui-icon{padding:2px}.elfinder-dialog .ui-resizable-e,.elfinder-dialog .ui-resizable-s{width:0;height:0}.std42-dialog .ui-button input{cursor:pointer}.elfinder-dialog-icon{position:absolute;width:32px;height:32px;left:12px;top:50%;margin-top:-15px;background:url("../img/dialogs.png") 0 0 no-repeat}.elfinder-rtl .elfinder-dialog-icon{left:auto;right:12px}.elfinder-dialog-error .ui-dialog-content,.elfinder-dialog-confirm .ui-dialog-content{padding-left:56px;min-height:35px}.elfinder-rtl .elfinder-dialog-error .ui-dialog-content,.elfinder-rtl .elfinder-dialog-confirm .ui-dialog-content{padding-left:0;padding-right:56px}.elfinder-dialog-notify .ui-dialog-titlebar-close{display:none}.elfinder-dialog-notify .ui-dialog-content{padding:0}.elfinder-notify{border-bottom:1px solid #ccc;position:relative;padding:.5em;text-align:center;overflow:hidden}.elfinder-ltr .elfinder-notify{padding-left:30px}.elfinder-rtl .elfinder-notify{padding-right:30px}.elfinder-notify:last-child{border:0 solid}.elfinder-notify-progressbar{width:180px;height:8px;border:1px solid #aaa;background:#f5f5f5;margin:5px auto;overflow:hidden}.elfinder-notify-progress{width:100%;height:8px;background:url(../img/progress.gif) center center repeat-x}.elfinder-notify-progressbar,.elfinder-notify-progress{-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px}.elfinder-dialog-icon-open,.elfinder-dialog-icon-readdir,.elfinder-dialog-icon-file,.elfinder-dialog-icon-reload{background-position:0 -225px}.elfinder-dialog-icon-mkdir{background-position:0 -64px}.elfinder-dialog-icon-mkfile{background-position:0 -96px}.elfinder-dialog-icon-copy,.elfinder-dialog-icon-prepare,.elfinder-dialog-icon-move{background-position:0 -128px}.elfinder-dialog-icon-upload,.elfinder-dialog-icon-chunkmerge{background-position:0 -160px}.elfinder-dialog-icon-rm{background-position:0 -192px}.elfinder-dialog-icon-download{background-position:0 -260px}.elfinder-dialog-icon-save{background-position:0 -295px}.elfinder-dialog-icon-rename{background-position:0 -330px}.elfinder-dialog-icon-archive,.elfinder-dialog-icon-extract{background-position:0 -365px}.elfinder-dialog-icon-search{background-position:0 -402px}.elfinder-dialog-icon-resize,.elfinder-dialog-icon-loadimg,.elfinder-dialog-icon-netmount,.elfinder-dialog-icon-netunmount,.elfinder-dialog-icon-chmod,.elfinder-dialog-icon-preupload,.elfinder-dialog-icon-dim{background-position:0 -434px}.elfinder-dialog-confirm-applyall{padding-top:3px}.elfinder-dialog-confirm .elfinder-dialog-icon{background-position:0 -32px}.elfinder-info-title .elfinder-cwd-icon{float:left;width:48px;height:48px;margin-right:1em}.elfinder-rtl .elfinder-info-title .elfinder-cwd-icon{float:right;margin-right:0;margin-left:1em}.elfinder-info-title strong{display:block;padding:.3em 0 .5em}.elfinder-info-tb{min-width:200px;border:0 solid;margin:1em .2em}.elfinder-info-tb td{white-space:nowrap;padding:2px}.elfinder-info-tb tr td:first-child{text-align:right}.elfinder-info-tb span{float:left}.elfinder-info-tb a{outline:none;text-decoration:underline}.elfinder-info-tb a:hover{text-decoration:none}.elfinder-info-spinner{width:14px;height:14px;float:left;background:url("../img/spinner-mini.gif") center center no-repeat;margin:0 5px}.elfinder-netmount-tb{margin:0 auto}.elfinder-netmount-tb input{border:1px solid #ccc}.elfinder-upload-dropbox{text-align:center;padding:2em 0;border:3px dashed #aaa;height:1em;overflow:hidden}.elfinder-upload-dropbox.ui-state-hover{background:#dfdfdf;border:3px dashed #555}.elfinder-upload-dialog-or{margin:.3em 0;text-align:center}.elfinder-upload-dialog-wrapper{text-align:center}.elfinder-upload-dialog-wrapper .ui-button{position:relative;overflow:hidden}.elfinder-upload-dialog-wrapper .ui-button form{position:absolute;right:0;top:0;opacity:0;filter:Alpha(Opacity=0)}.elfinder-upload-dialog-wrapper .ui-button form input{padding:0 20px;font-size:3em}.dialogelfinder .dialogelfinder-drag{border-left:0 solid;border-top:0 solid;border-right:0 solid;font-weight:400;padding:2px 12px;cursor:move;position:relative;text-align:left}.elfinder-rtl .dialogelfinder-drag{text-align:right}.dialogelfinder-drag-close{position:absolute;top:50%;margin-top:-8px}.elfinder-ltr .dialogelfinder-drag-close{right:12px}.elfinder-rtl .dialogelfinder-drag-close{left:12px}.elfinder-rm-title{margin-bottom:.5ex}.elfinder-rm-title .elfinder-cwd-icon{float:left;width:48px;height:48px;margin-right:1em}.elfinder-rtl .elfinder-rm-title .elfinder-cwd-icon{float:right;margin-right:0;margin-left:1em}.elfinder-rm-title strong{display:block;white-space:pre-wrap;word-break:normal;overflow:hidden;text-overflow:ellipsis}.elfinder-rm-title+br{display:none}.elfinder-contextmenu .elfinder-contextmenu-item span{font-size:.76em}.elfinder-cwd-view-icons .elfinder-cwd-filename,.elfinder-cwd-view-list td{font-size:.7em}.std42-dialog .ui-dialog-titlebar{font-size:.82em}.std42-dialog .ui-dialog-content{font-size:.72em}.std42-dialog .ui-dialog-buttonpane{font-size:.76em}.elfinder-info-tb{font-size:.9em}.elfinder-upload-dropbox,.elfinder-upload-dialog-or{font-size:1.2em}.dialogelfinder .dialogelfinder-drag{font-size:.9em}.elfinder .elfinder-navbar{font-size:.72em}.elfinder-place-drag .elfinder-navbar-dir{font-size:.9em}.elfinder-quicklook-title{font-size:.7em}.elfinder-quicklook-info-data{font-size:.72em}.elfinder-quicklook-preview-text-wrapper{font-size:.9em}.elfinder-button-menu-item{font-size:.72em}.elfinder-button-search input{font-size:.8em}.elfinder-statusbar div{font-size:.7em}.elfinder-drag-num{font-size:12px}.elfinder .elfinder-navbar{width:230px;padding:3px 5px;background-image:none;border-top:0 solid;border-bottom:0 solid;overflow:auto;display:none;position:relative;-webkit-tap-highlight-color:rgba(0,0,0,0);-webkit-touch-callout:none;user-select:none;-webkit-user-select:none;-moz-user-select:none;-khtml-user-select:none}.elfinder-ltr .elfinder-navbar{float:left;border-left:0 solid}.elfinder-rtl .elfinder-navbar{float:right;border-right:0 solid}.elfinder-ltr .ui-resizable-e{margin-left:10px}.elfinder-tree{display:table;width:100%;margin:0 0 .5em;-webkit-tap-highlight-color:rgba(0,0,0,0)}.elfinder-navbar-dir{position:relative;display:block;white-space:nowrap;padding:3px 12px;margin:0;outline:0 solid;border:1px solid transparent;cursor:default}.elfinder-navbar-dir.elfinder-touch{padding:12px}.elfinder-ltr .elfinder-navbar-dir{padding-left:35px}.elfinder-rtl .elfinder-navbar-dir{padding-right:35px}.elfinder-navbar-arrow{width:12px;height:14px;position:absolute;display:none;top:50%;margin-top:-8px;background-image:url("../img/arrows-normal.png");background-repeat:no-repeat}.ui-state-active .elfinder-navbar-arrow{background-image:url("../img/arrows-active.png")}.elfinder-navbar-collapsed .elfinder-navbar-arrow{display:block}.elfinder-ltr .elfinder-navbar-collapsed .elfinder-navbar-arrow{background-position:0 4px;left:0}.elfinder-rtl .elfinder-navbar-collapsed .elfinder-navbar-arrow{background-position:0 -10px;right:0}.elfinder-ltr .elfinder-navbar-expanded .elfinder-navbar-arrow,.elfinder-rtl .elfinder-navbar-expanded .elfinder-navbar-arrow{background-position:0 -21px}.elfinder-navbar-icon{width:16px;height:16px;position:absolute;top:50%;margin-top:-8px;background-image:url("../img/toolbar.png");background-repeat:no-repeat;background-position:0 -16px}.elfinder-ltr .elfinder-navbar-icon{left:14px}.elfinder-rtl .elfinder-navbar-icon{right:14px}.elfinder-tree .elfinder-navbar-root .elfinder-navbar-icon{background-position:0 0}.elfinder-places .elfinder-navbar-root .elfinder-navbar-icon{background-position:0 -704px}.elfinder-tree .elfinder-navbar-root-local .elfinder-navbar-icon{background-image:url("../img/volume_icon_local.png")}.elfinder-tree .elfinder-navbar-root-ftp .elfinder-navbar-icon{background-image:url("../img/volume_icon_ftp.png")}.elfinder-tree .elfinder-navbar-root-sql .elfinder-navbar-icon{background-image:url("../img/volume_icon_sql.png")}.elfinder-tree .elfinder-navbar-root-dropbox .elfinder-navbar-icon{background-image:url("../img/volume_icon_dropbox.png")}.ui-state-active .elfinder-navbar-icon,.elfinder-droppable-active .elfinder-navbar-icon,.ui-state-hover .elfinder-navbar-icon{background-position:0 -32px}.elfinder-navbar-subtree{display:none}.elfinder-ltr .elfinder-navbar-subtree{margin-left:12px}.elfinder-rtl .elfinder-navbar-subtree{margin-right:12px}.elfinder-navbar-spinner{width:14px;height:14px;position:absolute;display:block;top:50%;margin-top:-7px;background:url("../img/spinner-mini.gif") center center no-repeat}.elfinder-ltr .elfinder-navbar-spinner{left:0;margin-left:-2px}.elfinder-rtl .elfinder-navbar-spinner{right:0;margin-right:-2px}.elfinder-navbar .elfinder-perms{top:50%;margin-top:-8px}.elfinder-navbar .elfinder-lock{top:-2px}.elfinder-ltr .elfinder-navbar .elfinder-perms{left:18px}.elfinder-rtl .elfinder-navbar .elfinder-perms{right:18px}.elfinder-ltr .elfinder-navbar .elfinder-lock{left:18px}.elfinder-rtl .elfinder-navbar .elfinder-lock{right:18px}.elfinder-ltr .elfinder-navbar .elfinder-symlink{left:8px}.elfinder-rtl .elfinder-navbar .elfinder-symlink{right:8px}.elfinder-navbar input{width:100%;border:0 solid;margin:0;padding:0}.elfinder-navbar .ui-resizable-handle{width:12px;background:url('../img/resize.png') center center no-repeat}.elfinder-nav-handle-icon{position:absolute;top:50%;margin:-8px 2px 0;opacity:.5;filter:Alpha(Opacity=50)}.elfinder-places{border:none;margin:0;padding:0}.elfinder-quicklook{position:absolute;background:url("../img/quicklook-bg.png");display:none;overflow:hidden;border-radius:7px;-moz-border-radius:7px;-webkit-border-radius:7px;padding:20px 0 40px}.elfinder-quicklook .ui-resizable-se{width:14px;height:14px;right:5px;bottom:3px;background:url("../img/toolbar.png") 0 -496px no-repeat}.elfinder-quicklook-fullscreen{border-radius:0;-moz-border-radius:0;-webkit-border-radius:0;-webkit-background-clip:padding-box;padding:0;background:#000;z-index:90000;display:block}.elfinder-quicklook-fullscreen .elfinder-quicklook-titlebar{display:none}.elfinder-quicklook-fullscreen .elfinder-quicklook-preview{border:0 solid}.elfinder-quicklook-titlebar{text-align:center;background:#777;position:absolute;left:0;top:0;width:100%;height:20px;-moz-border-radius-topleft:7px;-webkit-border-top-left-radius:7px;border-top-left-radius:7px;-moz-border-radius-topright:7px;-webkit-border-top-right-radius:7px;border-top-right-radius:7px;cursor:move}.elfinder-quicklook-title{color:#fff;white-space:nowrap;overflow:hidden;padding:2px 0}.elfinder-quicklook-titlebar .ui-icon{position:absolute;left:4px;top:50%;margin-top:-8px;width:16px;height:16px;cursor:default}.elfinder-quicklook-preview{overflow:hidden;position:relative;border:0 solid;border-left:1px solid transparent;border-right:1px solid transparent;height:100%}.elfinder-quicklook-info-wrapper{position:absolute;width:100%;left:0;top:50%;margin-top:-50px}.elfinder-quicklook-info{padding:0 12px 0 112px}.elfinder-quicklook-info .elfinder-quicklook-info-data:first-child{color:#fff;font-weight:700;padding-bottom:.5em}.elfinder-quicklook-info-data{padding-bottom:.2em;color:#fff}.elfinder-quicklook .elfinder-cwd-icon{position:absolute;left:32px;top:50%;margin-top:-20px}.elfinder-quicklook-preview img{display:block;margin:0 auto}.elfinder-quicklook-navbar{position:absolute;left:50%;bottom:4px;width:140px;height:32px;padding:0;margin-left:-70px;border:1px solid transparent;border-radius:19px;-moz-border-radius:19px;-webkit-border-radius:19px}.elfinder-quicklook-fullscreen .elfinder-quicklook-navbar{width:188px;margin-left:-94px;padding:5px;border:1px solid #eee;background:#000}.elfinder-quicklook-fullscreen .elfinder-quicklook-navbar-icon-close,.elfinder-quicklook-fullscreen .elfinder-quicklook-navbar-separator{display:inline}.elfinder-quicklook-navbar-icon{width:32px;height:32px;margin:0 7px;float:left;background:url("../img/quicklook-icons.png") 0 0 no-repeat}.elfinder-quicklook-navbar-icon-fullscreen{background-position:0 -64px}.elfinder-quicklook-navbar-icon-fullscreen-off{background-position:0 -96px}.elfinder-quicklook-navbar-icon-prev{background-position:0 0}.elfinder-quicklook-navbar-icon-next{background-position:0 -32px}.elfinder-quicklook-navbar-icon-close{background-position:0 -128px;display:none}.elfinder-quicklook-navbar-separator{width:1px;height:32px;float:left;border-left:1px solid #fff;display:none}.elfinder-quicklook-preview-text-wrapper{width:100%;height:100%;background:#fff;color:#222;overflow:auto}pre.elfinder-quicklook-preview-text{margin:0;padding:3px 9px}.elfinder-quicklook-preview-html,.elfinder-quicklook-preview-pdf{width:100%;height:100%;background:#fff;border:0 solid;margin:0}.elfinder-quicklook-preview-flash{width:100%;height:100%}.elfinder-quicklook-preview-audio{width:100%;position:absolute;bottom:0;left:0}embed.elfinder-quicklook-preview-audio{height:30px;background:0 0}.elfinder-quicklook-preview-video{width:100%;height:100%}.elfinder-statusbar{text-align:center;font-weight:400;padding:.2em .5em;border-right:0 solid transparent;border-bottom:0 solid transparent;border-left:0 solid transparent;-webkit-touch-callout:none;user-select:none;-webkit-user-select:none;-moz-user-select:none;-khtml-user-select:none}.elfinder-statusbar a{text-decoration:none}.elfinder-path{max-width:30%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;-o-text-overflow:ellipsis}.elfinder-ltr .elfinder-path{float:left}.elfinder-rtl .elfinder-path{float:right}.elfinder-stat-size{white-space:nowrap}.elfinder-ltr .elfinder-stat-size{float:right}.elfinder-rtl .elfinder-stat-size{float:left}.elfinder-stat-selected{white-space:nowrap;overflow:hidden}.elfinder-toolbar{padding:4px 0 3px;border-left:0 solid transparent;border-top:0 solid transparent;border-right:0 solid transparent}.elfinder-buttonset{margin:1px 4px;float:left;background:0 0;padding:0;-moz-border-radius:4px;-webkit-border-radius:4px;border-radius:4px}.elfinder .elfinder-button{width:16px;height:16px;margin:0;padding:4px;float:left;overflow:hidden;position:relative;border:0 solid;-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box}.elfinder .ui-icon-search{cursor:pointer}.elfinder-button:first-child{-moz-border-radius-topleft:4px;-webkit-border-top-left-radius:4px;border-top-left-radius:4px;-moz-border-radius-bottomleft:4px;-webkit-border-bottom-left-radius:4px;border-bottom-left-radius:4px}.elfinder-button:last-child{-moz-border-radius-topright:4px;-webkit-border-top-right-radius:4px;border-top-right-radius:4px;-moz-border-radius-bottomright:4px;-webkit-border-bottom-right-radius:4px;border-bottom-right-radius:4px}.elfinder-toolbar-button-separator{float:left;padding:0;height:24px;border-top:0 solid;border-right:0 solid;border-bottom:0 solid;width:0}.elfinder .elfinder-button.ui-state-disabled{opacity:1;filter:Alpha(Opacity=100)}.elfinder .elfinder-button.ui-state-disabled .elfinder-button-icon{opacity:.4;filter:Alpha(Opacity=40)}.elfinder-rtl .elfinder-buttonset{float:right}.elfinder-button-icon{width:16px;height:16px;display:block;background:url('../img/toolbar.png') no-repeat}.elfinder-button-icon-home{background-position:0 0}.elfinder-button-icon-back{background-position:0 -112px}.elfinder-button-icon-forward{background-position:0 -128px}.elfinder-button-icon-up{background-position:0 -144px}.elfinder-button-icon-reload{background-position:0 -160px}.elfinder-button-icon-open{background-position:0 -176px}.elfinder-button-icon-mkdir{background-position:0 -192px}.elfinder-button-icon-mkfile{background-position:0 -208px}.elfinder-button-icon-rm{background-position:0 -224px}.elfinder-button-icon-copy{background-position:0 -240px}.elfinder-button-icon-cut{background-position:0 -256px}.elfinder-button-icon-paste{background-position:0 -272px}.elfinder-button-icon-getfile{background-position:0 -288px}.elfinder-button-icon-duplicate{background-position:0 -304px}.elfinder-button-icon-rename{background-position:0 -320px}.elfinder-button-icon-edit{background-position:0 -336px}.elfinder-button-icon-quicklook{background-position:0 -352px}.elfinder-button-icon-upload{background-position:0 -368px}.elfinder-button-icon-download{background-position:0 -384px}.elfinder-button-icon-info{background-position:0 -400px}.elfinder-button-icon-extract{background-position:0 -416px}.elfinder-button-icon-archive{background-position:0 -432px}.elfinder-button-icon-view{background-position:0 -448px}.elfinder-button-icon-view-list{background-position:0 -464px}.elfinder-button-icon-help{background-position:0 -480px}.elfinder-button-icon-resize{background-position:0 -512px}.elfinder-button-icon-link{background-position:0 -528px}.elfinder-button-icon-search{background-position:0 -561px}.elfinder-button-icon-sort{background-position:0 -577px}.elfinder-button-icon-rotate-r{background-position:0 -625px}.elfinder-button-icon-rotate-l{background-position:0 -641px}.elfinder-button-icon-netmount{background-position:0 -688px}.elfinder-button-icon-netunmount{background-position:0 -96px}.elfinder-button-icon-places{background-position:0 -704px}.elfinder-button-icon-chmod{background-position:0 -48px}.elfinder-button-icon-accept{background-position:0 -736px}.elfinder-button-icon-opendir{background-position:0 -32px}.elfinder .elfinder-menubutton{overflow:visible}.elfinder-button-icon-spinner{background:url("../img/spinner-mini.gif") center center no-repeat}.elfinder-button-menu{position:absolute;left:0;top:25px;padding:3px 0}.elfinder-button-menu-item{white-space:nowrap;cursor:default;padding:5px 19px;position:relative}.elfinder-button-menu .ui-state-hover{border:0 solid}.elfinder-button-menu-item-separated{border-top:1px solid #ccc}.elfinder-button-menu-item .ui-icon{width:16px;height:16px;position:absolute;left:2px;top:50%;margin-top:-8px;display:none}.elfinder-button-menu-item-selected .ui-icon{display:block}.elfinder-button-menu-item-selected-asc .ui-icon-arrowthick-1-n,.elfinder-button-menu-item-selected-desc .ui-icon-arrowthick-1-s{display:none}.elfinder-button form{position:absolute;top:0;right:0;opacity:0;filter:Alpha(Opacity=0);cursor:pointer}.elfinder .elfinder-button form input{background:0 0;cursor:default}.elfinder .elfinder-button-search{border:0 solid;background:0 0;padding:0;margin:1px 4px;height:auto;min-height:26px;float:right;width:202px;overflow:visible}.elfinder .elfinder-button-search .elfinder-button-menu{font-size:8pt;text-align:center;width:100%}.elfinder .elfinder-button-search .elfinder-button-menu div{margin-left:auto;margin-right:auto;margin-bottom:5px}.elfinder .elfinder-button-search .elfinder-button-menu div .ui-state-hover{border:1px solid}.elfinder-ltr .elfinder-button-search{float:right;margin-right:10px}.elfinder-rtl .elfinder-button-search{float:left;margin-left:10px}.elfinder-button-search input{width:160px;height:22px;padding:0 20px;line-height:22px;border:1px solid #aaa;-moz-border-radius:12px;-webkit-border-radius:12px;border-radius:12px;outline:0 solid}.elfinder-rtl .elfinder-button-search input{direction:rtl}.elfinder-button-search .ui-icon{position:absolute;height:18px;top:50%;margin:-9px 4px 0;opacity:.6;filter:Alpha(Opacity=60)}.elfinder-ltr .elfinder-button-search .ui-icon-search{left:0}.elfinder-rtl .elfinder-button-search .ui-icon-search,.elfinder-ltr .elfinder-button-search .ui-icon-close{right:0}.elfinder-rtl .elfinder-button-search .ui-icon-close{left:0}
\ No newline at end of file
+.elfinder-dialog-resize{margin-top:.3em}.elfinder-resize-type{float:left;margin-bottom:.4em}.elfinder-resize-control{padding-top:3em}.elfinder-resize-control input[type=text]{border:1px solid #aaa;text-align:right}.elfinder-resize-preview{width:400px;height:400px;padding:10px;background:#fff;border:1px solid #aaa;float:right;position:relative;overflow:auto}.elfinder-resize-handle{position:relative}.elfinder-resize-handle-hline,.elfinder-resize-handle-vline{position:absolute;background-image:url("../img/crop.gif")}.elfinder-resize-handle-hline{width:100%;height:1px!important;background-repeat:repeat-x}.elfinder-resize-handle-vline{width:1px!important;height:100%;background-repeat:repeat-y}.elfinder-resize-handle-hline-top{top:0;left:0}.elfinder-resize-handle-hline-bottom{bottom:0;left:0}.elfinder-resize-handle-vline-left{top:0;left:0}.elfinder-resize-handle-vline-right{top:0;right:0}.elfinder-resize-handle-point{position:absolute;width:8px;height:8px;border:1px solid #777;background:0 0}.elfinder-resize-handle-point-n{top:0;left:50%;margin-top:-5px;margin-left:-5px}.elfinder-resize-handle-point-ne{top:0;right:0;margin-top:-5px;margin-right:-5px}.elfinder-resize-handle-point-e{top:50%;right:0;margin-top:-5px;margin-right:-5px}.elfinder-resize-handle-point-se{bottom:0;right:0;margin-bottom:-5px;margin-right:-5px}.elfinder-resize-handle-point-s{bottom:0;left:50%;margin-bottom:-5px;margin-left:-5px}.elfinder-resize-handle-point-sw{bottom:0;left:0;margin-bottom:-5px;margin-left:-5px}.elfinder-resize-handle-point-w{top:50%;left:0;margin-top:-5px;margin-left:-5px}.elfinder-resize-handle-point-nw{top:0;left:0;margin-top:-5px;margin-left:-5px}.elfinder-resize-spinner{position:absolute;width:200px;height:30px;top:50%;margin-top:-25px;left:50%;margin-left:-100px;text-align:center;background:url(../img/progress.gif) center bottom repeat-x}.elfinder-resize-row{margin-bottom:7px;position:relative}.elfinder-resize-label{float:left;width:80px;padding-top:3px}.elfinder-resize-reset{width:16px;height:16px;position:absolute;margin-top:-8px}.elfinder-dialog .elfinder-dialog-resize .ui-resizable-e{height:100%;width:10px}.elfinder-dialog .elfinder-dialog-resize .ui-resizable-s{width:100%;height:10px}.elfinder-dialog .elfinder-dialog-resize .ui-resizable-se{background:0 0;bottom:0;right:0;margin-right:-7px;margin-bottom:-7px}.elfinder-dialog-resize .ui-icon-grip-solid-vertical{position:absolute;top:50%;right:0;margin-top:-8px;margin-right:-11px}.elfinder-dialog-resize .ui-icon-grip-solid-horizontal{position:absolute;left:50%;bottom:0;margin-left:-8px;margin-bottom:-11px}.elfinder-resize-row .elfinder-buttonset{float:right}.elfinder-resize-rotate-slider{float:left;width:195px;margin:7px}.elfinder-file-edit{width:99%;height:99%;margin:0;padding:2px;border:1px solid #ccc}div.elfinder-cwd-wrapper-list tr.ui-state-default td{position:relative}div.elfinder-cwd-wrapper-list tr.ui-state-default td span.ui-icon{position:absolute;top:.4em;left:0;right:0;margin:auto 0 auto auto}.elfinder-help{margin-bottom:.5em}.elfinder-help .ui-tabs-panel{padding:.5em}.elfinder-dialog .ui-tabs .ui-tabs-nav li a{padding:.2em 1em}.elfinder-help-shortcuts{height:300px;padding:1em;margin:.5em 0;overflow:auto}.elfinder-help-shortcut{white-space:nowrap;clear:both}.elfinder-help-shortcut-pattern{float:left;width:160px}.elfinder-help-logo{width:100px;height:96px;float:left;margin-right:1em;background:url('../img/logo.png') center center no-repeat}.elfinder-help h3{font-size:1.5em;margin:.2em 0 .3em}.elfinder-help-separator{clear:both;padding:.5em}.elfinder-help-link{padding:2px}.elfinder-help .ui-priority-secondary{font-size:.9em}.elfinder-help .ui-priority-primary{margin-bottom:7px}.elfinder-help-team{clear:both;text-align:right;border-bottom:1px solid #ccc;margin:.5em 0;font-size:.9em}.elfinder-help-team div{float:left}.elfinder-help-license{font-size:.9em}.elfinder-help-disabled{font-weight:700;text-align:center;margin:90px 0}.elfinder-help .elfinder-dont-panic{display:block;border:1px solid transparent;width:200px;height:200px;margin:30px auto;text-decoration:none;text-align:center;position:relative;background:#d90004;-moz-box-shadow:5px 5px 9px #111;-webkit-box-shadow:5px 5px 9px #111;box-shadow:5px 5px 9px #111;background:-moz-radial-gradient(80px 80px,circle farthest-corner,#d90004 35%,#960004 100%);background:-webkit-gradient(radial,80 80,60,80 80,120,from(#d90004),to(#960004));-moz-border-radius:100px;-webkit-border-radius:100px;border-radius:100px;outline:none}.elfinder-help .elfinder-dont-panic span{font-size:3em;font-weight:700;text-align:center;color:#fff;position:absolute;left:0;top:45px}.elfinder{padding:0;position:relative;display:block}.elfinder-rtl{text-align:right;direction:rtl}.elfinder-workzone{padding:0;position:relative;overflow:hidden}.elfinder-lock,.elfinder-perms,.elfinder-symlink{position:absolute;width:16px;height:16px;background-image:url(../img/toolbar.png);background-repeat:no-repeat;background-position:0 -528px}.elfinder-na .elfinder-perms{background-position:0 -96px}.elfinder-ro .elfinder-perms{background-position:0 -64px}.elfinder-wo .elfinder-perms{background-position:0 -80px}.elfinder-lock{background-position:0 -656px}.elfinder-drag-helper{width:70px;height:60px;padding:0 0 0 25px;z-index:100000}.elfinder-drag-helper.html5-native{position:absolute;top:-1000px;left:-1000px}.elfinder-drag-helper-icon-status{position:absolute;width:16px;height:16px;left:42px;top:60px;background:url('../img/toolbar.png') 0 -96px no-repeat;display:block}.elfinder-drag-helper-move .elfinder-drag-helper-icon-status{background-position:0 -720px}.elfinder-drag-helper-plus .elfinder-drag-helper-icon-status{background-position:0 -544px}.elfinder-drag-num{position:absolute;top:0;left:0;width:16px;height:14px;text-align:center;padding-top:2px;font-weight:700;color:#fff;background-color:red;-moz-border-radius:8px;-webkit-border-radius:8px;border-radius:8px}.elfinder-drag-helper .elfinder-cwd-icon{margin:0 0 0 -24px;float:left}.elfinder-overlay{position:absolute}.elfinder .elfinder-panel{position:relative;background-image:none;padding:7px 12px}[draggable=true]{-khtml-user-drag:element}.elfinder-contextmenu,.elfinder-contextmenu-sub{display:none;position:absolute;border:1px solid #aaa;background:#fff;color:#555;padding:4px 0}.elfinder-contextmenu-sub{top:5px}.elfinder-contextmenu-ltr .elfinder-contextmenu-sub{margin-left:-5px}.elfinder-contextmenu-rtl .elfinder-contextmenu-sub{margin-right:-5px}.elfinder-contextmenu-item{position:relative;display:block;padding:4px 30px;text-decoration:none;white-space:nowrap;cursor:default}.elfinder-contextmenu-item .ui-icon{width:16px;height:16px;position:absolute;left:2px;top:50%;margin-top:-8px;display:none}.elfinder-contextmenu-item.elfinder-touch{padding:12px 30px}.elfinder-contextmenu .elfinder-contextmenu-item span{display:block}.elfinder-contextmenu-ltr .elfinder-contextmenu-item{text-align:left}.elfinder-contextmenu-rtl .elfinder-contextmenu-item{text-align:right}.elfinder-contextmenu-ltr .elfinder-contextmenu-sub .elfinder-contextmenu-item{padding-left:12px}.elfinder-contextmenu-rtl .elfinder-contextmenu-sub .elfinder-contextmenu-item{padding-right:12px}.elfinder-contextmenu-extra-icon,.elfinder-contextmenu-arrow,.elfinder-contextmenu-icon{position:absolute;top:50%;margin-top:-8px;overflow:hidden}.elfinder-contextmenu-ltr .elfinder-contextmenu-icon{left:8px}.elfinder-contextmenu-rtl .elfinder-contextmenu-icon,.elfinder-contextmenu-ltr .elfinder-contextmenu-extra-icon{right:8px}.elfinder-contextmenu-rtl .elfinder-contextmenu-extra-icon{left:8px}.elfinder-contextmenu-arrow{width:16px;height:16px;background:url('../img/arrows-normal.png') 5px 4px no-repeat}.elfinder-contextmenu-ltr .elfinder-contextmenu-arrow{right:5px}.elfinder-contextmenu-rtl .elfinder-contextmenu-arrow{left:5px;background-position:0 -10px}.elfinder-contextmenu-extra-icon a,.elfinder-contextmenu-extra-icon span{display:inline-block;width:100%;height:100%;padding:20px;margin:0;color:transparent!important;text-decoration:none;cursor:pointer}.elfinder-contextmenu .ui-state-hover{border:0 solid;background-image:none}.elfinder-contextmenu-separator{height:0;border-top:1px solid #ccc;margin:0 1px}.elfinder-cwd-wrapper{overflow:auto;position:relative;padding:2px;margin:0}.elfinder-cwd-wrapper-list{padding:0}.elfinder-cwd{position:relative;cursor:default;padding:0;margin:0;-ms-touch-action:auto;touch-action:auto;-webkit-tap-highlight-color:rgba(0,0,0,0);-webkit-touch-callout:none;user-select:none;-webkit-user-select:none;-moz-user-select:none;-khtml-user-select:none}.elfinder .elfinder-cwd-wrapper.elfinder-droppable-active{outline:2px solid #8cafed;outline-offset:-2px}.elfinder-cwd-wrapper-empty .elfinder-cwd:after{display:block;position:absolute;top:40%;left:0;right:0;margin-top:-2em;line-height:1.5em;text-align:center;white-space:pre-wrap;opacity:.6;font-weight:700}.elfinder-cwd-view-icons .elfinder-cwd-file{width:120px;height:80px;padding-bottom:2px;cursor:default;border:none}.elfinder-ltr .elfinder-cwd-view-icons .elfinder-cwd-file{float:left;margin:0 3px 12px 0}.elfinder-rtl .elfinder-cwd-view-icons .elfinder-cwd-file{float:right;margin:0 0 5px 3px}.elfinder-cwd-view-icons .elfinder-cwd-file .ui-state-hover{border:0 solid}.elfinder-cwd-view-icons .elfinder-cwd-file-wrapper{width:52px;height:52px;margin:1px auto;padding:2px;position:relative}.elfinder-cwd-view-icons .elfinder-cwd-filename{text-align:center;max-height:32px;white-space:pre-wrap;word-break:normal;overflow:hidden;text-overflow:ellipsis;-o-text-overflow:ellipsis;margin:3px 1px 0;padding:1px;-moz-border-radius:8px;-webkit-border-radius:8px;border-radius:8px}.elfinder-cwd-view-icons .elfinder-perms{bottom:4px;right:2px}.elfinder-cwd-view-icons .elfinder-lock{top:-3px;right:-2px}.elfinder-cwd-view-icons .elfinder-symlink{bottom:6px;left:0}.elfinder-cwd-icon{display:block;width:48px;height:48px;margin:0 auto;background:url('../img/icons-big.png') 0 0 no-repeat;-moz-background-clip:padding;-webkit-background-clip:padding-box;background-clip:padding-box}.elfinder-cwd .elfinder-droppable-active .elfinder-cwd-icon{background-position:0 -100px}.elfinder-cwd-icon-directory{background-position:0 -50px}.elfinder-cwd-icon-application{background-position:0 -150px}.elfinder-cwd-icon-x-empty,.elfinder-cwd-icon-text{background-position:0 -200px}.elfinder-cwd-icon-image,.elfinder-cwd-icon-vnd-adobe-photoshop,.elfinder-cwd-icon-postscript{background-position:0 -250px}.elfinder-cwd-icon-audio{background-position:0 -300px}.elfinder-cwd-icon-video,.elfinder-cwd-icon-flash-video{background-position:0 -350px}.elfinder-cwd-icon-rtf,.elfinder-cwd-icon-rtfd{background-position:0 -401px}.elfinder-cwd-icon-pdf{background-position:0 -450px}.elfinder-cwd-icon-ms-excel,.elfinder-cwd-icon-msword,.elfinder-cwd-icon-vnd-ms-excel,.elfinder-cwd-icon-vnd-ms-excel-addin-macroEnabled-12,.elfinder-cwd-icon-vnd-ms-excel-sheet-binary-macroEnabled-12,.elfinder-cwd-icon-vnd-ms-excel-sheet-macroEnabled-12,.elfinder-cwd-icon-vnd-ms-excel-template-macroEnabled-12,.elfinder-cwd-icon-vnd-ms-office,.elfinder-cwd-icon-vnd-ms-powerpoint,.elfinder-cwd-icon-vnd-ms-powerpoint-addin-macroEnabled-12,.elfinder-cwd-icon-vnd-ms-powerpoint-presentation-macroEnabled-12,.elfinder-cwd-icon-vnd-ms-powerpoint-slide-macroEnabled-12,.elfinder-cwd-icon-vnd-ms-powerpoint-slideshow-macroEnabled-12,.elfinder-cwd-icon-vnd-ms-powerpoint-template-macroEnabled-12,.elfinder-cwd-icon-vnd-ms-word,.elfinder-cwd-icon-vnd-ms-word-document-macroEnabled-12,.elfinder-cwd-icon-vnd-ms-word-template-macroEnabled-12,.elfinder-cwd-icon-vnd-oasis-opendocument-chart,.elfinder-cwd-icon-vnd-oasis-opendocument-database,.elfinder-cwd-icon-vnd-oasis-opendocument-formula,.elfinder-cwd-icon-vnd-oasis-opendocument-graphics,.elfinder-cwd-icon-vnd-oasis-opendocument-graphics-template,.elfinder-cwd-icon-vnd-oasis-opendocument-image,.elfinder-cwd-icon-vnd-oasis-opendocument-presentation,.elfinder-cwd-icon-vnd-oasis-opendocument-presentation-template,.elfinder-cwd-icon-vnd-oasis-opendocument-spreadsheet,.elfinder-cwd-icon-vnd-oasis-opendocument-spreadsheet-template,.elfinder-cwd-icon-vnd-oasis-opendocument-text,.elfinder-cwd-icon-vnd-oasis-opendocument-text-master,.elfinder-cwd-icon-vnd-oasis-opendocument-text-template,.elfinder-cwd-icon-vnd-oasis-opendocument-text-web,.elfinder-cwd-icon-vnd-openofficeorg-extension,.elfinder-cwd-icon-vnd-openxmlformats-officedocument-presentationml-presentation,.elfinder-cwd-icon-vnd-openxmlformats-officedocument-presentationml-slide,.elfinder-cwd-icon-vnd-openxmlformats-officedocument-presentationml-slideshow,.elfinder-cwd-icon-vnd-openxmlformats-officedocument-presentationml-template,.elfinder-cwd-icon-vnd-openxmlformats-officedocument-spreadsheetml-sheet,.elfinder-cwd-icon-vnd-openxmlformats-officedocument-spreadsheetml-template,.elfinder-cwd-icon-vnd-openxmlformats-officedocument-wordprocessingml-document,.elfinder-cwd-icon-vnd-openxmlformats-officedocument-wordprocessingml-template{background-position:0 -500px}.elfinder-cwd-icon-html{background-position:0 -550px}.elfinder-cwd-icon-css{background-position:0 -600px}.elfinder-cwd-icon-javascript,.elfinder-cwd-icon-x-javascript{background-position:0 -650px}.elfinder-cwd-icon-x-perl{background-position:0 -700px}.elfinder-cwd-icon-x-python{background-position:0 -750px}.elfinder-cwd-icon-x-ruby{background-position:0 -800px}.elfinder-cwd-icon-x-sh,.elfinder-cwd-icon-x-shellscript{background-position:0 -850px}.elfinder-cwd-icon-x-c,.elfinder-cwd-icon-x-csrc,.elfinder-cwd-icon-x-chdr,.elfinder-cwd-icon-x-c--,.elfinder-cwd-icon-x-c--src,.elfinder-cwd-icon-x-c--hdr,.elfinder-cwd-icon-x-java,.elfinder-cwd-icon-x-java-source{background-position:0 -900px}.elfinder-cwd-icon-x-php{background-position:0 -950px}.elfinder-cwd-icon-xml{background-position:0 -1000px}.elfinder-cwd-icon-zip,.elfinder-cwd-icon-x-zip,.elfinder-cwd-icon-x-xz,.elfinder-cwd-icon-x-7z-compressed{background-position:0 -1050px}.elfinder-cwd-icon-x-gzip,.elfinder-cwd-icon-x-tar{background-position:0 -1100px}.elfinder-cwd-icon-x-bzip,.elfinder-cwd-icon-x-bzip2{background-position:0 -1150px}.elfinder-cwd-icon-x-rar,.elfinder-cwd-icon-x-rar-compressed{background-position:0 -1200px}.elfinder-cwd-icon-x-shockwave-flash{background-position:0 -1250px}.elfinder-cwd-icon-group{background-position:0 -1300px}.elfinder-cwd input{width:100%;border:0 solid;margin:0;padding:0}.elfinder-cwd-view-icons input{text-align:center}.elfinder-cwd-view-icons textarea{width:100%;border:0 solid;margin:0;padding:0;text-align:center;overflow:hidden;resize:none}.elfinder-cwd-view-icons{text-align:center}.elfinder-cwd table{width:100%;border-collapse:separate;border:0 solid;margin:0 0 10px;border-spacing:0;box-sizing:padding-box;padding:2px}.elfinder .elfinder-cwd table thead tr{border-left:0 solid;border-top:0 solid;border-right:0 solid}.elfinder .elfinder-cwd table thead td{padding:4px 14px}.elfinder .elfinder-cwd table thead td.ui-state-active{background:#ebf1f6;background:-moz-linear-gradient(top,#ebf1f6 0%,#abd3ee 50%,#89c3eb 51%,#d5ebfb 100%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,#ebf1f6),color-stop(50%,#abd3ee),color-stop(51%,#89c3eb),color-stop(100%,#d5ebfb));background:-webkit-linear-gradient(top,#ebf1f6 0%,#abd3ee 50%,#89c3eb 51%,#d5ebfb 100%);background:-o-linear-gradient(top,#ebf1f6 0%,#abd3ee 50%,#89c3eb 51%,#d5ebfb 100%);background:-ms-linear-gradient(top,#ebf1f6 0%,#abd3ee 50%,#89c3eb 51%,#d5ebfb 100%);background:linear-gradient(to bottom,#ebf1f6 0%,#abd3ee 50%,#89c3eb 51%,#d5ebfb 100%);filter:progid:DXImageTransform.Microsoft.gradient( startColorstr='#ebf1f6', endColorstr='#d5ebfb',GradientType=0 )}.elfinder .elfinder-cwd table td{padding:4px 12px;white-space:pre;overflow:hidden;text-align:right;cursor:default;border:0 solid}.elfinder .elfinder-cwd table td div{box-sizing:content-box}.elfinder .elfinder-cwd tr.elfinder-touch td{padding:10px 12px}.elfinder .elfinder-cwd tr.elfinder-cwd-file.elfinder-touch td{padding:13px 12px}.elfinder-ltr .elfinder-cwd table td{text-align:right}.elfinder-ltr .elfinder-cwd table td:first-child{text-align:left}.elfinder-rtl .elfinder-cwd table td{text-align:left}.elfinder-rtl .elfinder-cwd table td:first-child{text-align:right}.elfinder-odd-row{background:#eee}.elfinder-cwd-view-list .elfinder-cwd-file-wrapper{width:97%;position:relative}.elfinder-ltr .elfinder-cwd-view-list .elfinder-cwd-file-wrapper{padding-left:23px}.elfinder-rtl .elfinder-cwd-view-list .elfinder-cwd-file-wrapper{padding-right:23px}.elfinder-cwd-view-list .elfinder-perms,.elfinder-cwd-view-list .elfinder-lock,.elfinder-cwd-view-list .elfinder-symlink{top:50%;margin-top:-6px}.elfinder-ltr .elfinder-cwd-view-list .elfinder-perms{left:7px}.elfinder-ltr .elfinder-cwd-view-list .elfinder-lock{left:9px;top:0}.elfinder-ltr .elfinder-cwd-view-list .elfinder-symlink{left:-7px}.elfinder-cwd-view-list td .elfinder-cwd-icon{width:16px;height:16px;position:absolute;top:50%;margin-top:-8px;background-image:url(../img/icons-small.png)}.elfinder-ltr .elfinder-cwd-view-list .elfinder-cwd-icon{left:0}.elfinder-rtl .elfinder-cwd-view-list .elfinder-cwd-icon{right:0}.std42-dialog{padding:0;position:absolute;left:auto;right:auto}.std42-dialog .ui-dialog-titlebar{border-left:0 solid transparent;border-top:0 solid transparent;border-right:0 solid transparent;-moz-border-radius-bottomleft:0;-webkit-border-bottom-left-radius:0;border-bottom-left-radius:0;-moz-border-radius-bottomright:0;-webkit-border-bottom-right-radius:0;border-bottom-right-radius:0;font-weight:400;padding:.2em 1em}.std42-dialog .ui-dialog-titlebar-close,.std42-dialog .ui-dialog-titlebar-close:hover{padding:1px}.elfinder-rtl .elfinder-dialog .ui-dialog-titlebar{text-align:right}.elfinder-rtl .elfinder-dialog .ui-dialog-titlebar .ui-dialog-titlebar-close{right:auto;left:.3em}.std42-dialog .ui-dialog-content{padding:.3em .5em}.std42-dialog .ui-dialog-buttonpane{border:0 solid;margin:0;padding:.5em .7em}.std42-dialog .ui-dialog-buttonpane button{margin:0 0 0 .4em;padding:0;outline:0 solid}.std42-dialog .ui-dialog-buttonpane button span{padding:2px 9px}.std42-dialog .ui-dialog-buttonpane button span.ui-icon{padding:2px}.elfinder-dialog .ui-resizable-e,.elfinder-dialog .ui-resizable-s{width:0;height:0}.std42-dialog .ui-button input{cursor:pointer}.elfinder-dialog-icon{position:absolute;width:32px;height:32px;left:12px;top:50%;margin-top:-15px;background:url("../img/dialogs.png") 0 0 no-repeat}.elfinder-rtl .elfinder-dialog-icon{left:auto;right:12px}.elfinder-dialog-error .ui-dialog-content,.elfinder-dialog-confirm .ui-dialog-content{padding-left:56px;min-height:35px}.elfinder-rtl .elfinder-dialog-error .ui-dialog-content,.elfinder-rtl .elfinder-dialog-confirm .ui-dialog-content{padding-left:0;padding-right:56px}.elfinder-dialog-notify .ui-dialog-titlebar-close{display:none}.elfinder-dialog-notify .ui-dialog-content{padding:0}.elfinder-notify{border-bottom:1px solid #ccc;position:relative;padding:.5em;text-align:center;overflow:hidden}.elfinder-ltr .elfinder-notify{padding-left:30px}.elfinder-rtl .elfinder-notify{padding-right:30px}.elfinder-notify:last-child{border:0 solid}.elfinder-notify-progressbar{width:180px;height:8px;border:1px solid #aaa;background:#f5f5f5;margin:5px auto;overflow:hidden}.elfinder-notify-progress{width:100%;height:8px;background:url(../img/progress.gif) center center repeat-x}.elfinder-notify-progressbar,.elfinder-notify-progress{-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px}.elfinder-dialog-icon-open,.elfinder-dialog-icon-readdir,.elfinder-dialog-icon-file,.elfinder-dialog-icon-reload{background-position:0 -225px}.elfinder-dialog-icon-mkdir{background-position:0 -64px}.elfinder-dialog-icon-mkfile{background-position:0 -96px}.elfinder-dialog-icon-copy,.elfinder-dialog-icon-prepare,.elfinder-dialog-icon-move{background-position:0 -128px}.elfinder-dialog-icon-upload,.elfinder-dialog-icon-chunkmerge{background-position:0 -160px}.elfinder-dialog-icon-rm{background-position:0 -192px}.elfinder-dialog-icon-download{background-position:0 -260px}.elfinder-dialog-icon-save{background-position:0 -295px}.elfinder-dialog-icon-rename{background-position:0 -330px}.elfinder-dialog-icon-archive,.elfinder-dialog-icon-extract{background-position:0 -365px}.elfinder-dialog-icon-search{background-position:0 -402px}.elfinder-dialog-icon-resize,.elfinder-dialog-icon-loadimg,.elfinder-dialog-icon-netmount,.elfinder-dialog-icon-netunmount,.elfinder-dialog-icon-chmod,.elfinder-dialog-icon-preupload,.elfinder-dialog-icon-dim{background-position:0 -434px}.elfinder-dialog-confirm-applyall{padding-top:3px}.elfinder-dialog-confirm .elfinder-dialog-icon{background-position:0 -32px}.elfinder-info-title .elfinder-cwd-icon{float:left;width:48px;height:48px;margin-right:1em}.elfinder-rtl .elfinder-info-title .elfinder-cwd-icon{float:right;margin-right:0;margin-left:1em}.elfinder-info-title strong{display:block;padding:.3em 0 .5em}.elfinder-info-tb{min-width:200px;border:0 solid;margin:1em .2em}.elfinder-info-tb td{white-space:nowrap;padding:2px}.elfinder-info-tb tr td:first-child{text-align:right}.elfinder-info-tb span{float:left}.elfinder-info-tb a{outline:none;text-decoration:underline}.elfinder-info-tb a:hover{text-decoration:none}.elfinder-info-spinner{width:14px;height:14px;float:left;background:url("../img/spinner-mini.gif") center center no-repeat;margin:0 5px}.elfinder-netmount-tb{margin:0 auto}.elfinder-netmount-tb input{border:1px solid #ccc}.elfinder-upload-dropbox{text-align:center;padding:2em 0;border:3px dashed #aaa;height:1em;overflow:hidden}.elfinder-upload-dropbox.ui-state-hover{background:#dfdfdf;border:3px dashed #555}.elfinder-upload-dialog-or{margin:.3em 0;text-align:center}.elfinder-upload-dialog-wrapper{text-align:center}.elfinder-upload-dialog-wrapper .ui-button{position:relative;overflow:hidden}.elfinder-upload-dialog-wrapper .ui-button form{position:absolute;right:0;top:0;opacity:0;filter:Alpha(Opacity=0)}.elfinder-upload-dialog-wrapper .ui-button form input{padding:0 20px;font-size:3em}.dialogelfinder .dialogelfinder-drag{border-left:0 solid;border-top:0 solid;border-right:0 solid;font-weight:400;padding:2px 12px;cursor:move;position:relative;text-align:left}.elfinder-rtl .dialogelfinder-drag{text-align:right}.dialogelfinder-drag-close{position:absolute;top:50%;margin-top:-8px}.elfinder-ltr .dialogelfinder-drag-close{right:12px}.elfinder-rtl .dialogelfinder-drag-close{left:12px}.elfinder-rm-title{margin-bottom:.5ex}.elfinder-rm-title .elfinder-cwd-icon{float:left;width:48px;height:48px;margin-right:1em}.elfinder-rtl .elfinder-rm-title .elfinder-cwd-icon{float:right;margin-right:0;margin-left:1em}.elfinder-rm-title strong{display:block;white-space:pre-wrap;word-break:normal;overflow:hidden;text-overflow:ellipsis}.elfinder-rm-title+br{display:none}.elfinder-contextmenu .elfinder-contextmenu-item span{font-size:.76em}.elfinder-cwd-view-icons .elfinder-cwd-filename,.elfinder-cwd-view-list td{font-size:.7em}.std42-dialog .ui-dialog-titlebar{font-size:.82em}.std42-dialog .ui-dialog-content{font-size:.72em}.std42-dialog .ui-dialog-buttonpane{font-size:.76em}.elfinder-info-tb{font-size:.9em}.elfinder-upload-dropbox,.elfinder-upload-dialog-or{font-size:1.2em}.dialogelfinder .dialogelfinder-drag{font-size:.9em}.elfinder .elfinder-navbar{font-size:.72em}.elfinder-place-drag .elfinder-navbar-dir{font-size:.9em}.elfinder-quicklook-title{font-size:.7em}.elfinder-quicklook-info-data{font-size:.72em}.elfinder-quicklook-preview-text-wrapper{font-size:.9em}.elfinder-button-menu-item{font-size:.72em}.elfinder-button-search input{font-size:.8em}.elfinder-statusbar div{font-size:.7em}.elfinder-drag-num{font-size:12px}.elfinder .elfinder-navbar{width:230px;padding:3px 5px;background-image:none;border-top:0 solid;border-bottom:0 solid;overflow:auto;display:none;position:relative;-webkit-tap-highlight-color:rgba(0,0,0,0);-webkit-touch-callout:none;user-select:none;-webkit-user-select:none;-moz-user-select:none;-khtml-user-select:none}.elfinder-ltr .elfinder-navbar{float:left;border-left:0 solid}.elfinder-rtl .elfinder-navbar{float:right;border-right:0 solid}.elfinder-ltr .ui-resizable-e{margin-left:10px}.elfinder-tree{display:table;width:100%;margin:0 0 .5em;-webkit-tap-highlight-color:rgba(0,0,0,0)}.elfinder-navbar-dir{position:relative;display:block;white-space:nowrap;padding:3px 12px;margin:0;outline:0 solid;border:1px solid transparent;cursor:default}.elfinder-navbar-dir.elfinder-touch{padding:12px}.elfinder-ltr .elfinder-navbar-dir{padding-left:35px}.elfinder-rtl .elfinder-navbar-dir{padding-right:35px}.elfinder-navbar-arrow{width:12px;height:14px;position:absolute;display:none;top:50%;margin-top:-8px;background-image:url("../img/arrows-normal.png");background-repeat:no-repeat}.ui-state-active .elfinder-navbar-arrow{background-image:url("../img/arrows-active.png")}.elfinder-navbar-collapsed .elfinder-navbar-arrow{display:block}.elfinder-ltr .elfinder-navbar-collapsed .elfinder-navbar-arrow{background-position:0 4px;left:0}.elfinder-rtl .elfinder-navbar-collapsed .elfinder-navbar-arrow{background-position:0 -10px;right:0}.elfinder-ltr .elfinder-navbar-expanded .elfinder-navbar-arrow,.elfinder-rtl .elfinder-navbar-expanded .elfinder-navbar-arrow{background-position:0 -21px}.elfinder-navbar-icon{width:16px;height:16px;position:absolute;top:50%;margin-top:-8px;background-image:url("../img/toolbar.png");background-repeat:no-repeat;background-position:0 -16px}.elfinder-ltr .elfinder-navbar-icon{left:14px}.elfinder-rtl .elfinder-navbar-icon{right:14px}.elfinder-tree .elfinder-navbar-root .elfinder-navbar-icon{background-position:0 0}.elfinder-places .elfinder-navbar-root .elfinder-navbar-icon{background-position:0 -704px}.elfinder-tree .elfinder-navbar-root-local .elfinder-navbar-icon{background-image:url("../img/volume_icon_local.png")}.elfinder-tree .elfinder-navbar-root-ftp .elfinder-navbar-icon{background-image:url("../img/volume_icon_ftp.png")}.elfinder-tree .elfinder-navbar-root-sql .elfinder-navbar-icon{background-image:url("../img/volume_icon_sql.png")}.elfinder-tree .elfinder-navbar-root-dropbox .elfinder-navbar-icon{background-image:url("../img/volume_icon_dropbox.png")}.ui-state-active .elfinder-navbar-icon,.elfinder-droppable-active .elfinder-navbar-icon,.ui-state-hover .elfinder-navbar-icon{background-position:0 -32px}.elfinder-navbar-subtree{display:none}.elfinder-ltr .elfinder-navbar-subtree{margin-left:12px}.elfinder-rtl .elfinder-navbar-subtree{margin-right:12px}.elfinder-navbar-spinner{width:14px;height:14px;position:absolute;display:block;top:50%;margin-top:-7px;background:url("../img/spinner-mini.gif") center center no-repeat}.elfinder-ltr .elfinder-navbar-spinner{left:0;margin-left:-2px}.elfinder-rtl .elfinder-navbar-spinner{right:0;margin-right:-2px}.elfinder-navbar .elfinder-perms{top:50%;margin-top:-8px}.elfinder-navbar .elfinder-lock{top:-2px}.elfinder-ltr .elfinder-navbar .elfinder-perms{left:18px}.elfinder-rtl .elfinder-navbar .elfinder-perms{right:18px}.elfinder-ltr .elfinder-navbar .elfinder-lock{left:18px}.elfinder-rtl .elfinder-navbar .elfinder-lock{right:18px}.elfinder-ltr .elfinder-navbar .elfinder-symlink{left:8px}.elfinder-rtl .elfinder-navbar .elfinder-symlink{right:8px}.elfinder-navbar input{width:100%;border:0 solid;margin:0;padding:0}.elfinder-navbar .ui-resizable-handle{width:12px;background:url('../img/resize.png') center center no-repeat}.elfinder-nav-handle-icon{position:absolute;top:50%;margin:-8px 2px 0;opacity:.5;filter:Alpha(Opacity=50)}.elfinder-places{border:none;margin:0;padding:0}.elfinder-places-root-icon{position:absolute;top:2px;cursor:pointer;display:none}.elfinder-ltr .elfinder-places-root-icon{right:10px}.elfinder-rtl .elfinder-places-root-icon{left:10px}.elfinder-navbar-expanded .elfinder-places-root-icon{display:inline-block}.elfinder-place-drag{font-size:.8em}.elfinder-quicklook{position:absolute;background:url("../img/quicklook-bg.png");display:none;overflow:hidden;border-radius:7px;-moz-border-radius:7px;-webkit-border-radius:7px;padding:20px 0 40px}.elfinder-quicklook .ui-resizable-se{width:14px;height:14px;right:5px;bottom:3px;background:url("../img/toolbar.png") 0 -496px no-repeat}.elfinder-quicklook-fullscreen{border-radius:0;-moz-border-radius:0;-webkit-border-radius:0;-webkit-background-clip:padding-box;padding:0;background:#000;z-index:90000;display:block}.elfinder-quicklook-fullscreen .elfinder-quicklook-titlebar{display:none}.elfinder-quicklook-fullscreen .elfinder-quicklook-preview{border:0 solid}.elfinder-quicklook-titlebar{text-align:center;background:#777;position:absolute;left:0;top:0;width:100%;height:20px;-moz-border-radius-topleft:7px;-webkit-border-top-left-radius:7px;border-top-left-radius:7px;-moz-border-radius-topright:7px;-webkit-border-top-right-radius:7px;border-top-right-radius:7px;cursor:move}.elfinder-quicklook-title{color:#fff;white-space:nowrap;overflow:hidden;padding:2px 0}.elfinder-quicklook-titlebar .ui-icon{position:absolute;left:4px;top:50%;margin-top:-8px;width:16px;height:16px;cursor:default}.elfinder-quicklook-preview{overflow:hidden;position:relative;border:0 solid;border-left:1px solid transparent;border-right:1px solid transparent;height:100%}.elfinder-quicklook-info-wrapper{position:absolute;width:100%;left:0;top:50%;margin-top:-50px}.elfinder-quicklook-info{padding:0 12px 0 112px}.elfinder-quicklook-info .elfinder-quicklook-info-data:first-child{color:#fff;font-weight:700;padding-bottom:.5em}.elfinder-quicklook-info-data{padding-bottom:.2em;color:#fff}.elfinder-quicklook .elfinder-cwd-icon{position:absolute;left:32px;top:50%;margin-top:-20px}.elfinder-quicklook-preview img{display:block;margin:0 auto}.elfinder-quicklook-navbar{position:absolute;left:50%;bottom:4px;width:140px;height:32px;padding:0;margin-left:-70px;border:1px solid transparent;border-radius:19px;-moz-border-radius:19px;-webkit-border-radius:19px}.elfinder-quicklook-fullscreen .elfinder-quicklook-navbar{width:188px;margin-left:-94px;padding:5px;border:1px solid #eee;background:#000}.elfinder-quicklook-fullscreen .elfinder-quicklook-navbar-icon-close,.elfinder-quicklook-fullscreen .elfinder-quicklook-navbar-separator{display:inline}.elfinder-quicklook-navbar-icon{width:32px;height:32px;margin:0 7px;float:left;background:url("../img/quicklook-icons.png") 0 0 no-repeat}.elfinder-quicklook-navbar-icon-fullscreen{background-position:0 -64px}.elfinder-quicklook-navbar-icon-fullscreen-off{background-position:0 -96px}.elfinder-quicklook-navbar-icon-prev{background-position:0 0}.elfinder-quicklook-navbar-icon-next{background-position:0 -32px}.elfinder-quicklook-navbar-icon-close{background-position:0 -128px;display:none}.elfinder-quicklook-navbar-separator{width:1px;height:32px;float:left;border-left:1px solid #fff;display:none}.elfinder-quicklook-preview-text-wrapper{width:100%;height:100%;background:#fff;color:#222;overflow:auto}pre.elfinder-quicklook-preview-text{margin:0;padding:3px 9px}.elfinder-quicklook-preview-html,.elfinder-quicklook-preview-pdf{width:100%;height:100%;background:#fff;border:0 solid;margin:0}.elfinder-quicklook-preview-flash{width:100%;height:100%}.elfinder-quicklook-preview-audio{width:100%;position:absolute;bottom:0;left:0}embed.elfinder-quicklook-preview-audio{height:30px;background:0 0}.elfinder-quicklook-preview-video{width:100%;height:100%}.elfinder-statusbar{text-align:center;font-weight:400;padding:.2em .5em;border-right:0 solid transparent;border-bottom:0 solid transparent;border-left:0 solid transparent;-webkit-touch-callout:none;user-select:none;-webkit-user-select:none;-moz-user-select:none;-khtml-user-select:none}.elfinder-statusbar a{text-decoration:none}.elfinder-path{max-width:30%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;-o-text-overflow:ellipsis}.elfinder-ltr .elfinder-path{float:left}.elfinder-rtl .elfinder-path{float:right}.elfinder-stat-size{white-space:nowrap}.elfinder-ltr .elfinder-stat-size{float:right}.elfinder-rtl .elfinder-stat-size{float:left}.elfinder-stat-selected{white-space:nowrap;overflow:hidden}.elfinder-toolbar{padding:4px 0 3px;border-left:0 solid transparent;border-top:0 solid transparent;border-right:0 solid transparent}.elfinder-buttonset{margin:1px 4px;float:left;background:0 0;padding:0;-moz-border-radius:4px;-webkit-border-radius:4px;border-radius:4px}.elfinder .elfinder-button{width:16px;height:16px;margin:0;padding:4px;float:left;overflow:hidden;position:relative;border:0 solid;-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box}.elfinder .ui-icon-search{cursor:pointer}.elfinder-button:first-child{-moz-border-radius-topleft:4px;-webkit-border-top-left-radius:4px;border-top-left-radius:4px;-moz-border-radius-bottomleft:4px;-webkit-border-bottom-left-radius:4px;border-bottom-left-radius:4px}.elfinder-button:last-child{-moz-border-radius-topright:4px;-webkit-border-top-right-radius:4px;border-top-right-radius:4px;-moz-border-radius-bottomright:4px;-webkit-border-bottom-right-radius:4px;border-bottom-right-radius:4px}.elfinder-toolbar-button-separator{float:left;padding:0;height:24px;border-top:0 solid;border-right:0 solid;border-bottom:0 solid;width:0}.elfinder .elfinder-button.ui-state-disabled{opacity:1;filter:Alpha(Opacity=100)}.elfinder .elfinder-button.ui-state-disabled .elfinder-button-icon{opacity:.4;filter:Alpha(Opacity=40)}.elfinder-rtl .elfinder-buttonset{float:right}.elfinder-button-icon{width:16px;height:16px;display:block;background:url('../img/toolbar.png') no-repeat}.elfinder-button-icon-home{background-position:0 0}.elfinder-button-icon-back{background-position:0 -112px}.elfinder-button-icon-forward{background-position:0 -128px}.elfinder-button-icon-up{background-position:0 -144px}.elfinder-button-icon-reload{background-position:0 -160px}.elfinder-button-icon-open{background-position:0 -176px}.elfinder-button-icon-mkdir{background-position:0 -192px}.elfinder-button-icon-mkfile{background-position:0 -208px}.elfinder-button-icon-rm{background-position:0 -224px}.elfinder-button-icon-copy{background-position:0 -240px}.elfinder-button-icon-cut{background-position:0 -256px}.elfinder-button-icon-paste{background-position:0 -272px}.elfinder-button-icon-getfile{background-position:0 -288px}.elfinder-button-icon-duplicate{background-position:0 -304px}.elfinder-button-icon-rename{background-position:0 -320px}.elfinder-button-icon-edit{background-position:0 -336px}.elfinder-button-icon-quicklook{background-position:0 -352px}.elfinder-button-icon-upload{background-position:0 -368px}.elfinder-button-icon-download{background-position:0 -384px}.elfinder-button-icon-info{background-position:0 -400px}.elfinder-button-icon-extract{background-position:0 -416px}.elfinder-button-icon-archive{background-position:0 -432px}.elfinder-button-icon-view{background-position:0 -448px}.elfinder-button-icon-view-list{background-position:0 -464px}.elfinder-button-icon-help{background-position:0 -480px}.elfinder-button-icon-resize{background-position:0 -512px}.elfinder-button-icon-link{background-position:0 -528px}.elfinder-button-icon-search{background-position:0 -561px}.elfinder-button-icon-sort{background-position:0 -577px}.elfinder-button-icon-rotate-r{background-position:0 -625px}.elfinder-button-icon-rotate-l{background-position:0 -641px}.elfinder-button-icon-netmount{background-position:0 -688px}.elfinder-button-icon-netunmount{background-position:0 -96px}.elfinder-button-icon-places{background-position:0 -704px}.elfinder-button-icon-chmod{background-position:0 -48px}.elfinder-button-icon-accept{background-position:0 -736px}.elfinder-button-icon-opendir{background-position:0 -32px}.elfinder .elfinder-menubutton{overflow:visible}.elfinder-button-icon-spinner{background:url("../img/spinner-mini.gif") center center no-repeat}.elfinder-button-menu{position:absolute;left:0;top:25px;padding:3px 0}.elfinder-button-menu-item{white-space:nowrap;cursor:default;padding:5px 19px;position:relative}.elfinder-button-menu .ui-state-hover{border:0 solid}.elfinder-button-menu-item-separated{border-top:1px solid #ccc}.elfinder-button-menu-item .ui-icon{width:16px;height:16px;position:absolute;left:2px;top:50%;margin-top:-8px;display:none}.elfinder-button-menu-item-selected .ui-icon{display:block}.elfinder-button-menu-item-selected-asc .ui-icon-arrowthick-1-n,.elfinder-button-menu-item-selected-desc .ui-icon-arrowthick-1-s{display:none}.elfinder-button form{position:absolute;top:0;right:0;opacity:0;filter:Alpha(Opacity=0);cursor:pointer}.elfinder .elfinder-button form input{background:0 0;cursor:default}.elfinder .elfinder-button-search{border:0 solid;background:0 0;padding:0;margin:1px 4px;height:auto;min-height:26px;float:right;width:202px;overflow:visible}.elfinder .elfinder-button-search .elfinder-button-menu{font-size:8pt;text-align:center;width:100%}.elfinder .elfinder-button-search .elfinder-button-menu div{margin-left:auto;margin-right:auto;margin-bottom:5px}.elfinder .elfinder-button-search .elfinder-button-menu div .ui-state-hover{border:1px solid}.elfinder-ltr .elfinder-button-search{float:right;margin-right:10px}.elfinder-rtl .elfinder-button-search{float:left;margin-left:10px}.elfinder-button-search input{width:160px;height:22px;padding:0 20px;line-height:22px;border:1px solid #aaa;-moz-border-radius:12px;-webkit-border-radius:12px;border-radius:12px;outline:0 solid}.elfinder-rtl .elfinder-button-search input{direction:rtl}.elfinder-button-search .ui-icon{position:absolute;height:18px;top:50%;margin:-9px 4px 0;opacity:.6;filter:Alpha(Opacity=60)}.elfinder-ltr .elfinder-button-search .ui-icon-search{left:0}.elfinder-rtl .elfinder-button-search .ui-icon-search,.elfinder-ltr .elfinder-button-search .ui-icon-close{right:0}.elfinder-rtl .elfinder-button-search .ui-icon-close{left:0}
\ No newline at end of file
diff --git a/js/elfinder.full.js b/js/elfinder.full.js
index dd91504d2..d93e7fcb7 100644
--- a/js/elfinder.full.js
+++ b/js/elfinder.full.js
@@ -1,6 +1,6 @@
/*!
* elFinder - file manager for web
- * Version 2.1.5 (2.1-src Nightly: e9fe571) (2016-01-16)
+ * Version 2.1.5 (2.1-src Nightly: 62ee5c1) (2016-01-17)
* http://elfinder.org
*
* Copyright 2009-2016, Studio 42
@@ -1366,6 +1366,9 @@ window.elFinder = function(node, opts) {
xhr = this.transport.send(options).fail(error).done(success);
+ // Set currrent request command name
+ self.currentReqCmd = cmd;
+
// add "open" xhr into queue
if (cmd == 'open' || (cmd == 'info' && data.compare)) {
queue.unshift(xhr);
@@ -2454,6 +2457,13 @@ elFinder.prototype = {
return this.resources[type] && this.resources[type][id];
},
+ /**
+ * Current request command
+ *
+ * @type String
+ */
+ currentReqCmd : '',
+
/**
* Internationalization object
*
@@ -4696,7 +4706,7 @@ if (!Object.keys) {
*
* @type String
**/
-elFinder.prototype.version = '2.1.5 (2.1-src Nightly: e9fe571)';
+elFinder.prototype.version = '2.1.5 (2.1-src Nightly: 62ee5c1)';
@@ -5951,7 +5961,8 @@ elFinder.prototype.resources = {
symlink : ' ',
navicon : ' ',
navspinner : ' ',
- navdir : '
{symlink}{permissions}{name}
'
+ navdir : ' {symlink}{permissions}{name}
',
+ placedir : ' {symlink}{permissions}{name}
'
},
@@ -7076,6 +7087,13 @@ $.fn.elfindercwd = function(fm, options) {
lastSearch = [],
+ /**
+ * Parents hashes of cwd
+ *
+ * @type Array
+ */
+ cwdParents = [],
+
customColsBuild = function() {
var customCols = '';
var columns = fm.options.uiOptions.cwd.listView.columns;
@@ -7687,6 +7705,19 @@ $.fn.elfindercwd = function(fm, options) {
*/
remove = function(files) {
var l = files.length, hash, n, ndx;
+
+ // removed cwd
+ if (!fm.cwd().hash && fm.currentReqCmd !== 'open') {
+ $.each(cwdParents.reverse(), function(i, h) {
+ if (fm.files()[h]) {
+ fm.one(fm.currentReqCmd, function() {
+ fm.exec('open', h);
+ });
+ return false;
+ }
+ });
+ return;
+ }
while (l--) {
hash = files[l];
@@ -7756,7 +7787,9 @@ $.fn.elfindercwd = function(fm, options) {
*/
content = function(files, any) {
var phash = fm.cwd().hash;
-
+
+ cwdParents = fm.parents(phash);
+
unselectAll();
try {
@@ -8887,7 +8920,7 @@ $.fn.elfinderpath = function(fm) {
**/
$.fn.elfinderplaces = function(fm, opts) {
return this.each(function() {
- var dirs = [],
+ var dirs = {},
c = 'class',
navdir = fm.res(c, 'navdir'),
collapsed = fm.res(c, 'navcollapse'),
@@ -8895,7 +8928,7 @@ $.fn.elfinderplaces = function(fm, opts) {
hover = fm.res(c, 'hover'),
clroot = fm.res(c, 'treeroot'),
dropover = fm.res(c, 'adroppable'),
- tpl = fm.res('tpl', 'navdir'),
+ tpl = fm.res('tpl', 'placedir'),
ptpl = fm.res('tpl', 'perms'),
spinner = $(fm.res('tpl', 'navspinner')),
key = 'places'+(opts.suffix? opts.suffix : ''),
@@ -8919,19 +8952,33 @@ $.fn.elfinderplaces = function(fm, opts) {
*
* @return void
**/
- save = function() { fm.storage(key, dirs.join(',')); },
+ save = function() {
+ var hashes = [], data = [];
+
+ hashes = $.map(subtree.children().find('[id]'), function(n) {
+ return id2hash(n.id);
+ });
+ $.each(hashes.reverse(), function(i, h) {
+ data.push(h + '#' + dirs[h].name);
+ });
+
+
+ fm.storage(key, data.join(','));
+ },
/**
* Return node for given dir object
*
* @param Object directory object
* @return jQuery
**/
- create = function(dir) {
- return $(tpl.replace(/\{id\}/, hash2id(dir.hash))
- .replace(/\{name\}/, fm.escape(dir.name))
- .replace(/\{cssclass\}/, (fm.UA.Touch ? 'elfinder-touch ' : '')+fm.perms2class(dir))
- .replace(/\{permissions\}/, !dir.read || !dir.write ? ptpl : '')
- .replace(/\{symlink\}/, ''));
+ create = function(dir, hash) {
+ return $(tpl.replace(/\{id\}/, hash2id(dir? dir.hash : hash))
+ .replace(/\{name\}/, fm.escape(dir? dir.name : hash))
+ .replace(/\{cssclass\}/, dir? (fm.UA.Touch ? 'elfinder-touch ' : '')+fm.perms2class(dir) : '')
+ .replace(/\{permissions\}/, (dir && (!dir.read || !dir.write))? ptpl : '')
+ .replace(/\{title\}/, (dir && dir.path)? fm.escape(dir.path) : '')
+ .replace(/\{symlink\}/, '')
+ .replace(/\{style\}/, ''));
},
/**
* Add new node into places
@@ -8940,57 +8987,28 @@ $.fn.elfinderplaces = function(fm, opts) {
* @return void
**/
add = function(dir) {
- if (!fm.files().hasOwnProperty(dir.hash)) {
+ var node, hash;
+
+ if (dir.mime !== 'directory') {
+ return false;
+ }
+ hash = dir.hash;
+ if (!fm.files().hasOwnProperty(hash)) {
// update cache
fm.trigger('tree', {tree: [dir]});
}
- var node = create(dir);
-
- if (subtree.children().length) {
- $.each(subtree.children(), function() {
- var current = $(this);
-
- if (dir.name.localeCompare(current.children('.'+navdir).text()) < 0) {
- return !node.insertBefore(current);
- }
- });
- }
+ node = create(dir, hash);
+ if (dir.notfound) {
+ node.addClass('ui-state-disabled');
+ }
- dirs.push(dir.hash);
- !node.parent().length && subtree.append(node);
+ dirs[hash] = dir;
+ subtree.prepend(node);
root.addClass(collapsed);
- node.draggable({
- appendTo : 'body',
- revert : false,
- helper : function() {
- var dir = $(this);
-
- dir.children().removeClass('ui-state-hover');
-
- return $('
')
- .append(dir.clone())
- .data('hash', id2hash(dir.children(':first').attr('id')));
-
- },
- start : function() { $(this).hide(); },
- stop : function(e, ui) {
- var top = places.offset().top,
- left = places.offset().left,
- width = places.width(),
- height = places.height(),
- x = e.pageX,
- y = e.pageY;
-
- if (x > left && x < left+width && y > top && y < y+height) {
- $(this).show();
- } else {
- remove(ui.helper.data('hash'));
- save();
- }
- }
- });
- },
+
+ return true;
+ },
/**
* Remove dir from places
*
@@ -8998,11 +9016,11 @@ $.fn.elfinderplaces = function(fm, opts) {
* @return String removed name
**/
remove = function(hash) {
- var ndx = $.inArray(hash, dirs), name = null, tgt;
+ var name = null, tgt;
- if (ndx !== -1) {
- dirs.splice(ndx, 1);
- tgt = subtree.find('#'+hash2id(hash));
+ if (dirs[hash]) {
+ delete dirs[hash];
+ tgt = $('#'+hash2id(hash));
if (tgt.length) {
name = tgt.text();
tgt.parent().remove();
@@ -9012,6 +9030,29 @@ $.fn.elfinderplaces = function(fm, opts) {
return name;
},
+ /**
+ * Update dir at places
+ *
+ * @param Object directory
+ * @param String previous hash
+ * @return Boolean
+ **/
+ update = function(dir, preHash) {
+ var hash = dir.hash,
+ tgt = $('#'+hash2id(preHash || hash)),
+ node = create(dir, hash);
+
+ if (tgt.length > 0) {
+ if (dir.notfound) {
+ node.addClass('ui-state-disabled');
+ }
+ tgt.parent().replaceWith(node);
+ dirs[hash] = dir;
+ return true
+ } else {
+ return false;
+ }
+ },
/**
* Remove all dir from places
*
@@ -9021,6 +9062,35 @@ $.fn.elfinderplaces = function(fm, opts) {
subtree.empty();
root.removeClass(collapsed+' '+expanded);
},
+ /**
+ * Sort places dirs A-Z
+ *
+ * @return void
+ **/
+ sort = function() {
+ $.each(dirs, function(h, f) {
+ var dir = fm.file(h) || f,
+ node = create(dir, h),
+ ret = null;
+ if (!dir) {
+ node.hide();
+ }
+ if (subtree.children().length) {
+ $.each(subtree.children(), function() {
+ var current = $(this);
+ if (dir.name.localeCompare(current.children('.'+navdir).text()) < 0) {
+ ret = !node.insertBefore(current);
+ return ret;
+ }
+ });
+ if (ret !== null) {
+ return true;
+ }
+ }
+ !$('#'+hash2id(h)).length && subtree.append(node);
+ });
+ save();
+ },
/**
* Node - wrapper for places root
*
@@ -9046,13 +9116,53 @@ $.fn.elfinderplaces = function(fm, opts) {
subtree.slideToggle();
fm.storage('placesState', places.hasClass(expanded)? 1 : 0);
}
- }),
+ })
+ .append(
+ // sort button
+ $(' ')
+ .on('click', function(e) {
+ e.stopPropagation();
+ subtree.empty();
+ sort();
+ }
+ )
+ ),
/**
* Container for dirs
*
* @type jQuery
**/
- subtree = wrapper.children('.'+fm.res(c, 'navsubtree')),
+ subtree = wrapper.children('.'+fm.res(c, 'navsubtree'))
+ .sortable({
+ appendTo : 'body',
+ revert : false,
+ helper : function(e) {
+ var dir = $(e.target).parent();
+
+ dir.children().removeClass('ui-state-hover');
+
+ return $('
')
+ .append($('
').show().append(dir.clone()));
+
+ },
+ stop : function(e, ui) {
+ var target = $(ui.item[0]),
+ top = places.offset().top,
+ left = places.offset().left,
+ width = places.width(),
+ height = places.height(),
+ x = e.pageX,
+ y = e.pageY;
+
+ if (!(x > left && x < left+width && y > top && y < y+height)) {
+ remove(id2hash(target.children(':first').attr('id')));
+ save();
+ }
+ },
+ update : function(e, ui) {
+ save();
+ }
+ }),
/**
* Main places container
*
@@ -9095,11 +9205,9 @@ $.fn.elfinderplaces = function(fm, opts) {
hoverClass : fm.res('class', 'adroppable'),
over : function(e, ui) {
var helper = ui.helper,
- dir = $.map(helper.data('files'), function(h) { return (fm.file(h).mime === 'directory' && $.inArray(h, dirs) === -1)? h : null});
- if ($(this).data('dropover')) {
- return;
- }
- $(this).data('dropover', true);
+ dir = $.map(helper.data('files'), function(h) { return (fm.file(h).mime === 'directory' && !dirs[h])? h : null});
+ e.stopPropagation();
+ helper.data('dropover', helper.data('dropover') + 1);
if (dir.length > 0) {
helper.addClass('elfinder-drag-helper-plus');
} else {
@@ -9109,6 +9217,8 @@ $.fn.elfinderplaces = function(fm, opts) {
},
out : function(e, ui) {
var helper = ui.helper;
+ e.stopPropagation();
+ helper.removeClass('elfinder-drag-helper-move elfinder-drag-helper-plus').data('dropover', Math.max(helper.data('dropover') - 1, 0));
$(this).removeData('dropover')
.removeClass(dropover);
fm.trigger('unlockfiles', {files : helper.data('files'), helper: helper});
@@ -9120,7 +9230,7 @@ $.fn.elfinderplaces = function(fm, opts) {
$.each(helper.data('files'), function(i, hash) {
var dir = fm.file(hash);
- if (dir && dir.mime == 'directory' && $.inArray(dir.hash, dirs) === -1) {
+ if (dir && dir.mime == 'directory' && !dirs[dir.hash]) {
add(dir);
} else {
resolve = false;
@@ -9159,38 +9269,52 @@ $.fn.elfinderplaces = function(fm, opts) {
// "on regist" for command exec
$(this).on('regist', function(e, files){
+ var added = false;
$.each(files, function(i, dir) {
- if (dir && dir.mime == 'directory' && $.inArray(dir.hash, dirs) === -1) {
- add(dir);
+ if (dir && dir.mime == 'directory' && !dirs[dir.hash]) {
+ if (add(dir)) {
+ added = true;
+ }
}
});
- save();
+ added && save();
});
// on fm load - show places and load files from backend
fm.one('load', function() {
+ var dat, hashes;
+
if (fm.oldAPI) {
return;
}
places.show().parent().show();
- dirs = $.map((fm.storage(key) || '').split(','), function(hash) { return hash || null;});
+ dirs = {};
+ dat = $.map((fm.storage(key) || '').split(','), function(hash) { return hash || null;});
+ $.each(dat, function(i, d) {
+ var dir = d.split('#')
+ dirs[dir[0]] = dir[1]? dir[1] : { hash: dir[0], name: dir[0] };
+ });
- if (dirs.length) {
+ hashes = Object.keys(dirs);
+ if (hashes.length) {
root.prepend(spinner);
fm.request({
- data : {cmd : 'info', targets : dirs},
+ data : {cmd : 'info', targets : hashes},
preventDefault : true
})
.done(function(data) {
- dirs = [];
- $.each(data.files, function(i, file) {
- file.mime == 'directory' && add(file);
+ var exists = {};
+ $.each(data.files, function(i, f) {
+ var hash = f.hash;
+ exists[hash] = f;
+ });
+ $.each(dirs, function(h, f) {
+ add(exists[h] || { hash: h, name: f, mime: 'directory', notfound: true });
});
- save();
if (fm.storage('placesState') > 0) {
root.click();
}
@@ -9202,22 +9326,47 @@ $.fn.elfinderplaces = function(fm, opts) {
fm.change(function(e) {
+ var changed = false;
$.each(e.data.changed, function(i, file) {
- if ($.inArray(file.hash, dirs) !== -1) {
- remove(file.hash);
- file.mime == 'directory' && add(file);
+ if (dirs[file.hash]) {
+ if (file.mime !== 'directory') {
+ if (remove(file.hash)) {
+ changed = true;
+ }
+ } else {
+ if (update(file)) {
+ changed = true;
+ }
+ }
}
});
- save();
+ changed && save();
})
- .bind('rm paste', function(e){
- var names = [];
+ .bind('rename', function(e) {
+ var changed = false;
+ if (e.data.removed) {
+ $.each(e.data.removed, function(i, hash) {
+ if (e.data.added[i]) {
+ if (update(e.data.added[i], hash)) {
+ changed = true;
+ }
+ }
+ });
+ }
+ changed && save();
+ })
+ .bind('rm paste', function(e) {
+ var names = [],
+ changed = false;
if (e.data.removed) {
$.each(e.data.removed, function(i, hash) {
var name = remove(hash);
name && names.push(name);
});
}
+ if (names.length) {
+ changed = true;
+ }
if (e.data.added && names.length) {
$.each(e.data.added, function(i, file) {
if ($.inArray(file.name, names) !== 1) {
@@ -9225,27 +9374,43 @@ $.fn.elfinderplaces = function(fm, opts) {
}
});
}
- save();
+ changed && save();
})
.bind('sync', function() {
- if (dirs.length) {
+ var hashes = Object.keys(dirs);
+ if (hashes.length) {
root.prepend(spinner);
fm.request({
- data : {cmd : 'info', targets : dirs},
+ data : {cmd : 'info', targets : hashes},
preventDefault : true
})
.done(function(data) {
+ var exists = {},
+ updated = false,
+ cwd = fm.cwd().hash;
$.each(data.files || [], function(i, file) {
- if ($.inArray(file.hash, dirs) === -1) {
- remove(file.hash);
- }
+ var hash = file.hash;
+ exists[hash] = file;
if (!fm.files().hasOwnProperty(file.hash)) {
// update cache
fm.trigger('tree', {tree: [file]});
}
});
- save();
+ $.each(dirs, function(h, f) {
+ if (!f.notfound != !!exists[h]) {
+ if (f.phash === cwd || (exists[h] && exists[h].mime !== 'directory')) {
+ if (remove(h)) {
+ updated = true;
+ }
+ } else {
+ if (update(exists[h] || { hash: h, name: f.name, mime: 'directory', notfound: true })) {
+ updated = true;
+ }
+ }
+ }
+ });
+ updated && save();
})
.always(function() {
spinner.remove();
@@ -15162,7 +15327,6 @@ elFinder.prototype.commands.rm = function() {
files = this.files(hashes),
cnt = files.length,
cwd = fm.cwd().hash,
- goup = false,
tpl = '',
targets, text, f, fname, size, tmb, descs, dialog;
@@ -15177,12 +15341,6 @@ elFinder.prototype.commands.rm = function() {
if (file.locked) {
return !dfrd.reject(['errLocked', file.name]);
}
- if (file.mime === 'directory') {
- var parents = fm.parents(cwd);
- if (file.hash == cwd || $.inArray(file.hash, parents)) {
- goup = (file.phash && fm.file(file.phash).read)? file.phash : fm.root(file.hash);
- }
- }
});
if (dfrd.state() == 'pending') {
@@ -15240,7 +15398,6 @@ elFinder.prototype.commands.rm = function() {
})
.done(function(data) {
dfrd.done(data);
- goup && fm.exec('open', goup)
})
.always(function() {
fm.unlockfiles({files : targets});
diff --git a/js/elfinder.min.js b/js/elfinder.min.js
index d6c0ceb8d..203e56ee8 100644
--- a/js/elfinder.min.js
+++ b/js/elfinder.min.js
@@ -1,15 +1,15 @@
/*!
* elFinder - file manager for web
- * Version 2.1.5 (2.1-src Nightly: e9fe571) (2016-01-16)
+ * Version 2.1.5 (2.1-src Nightly: 62ee5c1) (2016-01-17)
* http://elfinder.org
*
* Copyright 2009-2016, Studio 42
* Licensed under a 3 clauses BSD license
*/
-!function(e){window.elFinder=function(t,n){var i,a,r,o=this,t=e(t),s=e("
").append(t.contents()),l=t.attr("style"),d=t.attr("id")||"",c="elfinder-"+(d||Math.random().toString().substr(2,7)),u="mousedown."+c,p="keydown."+c,h="keypress."+c,f=!0,m=!0,g="",v={path:"",url:"",tmbUrl:"",disabled:[],separator:"/",archives:[],extract:[],copyOverwrite:!0,uploadOverwrite:!0,uploadMaxSize:0,jpgQuality:100,tmb:!1},y={},b=[],w={},x={},k=[],C=[],T=[],I=new o.command(o),F="auto",M=400,P="./sounds/",A=e(document.createElement("audio")).hide().appendTo("body")[0],S="",z=function(t){var n,i,a={},r={};o.commandMap=t.options.uiCmdMap&&Object.keys(t.options.uiCmdMap).length?t.options.uiCmdMap:{},S!==JSON.stringify(o.commandMap)&&(S=JSON.stringify(o.commandMap),Object.keys(o.commandMap).length&&(i=o.getUI("contextmenu"),i.data("cmdMaps")||i.data("cmdMaps",{}),n=t.cwd?t.cwd.volumeid:null,n&&!i.data("cmdMaps")[n]&&(i.data("cmdMaps")[n]=o.commandMap))),t.init?y={}:(e.each(Object.keys(y),function(t,n){var i="directory"===y[n].mime,s=y[n].phash;o.res("class","navcollapse"),(!i||a[s]||!r[s]&&e("#"+o.navHash2Id(y[n].hash)).is(":hidden")&&e("#"+o.navHash2Id(s)).next(".elfinder-navbar-subtree").children().length>100)&&(i||s===g)&&-1===e.inArray(n,C)?(i&&!a[s]&&(a[s]=!0),delete y[n]):i&&(r[s]=!0)}),e.each(Object.keys(a),function(t,n){var i="elfinder-subtree-loaded "+o.res("class","navexpand");e("#"+o.navHash2Id(n)).removeClass(i).next(".elfinder-navbar-subtree").empty()})),g=t.cwd.hash,D(t.files),y[g]||D([t.cwd]),o.lastDir(g),o.autoSync()},D=function(e){var t,n,i=e.length;for(n=0;i>n;n++)if(t=e[n],t.name&&t.hash&&t.mime){if(!t.phash){var a="volume_"+t.name,r=o.i18n(a);a!=r&&(t.i18=r),t.volumeid&&(t.disabled&&(o.disabledCmds[t.volumeid]=t.disabled),o.tmbUrls[t.volumeid]=o.option("tmbUrl"))}y[t.hash]=t}},O=function(t){var n=t.keyCode,i=!(!t.ctrlKey&&!t.metaKey);f&&(e.each(x,function(e,a){a.type==t.type&&a.keyCode==n&&a.shiftKey==t.shiftKey&&a.ctrlKey==i&&a.altKey==t.altKey&&(t.preventDefault(),t.stopPropagation(),a.callback(t,o),o.debug("shortcut-exec",e+" : "+a.description))}),9!=n||e(t.target).is(":input")||t.preventDefault(),27==n&&o.clipboard().length&&o.clipboard([]))},U=new Date;return this.api=null,this.newAPI=!1,this.oldAPI=!1,this.netDrivers=[],this.OS=-1!==navigator.userAgent.indexOf("Mac")?"mac":-1!==navigator.userAgent.indexOf("Win")?"win":"other",this.UA=function(){var e=!document.uniqueID&&!window.opera&&!window.sidebar&&window.localStorage&&"undefined"==typeof window.orientation;return{ltIE6:"undefined"==typeof window.addEventListener&&"undefined"==typeof document.documentElement.style.maxHeight,ltIE7:"undefined"==typeof window.addEventListener&&"undefined"==typeof document.querySelectorAll,ltIE8:"undefined"==typeof window.addEventListener&&"undefined"==typeof document.getElementsByClassName,IE:document.uniqueID,Firefox:window.sidebar,Opera:window.opera,Webkit:e,Chrome:e&&window.chrome,Safari:e&&!window.chrome,Mobile:"undefined"!=typeof window.orientation,Touch:"undefined"!=typeof window.ontouchstart}}(),this.options=e.extend(!0,{},this._options,n||{}),n.ui&&(this.options.ui=n.ui),n.commands&&(this.options.commands=n.commands),n.uiOptions&&n.uiOptions.toolbar&&(this.options.uiOptions.toolbar=n.uiOptions.toolbar),n.uiOptions&&n.uiOptions.cwd&&n.uiOptions.cwd.listView&&n.uiOptions.cwd.listView.columns&&(this.options.uiOptions.cwd.listView.columns=n.uiOptions.cwd.listView.columns),n.uiOptions&&n.uiOptions.cwd&&n.uiOptions.cwd.listView&&n.uiOptions.cwd.listView.columnsCustomName&&(this.options.uiOptions.cwd.listView.columnsCustomName=n.uiOptions.cwd.listView.columnsCustomName),function(){var t,i=document.createElement("a");i.href=n.url,n.urlUpload&&n.urlUpload!==n.url&&(t=document.createElement("a"),t.href=n.urlUpload),(window.location.host!==i.host||t&&window.location.host!==t.host)&&(e.isPlainObject(o.options.customHeaders)||(o.options.customHeaders={}),e.isPlainObject(o.options.xhrFields)||(o.options.xhrFields={}),o.options.requestType="post",o.options.customHeaders["X-Requested-With"]="XMLHttpRequest",o.options.xhrFields.withCredentials=!0)}(),e.extend(this.options.contextmenu,n.contextmenu),this.requestType=/^(get|post)$/i.test(this.options.requestType)?this.options.requestType.toLowerCase():"get",this.customData=e.isPlainObject(this.options.customData)?this.options.customData:{},this.customHeaders=e.isPlainObject(this.options.customHeaders)?this.options.customHeaders:{},this.xhrFields=e.isPlainObject(this.options.xhrFields)?this.options.xhrFields:{},this.id=d,this.navPrefix="nav"+(elFinder.prototype.uniqueid?elFinder.prototype.uniqueid:"")+"-",this.cwdPrefix=elFinder.prototype.uniqueid?"cwd"+elFinder.prototype.uniqueid+"-":"",++elFinder.prototype.uniqueid,this.uploadURL=n.urlUpload||n.url,this.namespace=c,this.lang=this.i18[this.options.lang]&&this.i18[this.options.lang].messages?this.options.lang:"en",r="en"==this.lang?this.i18.en:e.extend(!0,{},this.i18.en,this.i18[this.lang]),this.direction=r.direction,this.messages=r.messages,this.dateFormat=this.options.dateFormat||r.dateFormat,this.fancyFormat=this.options.fancyDateFormat||r.fancyDateFormat,this.today=new Date(U.getFullYear(),U.getMonth(),U.getDate()).getTime()/1e3,this.yesterday=this.today-86400,a=this.options.UTCDate?"UTC":"",this.getHours="get"+a+"Hours",this.getMinutes="get"+a+"Minutes",this.getSeconds="get"+a+"Seconds",this.getDate="get"+a+"Date",this.getDay="get"+a+"Day",this.getMonth="get"+a+"Month",this.getFullYear="get"+a+"FullYear",this.cssClass="ui-helper-reset ui-helper-clearfix ui-widget ui-widget-content ui-corner-all elfinder elfinder-"+("rtl"==this.direction?"rtl":"ltr")+" "+this.options.cssClass,this.storage=function(){try{return"localStorage"in window&&null!==window.localStorage?o.localStorage:o.cookie}catch(e){return o.cookie}}(),this.viewType=this.storage("view")||this.options.defaultView||"icons",this.sortType=this.storage("sortType")||this.options.sortType||"name",this.sortOrder=this.storage("sortOrder")||this.options.sortOrder||"asc",this.sortStickFolders=this.storage("sortStickFolders"),this.sortStickFolders=null===this.sortStickFolders?!!this.options.sortStickFolders:!!this.sortStickFolders,this.sortRules=e.extend(!0,{},this._sortRules,this.options.sortsRules),e.each(this.sortRules,function(e,t){"function"!=typeof t&&delete o.sortRules[e]}),this.compare=e.proxy(this.compare,this),this.notifyDelay=this.options.notifyDelay>0?parseInt(this.options.notifyDelay):500,this.draggingUiHelper=null,this.draggable={appendTo:"body",addClasses:!0,delay:30,distance:8,revert:!0,refreshPositions:!1,cursor:"crosshair",cursorAt:{left:50,top:47},start:function(t,n){var i,a,r=e.map(n.helper.data("files")||[],function(e){return e||null}),s=!1;for(o.draggingUiHelper=n.helper,i=r.length;i--;)if(a=r[i],y[a].locked){s=!0,n.helper.data("locked",!0);break}!s&&o.trigger("lockfiles",{files:r})},drag:function(t,n){var i=n.helper;i.data("refreshPositions")&&e(this).draggable("instance")&&(i.data("refreshPositions")>0?(e(this).draggable("option",{refreshPositions:!0}),i.data("refreshPositions",-1)):(e(this).draggable("option",{refreshPositions:!1}),i.data("refreshPositions",null)))},stop:function(t,n){var i;e(this).draggable("instance")&&e(this).draggable("option",{refreshPositions:!1}),o.draggingUiHelper=null,o.trigger("focus").trigger("dragstop"),n.helper.data("droped")||(i=e.map(n.helper.data("files")||[],function(e){return e||null}),o.trigger("unlockfiles",{files:i}),o.trigger("selectfiles",{files:i}))},helper:function(t){var n,i,a,r=this.id?e(this):e(this).parents("[id]:first"),s=e('
'),l=function(t){var n,i=t.mime;return n='
',t.tmb&&1!==t.tmb&&(n=e(n).css("background","url('"+o.option("tmbUrl")+t.tmb+"') center center no-repeat").get(0).outerHTML),n};return o.draggingUiHelper&&o.draggingUiHelper.stop(!0,!0),o.trigger("dragstart",{target:r[0],originalEvent:t}),n=r.hasClass(o.res("class","cwdfile"))?o.selected():[o.navId2Hash(r.attr("id"))],s.append(l(y[n[0]])).data("files",n).data("locked",!1).data("droped",!1).data("namespace",o.namespace).data("dropover",0),(i=n.length)>1&&s.append(l(y[n[i-1]])+''+i+" "),e(document).on(p+" keyup."+c,function(e){var t=e.shiftKey||e.ctrlKey||e.metaKey;a!==t&&(a=t,s.is(":visible")&&s.data("dropover")&&!s.data("droped")&&(s.toggleClass("elfinder-drag-helper-plus",s.data("locked")?!0:a),o.trigger(a?"unlockfiles":"lockfiles",{files:n,helper:s})))}),s}},this.droppable={greedy:!0,tolerance:"pointer",accept:".elfinder-cwd-file-wrapper,.elfinder-navbar-dir,.elfinder-cwd-file,.elfinder-cwd-filename",hoverClass:this.res("class","adroppable"),autoDisable:!0,drop:function(t,n){var i,a,r,s=e(this),l=e.map(n.helper.data("files")||[],function(e){return e||null}),d=[],c=[],u=[],p=n.helper.hasClass("elfinder-drag-helper-plus"),h="class";if(n.helper.data("namespace")!==o.namespace)return!1;for(a=s.hasClass(o.res(h,"cwdfile"))?o.cwdId2Hash(s.attr("id")):s.hasClass(o.res(h,"navdir"))?o.navId2Hash(s.attr("id")):g,i=l.length;i--;)r=l[i],r!=a&&y[r].phash!=a?d.push(r):(p&&r!==a&&y[a].write?c:u).push(r);return u.length?!1:(n.helper.data("droped",!0),c.length&&(n.helper.hide(),o.exec("duplicate",c)),d.length&&(n.helper.hide(),o.clipboard(d,!p),o.exec("paste",a,void 0,a).always(function(){o.trigger("unlockfiles",{files:l})}),o.trigger("drop",{files:l})),void 0)}},this.enabled=function(){return t.is(":visible")&&f},this.visible=function(){return t.is(":visible")},this.root=function(e){for(var t,n=y[e||g];n&&n.phash;)n=y[n.phash];if(n)return n.hash;for(;t in y&&y.hasOwnProperty(t);)if(n=y[t],!n.phash&&"directory"==!n.mime&&n.read)return n.hash;return""},this.cwd=function(){return y[g]||{}},this.option=function(e){return v[e]||""},this.file=function(e){return y[e]},this.files=function(){return e.extend(!0,{},y)},this.parents=function(e){for(var t,n=[];t=this.file(e);)n.unshift(t.hash),e=t.phash;return n},this.path2array=function(e,t){for(var n,i=[];e&&(n=y[e])&&n.hash;)i.unshift(t&&n.i18?n.i18:n.name),e=n.phash;return i},this.path=function(e,t){return y[e]&&y[e].path?y[e].path:this.path2array(e,t).join(v.separator)},this.url=function(t){var n=y[t];if(!n||!n.read)return"";if("1"==n.url&&this.request({data:{cmd:"url",target:t},preventFail:!0,options:{async:!1}}).done(function(e){n.url=e.url||""}).fail(function(){n.url=""}),n.url)return n.url;if(v.url)return v.url+e.map(this.path2array(t),function(e){return encodeURIComponent(e)}).slice(1).join("/");var i=e.extend({},this.customData,{cmd:"file",target:n.hash});return this.oldAPI&&(i.cmd="open",i.current=n.phash),this.options.url+(-1===this.options.url.indexOf("?")?"?":"&")+e.param(i,!0)},this.convAbsUrl=function(e){if(e.match(/^http/i))return e;var t,n=window.location.protocol+"//"+window.location.host,i=/[^\/]+\/\.\.\//;for(t="/"===e.substr(0,1)?n+e:n+window.location.pathname+e,t=t.replace("/./","/");i.test(t);)t=t.replace(i,"");return t},this.openUrl=function(t,n){var i=y[t],a="";return i&&i.read?!n&&i.url&&1!=i.url?i.url:(a=this.options.url,a=a+(-1===a.indexOf("?")?"?":"&")+(this.oldAPI?"cmd=open¤t="+i.phash:"cmd=file")+"&target="+i.hash,n&&(a+="&download=1"),e.each(this.options.customData,function(e,t){a+="&"+encodeURIComponent(e)+"="+encodeURIComponent(t)}),a):""},this.tmb=function(t){var n=y[t],i=function(t){var n=v.tmbUrl;return e.each(o.tmbUrls,function(e){return 0===t.indexOf(e)?(n=o.tmbUrls[e],!1):void 0}),n},a=o.tmbUrls._search&&0!==t.indexOf(o.cwd().volumeid)?i(t):v.tmbUrl,r=n&&n.tmb&&1!=n.tmb?a+n.tmb:"";return r},this.selected=function(){return b.slice(0)},this.selectedFiles=function(){return e.map(b,function(t){return y[t]?e.extend({},y[t]):null})},this.fileByName=function(e,t){var n;for(n in y)if(y.hasOwnProperty(n)&&y[n].phash==t&&y[n].name==e)return y[n]},this.validResponse=function(e,t){return t.error||this.rules[this.rules[e]?e:"defaults"](t)},this.returnBytes=function(e){var t;return isNaN(e)?(e=e.replace(/b$/i,""),t=e.charAt(e.length-1).toLowerCase(),e=e.replace(/[tgmk]$/i,""),"t"==t?e=1024*1024*1024*1024*e:"g"==t?e=1024*1024*1024*e:"m"==t?e=1024*1024*e:"k"==t&&(e=1024*e),e=isNaN(e)?0:parseInt(e)):(e=parseInt(e),1>e&&(e=0)),e},this.request=function(t){var n,i,a,r=this,o=this.options,s=e.Deferred(),l=e.extend({},o.customData,{mimes:o.onlyMimes},t.data||t),d=l.cmd,c=!(t.preventDefault||t.preventFail),u=!(t.preventDefault||t.preventDone),p=e.extend({},t.notify),h=!!t.raw,f=t.syncOnFail,t=e.extend({url:o.url,async:!0,type:this.requestType,dataType:"json",cache:!1,data:l,headers:this.customHeaders,xhrFields:this.xhrFields},t.options||{}),m=function(t){t.warning&&r.error(t.warning),"open"==d&&z(e.extend(!0,{},t)),t.removed&&t.removed.length&&r.remove(t),t.added&&t.added.length&&r.add(t),t.changed&&t.changed.length&&r.change(t),r.trigger(d,t),t.sync&&r.sync()},g=function(e,t){var n;switch(t){case"abort":n=e.quiet?"":["errConnect","errAbort"];break;case"timeout":n=["errConnect","errTimeout"];break;case"parsererror":n=["errResponse","errDataNotJSON"];break;default:n=403==e.status?["errConnect","errAccess"]:404==e.status?["errConnect","errNotFound"]:"errConnect"}s.reject(n,e,t)},y=function(t){return h?s.resolve(t):t?e.isPlainObject(t)?t.error?s.reject(t.error,i):r.validResponse(d,t)?(t=r.normalize(t),r.api||(r.api=t.api||1,r.newAPI=r.api>=2,r.oldAPI=!r.newAPI),t.options&&(v=e.extend({},v,t.options)),t.netDrivers&&(r.netDrivers=t.netDrivers),"open"==d&&l.init&&(r.uplMaxSize=r.returnBytes(t.uplMaxSize),r.uplMaxFile=t.uplMaxFile?parseInt(t.uplMaxFile):20),s.resolve(t),t.debug&&r.debug("backend-debug",t.debug),void 0):s.reject("errResponse",i):s.reject(["errResponse","errDataNotJSON"],i):s.reject(["errResponse","errDataEmpty"],i)},b=function(e){if("autosync"==e.type){if("stop"!=e.data.action)return}else if(!e.data.added||!e.data.added.length)return;"pending"==i.state()&&(i.quiet=!0,i.abort(),"unload"!=e.type&&"destroy"!=e.type&&r.autoSync())};if(u&&s.done(m),s.fail(function(e){e&&(c?r.error(e):r.debug("error",r.i18n(e)))}),!d)return s.reject("errCmdReq");if(f&&s.fail(function(e){e&&r.sync()}),p.type&&p.cnt&&(n=setTimeout(function(){r.notify(p),s.always(function(){p.cnt=-(parseInt(p.cnt)||0),r.notify(p)})},r.notifyDelay),s.always(function(){clearTimeout(n)})),"open"==d)for(;a=T.pop();)"pending"==a.state()&&(a.quiet=!0,a.abort());return delete t.preventFail,i=this.transport.send(t).fail(g).done(y),("open"==d||"info"==d&&l.compare)&&(T.unshift(i),r.bind(r.cmdsToAdd+" autosync",b),s.always(function(){var t=e.inArray(i,T);r.unbind(r.cmdsToAdd+" autosync",b),-1!==t&&T.splice(t,1)})),r.bind("unload destroy",b),s.always(function(){r.unbind("unload destroy",b)}),s},this.diff=function(t,n){var i={},a=[],r=[],o=[],s=function(e){for(var t=o.length;t--;)if(o[t].hash==e)return!0};return e.each(t,function(e,t){i[t.hash]=t}),e.each(y,function(e,t){n&&t.phash!==n||!i[e]&&r.push(e)}),e.each(i,function(t,n){var i=y[t];i?e.each(n,function(e){return n[e]!=i[e]?(o.push(n),!1):void 0}):a.push(n)}),e.each(r,function(t,n){var a=y[n],l=a.phash;l&&"directory"==a.mime&&-1===e.inArray(l,r)&&i[l]&&!s(l)&&o.push(i[l])}),{added:a,removed:r,changed:o}},this.sync=function(t,n){this.autoSync("stop");var i=this,a=function(){var i="",a=0,r=0;return t&&n&&e.each(y,function(e,n){n.phash&&n.phash===t&&(++a,r=Math.max(r,n.ts)),i=a+":"+r}),i},r=a(),o=e.Deferred().done(function(){i.trigger("sync")}),s={data:{cmd:"open",reload:1,target:g,tree:!t&&this.ui.tree?1:0,compare:r},preventDefault:!0},l={data:{cmd:"parents",target:g},preventDefault:!0};return e.when(this.request(s),t?null:this.request(l)).fail(function(e){o.reject(e),e&&i.request({data:{cmd:"open",target:i.lastDir("")||i.root(),tree:1,init:1},notify:{type:"open",cnt:1,hideCnt:!0}})}).done(function(e,n){if(e.cwd.compare&&r===e.cwd.compare)return o.reject();var a=i.diff(e.files.concat(n&&n.tree?n.tree:[]),t);return a.added.push(e.cwd),a.removed.length&&i.remove(a),a.added.length&&i.add(a),a.changed.length&&i.change(a),o.resolve(a)}).always(function(){i.autoSync()}),o},this.upload=function(e){return this.transport.upload(e,this)},this.bind=function(e,t){var n;if("function"==typeof t)for(e=(""+e).toLowerCase().split(/\s+/),n=0;n-1&&n.splice(i,1),t=null,this},this.trigger=function(t,n){var i,a,r,t=t.toLowerCase(),o="open"===t,s=w[t]||[];if(this.debug("event-"+t,n),o&&(r=JSON.stringify(n)),s.length)for(t=e.Event(t),a=s.length,i=0;a>i;i++){s[i].length&&(t.data=o?JSON.parse(r):e.extend(!0,{},n));try{if(s[i](t,this)===!1||t.isDefaultPrevented()){this.debug("event-stoped",t.type);break}}catch(l){window.console&&window.console.log&&window.console.log(l)}}return this},this.shortcut=function(t){var n,i,a,r,o;if(this.options.allowShortcuts&&t.pattern&&e.isFunction(t.callback))for(n=t.pattern.toUpperCase().split(/\s+/),r=0;r0?a:a.charCodeAt(0):e.ui.keyCode[a],a&&!x[i]&&(x[i]={keyCode:a,altKey:-1!=e.inArray("ALT",o),ctrlKey:-1!=e.inArray("CTRL",o),shiftKey:-1!=e.inArray("SHIFT",o),type:t.type||"keydown",callback:t.callback,description:t.description,pattern:i});return this},this.shortcuts=function(){var t=[];return e.each(x,function(e,n){t.push([n.pattern,o.i18n(n.description)])}),t},this.clipboard=function(t,n){var i=function(){return e.map(k,function(e){return e.hash})};return void 0!==t&&(k.length&&this.trigger("unlockfiles",{files:i()}),C=[],k=e.map(t||[],function(e){var t=y[e];return t?(C.push(e),{hash:e,phash:t.phash,name:t.name,mime:t.mime,read:t.read,locked:t.locked,cut:!!n}):null}),this.trigger("changeclipboard",{clipboard:k.slice(0,k.length)}),n&&this.trigger("lockfiles",{files:i()})),k.slice(0,k.length)},this.isCommandEnabled=function(t,n){var i;return n&&o.root(n)!==g&&e.each(o.disabledCmds,function(e,t){return 0==n.indexOf(e,0)?(i=t,!1):void 0}),i||(i=v.disabled),this._commands[t]?-1===e.inArray(t,i):!1},this.exec=function(t,n,i,a){return"open"===t&&this.autoSync("stop"),this._commands[t]&&this.isCommandEnabled(t,a)?this._commands[t].exec(n,i):e.Deferred().reject("No such command")},this.dialog=function(n,i){var a=e("
").append(n).appendTo(t).elfinderdialog(i);return this.bind("resize",function(){a.elfinderdialog("posInit")}),a},this.getUI=function(e){return this.ui[e]||t},this.command=function(e){return void 0===e?this._commands:this._commands[e]},this.resize=function(e,n){t.css("width",e).height(n).trigger("resize"),this.trigger("resize",{width:t.width(),height:t.height()})},this.restoreSize=function(){this.resize(F,M)},this.show=function(){t.show(),this.enable().trigger("show")},this.hide=function(){this.disable().trigger("hide"),t.hide()},this.destroy=function(){t&&t[0].elfinder&&(this.autoSync("stop"),this.trigger("destroy").disable(),w={},x={},e(document).add(t).off("."+this.namespace),o.trigger=function(){},t.children().remove(),t.append(s.contents()).removeClass(this.cssClass).attr("style",l),t[0].elfinder=null)},this.autoSync=function(e){var t;if(o.options.sync>=1e3){if(i&&(clearTimeout(i),i=null,o.trigger("autosync",{action:"stop"})),e||!o.options.syncStart)return;t=function(e){var n;v.syncMinMs&&(e||i)&&(e&&o.trigger("autosync",{action:"start"}),n=Math.max(o.options.sync,v.syncMinMs),i&&clearTimeout(i),i=setTimeout(function(){var e=!0,a=g;v.syncChkAsTs?o.request({data:{cmd:"info",targets:[a],compare:y[a].ts,reload:1},preventDefault:!0}).done(function(n){var i;e=!0,n.compare&&(i=n.compare,y[a]&&i==y[a].ts&&(e=!1)),e?o.sync(a).always(function(){i&&(y[a].ts=i),t()}):t()}).fail(function(e){e&&"errConnect"!=e?o.error(e):i=setTimeout(function(){t()},n)}):o.sync(g,!0).always(function(){t()})},n))},t(!0)}},e.fn.selectable&&e.fn.draggable&&e.fn.droppable?t.length?this.options.url?(e.extend(e.ui.keyCode,{F1:112,F2:113,F3:114,F4:115,F5:116,F6:117,F7:118,F8:119,F9:120}),this.dragUpload=!1,this.xhrUpload=("undefined"!=typeof XMLHttpRequestUpload||"undefined"!=typeof XMLHttpRequestEventTarget)&&"undefined"!=typeof File&&"undefined"!=typeof FormData,this.transport={},"object"==typeof this.options.transport&&(this.transport=this.options.transport,"function"==typeof this.transport.init&&this.transport.init(this)),"function"!=typeof this.transport.send&&(this.transport.send=function(t){return e.ajax(t)}),"iframe"==this.transport.upload?this.transport.upload=e.proxy(this.uploads.iframe,this):"function"==typeof this.transport.upload?this.dragUpload=!!this.options.dragUploadAllow:this.xhrUpload&&this.options.dragUploadAllow?(this.transport.upload=e.proxy(this.uploads.xhr,this),this.dragUpload=!0):this.transport.upload=e.proxy(this.uploads.iframe,this),this.error=function(){var e=arguments[0];return 1==arguments.length&&"function"==typeof e?o.bind("error",e):o.trigger("error",{error:e})},e.each(["enable","disable","load","open","reload","select","add","remove","change","dblclick","getfile","lockfiles","unlockfiles","selectfiles","unselectfiles","dragstart","dragstop","search","searchend","viewchange"],function(t,n){o[n]=function(){var t=arguments[0];return 1==arguments.length&&"function"==typeof t?o.bind(n,t):o.trigger(n,e.isPlainObject(t)?t:{})}}),this.enable(function(){!f&&o.visible()&&o.ui.overlay.is(":hidden")&&(f=!0,document.activeElement&&document.activeElement.blur(),t.removeClass("elfinder-disabled"))}).disable(function(){m=f,f=!1,t.addClass("elfinder-disabled")}).open(function(){b=[]}).select(function(t){b=e.map(t.data.selected||t.data.value||[],function(e){return y[e]?e:null})}).error(function(t){var n={cssClass:"elfinder-dialog-error",title:o.i18n(o.i18n("error")),resizable:!1,destroyOnClose:!0,buttons:{}};n.buttons[o.i18n(o.i18n("btnClose"))]=function(){e(this).elfinderdialog("close")},o.dialog(' '+o.i18n(t.data.error),n)}).bind("tree parents",function(e){D(e.data.tree||[])}).bind("tmb",function(t){e.each(t.data.images||[],function(e,t){y[e]&&(y[e].tmb=t)})}).add(function(e){D(e.data.added||[])}).change(function(t){e.each(t.data.changed||[],function(t,n){var i=n.hash;y[i]&&e.each(["locked","hidden","width","height"],function(e,t){y[i][t]&&!n[t]&&delete y[i][t]}),y[i]=y[i]?e.extend(y[i],n):n})}).remove(function(t){for(var n=t.data.removed||[],i=n.length,a=function(t){var n=y[t];n&&("directory"==n.mime&&n.dirs&&e.each(y,function(e,n){n.phash==t&&a(e)}),delete y[t])};i--;)a(n[i])}).bind("search",function(e){D(e.data.files),o.tmbUrls._search=!0}).bind("searchend",function(){o.tmbUrls._search=!1}).bind("rm",function(){var t=A.canPlayType&&A.canPlayType('audio/wav; codecs="1"');t&&""!=t&&"no"!=t&&e(A).html('')[0].play()}),e.each(this.options.handlers,function(e,t){o.bind(e,t)}),this.history=new this.history(this),"function"==typeof this.options.getFileCallback&&this.commands.getfile&&(this.bind("dblclick",function(e){e.preventDefault(),o.exec("getfile").fail(function(){o.exec("open")})}),this.shortcut({pattern:"enter",description:this.i18n("cmdgetfile"),callback:function(){o.exec("getfile").fail(function(){o.exec("mac"==o.OS?"rename":"open")})}}).shortcut({pattern:"ctrl+enter",description:this.i18n("mac"==this.OS?"cmdrename":"cmdopen"),callback:function(){o.exec("mac"==o.OS?"rename":"open")}})),this._commands={},e.isArray(this.options.commands)||(this.options.commands=[]),e.each(["open","reload","back","forward","up","home","info","quicklook","getfile","help"],function(t,n){-1===e.inArray(n,o.options.commands)&&o.options.commands.push(n)}),e.each(this.options.commands,function(t,n){var i=o.commands[n];e.isFunction(i)&&!o._commands[n]&&(i.prototype=I,o._commands[n]=new i,o._commands[n].setup(n,o.options.commandsOptions[n]||{}))}),this.commandMap={},this.disabledCmds={},this.tmbUrls={},t.addClass(this.cssClass).on(u,function(){!f&&o.enable()}),this.ui={workzone:e("
").appendTo(t).elfinderworkzone(this),navbar:e("
").appendTo(t).elfindernavbar(this,this.options.uiOptions.navbar||{}),contextmenu:e("
").appendTo(t).elfindercontextmenu(this),overlay:e("
").appendTo(t).elfinderoverlay({show:function(){o.disable()},hide:function(){m&&o.enable()}}),cwd:e("
").appendTo(t).elfindercwd(this,this.options.uiOptions.cwd||{}),notify:this.dialog("",{cssClass:"elfinder-dialog-notify",position:this.options.notifyDialog.position,resizable:!1,autoOpen:!1,title:" ",width:parseInt(this.options.notifyDialog.width)}),statusbar:e('').hide().appendTo(t)},e.each(this.options.ui||[],function(n,i){var a="elfinder"+i,r=o.options.uiOptions[i]||{};!o.ui[i]&&e.fn[a]&&(o.ui[i]=e("<"+(r.tag||"div")+"/>").appendTo(t)[a](o,r))}),t[0].elfinder=this,this.options.resizable&&!this.UA.Touch&&e.fn.resizable&&t.resizable({handles:"se",minWidth:300,minHeight:200}),this.options.width&&(F=this.options.width),this.options.height&&(M=parseInt(this.options.height)),this.options.soundPath&&(P=this.options.soundPath.replace(/\/+$/,"")+"/"),o.resize(F,M),e(document).on("click."+this.namespace,function(n){f&&!e(n.target).closest(t).length&&o.disable()}).on(p+" "+h,O),o.options.useBrowserHistory&&e(window).on("popstate",function(t){var n=t.originalEvent.state&&t.originalEvent.state.thash;n&&!e.isEmptyObject(o.files())&&o.request({data:{cmd:"open",target:n,onhistory:1},notify:{type:"open",cnt:1,hideCnt:!0},syncOnFail:!0})}),this.trigger("init").request({data:{cmd:"open",target:o.startDir(),init:1,tree:this.ui.tree?1:0},preventDone:!0,notify:{type:"open",cnt:1,hideCnt:!0},freeze:!0}).fail(function(){o.trigger("fail").disable().lastDir(""),w={},x={},e(document).add(t).off("."+this.namespace),o.trigger=function(){}}).done(function(t){o.load().debug("api",o.api),t=e.extend(!0,{},t),z(t),o.trigger("open",t)}),this.one("load",function(){t.trigger("resize")}),function(){var n;e(window).on("resize",function(){n&&clearTimeout(n),n=setTimeout(function(){o.trigger("resize",{width:t.width(),height:t.height()})},200)}).on("beforeunload",function(){return o.ui.notify.children().length?o.i18n("ntfsmth"):(o.trigger("unload"),void 0)})}(),e(window).on("message",function(e){var t,n,i=e.originalEvent||null;if(i&&0===o.uploadURL.indexOf(i.origin))try{t=JSON.parse(i.data),n=t.data||null,n&&(n.error?o.error(n.error):(n.warning&&o.error(n.warning),n.removed&&n.removed.length&&o.remove(n),n.added&&n.added.length&&o.add(n),n.changed&&n.changed.length&&o.change(n),t.bind&&o.trigger(t.bind,n),n.sync&&o.sync()))}catch(e){o.sync()}}),o.dragUpload&&(t[0].addEventListener("dragenter",function(e){"TEXTAREA"!==e.target.nodeName&&"INPUT"!==e.target.nodeName&&(e.preventDefault(),e.stopPropagation())},!1),t[0].addEventListener("dragleave",function(e){"TEXTAREA"!==e.target.nodeName&&"INPUT"!==e.target.nodeName&&(e.preventDefault(),e.stopPropagation())},!1),t[0].addEventListener("dragover",function(e){"TEXTAREA"!==e.target.nodeName&&"INPUT"!==e.target.nodeName&&(e.preventDefault(),e.stopPropagation(),e.dataTransfer.dropEffect="none")},!1),t[0].addEventListener("drop",function(e){"TEXTAREA"!==e.target.nodeName&&"INPUT"!==e.target.nodeName&&(e.stopPropagation(),e.preventDefault())},!1),function(){var n="native-drag-enter",i="native-drag-disable",a="class",r=o.res(a,"navdir"),s=(o.res(a,"droppable"),o.res(a,"navcollapse")),l=o.res(a,"navexpand"),c=o.res(a,"adroppable"),u=o.res(a,"navarrow"),p=o.res(a,"adroppable");t.on("dragenter",".native-droppable",function(t){if(t.originalEvent.dataTransfer){var a,d=e(t.currentTarget),h=t.currentTarget.id||null,f=null;if(h)!d.data(n)&&d.hasClass(r)&&d.is("."+s+":not(."+l+")")&&setTimeout(function(){d.is("."+s+"."+c)&&d.children("."+u).click()},500);else{f=o.cwd(),d.data(i,!1);try{e.each(t.originalEvent.dataTransfer.types,function(e,t){"elfinderfrom:"===t.substr(0,13)&&(a=t.substr(13).toLowerCase())})}catch(t){}}f&&(!f.write||a&&a===(window.location.href+f.hash).toLowerCase())?d.data(i,!0):(t.preventDefault(),t.stopPropagation(),d.data(n,!0),d.addClass(p))}}).on("dragleave",".native-droppable",function(t){if(t.originalEvent.dataTransfer){var i=e(t.currentTarget);t.preventDefault(),t.stopPropagation(),i.data(n)?i.data(n,!1):i.removeClass(p)}}).on("dragover",".native-droppable",function(t){if(t.originalEvent.dataTransfer){var a=e(t.currentTarget);t.preventDefault(),t.stopPropagation(),t.originalEvent.dataTransfer.dropEffect=a.data(i)?"none":"copy",a.data(n,!1)}}).on("drop",".native-droppable",function(t){if(t.originalEvent.dataTransfer){var n=e(t.currentTarget);t.preventDefault(),t.stopPropagation(),n.removeClass(p),d=t.currentTarget.id?n.hasClass(r)?o.navId2Hash(t.currentTarget.id):o.cwdId2Hash(t.currentTarget.id):o.cwd().hash,t.originalEvent._target=d,o.directUploadTarget=d,o.exec("upload",{dropEvt:t.originalEvent,target:d}),o.directUploadTarget=null}})}()),void 0):alert(this.i18n("errURL")):alert(this.i18n("errNode")):alert(this.i18n("errJqui"))},elFinder.prototype={uniqueid:0,res:function(e,t){return this.resources[e]&&this.resources[e][t]},i18:{en:{translator:"",language:"English",direction:"ltr",dateFormat:"d.m.Y H:i",fancyDateFormat:"$1 H:i",messages:{}},months:["January","February","March","April","May","June","July","August","September","October","November","December"],monthsShort:["msJan","msFeb","msMar","msApr","msMay","msJun","msJul","msAug","msSep","msOct","msNov","msDec"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],daysShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"]},kinds:{unknown:"Unknown",directory:"Folder",symlink:"Alias","symlink-broken":"AliasBroken","application/x-empty":"TextPlain","application/postscript":"Postscript","application/vnd.ms-office":"MsOffice","application/msword":"MsWord","application/vnd.ms-word":"MsWord","application/vnd.openxmlformats-officedocument.wordprocessingml.document":"MsWord","application/vnd.ms-word.document.macroEnabled.12":"MsWord","application/vnd.openxmlformats-officedocument.wordprocessingml.template":"MsWord","application/vnd.ms-word.template.macroEnabled.12":"MsWord","application/vnd.ms-excel":"MsExcel","application/vnd.openxmlformats-officedocument.spreadsheetml.sheet":"MsExcel","application/vnd.ms-excel.sheet.macroEnabled.12":"MsExcel","application/vnd.openxmlformats-officedocument.spreadsheetml.template":"MsExcel","application/vnd.ms-excel.template.macroEnabled.12":"MsExcel","application/vnd.ms-excel.sheet.binary.macroEnabled.12":"MsExcel","application/vnd.ms-excel.addin.macroEnabled.12":"MsExcel","application/vnd.ms-powerpoint":"MsPP","application/vnd.openxmlformats-officedocument.presentationml.presentation":"MsPP","application/vnd.ms-powerpoint.presentation.macroEnabled.12":"MsPP","application/vnd.openxmlformats-officedocument.presentationml.slideshow":"MsPP","application/vnd.ms-powerpoint.slideshow.macroEnabled.12":"MsPP","application/vnd.openxmlformats-officedocument.presentationml.template":"MsPP","application/vnd.ms-powerpoint.template.macroEnabled.12":"MsPP","application/vnd.ms-powerpoint.addin.macroEnabled.12":"MsPP","application/vnd.openxmlformats-officedocument.presentationml.slide":"MsPP","application/vnd.ms-powerpoint.slide.macroEnabled.12":"MsPP","application/pdf":"PDF","application/xml":"XML","application/vnd.oasis.opendocument.text":"OO","application/vnd.oasis.opendocument.text-template":"OO","application/vnd.oasis.opendocument.text-web":"OO","application/vnd.oasis.opendocument.text-master":"OO","application/vnd.oasis.opendocument.graphics":"OO","application/vnd.oasis.opendocument.graphics-template":"OO","application/vnd.oasis.opendocument.presentation":"OO","application/vnd.oasis.opendocument.presentation-template":"OO","application/vnd.oasis.opendocument.spreadsheet":"OO","application/vnd.oasis.opendocument.spreadsheet-template":"OO","application/vnd.oasis.opendocument.chart":"OO","application/vnd.oasis.opendocument.formula":"OO","application/vnd.oasis.opendocument.database":"OO","application/vnd.oasis.opendocument.image":"OO","application/vnd.openofficeorg.extension":"OO","application/x-shockwave-flash":"AppFlash","application/flash-video":"Flash video","application/x-bittorrent":"Torrent","application/javascript":"JS","application/rtf":"RTF","application/rtfd":"RTF","application/x-font-ttf":"TTF","application/x-font-otf":"OTF","application/x-rpm":"RPM","application/x-web-config":"TextPlain","application/xhtml+xml":"HTML","application/docbook+xml":"DOCBOOK","application/x-awk":"AWK","application/x-gzip":"GZIP","application/x-bzip2":"BZIP","application/x-xz":"XZ","application/zip":"ZIP","application/x-zip":"ZIP","application/x-rar":"RAR","application/x-tar":"TAR","application/x-7z-compressed":"7z","application/x-jar":"JAR","text/plain":"TextPlain","text/x-php":"PHP","text/html":"HTML","text/javascript":"JS","text/css":"CSS","text/rtf":"RTF","text/rtfd":"RTF","text/x-c":"C","text/x-csrc":"C","text/x-chdr":"CHeader","text/x-c++":"CPP","text/x-c++src":"CPP","text/x-c++hdr":"CPPHeader","text/x-shellscript":"Shell","application/x-csh":"Shell","text/x-python":"Python","text/x-java":"Java","text/x-java-source":"Java","text/x-ruby":"Ruby","text/x-perl":"Perl","text/x-sql":"SQL","text/xml":"XML","text/x-comma-separated-values":"CSV","text/x-markdown":"Markdown","image/x-ms-bmp":"BMP","image/jpeg":"JPEG","image/gif":"GIF","image/png":"PNG","image/tiff":"TIFF","image/x-targa":"TGA","image/vnd.adobe.photoshop":"PSD","image/xbm":"XBITMAP","image/pxm":"PXM","audio/mpeg":"AudioMPEG","audio/midi":"AudioMIDI","audio/ogg":"AudioOGG","audio/mp4":"AudioMPEG4","audio/x-m4a":"AudioMPEG4","audio/wav":"AudioWAV","audio/x-mp3-playlist":"AudioPlaylist","video/x-dv":"VideoDV","video/mp4":"VideoMPEG4","video/mpeg":"VideoMPEG","video/x-msvideo":"VideoAVI","video/quicktime":"VideoMOV","video/x-ms-wmv":"VideoWM","video/x-flv":"VideoFlash","video/x-matroska":"VideoMKV","video/ogg":"VideoOGG"},rules:{defaults:function(t){return!t||t.added&&!e.isArray(t.added)||t.removed&&!e.isArray(t.removed)||t.changed&&!e.isArray(t.changed)?!1:!0
-},open:function(t){return t&&t.cwd&&t.files&&e.isPlainObject(t.cwd)&&e.isArray(t.files)},tree:function(t){return t&&t.tree&&e.isArray(t.tree)},parents:function(t){return t&&t.tree&&e.isArray(t.tree)},tmb:function(t){return t&&t.images&&(e.isPlainObject(t.images)||e.isArray(t.images))},upload:function(t){return t&&(e.isPlainObject(t.added)||e.isArray(t.added))},search:function(t){return t&&t.files&&e.isArray(t.files)}},commands:{},cmdsToAdd:"archive duplicate extract mkdir mkfile paste rm upload",parseUploadData:function(t){var n;if(!e.trim(t))return{error:["errResponse","errDataEmpty"]};try{n=e.parseJSON(t)}catch(i){return{error:["errResponse","errDataNotJSON"]}}return this.validResponse("upload",n)?(n=this.normalize(n),n.removed=e.merge(n.removed||[],e.map(n.added||[],function(e){return e.hash})),n):{error:["errResponse"]}},iframeCnt:0,uploads:{xhrUploading:!1,checkExists:function(t,n,i){var a,r,o=e.Deferred(),s=function(){for(var e=t.length;--e>-1;)t[e]._remove=!0},l=function(){var l=[],d=[],c=[],u=function(e){var n=e==c.length-1,a={title:i.i18n("cmdupload"),text:["errExists",c[e].name,"confirmRepl"],all:!n,accept:{label:"btnYes",callback:function(t){n||t?o.resolve(l):u(++e)}},reject:{label:"btnNo",callback:function(i){var a;if(i)for(a=c.length;e0&&delete a.reject,i.confirm(a)};a=e.map(t,function(e,t){return e.name?{i:t,name:e.name}:null}),r=e.map(a,function(e){return e.name}),i.request({data:{cmd:"upload",target:n,name:r,FILES:""},notify:{type:"preupload",cnt:1,hideCnt:!0},preventFail:!0}).done(function(t){t&&(t.error?s():(t.name&&(d=t.name||[],c=e.map(a,function(t){return-1!==e.inArray(t.name,d)?t:null})),t.list&&n==i.cwd().hash&&t.list.length!=e.map(i.files(),function(e){return e.phash==n?e.name:null}).length&&i.sync())),c.length>0?u(0):o.resolve([])}).fail(function(e){s(),o.resolve([]),e&&i.error(e)})};return i.option("uploadOverwrite")&&"object"==typeof t[0]?(l(),o):o.resolve([])},checkFile:function(t,n,i){if(t.checked||"files"==t.type)return t.files;if("data"==t.type){var a,r=e.Deferred(),o=[],s=[],l=[],d=[],c=0,u=function(t){var i=function(e){return Array.prototype.slice.call(e||[])},a=function(t){var n=e.Deferred();return"undefined"==typeof t?n.reject("empty"):t.isFile?t.file(function(e){n.resolve(e)},function(){n.reject()}):n.reject("dirctory"),n.promise()};t.readEntries(function(e){if(e.length)d=d.concat(i(e)),u(t);else{var r=d.length-1,p=function(e){a(d[e]).done(function(t){"win"==n.OS&&t.name.match(/^(?:desktop\.ini|thumbs\.db)$/i)||"mac"==n.OS&&t.name.match(/^\.ds_store$/i)||(s.push(d[e].fullPath),o.push(t))}).fail(function(t){"dirctory"==t&&l.push(d[e])}).always(function(){c--,r>e&&(c++,p(++e))})};c++,p(0),c--}})},p=function(e,t){var n,i;d=[];for(var a=e.length,r=0;a>r;r++)i=t?e[r]:e[r].getAsEntry?e[r].getAsEntry():e[r].webkitGetAsEntry(),i&&(i.isFile?(c++,i.file(function(e){s.push(""),o.push(e),c--})):i.isDirectory&&(c>0?l.push(i):(c=0,n=i.createReader(),c++,u(n))))};return a=e.map(t.files.items,function(e){return e.getAsEntry?e.getAsEntry():e.webkitGetAsEntry()}),a.length>0?(n.uploads.checkExists(a,i,n).done(function(t){var d,u=[];n.option("uploadOverwrite")&&(a=e.map(a,function(a){var r,o,s,l;return a.isDirectory&&(r=e.inArray(a.name,t),-1!==r&&(t.splice(r,1),o=n.uniqueName(a.name+n.options.backupSuffix,null,""),s=n.fileByName(a.name,i),n.lockfiles({files:[s.hash]}),l=n.request({data:{cmd:"rename",target:s.hash,name:o},notify:{type:"rename",cnt:1}}).fail(function(){a._remove=!0,n.sync()}).always(function(){n.unlockfiles({files:[s.hash]})}),u.push(l))),a._remove?null:a})),e.when.apply(e,u).done(function(){a.length>0?(d=setTimeout(function(){n.notify({type:"readdir",cnt:1,hideCnt:!0})},n.options.notifyDelay),p(a,!0),setTimeout(function e(){c>0?setTimeout(e,10):l.length>0?(p([l.shift()],!0),setTimeout(e,10)):(d&&clearTimeout(d),n.notify({type:"readdir",cnt:-1}),r.resolve([o,s,t]))},10)):r.reject()})}),r.promise()):r.reject()}var h=[],f=[],m=t.files[0];if("html"==t.type){var g,v=e(" ").append(e.parseHTML(m));e("img[src]",v).each(function(){var t,n,i=e(this),a=i.closest("a");a&&a.attr("href")&&a.attr("href").match(/\.(?:jpe?g|gif|bmp|png)/i)&&(n=a.attr("href")),t=i.attr("src"),t&&(n?(-1==e.inArray(n,h)&&h.push(n),-1==e.inArray(t,f)&&f.push(t)):-1==e.inArray(t,h)&&h.push(t))}),g=e("a[href]",v),g.each(function(){var t,n=function(e){var t=document.createElement("a");return t.href=e,t};e(this).text()&&(t=n(e(this).attr("href")),!t.href||1!==g.length&&t.pathname.match(/(?:\.html?|\/[^\/.]*)$/i)||-1==e.inArray(t.href,h)&&-1==e.inArray(t.href,f)&&h.push(t.href))})}else{var y,b,w;for(y=/(http[^<>"{}|\\^\[\]`\s]+)/gi;b=y.exec(m);)w=b[1].replace(/&/g,"&"),-1==e.inArray(w,h)&&h.push(w)}return h},xhr:function(t,n){var i,a=n?n:this,r=new XMLHttpRequest,o=null,s=null,l=t.checked,d=t.isDataType||"data"==t.type,c=0,u="div.elfinder-notify-upload div.elfinder-notify-cancel button",p=e.Deferred().fail(function(e){var t=m.length?d?m[0][0]:m[0]:{};t._cid&&(h=new FormData,m=[{_chunkfail:!0}],h.append("chunk",t._chunk),h.append("cid",t._cid),d=!1,F(m)),m=null,e&&a.error(e)}).done(function(e){r=null,m=null,e&&(e.warning&&a.error(e.warning),e.removed&&a.remove(e),e.added&&a.add(e),e.changed&&a.change(e),a.trigger("upload",e),e.sync&&a.sync())}).always(function(){o&&clearTimeout(o),s&&clearTimeout(s),l&&!t.multiupload&&x()&&a.notify({type:"upload",cnt:-g,progress:0,size:0}),I&&a.ui.notify.children(".elfinder-notify-chunkmerge").length&&a.notify({type:"chunkmerge",cnt:-1}),a.ui.notify.off("click",u,C),e(document).off("keydown",C)}),h=new FormData,f=t.target||a.cwd().hash,m=t.input?t.input.files:a.uploads.checkFile(t,a,f),g=t.checked?d?m[0].length:m.length:m.length,v=0,y=0,b=!1,w=!1,x=function(){return b=b||a.ui.notify.children(".elfinder-notify-upload").length},k=function(e){return e||(e=y),setTimeout(function(){b=!0,a.notify({type:"upload",cnt:g,progress:v-i,size:e,cancel:!0}),i=v},a.options.notifyDelay)},C=function(t){("keydown"!=t.type||t.keyCode==e.ui.keyCode.ESCAPE)&&(t.preventDefault(),t.stopPropagation(),w=!0,r.abort(),p.reject(),a.sync())},T=t.renames||null,I=!1;if(a.ui.notify.one("click",u,C),e(document).on("keydown",C),e(window).on("unload",function(){"pending"==p.state()&&p.reject()}),!I&&(i=v),!d&&!g)return p.reject(["errUploadNoFiles"]);r.addEventListener("error",function(){p.reject("errConnect")},!1),r.addEventListener("abort",function(){p.reject(["errConnect","errAbort"])},!1),r.addEventListener("load",function(){var e,n=r.status,l=0,u="";if(n>=400?u=n>500?"errResponse":"errConnect":(4!=r.readyState&&(u=["errConnect","errTimeout"]),r.responseText||(u=["errResponse","errDataEmpty"])),u){if(I||c++>3){var f=d?m[0][0]:m[0];return f._cid?(h=new FormData,m=[{_chunkfail:!0}],h.append("chunk",f._chunk),h.append("cid",f._cid),h.append("range",f._range),d=!1,F(m),void 0):p.reject(u)}return y=0,r.open("POST",a.uploadURL,!0),r.send(h),void 0}if(v=y,x()&&(l=v-i)&&a.notify({type:"upload",cnt:0,progress:l,size:0}),e=a.parseUploadData(r.responseText),e._chunkmerged){h=new FormData;var b=[{_chunkmerged:e._chunkmerged,_name:e._name}];return I=!0,s=setTimeout(function(){a.notify({type:"chunkmerge",cnt:1})},a.options.notifyDelay),d?F(b,m[1]):F(b),void 0}e._multiupload=t.multiupload?!0:!1,e.error?e._chunkfailure?(w=!0,a.uploads.xhrUploading=!1,o&&clearTimeout(o),a.ui.notify.children(".elfinder-notify-upload").length?(a.notify({type:"upload",cnt:-g,progress:0,size:0}),p.reject(e.error)):p.reject()):p.reject(e.error):p.resolve(e)},!1),r.upload.addEventListener("loadstart",function(e){!I&&e.lengthComputable&&(v=e.loaded,c&&(v=0),y=e.total,v||(v=parseInt(.05*y)),x()&&(a.notify({type:"upload",cnt:0,progress:v-i,size:t.multiupload?0:y}),i=v))},!1),r.upload.addEventListener("progress",function(e){var n;e.lengthComputable&&!I&&(v=e.loaded,!t.checked&&v>0&&!o&&(o=k(r._totalSize-v)),y||(c&&(v=0),y=e.total,v||(v=parseInt(.05*y))),n=v-i,x()&&n/e.total>=.05&&(a.notify({type:"upload",cnt:0,progress:n,size:0}),i=v))},!1);var F=function(i,s){var c,u,m,v,y,b,C,I,F,M,P,A,S=0,z=1,D=[],O=0,U=g,E=0,j=[],H=+new Date,R=Math.min((n.uplMaxSize?n.uplMaxSize:2097152)-8190,n.options.uploadMaxChunkSize),_=!1,N=function(i,r){var s,l=[];if(!w)for(;i.length&&l.lengthc||!_&&n.uplMaxSize&&u>n.uplMaxSize)a.error(a.i18n("errUploadFile",C.name)+" "+a.i18n("errUploadFileSize")),g--,U--;else if(_&&u>R){for(v=0,y=R,b=-1,U=Math.floor(u/R),E+=u,j[H]=0;u>=v;)I=C[_](v,y),I._chunk=C.name+"."+ ++b+"_"+U+".part",I._cid=H,I._range=v+","+I.size+","+u,j[H]++,S&&O++,"undefined"==typeof D[O]&&(D[O]=[],d&&(D[O][0]=[],D[O][1]=[])),S=R,z=1,d?(D[O][0].push(I),D[O][1].push(s[m])):D[O].push(I),v=y,y=v+R;null==I?(a.error(a.i18n("errUploadFile",C.name)+" "+a.i18n("errUploadFileSize")),g--,U--):U+=b}else(n.uplMaxSize&&S+u>=n.uplMaxSize||z>n.uplMaxFile)&&(S=0,z=1,O++),"undefined"==typeof D[O]&&(D[O]=[],d&&(D[O][0]=[],D[O][1]=[])),d?(D[O][0].push(C),D[O][1].push(s[m])):D[O].push(C),S+=u,E+=u,z++;if(0==D.length)return t.checked=!0,!1;if(D.length>1)return o=k(E),F=[],M=0,P=D.length,A=[],q(),!0;d?(i=D[0][0],s=D[0][1]):i=D[0]}return l||(n.UA.Safari&&t.files?r._totalSize=E:o=k(E)),l=!0,i.length||p.reject(["errUploadNoFiles"]),r.open("POST",a.uploadURL,!0),n.customHeaders&&e.each(n.customHeaders,function(e){r.setRequestHeader(e,this)}),n.xhrFields&&e.each(n.xhrFields,function(e){e in r&&(r[e]=this)}),h.append("cmd","upload"),h.append(a.newAPI?"target":"current",f),T&&(e.each(T,function(e,t){h.append("renames[]",t)}),h.append("suffix",n.options.backupSuffix)),e.each(a.options.customData,function(e,t){h.append(e,t)}),e.each(a.options.onlyMimes,function(e,t){h.append("mimes["+e+"]",t)}),e.each(i,function(e,t){t._chunkmerged?(h.append("chunk",t._chunkmerged),h.append("upload[]",t._name)):(t._chunkfail?(h.append("upload[]","chunkfail"),h.append("mimes","chunkfail")):h.append("upload[]",t),t._chunk&&(h.append("chunk",t._chunk),h.append("cid",t._cid),h.append("range",t._range)))}),d&&e.each(s,function(e,t){h.append("upload_path[]",t)}),r.onreadystatechange=function(){if(4==r.readyState&&0==r.status)if(w)p.reject();else{var n=["errAbort"];!d&&t.files&&e.map(t.files,function(e){return 0===e.size?e:null}).length&&n.push("errFolderUpload"),p.reject(n)}},r.send(h),!0};return d?l?F(m[0],m[1]):m.done(function(e){T=[],g=e[0].length,g?(T=e[2],F(e[0],e[1])):p.reject(["errUploadNoFiles"])}).fail(function(){p.reject()}):m.length>0?null==T?(T=[],a.uploads.checkExists(m,f,n).done(function(t){n.option("uploadOverwrite")&&(T=t,m=e.map(m,function(e){return e._remove?null:e})),g=m.length,g>0?F(m)||p.reject():p.reject()})):F(m)||p.reject():p.reject(),p},iframe:function(t,n){var i,a,r,o,s=n?n:this,l=t.input?t.input:!1,d=l?!1:s.uploads.checkFile(t,s),c=e.Deferred().fail(function(e){e&&s.error(e)}).done(function(e){e.warning&&s.error(e.warning),e.removed&&s.remove(e),e.added&&s.add(e),e.changed&&s.change(e),s.trigger("upload",e),e.sync&&s.sync()}),u="iframe-"+s.namespace+ ++s.iframeCnt,p=e(''),h=this.UA.IE,f=function(){o&&clearTimeout(o),r&&clearTimeout(r),a&&s.notify({type:"upload",cnt:-i}),setTimeout(function(){h&&e('').appendTo(p),p.remove(),m.remove()},100)},m=e('').on("load",function(){m.off("load").on("load",function(){f(),c.reject()}),r=setTimeout(function(){a=!0,s.notify({type:"upload",cnt:i})},s.options.notifyDelay),s.options.iframeTimeout>0&&(o=setTimeout(function(){f(),c.reject([errors.connect,errors.timeout])},s.options.iframeTimeout)),p.submit()}),g=t.target||s.cwd().hash,v=[],y=[],b=[];if(d&&d.length)e.each(d,function(e,t){p.append(' ')}),i=1;else{if(!(l&&e(l).is(":file")&&e(l).val()))return c.reject();n.option("uploadOverwrite")&&(v=l.files?l.files:[{name:e(l).val().replace(/^(?:.+[\\\/])?([^\\\/]+)$/,"$1")}],y.push(s.uploads.checkExists(v,g,s).done(function(t){b=t,i=e.map(v,function(e){return e._remove?null:e}).length,i!=v.length&&(i=0)}))),i=l.files?l.files.length:1,p.append(l)}return e.when.apply(e,y).done(function(){return 1>i?c.reject():(p.append(' ').append(' ').append(' ').append(e(l).attr("name","upload[]")),b.length>0&&(e.each(b,function(e,t){p.append(' ')}),p.append(' ')),e.each(s.options.onlyMimes||[],function(e,t){p.append(' ')}),e.each(s.options.customData,function(e,t){p.append(' ')}),p.appendTo("body"),m.appendTo("body"),void 0)}),c}},one:function(t,n){var i=this,a=e.proxy(n,function(e){return setTimeout(function(){i.unbind(e.type,a)},3),n.apply(this,arguments)});return this.bind(t,a)},localStorage:function(e,t){var n=window.localStorage;if(e="elfinder-"+e+this.id,null===t)return n.removeItem(e);if(void 0!==t)try{n.setItem(e,t)}catch(i){n.clear(),n.setItem(e,t)}return n.getItem(e)},cookie:function(t,n){var i,a,r,o;if(t="elfinder-"+t+this.id,void 0===n){if(document.cookie&&""!=document.cookie)for(r=document.cookie.split(";"),t+="=",o=0;o "),escape:function(e){return this._node.text(e).html().replace(/"/g,""").replace(/'/g,"'")},normalize:function(t){var n=function(e){return e&&e.hash&&e.name&&e.mime?("application/x-empty"==e.mime&&(e.mime="text/plain"),e):null};return t.files&&(t.files=e.map(t.files,n)),t.tree&&(t.tree=e.map(t.tree,n)),t.added&&(t.added=e.map(t.added,n)),t.changed&&(t.changed=e.map(t.changed,n)),t.api&&(t.init=!0),t},setSort:function(e,t,n){this.storage("sortType",this.sortType=this.sortRules[e]?e:"name"),this.storage("sortOrder",this.sortOrder=/asc|desc/.test(t)?t:"asc"),this.storage("sortStickFolders",(this.sortStickFolders=!!n)?1:""),this.trigger("sortchange")},_sortRules:{name:function(e,t){var n,i,a=e.name.toLowerCase(),r=t.name.toLowerCase(),o="",s="",l=elFinder.prototype.naturalCompare;return(n=a.match(/^(.+)(\.[0-9a-z.]+)$/))&&(a=n[1],o=n[2]),(n=r.match(/^(.+)(\.[0-9a-z.]+)$/))&&(r=n[1],s=n[2]),i=l(a,r),0==i&&(o||s)&&o!=s&&(i=l(o,s)),i},size:function(e,t){var n=parseInt(e.size)||0,i=parseInt(t.size)||0;return n==i?0:n>i?1:-1},kind:function(e,t){return elFinder.prototype.naturalCompare(e.mime,t.mime)},date:function(e,t){var n=e.ts||e.date,i=t.ts||t.date;return n==i?0:n>i?1:-1}},naturalCompare:function(e,t){var n=elFinder.prototype.naturalCompare;return"undefined"==typeof n.loc&&(n.loc=navigator.userLanguage||navigator.browserLanguage||navigator.language||"en-US"),"undefined"==typeof n.sort&&("11".localeCompare("2",n.loc,{numeric:!0})>0?n.sort=window.Intl&&window.Intl.Collator?new Intl.Collator(n.loc,{numeric:!0}).compare:function(e,t){return e.localeCompare(t,n.loc,{numeric:!0})}:(n.sort=function(e,t){var i,a,r=/(^-?[0-9]+(\.?[0-9]*)[df]?e?[0-9]?$|^0x[0-9a-f]+$|[0-9]+)/gi,o=/(^[ ]*|[ ]*$)/g,s=/(^([\w ]+,?[\w ]+)?[\w ]+,?[\w ]+\d+:\d+(:\d+)?[\w ]?|^\d{1,4}[\/\-]\d{1,4}[\/\-]\d{1,4}|^\w+, \w+ \d+, \d{4})/,l=/^0x[0-9a-f]+$/i,d=/^0/,c=/^[\x01\x21-\x2f\x3a-\x40\x5b-\x60\x7b-\x7e]/,u=function(e){return n.sort.insensitive&&(""+e).toLowerCase()||""+e},p=u(e).replace(o,"").replace(/^_/,"")||"",h=u(t).replace(o,"").replace(/^_/,"")||"",f=p.replace(r,"\0$1\0").replace(/\0$/,"").replace(/^\0/,"").split("\0"),m=h.replace(r,"\0$1\0").replace(/\0$/,"").replace(/^\0/,"").split("\0"),g=parseInt(p.match(l))||1!=f.length&&p.match(s)&&Date.parse(p),v=parseInt(h.match(l))||g&&h.match(s)&&Date.parse(h)||null,y=0;if(v){if(v>g)return-1;if(g>v)return 1}for(var b=0,w=Math.max(f.length,m.length);w>b;b++){if(i=!(f[b]||"").match(d)&&parseFloat(f[b])||f[b]||0,a=!(m[b]||"").match(d)&&parseFloat(m[b])||m[b]||0,isNaN(i)!==isNaN(a)){if(isNaN(i)&&("string"!=typeof i||!i.match(c)))return 1;if("string"!=typeof a||!a.match(c))return-1}if(0===parseInt(i,10)&&(i=0),0===parseInt(a,10)&&(a=0),typeof i!=typeof a&&(i+="",a+=""),n.sort.insensitive&&"string"==typeof i&&"string"==typeof a&&(y=i.localeCompare(a,n.loc),0!==y))return y;if(a>i)return-1;if(i>a)return 1}return 0},n.sort.insensitive=!0)),n.sort(e,t)},compare:function(e,t){var n,i=this,a=i.sortType,r="asc"==i.sortOrder,o=i.sortStickFolders,s=i.sortRules,l=s[a],d="directory"==e.mime,c="directory"==t.mime;if(o){if(d&&!c)return-1;if(!d&&c)return 1}return n=r?l(e,t):l(t,e),"name"!=a&&0==n?n=r?s.name(e,t):s.name(t,e):n},sortFiles:function(e){return e.sort(this.compare)},notify:function(t){var n,i,a,r,o=t.type,s=this.messages["ntf"+o]?this.i18n("ntf"+o):this.i18n("ntfsmth"),l=this.ui.notify,d=l.children(".elfinder-notify-"+o),c='',u=t.cnt,p="undefined"!=typeof t.size?parseInt(t.size):null,h="undefined"!=typeof t.progress&&t.progress>=0?t.progress:null,f=t.cancel,m="ui-state-hover";return o?(d.length||(d=e(c.replace(/\{type\}/g,o).replace(/\{msg\}/g,s)).appendTo(l).data("cnt",0),null!=h&&d.data({progress:0,total:0}),f&&(r=e(''+this.i18n("btnCancel")+" ").hover(function(t){e(this).toggleClass(m,"mouseenter"==t.type)}),d.children("div.elfinder-notify-cancel").append(r))),n=u+parseInt(d.data("cnt")),n>0?(!t.hideCnt&&d.children(".elfinder-notify-cnt").text("("+n+")"),l.is(":hidden")&&l.elfinderdialog("open"),d.data("cnt",n),null!=h&&(i=d.data("total"))>=0&&(a=d.data("progress"))>=0&&(i+=null!=p?p:u,a+=h,null==p&&0>u&&(a+=100*u),d.data({progress:a,total:i}),null!=p&&(a*=100,i=Math.max(1,i)),h=parseInt(a/i),d.find(".elfinder-notify-progress").animate({width:(100>h?h:100)+"%"},20))):(d.remove(),!l.children().length&&l.elfinderdialog("close")),this):this},confirm:function(t){var n,i=this,a=!1,r={cssClass:"elfinder-dialog-confirm",modal:!0,resizable:!1,title:this.i18n(t.title||"confirmReq"),buttons:{},close:function(){!a&&t.cancel.callback(),e(this).elfinderdialog("destroy")}},o=this.i18n("apllyAll");return r.buttons[this.i18n(t.accept.label)]=function(){t.accept.callback(!(!n||!n.prop("checked"))),a=!0,e(this).elfinderdialog("close")},t.reject&&(r.buttons[this.i18n(t.reject.label)]=function(){t.reject.callback(!(!n||!n.prop("checked"))),a=!0,e(this).elfinderdialog("close")}),t.buttons&&t.buttons.length>0&&e.each(t.buttons,function(t,o){r.buttons[i.i18n(o.label)]=function(){o.callback(!(!n||!n.prop("checked"))),a=!0,e(this).elfinderdialog("close")}}),r.buttons[this.i18n(t.cancel.label)]=function(){e(this).elfinderdialog("close")},t.all&&(t.reject&&(r.width=370),r.create=function(){n=e(' '),e(this).next().children().before(e(""+o+" ").prepend(n))},r.open=function(){var t=e(this).next(),n=parseInt(t.children(":first").outerWidth()+t.children(":last").outerWidth());n>parseInt(t.width())&&e(this).closest(".elfinder-dialog").width(n+30)}),this.dialog(' '+this.i18n(t.text),r)},uniqueName:function(e,t,n){var i,a,r=0,o="";if(e=this.i18n(e),t=t||this.cwd().hash,n="undefined"==typeof n?" ":n,(i=e.match(/^(.+)(\.[^.]+)$/))&&(o=i[2],e=i[1]),a=e+o,!this.fileByName(a,t))return a;for(;1e4>r;)if(a=e+n+ ++r+o,!this.fileByName(a,t))return a;return e+Math.random()+o},i18n:function(){var t,n,i,a=this,r=this.messages,o=[],s=[],l=function(e){var t;return 0===e.indexOf("#")&&(t=a.file(e.substr(1)))?t.name:e};for(t=0;t0&&o[n]&&s.push(n),a.escape(o[n])||""})):i=i.get(0).outerHTML,o[t]=i);return e.map(o,function(t,n){return-1===e.inArray(n,s)?t:null}).join(" ")},mime2class:function(e){var t="elfinder-cwd-icon-";return e=e.split("/"),t+e[0]+("image"!=e[0]&&e[1]?" "+t+e[1].replace(/(\.|\+)/g,"-"):"")},mime2kind:function(e){var t,n="object"==typeof e?e.mime:e;return t=e.alias&&"symlink-broken"!=e.mime?"Alias":this.kinds[n]?this.kinds[n]:0===n.indexOf("text")?"Text":0===n.indexOf("image")?"Image":0===n.indexOf("audio")?"Audio":0===n.indexOf("video")?"Video":0===n.indexOf("application")?"App":n,this.messages["kind"+t]?this.i18n("kind"+t):n},formatDate:function(e,t){var n,i,a,r,o,s,l,d,c,u,p,h=this,t=t||e.ts,f=h.i18;return h.options.clientFormatDate&&t>0?(n=new Date(1e3*t),d=n[h.getHours](),c=d>12?d-12:d,u=n[h.getMinutes](),p=n[h.getSeconds](),r=n[h.getDate](),o=n[h.getDay](),s=n[h.getMonth]()+1,l=n[h.getFullYear](),i=t>=this.yesterday?this.fancyFormat:this.dateFormat,a=i.replace(/[a-z]/gi,function(e){switch(e){case"d":return r>9?r:"0"+r;case"j":return r;case"D":return h.i18n(f.daysShort[o]);case"l":return h.i18n(f.days[o]);case"m":return s>9?s:"0"+s;case"n":return s;case"M":return h.i18n(f.monthsShort[s-1]);case"F":return h.i18n(f.months[s-1]);case"Y":return l;case"y":return(""+l).substr(2);case"H":return d>9?d:"0"+d;case"G":return d;case"g":return c;case"h":return c>9?c:"0"+c;case"a":return d>12?"pm":"am";case"A":return d>12?"PM":"AM";case"i":return u>9?u:"0"+u;case"s":return p>9?p:"0"+p}return e}),t>=this.yesterday?a.replace("$1",this.i18n(t>=this.today?"Today":"Yesterday")):a):e.date?e.date.replace(/([a-z]+)\s/i,function(e,t){return h.i18n(t)+" "}):h.i18n("dateUnknown")},perms2class:function(e){var t="";return e.read||e.write?e.read?e.write||(t="elfinder-ro"):t="elfinder-wo":t="elfinder-na",t},formatPermissions:function(e){var t=[];return e.read&&t.push(this.i18n("read")),e.write&&t.push(this.i18n("write")),t.length?t.join(" "+this.i18n("and")+" "):this.i18n("noaccess")},formatSize:function(e){var t=1,n="b";return"unknown"==e?this.i18n("unknown"):(e>1073741824?(t=1073741824,n="GB"):e>1048576?(t=1048576,n="MB"):e>1024&&(t=1024,n="KB"),e/=t,(e>0?t>=1048576?e.toFixed(2):Math.round(e):0)+" "+n)},formatFileMode:function(t,n){var i,a,r,o,s,l,d,c,u;if(n||(n=this.options.fileModeStyle.toLowerCase()),t=e.trim(t),t.match(/[rwxs-]{9}$/i)){if(c=t=t.substr(-9),"string"==n)return c;for(u="",r=0,i=0;7>i;i+=3)a=t.substr(i,3),o=0,a.match(/[r]/i)&&(o+=4),a.match(/[w]/i)&&(o+=2),a.match(/[xs]/i)&&(a.match(/[xs]/)&&(o+=1),a.match(/[s]/i)&&(0==i?r+=4:3==i&&(r+=2))),u+=o.toString(8);r&&(u=r.toString(8)+u)}else{if(t=parseInt(t,8),u=t?t.toString(8):"",!t||"octal"==n)return u;for(a=t.toString(8),r=0,a.length>3&&(a=a.substr(-4),r=parseInt(a.substr(0,1),8),a=a.substr(1)),s=1==(1&r),d=2==(2&r),l=4==(4&r),c="",i=0;3>i;i++)c+=4==(4&parseInt(a.substr(i,1),8))?"r":"-",c+=2==(2&parseInt(a.substr(i,1),8))?"w":"-",c+=1==(1&parseInt(a.substr(i,1),8))?0==i&&l||1==i&&d?"s":"x":"-"}return"both"==n?c+" ("+u+")":"string"==n?c:u},navHash2Id:function(e){return this.navPrefix+e},navId2Hash:function(e){return"string"==typeof e?e.substr(this.navPrefix.length):!1},cwdHash2Id:function(e){return this.cwdPrefix+e},cwdId2Hash:function(e){return"string"==typeof e?e.substr(this.cwdPrefix.length):!1},log:function(e){return window.console&&window.console.log&&window.console.log(e),this},debug:function(t,n){var i=this.options.debug;return("all"==i||i===!0||e.isArray(i)&&-1!=e.inArray(t,i))&&window.console&&window.console.log&&window.console.log("elfinder debug: ["+t+"] ["+this.id+"]",n),this},time:function(e){window.console&&window.console.time&&window.console.time(e)},timeEnd:function(e){window.console&&window.console.timeEnd&&window.console.timeEnd(e)}},Object.keys||(Object.keys=function(){var e=Object.prototype.hasOwnProperty,t=!{toString:null}.propertyIsEnumerable("toString"),n=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],i=n.length;return function(a){if("object"!=typeof a&&"function"!=typeof a||null===a)throw new TypeError("Object.keys called on non-object");var r=[];for(var o in a)e.call(a,o)&&r.push(o);if(t)for(var s=0;i>s;s++)e.call(a,n[s])&&r.push(n[s]);return r}}()),elFinder.prototype.version="2.1.5 (2.1-src Nightly: e9fe571)",function(){if(e.ui&&e.ui.ddmanager){var t=e.ui.ddmanager.prepareOffsets;e.ui.ddmanager.prepareOffsets=function(n,i){var a=function(e){if(e.is(":hidden"))return!0;var t=e[0].getBoundingClientRect();return document.elementFromPoint(t.left,t.top)?!1:!0};if("mousedown"===i.type){var r,o,s=e.ui.ddmanager.droppables[n.options.scope]||[],l=s.length;for(r=0;l>r;r++)o=s[r],o.options.autoDisable&&(!o.options.disabled||o.options.autoDisable>1)&&(o.options.disabled=a(o.element),o.options.autoDisable=o.options.disabled?2:1)}return t(n,i)}}}(),e.fn.elfinder=function(e){return"instance"==e?this.getElFinder():this.each(function(){var t="string"==typeof e?e:"";switch(this.elfinder||new elFinder(this,"object"==typeof e?e:{}),t){case"close":case"hide":this.elfinder.hide();break;case"open":case"show":this.elfinder.show();break;case"destroy":this.elfinder.destroy()}})},e.fn.getElFinder=function(){var e;return this.each(function(){return this.elfinder?(e=this.elfinder,!1):void 0}),e},elFinder.prototype._options={url:"",requestType:"get",transport:{},urlUpload:"",dragUploadAllow:"auto",uploadMaxChunkSize:10485760,iframeTimeout:0,customData:{},handlers:{},customHeaders:{},xhrFields:{},lang:"en",cssClass:"",commands:["open","opendir","reload","home","up","back","forward","getfile","quicklook","download","rm","duplicate","rename","mkdir","mkfile","upload","copy","cut","paste","edit","extract","archive","search","info","view","help","resize","sort","netmount","netunmount","places","chmod"],commandsOptions:{getfile:{onlyURL:!1,multiple:!1,folders:!1,oncomplete:""},upload:{ui:"uploadbutton"},quicklook:{autoplay:!0,jplayer:"extensions/jplayer"},edit:{mimes:[],editors:[]},info:{nullUrlDirLinkSelf:!0,custom:{}},netmount:{ftp:{inputs:{host:e(' '),port:e(' '),path:e(' '),user:e(' '),pass:e(' '),encoding:e(' '),locale:e(' ')}},dropbox:{inputs:{host:e(' '),path:e(' '),user:e(' '),pass:e(' ')},select:function(e){var t=this;t.inputs.host.find("span").length&&e.request({data:{cmd:"netmount",protocol:"dropbox",host:"dropbox.com",user:"init",pass:"init",options:{url:e.uploadURL,id:e.id}},preventDefault:!0}).done(function(n){t.inputs.host.find("span").removeClass("elfinder-info-spinner"),t.inputs.host.find("span").html(n.body.replace(/\{msg:([^}]+)\}/g,function(t,n){return e.i18n(n,"Dropbox.com")}))}).fail(function(){})},done:function(t,n){var i=this;"makebtn"==n.mode?(i.inputs.host.find("span").removeClass("elfinder-info-spinner"),i.inputs.host.find("input").hover(function(){e(this).toggleClass("ui-state-hover")}),i.inputs.host[1].value=""):(i.inputs.host.find("span").removeClass("elfinder-info-spinner"),i.inputs.host.find("span").html("Dropbox.com"),i.inputs.host[1].value="dropbox",i.inputs.user.val("done"),i.inputs.pass.val("done"))}}},help:{view:["about","shortcuts","help"]}},getFileCallback:null,defaultView:"icons",startPathHash:"",ui:["toolbar","tree","path","stat"],uiOptions:{toolbar:[["back","forward"],["netmount"],["mkdir","mkfile","upload"],["open","download","getfile"],["info","chmod"],["quicklook"],["copy","cut","paste"],["rm"],["duplicate","rename","edit","resize"],["extract","archive"],["search"],["view","sort"],["help"]],tree:{openRootOnLoad:!0,openCwdOnOpen:!0,syncTree:!0},navbar:{minWidth:150,maxWidth:500},cwd:{oldSchool:!1,listView:{columns:["perm","date","size","kind"],columnsCustomName:{}}}},onlyMimes:[],sortRules:{},sortType:"name",sortOrder:"asc",sortStickFolders:!0,clientFormatDate:!0,UTCDate:!1,dateFormat:"",fancyDateFormat:"",fileModeStyle:"both",width:"auto",height:400,resizable:!0,notifyDelay:500,notifyDialog:{position:{top:"12px",right:"12px"},width:280},allowShortcuts:!0,rememberLastDir:!0,reloadClearHistory:!1,useBrowserHistory:!0,showFiles:30,showThreshold:50,validName:!1,backupSuffix:"~",sync:0,syncStart:!0,loadTmbs:5,cookie:{expires:30,domain:"",path:"/",secure:!1},contextmenu:{navbar:["open","|","upload","|","copy","cut","paste","duplicate","|","rm","|","rename","|","places","info","chmod","netunmount"],cwd:["reload","back","|","upload","mkdir","mkfile","paste","|","sort","|","info"],files:["getfile","|","open","opendir","quicklook","|","download","upload","|","copy","cut","paste","duplicate","|","rm","|","edit","rename","resize","|","archive","extract","|","places","info","chmod"]},debug:["error","warning","event-destroy"]},elFinder.prototype.history=function(t){var n,i=this,a=!0,r=[],o=function(){r=[t.cwd().hash],n=0,a=!0},s=t.options.useBrowserHistory&&window.history&&window.history.pushState?window.history:null,l=function(s){return s&&i.canForward()||!s&&i.canBack()?(a=!1,t.exec("open",r[s?++n:--n]).fail(o)):e.Deferred().reject()};this.canBack=function(){return n>0},this.canForward=function(){return n=0&&e>n+1&&r.splice(n+1),r[r.length-1]!=i&&r.push(i),n=r.length-1),a=!0,s&&(s.state?s.state.thash!=i&&s.pushState({thash:i},null,location.pathname+location.search+"#elf_"+i):s.replaceState({thash:i},null,location.pathname+location.search+"#elf_"+i))
-}).reload(t.options.reloadClearHistory&&o)},elFinder.prototype.command=function(t){this.fm=t,this.name="",this.title="",this.state=-1,this.alwaysEnabled=!1,this._disabled=!1,this.disableOnSearch=!1,this.updateOnSelect=!0,this._handlers={enable:function(){this.update(void 0,this.value)},disable:function(){this.update(-1,this.value)},"open reload load":function(){this._disabled=!(this.alwaysEnabled||this.fm.isCommandEnabled(this.name)),this.update(void 0,this.value),this.change()}},this.handlers={},this.shortcuts=[],this.options={ui:"button"},this.setup=function(t,n){var i,a,r,o=this,s=this.fm;for(this.name=t,this.title=s.messages["cmd"+t]?s.i18n("cmd"+t):t,this.options=e.extend({},this.options,n),this.listeners=[],n.shortcuts&&("function"==typeof n.shortcuts?r=n.shortcuts(this.fm,this.shortcuts):e.isArray(n.shortcuts)&&(r=n.shortcuts),this.shortcuts=r||[]),this.updateOnSelect&&(this._handlers.select=function(){this.update(void 0,this.value)}),e.each(e.extend({},o._handlers,o.handlers),function(t,n){s.bind(t,e.proxy(n,o))}),i=0;i-1},this.active=function(){return this.state>0},this.getstate=function(){return-1},this.update=function(e,t){var n=this.state,i=this.value;this.state=this._disabled?-1:void 0!==e?e:this.getstate(),this.value=t,(n!=this.state||i!=this.value)&&this.change()},this.change=function(e){var t,n;if("function"==typeof e)this.listeners.push(e);else for(n=0;n ',lock:' ',symlink:' ',navicon:' ',navspinner:' ',navdir:' {symlink}{permissions}{name}
'},mimes:{text:["application/x-empty","application/javascript","application/xhtml+xml","audio/x-mp3-playlist","application/x-web-config","application/docbook+xml","application/x-php","application/x-perl","application/x-awk","application/x-config","application/x-csh","application/xml"]},mixin:{make:function(){var t,n,i,a=this.fm,r=this.name,o=a.getUI("cwd"),s="list"!=a.storage("view"),l=function(){s?(m.zIndex("").css("position",""),n.css("max-height","")):(i.css("width",""),i.parent("td").css("overflow",""))},d=e.Deferred().fail(function(e){l(),o.trigger("unselectall"),e&&a.error(e)}).always(function(){g.remove(),m.remove(),a.enable()}),c="tmp_"+parseInt(1e5*Math.random()),u=a.cwd().hash,p=new Date,h={hash:c,name:a.uniqueName(this.prefix),mime:this.mime,read:!0,write:!0,date:"Today "+p.getHours()+":"+p.getMinutes()},f=this.data||{},m=o.trigger("create."+a.namespace,h).find("#"+a.cwdHash2Id(c)),g=e(s?"":' ').on("keyup text",function(){s?(this.style.height="1px",this.style.height=this.scrollHeight+"px"):t&&(this.style.width=t+"px",this.scrollWidth>t&&(this.style.width=this.scrollWidth+10+"px"))}).keydown(function(t){t.stopImmediatePropagation(),t.keyCode==e.ui.keyCode.ESCAPE?d.reject():t.keyCode==e.ui.keyCode.ENTER&&g.blur()}).mousedown(function(e){e.stopPropagation()}).blur(function(){var t=e.trim(g.val()),n=g.parent(),i=!0;if(n.length){if(a.options.validName&&a.options.validName.test)try{i=a.options.validName.test(t)}catch(s){i=!1}if(!t||".."===t||!i)return a.error("errInvName"),!1;if(a.fileByName(t,u))return a.error(["errExists",t]),!1;l(),n.html(a.escape(t)),a.lockfiles({files:[c]}),a.request({data:e.extend({cmd:r,name:t,target:u},f||{}),notify:{type:r,cnt:1},preventFail:!0,syncOnFail:!0}).fail(function(e){d.reject(e)}).done(function(e){if(d.resolve(e),e.added&&e.added[0]){var t=o.find("#"+a.cwdHash2Id(e.added[0].hash));t.length&&t.trigger("scrolltoview")}})}});return this.disabled()||!m.length?d.reject():(a.disable(),n=m.find(".elfinder-cwd-filename"),i=n.parent(),s?(m.zIndex(m.parent().zIndex()+1).css("position","relative"),n.css("max-height","none")):(t=i.width(),i.width(t-15),i.parent("td").css("overflow","visible")),n.empty("").append(g.val(h.name)),g.trigger("keyup"),g.select().focus(),g[0].setSelectionRange&&g[0].setSelectionRange(0,h.name.replace(/\..+$/,"").length),d)}}},e.fn.dialogelfinder=function(t){var n="elfinderPosition",i="elfinderDestroyOnClose";if(this.not(".elfinder").each(function(){var a=(e(document),e('")),r=(e(' ').appendTo(a).click(function(e){e.preventDefault(),r.dialogelfinder("close")}),e(this).addClass("dialogelfinder").css("position","absolute").hide().appendTo("body").draggable({handle:".dialogelfinder-drag",containment:"window"}).elfinder(t).prepend(a));r.elfinder("instance"),r.width(parseInt(r.width())||840).data(i,!!t.destroyOnClose).find(".elfinder-toolbar").removeClass("ui-corner-top"),t.position&&r.data(n,t.position),t.autoOpen!==!1&&e(this).dialogelfinder("open")}),"open"==t){var a=e(this),r=a.data(n)||{top:parseInt(e(document).scrollTop()+(e(window).height()o&&(o=t+1)}),a.zIndex(o).css(r).show().trigger("resize"),setTimeout(function(){a.trigger("resize").mousedown()},200))}else if("close"==t){var a=e(this);a.is(":visible")&&(a.data(i)?a.elfinder("destroy").remove():a.elfinder("close"))}else if("instance"==t)return e(this).getElFinder();return this},elFinder&&elFinder.prototype&&"object"==typeof elFinder.prototype.i18&&(elFinder.prototype.i18.en={translator:"Troex Nevelin <troex@fury.scancode.ru>",language:"English",direction:"ltr",dateFormat:"M d, Y h:i A",fancyDateFormat:"$1 h:i A",messages:{error:"Error",errUnknown:"Unknown error.",errUnknownCmd:"Unknown command.",errJqui:"Invalid jQuery UI configuration. Selectable, draggable and droppable components must be included.",errNode:"elFinder requires DOM Element to be created.",errURL:"Invalid elFinder configuration! URL option is not set.",errAccess:"Access denied.",errConnect:"Unable to connect to backend.",errAbort:"Connection aborted.",errTimeout:"Connection timeout.",errNotFound:"Backend not found.",errResponse:"Invalid backend response.",errConf:"Invalid backend configuration.",errJSON:"PHP JSON module not installed.",errNoVolumes:"Readable volumes not available.",errCmdParams:'Invalid parameters for command "$1".',errDataNotJSON:"Data is not JSON.",errDataEmpty:"Data is empty.",errCmdReq:"Backend request requires command name.",errOpen:'Unable to open "$1".',errNotFolder:"Object is not a folder.",errNotFile:"Object is not a file.",errRead:'Unable to read "$1".',errWrite:'Unable to write into "$1".',errPerm:"Permission denied.",errLocked:'"$1" is locked and can not be renamed, moved or removed.',errExists:'File named "$1" already exists.',errInvName:"Invalid file name.",errFolderNotFound:"Folder not found.",errFileNotFound:"File not found.",errTrgFolderNotFound:'Target folder "$1" not found.',errPopup:"Browser prevented opening popup window. To open file enable it in browser options.",errMkdir:'Unable to create folder "$1".',errMkfile:'Unable to create file "$1".',errRename:'Unable to rename "$1".',errCopyFrom:'Copying files from volume "$1" not allowed.',errCopyTo:'Copying files to volume "$1" not allowed.',errMkOutLink:"Unable to create a link to outside the volume root.",errUpload:"Upload error.",errUploadFile:'Unable to upload "$1".',errUploadNoFiles:"No files found for upload.",errUploadTotalSize:"Data exceeds the maximum allowed size.",errUploadFileSize:"File exceeds maximum allowed size.",errUploadMime:"File type not allowed.",errUploadTransfer:'"$1" transfer error.',errUploadTemp:"Unable to make temporary file for upload.",errNotReplace:'Object "$1" already exists at this location and can not be replaced by object with another type.',errReplace:'Unable to replace "$1".',errSave:'Unable to save "$1".',errCopy:'Unable to copy "$1".',errMove:'Unable to move "$1".',errCopyInItself:'Unable to copy "$1" into itself.',errRm:'Unable to remove "$1".',errRmSrc:"Unable remove source file(s).",errExtract:'Unable to extract files from "$1".',errArchive:"Unable to create archive.",errArcType:"Unsupported archive type.",errNoArchive:"File is not archive or has unsupported archive type.",errCmdNoSupport:"Backend does not support this command.",errReplByChild:'The folder "$1" can\'t be replaced by an item it contains.',errArcSymlinks:"For security reason denied to unpack archives contains symlinks or files with not allowed names.",errArcMaxSize:"Archive files exceeds maximum allowed size.",errResize:'Unable to resize "$1".',errResizeDegree:"Invalid rotate degree.",errResizeRotate:"Unable to rotate image.",errResizeSize:"Invalid image size.",errResizeNoChange:"Image size not changed.",errUsupportType:"Unsupported file type.",errNotUTF8Content:'File "$1" is not in UTF-8 and cannot be edited.',errNetMount:'Unable to mount "$1".',errNetMountNoDriver:"Unsupported protocol.",errNetMountFailed:"Mount failed.",errNetMountHostReq:"Host required.",errSessionExpires:"Your session has expired due to inactivity.",errCreatingTempDir:'Unable to create temporary directory: "$1"',errFtpDownloadFile:'Unable to download file from FTP: "$1"',errFtpUploadFile:'Unable to upload file to FTP: "$1"',errFtpMkdir:'Unable to create remote directory on FTP: "$1"',errArchiveExec:'Error while archiving files: "$1"',errExtractExec:'Error while extracting files: "$1"',errNetUnMount:"Unable to unmount",errConvUTF8:"Not convertible to UTF-8",errFolderUpload:"Try Google Chrome, If you'd like to upload the folder.",errSearchTimeout:'Timed out while searching "$1". Search result is partial.',cmdarchive:"Create archive",cmdback:"Back",cmdcopy:"Copy",cmdcut:"Cut",cmddownload:"Download",cmdduplicate:"Duplicate",cmdedit:"Edit file",cmdextract:"Extract files from archive",cmdforward:"Forward",cmdgetfile:"Select files",cmdhelp:"About this software",cmdhome:"Home",cmdinfo:"Get info",cmdmkdir:"New folder",cmdmkfile:"New text file",cmdopen:"Open",cmdpaste:"Paste",cmdquicklook:"Preview",cmdreload:"Reload",cmdrename:"Rename",cmdrm:"Delete",cmdsearch:"Find files",cmdup:"Go to parent directory",cmdupload:"Upload files",cmdview:"View",cmdresize:"Resize & Rotate",cmdsort:"Sort",cmdnetmount:"Mount network volume",cmdnetunmount:"Unmount",cmdplaces:"To Places",cmdchmod:"Change mode",cmdopendir:"Open a folder",btnClose:"Close",btnSave:"Save",btnRm:"Remove",btnApply:"Apply",btnCancel:"Cancel",btnNo:"No",btnYes:"Yes",btnMount:"Mount",btnApprove:"Goto $1 & approve",btnUnmount:"Unmount",btnConv:"Convert",btnCwd:"Here",btnVolume:"Volume",btnAll:"All",btnMime:"MIME Type",btnFileName:"Filename",btnSaveClose:"Save & Close",btnBackup:"Backup",ntfopen:"Open folder",ntffile:"Open file",ntfreload:"Reload folder content",ntfmkdir:"Creating directory",ntfmkfile:"Creating files",ntfrm:"Delete files",ntfcopy:"Copy files",ntfmove:"Move files",ntfprepare:"Prepare to copy files",ntfrename:"Rename files",ntfupload:"Uploading files",ntfdownload:"Downloading files",ntfsave:"Save files",ntfarchive:"Creating archive",ntfextract:"Extracting files from archive",ntfsearch:"Searching files",ntfresize:"Resizing images",ntfsmth:"Doing something",ntfloadimg:"Loading image",ntfnetmount:"Mounting network volume",ntfnetunmount:"Unmounting network volume",ntfdim:"Acquiring image dimension",ntfreaddir:"Reading folder infomation",ntfurl:"Getting URL of link",ntfchmod:"Changing file mode",ntfpreupload:"Verifying upload file name",dateUnknown:"unknown",Today:"Today",Yesterday:"Yesterday",msJan:"Jan",msFeb:"Feb",msMar:"Mar",msApr:"Apr",msMay:"May",msJun:"Jun",msJul:"Jul",msAug:"Aug",msSep:"Sep",msOct:"Oct",msNov:"Nov",msDec:"Dec",January:"January",February:"February",March:"March",April:"April",May:"May",June:"June",July:"July",August:"August",September:"September",October:"October",November:"November",December:"December",Sunday:"Sunday",Monday:"Monday",Tuesday:"Tuesday",Wednesday:"Wednesday",Thursday:"Thursday",Friday:"Friday",Saturday:"Saturday",Sun:"Sun",Mon:"Mon",Tue:"Tue",Wed:"Wed",Thu:"Thu",Fri:"Fri",Sat:"Sat",sortname:"by name",sortkind:"by kind",sortsize:"by size",sortdate:"by date",sortFoldersFirst:"Folders first","untitled file.txt":"NewFile.txt","untitled folder":"NewFolder",Archive:"NewArchive",confirmReq:"Confirmation required",confirmRm:"Are you sure you want to remove files? This cannot be undone!",confirmRepl:"Replace old file with new one?",confirmConvUTF8:"Not in UTF-8 Convert to UTF-8? Contents become UTF-8 by saving after conversion.",confirmNotSave:"It has been modified. Losing work if you do not save changes.",apllyAll:"Apply to all",name:"Name",size:"Size",perms:"Permissions",modify:"Modified",kind:"Kind",read:"read",write:"write",noaccess:"no access",and:"and",unknown:"unknown",selectall:"Select all files",selectfiles:"Select file(s)",selectffile:"Select first file",selectlfile:"Select last file",viewlist:"List view",viewicons:"Icons view",places:"Places",calc:"Calculate",path:"Path",aliasfor:"Alias for",locked:"Locked",dim:"Dimensions",files:"Files",folders:"Folders",items:"Items",yes:"yes",no:"no",link:"Link",searcresult:"Search results",selected:"selected items",about:"About",shortcuts:"Shortcuts",help:"Help",webfm:"Web file manager",ver:"Version",protocolver:"protocol version",homepage:"Project home",docs:"Documentation",github:"Fork us on Github",twitter:"Follow us on twitter",facebook:"Join us on facebook",team:"Team",chiefdev:"chief developer",developer:"developer",contributor:"contributor",maintainer:"maintainer",translator:"translator",icons:"Icons",dontforget:"and don't forget to take your towel",shortcutsof:"Shortcuts disabled",dropFiles:"Drop files here",or:"or",selectForUpload:"Select files to upload",moveFiles:"Move files",copyFiles:"Copy files",rmFromPlaces:"Remove from places",aspectRatio:"Aspect ratio",scale:"Scale",width:"Width",height:"Height",resize:"Resize",crop:"Crop",rotate:"Rotate","rotate-cw":"Rotate 90 degrees CW","rotate-ccw":"Rotate 90 degrees CCW",degree:"°",netMountDialogTitle:"Mount network volume",protocol:"Protocol",host:"Host",port:"Port",user:"User",pass:"Password",confirmUnmount:"Are you unmount $1?",dropFilesBrowser:"Drop or Paste files from browser",dropPasteFiles:"Drop or Paste files here",encoding:"Encoding",locale:"Locale",searchTarget:"Target: $1",searchMime:"Search by input MIME Type",owner:"Owner",group:"Group",other:"Other",execute:"Execute",perm:"Permission",mode:"Mode",emptyFolder:"Folder is empty",emptyFolderDrop:"Folder is empty\\A Drop to add items",emptyFolderLTap:"Folder is empty\\A Long tap to add items",quality:"Quality",autoSync:"Auto sync",kindUnknown:"Unknown",kindFolder:"Folder",kindAlias:"Alias",kindAliasBroken:"Broken alias",kindApp:"Application",kindPostscript:"Postscript document",kindMsOffice:"Microsoft Office document",kindMsWord:"Microsoft Word document",kindMsExcel:"Microsoft Excel document",kindMsPP:"Microsoft Powerpoint presentation",kindOO:"Open Office document",kindAppFlash:"Flash application",kindPDF:"Portable Document Format (PDF)",kindTorrent:"Bittorrent file",kind7z:"7z archive",kindTAR:"TAR archive",kindGZIP:"GZIP archive",kindBZIP:"BZIP archive",kindXZ:"XZ archive",kindZIP:"ZIP archive",kindRAR:"RAR archive",kindJAR:"Java JAR file",kindTTF:"True Type font",kindOTF:"Open Type font",kindRPM:"RPM package",kindText:"Text document",kindTextPlain:"Plain text",kindPHP:"PHP source",kindCSS:"Cascading style sheet",kindHTML:"HTML document",kindJS:"Javascript source",kindRTF:"Rich Text Format",kindC:"C source",kindCHeader:"C header source",kindCPP:"C++ source",kindCPPHeader:"C++ header source",kindShell:"Unix shell script",kindPython:"Python source",kindJava:"Java source",kindRuby:"Ruby source",kindPerl:"Perl script",kindSQL:"SQL source",kindXML:"XML document",kindAWK:"AWK source",kindCSV:"Comma separated values",kindDOCBOOK:"Docbook XML document",kindMarkdown:"Markdown text",kindImage:"Image",kindBMP:"BMP image",kindJPEG:"JPEG image",kindGIF:"GIF Image",kindPNG:"PNG Image",kindTIFF:"TIFF image",kindTGA:"TGA image",kindPSD:"Adobe Photoshop image",kindXBITMAP:"X bitmap image",kindPXM:"Pixelmator image",kindAudio:"Audio media",kindAudioMPEG:"MPEG audio",kindAudioMPEG4:"MPEG-4 audio",kindAudioMIDI:"MIDI audio",kindAudioOGG:"Ogg Vorbis audio",kindAudioWAV:"WAV audio",AudioPlaylist:"MP3 playlist",kindVideo:"Video media",kindVideoDV:"DV movie",kindVideoMPEG:"MPEG movie",kindVideoMPEG4:"MPEG-4 movie",kindVideoAVI:"AVI movie",kindVideoMOV:"Quick Time movie",kindVideoWM:"Windows Media movie",kindVideoFlash:"Flash movie",kindVideoMKV:"Matroska movie",kindVideoOGG:"Ogg movie"}}),e.fn.elfinderbutton=function(t){return this.each(function(){var n,i="class",a=t.fm,r=a.res(i,"disabled"),o=a.res(i,"active"),s=a.res(i,"hover"),l="elfinder-button-menu-item",d="elfinder-button-menu-item-selected",c=e(this).addClass("ui-state-default elfinder-button").attr("title",t.title).append(' ').hover(function(e){!c.hasClass(r)&&c["mouseleave"==e.type?"removeClass":"addClass"](s)}).click(function(e){c.hasClass(r)||(n&&t.variants.length>1?(n.is(":hidden")&&t.fm.getUI().click(),e.stopPropagation(),n.slideToggle(100)):t.exec())}),u=function(){n.hide()};e.isArray(t.variants)&&(c.addClass("elfinder-menubutton"),n=e('').hide().appendTo(c).zIndex(12+c.zIndex()).on("mouseenter mouseleave","."+l,function(){e(this).toggleClass(s)}).on("click","."+l,function(i){i.preventDefault(),i.stopPropagation(),c.removeClass(s),n.hide(),t.exec(t.fm.selected(),e(this).data("value"))}),t.fm.bind("disable select",u).getUI().click(u),t.change(function(){n.html(""),e.each(t.variants,function(i,a){n.append(e(''+a[1]+"
").data("value",a[0]).addClass(a[0]==t.value?d:""))})})),t.change(function(){t.disabled()?c.removeClass(o+" "+s).addClass(r):(c.removeClass(r),c[t.active()?"addClass":"removeClass"](o))}).change()})},e.fn.elfindercontextmenu=function(t){return this.each(function(){var n=e(this),i="elfinder-contextmenu-item",a="elfinder-contextsubmenu-item",r="elfinder-contextmenu-extra-icon",o=n.addClass("ui-helper-reset ui-widget ui-state-default ui-corner-all elfinder-contextmenu elfinder-contextmenu-"+t.direction).hide().appendTo("body").on("mouseenter mouseleave","."+i,function(t){e(this).toggleClass("ui-state-hover","mouseenter"===t.type)}).on("mouseenter mouseleave","."+r,function(t){e(this).parent().toggleClass("ui-state-hover","mouseleave"===t.type)}).on("contextmenu",function(){return!1}),s="ltr"==t.direction?"left":"right",l=e.extend({},t.options.contextmenu),d=i+(t.UA.Touch?" elfinder-touch":""),c='{label}
',u=function(t,n,i){return e(c.replace("{icon}",n?"elfinder-button-icon-"+n:"").replace("{label}",t)).click(function(e){e.stopPropagation(),e.preventDefault(),i()})},p=function(n,i){var a=e(window),r=o.outerWidth(),l=o.outerHeight(),d=a.width(),c=a.height(),u=a.scrollTop(),p=a.scrollLeft(),h=t.UA.Touch?10:0,f={top:c>i-u+h+l?i+h:i-h-l>0?i-h-l:i+h,left:d>n-p+h+r?n+h:n-h-r,"z-index":100+t.getUI("workzone").zIndex()};o.css(f).show(),f={"z-index":f["z-index"]+10},f[s]=parseInt(o.width()),o.find(".elfinder-contextmenu-sub").css(f)},h=function(){o.hide().empty()},f=function(i,r){var s=!1,c={},p=[],f=0===r[0].indexOf(t.cwd().volumeid,0);n.data("cmdMaps")&&e.each(n.data("cmdMaps"),function(e,t){return 0==r[0].indexOf(e,0)?(c=t,!1):void 0}),f||t.disabledCmds&&e.each(t.disabledCmds,function(e,t){return 0==r[0].indexOf(e,0)?(p=t,!1):void 0}),e.each(l[i]||[],function(n,l){var m,g,v,y,b;if("|"==l&&s)return o.append(''),s=!1,void 0;if(c[l]&&(l=c[l]),m=t.command(l),m&&!f&&(b=m._disabled,m._disabled=!(m.alwaysEnabled||(t._commands[l]?-1===e.inArray(l,p):!1))),m&&-1!=m.getstate(r)){if(r._type=i,m.variants){if(!m.variants.length)return;g=u(m.title,m.name,function(){}).on("touchend",function(){g.data("touching",!0),setTimeout(function(){g.data("touching",!1)},50)}).on("click touchend","."+a,function(t){t.stopPropagation(),g.data("touching")?(g.data("touching",!1),e(this).removeClass("ui-state-hover"),t.preventDefault()):"click"==t.type&&(o.hide(),m.exec(r,e(this).data("exec")))}),v=e('').appendTo(g.append('')),y=function(){var t,n,i,a=e(window),r=e(g).offset().left,o=e(g).offset().top,s=e(g).outerWidth(),l=v.outerWidth(),d=v.outerHeight(),c=a.scrollLeft()+a.width(),u=a.scrollTop()+a.height(),p=5;i=r+s+l+p-c,t=i>0?s-i:s,i=o+5+d+p-u,n=i>0?5-i:5;var h={left:t,top:n};v.css(h).toggle()},g.addClass("elfinder-contextmenu-group").hover(function(){y()}),e.each(m.variants,function(t,n){v.append(e(''+n[1]+"
").data("exec",n[0]))})}else g=u(m.title,m.name,function(){h(),m.exec(r)}),m.extra&&m.extra.node?g.append(e('').append(m.extra.node)):g.remove(".elfinder-contextmenu-extra-icon");o.append(g),s=!0}m&&!f&&(m._disabled=b)})},m=function(t){e.each(t,function(e,t){var n;t.label&&"function"==typeof t.callback&&(n=u(t.label,t.icon,function(){h(),t.callback()}),o.append(n))})};t.one("load",function(){t.bind("contextmenu",function(e){var t=e.data;h(),t.type&&t.targets?f(t.type,t.targets):t.raw&&m(t.raw),o.children().length&&p(t.x,t.y)}).one("destroy",function(){o.remove()}).bind("disable select",function(){!n.data("mouseEvInternal")&&h(),n.data("mouseEvInternal",!1)}).getUI().click(h)})})},e.fn.elfindercwd=function(t,n){return this.not(".elfinder-cwd").each(function(){var i=t.UA.Mobile,a="list"==t.viewType,r="select."+t.namespace,o="unselect."+t.namespace,s="disable."+t.namespace,l="enable."+t.namespace,d="class",c=t.res(d,"cwdfile"),u="."+c,p="ui-selected",h=t.res(d,"disabled"),f=t.res(d,"draggable"),m=t.res(d,"droppable"),g=t.res(d,"hover"),v=t.res(d,"adroppable"),y=c+"-tmp",b=t.options.loadTmbs>0?t.options.loadTmbs:5,w="",x=[],k=function(){for(var e="",n=t.options.uiOptions.cwd.listView.columns,i=0;i{"+n[i]+"}";return e},C={icon:'',row:' {marker}{name}
'+k()+" "},T=t.res("tpl","perms"),I=t.res("tpl","lock"),F=t.res("tpl","symlink"),M={id:function(e){return t.cwdHash2Id(e.hash)},name:function(e){return name=t.escape(e.name),!a&&(name=name.replace(/([_.])/g,"$1")),name},nametitle:function(e){return t.escape(e.name)},permsclass:function(e){return t.perms2class(e)},perm:function(e){return t.formatPermissions(e)},dirclass:function(e){return"directory"==e.mime?"directory":""},mime:function(e){return t.mime2class(e.mime)},size:function(e){return t.formatSize(e.size)},date:function(e){return t.formatDate(e)},kind:function(e){return t.mime2kind(e)},mode:function(e){return e.perm?t.formatFileMode(e.perm):""},modestr:function(e){return e.perm?t.formatFileMode(e.perm,"string"):""},modeoct:function(e){return e.perm?t.formatFileMode(e.perm,"octal"):""},modeboth:function(e){return e.perm?t.formatFileMode(e.perm,"both"):""},marker:function(e){return(e.alias||"symlink-broken"==e.mime?F:"")+(e.read&&e.write?"":T)+(e.locked?I:"")},tooltip:function(e){var n=t.formatDate(e)+(e.size>0?" ("+t.formatSize(e.size)+")":""),i="";return i=w&&e.path?t.escape(e.path.replace(/\/[^\/]*$/,"")):e.tooltip?t.escape(e.tooltip).replace(/\r/g,"
"):"",i?i+"
"+n:n}},P=function(e){return C[a?"row":"icon"].replace(/\{([a-z]+)\}/g,function(t,n){return M[n]?M[n](e):e[n]?e[n]:""})},A=!1,S=function(t,n){function i(e,t){return e[t+"All"]("[id]:not(."+h+"):not(.elfinder-cwd-parent):first")}var s,l,d,c,u,f=e.ui.keyCode,m=t==f.LEFT||t==f.UP,g=Q.find("[id]."+p);if(g.length)if(s=g.filter(m?":first":":last"),d=i(s,m?"prev":"next"),d.length)if(a||t==f.LEFT||t==f.RIGHT)l=d;else if(c=s.position().top,u=s.position().left,l=s,m){do l=l.prev("[id]");while(l.length&&!(l.position().topc&&l.position().left>=u));l.hasClass(h)&&(l=i(l,"prev")),l.length||(d=Q.find("[id]:not(."+h+"):last"),d.position().top>c&&(l=d))}else l=s;else l=Q.find("[id]:not(."+h+"):not(.elfinder-cwd-parent):"+(m?"last":"first"));l&&l.length&&!l.hasClass("elfinder-cwd-parent")&&(n?l=s.add(s[m?"prevUntil":"nextUntil"]("#"+l.attr("id"))).add(l):g.trigger(o),l.trigger(r),j(l.filter(m?":first":":last")),E())},z=[],D=function(n){e("#"+t.cwdHash2Id(n)).trigger(r)},O=function(){var n=t.cwd().hash;Q.find("[id]:not(."+p+"):not(.elfinder-cwd-parent)").trigger(r),z=e.map(t.files(),function(e){return e.phash==n?e.hash:null}),E()},U=function(){A=!1,z=[],Q.find("[id]."+p).trigger(o),E()},E=function(){t.trigger("select",{selected:z})},j=function(e){var t=e.position().top,n=e.outerHeight(!0),i=Z.scrollTop(),a=Z.innerHeight();t+n>i+a?Z.scrollTop(parseInt(t+n-a)):i>t&&Z.scrollTop(t)},H=[],R=function(e){for(var t=H.length;t--;)if(H[t].hash==e)return t;return-1},_="scroll."+t.namespace,N={filter:u,stop:E,delay:250,selected:function(t,n){e(n.selected).trigger(r)},unselected:function(t,n){e(n.unselected).trigger(o)}},q=function(){var n=function(){var o,s,l=[],d=!1,c=[],u={},h=H._last||Q.find("[id]:last"),f=!h.length,m=H._place||(a?Q.children("table").children("tbody"):Q);if(f&&(Z._top=0),Z._mousedown&&Z._top!=Z.scrollTop())return Z._top=Z.scrollTop(),setTimeout(function(){n()},50),void 0;if(delete H._timer,!H.length)return et.hide(),Z.off(_);for(;(!h.length||(o=h.position().top-(Z.height()+Z.scrollTop()+t.options.showThreshold))<=0)&&(s=H.splice(0,t.options.showFiles-(o||0)/(H._hpi||1))).length&&(l=e.map(s,function(e){return e.hash&&e.name?("directory"==e.mime&&(d=!0),e.tmb&&(1===e.tmb?c.push(e.hash):u[e.hash]=e.tmb),P(e)):null}),(f||!H.length)&&et.hide(),m.append(l.join("")),h=Q.find("[id]:last"),f&&Z.scrollTop(0),(f||!H._hpi)&&X(m,s.length),!f););H._last=h,V(u),c.length&&W(c),d&&!i&&$(),z.length&&m.find("[id]:not(."+p+"):not(.elfinder-cwd-parent)").each(function(){var n=t.cwdId2Hash(this.id);-1!==e.inArray(n,z)&&e(this).trigger(r)})};H._timer&&clearTimeout(H._timer),!H._timer&&n(),H._timer=setTimeout(function(){n()},100)},L=e.extend({},t.droppable,{over:function(n,i){var a,r,o,s=e(this),l=i.helper,c=n.shiftKey||n.ctrlKey||n.metaKey;return n.stopPropagation(),l.data("dropover",l.data("dropover")+1),s.data("dropover",!0),l.data("namespace")!==t.namespace?(s.removeClass(v),!1):(s.hasClass(t.res(d,"cwdfile"))?(a=t.cwdId2Hash(s.attr("id")),s.data("dropover",a)):(a=t.cwd().hash,t.cwd().write&&s.data("dropover",a)),o=t.file(l.data("files")[0]).phash===a,s.data("dropover")===a?e.each(l.data("files"),function(e,t){return t===a||o&&!c&&!l.hasClass("elfinder-drag-helper-plus")?(s.removeClass(v),!1):void 0}):s.removeClass(v),l.data("locked")||o?r="elfinder-drag-helper-plus":(r="elfinder-drag-helper-move",c&&(r+=" elfinder-drag-helper-plus")),s.hasClass(v)&&l.addClass(r),setTimeout(function(){s.hasClass(v)&&l.addClass(r)},20),void 0)},out:function(t,n){var i=n.helper;t.stopPropagation(),i.removeClass("elfinder-drag-helper-move elfinder-drag-helper-plus").data("dropover",Math.max(i.data("dropover")-1,0)),e(this).removeData("dropover").removeClass(v)},deactivate:function(){e(this).removeData("dropover").removeClass(v)}}),$=function(){var e=Q.find(".directory:not(."+m+",.elfinder-na,.elfinder-ro)");t.isCommandEnabled("paste")&&e.droppable(L),t.isCommandEnabled("upload")&&e.addClass("native-droppable")},V=function(n){var i,a=t.option("tmbUrl"),r=!0;return e.each(n,function(n,o){var s=e("#"+t.cwdHash2Id(n));s.length?function(t,n){e(" ").load(function(){t.find(".elfinder-cwd-icon").css("background","url('"+n+"') center center no-repeat")}).attr("src",n)}(s,t.tmbUrls._search?t.tmb(n):a+o):(r=!1,-1!=(i=R(n))&&(H[i].tmb=o))}),r},W=function(e){var n=[];return t.oldAPI?(t.request({data:{cmd:"tmb",current:t.cwd().hash},preventFail:!0}).done(function(e){V(e.images||[])&&e.tmb&&W()}),void 0):(n=n=e.splice(0,b),n.length&&t.request({data:{cmd:"tmb",targets:n},preventFail:!0}).done(function(t){V(t.images||[])&&W(e)}),void 0)},B=function(n){var r,o,s,l,d=a?Q.find("tbody"):Q,c=n.length,u=[],p={},h=!1,f=function(e){for(var n,i=Q.find("[id]:first");i.length;){if(n=t.file(t.cwdId2Hash(i.attr("id"))),!i.hasClass("elfinder-cwd-parent")&&n&&t.compare(e,n)<0)return i;i=i.next("[id]")}},m=function(e){var n,i=H.length;for(n=0;i>n;n++)if(t.compare(e,H[n])<0)return n;return i||-1};for(c&&Z.removeClass("elfinder-cwd-wrapper-empty");c--;)r=n[c],o=r.hash,e("#"+t.cwdHash2Id(o)).length||((s=f(r))&&s.length?s.before(P(r)):(l=m(r))>=0?H.splice(l,0,r):d.append(P(r)),e("#"+t.cwdHash2Id(o)).length&&("directory"==r.mime?h=!0:r.tmb&&(1===r.tmb?u.push(o):p[o]=r.tmb)));X(d),V(p),u.length&&W(u),h&&!i&&$()},K=function(n){for(var i,a,r,o=n.length;o--;)if(i=n[o],(a=e("#"+t.cwdHash2Id(i))).length)try{a.remove()}catch(s){t.debug("error",s)}else-1!=(r=R(i))&&H.splice(r,1);Q.children().length<1&&(Z.addClass("elfinder-cwd-wrapper-empty"),Q.hide(),setTimeout(function(){Q.show()},0))},J={name:t.i18n("name"),perm:t.i18n("perms"),date:t.i18n("modify"),size:t.i18n("size"),kind:t.i18n("kind"),modestr:t.i18n("mode"),modeoct:t.i18n("mode"),modeboth:t.i18n("mode")},G=function(){for(var n="",i="",a=t.options.uiOptions.cwd.listView.columns,r=e.extend({},J,t.options.uiOptions.cwd.listView.columnsCustomName),o=0;o'+n+"";return i},X=function(e,t){var n;e=e||(a?Q.find("tbody"):Q),H.length>0&&(e.css({height:"auto"}),n=e.height(),t&&(H._hpi=n/t),et.css({top:H._hpi*H.length+n+"px"}).show())
-},Y=function(i,r){var o=t.cwd().hash;U();try{Q.empty()}catch(s){Q.html("")}if(Q.removeClass("elfinder-cwd-view-icons elfinder-cwd-view-list").addClass("elfinder-cwd-view-"+(a?"list":"icons")),Q.css("height","auto"),et.hide(),Z[a?"addClass":"removeClass"]("elfinder-cwd-wrapper-list"),Z._padding=parseInt(Z.css("padding-top"))+parseInt(Z.css("padding-bottom")),a&&Q.html('"),H=e.map(i,function(e){return r||e.phash==o?e:null}),H=t.sortFiles(H),Z[!r&&H.length<1?"addClass":"removeClass"]("elfinder-cwd-wrapper-empty").on(_,q).trigger(_),o=t.cwd().phash,n.oldSchool&&o&&!w){var l=e.extend(!0,{},t.file(o),{name:"..",mime:"directory"});l=e(P(l)).addClass("elfinder-cwd-parent").bind("mousedown click mouseup touchstart touchmove touchend dblclick mouseenter",function(e){e.preventDefault(),e.stopPropagation()}).dblclick(function(){t.exec("open",t.cwdId2Hash(this.id))}),(a?Q.find("tbody"):Q).prepend(l)}r||!t.cwd().write?Z.removeClass("native-droppable").droppable("disable"):(Z[t.isCommandEnabled("upload")?"addClass":"removeClass"]("native-droppable"),Z.droppable("enable"))},Q=e(this).addClass("ui-helper-clearfix elfinder-cwd").attr("unselectable","on").on("click."+t.namespace,u,function(n){var i,a=this.id?e(this):e(this).parents("[id]:first"),s=a.prevAll("."+p+":first"),l=a.nextAll("."+p+":first"),d=s.length,c=l.length;if(Q.data("longtap"))return n.stopPropagation(),void 0;if(n.stopImmediatePropagation(),n.shiftKey&&(d||c))i=d?a.prevUntil("#"+s.attr("id")):a.nextUntil("#"+l.attr("id")),i.add(a).trigger(r);else if(n.ctrlKey||n.metaKey)a.trigger(a.hasClass(p)?o:r);else{if(a.data("touching")&&a.hasClass(p))return a.data("touching",null),t.dblclick({file:t.cwdId2Hash(this.id)}),U(),void 0;U(),a.trigger(r)}E()}).on("dblclick."+t.namespace,u,function(){t.dblclick({file:t.cwdId2Hash(this.id)})}).on("touchstart."+t.namespace,u,function(n){if(n.stopPropagation(),"INPUT"!=n.target.nodeName&&"TEXTAREA"!=n.target.nodeName){var i=this.id?e(this):e(this).parents("[id]:first"),a=i.prevAll("."+p+":first").length+i.nextAll("."+p+":first").length;Q.data("longtap",null),i.addClass(g).data("touching",!0).data("tmlongtap",setTimeout(function(){Q.data("longtap",!0),i.hasClass(p)&&a>0?(i.trigger(o),E()):("TD"!=n.target.nodeName||t.selected().length>0)&&(i.trigger(r),E(),t.trigger("contextmenu",{type:"files",targets:t.selected(),x:n.originalEvent.touches[0].pageX,y:n.originalEvent.touches[0].pageY}))},500))}}).on("touchmove."+t.namespace+" touchend."+t.namespace,u,function(t){if(t.stopPropagation(),"INPUT"!=t.target.nodeName&&"TEXTAREA"!=t.target.nodeName){var n=this.id?e(this):e(this).parents("[id]:first");clearTimeout(n.data("tmlongtap")),"touchmove"==t.type&&n.removeClass(g)}}).on("mouseenter."+t.namespace,u,function(){var n=e(this),o=null,s=a?n:n.children("div.elfinder-cwd-file-wrapper,div.elfinder-cwd-filename");i||n.hasClass(y)||s.hasClass(f+" "+h)||s.on("mousedown",function(n){n.shiftKey&&!t.UA.IE&&Q.data("selectable")&&(Q.selectable("destroy").data("selectable",!1),setTimeout(function(){Q.selectable(N).data("selectable",!0)},10)),s.draggable("option","disabled",n.shiftKey),n.shiftKey?s.attr("draggable","true"):s.attr("draggable","false").draggable("option","cursorAt",{left:50-parseInt(e(n.currentTarget).css("margin-left")),top:47})}).on("dragstart",function(n){var i=n.dataTransfer||n.originalEvent.dataTransfer||null;if(o=null,i&&!t.UA.IE){var a,s=this.id?e(this):e(this).parents("[id]:first"),l=e(""),d="",c=null,u=null,p=[],h=function(n){var i,a=n.mime;return i='
',n.tmb&&1!==n.tmb&&(i=e(i).css("background","url('"+t.option("tmbUrl")+n.tmb+"') center center no-repeat").get(0).outerHTML),i},f=[];if(s.trigger(r),E(),e.each(z,function(n,i){var a=t.file(i),r=a.url;if(a&&"directory"!==a.mime){if(r){if("1"==r)return f.push(i),!0}else r=t.url(a.hash);r&&(r=t.convAbsUrl(r),p.push(i),e("").attr("href",r).text(r).appendTo(l),d+=r+"\n",c||(c=a.mime+":"+a.name+":"+r),u||(u=r+"\n"+a.name))}}),f.length)return e.each(f,function(e,n){var i=t.file(n);i.url="",t.request({data:{cmd:"url",target:n},notify:{type:"url",cnt:1},preventDefault:!0}).always(function(e){i.url=e.url?e.url:"1"})}),!1;if(!d)return!1;i.setDragImage&&(o=e('
').append(h(t.file(p[0]))).appendTo(e(document.body)),(a=p.length)>1&&o.append(h(t.file(p[a-1]))+''+a+" "),i.setDragImage(o.get(0),50,47)),i.effectAllowed="copyLink",i.setData("DownloadURL",c),i.setData("text/x-moz-url",u),i.setData("text/uri-list",d),i.setData("text/plain",d),i.setData("text/html",l.html()),i.setData("elfinderfrom",window.location.href+t.cwd().hash),i.setData("elfinderfrom:"+i.getData("elfinderfrom"),"")}}).on("dragend",function(){U(),o&&o.remove()}).draggable(t.draggable)}).on(r,u,function(){var n=e(this),i=t.cwdId2Hash(n.attr("id"));A||n.hasClass(h)||(n.addClass(p).children().addClass(g),-1===e.inArray(i,z)&&z.push(i))}).on(o,u,function(){var n,i=e(this),a=t.cwdId2Hash(i.attr("id"));A||(e(this).removeClass(p).children().removeClass(g),n=e.inArray(a,z),-1!==n&&z.splice(n,1))}).on(s,u,function(){var t=e(this).removeClass(g+" "+p).addClass(h),n=t.children(),i=a?t:n;n.removeClass(g+" "+p),t.hasClass(m)&&t.droppable("disable"),i.hasClass(f)&&i.draggable("disable")}).on(l,u,function(){var t=e(this).removeClass(h),n=a?t:t.children();t.hasClass(m)&&t.droppable("enable"),n.hasClass(f)&&n.draggable("enable")}).on("scrolltoview",u,function(){j(e(this))}).on("mouseenter."+t.namespace+" mouseleave."+t.namespace,u,function(n){t.trigger("hover",{hash:t.cwdId2Hash(e(this).attr("id")),type:n.type}),e(this).toggleClass(g,"mouseenter"==n.type)}).on("contextmenu."+t.namespace,function(n){var i=e(n.target).closest("."+c);i.length&&("TD"!=n.target.nodeName||e.inArray(t.cwdId2Hash(i.get(0).id),t.selected())>-1)&&(n.stopPropagation(),n.preventDefault(),i.hasClass(h)||i.data("touching")||(i.hasClass(p)||(U(),i.trigger(r),E()),t.trigger("contextmenu",{type:"files",targets:t.selected(),x:n.pageX,y:n.pageY})))}).on("click."+t.namespace,function(e){return Q.data("longtap")?(e.stopPropagation(),void 0):(!e.shiftKey&&!e.ctrlKey&&!e.metaKey&&U(),void 0)}).selectable(N).data("selectable",!0).on("create."+t.namespace,function(t,n){var i=a?Q.find("tbody"):Q,r=i.find(".elfinder-cwd-parent"),n=e(P(n)).addClass(y);U(),r.length?r.after(n):i.prepend(n),Q.parent().scrollTop(0)}).on("unselectall",U).on("selectfile",function(n,i){e("#"+t.cwdHash2Id(i)).trigger(r),E()}),Z=e('
').droppable(e.extend({},L,{autoDisable:!1})).on("contextmenu",function(e){e.preventDefault(),t.trigger("contextmenu",{type:"cwd",targets:[t.cwd().hash],x:e.pageX,y:e.pageY})}).on("touchstart."+t.namespace,function(n){var i=e(this);Q.data("longtap",null),i.data("touching",!0),i.data("tmlongtap",setTimeout(function(){Q.data("longtap",!0),t.trigger("contextmenu",{type:"cwd",targets:[t.cwd().hash],x:n.originalEvent.touches[0].pageX,y:n.originalEvent.touches[0].pageY})},500))}).on("touchmove."+t.namespace+" touchend."+t.namespace,function(){clearTimeout(e(this).data("tmlongtap"))}).on("mousedown",function(){Z._mousedown=!0}).on("mouseup",function(){Z._mousedown=!1}),et=e("
").css({position:"absolute",width:"1px",height:"1px"}).hide(),tt=null,nt=function(t){var n=function(){var t=0;Z.siblings("div.elfinder-panel:visible").each(function(){t+=e(this).outerHeight(!0)}),Z.height(at.height()-t-Z._padding)};t&&n(),tt&&clearTimeout(tt),tt=setTimeout(function(){!t&&n();var e,i;Q.css("height","auto"),e=Z[0].clientHeight-parseInt(Z.css("padding-top"))-parseInt(Z.css("padding-bottom")),i=Q.outerHeight(!0),e>i&&Q.height(e)},20)},it=e(this).parent().resize(nt),at=it.children(".elfinder-workzone").append(Z.append(this).append(et));e("body").on("touchstart touchmove touchend",function(){}),t.one("init",function(){var e,n=document.createElement("style");document.head.appendChild(n),e=n.sheet,e.insertRule('.elfinder-cwd-wrapper-empty .elfinder-cwd:after{ content:"'+t.i18n("emptyFolder")+'" }',0),e.insertRule('.ui-droppable.elfinder-cwd-wrapper-empty .elfinder-cwd:after{ content:"'+t.i18n("emptyFolder"+(i?"LTap":"Drop"))+'" }',1),e.insertRule('.ui-droppable.elfinder-cwd-wrapper-empty.ui-droppable-disabled .elfinder-cwd:after{ content:"'+t.i18n("emptyFolder")+'" }',2)}).bind("open",function(e){Y(e.data.files),nt()}).bind("search",function(e){x=e.data.files,Y(x,!0),Z.addClass("elfinder-search-result"),t.autoSync("stop"),nt()}).bind("searchend",function(e){x=[],w&&(w="",e.data&&e.data.noupdate||Y(t.files())),Z.removeClass("elfinder-search-result"),t.autoSync(),nt()}).bind("searchstart",function(e){w=e.data.query}).bind("sortchange",function(){Y(w?x:t.files(),!!w)}).bind("viewchange",function(){var n=t.selected(),i="list"==t.storage("view");i!=a&&(a=i,Y(w?x:t.files(),!!w),e.each(n,function(e,t){D(t)}),E()),nt()}).bind("resize",function(){var e=a?Q.find("tbody"):Q;nt(!0),X(e,e.find("[id]").length)}).bind("add",function(){nt()}).add(function(n){var i=t.cwd().hash,a=w?e.map(n.data.added||[],function(e){return-1===e.name.indexOf(w)?null:e}):e.map(n.data.added||[],function(e){return e.phash==i?e:null});B(a)}).change(function(n){var i=t.cwd().hash,a=t.selected();w?e.each(n.data.changed||[],function(t,n){K([n.hash]),-1!==n.name.indexOf(w)&&(B([n]),-1!==e.inArray(n.hash,a)&&D(n.hash))}):e.each(e.map(n.data.changed||[],function(e){return e.phash==i?e:null}),function(t,n){K([n.hash]),B([n]),-1!==e.inArray(n.hash,a)&&D(n.hash)}),E()}).remove(function(e){K(e.data.removed||[]),E()}).dragstart(function(t){var n=e(t.data.target),i=t.data.originalEvent;n.hasClass(u.substr(1))&&(n.hasClass(p)||(!(i.ctrlKey||i.metaKey||i.shiftKey)&&U(),n.trigger(r),E())),Q.selectable("disable").removeClass(h),A=!0}).dragstop(function(){Q.selectable("enable"),A=!1}).bind("lockfiles unlockfiles selectfiles unselectfiles",function(n){var i,a,d={lockfiles:s,unlockfiles:l,selectfiles:r,unselectfiles:o},c=d[n.type],u=n.data.files||[],p=u.length,h=n.data.helper||e();if(p>0&&(i=t.parents(u[0])),!h.data("locked")){for(;p--;)e("#"+t.cwdHash2Id(u[p])).trigger(c);E()}Z.data("dropover")&&-1!==i.indexOf(Z.data("dropover"))&&(a="lockfiles"!==n.type,h.toggleClass("elfinder-drag-helper-plus",a),Z.toggleClass(v,a))}).bind("mkdir mkfile duplicate upload rename archive extract paste multiupload",function(n){if("upload"!=n.type||!n.data._multiupload){var i=t.cwd().hash;U(),e.each(n.data.added||[],function(e,t){t&&t.phash==i&&D(t.hash)}),E()}}).shortcut({pattern:"ctrl+a",description:"selectall",callback:O}).shortcut({pattern:"left right up down shift+left shift+right shift+up shift+down",description:"selectfiles",type:"keydown",callback:function(e){S(e.keyCode,e.shiftKey)}}).shortcut({pattern:"home",description:"selectffile",callback:function(){U(),j(Q.find("[id]:first").trigger(r)),E()}}).shortcut({pattern:"end",description:"selectlfile",callback:function(){U(),j(Q.find("[id]:last").trigger(r)),E()}})}),this},e.fn.elfinderdialog=function(t){var n;return"string"==typeof t&&(n=this.closest(".ui-dialog")).length&&("open"==t?"none"==n.css("display")&&n.fadeIn(120,function(){n.trigger("open")}):"close"==t?"none"!=n.css("display")&&n.hide().trigger("close"):"destroy"==t?n.hide().remove():"toTop"==t?n.trigger("totop"):"posInit"==t&&n.trigger("posinit")),t=e.extend({},e.fn.elfinderdialog.defaults,t),this.filter(":not(.ui-dialog-content)").each(function(){var n=e(this).addClass("ui-dialog-content ui-widget-content"),i=n.parent(),a="elfinder-dialog-active",r="elfinder-dialog",o="elfinder-dialog-notify",s="ui-state-hover",l=parseInt(1e6*Math.random()),d=i.children(".elfinder-overlay"),c=e('
'),u=e('
').append(c),p=-1!=window.navigator.platform.indexOf("Win"),h=e('
').hide().append(n).appendTo(i).draggable({handle:".ui-dialog-titlebar",containment:"document",stop:function(){h.css({height:t.height})}}).css({width:t.width,height:t.height}).mousedown(function(t){t.stopPropagation(),e(document).mousedown(),h.hasClass(a)||(i.find("."+r+":visible").removeClass(a),h.addClass(a).zIndex(f()+1))}).on("open",function(){var a=e(this),s=a.outerWidth()>i.width()-10?i.width()-10:null;s&&a.css({width:s,left:"5px"}),h.trigger("totop"),"function"==typeof t.open&&e.proxy(t.open,n[0])(),h.hasClass(o)||i.find("."+r+":visible").not("."+o).each(function(){var t=e(this),n=parseInt(t.css("top")),i=parseInt(t.css("left")),a=parseInt(h.css("top")),r=parseInt(h.css("left"));t[0]==h[0]||n!=a&&i!=r||h.css({top:n+(s?15:10)+"px",left:(s?5:i+10)+"px"})})}).on("close",function(){var a=i.find(".elfinder-dialog:visible"),r=f();e(this).data("modal")&&d.elfinderoverlay("hide"),a.length?a.each(function(){var t=e(this);return t.zIndex()>=r?(t.trigger("totop"),!1):void 0}):setTimeout(function(){i.mousedown().click()},10),"function"==typeof t.close?e.proxy(t.close,n[0])():t.destroyOnClose&&h.hide().remove()}).on("totop",function(){e(this).mousedown().find(".ui-button:"+(p?"first":"last")).focus().end().find(":text:first").focus(),e(this).data("modal")&&d.is(":hidden")&&d.elfinderoverlay("show"),d.zIndex(e(this).zIndex())}).on("posinit",function(){var e=t.position;e||(e={top:Math.max(0,parseInt((i.height()-h.outerHeight())/2-42))+"px",left:Math.max(0,parseInt((i.width()-h.outerWidth())/2))+"px"}),h.css(e)}).data({modal:t.modal}),f=function(){var t=i.zIndex()+10;return i.find("."+r+":visible").each(function(){var n;this!=h[0]&&(n=e(this).zIndex(),n>t&&(t=n))}),t};h.trigger("posinit"),t.closeOnEscape&&e(document).on("keyup."+l,function(t){t.keyCode==e.ui.keyCode.ESCAPE&&h.hasClass(a)&&(n.elfinderdialog("close"),e(document).off("keyup."+l))}),h.prepend(e('").prepend(e(' ').mousedown(function(e){e.preventDefault(),n.elfinderdialog("close")}))),e.each(t.buttons,function(i,a){var r=e(''+i+" ").click(e.proxy(a,n[0])).hover(function(n){t.btnHoverFocus?e(this)["mouseenter"==n.type?"focus":"blur"]():e(this).toggleClass(s,"mouseenter"==n.type)}).focus(function(){e(this).addClass(s)}).blur(function(){e(this).removeClass(s)}).keydown(function(t){var n;t.keyCode==e.ui.keyCode.ENTER?e(this).click():t.keyCode==e.ui.keyCode.TAB||t.keyCode==e.ui.keyCode.RIGHT?(t.preventDefault(),n=e(this).next(".ui-button"),n.length?n.focus():e(this).parent().children(".ui-button:first").focus()):t.keyCode==e.ui.keyCode.LEFT&&(t.preventDefault(),n=e(this).prev(".ui-button"),n.length?n.focus():e(this).parent().children(".ui-button:last").focus())});p?c.append(r):c.prepend(r)}),c.children().length&&h.append(u),t.resizable&&e.fn.resizable&&h.resizable({minWidth:t.minWidth,minHeight:t.minHeight,alsoResize:this}),"function"==typeof t.create&&e.proxy(t.create,this)(),t.autoOpen&&n.elfinderdialog("open")}),this},e.fn.elfinderdialog.defaults={cssClass:"",title:"",modal:!1,resizable:!0,autoOpen:!0,closeOnEscape:!0,destroyOnClose:!1,buttons:{},btnHoverFocus:!0,position:null,width:320,height:"auto",minWidth:200,minHeight:110},e.fn.elfindernavbar=function(t,n){return this.not(".elfinder-navbar").each(function(){var i,a=e(this).addClass("ui-state-default elfinder-navbar"),r=a.parent().resize(function(){a.height(o.height()-s)}),o=r.children(".elfinder-workzone").append(a),s=a.outerHeight()-a.height(),l="ltr"==t.direction;if(e.fn.resizable){if(i=a.resizable({handles:l?"e":"w",minWidth:n.minWidth||150,maxWidth:n.maxWidth||500}).on("resize scroll",function(){var e=t.UA.Opera&&a.scrollLeft()?20:2;i.css({top:parseInt(a.scrollTop())+"px",left:l?"auto":parseInt(a.scrollLeft()+e),right:l?-1*parseInt(a.scrollLeft()-e):"auto"})}).find(".ui-resizable-handle").zIndex(a.zIndex()+10),t.UA.Touch){var d=function(){i.data("closed")?(i.data("closed",!1).css({backgroundColor:"transparent"}),a.css({width:i.data("width")}).trigger("resize")):(i.data("closed",!0).css({backgroundColor:"inherit"}),a.css({width:8})),i.data({startX:null,endX:null})};i.data({closed:!1,width:a.width()}).on("touchstart",function(e){i.data("startX",e.originalEvent.touches[0].pageX)}).on("touchmove",function(e){var t=e.originalEvent.touches[0].pageX,n=i.data("startX"),a=l?n&&t>n:n>t,r=l?n>t:n&&t>n;(a||r)&&d()}).on("touchend",function(){i.data("startX")&&d()}),t.UA.Mobile&&(i.data("defWidth",a.width()),e(window).on("resize",function(){var e=a.parent().width()/2;i.data("defWidth")>e?a.width(e):a.width(i.data("defWidth")),i.data("width",a.width())}))}t.one("open",function(){setTimeout(function(){a.trigger("resize")},150)})}}),this},e.fn.elfinderoverlay=function(t){if(this.filter(":not(.elfinder-overlay)").each(function(){t=e.extend({},t),e(this).addClass("ui-widget-overlay elfinder-overlay").hide().mousedown(function(e){e.preventDefault(),e.stopPropagation()}).data({cnt:0,show:"function"==typeof t.show?t.show:function(){},hide:"function"==typeof t.hide?t.hide:function(){}})}),"show"==t){var n=this.eq(0),i=n.data("cnt")+1,a=n.data("show");n.data("cnt",i),n.is(":hidden")&&(n.zIndex(n.parent().zIndex()+1),n.show(),a())}if("hide"==t){var n=this.eq(0),i=n.data("cnt")-1,r=n.data("hide");n.data("cnt",i),0==i&&n.is(":visible")&&(n.hide(),r())}return this},e.fn.elfinderpanel=function(t){return this.each(function(){var n=e(this).addClass("elfinder-panel ui-state-default ui-corner-all"),i="margin-"+("ltr"==t.direction?"left":"right");t.one("load",function(){var e=t.getUI("navbar");n.css(i,parseInt(e.outerWidth(!0))),e.on("resize",function(){n.is(":visible")&&n.css(i,parseInt(e.outerWidth(!0)))})})})},e.fn.elfinderpath=function(t){return this.each(function(){var n="",i="",a=[],r=e(this).addClass("elfinder-path").html(" ").on("click","a",function(i){var r=e(this).attr("href").substr(5);i.preventDefault(),r!=t.cwd().hash&&(n?t.exec("search",n,{target:r,mime:a.join(" ")}):t.exec("open",r))}).prependTo(t.getUI("statusbar").show());t.bind("open searchend parents",function(){var o=[];n="",i="",a=[],e.each(t.parents(t.cwd().hash),function(e,n){o.push(''+t.escape(t.file(n).name)+" ")}),r.html(o.join(t.option("separator")))}).bind("searchstart",function(e){e.data&&(n=e.data.query||"",i=e.data.target||"",a=e.data.mimes||[])}).bind("search",function(){var n=[],a="";i?(e.each(t.parents(i),function(e,i){n.push(''+t.escape(t.file(i).name)+" ")}),a=n.join(t.option("separator"))):a=t.i18n("btnAll"),r.html(t.i18n("searcresult")+": "+a)})})},e.fn.elfinderplaces=function(t,n){return this.each(function(){var i=[],a="class",r=t.res(a,"navdir"),o=t.res(a,"navcollapse"),s=t.res(a,"navexpand"),l=t.res(a,"hover"),d=t.res(a,"treeroot"),c=t.res(a,"adroppable"),u=t.res("tpl","navdir"),p=t.res("tpl","perms"),h=e(t.res("tpl","navspinner")),f="places"+(n.suffix?n.suffix:""),m=function(e){return e.substr(6)},g=function(e){return"place-"+e},v=function(){t.storage(f,i.join(","))},y=function(n){return e(u.replace(/\{id\}/,g(n.hash)).replace(/\{name\}/,t.escape(n.name)).replace(/\{cssclass\}/,(t.UA.Touch?"elfinder-touch ":"")+t.perms2class(n)).replace(/\{permissions\}/,n.read&&n.write?"":p).replace(/\{symlink\}/,""))},b=function(n){t.files().hasOwnProperty(n.hash)||t.trigger("tree",{tree:[n]});var a=y(n);C.children().length&&e.each(C.children(),function(){var t=e(this);return n.name.localeCompare(t.children("."+r).text())<0?!a.insertBefore(t):void 0}),i.push(n.hash),!a.parent().length&&C.append(a),k.addClass(o),a.draggable({appendTo:"body",revert:!1,helper:function(){var n=e(this);return n.children().removeClass("ui-state-hover"),e('
').append(n.clone()).data("hash",m(n.children(":first").attr("id")))},start:function(){e(this).hide()},stop:function(t,n){var i=T.offset().top,a=T.offset().left,r=T.width(),o=T.height(),s=t.pageX,l=t.pageY;s>a&&a+r>s&&l>i&&l+o>l?e(this).show():(w(n.helper.data("hash")),v())}})},w=function(t){var n,a=e.inArray(t,i),r=null;return-1!==a&&(i.splice(a,1),n=C.find("#"+g(t)),n.length&&(r=n.text(),n.parent().remove(),!C.children().length&&k.removeClass(o+" "+s))),r},x=y({hash:"root-"+t.namespace,name:t.i18n(n.name,"places"),read:!0,write:!0}),k=x.children("."+r).addClass(d).click(function(e){e.stopPropagation(),k.hasClass(o)&&(T.toggleClass(s),C.slideToggle(),t.storage("placesState",T.hasClass(s)?1:0))}),C=x.children("."+t.res(a,"navsubtree")),T=e(this).addClass(t.res(a,"tree")+" elfinder-places ui-corner-all").hide().append(x).appendTo(t.getUI("navbar")).on("mouseenter mouseleave","."+r,function(t){e(this).toggleClass("ui-state-hover","mouseenter"==t.type)}).on("click","."+r,function(n){var i=e(this);return i.data("longtap")?(n.stopPropagation(),void 0):(t.exec("open",i.attr("id").substr(6)),void 0)}).on("contextmenu","."+r+":not(."+d+")",function(n){var i=e(this).attr("id").substr(6);n.preventDefault(),t.trigger("contextmenu",{raw:[{label:t.i18n("rmFromPlaces"),icon:"rm",callback:function(){w(i),v()}}],x:n.pageX,y:n.pageY})}).droppable({tolerance:"pointer",accept:".elfinder-cwd-file-wrapper,.elfinder-tree-dir,.elfinder-cwd-file",hoverClass:t.res("class","adroppable"),over:function(n,a){var r=a.helper,o=e.map(r.data("files"),function(n){return"directory"===t.file(n).mime&&-1===e.inArray(n,i)?n:null});e(this).data("dropover")||(e(this).data("dropover",!0),o.length>0?r.addClass("elfinder-drag-helper-plus"):e(this).removeClass(c),t.trigger("unlockfiles",{files:r.data("files"),helper:r}))},out:function(n,i){var a=i.helper;e(this).removeData("dropover").removeClass(c),t.trigger("unlockfiles",{files:a.data("files"),helper:a})},drop:function(n,a){var r=a.helper,o=!0;e.each(r.data("files"),function(n,a){var r=t.file(a);r&&"directory"==r.mime&&-1===e.inArray(r.hash,i)?b(r):o=!1}),v(),o&&r.hide()}}).on("touchstart","."+r+":not(."+d+")",function(n){var i=e(this).attr("id").substr(6),a=e(this).addClass(l).data("longtap",null).data("tmlongtap",setTimeout(function(){a.data("longtap",!0),t.trigger("contextmenu",{raw:[{label:t.i18n("rmFromPlaces"),icon:"rm",callback:function(){w(i),v()}}],x:n.originalEvent.touches[0].pageX,y:n.originalEvent.touches[0].pageY})},500))}).on("touchmove touchend","."+r+":not(."+d+")",function(t){clearTimeout(e(this).data("tmlongtap")),"touchmove"==t.type&&e(this).removeClass(l)});e(this).on("regist",function(t,n){e.each(n,function(t,n){n&&"directory"==n.mime&&-1===e.inArray(n.hash,i)&&b(n)}),v()}),t.one("load",function(){t.oldAPI||(T.show().parent().show(),i=e.map((t.storage(f)||"").split(","),function(e){return e||null}),i.length&&(k.prepend(h),t.request({data:{cmd:"info",targets:i},preventDefault:!0}).done(function(n){i=[],e.each(n.files,function(e,t){"directory"==t.mime&&b(t)}),v(),t.storage("placesState")>0&&k.click()}).always(function(){h.remove()})),t.change(function(t){e.each(t.data.changed,function(t,n){-1!==e.inArray(n.hash,i)&&(w(n.hash),"directory"==n.mime&&b(n))}),v()}).bind("rm paste",function(t){var n=[];t.data.removed&&e.each(t.data.removed,function(e,t){var i=w(t);i&&n.push(i)}),t.data.added&&n.length&&e.each(t.data.added,function(t,i){1!==e.inArray(i.name,n)&&"directory"==i.mime&&b(i)}),v()}).bind("sync",function(){i.length&&(k.prepend(h),t.request({data:{cmd:"info",targets:i},preventDefault:!0}).done(function(n){e.each(n.files||[],function(n,a){-1===e.inArray(a.hash,i)&&w(a.hash),t.files().hasOwnProperty(a.hash)||t.trigger("tree",{tree:[a]})}),v()}).always(function(){h.remove()}))}))})})},e.fn.elfindersearchbutton=function(t){return this.each(function(){var n=!1,i=t.fm,a=function(e){return i.namespace+e},r=i.getUI("toolbar"),o=i.res("class","searchbtn"),s=e(this).hide().addClass("ui-widget-content elfinder-button "+o),l=function(){u.slideUp();var r=e.trim(c.val()),o=!e("#"+a("SearchFromAll")).prop("checked"),s=e("#"+a("SearchMime")).prop("checked");o&&(o=e("#"+a("SearchFromVol")).prop("checked")?i.root(i.cwd().hash):i.cwd().hash),s&&(s=r,r="."),r?t.exec(r,o,s).done(function(){n=!0,c.focus()}):i.trigger("searchend")},d=function(){u.slideUp(),c.val(""),n&&(n=!1,i.trigger("searchend"))},c=e(' ').focus(function(){u.slideDown()}).blur(function(){u.data("infocus")?u.data("infocus",!1):u.slideUp()}).appendTo(s).keypress(function(e){e.stopPropagation()}).keydown(function(e){e.stopPropagation(),13==e.keyCode&&l(),27==e.keyCode&&(e.preventDefault(),d())}),u=e('').append(e('
').append(e(''+i.i18n("btnCwd")+" ")).append(e(''+i.i18n("btnVolume")+" ")).append(e(''+i.i18n("btnAll")+" "))).append(e('
').append(e(''+i.i18n("btnFileName")+" ")).append(e(''+i.i18n("btnMime")+" "))).hide().zIndex(12+s.zIndex()).css("overflow","hidden").appendTo(s);e(' ').appendTo(s).click(l),e(' ').appendTo(s).click(d),e(function(){u.find("div.buttonset").buttonset(),e("#"+a("SearchFromAll")).next("label").attr("title",i.i18n("searchTarget",i.i18n("btnAll"))),e("#"+a("SearchMime")).next("label").attr("title",i.i18n("searchMime")),u.find("input").on("mousedown",function(){u.data("infocus",!0)}).on("click",function(){e.trim(c.val())&&l()})}),r.on("load",function(){var e=s.parent();if(e.length){if(r.children("."+o).remove(),r.prepend(s.show()),e.remove(),i.UA.ltIE7){var t=s.children("ltr"==i.direction?".ui-icon-close":".ui-icon-search");t.css({right:"",left:parseInt(s.width())-t.outerWidth(!0)})}i.resize()}}),i.select(function(){c.blur()}).bind("searchend",function(){c.val("")}).bind("open parents",function(){var t=[],n=i.file(i.root(i.cwd().hash));n&&(e.each(i.parents(i.cwd().hash),function(e,n){t.push(i.file(n).name)}),e("#"+a("SearchFromCwd")).next("label").attr("title",i.i18n("searchTarget",t.join(i.option("separator")))),e("#"+a("SearchFromVol")).next("label").attr("title",i.i18n("searchTarget",n.name)))}).shortcut({pattern:"ctrl+f f3",description:t.title,callback:function(){c.select().focus()}})})},e.fn.elfindersortbutton=function(t){return this.each(function(){var n=t.fm,i=t.name,a="class",r=n.res(a,"disabled"),o=n.res(a,"hover"),s="elfinder-button-menu-item",l=s+"-selected",d=l+"-asc",c=l+"-desc",u=e(this).addClass("ui-state-default elfinder-button elfinder-menubutton elfiner-button-"+i).attr("title",t.title).append(' ').hover(function(){!u.hasClass(r)&&u.toggleClass(o)}).click(function(e){u.hasClass(r)||(e.stopPropagation(),p.is(":hidden")&&t.fm.getUI().click(),p.slideToggle(100))}),p=e('').hide().appendTo(u).zIndex(12+u.zIndex()).on("mouseenter mouseleave","."+s,function(){e(this).toggleClass(o)}).on("click","."+s,function(e){e.preventDefault(),e.stopPropagation(),f()}),h=function(){p.children(":not(:last)").removeClass(l+" "+d+" "+c).filter('[rel="'+n.sortType+'"]').addClass(l+" "+("asc"==n.sortOrder?d:c)),p.children(":last").toggleClass(l,n.sortStickFolders)},f=function(){p.hide()};e.each(n.sortRules,function(t){p.append(e(' '+n.i18n("sort"+t)+"
").data("type",t))}),p.children().click(function(){var i=e(this).attr("rel");t.exec([],{type:i,order:i==n.sortType?"asc"==n.sortOrder?"desc":"asc":n.sortOrder,stick:n.sortStickFolders})}),e(' '+n.i18n("sortFoldersFirst")+"
").appendTo(p).click(function(){t.exec([],{type:n.sortType,order:n.sortOrder,stick:!n.sortStickFolders})}),n.bind("disable select",f).getUI().click(f),n.bind("sortchange",h),p.children().length>1?t.change(function(){u.toggleClass(r,t.disabled()),h()}).change():u.addClass(r)})},e.fn.elfinderstat=function(t){return this.each(function(){var n=e(this).addClass("elfinder-stat-size"),i=e('
').on("click","a",function(n){var i=e(this).data("hash");n.preventDefault(),t.exec("opendir",[i])}),a=t.i18n("size").toLowerCase(),r=t.i18n("items").toLowerCase(),o=t.i18n("selected"),s=function(i,o){var s=0,l=0;e.each(i,function(e,t){o&&t.phash!=o||(s++,l+=parseInt(t.size)||0)}),n.html(r+": "+s+", "+a+": "+t.formatSize(l))},l=!1;t.getUI("statusbar").prepend(n).append(i).show(),t.bind("open reload add remove change searchend",function(){s(t.files(),t.cwd().hash)}).bind("searchend",function(){l=!1}).search(function(e){l=!0,s(e.data.files)}).select(function(){var n,r=0,s=0,d=t.selectedFiles(),c=[];return 1==d.length?(n=d[0],r=n.size,l&&c.push(''+(n.path?n.path.replace(/\/[^\/]*$/,""):"..")+" "),c.push(t.escape(n.name)),i.html(c.join("/")+(r>0?", "+t.formatSize(r):"")),void 0):(e.each(d,function(e,t){s++,r+=parseInt(t.size)||0}),i.html(s?o+": "+s+", "+a+": "+t.formatSize(r):" "),void 0)})})},e.fn.elfindertoolbar=function(t,n){return this.not(".elfinder-toolbar").each(function(){var i,a,r,o,s,l=t._commands,d=e(this).addClass("ui-helper-clearfix ui-widget-header ui-corner-top elfinder-toolbar"),c=n||[],u=null,p="";d.prev().length&&d.parent().prepend(this);var h=function(t){var n;for(d.empty(),i=c.length;i--;)if(c[i]){for(o=e('
'),a=c[i].length;a--;)n=c[i][a],t&&-1!==e.inArray(n,t)||!(r=l[n])||(s="elfinder"+r.options.ui,e.fn[s]&&o.prepend(e("
")[s](r)));o.children().length&&d.prepend(o),o.children(":gt(0)").before(' ')}d.children().length?d.show():d.hide(),d.trigger("load")};h(),t.bind("open sync",function(){var n=[],i=t.option("disabled");u&&u.toString()===i.sort().toString()||h(i&&i.length?i:null),u=i.concat().sort(),p!==JSON.stringify(t.commandMap)&&(p=JSON.stringify(t.commandMap),Object.keys(t.commandMap).length&&e.each(t.commandMap,function(i,a){var r=t._commands[a],o=r?"elfinder"+r.options.ui:null;if(o&&e.fn[o]){n.push(i);var s=e("div.elfinder-buttonset div.elfinder-button").has("span.elfinder-button-icon-"+i);s.length&&!s.next().has("span.elfinder-button-icon-"+a).length&&(s.after(e("
")[o](t._commands[a]).data("origin",i)),s.hide())}}),e.each(e("div.elfinder-button"),function(){var t=e(this).data("origin");t&&-1==e.inArray(t,n)&&(e("span.elfinder-button-icon-"+e(this).data("origin")).parent().show(),e(this).remove())}))})}),this},e.fn.elfindertree=function(t,n){var i=t.res("class","tree");return this.not("."+i).each(function(){var a="class",r=t.UA.Mobile,o=t.res(a,"treeroot"),s=n.openRootOnLoad,l=n.openCwdOnOpen,d=t.res(a,"navsubtree"),c=t.res(a,"treedir"),u="span."+c,p=t.res(a,"navcollapse"),h=t.res(a,"navexpand"),f="elfinder-subtree-loaded",m=t.res(a,"navarrow"),g=t.res(a,"active"),v=t.res(a,"adroppable"),y=t.res(a,"hover"),b=t.res(a,"disabled"),w=t.res(a,"draggable"),x=t.res(a,"droppable"),k="elfinder-navbar-wrapper-pastable",C="elfinder-navbar-wrapper-uploadable",T=function(e){var t=$.offset().left;
-return e>=t&&e<=t+$.width()},I=t.droppable.drop,F=e.extend(!0,{},t.droppable,{over:function(n,i){var a,r,o=e(this),s=i.helper,l=y+" "+v;return n.stopPropagation(),s.data("dropover",s.data("dropover")+1),o.data("dropover",!0),i.helper.data("namespace")!==t.namespace?(o.removeClass(l),!1):(o.addClass(y),o.is("."+p+":not(."+h+")")&&o.data("expandTimer",setTimeout(function(){o.children("."+m).click()},500)),a=t.navId2Hash(o.attr("id")),o.data("dropover",a),e.each(i.helper.data("files"),function(e,n){return n===a||t.file(n).phash===a&&!i.helper.hasClass("elfinder-drag-helper-plus")?(o.removeClass(l),!1):void 0}),s.data("locked")?r="elfinder-drag-helper-plus":(r="elfinder-drag-helper-move",(n.shiftKey||n.ctrlKey||n.metaKey)&&(r+=" elfinder-drag-helper-plus")),o.hasClass(v)&&s.addClass(r),setTimeout(function(){o.hasClass(v)&&s.addClass(r)},20),void 0)},out:function(t,n){var i=e(this),a=n.helper;t.stopPropagation(),a.removeClass("elfinder-drag-helper-move elfinder-drag-helper-plus").data("dropover",Math.max(a.data("dropover")-1,0)),i.data("expandTimer")&&clearTimeout(i.data("expandTimer")),i.removeData("dropover").removeClass(y+" "+v)},deactivate:function(){e(this).removeData("dropover").removeClass(y+" "+v)},drop:function(e,t){T(e.clientX)&&I.call(this,e,t)}}),M=e(t.res("tpl","navspinner")),P=t.res("tpl","navdir"),A=t.res("tpl","perms"),S=(t.res("tpl","lock"),t.res("tpl","symlink")),z={id:function(e){return t.navHash2Id(e.hash)},cssclass:function(e){var i=(t.UA.Touch?"elfinder-touch ":"")+(e.phash?"":o)+" "+c+" "+t.perms2class(e);return e.dirs&&!e.link&&(i+=" "+p),n.getClass&&(i+=" "+n.getClass(e)),e.csscls&&(i+=" "+t.escape(e.csscls)),i},permissions:function(e){return e.read&&e.write?"":A},symlink:function(e){return e.alias?S:""},style:function(e){return e.icon?"style=\"background-image:url('"+t.escape(e.icon)+"')\"":""}},D=function(e){return e.name=t.escape(e.i18||e.name),P.replace(/(?:\{([a-z]+)\})/gi,function(t,n){return e[n]||(z[n]?z[n](e):"")})},O=function(t){return e.map(t||[],function(e){return"directory"==e.mime?e:null})},U=function(n){return n?e("#"+t.navHash2Id(n)).next("."+d):L},E=function(n,i){var a,r,o=n.children(":first");for(r=t.naturalCompare;o.length;){if(a=t.file(t.navId2Hash(o.children("[id]").attr("id"))),(a=t.file(t.navId2Hash(o.children("[id]").attr("id"))))&&r(i.name,a.name)<0)return o;o=o.next()}return e("")},j=function(n){for(var i,a,o,s,l,d=n.length,c=[],u=n.length,p={},h=!0;u--;)i=n[u],e("#"+t.navHash2Id(i.hash)).length||((a=U(i.phash)).length?i.phash&&((s=!a.children().length)||(o=E(a,i)).length)?s?(p[i.phash]||(p[i.phash]=[]),p[i.phash].push(i)):o.before(D(i)):(a[h||i.phash?"append":"prepend"](D(i)),h=!1,i.phash||(l=e("#"+t.navHash2Id(i.hash)).parent(),!i.disabled||i.disabled.length<1?l.addClass(k+" "+C):(-1===e.inArray("paste",i.disabled)&&l.addClass(k),-1===e.inArray("upload",i.disabled)&&l.addClass(C)))):c.push(i));return Object.keys(p).length&&e.each(p,function(t,n){var i=U(t),a=[];n.sort(H),e.each(n,function(e,t){a.push(D(t))}),i.append(a.join(""))}),c.length&&c.lengths||s>o)&&i.animate({scrollTop:i.scrollTop()+s-a-r/3},{duration:"fast"})}},_=function(i,a){var r,c,v,y,b,w,x=t.cwd(),k=x.hash,C=e("#"+t.navHash2Id(k)),i=i||!1,a=a||[];if(s&&(r=e("#"+t.navHash2Id(t.root())),r.hasClass(f)&&r.addClass(h).next("."+d).show(),s=!1),C.hasClass(g)||(L.find(u+"."+g).removeClass(g),C.addClass(g)),n.syncTree||!C.length){if(C.length)return i||(C.addClass(f),l&&C.hasClass(p)&&C.addClass(h).next("."+d).slideDown()),y=C.parentsUntil("."+o).filter("."+d),b=y.length,w=1,y.show().prev(u).addClass(h,function(){!i&&b==w++&&R()}),!b&&!i&&R(),void 0;if(t.newAPI){if(c=t.file(k),c&&c.phash&&(v=e("#"+t.navHash2Id(c.phash)),v.length&&v.hasClass(f)))return j([c]),_(i),void 0;v=x.root?e("#"+t.navHash2Id(x.root)):null,v&&(M.insertBefore(v.children("."+m)),v.removeClass(p)),t.request({data:{cmd:"parents",target:k},preventFail:!0}).done(function(n){a=e.merge(a,O(n.tree)),j(a),q(a,f),k==t.cwd().hash&&_(i)}).always(function(){v&&(M.remove(),v.addClass(p+" "+f))})}}},N=function(e){var t,n=100;e||(L.find("div."+C).find(u+":not(.elfinder-ro,.elfinder-na)").addClass("native-droppable"),e=L.find("div."+k).find(u+":not(."+x+",.elfinder-ro,.elfinder-na)")),e.length>n&&(t=e.slice(n),e=e.slice(0,n)),e.droppable(F),t&&setTimeout(function(){N(t)},20)},q=function(n,i){var a=i==f?"."+p+":not(."+f+")":":not(."+p+")";e.each(n,function(n,r){e("#"+t.navHash2Id(r.phash)+a).filter(function(){return e(this).next("."+d).children().length>0}).addClass(i)})},L=e(this).addClass(i).on("mouseenter mouseleave",u,function(n){var i=e(this),a="mouseenter"==n.type;i.hasClass(v+" "+b)||(!r&&a&&!i.hasClass(o+" "+w+" elfinder-na elfinder-wo")&&i.draggable(t.draggable),i.toggleClass(y,a))}).on("dropover dropout drop",u,function(t){e(this)["dropover"==t.type?"addClass":"removeClass"](v+" "+y)}).on("click",u,function(n){var i=e(this),a=t.navId2Hash(i.attr("id"));return t.file(a),i.data("longtap")?(n.stopPropagation(),void 0):(t.trigger("searchend",{noupdate:!0}),a==t.cwd().hash||i.hasClass(b)?i.hasClass(p)&&i.children("."+m).click():t.exec("open",a),void 0)}).on("touchstart",u,function(n){n.stopPropagation();var i=n.originalEvent,a=e(this).addClass(y).data("longtap",null).data("tmlongtap",setTimeout(function(){a.data("longtap",!0),t.trigger("contextmenu",{type:"navbar",targets:[t.navId2Hash(a.attr("id"))],x:i.touches[0].pageX,y:i.touches[0].pageY})},500))}).on("touchmove touchend",u,function(t){t.stopPropagation(),clearTimeout(e(this).data("tmlongtap")),"touchmove"==t.type&&e(this).removeClass(y)}).on("click",u+"."+p+" ."+m,function(n){var i,a=e(this),r=a.parent(u),o=r.next("."+d),s=30;n.stopPropagation(),r.hasClass(f)?(r.toggleClass(h),i=r.hasClass(h)?o.children().length+o.find("div.elfinder-navbar-subtree[style*=block]").children().length:o.find("div:visible").length,i>s?(o.toggle(),t.draggingUiHelper&&t.draggingUiHelper.data("refreshPositions",1)):o.stop(!0,!0).slideToggle("normal",function(){t.draggingUiHelper&&t.draggingUiHelper.data("refreshPositions",1)})):(M.insertBefore(a),r.removeClass(p),t.request({cmd:"tree",target:t.navId2Hash(r.attr("id"))}).done(function(e){j(O(e.tree)),o.children().length&&(r.addClass(p+" "+h),o.children().length>s?(o.show(),t.draggingUiHelper&&t.draggingUiHelper.data("refreshPositions",1)):o.stop(!0,!0).slideDown("normal",function(){t.draggingUiHelper&&t.draggingUiHelper.data("refreshPositions",1)})),_(!0)}).always(function(){M.remove(),r.addClass(f)}))}).on("contextmenu",u,function(n){n.preventDefault(),t.trigger("contextmenu",{type:"navbar",targets:[t.navId2Hash(e(this).attr("id"))],x:n.pageX,y:n.pageY})}),$=t.getUI("navbar").append(L).show();t.open(function(n){var i=n.data,a=O(i.files),r=t.getUI("contextmenu");i.init&&L.empty(),a.length&&(r.data("cmdMaps")||r.data("cmdMaps",{}),j(a),q(a,f),e.each(a,function(e,t){t.volumeid&&t.uiCmdMap&&Object.keys(t.uiCmdMap).length&&!r.data("cmdMaps")[t.volumeid]&&(r.data("cmdMaps")[t.volumeid]=t.uiCmdMap)})),_(!1,a)}).add(function(e){var t=O(e.data.added);t.length&&(j(t),q(t,p))}).change(function(n){for(var i,a,o,s,l,c,p,m,g,v=O(n.data.changed),y=v.length,b=y;b--;)if(i=v[b],(a=e("#"+t.navHash2Id(i.hash))).length){if(i.phash){if(s=a.closest("."+d),l=U(i.phash),c=a.parent().next(),p=E(l,i),!l.length)continue;(l[0]!==s[0]||c.get(0)!==p.get(0))&&(p.length?p.before(a):l.append(a))}m=a.hasClass(h),g=a.hasClass(f),o=e(D(i)),a.replaceWith(o.children(u)),i.dirs&&(m||g)&&(a=e("#"+t.navHash2Id(i.hash)))&&a.next("."+d).children().length&&(m&&a.addClass(h),g&&a.addClass(f))}_(),y&&!r&&N()}).remove(function(n){for(var i,a,r=n.data.removed,o=r.length;o--;)(i=e("#"+t.navHash2Id(r[o]))).length&&(a=i.closest("."+d),i.parent().detach(),a.children().length||a.hide().prev(u).removeClass(p+" "+h+" "+f))}).bind("lockfiles unlockfiles",function(n){var i="lockfiles"==n.type,a=n.data.helper?n.data.helper.data("locked"):!1,r=i&&!a?"disable":"enable",o=e.map(n.data.files||[],function(e){var n=t.file(e);return n&&"directory"==n.mime?e:null});e.each(o,function(n,o){var s=e("#"+t.navHash2Id(o));s.length&&!a&&(s.hasClass(w)&&s.draggable(r),s.hasClass(x)&&s.droppable(r),s[i?"addClass":"removeClass"](b))})})}),this},e.fn.elfinderuploadbutton=function(t){return this.each(function(){var n=e(this).elfinderbutton(t).off("click"),i=e("").appendTo(n),a=e(' ').change(function(){var n=e(this);n.val()&&(t.exec({input:n.remove()[0]}),a.clone(!0).appendTo(i))}).on("dragover",function(e){e.originalEvent.dataTransfer.dropEffect="copy"});i.append(a.clone(!0)),t.change(function(){i[t.disabled()?"hide":"show"]()}).change()})},e.fn.elfinderviewbutton=function(t){return this.each(function(){var n=e(this).elfinderbutton(t),i=n.children(".elfinder-button-icon");t.change(function(){var e="icons"==t.value;i.toggleClass("elfinder-button-icon-view-list",e),n.attr("title",t.fm.i18n(e?"viewlist":"viewicons"))})})},e.fn.elfinderworkzone=function(){var t="elfinder-workzone";return this.not("."+t).each(function(){var n=e(this).addClass(t),i=n.outerHeight(!0)-n.height(),a=n.parent();a.add(window).on("resize",function(){var r=a.height();a.children(":visible:not(."+t+")").each(function(){var t=e(this);"absolute"!=t.css("position")&&"fixed"!=t.css("position")&&(r-=t.outerHeight(!0))}),n.height(r-i)})}),this},elFinder.prototype.commands.archive=function(){var t,n=this,i=n.fm,a=[];this.variants=[],this.disableOnSearch=!0,i.bind("open reload",function(){n.variants=[],e.each(a=i.option("archivers").create||[],function(e,t){n.variants.push([t,i.mime2kind(t)])}),n.change()}),this.getstate=function(){return!this._disabled&&a.length&&(i.selected().length||t&&"pending"==t.state())&&i.cwd().write?0:-1},this.exec=function(r,o){var s,l,d=this.files(r),c=d.length,u=o||a[0],p=i.cwd(),h=["errArchive","errPerm","errCreatingTempDir","errFtpDownloadFile","errFtpUploadFile","errFtpMkdir","errArchiveExec","errExtractExec","errRm"];if(t=e.Deferred().fail(function(e){e&&i.error(e)}),!(this.enabled()&&c&&a.length&&-1!==e.inArray(u,a)))return t.reject();if(!p.write)return t.reject(h);for(s=0;c>s;s++)if(!d[s].read)return t.reject(h);return n.mime=u,n.prefix=(c>1?"Archive":d[0].name)+"."+i.option("archivers").createext[u],n.data={targets:n.hashes(r),type:u},l=e.proxy(i.res("mixin","make"),n)(),t.reject(),l}},elFinder.prototype.commands.back=function(){this.alwaysEnabled=!0,this.updateOnSelect=!1,this.shortcuts=[{pattern:"ctrl+left backspace"}],this.getstate=function(){return this.fm.history.canBack()?0:-1},this.exec=function(){return this.fm.history.back()}},elFinder.prototype.commands.chmod=function(){this.updateOnSelect=!1;var t=this,n=this.fm,i={0:"owner",1:"group",2:"other"},a={read:n.i18n("read"),write:n.i18n("write"),execute:n.i18n("execute"),perm:n.i18n("perm"),kind:n.i18n("kind"),files:n.i18n("files")},r=function(e){return!isNaN(parseInt(e,8)&&parseInt(e,8)<=511)||e.match(/^([r-][w-][x-]){3}$/i)};this.tpl={main:' {title}
{dataTable}',itemTitle:'{name} {kind} ',groupTitle:"{items}: {num} ",dataTable:''+a.perm+':
',fieldset:'{f_title}{name} '+a.read+" "+' '+a.write+" "+' '+a.execute+" "},this.shortcuts=[{}],this.getstate=function(e){var n=this.fm;return e=e||n.selected(),0==e.length&&(e=[n.cwd().hash]),!this._disabled&&t.checkstate(this.files(e))?0:-1},this.checkstate=function(t){var n=t.length;if(!n)return!1;var i=e.map(t,function(e){return e.isowner&&e.perm&&r(e.perm)&&(1==n||"directory"!=e.mime)?e:null}).length;return n==i?!0:!1},this.exec=function(t){var n=this.files(t);n.length||(t=[this.fm.cwd().hash],n=this.files(t));var o,s,l=this.fm,d=e.Deferred().always(function(){l.enable()}),c=this.tpl,t=this.hashes(t),u=n.length,p=n[0],h=l.namespace+"-perm-"+p.hash,f=c.main,m=' checked="checked"',g=function(){var e={};return e[l.i18n("btnApply")]=v,e[l.i18n("btnCancel")]=function(){I.elfinderdialog("close")},e},v=function(){var n=e.trim(e("#"+h+"-perm").val());return r(n)?(I.elfinderdialog("close"),l.request({data:{cmd:"chmod",targets:t,mode:n},notify:{type:"chmod",cnt:u}}).fail(function(e){d.reject(e)}).done(function(e){d.resolve(e)}),void 0):!1},y=function(){for(var t,n="",a=0;3>a;a++)t=0,e("#"+h+"-read-"+i[a]+"-perm").is(":checked")&&(t=4|t),e("#"+h+"-write-"+i[a]+"-perm").is(":checked")&&(t=2|t),e("#"+h+"-execute-"+i[a]+"-perm").is(":checked")&&(t=1|t),n+=t.toString(8);e("#"+h+"-perm").val(n)},b=function(t){for(var n,a=0;3>a;a++)n=parseInt(t.slice(a,a+1),8),e("#"+h+"-read-"+i[a]+"-perm").prop("checked",!1),e("#"+h+"-write-"+i[a]+"-perm").prop("checked",!1),e("#"+h+"-execute-"+i[a]+"-perm").prop("checked",!1),4==(4&n)&&e("#"+h+"-read-"+i[a]+"-perm").prop("checked",!0),2==(2&n)&&e("#"+h+"-write-"+i[a]+"-perm").prop("checked",!0),1==(1&n)&&e("#"+h+"-execute-"+i[a]+"-perm").prop("checked",!0);y()},w=function(e){for(var t,n,i,a="777",r="",o=e.length,s=0;o>s;s++){t=C(e[s].perm),r="";for(var l=0;3>l;l++)n=parseInt(t.slice(l,l+1),8),i=parseInt(a.slice(l,l+1),8),4!=(4&n)&&4==(4&i)&&(i-=4),2!=(2&n)&&2==(2&i)&&(i-=2),1!=(1&n)&&1==(1&i)&&(i-=1),r+=i.toString(8);a=r}return a},x=function(e){return e?":"+e:""},k=function(e,t){for(var n,r,o="",s=c.dataTable,d=0;3>d;d++)n=parseInt(e.slice(d,d+1),8),o+=n.toString(8),r=c.fieldset.replace("{f_title}",l.i18n(i[d])).replace("{name}",x(t[i[d]])).replace(/\{level\}/g,i[d]),s=s.replace("{"+d+"}",r).replace("{checked-r}",4==(4&n)?m:"").replace("{checked-w}",2==(2&n)?m:"").replace("{checked-x}",1==(1&n)?m:"");return s=s.replace("{value}",o).replace("{valueCaption}",a.perm)},C=function(e){if(isNaN(parseInt(e,8))){for(var t=e.split(""),n=[],i=0,a=t.length;a>i;i++)0===i||3===i||6===i?t[i].match(/[r]/i)?n.push(1):t[i].match(/[-]/)&&n.push(0):1===i||4===i||7===i?t[i].match(/[w]/i)?n.push(1):t[i].match(/[-]/)&&n.push(0):t[i].match(/[x]/i)?n.push(1):t[i].match(/[-]/)&&n.push(0);n.splice(3,0,","),n.splice(7,0,",");for(var r=n.join(""),o=r.split(","),s=[],l=0,d=o.length;d>l;l++){var c=parseInt(o[l],2).toString(8);s.push(c)}e=s.join("")}else e=parseInt(e,8).toString(8);return e},T={title:this.title,width:"auto",buttons:g(),close:function(){e(this).elfinderdialog("destroy")}},I=l.getUI().find("#"+h),F="";return I.length?(I.elfinderdialog("toTop"),e.Deferred().resolve()):(f=f.replace("{class}",u>1?"elfinder-cwd-icon-group":l.mime2class(p.mime)),u>1?o=c.groupTitle.replace("{items}",l.i18n("items")).replace("{num}",u):(o=c.itemTitle.replace("{name}",p.name).replace("{kind}",l.mime2kind(p)),p.tmb&&(F=l.option("tmbUrl")+p.tmb)),s=k(w(n),1==n.length?n[0]:{}),f=f.replace("{title}",o).replace("{dataTable}",s).replace(/{id}/g,h),I=l.dialog(f,T),I.attr("id",h),F&&e(" ").on("load",function(){I.find(".elfinder-cwd-icon").css("background",'url("'+F+'") center center no-repeat')}).attr("src",F),e("#"+h+"-table-perm :checkbox").on("click",function(){y("perm")}),e("#"+h+"-perm").on("keydown",function(e){var t=e.keyCode;return e.stopPropagation(),13==t?(v(),void 0):void 0}).on("focus",function(){e(this).select()}).on("keyup",function(){3==e(this).val().length&&(e(this).select(),b(e(this).val()))}),d)}},elFinder.prototype.commands.copy=function(){this.shortcuts=[{pattern:"ctrl+c ctrl+insert"}],this.getstate=function(t){var t=this.files(t),n=t.length;return!this._disabled&&n&&e.map(t,function(e){return e.phash&&e.read?e:null}).length==n?0:-1},this.exec=function(t){var n=this.fm,i=e.Deferred().fail(function(e){n.error(e)});return e.each(this.files(t),function(e,t){return t.read&&t.phash?void 0:!i.reject(["errCopy",t.name,"errPerm"])}),"rejected"==i.state()?i:i.resolve(n.clipboard(this.hashes(t)))}},elFinder.prototype.commands.cut=function(){this.shortcuts=[{pattern:"ctrl+x shift+insert"}],this.getstate=function(t){var t=this.files(t),n=t.length;return!this._disabled&&n&&e.map(t,function(e){return e.phash&&e.read&&!e.locked?e:null}).length==n?0:-1},this.exec=function(t){var n=this.fm,i=e.Deferred().fail(function(e){n.error(e)});return e.each(this.files(t),function(e,t){return t.read&&t.phash?t.locked?!i.reject(["errLocked",t.name]):void 0:!i.reject(["errCopy",t.name,"errPerm"])}),"rejected"==i.state()?i:i.resolve(n.clipboard(this.hashes(t),!0))}},elFinder.prototype.commands.download=function(){var t=this,n=this.fm,i=function(n){return e.map(t.files(n),function(e){return"directory"==e.mime?null:e})};this.shortcuts=[{pattern:"shift+enter"}],this.getstate=function(){var e=this.fm.selected(),t=e.length;return this._disabled||!t||(n.UA.IE||n.UA.Mobile)&&1!=t||t!=i(e).length?-1:0},this.fm.bind("contextmenu",function(n){var i,a,r=t.fm,o=null,s=function(t){var n=t.url||r.url(t.hash);return{icon:"link",node:e(" ").attr({href:n,target:"_blank",title:r.i18n("link")}).text(t.name).on("mousedown click touchstart touchmove touchend contextmenu",function(e){var t=r.getUI("contextmenu");e.stopPropagation(),t.data("mouseEvInternal",!0),setTimeout(function(){t.data("mouseEvInternal",!1)},500)}).on("dragstart",function(n){var i=n.dataTransfer||n.originalEvent.dataTransfer||null;if(o=null,i){var a=function(t){var n,i=t.mime;return n='
',t.tmb&&1!==t.tmb&&(n=e(n).css("background","url('"+r.option("tmbUrl")+t.tmb+"') center center no-repeat").get(0).outerHTML),n};i.effectAllowed="copyLink",i.setDragImage&&(o=e('').append(a(t)).appendTo(e(document.body)),i.setDragImage(o.get(0),50,47)),r.UA.IE||(i.setData("elfinderfrom",window.location.href+t.phash),i.setData("elfinderfrom:"+i.getData("elfinderfrom"),""))}}).on("dragend",function(){o&&o.remove()})}};if(t.extra=null,n.data&&(i=n.data.targets||[],1===i.length&&(a=r.file(i[0]))&&"directory"!==a.mime))if("1"!=a.url)t.extra=s(a);else{var l;t.extra={icon:"link",node:e("
").attr({href:"#",title:r.i18n("link"),draggable:"false"}).text(a.name).on("click",function(e){var t=l.parent();e.stopPropagation(),e.preventDefault(),t.removeClass("ui-state-disabled").addClass("elfinder-button-icon-spinner"),r.request({data:{cmd:"url",target:a.hash},preventDefault:!0}).always(function(e){if(e.url){var n=r.file(a.hash);n.url=e.url,t.removeClass("elfinder-button-icon-spinner"),l.replaceWith(s(a).node)}else t.addClass("ui-state-disabled")})})},l=t.extra.node,l.ready(function(){setTimeout(function(){l.parent().addClass("ui-state-disabled")},10)})}}),this.exec=function(t){var n,a,r=this.fm,o=(r.options.url,i(t)),s=e.Deferred(),l="";if(this.disabled())return s.reject();var a,d=e("
").hide().appendTo(e("body")),c="string"==typeof d.get(0).download;for(n=0;n ';return d.remove(),e(l).appendTo("body").ready(function(){setTimeout(function(){e(l).each(function(){e("#"+e(this).attr("id")).remove()})},r.UA.Firefox?2e4+1e4*n:1e3)}),r.trigger("download",{files:o}),s.resolve(t)}},elFinder.prototype.commands.duplicate=function(){var t=this.fm;this.getstate=function(n){var n=this.files(n),i=n.length;return!this._disabled&&i&&t.cwd().write&&e.map(n,function(e){return e.phash&&e.read?e:null}).length==i?0:-1},this.exec=function(t){var n=this.fm,i=this.files(t),a=i.length,r=e.Deferred().fail(function(e){e&&n.error(e)});return!a||this._disabled?r.reject():(e.each(i,function(e,t){return t.read&&n.file(t.phash).write?void 0:!r.reject(["errCopy",t.name,"errPerm"])}),"rejected"==r.state()?r:n.request({data:{cmd:"duplicate",targets:this.hashes(t)},notify:{type:"copy",cnt:a}}))}},elFinder.prototype.commands.edit=function(){var t=this,n=this.fm,i=n.res("mimes","text")||[],a=function(e){return e.replace(/\s+$/,"")},r=function(n){return e.map(n,function(n){return 0!==n.mime.indexOf("text/")&&-1===e.inArray(n.mime,i)||!n.mime.indexOf("text/rtf")||t.onlyMimes.length&&-1===e.inArray(n.mime,t.onlyMimes)||!n.read||!n.write?null:n})},o=function(r,o,s){var l=e.Deferred(),d=e('"),c=d.val(),u=function(){d.editor&&d.editor.save(d[0],d.editor.instance),c=d.val(),l.notifyWith(d)},p=function(){var e=function(){l.reject(),d.elfinderdialog("close")};d.editor&&d.editor.save(d[0],d.editor.instance),a(c)!==a(d.val())?(c=d.val(),n.confirm({title:t.title,text:"confirmNotSave",accept:{label:"btnSaveClose",callback:function(){u(),e()}},cancel:{label:"btnClose",callback:e}})):e()},h=function(){u(),p()},f={title:n.escape(o.name),width:t.options.dialogWidth||450,buttons:{},btnHoverFocus:!1,closeOnEscape:!1,close:function(){var i=e(this),r=function(){d.editor&&d.editor.close(d[0],d.editor.instance),i.elfinderdialog("destroy")};d.editor&&d.editor.save(d[0],d.editor.instance),a(c)!==a(d.val())?n.confirm({title:t.title,text:"confirmNotSave",accept:{label:"btnSaveClose",callback:function(){u(),r()}},cancel:{label:"btnClose",callback:r}}):r()},open:function(){n.disable(),d.focus(),d[0].setSelectionRange&&d[0].setSelectionRange(0,0),d.editor&&(d.editor.instance=d.editor.load(d[0])||null,d.editor.focus(d[0],d.editor.instance))}},m=function(t,n){if(n=n||i.concat("text/"),-1!==e.inArray(t,n))return!0;var a,r;for(r=n.length,a=0;r>a;a++)if(0===t.indexOf(n[a]))return!0;return!1},g=function(e,t){if(!t||!t.length)return!0;var n,i,a=e.replace(/^.+\.([^.]+)|(.+)$/,"$1$2").toLowerCase();for(i=t.length,n=0;i>n;n++)if(a===t[n].toLowerCase())return!0;return!1};return d.getContent=function(){return d.val()},e.each(t.options.editors||[],function(e,t){return m(o.mime,t.mimes||null)&&g(o.name,t.exts||null)&&"function"==typeof t.load&&"function"==typeof t.save?(d.editor={load:t.load,save:t.save,close:"function"==typeof t.close?t.close:function(){},focus:"function"==typeof t.focus?t.focus:function(){},instance:null,doSave:u,doCancel:p,doClose:h,file:o},!1):void 0}),d.editor||d.keydown(function(e){var t,n,i=e.keyCode;e.stopPropagation(),9==i&&(e.preventDefault(),this.setSelectionRange&&(t=this.value,n=this.selectionStart,this.value=t.substr(0,n)+" "+t.substr(this.selectionEnd),n+=1,this.setSelectionRange(n,n))),(e.ctrlKey||e.metaKey)&&((81==i||87==i)&&(e.preventDefault(),p()),83==i&&(e.preventDefault(),u()))}).on("mouseenter",function(){this.focus()}),f.buttons[n.i18n("btnSave")]=u,f.buttons[n.i18n("btnSaveClose")]=h,f.buttons[n.i18n("btnCancel")]=p,n.dialog(d,f).attr("id",r),l.promise()},s=function(i,a){var r,l=i.hash,d=(n.options,e.Deferred()),c="edit-"+n.namespace+"-"+i.hash,u=n.getUI().find("#"+c),p=a?1:0;return u.length?(u.elfinderdialog("toTop"),d.resolve()):i.read&&i.write?(n.request({data:{cmd:"get",target:l,conv:p},notify:{type:"file",cnt:1},syncOnFail:!0}).done(function(e){e.doconv?n.confirm({title:t.title,text:"confirmConvUTF8",accept:{label:"btnConv",callback:function(){d=s(i,1)}},cancel:{label:"btnCancel",callback:function(){d.reject()}}}):o(c,i,e.content).progress(function(){var e=this;n.request({options:{type:"post"},data:{cmd:"put",target:l,content:e.getContent()},notify:{type:"save",cnt:1},syncOnFail:!0}).fail(function(e){d.reject(e)}).done(function(t){t.changed&&t.changed.length&&n.change(t),d.resolve(t),setTimeout(function(){e.focus(),e.editor&&e.editor.focus(e[0],e.editor.instance)},50)})})}).fail(function(e){d.reject(e)}),d.promise()):(r=["errOpen",i.name,"errPerm"],n.error(r),d.reject(r))};this.shortcuts=[{pattern:"ctrl+e"}],this.init=function(){this.onlyMimes=this.options.mimes||[]},this.getstate=function(e){var e=this.files(e),t=e.length;return!this._disabled&&t&&r(e).length==t?0:-1},this.exec=function(t){var n,i=r(this.files(t)),a=[];if(this.disabled())return e.Deferred().reject();for(;n=i.shift();)a.push(s(n));return a.length?e.when.apply(null,a):e.Deferred().reject()}},elFinder.prototype.commands.extract=function(){var t=this,n=t.fm,i=[],a=function(t){return e.map(t,function(t){return t.read&&-1!==e.inArray(t.mime,i)?t:null})};this.variants=[],this.disableOnSearch=!0,n.bind("open reload",function(){i=n.option("archivers").extract||[],t.variants=[["makedir",n.i18n("cmdmkdir")],["intohere",n.i18n("btnCwd")]],t.change()}),this.getstate=function(e){var e=this.files(e),t=e.length;return!this._disabled&&t&&this.fm.cwd().write&&a(e).length==t?0:-1},this.exec=function(t,a){var r,o,s,l=this.files(t),d=e.Deferred(),c=l.length,u="makedir"==a?1:0,p=!1,h=!1,f=0,m=e.map(n.files(t),function(e){return e.name}),g={};e.map(n.files(t),function(e){g[e.name]=e});var v=function(e){switch(e){case"overwrite_all":p=!0;break;case"omit_all":h=!0}},y=function(t){t.read&&n.file(t.phash).write?-1===e.inArray(t.mime,i)?(o=["errExtract",t.name,"errNoArchive"],n.error(o),d.reject(o)):n.request({data:{cmd:"extract",target:t.hash,makedir:u},notify:{type:"extract",cnt:1},syncOnFail:!0}).fail(function(e){"rejected"!=d.state()&&d.reject(e)}).done(function(){}):(o=["errExtract",t.name,"errPerm"],n.error(o),d.reject(o))},b=function(t,i){var a=t[i],o=a.name.replace(/\.((tar\.(gz|bz|bz2|z|lzo))|cpio\.gz|ps\.gz|xcf\.(gz|bz2)|[a-z0-9]{1,4})$/gi,""),l=e.inArray(o,m)>=0,w=function(){c>i+1?b(t,i+1):d.resolve()};!u&&l&&"directory"!=g[o].mime?n.confirm({title:n.i18n("ntfextract"),text:["errExists",o,"confirmRepl"],accept:{label:"btnYes",callback:function(e){if(s=e?"overwrite_all":"overwrite",v(s),p||h){if(p){for(r=i;c>r;r++)y(t[r]);d.resolve()}}else"overwrite"==s&&y(a),c>i+1?b(t,i+1):d.resolve()}},reject:{label:"btnNo",callback:function(e){s=e?"omit_all":"omit",v(s),!p&&!h&&c>i+1?b(t,i+1):h&&d.resolve()}},cancel:{label:"btnCancel",callback:function(){d.resolve()}},all:c>i+1}):u?(y(a),w()):0==f?n.confirm({title:n.i18n("cmdextract"),text:[n.i18n("cmdextract")+' "'+a.name+'"',"confirmRepl"],accept:{label:"btnYes",callback:function(e){e&&(f=1),y(a),w()}},reject:{label:"btnNo",callback:function(e){e&&(f=-1),w()}},cancel:{label:"btnCancel",callback:function(){d.resolve()}},all:c>i+1}):(f>0&&y(a),w())};return this.enabled()&&c&&i.length?(c>0&&b(l,0),d):d.reject()}},elFinder.prototype.commands.forward=function(){this.alwaysEnabled=!0,this.updateOnSelect=!0,this.shortcuts=[{pattern:"ctrl+right"}],this.getstate=function(){return this.fm.history.canForward()?0:-1},this.exec=function(){return this.fm.history.forward()}},elFinder.prototype.commands.getfile=function(){var t=this,n=this.fm,i=function(n){var i=t.options;return n=e.map(n,function(e){return"directory"!=e.mime||i.folders?e:null}),i.multiple||1==n.length?n:[]};this.alwaysEnabled=!0,this.callback=n.options.getFileCallback,this._disabled="function"==typeof this.callback,this.getstate=function(e){var e=this.files(e),t=e.length;return this.callback&&t&&i(e).length==t?0:-1},this.exec=function(n){var i,a,r,o=this.fm,s=this.options,l=this.files(n),d=l.length,c=o.option("url"),u=o.option("tmbUrl"),p=e.Deferred().done(function(e){o.trigger("getfile",{files:e}),t.callback(e,o),"close"==s.oncomplete?o.hide():"destroy"==s.oncomplete&&o.destroy()}),h=function(){return s.onlyURL?s.multiple?e.map(l,function(e){return e.url}):l[0].url:s.multiple?l:l[0]},f=[];if(-1==this.getstate(n))return p.reject();for(i=0;d>i;i++){if(a=l[i],"directory"==a.mime&&!s.folders)return p.reject();a.baseUrl=c,"1"==a.url?f.push(o.request({data:{cmd:"url",target:a.hash},notify:{type:"url",cnt:1,hideCnt:!0},preventDefault:!0}).done(function(e){if(e.url){var t=o.file(this.hash);t.url=this.url=e.url}}.bind(a))):a.url=o.url(a.hash),a.path=o.path(a.hash),a.tmb&&1!=a.tmb&&(a.tmb=u+a.tmb),a.width||a.height||(a.dim?(r=a.dim.split("x"),a.width=r[0],a.height=r[1]):-1!==a.mime.indexOf("image")&&f.push(o.request({data:{cmd:"dim",target:a.hash},notify:{type:"dim",cnt:1,hideCnt:!0},preventDefault:!0}).done(function(e){if(e.dim){var t=e.dim.split("x"),n=o.file(this.hash);n.width=this.width=t[0],n.height=this.height=t[1]}}.bind(a))))}return f.length?(e.when.apply(null,f).always(function(){p.resolve(h(l))}),p):p.resolve(h(l))}},elFinder.prototype.commands.help=function(){var t=this.fm,n=this,i='',a='',r=/\{url\}/,o=/\{link\}/,s=/\{author\}/,l=/\{work\}/,d="replace",c="ui-priority-primary",u="ui-priority-secondary",p="elfinder-help-license",h='{title} ',f=['','"),-1!==e.inArray("about",i)&&v(),-1!==e.inArray("shortcuts",i)&&y(),-1!==e.inArray("help",i)&&b(),f.push("
"),w=e(f.join("")),w.find(".ui-tabs-nav li").hover(function(){e(this).toggleClass("ui-state-hover")}).children().click(function(t){var n=e(this);t.preventDefault(),t.stopPropagation(),n.hasClass("ui-tabs-selected")||(n.parent().addClass("ui-tabs-selected ui-state-active").siblings().removeClass("ui-tabs-selected").removeClass("ui-state-active"),w.find(".ui-tabs-panel").hide().filter(n.attr("href")).show())}).filter(":first").click()},200),this.getstate=function(){return 0},this.exec=function(){this.dialog||(w.find("#apiver").text(this.fm.api),this.dialog=this.fm.dialog(w,{title:this.title,width:530,autoOpen:!1,destroyOnClose:!1})),this.dialog.elfinderdialog("open").find(".ui-tabs-nav li a:first").click()}},elFinder.prototype.commands.home=function(){this.title="Home",this.alwaysEnabled=!0,this.updateOnSelect=!1,this.shortcuts=[{pattern:"ctrl+home ctrl+shift+up",description:"Home"}],this.getstate=function(){var e=this.fm.root(),t=this.fm.cwd().hash;return e&&t&&e!=t?0:-1},this.exec=function(){return this.fm.exec("open",this.fm.root())}},elFinder.prototype.commands.info=function(){var t=this.fm,n="elfinder-info-spinner",i={calc:t.i18n("calc"),size:t.i18n("size"),unknown:t.i18n("unknown"),path:t.i18n("path"),aliasfor:t.i18n("aliasfor"),modify:t.i18n("modify"),perms:t.i18n("perms"),locked:t.i18n("locked"),dim:t.i18n("dim"),kind:t.i18n("kind"),files:t.i18n("files"),folders:t.i18n("folders"),items:t.i18n("items"),yes:t.i18n("yes"),no:t.i18n("no"),link:t.i18n("link"),owner:t.i18n("owner"),group:t.i18n("group"),perm:t.i18n("perm")};this.tpl={main:' {title}
',itemTitle:'
{name} {kind} ',groupTitle:"
{items}: {num} ",row:"
{label} : {value} ",spinner:'
{text} '},this.alwaysEnabled=!0,this.updateOnSelect=!1,this.shortcuts=[{pattern:"ctrl+i"}],this.init=function(){e.each(i,function(e,n){i[e]=t.i18n(n)})},this.getstate=function(){return 0},this.exec=function(t){var a=this.files(t);a.length||(a=this.files([this.fm.cwd().hash]));var r,o,s,l,d,c=this.fm,u=this.options,p=this.tpl,h=p.row,f=a.length,m=[],g=p.main,v="{label}",y="{value}",b={title:this.title,width:"auto",close:function(){e(this).elfinderdialog("destroy")}},w=[],x=function(e,t){C.find("."+n+"-"+t).parent().html(e)},k=c.namespace+"-info-"+e.map(a,function(e){return e.hash}).join("-"),C=c.getUI().find("#"+k),T=[];if(!f)return e.Deferred().reject();if(C.length)return C.elfinderdialog("toTop"),e.Deferred().resolve();if(1==f){if(s=a[0],g=g.replace("{class}",c.mime2class(s.mime)),l=p.itemTitle.replace("{name}",c.escape(s.i18||s.name)).replace("{kind}",c.mime2kind(s)),s.tmb&&(o=c.option("tmbUrl")+s.tmb),s.read?"directory"!=s.mime||s.alias?r=c.formatSize(s.size):(r=p.spinner.replace("{text}",i.calc).replace("{name}","size"),w.push(s.hash)):r=i.unknown,m.push(h.replace(v,i.size).replace(y,r)),s.alias&&m.push(h.replace(v,i.aliasfor).replace(y,s.alias)),m.push(h.replace(v,i.path).replace(y,c.escape(c.path(s.hash,!0)))),s.read){var I,F=c.escape(s.name);if("1"==s.url)m.push(h.replace(v,i.link).replace(y,p.spinner.replace("{text}",i.modify).replace("{name}","url"))),c.request({data:{cmd:"url",target:s.hash},preventDefault:!0}).fail(function(){x(F,"url")}).done(function(e){if(x('
'+F+" "||F,"url"),e.url){var t=c.file(s.hash);t.url=e.url}});else{if(u.nullUrlDirLinkSelf&&"directory"==s.mime&&null===s.url){var M=window.location;I=M.pathname+M.search+"#elf_"+s.hash}else I=c.url(s.hash);m.push(h.replace(v,i.link).replace(y,'
'+F+" "))}}s.dim?m.push(h.replace(v,i.dim).replace(y,s.dim)):-1!==s.mime.indexOf("image")&&(s.width&&s.height?m.push(h.replace(v,i.dim).replace(y,s.width+"x"+s.height)):(m.push(h.replace(v,i.dim).replace(y,p.spinner.replace("{text}",i.calc).replace("{name}","dim"))),c.request({data:{cmd:"dim",target:s.hash},preventDefault:!0}).fail(function(){x(i.unknown,"dim")}).done(function(e){if(x(e.dim||i.unknown,"dim"),e.dim){var t=e.dim.split("x"),n=c.file(s.hash);n.width=t[0],n.height=t[1]}}))),m.push(h.replace(v,i.modify).replace(y,c.formatDate(s))),m.push(h.replace(v,i.perms).replace(y,c.formatPermissions(s))),m.push(h.replace(v,i.locked).replace(y,s.locked?i.yes:i.no)),s.owner&&m.push(h.replace(v,i.owner).replace(y,s.owner)),s.group&&m.push(h.replace(v,i.group).replace(y,s.group)),s.perm&&m.push(h.replace(v,i.perm).replace(y,c.formatFileMode(s.perm))),u.custom&&e.each(u.custom,function(t,n){n.mimes&&!e.map(n.mimes,function(e){return s.mime===e||0===s.mime.indexOf(e+"/")?!0:null}).length||n.hashRegex&&!s.hash.match(n.hashRegex)||(m.push(h.replace(v,c.i18n(n.label)).replace(y,n.tpl.replace("{id}",k))),n.action&&"function"==typeof n.action&&T.push(n.action))})}else g=g.replace("{class}","elfinder-cwd-icon-group"),l=p.groupTitle.replace("{items}",i.items).replace("{num}",f),d=e.map(a,function(e){return"directory"==e.mime?1:null}).length,d?(m.push(h.replace(v,i.kind).replace(y,d==f?i.folders:i.folders+" "+d+", "+i.files+" "+(f-d))),m.push(h.replace(v,i.size).replace(y,p.spinner.replace("{text}",i.calc).replace("{name}","size"))),w=e.map(a,function(e){return e.hash})):(r=0,e.each(a,function(e,t){var n=parseInt(t.size);n>=0&&r>=0?r+=n:r="unknown"}),m.push(h.replace(v,i.kind).replace(y,i.files)),m.push(h.replace(v,i.size).replace(y,c.formatSize(r))));g=g.replace("{title}",l).replace("{content}",m.join("")),C=c.dialog(g,b),C.attr("id",k),o&&e("
").load(function(){C.find(".elfinder-cwd-icon").css("background",'url("'+o+'") center center no-repeat')}).attr("src",o),w.length&&c.request({data:{cmd:"size",targets:w},preventDefault:!0}).fail(function(){x(i.unknown,"size")}).done(function(e){var t=parseInt(e.size);x(t>=0?c.formatSize(t):i.unknown,"size")}),T.length&&e.each(T,function(e,t){try{t(s,c,C)}catch(n){c.debug("error",n)}})}},elFinder.prototype.commands.mkdir=function(){this.disableOnSearch=!0,this.updateOnSelect=!1,this.mime="directory",this.prefix="untitled folder",this.exec=e.proxy(this.fm.res("mixin","make"),this),this.shortcuts=[{pattern:"ctrl+shift+n"}],this.getstate=function(){return!this._disabled&&this.fm.cwd().write?0:-1}},elFinder.prototype.commands.mkfile=function(){this.disableOnSearch=!0,this.updateOnSelect=!1,this.mime="text/plain",this.prefix="untitled file.txt",this.exec=e.proxy(this.fm.res("mixin","make"),this),this.getstate=function(){return!this._disabled&&this.fm.cwd().write?0:-1}},elFinder.prototype.commands.netmount=function(){var t=this;this.alwaysEnabled=!0,this.updateOnSelect=!1,this.drivers=[],this.handlers={load:function(){this.drivers=this.fm.netDrivers}},this.getstate=function(){return this.drivers.length?0:-1},this.exec=function(){var n=t.fm,i=e.Deferred(),a=t.options,r=function(){var r,o={protocol:e("
").change(function(){var e=this.value;l.find(".elfinder-netmount-tr").hide(),l.find(".elfinder-netmount-tr-"+e).show(),"function"==typeof a[e].select&&a[e].select(n)})},s={title:n.i18n("netMountDialogTitle"),resizable:!1,modal:!0,destroyOnClose:!0,close:function(){delete t.dialog,"pending"==i.state()&&i.reject()},buttons:{}},l=e('
'),d=e("
");return l.append(e("
").append(e("
"+n.i18n("protocol")+" ")).append(e("
").append(o.protocol))),e.each(t.drivers,function(t,i){o.protocol.append('
'+n.i18n(i)+" "),e.each(a[i].inputs,function(t,a){a.attr("name",t),"hidden"!=a.attr("type")?(a.addClass("ui-corner-all elfinder-netmount-inputs-"+i),l.append(e("
").addClass("elfinder-netmount-tr elfinder-netmount-tr-"+i).append(e("
"+n.i18n(t)+" ")).append(e("
").append(a)))):(a.addClass("elfinder-netmount-inputs-"+i),d.append(a))})}),l.append(d),l.find(".elfinder-netmount-tr").hide(),s.buttons[n.i18n("btnMount")]=function(){var a=o.protocol.val(),r={cmd:"netmount",protocol:a};return e.each(l.find("input.elfinder-netmount-inputs-"+a),function(t,n){var i;i="function"==typeof n.val?e.trim(n.val()):e.trim(n.value),i&&(r[n.name]=i)}),r.host?(n.request({data:r,notify:{type:"netmount",cnt:1,hideCnt:!0}}).done(function(e){e.added&&e.added.length&&n.exec("open",e.added[0].hash),i.resolve()}).fail(function(e){i.reject(e)}),t.dialog.elfinderdialog("close"),void 0):n.trigger("error",{error:"errNetMountHostReq"})},s.buttons[n.i18n("btnCancel")]=function(){t.dialog.elfinderdialog("close")},r=n.dialog(l,s),r.ready(function(){o.protocol.change(),r.elfinderdialog("posInit")}),r};return n.bind("netmount",function(e){var t=e.data||null;t&&t.protocol&&a[t.protocol]&&"function"==typeof a[t.protocol].done&&a[t.protocol].done(n,t)}),t.dialog||(t.dialog=r()),i.promise()}},elFinder.prototype.commands.netunmount=function(){this.alwaysEnabled=!0,this.updateOnSelect=!1,this.drivers=[],this.handlers={load:function(){this.drivers=this.fm.netDrivers}},this.getstate=function(e){var t=this.fm;return e&&this.drivers.length&&!this._disabled&&t.file(e[0]).netkey?0:-1},this.exec=function(t){var n=this,i=this.fm,a=e.Deferred().fail(function(e){e&&i.error(e)}),r=i.file(t[0]);return this._disabled?a.reject():("pending"==a.state()&&i.confirm({title:n.title,text:i.i18n("confirmUnmount",r.name),accept:{label:"btnUnmount",callback:function(){i.request({data:{cmd:"netmount",protocol:"netunmount",host:r.netkey,user:r.hash,pass:"dum"},notify:{type:"netunmount",cnt:1,hideCnt:!0},preventFail:!0}).fail(function(e){a.reject(e)}).done(function(e){var t=i.root()==r.hash;if(e.removed=[r.hash],i.remove(e),t){var n=i.files();for(var o in n)if("directory"==i.file(o).mime){i.exec("open",o);break}}a.resolve()})}},cancel:{label:"btnCancel",callback:function(){a.reject()}}}),a)}},elFinder.prototype.commands.open=function(){this.alwaysEnabled=!0,this._handlers={dblclick:function(e){e.preventDefault(),this.exec()},"select enable disable reload":function(e){this.update("disable"==e.type?-1:void 0)}},this.shortcuts=[{pattern:"ctrl+down numpad_enter"+("mac"!=this.fm.OS&&" enter")}],this.getstate=function(t){var t=this.files(t),n=t.length;return 1==n?0:n&&!this.fm.UA.Mobile?e.map(t,function(e){return"directory"==e.mime?null:e}).length==n?0:-1:-1},this.exec=function(t,n){var i,a,r,o,s,l,d,c,u,p,h,f,m=this.fm,g=e.Deferred().fail(function(e){e&&m.error(e)}),v=this.files(t),y=v.length,b="object"==typeof n?n.thash:!1;if(!y&&!b)return g.reject();if(b||1==y&&(i=v[0])&&"directory"==i.mime)return b||!i||i.read?m.request({data:{cmd:"open",target:b||i.hash},notify:{type:"open",cnt:1,hideCnt:!0},syncOnFail:!0}):g.reject(["errOpen",i.name,"errPerm"]);if(v=e.map(v,function(e){return"directory"!=e.mime?e:null}),y!=v.length)return g.reject();try{u=new RegExp(m.option("dispInlineRegex"))}catch(w){u=!1}for(p=e("
").hide().appendTo(e("body")),h="string"==typeof p.get(0).download,y=v.length;y--;){if(i=v[y],!i.read)return g.reject(["errOpen",i.name,"errPerm"]);if(f=u&&i.mime.match(u),m.UA.Mobile||!f)if(a=m.openUrl(i.hash,!f),h)!f&&p.attr("download",i.name),p.attr("href",a).attr("target","_blank").get(0).click();else{var x=window.open(a);if(!x)return g.reject("errPopup")}else{s=d=Math.round(2*e(window).width()/3),l=c=Math.round(2*e(window).height()/3),parseInt(i.width)&&parseInt(i.height)?(s=parseInt(i.width),l=parseInt(i.height)):i.dim&&(r=i.dim.split("x"),s=parseInt(r[0]),l=parseInt(r[1])),d>=s&&c>=l?(d=s,c=l):s-d>l-c?c=Math.round(l*(d/s)):d=Math.round(s*(c/l)),o="width="+d+",height="+c;var x=window.open("","new_window",o+",top=50,left=50,scrollbars=yes,resizable=yes");if(!x)return g.reject("errPopup");var k=document.createElement("form");k.action=m.options.url,k.method="POST",k.target="new_window",k.style.display="none";var C=e.extend({},m.options.customData,{cmd:"file",target:i.hash});e.each(C,function(e,t){var n=document.createElement("input");n.name=e,n.value=t,k.appendChild(n)}),document.body.appendChild(k),k.submit(),x.focus()}}return p.remove(),g.resolve(t)}},elFinder.prototype.commands.opendir=function(){this.alwaysEnabled=!0,this.getstate=function(){var e,t=this.fm.selected(),n=t.length;return 1!==n?-1:(e=this.fm.getUI("cwd").parent(),e.hasClass("elfinder-search-result")?0:-1)},this.exec=function(t){var n,i=this.fm,a=e.Deferred(),r=this.files(t),o=r.length,s=null;return o&&r[0].phash?(n=r[0].phash,i.file(n)||(s=i.request({data:{cmd:"parents",target:n},syncOnFail:!1})),e.when(s).done(function(){i.trigger("searchend",{noupdate:!0}),i.request({data:{cmd:"open",target:n},notify:{type:"open",cnt:1,hideCnt:!0},syncOnFail:!1})}),a):a.reject()}},elFinder.prototype.commands.paste=function(){this.updateOnSelect=!1,this.handlers={changeclipboard:function(){this.update()}},this.shortcuts=[{pattern:"ctrl+v shift+insert"}],this.getstate=function(t){if(this._disabled)return-1;if(t){if(e.isArray(t)){if(1!=t.length)return-1;t=this.fm.file(t[0])}}else t=this.fm.cwd();return this.fm.clipboard().length&&"directory"==t.mime&&t.write?0:-1},this.exec=function(t){var n,i,a=this,r=a.fm,t=t?this.files(t)[0]:r.cwd(),o=r.clipboard(),s=o.length,l=s?o[0].cut:!1,d=l?"errMove":"errCopy",c=[],u=[],p=e.Deferred().fail(function(e){e&&r.error(e)}).always(function(){r.unlockfiles({files:e.map(o,function(e){return e.hash})})}),h=function(t){return t.length&&r._commands.duplicate?r.exec("duplicate",t):e.Deferred().resolve()},f=function(n){var i=e.Deferred(),o=[],s=function(t,n){for(var i=[],a=t.length;a--;)-1!==e.inArray(t[a].name,n)&&i.unshift(a);return i},d=function(e){var t=o[e],a=n[t],s=e==o.length-1;a&&r.confirm({title:r.i18n(l?"moveFiles":"copyFiles"),text:["errExists",a.name,"confirmRepl"],all:!s,accept:{label:"btnYes",callback:function(t){s||t?u(n):d(++e)}},reject:{label:"btnNo",callback:function(t){var i;if(t)for(i=o.length;e '),y=e("
"),b=e('
'),w=e('
').mousedown(function(t){var n=r.window,a=n.hasClass(p),s="scroll."+o.namespace,l=e(window);t.stopPropagation(),a?(n.css(n.data("position")).unbind("mousemove"),l.unbind(s).trigger(r.resize).unbind(r.resize),x.unbind("mouseenter").unbind("mousemove")):(n.data("position",{left:n.css("left"),top:n.css("top"),width:n.width(),height:n.height()}).css({width:"100%",height:"100%"}),e(window).bind(s,function(){n.css({left:parseInt(e(window).scrollLeft())+"px",top:parseInt(e(window).scrollTop())+"px"})}).bind(r.resize,function(){r.preview.trigger("changesize")}).trigger(s).trigger(r.resize),n.bind("mousemove",function(){x.stop(!0,!0).show().delay(3e3).fadeOut("slow")}).mousemove(),x.mouseenter(function(){x.stop(!0,!0).show()}).mousemove(function(e){e.stopPropagation()})),x.attr("style","").draggable(a?"destroy":{}),n.toggleClass(p),e(this).toggleClass(u+"-fullscreen-off");var d=n;i.is(".ui-resizable")&&(d=d.add(i)),e.fn.resizable&&!o.UA.Touch&&d.resizable(a?"enable":"disable").removeClass("ui-state-disabled")}),x=e('
').append(e('
').mousedown(function(){h(37)})).append(w).append(e('
').mousedown(function(){h(39)})).append('
').append(e('
').mousedown(function(){r.window.trigger("close")}));this.resize="resize."+o.namespace,this.info=e('
').append(y).append(b),this.preview=e('
').bind("change",function(){r.info.attr("style","").hide(),y.removeAttr("class").attr("style",""),b.html("")}).bind("update",function(t){var n,i=r.fm,a=(r.preview,t.file),o='{value}
';a?(!a.read&&t.stopImmediatePropagation(),r.window.data("hash",a.hash),r.preview.unbind("changesize").trigger("change").children().remove(),v.html(i.escape(a.name)),b.html(o.replace(/\{value\}/,i.escape(a.name))+o.replace(/\{value\}/,i.mime2kind(a))+("directory"==a.mime?"":o.replace(/\{value\}/,i.formatSize(a.size)))+o.replace(/\{value\}/,i.i18n("modify")+": "+i.formatDate(a))),y.addClass("elfinder-cwd-icon ui-corner-all "+i.mime2class(a.mime)),a.tmb&&e(" ").hide().appendTo(r.preview).load(function(){y.css("background",'url("'+n+'") center center no-repeat'),e(this).remove()}).attr("src",n=i.tmb(a.hash)),r.info.delay(100).fadeIn(10)):t.stopImmediatePropagation()}),this.window=e('
').click(function(e){e.stopPropagation()}).append(e('
').append(v).append(e(' ').mousedown(function(e){e.stopPropagation(),r.window.trigger("close")}))).append(this.preview.add(x)).append(r.info.hide()).draggable({handle:"div.elfinder-quicklook-titlebar"}).bind("open",function(){var e,t=r.window,n=r.value;r.closed()&&n&&(e=a.find("#"+o.cwdHash2Id(n.hash))).length&&(x.attr("style",""),c=l,e.trigger("scrolltoview"),t.css(f(e)).show().animate(m(),550,function(){c=d,r.update(1,r.value)}))}).bind("close",function(){var e=r.window,t=r.preview.trigger("change"),n=(r.value,a.find("#"+o.cwdHash2Id(e.data("hash")))),i=function(){c=s,e.hide(),t.children().remove(),r.update(0,r.value)};r.opened()&&(c=l,e.hasClass(p)&&w.mousedown(),n.length?e.animate(f(n),500,i):i())}),this.alwaysEnabled=!0,this.value=null,this.handlers={select:function(){this.update(void 0,this.fm.selectedFiles()[0])},error:function(){r.window.is(":visible")&&r.window.data("hash","").trigger("close")},"searchshow searchhide":function(){this.opened()&&this.window.trigger("close")}},this.shortcuts=[{pattern:"space"}],this.support={audio:{ogg:g('audio/ogg; codecs="vorbis"'),mp3:g("audio/mpeg;"),wav:g('audio/wav; codecs="1"'),m4a:g("audio/x-m4a;")||g("audio/aac;")},video:{ogg:g('video/ogg; codecs="theora"'),webm:g('video/webm; codecs="vp8, vorbis"'),mp4:g('video/mp4; codecs="avc1.42E01E"')||g('video/mp4; codecs="avc1.42E01E, mp4a.40.2"')}},this.closed=function(){return c==s},this.opened=function(){return c==d},this.init=function(){var s=this.options,l=this.window,d=this.preview;t=s.width>0?parseInt(s.width):450,n=s.height>0?parseInt(s.height):300,o.one("load",function(){i=o.getUI(),a=o.getUI("cwd"),l.appendTo("body").zIndex(100+i.zIndex()),e(document).keydown(function(e){27==e.keyCode&&r.opened()&&l.trigger("close")}),e.fn.resizable&&!o.UA.Touch&&l.resizable({handles:"se",minWidth:350,minHeight:120,resize:function(){d.trigger("changesize")}}),r.change(function(){r.opened()&&(r.value?d.trigger(e.Event("update",{file:r.value})):l.trigger("close"))}),e.each(o.commands.quicklook.plugins||[],function(e,t){"function"==typeof t&&new t(r)}),d.bind("update",function(){r.info.show()})})},this.getstate=function(){return 1==this.fm.selected().length?c==d?1:0:-1},this.exec=function(){this.enabled()&&this.window.trigger(this.opened()?"close":"open")},this.hideinfo=function(){this.info.stop(!0).hide()}},elFinder.prototype.commands.quicklook.plugins=[function(t){var n=["image/jpeg","image/png","image/gif"],i=t.preview;e.each(navigator.mimeTypes,function(t,i){var a=i.type;0===a.indexOf("image/")&&e.inArray(a,n)&&n.push(a)}),i.bind("update",function(a){var r,o=a.file;-1!==e.inArray(o.mime,n)&&(a.stopImmediatePropagation(),r=e(" ").hide().appendTo(i).load(function(){setTimeout(function(){var e=(r.width()/r.height()).toFixed(2);i.bind("changesize",function(){var t,n,a=parseInt(i.width()),o=parseInt(i.height());e<(a/o).toFixed(2)?(n=o,t=Math.floor(n*e)):(t=a,n=Math.floor(t/e)),r.width(t).height(n).css("margin-top",o>n?Math.floor((o-n)/2):0)}).trigger("changesize"),t.hideinfo(),r.fadeIn(100)},1)}).attr("src",t.fm.openUrl(o.hash)))})},function(t){var n=["text/html","application/xhtml+xml"],i=t.preview,a=t.fm;i.bind("update",function(r){var o,s=r.file;-1!==e.inArray(s.mime,n)&&(r.stopImmediatePropagation(),i.one("change",function(){"pending"==o.state()&&o.reject()}),o=a.request({data:{cmd:"get",target:s.hash,current:s.phash,conv:1},preventDefault:!0}).done(function(n){t.hideinfo(),doc=e('').appendTo(i)[0].contentWindow.document,doc.open(),doc.write(n.content),doc.close()}))})},function(t){var n=t.fm,i=n.res("mimes","text"),a=t.preview;a.bind("update",function(r){var o,s=r.file,l=s.mime;(0===l.indexOf("text/")||-1!==e.inArray(l,i))&&(r.stopImmediatePropagation(),a.one("change",function(){"pending"==o.state()&&o.reject()}),o=n.request({data:{cmd:"get",target:s.hash,conv:1},preventDefault:!0}).done(function(i){t.hideinfo(),e('").appendTo(a)}))})},function(t){var n=t.fm,i="application/pdf",a=t.preview,r=!1;n.UA.Safari&&"mac"==n.OS||n.UA.IE?r=!0:e.each(navigator.plugins,function(t,n){e.each(n,function(e,t){return t.type==i?!(r=!0):void 0})}),r&&a.bind("update",function(r){var o,s=r.file;s.mime==i&&(r.stopImmediatePropagation(),a.one("change",function(){o.unbind("load").remove()}),o=e('').hide().appendTo(a).load(function(){t.hideinfo(),o.show()}).attr("src",n.url(s.hash)))})},function(t){var n=t.fm,i="application/x-shockwave-flash",a=t.preview,r=!1;e.each(navigator.plugins,function(t,n){e.each(n,function(e,t){return t.type==i?!(r=!0):void 0})}),r&&a.bind("update",function(r){var o,s=r.file;s.mime==i&&(r.stopImmediatePropagation(),t.hideinfo(),a.append(o=e(' ')))})},function(t){var n,i=t.preview,a=!!t.options.autoplay,r={"audio/mpeg":"mp3","audio/mpeg3":"mp3","audio/mp3":"mp3","audio/x-mpeg3":"mp3","audio/x-mp3":"mp3","audio/x-wav":"wav","audio/wav":"wav","audio/x-m4a":"m4a","audio/aac":"m4a","audio/mp4":"m4a","audio/x-mp4":"m4a","audio/ogg":"ogg"};i.bind("update",function(o){var s=o.file,l=r[s.mime];t.support.audio[l]&&(o.stopImmediatePropagation(),n=e(' ').appendTo(i),a&&n[0].play())}).bind("change",function(){n&&n.parent().length&&(n[0].pause(),n.remove(),n=null)})},function(t){var n,i=t.preview,a=!!t.options.autoplay,r={"video/mp4":"mp4","video/x-m4v":"mp4","video/ogg":"ogg","application/ogg":"ogg","video/webm":"webm"};i.bind("update",function(o){var s=o.file,l=r[s.mime];t.support.video[l]&&(o.stopImmediatePropagation(),t.hideinfo(),n=e(' ').appendTo(i),a&&n[0].play())}).bind("change",function(){n&&n.parent().length&&(n[0].pause(),n.remove(),n=null)})},function(t){var n,i=t.preview,a=[];e.each(navigator.plugins,function(t,n){e.each(n,function(e,t){(0===t.type.indexOf("audio/")||0===t.type.indexOf("video/"))&&a.push(t.type)})}),i.bind("update",function(r){var o,s=r.file,l=s.mime;-1!==e.inArray(s.mime,a)&&(r.stopImmediatePropagation(),(o=0===l.indexOf("video/"))&&t.hideinfo(),n=e(' ').appendTo(i))}).bind("change",function(){n&&n.parent().length&&(n.remove(),n=null)})}],elFinder.prototype.commands.reload=function(){var t=this,n=!1;this.alwaysEnabled=!0,this.updateOnSelect=!0,this.shortcuts=[{pattern:"ctrl+shift+r f5"}],this.getstate=function(){return 0},this.init=function(){this.fm.bind("search searchend",function(e){n="search"==e.type})},this.fm.bind("contextmenu",function(){var n=t.fm;if(n.options.sync>=1e3){var i;t.extra={icon:"accept",node:e(" ").attr({title:n.i18n("autoSync")}).on("click",function(e){e.stopPropagation(),e.preventDefault(),i.parent().toggleClass("ui-state-disabled",n.options.syncStart).parent().removeClass("ui-state-hover"),n.options.syncStart=!n.options.syncStart,n.autoSync(n.options.syncStart?null:"stop")})},i=t.extra.node,i.ready(function(){setTimeout(function(){i.parent().toggleClass("ui-state-disabled",!n.options.syncStart)},10)})}}),this.exec=function(){var t=this.fm;if(!n){var i=t.sync(),a=setTimeout(function(){t.notify({type:"reload",cnt:1,hideCnt:!0}),i.always(function(){t.notify({type:"reload",cnt:-1})})},t.notifyDelay);return i.always(function(){clearTimeout(a),t.trigger("reload")})}e("div.elfinder-toolbar > div."+t.res("class","searchbtn")+" > span.ui-icon-search").click()}},elFinder.prototype.commands.rename=function(){this.shortcuts=[{pattern:"f2"+("mac"==this.fm.OS?" enter":"")}],this.getstate=function(e){var e=this.files(e);return this._disabled||1!=e.length||!e[0].phash||e[0].locked?-1:0},this.exec=function(t){var n,i=this.fm,a=i.getUI("cwd"),r=t||(i.selected().length?i.selected():!1)||[i.cwd().hash],o=r.length,s=i.file(r.shift()),l=".elfinder-cwd-filename",d=t&&t._type?t._type:i.selected().length?"files":"navbar",c="navbar"===d,u=i.cwd().hash==s.hash,p="files"===d&&"list"!=i.storage("view"),h=function(){p?(y.zIndex("").css("position",""),g.css("max-height","")):c||(y.css("width",""),y.parent("td").css("overflow",""))},f=e.Deferred().done(function(e){u&&i.exec("open",e.added[0].hash)}).fail(function(e){var t=m.parent(),n=i.escape(s.name);p&&(n=n.replace(/([_.])/g,"$1")),h(),c?m.replaceWith(n):t.length?(m.remove(),t.html(n)):(a.find("#"+i.cwdHash2Id(s.hash)).find(l).html(n),setTimeout(function(){a.find("#"+i.cwdHash2Id(s.hash)).click()},50)),e&&i.error(e)}).always(function(){i.enable()}),m=e(p?"":' ').on("keyup text",function(){p?(this.style.height="1px",this.style.height=this.scrollHeight+"px"):n&&(this.style.width=n+"px",this.scrollWidth>n&&(this.style.width=this.scrollWidth+10+"px"))}).keydown(function(t){t.stopPropagation(),t.stopImmediatePropagation(),t.keyCode==e.ui.keyCode.ESCAPE?f.reject():t.keyCode==e.ui.keyCode.ENTER&&m.blur()}).mousedown(function(e){e.stopPropagation()}).click(function(e){e.stopPropagation()}).dblclick(function(e){e.stopPropagation(),e.preventDefault()}).blur(function(){var t=e.trim(m.val()),n=(m.parent(),!0);if(y.length){if(m[0].setSelectionRange&&m[0].setSelectionRange(0,0),t==s.name)return f.reject();if(i.options.validName&&i.options.validName.test)try{n=i.options.validName.test(t)}catch(r){n=!1}if(!t||".."===t||!n)return i.error("errInvName"),!1;if(i.fileByName(t,s.phash))return i.error(["errExists",t]),!1;h(),(c?y:g).html(i.escape(t)),i.lockfiles({files:[s.hash]}),i.request({data:{cmd:"rename",target:s.hash,name:t},notify:{type:"rename",cnt:1}}).fail(function(){f.reject(),i.sync()}).done(function(e){if(f.resolve(e),!c&&e&&e.added&&e.added[0]){var t=a.find("#"+i.cwdHash2Id(e.added[0].hash));t.length&&t.trigger("scrolltoview")}}).always(function(){i.unlockfiles({files:[s.hash]})})}}),g=c?e("#"+i.navHash2Id(s.hash)).contents().filter(function(){return 3==this.nodeType&&e(this).parent().attr("id")===i.navHash2Id(s.hash)}):a.find("#"+i.cwdHash2Id(s.hash)).find(l),v=s.name.replace(/\.((tar\.(gz|bz|bz2|z|lzo))|cpio\.gz|ps\.gz|xcf\.(gz|bz2)|[a-z0-9]{1,4})$/gi,""),y=g.parent();return c?g.replaceWith(m.val(s.name)):(p?(y.zIndex(y.zIndex()+1).css("position","relative"),g.css("max-height","none")):c||(n=y.width(),y.width(n-15),y.parent("td").css("overflow","visible")),g.empty().append(m.val(s.name))),o>1||this.getstate([s.hash])<0?f.reject():s&&g.length?s.locked?f.reject(["errLocked",s.name]):(i.one("select",function(){m.parent().length&&s&&-1===e.inArray(s.hash,i.selected())&&m.blur()}),m.trigger("keyup"),m.select().focus(),m[0].setSelectionRange&&m[0].setSelectionRange(0,v.length),f):f.reject("errCmdParams",this.title)}},elFinder.prototype.commands.resize=function(){this.updateOnSelect=!1,this.getstate=function(){var e=this.fm.selectedFiles();return!this._disabled&&1==e.length&&e[0].read&&e[0].write&&-1!==e[0].mime.indexOf("image/")?0:-1},this.exec=function(t){var n,i,a=this.fm,r=this.files(t),o=e.Deferred(),s=function(t,n){var i="image/jpeg"===t.mime,r=e('
'),s=' ',l='
',d='
',c=e('
'),u=e('
'),p=e(''+a.i18n("ntfloadimg")+"
"),h=e('
'),f=e('
'),m=e('
'),g=e('
'),v='
',y='
',b=' ',w=e('
'),x=e(y).attr("title",a.i18n("rotate-cw")).append(e(' ').click(function(){B-=90,nt.update(B)
-})),k=e(y).attr("title",a.i18n("rotate-ccw")).append(e(' ').click(function(){B+=90,nt.update(B)})),C=e(" "),T=e('
'),I=e('
').append(''+a.i18n("resize")+" ").append(''+a.i18n("crop")+" ").append(''+a.i18n("rotate")+" "),F=e("input",I).attr("disabled","disabled").change(function(){var t=e("input:checked",I).val();Z(),it(!0),at(!0),rt(!0),"resize"==t?(m.show(),w.hide(),g.hide(),it()):"crop"==t?(w.hide(),m.hide(),g.show(),at()):"rotate"==t&&(m.hide(),g.hide(),w.show(),rt())}),M=e(' ').change(function(){q=!!M.prop("checked"),et.fixHeight(),it(!0),it()}),P=e(s).change(function(){var e=parseInt(P.val()),t=parseInt(q?Math.round(e/H):A.val());e>0&&t>0&&(et.updateView(e,t),A.val(t))}),A=e(s).change(function(){var e=parseInt(A.val()),t=parseInt(q?Math.round(e*H):P.val());t>0&&e>0&&(et.updateView(t,e),P.val(t))}),S=e(s).change(function(){tt.updateView()}),z=e(s).change(function(){tt.updateView()}),D=e(s).change(function(){tt.updateView()}),O=e(s).change(function(){tt.updateView()}),U=i?e(s).val(a.option("jpgQuality")).addClass("quality").on("blur",function(){var e=Math.min(100,Math.max(1,parseInt(this.value)));r.find("input.quality").val(e)}):null,E=e(' ').change(function(){nt.update()}),j=e('
').slider({min:0,max:360,value:E.val(),animate:!0,change:function(e,t){t.value!=j.slider("value")&&nt.update(t.value)},slide:function(e,t){nt.update(t.value,!1)}}),H=1,R=1,_=0,N=0,q=!0,L=0,$=0,V=0,W=0,B=0,K=e(" ").load(function(){p.remove(),_=K.width(),N=K.height(),H=_/N,et.updateView(_,N),h.append(K.show()).show(),P.val(_),A.val(N);var t=Math.min(L,$)/Math.sqrt(Math.pow(_,2)+Math.pow(N,2));V=_*t,W=N*t,F.button("enable"),c.find("input,select").removeAttr("disabled").filter(":text").keydown(function(t){var n,i=t.keyCode;return t.stopPropagation(),i>=37&&40>=i||i==e.ui.keyCode.BACKSPACE||i==e.ui.keyCode.DELETE||65==i&&(t.ctrlKey||t.metaKey)||27==i?void 0:(9==i&&(n=e(this).parent()[t.shiftKey?"prevAll":"nextAll"]("div.elfinder-resize-row").children(":text"),n.length?n[0].focus():e(this).parent().parent().find(":text:"+(t.shiftKey?"last":"first")).focus()),13==i?(a.confirm({title:e("input:checked",I).val(),text:"confirmReq",accept:{label:"btnApply",callback:function(){ot()}},cancel:{label:"btnCancel",callback:function(){}}}),void 0):(i>=48&&57>=i||i>=96&&105>=i||t.preventDefault(),void 0))}).filter(":first").focus(),it(),T.hover(function(){T.toggleClass("ui-state-hover")}).click(Z)}).error(function(){p.text("Unable to load image").css("background","transparent")}),J=e("
"),G=e(" "),X=e("
"),Y=e(" "),Q=function(e){return i?8*Math.round(e/8):Math.round(e)},Z=function(){P.val(_),A.val(N),et.updateView(_,N)},et={update:function(){P.val(Q(K.width()/R)),A.val(Q(K.height()/R))},updateView:function(e,t){e>L||t>$?e/L>t/$?(R=L/e,K.width(L).height(Math.ceil(t*R))):(R=$/t,K.height($).width(Math.ceil(e*R))):K.width(e).height(t),R=K.width()/e,C.text("1 : "+(1/R).toFixed(2)),et.updateHandle()},updateHandle:function(){h.width(K.width()).height(K.height())},fixHeight:function(){var e,t;q&&(e=P.val(),t=Math.round(e/H),et.updateView(e,t),A.val(t))}},tt={update:function(){D.val(Q((f.data("w")||f.width())/R)),O.val(Q((f.data("h")||f.height())/R)),S.val(Math.round(((f.data("x")||f.offset().left)-G.offset().left)/R)),z.val(Math.round(((f.data("y")||f.offset().top)-G.offset().top)/R))},updateView:function(){var e=parseInt(S.val())*R+G.offset().left,t=parseInt(z.val())*R+G.offset().top,n=D.val()*R,i=O.val()*R;f.data({x:e,y:t,w:n,h:i}).width(Math.round(n)).height(Math.round(i)).offset({left:Math.round(e),top:Math.round(t)}),X.width(f.width()).height(f.height())},resize_update:function(){f.data({w:null,h:null}),tt.update(),X.width(f.width()).height(f.height())},drag_update:function(){f.data({x:null,y:null}),tt.update()}},nt={mouseStartAngle:0,imageStartAngle:0,imageBeingRotated:!1,update:function(e,t){"undefined"==typeof e&&(B=e=parseInt(E.val())),"undefined"==typeof t&&(t=!0),!t||a.UA.Opera||a.UA.ltIE8?Y.rotate(e):Y.animate({rotate:e+"deg"}),e%=360,0>e&&(e+=360),E.val(parseInt(e)),j.slider("value",E.val())},execute:function(e){if(nt.imageBeingRotated){var t=nt.getCenter(Y),n=e.pageX-t[0],i=e.pageY-t[1],a=Math.atan2(i,n),r=a-nt.mouseStartAngle+nt.imageStartAngle;return r=Math.round(180*parseFloat(r)/Math.PI),e.shiftKey&&(r=15*Math.round((r+6)/15)),Y.rotate(r),r%=360,0>r&&(r+=360),E.val(r),j.slider("value",E.val()),!1}},start:function(t){nt.imageBeingRotated=!0;var n=nt.getCenter(Y),i=t.pageX-n[0],a=t.pageY-n[1];return nt.mouseStartAngle=Math.atan2(a,i),nt.imageStartAngle=parseFloat(Y.rotate())*Math.PI/180,e(document).mousemove(nt.execute),!1},stop:function(){return nt.imageBeingRotated?(e(document).unbind("mousemove",nt.execute),setTimeout(function(){nt.imageBeingRotated=!1},10),!1):void 0},getCenter:function(){var e=Y.rotate();Y.rotate(0);var t=Y.offset(),n=t.left+Y.width()/2,i=t.top+Y.height()/2;return Y.rotate(e),Array(n,i)}},it=function(t){e.fn.resizable&&(t?(h.filter(":ui-resizable").resizable("destroy"),h.hide()):(h.show(),h.resizable({alsoResize:K,aspectRatio:q,resize:et.update,stop:et.fixHeight})))},at=function(t){e.fn.draggable&&e.fn.resizable&&(t?(f.filter(":ui-resizable").resizable("destroy").filter(":ui-draggable").draggable("destroy"),J.hide()):(J.show().width(K.width()).height(K.height()),G.width(K.width()).height(K.height()),X.width(K.width()).height(K.height()),f.width(G.width()).height(G.height()).offset(G.offset()).resizable({containment:J,resize:tt.resize_update,handles:"all"}).draggable({handle:X,containment:G,drag:tt.drag_update}),tt.update()))},rt=function(t){e.fn.draggable&&e.fn.resizable&&(t?Y.hide():Y.show().width(V).height(W).css("margin-top",($-W)/2+"px").css("margin-left",(L-V)/2+"px"))},ot=function(){var n,i,s,l,d,c,u=e("input:checked",I).val();if("resize"==u)n=parseInt(P.val())||0,i=parseInt(A.val())||0;else if("crop"==u)n=parseInt(D.val())||0,i=parseInt(O.val())||0,s=parseInt(S.val())||0,l=parseInt(z.val())||0;else if("rotate"==u){if(n=_,i=N,d=parseInt(E.val())||0,0>d||d>360)return a.error("Invalid rotate degree");if(0==d||360==d)return a.error("Image dose not rotated")}if(c=U?parseInt(U.val()):0,"rotate"!=u){if(0>=n||0>=i)return a.error("Invalid image size");if(n==_&&i==N)return a.error("Image size not changed")}r.elfinderdialog("close"),a.request({data:{cmd:"resize",target:t.hash,width:n,height:i,x:s,y:l,degree:d,quality:c,mode:u},notify:{type:"resize",cnt:1}}).fail(function(e){o.reject(e)}).done(function(){o.resolve()})},st={},lt="elfinder-resize-handle-hline",dt="elfinder-resize-handle-vline",ct="elfinder-resize-handle-point",ut=a.url(t.hash);Y.mousedown(nt.start),e(document).mouseup(nt.stop),m.append(e(l).append(e(d).text(a.i18n("width")),P,T),e(l).append(e(d).text(a.i18n("height")),A),e(l).append(e(" ").text(a.i18n("aspectRatio")).prepend(M)),U?e(l).append(e(d).text(a.i18n("quality")),U,e(" ").text(" (1-100)")):e(),e(l).append(e(d).text(a.i18n("scale")),C)),g.append(e(l).append(e(d).text("X"),S),e(l).append(e(d).text("Y")).append(z),e(l).append(e(d).text(a.i18n("width")),D),e(l).append(e(d).text(a.i18n("height")),O),U?e(l).append(e(d).text(a.i18n("quality")),U.clone(!0),e(" ").text(" (1-100)")):e()),w.append(e(l).append(e(d).text(a.i18n("rotate")),E,e(" ").text(a.i18n("degree")),e(v).append(x,e(b),k)),e(l).css("height","20px").append(j),U?e(l).append(e(d).text(a.i18n("quality")),U.clone(!0),e(" ").text(" (1-100)")):e()),r.append(I).on("resize",function(e){e.stopPropagation()}),c.append(e(l),m,g.hide(),w.hide()).find("input,select").attr("disabled","disabled"),h.append('
','
','
','
','
','
','
'),u.append(p).append(h.hide()).append(K.hide()),f.css("position","absolute").append('
','
','
','
','
','
','
','
','
','
','
','
'),u.append(J.css("position","absolute").hide().append(G,f.append(X))),u.append(Y.hide()),u.css("overflow","hidden"),r.append(u,c),st[a.i18n("btnApply")]=ot,st[a.i18n("btnCancel")]=function(){r.elfinderdialog("close")},a.dialog(r,{title:a.escape(t.name),width:650,resizable:!1,destroyOnClose:!0,buttons:st,open:function(){var t=r.width()-20;u.width()>t&&u.width(t),u.zIndex(1+e(this).parent().zIndex()),L=u.width()-(h.outerWidth()-h.width()),$=u.height()-(h.outerHeight()-h.height()),K.attr("src",ut+(-1===ut.indexOf("?")?"?":"&")+"_="+Math.random()),G.attr("src",K.attr("src")),Y.attr("src",K.attr("src"))}}).attr("id",n),a.UA.ltIE8&&e(".elfinder-dialog").css("filter",""),T.css("left",P.position().left+P.width()+12),X.css({opacity:.2,"background-color":"#fff",position:"absolute"}),f.css("cursor","move"),f.find(".elfinder-resize-handle-point").css({"background-color":"#fff",opacity:.5,"border-color":"#000"}),Y.css("cursor","pointer"),I.buttonset()};return r.length&&-1!==r[0].mime.indexOf("image/")?(n="resize-"+a.namespace+"-"+r[0].hash,i=a.getUI().find("#"+n),i.length?(i.elfinderdialog("toTop"),o.resolve()):(s(r[0],n),o)):o.reject()}},function(e){var t=function(e,t){var n=0;for(n in t)if("undefined"!=typeof e[t[n]])return t[n];return e[t[n]]="",t[n]};if(e.cssHooks.rotate={get:function(t){return e(t).rotate()},set:function(t,n){return e(t).rotate(n),n}},e.cssHooks.transform={get:function(e){var n=t(e.style,["WebkitTransform","MozTransform","OTransform","msTransform","transform"]);return e.style[n]},set:function(e,n){var i=t(e.style,["WebkitTransform","MozTransform","OTransform","msTransform","transform"]);return e.style[i]=n,n}},e.fn.rotate=function(e){if("undefined"==typeof e){if(window.opera){var t=this.css("transform").match(/rotate\((.*?)\)/);return t&&t[1]?Math.round(180*parseFloat(t[1])/Math.PI):0}var t=this.css("transform").match(/rotate\((.*?)\)/);return t&&t[1]?parseInt(t[1]):0}return this.css("transform",this.css("transform").replace(/none|rotate\(.*?\)/,"")+"rotate("+parseInt(e)+"deg)"),this},e.fx.step.rotate=function(t){0==t.state&&(t.start=e(t.elem).rotate(),t.now=t.start),e(t.elem).rotate(t.now)},"undefined"==typeof window.addEventListener&&"undefined"==typeof document.getElementsByClassName){var n=function(e){for(var t=e,n=t.offsetLeft,i=t.offsetTop;t.offsetParent&&(t=t.offsetParent,t==document.body||"static"==t.currentStyle.position);)t!=document.body&&t!=document.documentElement&&(n-=t.scrollLeft,i-=t.scrollTop),n+=t.offsetLeft,i+=t.offsetTop;return{x:n,y:i}},i=function(e){if("static"==e.currentStyle.position){var t=n(e);e.style.position="absolute",e.style.left=t.x+"px",e.style.top=t.y+"px"}},a=function(e,t){var n,a=1,r=1,o=1,s=1;if("undefined"!=typeof e.style.msTransform)return!0;i(e),n=t.match(/rotate\((.*?)\)/);var l=n&&n[1]?parseInt(n[1]):0;l%=360,0>l&&(l=360+l);var d=l*Math.PI/180,c=Math.cos(d),u=Math.sin(d);a*=c,r*=-u,o*=u,s*=c,e.style.filter=(e.style.filter||"").replace(/progid:DXImageTransform\.Microsoft\.Matrix\([^)]*\)/,"")+("progid:DXImageTransform.Microsoft.Matrix(M11="+a+",M12="+r+",M21="+o+",M22="+s+",FilterType='bilinear',sizingMethod='auto expand')");var p=parseInt(e.style.width||e.width||0),h=parseInt(e.style.height||e.height||0),d=l*Math.PI/180,f=Math.abs(Math.cos(d)),m=Math.abs(Math.sin(d)),g=(p-(p*f+h*m))/2,v=(h-(p*m+h*f))/2;return e.style.marginLeft=Math.floor(g)+"px",e.style.marginTop=Math.floor(v)+"px",!0},r=e.cssHooks.transform.set;e.cssHooks.transform.set=function(e,t){return r.apply(this,[e,t]),a(e,t),t}}}(jQuery),elFinder.prototype.commands.rm=function(){this.shortcuts=[{pattern:"delete ctrl+backspace"}],this.getstate=function(t){var n=this.fm;return t=t||n.selected(),!this._disabled&&t.length&&e.map(t,function(e){var t=n.file(e);return t&&t.phash&&!t.locked?e:null}).length==t.length?0:-1},this.exec=function(t){var n,i,a,r,o,s,l,d,c=this,u=this.fm,p=e.Deferred().fail(function(e){e&&u.error(e)}),h=this.files(t),f=h.length,m=u.cwd().hash,g=!1,v='';return!f||this._disabled?p.reject():(e.each(h,function(t,n){if(!n.phash)return!p.reject(["errRm",n.name,"errPerm"]);if(n.locked)return!p.reject(["errLocked",n.name]);if("directory"===n.mime){var i=u.parents(m);(n.hash==m||e.inArray(n.hash,i))&&(g=n.phash&&u.file(n.phash).read?n.phash:u.root(n.hash))}}),"pending"==p.state()&&(n=this.hashes(t),f=h.length,l=[],f>1?(e.map(h,function(e){return"directory"==e.mime?1:null}).length||(o=0,e.each(h,function(e,t){if(!t.size||"unknown"==t.size)return o="unknown",!1;var n=parseInt(t.size);n>=0&&o>=0&&(o+=n)}),l.push(u.i18n("size")+": "+u.formatSize(o))),i=[e(v.replace("{class}","elfinder-cwd-icon-group").replace("{title}",""+u.i18n("items")+": "+f+" ").replace("{desc}",l.join(" ")))]):(a=h[0],a.tmb&&(s=u.option("tmbUrl")+a.tmb),a.size&&l.push(u.i18n("size")+": "+u.formatSize(a.size)),l.push(u.i18n("modify")+": "+u.formatDate(a)),r=u.escape(a.i18||a.name).replace(/([_.])/g,"$1"),i=[e(v.replace("{class}",u.mime2class(a.mime)).replace("{title}",""+r+" ").replace("{desc}",l.join(" ")))]),i.push("confirmRm"),u.lockfiles({files:n}),d=u.confirm({title:c.title,text:i,accept:{label:"btnRm",callback:function(){u.request({data:{cmd:"rm",targets:n},notify:{type:"rm",cnt:f},preventFail:!0}).fail(function(e){p.reject(e)}).done(function(e){p.done(e),g&&u.exec("open",g)}).always(function(){u.unlockfiles({files:n})})}},cancel:{label:"btnCancel",callback:function(){u.unlockfiles({files:n}),u.selectfiles({files:n}),p.reject()}}}),s&&e(" ").load(function(){d.find(".elfinder-cwd-icon").css("background",'url("'+s+'") center center no-repeat')}).attr("src",s)),p)}},elFinder.prototype.commands.search=function(){this.title="Find files",this.options={ui:"searchbutton"},this.alwaysEnabled=!0,this.updateOnSelect=!1,this.getstate=function(){return 0},this.exec=function(t,n,i){var a=this.fm;return"string"==typeof t&&t?("object"==typeof n&&(i=n.mime||"",n=n.target||""),n=n?n:"",i=i?e.trim(i).replace(","," ").split(" "):[],e.each(i,function(){return e.trim(this)}),a.trigger("searchstart",{query:t,target:n,mimes:i}),a.request({data:{cmd:"search",q:t,target:n,mimes:i},notify:{type:"search",cnt:1,hideCnt:!0}})):(a.getUI("toolbar").find("."+a.res("class","searchbtn")+" :text").focus(),e.Deferred().reject())}},elFinder.prototype.commands.sort=function(){var t,n=this,i=n.fm;this.options={ui:"sortbutton"},i.bind("open sortchange",function(){n.variants=[],e.each(i.sortRules,function(e){var t={type:e,order:e==i.sortType?"asc"==i.sortOrder?"desc":"asc":i.sortOrder},a=e==i.sortType?"asc"==t.order?"n":"s":"";n.variants.push([t,(a?' ':"")+" "+i.i18n("sort"+e)])})}),i.bind("open sortchange viewchange search searchend",function(){t&&clearTimeout(t),t=setTimeout(function(){var t=e(i.cwd).find("div.elfinder-cwd-wrapper-list table");t.length&&e.each(i.sortRules,function(a){var r=t.find("thead tr td.elfinder-cwd-view-th-"+a);if(r.length){var o,s=a==i.sortType,l={type:a,order:s?"asc"==i.sortOrder?"desc":"asc":i.sortOrder};s&&(r.addClass("ui-state-active"),o="asc"==i.sortOrder?"n":"s",e(' ').appendTo(r)),e(r).on("click",function(e){e.stopPropagation(),n.exec([],l)}).hover(function(){e(this).addClass("ui-state-hover")},function(){e(this).removeClass("ui-state-hover")})}})},100)}),this.getstate=function(){return 0},this.exec=function(t,n){var i=this.fm,a=e.extend({type:i.sortType,order:i.sortOrder,stick:i.sortStickFolders},n);return this.fm.setSort(a.type,a.order,a.stick),e.Deferred().resolve()}},elFinder.prototype.commands.up=function(){this.alwaysEnabled=!0,this.updateOnSelect=!1,this.shortcuts=[{pattern:"ctrl+up"}],this.getstate=function(){return this.fm.cwd().phash?0:-1},this.exec=function(){return this.fm.cwd().phash?this.fm.exec("open",this.fm.cwd().phash):e.Deferred().reject()}},elFinder.prototype.commands.upload=function(){var t=this.fm.res("class","hover");this.disableOnSearch=!0,this.updateOnSelect=!1,this.shortcuts=[{pattern:"ctrl+u"}],this.getstate=function(e){var t,n=this.fm,e=n.directUploadTarget?[n.directUploadTarget]:e||[n.cwd().hash];return this._disabled||1!=e.length||(t=n.file(e[0])),t&&"directory"==t.mime&&t.write?0:-1},this.exec=function(n){var i,a,r,o,s,l,d,c=this.fm,u=n&&n instanceof Array?n:null,p=!u&&n&&n.target?[n.target]:u,h=function(e){c.upload(e).fail(function(e){m.reject(e)}).done(function(e){var t=c.getUI("cwd");if(m.resolve(e),e&&e.added&&e.added[0]){var n=t.find("#"+c.cwdHash2Id(e.added[0].hash));n.length&&n.trigger("scrolltoview")}})},f=function(e){i.elfinderdialog("close"),u&&(e.target=u[0]),h(e)},m=e.Deferred();return this.getstate(p)<0?m.reject():(l=function(e){e.stopPropagation(),e.preventDefault();var t=!1,n="",i=null,a="",r=null,o=e._target||null;try{i=e.dataTransfer.getData("elfinderfrom")}catch(e){}if(i&&(a=window.location.href+c.cwd().hash,!o&&i===a||o===a))return m.reject(),void 0;try{r=e.dataTransfer.getData("text/html")}catch(e){}r?(t=[r],n="html"):e.dataTransfer&&e.dataTransfer.items&&e.dataTransfer.items.length?(t=e.dataTransfer,n="data"):e.dataTransfer&&e.dataTransfer.files&&e.dataTransfer.files.length?(t=e.dataTransfer.files,n="files"):(r=e.dataTransfer.getData("text"))&&(t=[r],n="text"),t?h({files:t,type:n,target:o}):m.reject()},!u&&n?(n.input||n.files?(n.type="files",h(n)):n.dropEvt&&l(n.dropEvt),m):(d=function(t){var n,t=t.originalEvent||t,i=[],a=[];if(t.clipboardData){if(t.clipboardData.items&&t.clipboardData.items.length){a=t.clipboardData.items;for(var r=0;r ]*>/gi," "),n=t.match(/<[^>]+>/)?"html":"text";o.innerHTML="",f({files:[t],type:n})}},1)},a=e(' ').change(function(){f({input:a[0],type:"files"})}).on("dragover",function(e){e.originalEvent.dataTransfer.dropEffect="copy"}),r=e(''+c.i18n("selectForUpload")+"
").append(e("").append(a)).hover(function(){r.toggleClass(t)}),i=e('
').append(r),s=e(''+c.i18n("dropFilesBrowser")+"
").on("paste drop",function(e){d(e)}).on("mousedown click",function(){e(this).focus()}).on("focus",function(){this.innerHTML=""}).on("dragenter mouseover",function(){s.addClass(t)}).on("dragleave mouseout",function(){s.removeClass(t)}),c.dragUpload?(o=e(''+c.i18n("dropPasteFiles")+"
").on("paste",function(e){d(e)}).on("mousedown click",function(){e(this).focus()}).on("focus",function(){this.innerHTML=""}).on("mouseover",function(){e(this).addClass(t)}).on("mouseout",function(){e(this).removeClass(t)}).prependTo(i).after(''+c.i18n("or")+"
")[0],o.addEventListener("dragenter",function(n){n.stopPropagation(),n.preventDefault(),e(o).addClass(t)},!1),o.addEventListener("dragleave",function(n){n.stopPropagation(),n.preventDefault(),e(o).removeClass(t)},!1),o.addEventListener("dragover",function(n){n.stopPropagation(),n.preventDefault(),n.dataTransfer.dropEffect="copy",e(o).addClass(t)},!1),o.addEventListener("drop",function(e){i.elfinderdialog("close"),u&&(e._target=u[0]),l(e)},!1)):s.prependTo(i).after(''+c.i18n("or")+"
")[0],c.dialog(i,{title:this.title+(u?" - "+c.escape(c.file(u[0]).name):""),modal:!0,resizable:!1,destroyOnClose:!0}),m))}},elFinder.prototype.commands.view=function(){this.value=this.fm.viewType,this.alwaysEnabled=!0,this.updateOnSelect=!1,this.options={ui:"viewbutton"},this.getstate=function(){return 0},this.exec=function(){var e=this.fm.storage("view","list"==this.value?"icons":"list");this.fm.viewchange(),this.update(void 0,e)}}}(jQuery);
\ No newline at end of file
+!function(e){window.elFinder=function(t,n){var i,a,r,o=this,t=e(t),s=e("
").append(t.contents()),l=t.attr("style"),d=t.attr("id")||"",c="elfinder-"+(d||Math.random().toString().substr(2,7)),u="mousedown."+c,p="keydown."+c,h="keypress."+c,f=!0,m=!0,g="",v={path:"",url:"",tmbUrl:"",disabled:[],separator:"/",archives:[],extract:[],copyOverwrite:!0,uploadOverwrite:!0,uploadMaxSize:0,jpgQuality:100,tmb:!1},b={},y=[],w={},x={},k=[],C=[],T=[],I=new o.command(o),F="auto",M=400,P="./sounds/",S=e(document.createElement("audio")).hide().appendTo("body")[0],z="",A=function(t){var n,i,a={},r={};o.commandMap=t.options.uiCmdMap&&Object.keys(t.options.uiCmdMap).length?t.options.uiCmdMap:{},z!==JSON.stringify(o.commandMap)&&(z=JSON.stringify(o.commandMap),Object.keys(o.commandMap).length&&(i=o.getUI("contextmenu"),i.data("cmdMaps")||i.data("cmdMaps",{}),n=t.cwd?t.cwd.volumeid:null,n&&!i.data("cmdMaps")[n]&&(i.data("cmdMaps")[n]=o.commandMap))),t.init?b={}:(e.each(Object.keys(b),function(t,n){var i="directory"===b[n].mime,s=b[n].phash;o.res("class","navcollapse"),(!i||a[s]||!r[s]&&e("#"+o.navHash2Id(b[n].hash)).is(":hidden")&&e("#"+o.navHash2Id(s)).next(".elfinder-navbar-subtree").children().length>100)&&(i||s===g)&&-1===e.inArray(n,C)?(i&&!a[s]&&(a[s]=!0),delete b[n]):i&&(r[s]=!0)}),e.each(Object.keys(a),function(t,n){var i="elfinder-subtree-loaded "+o.res("class","navexpand");e("#"+o.navHash2Id(n)).removeClass(i).next(".elfinder-navbar-subtree").empty()})),g=t.cwd.hash,D(t.files),b[g]||D([t.cwd]),o.lastDir(g),o.autoSync()},D=function(e){var t,n,i=e.length;for(n=0;i>n;n++)if(t=e[n],t.name&&t.hash&&t.mime){if(!t.phash){var a="volume_"+t.name,r=o.i18n(a);a!=r&&(t.i18=r),t.volumeid&&(t.disabled&&(o.disabledCmds[t.volumeid]=t.disabled),o.tmbUrls[t.volumeid]=o.option("tmbUrl"))}b[t.hash]=t}},O=function(t){var n=t.keyCode,i=!(!t.ctrlKey&&!t.metaKey);f&&(e.each(x,function(e,a){a.type==t.type&&a.keyCode==n&&a.shiftKey==t.shiftKey&&a.ctrlKey==i&&a.altKey==t.altKey&&(t.preventDefault(),t.stopPropagation(),a.callback(t,o),o.debug("shortcut-exec",e+" : "+a.description))}),9!=n||e(t.target).is(":input")||t.preventDefault(),27==n&&o.clipboard().length&&o.clipboard([]))},U=new Date;return this.api=null,this.newAPI=!1,this.oldAPI=!1,this.netDrivers=[],this.OS=-1!==navigator.userAgent.indexOf("Mac")?"mac":-1!==navigator.userAgent.indexOf("Win")?"win":"other",this.UA=function(){var e=!document.uniqueID&&!window.opera&&!window.sidebar&&window.localStorage&&"undefined"==typeof window.orientation;return{ltIE6:"undefined"==typeof window.addEventListener&&"undefined"==typeof document.documentElement.style.maxHeight,ltIE7:"undefined"==typeof window.addEventListener&&"undefined"==typeof document.querySelectorAll,ltIE8:"undefined"==typeof window.addEventListener&&"undefined"==typeof document.getElementsByClassName,IE:document.uniqueID,Firefox:window.sidebar,Opera:window.opera,Webkit:e,Chrome:e&&window.chrome,Safari:e&&!window.chrome,Mobile:"undefined"!=typeof window.orientation,Touch:"undefined"!=typeof window.ontouchstart}}(),this.options=e.extend(!0,{},this._options,n||{}),n.ui&&(this.options.ui=n.ui),n.commands&&(this.options.commands=n.commands),n.uiOptions&&n.uiOptions.toolbar&&(this.options.uiOptions.toolbar=n.uiOptions.toolbar),n.uiOptions&&n.uiOptions.cwd&&n.uiOptions.cwd.listView&&n.uiOptions.cwd.listView.columns&&(this.options.uiOptions.cwd.listView.columns=n.uiOptions.cwd.listView.columns),n.uiOptions&&n.uiOptions.cwd&&n.uiOptions.cwd.listView&&n.uiOptions.cwd.listView.columnsCustomName&&(this.options.uiOptions.cwd.listView.columnsCustomName=n.uiOptions.cwd.listView.columnsCustomName),function(){var t,i=document.createElement("a");i.href=n.url,n.urlUpload&&n.urlUpload!==n.url&&(t=document.createElement("a"),t.href=n.urlUpload),(window.location.host!==i.host||t&&window.location.host!==t.host)&&(e.isPlainObject(o.options.customHeaders)||(o.options.customHeaders={}),e.isPlainObject(o.options.xhrFields)||(o.options.xhrFields={}),o.options.requestType="post",o.options.customHeaders["X-Requested-With"]="XMLHttpRequest",o.options.xhrFields.withCredentials=!0)}(),e.extend(this.options.contextmenu,n.contextmenu),this.requestType=/^(get|post)$/i.test(this.options.requestType)?this.options.requestType.toLowerCase():"get",this.customData=e.isPlainObject(this.options.customData)?this.options.customData:{},this.customHeaders=e.isPlainObject(this.options.customHeaders)?this.options.customHeaders:{},this.xhrFields=e.isPlainObject(this.options.xhrFields)?this.options.xhrFields:{},this.id=d,this.navPrefix="nav"+(elFinder.prototype.uniqueid?elFinder.prototype.uniqueid:"")+"-",this.cwdPrefix=elFinder.prototype.uniqueid?"cwd"+elFinder.prototype.uniqueid+"-":"",++elFinder.prototype.uniqueid,this.uploadURL=n.urlUpload||n.url,this.namespace=c,this.lang=this.i18[this.options.lang]&&this.i18[this.options.lang].messages?this.options.lang:"en",r="en"==this.lang?this.i18.en:e.extend(!0,{},this.i18.en,this.i18[this.lang]),this.direction=r.direction,this.messages=r.messages,this.dateFormat=this.options.dateFormat||r.dateFormat,this.fancyFormat=this.options.fancyDateFormat||r.fancyDateFormat,this.today=new Date(U.getFullYear(),U.getMonth(),U.getDate()).getTime()/1e3,this.yesterday=this.today-86400,a=this.options.UTCDate?"UTC":"",this.getHours="get"+a+"Hours",this.getMinutes="get"+a+"Minutes",this.getSeconds="get"+a+"Seconds",this.getDate="get"+a+"Date",this.getDay="get"+a+"Day",this.getMonth="get"+a+"Month",this.getFullYear="get"+a+"FullYear",this.cssClass="ui-helper-reset ui-helper-clearfix ui-widget ui-widget-content ui-corner-all elfinder elfinder-"+("rtl"==this.direction?"rtl":"ltr")+" "+this.options.cssClass,this.storage=function(){try{return"localStorage"in window&&null!==window.localStorage?o.localStorage:o.cookie}catch(e){return o.cookie}}(),this.viewType=this.storage("view")||this.options.defaultView||"icons",this.sortType=this.storage("sortType")||this.options.sortType||"name",this.sortOrder=this.storage("sortOrder")||this.options.sortOrder||"asc",this.sortStickFolders=this.storage("sortStickFolders"),this.sortStickFolders=null===this.sortStickFolders?!!this.options.sortStickFolders:!!this.sortStickFolders,this.sortRules=e.extend(!0,{},this._sortRules,this.options.sortsRules),e.each(this.sortRules,function(e,t){"function"!=typeof t&&delete o.sortRules[e]}),this.compare=e.proxy(this.compare,this),this.notifyDelay=this.options.notifyDelay>0?parseInt(this.options.notifyDelay):500,this.draggingUiHelper=null,this.draggable={appendTo:"body",addClasses:!0,delay:30,distance:8,revert:!0,refreshPositions:!1,cursor:"crosshair",cursorAt:{left:50,top:47},start:function(t,n){var i,a,r=e.map(n.helper.data("files")||[],function(e){return e||null}),s=!1;for(o.draggingUiHelper=n.helper,i=r.length;i--;)if(a=r[i],b[a].locked){s=!0,n.helper.data("locked",!0);break}!s&&o.trigger("lockfiles",{files:r})},drag:function(t,n){var i=n.helper;i.data("refreshPositions")&&e(this).draggable("instance")&&(i.data("refreshPositions")>0?(e(this).draggable("option",{refreshPositions:!0}),i.data("refreshPositions",-1)):(e(this).draggable("option",{refreshPositions:!1}),i.data("refreshPositions",null)))},stop:function(t,n){var i;e(this).draggable("instance")&&e(this).draggable("option",{refreshPositions:!1}),o.draggingUiHelper=null,o.trigger("focus").trigger("dragstop"),n.helper.data("droped")||(i=e.map(n.helper.data("files")||[],function(e){return e||null}),o.trigger("unlockfiles",{files:i}),o.trigger("selectfiles",{files:i}))},helper:function(t){var n,i,a,r=this.id?e(this):e(this).parents("[id]:first"),s=e('
'),l=function(t){var n,i=t.mime;return n='
',t.tmb&&1!==t.tmb&&(n=e(n).css("background","url('"+o.option("tmbUrl")+t.tmb+"') center center no-repeat").get(0).outerHTML),n};return o.draggingUiHelper&&o.draggingUiHelper.stop(!0,!0),o.trigger("dragstart",{target:r[0],originalEvent:t}),n=r.hasClass(o.res("class","cwdfile"))?o.selected():[o.navId2Hash(r.attr("id"))],s.append(l(b[n[0]])).data("files",n).data("locked",!1).data("droped",!1).data("namespace",o.namespace).data("dropover",0),(i=n.length)>1&&s.append(l(b[n[i-1]])+''+i+" "),e(document).on(p+" keyup."+c,function(e){var t=e.shiftKey||e.ctrlKey||e.metaKey;a!==t&&(a=t,s.is(":visible")&&s.data("dropover")&&!s.data("droped")&&(s.toggleClass("elfinder-drag-helper-plus",s.data("locked")?!0:a),o.trigger(a?"unlockfiles":"lockfiles",{files:n,helper:s})))}),s}},this.droppable={greedy:!0,tolerance:"pointer",accept:".elfinder-cwd-file-wrapper,.elfinder-navbar-dir,.elfinder-cwd-file,.elfinder-cwd-filename",hoverClass:this.res("class","adroppable"),autoDisable:!0,drop:function(t,n){var i,a,r,s=e(this),l=e.map(n.helper.data("files")||[],function(e){return e||null}),d=[],c=[],u=[],p=n.helper.hasClass("elfinder-drag-helper-plus"),h="class";if(n.helper.data("namespace")!==o.namespace)return!1;for(a=s.hasClass(o.res(h,"cwdfile"))?o.cwdId2Hash(s.attr("id")):s.hasClass(o.res(h,"navdir"))?o.navId2Hash(s.attr("id")):g,i=l.length;i--;)r=l[i],r!=a&&b[r].phash!=a?d.push(r):(p&&r!==a&&b[a].write?c:u).push(r);return u.length?!1:(n.helper.data("droped",!0),c.length&&(n.helper.hide(),o.exec("duplicate",c)),d.length&&(n.helper.hide(),o.clipboard(d,!p),o.exec("paste",a,void 0,a).always(function(){o.trigger("unlockfiles",{files:l})}),o.trigger("drop",{files:l})),void 0)}},this.enabled=function(){return t.is(":visible")&&f},this.visible=function(){return t.is(":visible")},this.root=function(e){for(var t,n=b[e||g];n&&n.phash;)n=b[n.phash];if(n)return n.hash;for(;t in b&&b.hasOwnProperty(t);)if(n=b[t],!n.phash&&"directory"==!n.mime&&n.read)return n.hash;return""},this.cwd=function(){return b[g]||{}},this.option=function(e){return v[e]||""},this.file=function(e){return b[e]},this.files=function(){return e.extend(!0,{},b)},this.parents=function(e){for(var t,n=[];t=this.file(e);)n.unshift(t.hash),e=t.phash;return n},this.path2array=function(e,t){for(var n,i=[];e&&(n=b[e])&&n.hash;)i.unshift(t&&n.i18?n.i18:n.name),e=n.phash;return i},this.path=function(e,t){return b[e]&&b[e].path?b[e].path:this.path2array(e,t).join(v.separator)},this.url=function(t){var n=b[t];if(!n||!n.read)return"";if("1"==n.url&&this.request({data:{cmd:"url",target:t},preventFail:!0,options:{async:!1}}).done(function(e){n.url=e.url||""}).fail(function(){n.url=""}),n.url)return n.url;if(v.url)return v.url+e.map(this.path2array(t),function(e){return encodeURIComponent(e)}).slice(1).join("/");var i=e.extend({},this.customData,{cmd:"file",target:n.hash});return this.oldAPI&&(i.cmd="open",i.current=n.phash),this.options.url+(-1===this.options.url.indexOf("?")?"?":"&")+e.param(i,!0)},this.convAbsUrl=function(e){if(e.match(/^http/i))return e;var t,n=window.location.protocol+"//"+window.location.host,i=/[^\/]+\/\.\.\//;for(t="/"===e.substr(0,1)?n+e:n+window.location.pathname+e,t=t.replace("/./","/");i.test(t);)t=t.replace(i,"");return t},this.openUrl=function(t,n){var i=b[t],a="";return i&&i.read?!n&&i.url&&1!=i.url?i.url:(a=this.options.url,a=a+(-1===a.indexOf("?")?"?":"&")+(this.oldAPI?"cmd=open¤t="+i.phash:"cmd=file")+"&target="+i.hash,n&&(a+="&download=1"),e.each(this.options.customData,function(e,t){a+="&"+encodeURIComponent(e)+"="+encodeURIComponent(t)}),a):""},this.tmb=function(t){var n=b[t],i=function(t){var n=v.tmbUrl;return e.each(o.tmbUrls,function(e){return 0===t.indexOf(e)?(n=o.tmbUrls[e],!1):void 0}),n},a=o.tmbUrls._search&&0!==t.indexOf(o.cwd().volumeid)?i(t):v.tmbUrl,r=n&&n.tmb&&1!=n.tmb?a+n.tmb:"";return r},this.selected=function(){return y.slice(0)},this.selectedFiles=function(){return e.map(y,function(t){return b[t]?e.extend({},b[t]):null})},this.fileByName=function(e,t){var n;for(n in b)if(b.hasOwnProperty(n)&&b[n].phash==t&&b[n].name==e)return b[n]},this.validResponse=function(e,t){return t.error||this.rules[this.rules[e]?e:"defaults"](t)},this.returnBytes=function(e){var t;return isNaN(e)?(e=e.replace(/b$/i,""),t=e.charAt(e.length-1).toLowerCase(),e=e.replace(/[tgmk]$/i,""),"t"==t?e=1024*1024*1024*1024*e:"g"==t?e=1024*1024*1024*e:"m"==t?e=1024*1024*e:"k"==t&&(e=1024*e),e=isNaN(e)?0:parseInt(e)):(e=parseInt(e),1>e&&(e=0)),e},this.request=function(t){var n,i,a,r=this,o=this.options,s=e.Deferred(),l=e.extend({},o.customData,{mimes:o.onlyMimes},t.data||t),d=l.cmd,c=!(t.preventDefault||t.preventFail),u=!(t.preventDefault||t.preventDone),p=e.extend({},t.notify),h=!!t.raw,f=t.syncOnFail,t=e.extend({url:o.url,async:!0,type:this.requestType,dataType:"json",cache:!1,data:l,headers:this.customHeaders,xhrFields:this.xhrFields},t.options||{}),m=function(t){t.warning&&r.error(t.warning),"open"==d&&A(e.extend(!0,{},t)),t.removed&&t.removed.length&&r.remove(t),t.added&&t.added.length&&r.add(t),t.changed&&t.changed.length&&r.change(t),r.trigger(d,t),t.sync&&r.sync()},g=function(e,t){var n;switch(t){case"abort":n=e.quiet?"":["errConnect","errAbort"];break;case"timeout":n=["errConnect","errTimeout"];break;case"parsererror":n=["errResponse","errDataNotJSON"];break;default:n=403==e.status?["errConnect","errAccess"]:404==e.status?["errConnect","errNotFound"]:"errConnect"}s.reject(n,e,t)},b=function(t){return h?s.resolve(t):t?e.isPlainObject(t)?t.error?s.reject(t.error,i):r.validResponse(d,t)?(t=r.normalize(t),r.api||(r.api=t.api||1,r.newAPI=r.api>=2,r.oldAPI=!r.newAPI),t.options&&(v=e.extend({},v,t.options)),t.netDrivers&&(r.netDrivers=t.netDrivers),"open"==d&&l.init&&(r.uplMaxSize=r.returnBytes(t.uplMaxSize),r.uplMaxFile=t.uplMaxFile?parseInt(t.uplMaxFile):20),s.resolve(t),t.debug&&r.debug("backend-debug",t.debug),void 0):s.reject("errResponse",i):s.reject(["errResponse","errDataNotJSON"],i):s.reject(["errResponse","errDataEmpty"],i)},y=function(e){if("autosync"==e.type){if("stop"!=e.data.action)return}else if(!e.data.added||!e.data.added.length)return;"pending"==i.state()&&(i.quiet=!0,i.abort(),"unload"!=e.type&&"destroy"!=e.type&&r.autoSync())};if(u&&s.done(m),s.fail(function(e){e&&(c?r.error(e):r.debug("error",r.i18n(e)))}),!d)return s.reject("errCmdReq");if(f&&s.fail(function(e){e&&r.sync()}),p.type&&p.cnt&&(n=setTimeout(function(){r.notify(p),s.always(function(){p.cnt=-(parseInt(p.cnt)||0),r.notify(p)})},r.notifyDelay),s.always(function(){clearTimeout(n)})),"open"==d)for(;a=T.pop();)"pending"==a.state()&&(a.quiet=!0,a.abort());return delete t.preventFail,i=this.transport.send(t).fail(g).done(b),r.currentReqCmd=d,("open"==d||"info"==d&&l.compare)&&(T.unshift(i),r.bind(r.cmdsToAdd+" autosync",y),s.always(function(){var t=e.inArray(i,T);r.unbind(r.cmdsToAdd+" autosync",y),-1!==t&&T.splice(t,1)})),r.bind("unload destroy",y),s.always(function(){r.unbind("unload destroy",y)}),s},this.diff=function(t,n){var i={},a=[],r=[],o=[],s=function(e){for(var t=o.length;t--;)if(o[t].hash==e)return!0};return e.each(t,function(e,t){i[t.hash]=t}),e.each(b,function(e,t){n&&t.phash!==n||!i[e]&&r.push(e)}),e.each(i,function(t,n){var i=b[t];i?e.each(n,function(e){return n[e]!=i[e]?(o.push(n),!1):void 0}):a.push(n)}),e.each(r,function(t,n){var a=b[n],l=a.phash;l&&"directory"==a.mime&&-1===e.inArray(l,r)&&i[l]&&!s(l)&&o.push(i[l])}),{added:a,removed:r,changed:o}},this.sync=function(t,n){this.autoSync("stop");var i=this,a=function(){var i="",a=0,r=0;return t&&n&&e.each(b,function(e,n){n.phash&&n.phash===t&&(++a,r=Math.max(r,n.ts)),i=a+":"+r}),i},r=a(),o=e.Deferred().done(function(){i.trigger("sync")}),s={data:{cmd:"open",reload:1,target:g,tree:!t&&this.ui.tree?1:0,compare:r},preventDefault:!0},l={data:{cmd:"parents",target:g},preventDefault:!0};return e.when(this.request(s),t?null:this.request(l)).fail(function(e){o.reject(e),e&&i.request({data:{cmd:"open",target:i.lastDir("")||i.root(),tree:1,init:1},notify:{type:"open",cnt:1,hideCnt:!0}})}).done(function(e,n){if(e.cwd.compare&&r===e.cwd.compare)return o.reject();var a=i.diff(e.files.concat(n&&n.tree?n.tree:[]),t);return a.added.push(e.cwd),a.removed.length&&i.remove(a),a.added.length&&i.add(a),a.changed.length&&i.change(a),o.resolve(a)}).always(function(){i.autoSync()}),o},this.upload=function(e){return this.transport.upload(e,this)},this.bind=function(e,t){var n;if("function"==typeof t)for(e=(""+e).toLowerCase().split(/\s+/),n=0;n-1&&n.splice(i,1),t=null,this},this.trigger=function(t,n){var i,a,r,t=t.toLowerCase(),o="open"===t,s=w[t]||[];if(this.debug("event-"+t,n),o&&(r=JSON.stringify(n)),s.length)for(t=e.Event(t),a=s.length,i=0;a>i;i++){s[i].length&&(t.data=o?JSON.parse(r):e.extend(!0,{},n));try{if(s[i](t,this)===!1||t.isDefaultPrevented()){this.debug("event-stoped",t.type);break}}catch(l){window.console&&window.console.log&&window.console.log(l)}}return this},this.shortcut=function(t){var n,i,a,r,o;if(this.options.allowShortcuts&&t.pattern&&e.isFunction(t.callback))for(n=t.pattern.toUpperCase().split(/\s+/),r=0;r0?a:a.charCodeAt(0):e.ui.keyCode[a],a&&!x[i]&&(x[i]={keyCode:a,altKey:-1!=e.inArray("ALT",o),ctrlKey:-1!=e.inArray("CTRL",o),shiftKey:-1!=e.inArray("SHIFT",o),type:t.type||"keydown",callback:t.callback,description:t.description,pattern:i});return this},this.shortcuts=function(){var t=[];return e.each(x,function(e,n){t.push([n.pattern,o.i18n(n.description)])}),t},this.clipboard=function(t,n){var i=function(){return e.map(k,function(e){return e.hash})};return void 0!==t&&(k.length&&this.trigger("unlockfiles",{files:i()}),C=[],k=e.map(t||[],function(e){var t=b[e];return t?(C.push(e),{hash:e,phash:t.phash,name:t.name,mime:t.mime,read:t.read,locked:t.locked,cut:!!n}):null}),this.trigger("changeclipboard",{clipboard:k.slice(0,k.length)}),n&&this.trigger("lockfiles",{files:i()})),k.slice(0,k.length)},this.isCommandEnabled=function(t,n){var i;return n&&o.root(n)!==g&&e.each(o.disabledCmds,function(e,t){return 0==n.indexOf(e,0)?(i=t,!1):void 0}),i||(i=v.disabled),this._commands[t]?-1===e.inArray(t,i):!1},this.exec=function(t,n,i,a){return"open"===t&&this.autoSync("stop"),this._commands[t]&&this.isCommandEnabled(t,a)?this._commands[t].exec(n,i):e.Deferred().reject("No such command")},this.dialog=function(n,i){var a=e("
").append(n).appendTo(t).elfinderdialog(i);return this.bind("resize",function(){a.elfinderdialog("posInit")}),a},this.getUI=function(e){return this.ui[e]||t},this.command=function(e){return void 0===e?this._commands:this._commands[e]},this.resize=function(e,n){t.css("width",e).height(n).trigger("resize"),this.trigger("resize",{width:t.width(),height:t.height()})},this.restoreSize=function(){this.resize(F,M)},this.show=function(){t.show(),this.enable().trigger("show")},this.hide=function(){this.disable().trigger("hide"),t.hide()},this.destroy=function(){t&&t[0].elfinder&&(this.autoSync("stop"),this.trigger("destroy").disable(),w={},x={},e(document).add(t).off("."+this.namespace),o.trigger=function(){},t.children().remove(),t.append(s.contents()).removeClass(this.cssClass).attr("style",l),t[0].elfinder=null)},this.autoSync=function(e){var t;if(o.options.sync>=1e3){if(i&&(clearTimeout(i),i=null,o.trigger("autosync",{action:"stop"})),e||!o.options.syncStart)return;t=function(e){var n;v.syncMinMs&&(e||i)&&(e&&o.trigger("autosync",{action:"start"}),n=Math.max(o.options.sync,v.syncMinMs),i&&clearTimeout(i),i=setTimeout(function(){var e=!0,a=g;v.syncChkAsTs?o.request({data:{cmd:"info",targets:[a],compare:b[a].ts,reload:1},preventDefault:!0}).done(function(n){var i;e=!0,n.compare&&(i=n.compare,b[a]&&i==b[a].ts&&(e=!1)),e?o.sync(a).always(function(){i&&(b[a].ts=i),t()}):t()}).fail(function(e){e&&"errConnect"!=e?o.error(e):i=setTimeout(function(){t()},n)}):o.sync(g,!0).always(function(){t()})},n))},t(!0)}},e.fn.selectable&&e.fn.draggable&&e.fn.droppable?t.length?this.options.url?(e.extend(e.ui.keyCode,{F1:112,F2:113,F3:114,F4:115,F5:116,F6:117,F7:118,F8:119,F9:120}),this.dragUpload=!1,this.xhrUpload=("undefined"!=typeof XMLHttpRequestUpload||"undefined"!=typeof XMLHttpRequestEventTarget)&&"undefined"!=typeof File&&"undefined"!=typeof FormData,this.transport={},"object"==typeof this.options.transport&&(this.transport=this.options.transport,"function"==typeof this.transport.init&&this.transport.init(this)),"function"!=typeof this.transport.send&&(this.transport.send=function(t){return e.ajax(t)}),"iframe"==this.transport.upload?this.transport.upload=e.proxy(this.uploads.iframe,this):"function"==typeof this.transport.upload?this.dragUpload=!!this.options.dragUploadAllow:this.xhrUpload&&this.options.dragUploadAllow?(this.transport.upload=e.proxy(this.uploads.xhr,this),this.dragUpload=!0):this.transport.upload=e.proxy(this.uploads.iframe,this),this.error=function(){var e=arguments[0];return 1==arguments.length&&"function"==typeof e?o.bind("error",e):o.trigger("error",{error:e})},e.each(["enable","disable","load","open","reload","select","add","remove","change","dblclick","getfile","lockfiles","unlockfiles","selectfiles","unselectfiles","dragstart","dragstop","search","searchend","viewchange"],function(t,n){o[n]=function(){var t=arguments[0];return 1==arguments.length&&"function"==typeof t?o.bind(n,t):o.trigger(n,e.isPlainObject(t)?t:{})}}),this.enable(function(){!f&&o.visible()&&o.ui.overlay.is(":hidden")&&(f=!0,document.activeElement&&document.activeElement.blur(),t.removeClass("elfinder-disabled"))}).disable(function(){m=f,f=!1,t.addClass("elfinder-disabled")}).open(function(){y=[]}).select(function(t){y=e.map(t.data.selected||t.data.value||[],function(e){return b[e]?e:null})}).error(function(t){var n={cssClass:"elfinder-dialog-error",title:o.i18n(o.i18n("error")),resizable:!1,destroyOnClose:!0,buttons:{}};n.buttons[o.i18n(o.i18n("btnClose"))]=function(){e(this).elfinderdialog("close")},o.dialog(' '+o.i18n(t.data.error),n)}).bind("tree parents",function(e){D(e.data.tree||[])}).bind("tmb",function(t){e.each(t.data.images||[],function(e,t){b[e]&&(b[e].tmb=t)})}).add(function(e){D(e.data.added||[])}).change(function(t){e.each(t.data.changed||[],function(t,n){var i=n.hash;b[i]&&e.each(["locked","hidden","width","height"],function(e,t){b[i][t]&&!n[t]&&delete b[i][t]}),b[i]=b[i]?e.extend(b[i],n):n})}).remove(function(t){for(var n=t.data.removed||[],i=n.length,a=function(t){var n=b[t];n&&("directory"==n.mime&&n.dirs&&e.each(b,function(e,n){n.phash==t&&a(e)}),delete b[t])};i--;)a(n[i])}).bind("search",function(e){D(e.data.files),o.tmbUrls._search=!0}).bind("searchend",function(){o.tmbUrls._search=!1}).bind("rm",function(){var t=S.canPlayType&&S.canPlayType('audio/wav; codecs="1"');t&&""!=t&&"no"!=t&&e(S).html('')[0].play()}),e.each(this.options.handlers,function(e,t){o.bind(e,t)}),this.history=new this.history(this),"function"==typeof this.options.getFileCallback&&this.commands.getfile&&(this.bind("dblclick",function(e){e.preventDefault(),o.exec("getfile").fail(function(){o.exec("open")})}),this.shortcut({pattern:"enter",description:this.i18n("cmdgetfile"),callback:function(){o.exec("getfile").fail(function(){o.exec("mac"==o.OS?"rename":"open")})}}).shortcut({pattern:"ctrl+enter",description:this.i18n("mac"==this.OS?"cmdrename":"cmdopen"),callback:function(){o.exec("mac"==o.OS?"rename":"open")}})),this._commands={},e.isArray(this.options.commands)||(this.options.commands=[]),e.each(["open","reload","back","forward","up","home","info","quicklook","getfile","help"],function(t,n){-1===e.inArray(n,o.options.commands)&&o.options.commands.push(n)}),e.each(this.options.commands,function(t,n){var i=o.commands[n];e.isFunction(i)&&!o._commands[n]&&(i.prototype=I,o._commands[n]=new i,o._commands[n].setup(n,o.options.commandsOptions[n]||{}))}),this.commandMap={},this.disabledCmds={},this.tmbUrls={},t.addClass(this.cssClass).on(u,function(){!f&&o.enable()}),this.ui={workzone:e("
").appendTo(t).elfinderworkzone(this),navbar:e("
").appendTo(t).elfindernavbar(this,this.options.uiOptions.navbar||{}),contextmenu:e("
").appendTo(t).elfindercontextmenu(this),overlay:e("
").appendTo(t).elfinderoverlay({show:function(){o.disable()},hide:function(){m&&o.enable()}}),cwd:e("
").appendTo(t).elfindercwd(this,this.options.uiOptions.cwd||{}),notify:this.dialog("",{cssClass:"elfinder-dialog-notify",position:this.options.notifyDialog.position,resizable:!1,autoOpen:!1,title:" ",width:parseInt(this.options.notifyDialog.width)}),statusbar:e('').hide().appendTo(t)},e.each(this.options.ui||[],function(n,i){var a="elfinder"+i,r=o.options.uiOptions[i]||{};!o.ui[i]&&e.fn[a]&&(o.ui[i]=e("<"+(r.tag||"div")+"/>").appendTo(t)[a](o,r))}),t[0].elfinder=this,this.options.resizable&&!this.UA.Touch&&e.fn.resizable&&t.resizable({handles:"se",minWidth:300,minHeight:200}),this.options.width&&(F=this.options.width),this.options.height&&(M=parseInt(this.options.height)),this.options.soundPath&&(P=this.options.soundPath.replace(/\/+$/,"")+"/"),o.resize(F,M),e(document).on("click."+this.namespace,function(n){f&&!e(n.target).closest(t).length&&o.disable()}).on(p+" "+h,O),o.options.useBrowserHistory&&e(window).on("popstate",function(t){var n=t.originalEvent.state&&t.originalEvent.state.thash;n&&!e.isEmptyObject(o.files())&&o.request({data:{cmd:"open",target:n,onhistory:1},notify:{type:"open",cnt:1,hideCnt:!0},syncOnFail:!0})}),this.trigger("init").request({data:{cmd:"open",target:o.startDir(),init:1,tree:this.ui.tree?1:0},preventDone:!0,notify:{type:"open",cnt:1,hideCnt:!0},freeze:!0}).fail(function(){o.trigger("fail").disable().lastDir(""),w={},x={},e(document).add(t).off("."+this.namespace),o.trigger=function(){}}).done(function(t){o.load().debug("api",o.api),t=e.extend(!0,{},t),A(t),o.trigger("open",t)}),this.one("load",function(){t.trigger("resize")}),function(){var n;e(window).on("resize",function(){n&&clearTimeout(n),n=setTimeout(function(){o.trigger("resize",{width:t.width(),height:t.height()})},200)}).on("beforeunload",function(){return o.ui.notify.children().length?o.i18n("ntfsmth"):(o.trigger("unload"),void 0)})}(),e(window).on("message",function(e){var t,n,i=e.originalEvent||null;if(i&&0===o.uploadURL.indexOf(i.origin))try{t=JSON.parse(i.data),n=t.data||null,n&&(n.error?o.error(n.error):(n.warning&&o.error(n.warning),n.removed&&n.removed.length&&o.remove(n),n.added&&n.added.length&&o.add(n),n.changed&&n.changed.length&&o.change(n),t.bind&&o.trigger(t.bind,n),n.sync&&o.sync()))}catch(e){o.sync()}}),o.dragUpload&&(t[0].addEventListener("dragenter",function(e){"TEXTAREA"!==e.target.nodeName&&"INPUT"!==e.target.nodeName&&(e.preventDefault(),e.stopPropagation())},!1),t[0].addEventListener("dragleave",function(e){"TEXTAREA"!==e.target.nodeName&&"INPUT"!==e.target.nodeName&&(e.preventDefault(),e.stopPropagation())},!1),t[0].addEventListener("dragover",function(e){"TEXTAREA"!==e.target.nodeName&&"INPUT"!==e.target.nodeName&&(e.preventDefault(),e.stopPropagation(),e.dataTransfer.dropEffect="none")},!1),t[0].addEventListener("drop",function(e){"TEXTAREA"!==e.target.nodeName&&"INPUT"!==e.target.nodeName&&(e.stopPropagation(),e.preventDefault())},!1),function(){var n="native-drag-enter",i="native-drag-disable",a="class",r=o.res(a,"navdir"),s=(o.res(a,"droppable"),o.res(a,"navcollapse")),l=o.res(a,"navexpand"),c=o.res(a,"adroppable"),u=o.res(a,"navarrow"),p=o.res(a,"adroppable");t.on("dragenter",".native-droppable",function(t){if(t.originalEvent.dataTransfer){var a,d=e(t.currentTarget),h=t.currentTarget.id||null,f=null;if(h)!d.data(n)&&d.hasClass(r)&&d.is("."+s+":not(."+l+")")&&setTimeout(function(){d.is("."+s+"."+c)&&d.children("."+u).click()},500);else{f=o.cwd(),d.data(i,!1);try{e.each(t.originalEvent.dataTransfer.types,function(e,t){"elfinderfrom:"===t.substr(0,13)&&(a=t.substr(13).toLowerCase())})}catch(t){}}f&&(!f.write||a&&a===(window.location.href+f.hash).toLowerCase())?d.data(i,!0):(t.preventDefault(),t.stopPropagation(),d.data(n,!0),d.addClass(p))}}).on("dragleave",".native-droppable",function(t){if(t.originalEvent.dataTransfer){var i=e(t.currentTarget);t.preventDefault(),t.stopPropagation(),i.data(n)?i.data(n,!1):i.removeClass(p)}}).on("dragover",".native-droppable",function(t){if(t.originalEvent.dataTransfer){var a=e(t.currentTarget);t.preventDefault(),t.stopPropagation(),t.originalEvent.dataTransfer.dropEffect=a.data(i)?"none":"copy",a.data(n,!1)}}).on("drop",".native-droppable",function(t){if(t.originalEvent.dataTransfer){var n=e(t.currentTarget);t.preventDefault(),t.stopPropagation(),n.removeClass(p),d=t.currentTarget.id?n.hasClass(r)?o.navId2Hash(t.currentTarget.id):o.cwdId2Hash(t.currentTarget.id):o.cwd().hash,t.originalEvent._target=d,o.directUploadTarget=d,o.exec("upload",{dropEvt:t.originalEvent,target:d}),o.directUploadTarget=null}})}()),void 0):alert(this.i18n("errURL")):alert(this.i18n("errNode")):alert(this.i18n("errJqui"))},elFinder.prototype={uniqueid:0,res:function(e,t){return this.resources[e]&&this.resources[e][t]},currentReqCmd:"",i18:{en:{translator:"",language:"English",direction:"ltr",dateFormat:"d.m.Y H:i",fancyDateFormat:"$1 H:i",messages:{}},months:["January","February","March","April","May","June","July","August","September","October","November","December"],monthsShort:["msJan","msFeb","msMar","msApr","msMay","msJun","msJul","msAug","msSep","msOct","msNov","msDec"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],daysShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"]},kinds:{unknown:"Unknown",directory:"Folder",symlink:"Alias","symlink-broken":"AliasBroken","application/x-empty":"TextPlain","application/postscript":"Postscript","application/vnd.ms-office":"MsOffice","application/msword":"MsWord","application/vnd.ms-word":"MsWord","application/vnd.openxmlformats-officedocument.wordprocessingml.document":"MsWord","application/vnd.ms-word.document.macroEnabled.12":"MsWord","application/vnd.openxmlformats-officedocument.wordprocessingml.template":"MsWord","application/vnd.ms-word.template.macroEnabled.12":"MsWord","application/vnd.ms-excel":"MsExcel","application/vnd.openxmlformats-officedocument.spreadsheetml.sheet":"MsExcel","application/vnd.ms-excel.sheet.macroEnabled.12":"MsExcel","application/vnd.openxmlformats-officedocument.spreadsheetml.template":"MsExcel","application/vnd.ms-excel.template.macroEnabled.12":"MsExcel","application/vnd.ms-excel.sheet.binary.macroEnabled.12":"MsExcel","application/vnd.ms-excel.addin.macroEnabled.12":"MsExcel","application/vnd.ms-powerpoint":"MsPP","application/vnd.openxmlformats-officedocument.presentationml.presentation":"MsPP","application/vnd.ms-powerpoint.presentation.macroEnabled.12":"MsPP","application/vnd.openxmlformats-officedocument.presentationml.slideshow":"MsPP","application/vnd.ms-powerpoint.slideshow.macroEnabled.12":"MsPP","application/vnd.openxmlformats-officedocument.presentationml.template":"MsPP","application/vnd.ms-powerpoint.template.macroEnabled.12":"MsPP","application/vnd.ms-powerpoint.addin.macroEnabled.12":"MsPP","application/vnd.openxmlformats-officedocument.presentationml.slide":"MsPP","application/vnd.ms-powerpoint.slide.macroEnabled.12":"MsPP","application/pdf":"PDF","application/xml":"XML","application/vnd.oasis.opendocument.text":"OO","application/vnd.oasis.opendocument.text-template":"OO","application/vnd.oasis.opendocument.text-web":"OO","application/vnd.oasis.opendocument.text-master":"OO","application/vnd.oasis.opendocument.graphics":"OO","application/vnd.oasis.opendocument.graphics-template":"OO","application/vnd.oasis.opendocument.presentation":"OO","application/vnd.oasis.opendocument.presentation-template":"OO","application/vnd.oasis.opendocument.spreadsheet":"OO","application/vnd.oasis.opendocument.spreadsheet-template":"OO","application/vnd.oasis.opendocument.chart":"OO","application/vnd.oasis.opendocument.formula":"OO","application/vnd.oasis.opendocument.database":"OO","application/vnd.oasis.opendocument.image":"OO","application/vnd.openofficeorg.extension":"OO","application/x-shockwave-flash":"AppFlash","application/flash-video":"Flash video","application/x-bittorrent":"Torrent","application/javascript":"JS","application/rtf":"RTF","application/rtfd":"RTF","application/x-font-ttf":"TTF","application/x-font-otf":"OTF","application/x-rpm":"RPM","application/x-web-config":"TextPlain","application/xhtml+xml":"HTML","application/docbook+xml":"DOCBOOK","application/x-awk":"AWK","application/x-gzip":"GZIP","application/x-bzip2":"BZIP","application/x-xz":"XZ","application/zip":"ZIP","application/x-zip":"ZIP","application/x-rar":"RAR","application/x-tar":"TAR","application/x-7z-compressed":"7z","application/x-jar":"JAR","text/plain":"TextPlain","text/x-php":"PHP","text/html":"HTML","text/javascript":"JS","text/css":"CSS","text/rtf":"RTF","text/rtfd":"RTF","text/x-c":"C","text/x-csrc":"C","text/x-chdr":"CHeader","text/x-c++":"CPP","text/x-c++src":"CPP","text/x-c++hdr":"CPPHeader","text/x-shellscript":"Shell","application/x-csh":"Shell","text/x-python":"Python","text/x-java":"Java","text/x-java-source":"Java","text/x-ruby":"Ruby","text/x-perl":"Perl","text/x-sql":"SQL","text/xml":"XML","text/x-comma-separated-values":"CSV","text/x-markdown":"Markdown","image/x-ms-bmp":"BMP","image/jpeg":"JPEG","image/gif":"GIF","image/png":"PNG","image/tiff":"TIFF","image/x-targa":"TGA","image/vnd.adobe.photoshop":"PSD","image/xbm":"XBITMAP","image/pxm":"PXM","audio/mpeg":"AudioMPEG","audio/midi":"AudioMIDI","audio/ogg":"AudioOGG","audio/mp4":"AudioMPEG4","audio/x-m4a":"AudioMPEG4","audio/wav":"AudioWAV","audio/x-mp3-playlist":"AudioPlaylist","video/x-dv":"VideoDV","video/mp4":"VideoMPEG4","video/mpeg":"VideoMPEG","video/x-msvideo":"VideoAVI","video/quicktime":"VideoMOV","video/x-ms-wmv":"VideoWM","video/x-flv":"VideoFlash","video/x-matroska":"VideoMKV","video/ogg":"VideoOGG"},rules:{defaults:function(t){return!t||t.added&&!e.isArray(t.added)||t.removed&&!e.isArray(t.removed)||t.changed&&!e.isArray(t.changed)?!1:!0
+},open:function(t){return t&&t.cwd&&t.files&&e.isPlainObject(t.cwd)&&e.isArray(t.files)},tree:function(t){return t&&t.tree&&e.isArray(t.tree)},parents:function(t){return t&&t.tree&&e.isArray(t.tree)},tmb:function(t){return t&&t.images&&(e.isPlainObject(t.images)||e.isArray(t.images))},upload:function(t){return t&&(e.isPlainObject(t.added)||e.isArray(t.added))},search:function(t){return t&&t.files&&e.isArray(t.files)}},commands:{},cmdsToAdd:"archive duplicate extract mkdir mkfile paste rm upload",parseUploadData:function(t){var n;if(!e.trim(t))return{error:["errResponse","errDataEmpty"]};try{n=e.parseJSON(t)}catch(i){return{error:["errResponse","errDataNotJSON"]}}return this.validResponse("upload",n)?(n=this.normalize(n),n.removed=e.merge(n.removed||[],e.map(n.added||[],function(e){return e.hash})),n):{error:["errResponse"]}},iframeCnt:0,uploads:{xhrUploading:!1,checkExists:function(t,n,i){var a,r,o=e.Deferred(),s=function(){for(var e=t.length;--e>-1;)t[e]._remove=!0},l=function(){var l=[],d=[],c=[],u=function(e){var n=e==c.length-1,a={title:i.i18n("cmdupload"),text:["errExists",c[e].name,"confirmRepl"],all:!n,accept:{label:"btnYes",callback:function(t){n||t?o.resolve(l):u(++e)}},reject:{label:"btnNo",callback:function(i){var a;if(i)for(a=c.length;e0&&delete a.reject,i.confirm(a)};a=e.map(t,function(e,t){return e.name?{i:t,name:e.name}:null}),r=e.map(a,function(e){return e.name}),i.request({data:{cmd:"upload",target:n,name:r,FILES:""},notify:{type:"preupload",cnt:1,hideCnt:!0},preventFail:!0}).done(function(t){t&&(t.error?s():(t.name&&(d=t.name||[],c=e.map(a,function(t){return-1!==e.inArray(t.name,d)?t:null})),t.list&&n==i.cwd().hash&&t.list.length!=e.map(i.files(),function(e){return e.phash==n?e.name:null}).length&&i.sync())),c.length>0?u(0):o.resolve([])}).fail(function(e){s(),o.resolve([]),e&&i.error(e)})};return i.option("uploadOverwrite")&&"object"==typeof t[0]?(l(),o):o.resolve([])},checkFile:function(t,n,i){if(t.checked||"files"==t.type)return t.files;if("data"==t.type){var a,r=e.Deferred(),o=[],s=[],l=[],d=[],c=0,u=function(t){var i=function(e){return Array.prototype.slice.call(e||[])},a=function(t){var n=e.Deferred();return"undefined"==typeof t?n.reject("empty"):t.isFile?t.file(function(e){n.resolve(e)},function(){n.reject()}):n.reject("dirctory"),n.promise()};t.readEntries(function(e){if(e.length)d=d.concat(i(e)),u(t);else{var r=d.length-1,p=function(e){a(d[e]).done(function(t){"win"==n.OS&&t.name.match(/^(?:desktop\.ini|thumbs\.db)$/i)||"mac"==n.OS&&t.name.match(/^\.ds_store$/i)||(s.push(d[e].fullPath),o.push(t))}).fail(function(t){"dirctory"==t&&l.push(d[e])}).always(function(){c--,r>e&&(c++,p(++e))})};c++,p(0),c--}})},p=function(e,t){var n,i;d=[];for(var a=e.length,r=0;a>r;r++)i=t?e[r]:e[r].getAsEntry?e[r].getAsEntry():e[r].webkitGetAsEntry(),i&&(i.isFile?(c++,i.file(function(e){s.push(""),o.push(e),c--})):i.isDirectory&&(c>0?l.push(i):(c=0,n=i.createReader(),c++,u(n))))};return a=e.map(t.files.items,function(e){return e.getAsEntry?e.getAsEntry():e.webkitGetAsEntry()}),a.length>0?(n.uploads.checkExists(a,i,n).done(function(t){var d,u=[];n.option("uploadOverwrite")&&(a=e.map(a,function(a){var r,o,s,l;return a.isDirectory&&(r=e.inArray(a.name,t),-1!==r&&(t.splice(r,1),o=n.uniqueName(a.name+n.options.backupSuffix,null,""),s=n.fileByName(a.name,i),n.lockfiles({files:[s.hash]}),l=n.request({data:{cmd:"rename",target:s.hash,name:o},notify:{type:"rename",cnt:1}}).fail(function(){a._remove=!0,n.sync()}).always(function(){n.unlockfiles({files:[s.hash]})}),u.push(l))),a._remove?null:a})),e.when.apply(e,u).done(function(){a.length>0?(d=setTimeout(function(){n.notify({type:"readdir",cnt:1,hideCnt:!0})},n.options.notifyDelay),p(a,!0),setTimeout(function e(){c>0?setTimeout(e,10):l.length>0?(p([l.shift()],!0),setTimeout(e,10)):(d&&clearTimeout(d),n.notify({type:"readdir",cnt:-1}),r.resolve([o,s,t]))},10)):r.reject()})}),r.promise()):r.reject()}var h=[],f=[],m=t.files[0];if("html"==t.type){var g,v=e(" ").append(e.parseHTML(m));e("img[src]",v).each(function(){var t,n,i=e(this),a=i.closest("a");a&&a.attr("href")&&a.attr("href").match(/\.(?:jpe?g|gif|bmp|png)/i)&&(n=a.attr("href")),t=i.attr("src"),t&&(n?(-1==e.inArray(n,h)&&h.push(n),-1==e.inArray(t,f)&&f.push(t)):-1==e.inArray(t,h)&&h.push(t))}),g=e("a[href]",v),g.each(function(){var t,n=function(e){var t=document.createElement("a");return t.href=e,t};e(this).text()&&(t=n(e(this).attr("href")),!t.href||1!==g.length&&t.pathname.match(/(?:\.html?|\/[^\/.]*)$/i)||-1==e.inArray(t.href,h)&&-1==e.inArray(t.href,f)&&h.push(t.href))})}else{var b,y,w;for(b=/(http[^<>"{}|\\^\[\]`\s]+)/gi;y=b.exec(m);)w=y[1].replace(/&/g,"&"),-1==e.inArray(w,h)&&h.push(w)}return h},xhr:function(t,n){var i,a=n?n:this,r=new XMLHttpRequest,o=null,s=null,l=t.checked,d=t.isDataType||"data"==t.type,c=0,u="div.elfinder-notify-upload div.elfinder-notify-cancel button",p=e.Deferred().fail(function(e){var t=m.length?d?m[0][0]:m[0]:{};t._cid&&(h=new FormData,m=[{_chunkfail:!0}],h.append("chunk",t._chunk),h.append("cid",t._cid),d=!1,F(m)),m=null,e&&a.error(e)}).done(function(e){r=null,m=null,e&&(e.warning&&a.error(e.warning),e.removed&&a.remove(e),e.added&&a.add(e),e.changed&&a.change(e),a.trigger("upload",e),e.sync&&a.sync())}).always(function(){o&&clearTimeout(o),s&&clearTimeout(s),l&&!t.multiupload&&x()&&a.notify({type:"upload",cnt:-g,progress:0,size:0}),I&&a.ui.notify.children(".elfinder-notify-chunkmerge").length&&a.notify({type:"chunkmerge",cnt:-1}),a.ui.notify.off("click",u,C),e(document).off("keydown",C)}),h=new FormData,f=t.target||a.cwd().hash,m=t.input?t.input.files:a.uploads.checkFile(t,a,f),g=t.checked?d?m[0].length:m.length:m.length,v=0,b=0,y=!1,w=!1,x=function(){return y=y||a.ui.notify.children(".elfinder-notify-upload").length},k=function(e){return e||(e=b),setTimeout(function(){y=!0,a.notify({type:"upload",cnt:g,progress:v-i,size:e,cancel:!0}),i=v},a.options.notifyDelay)},C=function(t){("keydown"!=t.type||t.keyCode==e.ui.keyCode.ESCAPE)&&(t.preventDefault(),t.stopPropagation(),w=!0,r.abort(),p.reject(),a.sync())},T=t.renames||null,I=!1;if(a.ui.notify.one("click",u,C),e(document).on("keydown",C),e(window).on("unload",function(){"pending"==p.state()&&p.reject()}),!I&&(i=v),!d&&!g)return p.reject(["errUploadNoFiles"]);r.addEventListener("error",function(){p.reject("errConnect")},!1),r.addEventListener("abort",function(){p.reject(["errConnect","errAbort"])},!1),r.addEventListener("load",function(){var e,n=r.status,l=0,u="";if(n>=400?u=n>500?"errResponse":"errConnect":(4!=r.readyState&&(u=["errConnect","errTimeout"]),r.responseText||(u=["errResponse","errDataEmpty"])),u){if(I||c++>3){var f=d?m[0][0]:m[0];return f._cid?(h=new FormData,m=[{_chunkfail:!0}],h.append("chunk",f._chunk),h.append("cid",f._cid),h.append("range",f._range),d=!1,F(m),void 0):p.reject(u)}return b=0,r.open("POST",a.uploadURL,!0),r.send(h),void 0}if(v=b,x()&&(l=v-i)&&a.notify({type:"upload",cnt:0,progress:l,size:0}),e=a.parseUploadData(r.responseText),e._chunkmerged){h=new FormData;var y=[{_chunkmerged:e._chunkmerged,_name:e._name}];return I=!0,s=setTimeout(function(){a.notify({type:"chunkmerge",cnt:1})},a.options.notifyDelay),d?F(y,m[1]):F(y),void 0}e._multiupload=t.multiupload?!0:!1,e.error?e._chunkfailure?(w=!0,a.uploads.xhrUploading=!1,o&&clearTimeout(o),a.ui.notify.children(".elfinder-notify-upload").length?(a.notify({type:"upload",cnt:-g,progress:0,size:0}),p.reject(e.error)):p.reject()):p.reject(e.error):p.resolve(e)},!1),r.upload.addEventListener("loadstart",function(e){!I&&e.lengthComputable&&(v=e.loaded,c&&(v=0),b=e.total,v||(v=parseInt(.05*b)),x()&&(a.notify({type:"upload",cnt:0,progress:v-i,size:t.multiupload?0:b}),i=v))},!1),r.upload.addEventListener("progress",function(e){var n;e.lengthComputable&&!I&&(v=e.loaded,!t.checked&&v>0&&!o&&(o=k(r._totalSize-v)),b||(c&&(v=0),b=e.total,v||(v=parseInt(.05*b))),n=v-i,x()&&n/e.total>=.05&&(a.notify({type:"upload",cnt:0,progress:n,size:0}),i=v))},!1);var F=function(i,s){var c,u,m,v,b,y,C,I,F,M,P,S,z=0,A=1,D=[],O=0,U=g,E=0,j=[],H=+new Date,R=Math.min((n.uplMaxSize?n.uplMaxSize:2097152)-8190,n.options.uploadMaxChunkSize),_=!1,N=function(i,r){var s,l=[];if(!w)for(;i.length&&l.lengthc||!_&&n.uplMaxSize&&u>n.uplMaxSize)a.error(a.i18n("errUploadFile",C.name)+" "+a.i18n("errUploadFileSize")),g--,U--;else if(_&&u>R){for(v=0,b=R,y=-1,U=Math.floor(u/R),E+=u,j[H]=0;u>=v;)I=C[_](v,b),I._chunk=C.name+"."+ ++y+"_"+U+".part",I._cid=H,I._range=v+","+I.size+","+u,j[H]++,z&&O++,"undefined"==typeof D[O]&&(D[O]=[],d&&(D[O][0]=[],D[O][1]=[])),z=R,A=1,d?(D[O][0].push(I),D[O][1].push(s[m])):D[O].push(I),v=b,b=v+R;null==I?(a.error(a.i18n("errUploadFile",C.name)+" "+a.i18n("errUploadFileSize")),g--,U--):U+=y}else(n.uplMaxSize&&z+u>=n.uplMaxSize||A>n.uplMaxFile)&&(z=0,A=1,O++),"undefined"==typeof D[O]&&(D[O]=[],d&&(D[O][0]=[],D[O][1]=[])),d?(D[O][0].push(C),D[O][1].push(s[m])):D[O].push(C),z+=u,E+=u,A++;if(0==D.length)return t.checked=!0,!1;if(D.length>1)return o=k(E),F=[],M=0,P=D.length,S=[],q(),!0;d?(i=D[0][0],s=D[0][1]):i=D[0]}return l||(n.UA.Safari&&t.files?r._totalSize=E:o=k(E)),l=!0,i.length||p.reject(["errUploadNoFiles"]),r.open("POST",a.uploadURL,!0),n.customHeaders&&e.each(n.customHeaders,function(e){r.setRequestHeader(e,this)}),n.xhrFields&&e.each(n.xhrFields,function(e){e in r&&(r[e]=this)}),h.append("cmd","upload"),h.append(a.newAPI?"target":"current",f),T&&(e.each(T,function(e,t){h.append("renames[]",t)}),h.append("suffix",n.options.backupSuffix)),e.each(a.options.customData,function(e,t){h.append(e,t)}),e.each(a.options.onlyMimes,function(e,t){h.append("mimes["+e+"]",t)}),e.each(i,function(e,t){t._chunkmerged?(h.append("chunk",t._chunkmerged),h.append("upload[]",t._name)):(t._chunkfail?(h.append("upload[]","chunkfail"),h.append("mimes","chunkfail")):h.append("upload[]",t),t._chunk&&(h.append("chunk",t._chunk),h.append("cid",t._cid),h.append("range",t._range)))}),d&&e.each(s,function(e,t){h.append("upload_path[]",t)}),r.onreadystatechange=function(){if(4==r.readyState&&0==r.status)if(w)p.reject();else{var n=["errAbort"];!d&&t.files&&e.map(t.files,function(e){return 0===e.size?e:null}).length&&n.push("errFolderUpload"),p.reject(n)}},r.send(h),!0};return d?l?F(m[0],m[1]):m.done(function(e){T=[],g=e[0].length,g?(T=e[2],F(e[0],e[1])):p.reject(["errUploadNoFiles"])}).fail(function(){p.reject()}):m.length>0?null==T?(T=[],a.uploads.checkExists(m,f,n).done(function(t){n.option("uploadOverwrite")&&(T=t,m=e.map(m,function(e){return e._remove?null:e})),g=m.length,g>0?F(m)||p.reject():p.reject()})):F(m)||p.reject():p.reject(),p},iframe:function(t,n){var i,a,r,o,s=n?n:this,l=t.input?t.input:!1,d=l?!1:s.uploads.checkFile(t,s),c=e.Deferred().fail(function(e){e&&s.error(e)}).done(function(e){e.warning&&s.error(e.warning),e.removed&&s.remove(e),e.added&&s.add(e),e.changed&&s.change(e),s.trigger("upload",e),e.sync&&s.sync()}),u="iframe-"+s.namespace+ ++s.iframeCnt,p=e(''),h=this.UA.IE,f=function(){o&&clearTimeout(o),r&&clearTimeout(r),a&&s.notify({type:"upload",cnt:-i}),setTimeout(function(){h&&e('').appendTo(p),p.remove(),m.remove()},100)},m=e('').on("load",function(){m.off("load").on("load",function(){f(),c.reject()}),r=setTimeout(function(){a=!0,s.notify({type:"upload",cnt:i})},s.options.notifyDelay),s.options.iframeTimeout>0&&(o=setTimeout(function(){f(),c.reject([errors.connect,errors.timeout])},s.options.iframeTimeout)),p.submit()}),g=t.target||s.cwd().hash,v=[],b=[],y=[];if(d&&d.length)e.each(d,function(e,t){p.append(' ')}),i=1;else{if(!(l&&e(l).is(":file")&&e(l).val()))return c.reject();n.option("uploadOverwrite")&&(v=l.files?l.files:[{name:e(l).val().replace(/^(?:.+[\\\/])?([^\\\/]+)$/,"$1")}],b.push(s.uploads.checkExists(v,g,s).done(function(t){y=t,i=e.map(v,function(e){return e._remove?null:e}).length,i!=v.length&&(i=0)}))),i=l.files?l.files.length:1,p.append(l)}return e.when.apply(e,b).done(function(){return 1>i?c.reject():(p.append(' ').append(' ').append(' ').append(e(l).attr("name","upload[]")),y.length>0&&(e.each(y,function(e,t){p.append(' ')}),p.append(' ')),e.each(s.options.onlyMimes||[],function(e,t){p.append(' ')}),e.each(s.options.customData,function(e,t){p.append(' ')}),p.appendTo("body"),m.appendTo("body"),void 0)}),c}},one:function(t,n){var i=this,a=e.proxy(n,function(e){return setTimeout(function(){i.unbind(e.type,a)},3),n.apply(this,arguments)});return this.bind(t,a)},localStorage:function(e,t){var n=window.localStorage;if(e="elfinder-"+e+this.id,null===t)return n.removeItem(e);if(void 0!==t)try{n.setItem(e,t)}catch(i){n.clear(),n.setItem(e,t)}return n.getItem(e)},cookie:function(t,n){var i,a,r,o;if(t="elfinder-"+t+this.id,void 0===n){if(document.cookie&&""!=document.cookie)for(r=document.cookie.split(";"),t+="=",o=0;o "),escape:function(e){return this._node.text(e).html().replace(/"/g,""").replace(/'/g,"'")},normalize:function(t){var n=function(e){return e&&e.hash&&e.name&&e.mime?("application/x-empty"==e.mime&&(e.mime="text/plain"),e):null};return t.files&&(t.files=e.map(t.files,n)),t.tree&&(t.tree=e.map(t.tree,n)),t.added&&(t.added=e.map(t.added,n)),t.changed&&(t.changed=e.map(t.changed,n)),t.api&&(t.init=!0),t},setSort:function(e,t,n){this.storage("sortType",this.sortType=this.sortRules[e]?e:"name"),this.storage("sortOrder",this.sortOrder=/asc|desc/.test(t)?t:"asc"),this.storage("sortStickFolders",(this.sortStickFolders=!!n)?1:""),this.trigger("sortchange")},_sortRules:{name:function(e,t){var n,i,a=e.name.toLowerCase(),r=t.name.toLowerCase(),o="",s="",l=elFinder.prototype.naturalCompare;return(n=a.match(/^(.+)(\.[0-9a-z.]+)$/))&&(a=n[1],o=n[2]),(n=r.match(/^(.+)(\.[0-9a-z.]+)$/))&&(r=n[1],s=n[2]),i=l(a,r),0==i&&(o||s)&&o!=s&&(i=l(o,s)),i},size:function(e,t){var n=parseInt(e.size)||0,i=parseInt(t.size)||0;return n==i?0:n>i?1:-1},kind:function(e,t){return elFinder.prototype.naturalCompare(e.mime,t.mime)},date:function(e,t){var n=e.ts||e.date,i=t.ts||t.date;return n==i?0:n>i?1:-1}},naturalCompare:function(e,t){var n=elFinder.prototype.naturalCompare;return"undefined"==typeof n.loc&&(n.loc=navigator.userLanguage||navigator.browserLanguage||navigator.language||"en-US"),"undefined"==typeof n.sort&&("11".localeCompare("2",n.loc,{numeric:!0})>0?n.sort=window.Intl&&window.Intl.Collator?new Intl.Collator(n.loc,{numeric:!0}).compare:function(e,t){return e.localeCompare(t,n.loc,{numeric:!0})}:(n.sort=function(e,t){var i,a,r=/(^-?[0-9]+(\.?[0-9]*)[df]?e?[0-9]?$|^0x[0-9a-f]+$|[0-9]+)/gi,o=/(^[ ]*|[ ]*$)/g,s=/(^([\w ]+,?[\w ]+)?[\w ]+,?[\w ]+\d+:\d+(:\d+)?[\w ]?|^\d{1,4}[\/\-]\d{1,4}[\/\-]\d{1,4}|^\w+, \w+ \d+, \d{4})/,l=/^0x[0-9a-f]+$/i,d=/^0/,c=/^[\x01\x21-\x2f\x3a-\x40\x5b-\x60\x7b-\x7e]/,u=function(e){return n.sort.insensitive&&(""+e).toLowerCase()||""+e},p=u(e).replace(o,"").replace(/^_/,"")||"",h=u(t).replace(o,"").replace(/^_/,"")||"",f=p.replace(r,"\0$1\0").replace(/\0$/,"").replace(/^\0/,"").split("\0"),m=h.replace(r,"\0$1\0").replace(/\0$/,"").replace(/^\0/,"").split("\0"),g=parseInt(p.match(l))||1!=f.length&&p.match(s)&&Date.parse(p),v=parseInt(h.match(l))||g&&h.match(s)&&Date.parse(h)||null,b=0;if(v){if(v>g)return-1;if(g>v)return 1}for(var y=0,w=Math.max(f.length,m.length);w>y;y++){if(i=!(f[y]||"").match(d)&&parseFloat(f[y])||f[y]||0,a=!(m[y]||"").match(d)&&parseFloat(m[y])||m[y]||0,isNaN(i)!==isNaN(a)){if(isNaN(i)&&("string"!=typeof i||!i.match(c)))return 1;if("string"!=typeof a||!a.match(c))return-1}if(0===parseInt(i,10)&&(i=0),0===parseInt(a,10)&&(a=0),typeof i!=typeof a&&(i+="",a+=""),n.sort.insensitive&&"string"==typeof i&&"string"==typeof a&&(b=i.localeCompare(a,n.loc),0!==b))return b;if(a>i)return-1;if(i>a)return 1}return 0},n.sort.insensitive=!0)),n.sort(e,t)},compare:function(e,t){var n,i=this,a=i.sortType,r="asc"==i.sortOrder,o=i.sortStickFolders,s=i.sortRules,l=s[a],d="directory"==e.mime,c="directory"==t.mime;if(o){if(d&&!c)return-1;if(!d&&c)return 1}return n=r?l(e,t):l(t,e),"name"!=a&&0==n?n=r?s.name(e,t):s.name(t,e):n},sortFiles:function(e){return e.sort(this.compare)},notify:function(t){var n,i,a,r,o=t.type,s=this.messages["ntf"+o]?this.i18n("ntf"+o):this.i18n("ntfsmth"),l=this.ui.notify,d=l.children(".elfinder-notify-"+o),c=' ',u=t.cnt,p="undefined"!=typeof t.size?parseInt(t.size):null,h="undefined"!=typeof t.progress&&t.progress>=0?t.progress:null,f=t.cancel,m="ui-state-hover";return o?(d.length||(d=e(c.replace(/\{type\}/g,o).replace(/\{msg\}/g,s)).appendTo(l).data("cnt",0),null!=h&&d.data({progress:0,total:0}),f&&(r=e(''+this.i18n("btnCancel")+" ").hover(function(t){e(this).toggleClass(m,"mouseenter"==t.type)}),d.children("div.elfinder-notify-cancel").append(r))),n=u+parseInt(d.data("cnt")),n>0?(!t.hideCnt&&d.children(".elfinder-notify-cnt").text("("+n+")"),l.is(":hidden")&&l.elfinderdialog("open"),d.data("cnt",n),null!=h&&(i=d.data("total"))>=0&&(a=d.data("progress"))>=0&&(i+=null!=p?p:u,a+=h,null==p&&0>u&&(a+=100*u),d.data({progress:a,total:i}),null!=p&&(a*=100,i=Math.max(1,i)),h=parseInt(a/i),d.find(".elfinder-notify-progress").animate({width:(100>h?h:100)+"%"},20))):(d.remove(),!l.children().length&&l.elfinderdialog("close")),this):this},confirm:function(t){var n,i=this,a=!1,r={cssClass:"elfinder-dialog-confirm",modal:!0,resizable:!1,title:this.i18n(t.title||"confirmReq"),buttons:{},close:function(){!a&&t.cancel.callback(),e(this).elfinderdialog("destroy")}},o=this.i18n("apllyAll");return r.buttons[this.i18n(t.accept.label)]=function(){t.accept.callback(!(!n||!n.prop("checked"))),a=!0,e(this).elfinderdialog("close")},t.reject&&(r.buttons[this.i18n(t.reject.label)]=function(){t.reject.callback(!(!n||!n.prop("checked"))),a=!0,e(this).elfinderdialog("close")}),t.buttons&&t.buttons.length>0&&e.each(t.buttons,function(t,o){r.buttons[i.i18n(o.label)]=function(){o.callback(!(!n||!n.prop("checked"))),a=!0,e(this).elfinderdialog("close")}}),r.buttons[this.i18n(t.cancel.label)]=function(){e(this).elfinderdialog("close")},t.all&&(t.reject&&(r.width=370),r.create=function(){n=e(' '),e(this).next().children().before(e(""+o+" ").prepend(n))},r.open=function(){var t=e(this).next(),n=parseInt(t.children(":first").outerWidth()+t.children(":last").outerWidth());n>parseInt(t.width())&&e(this).closest(".elfinder-dialog").width(n+30)}),this.dialog(' '+this.i18n(t.text),r)},uniqueName:function(e,t,n){var i,a,r=0,o="";if(e=this.i18n(e),t=t||this.cwd().hash,n="undefined"==typeof n?" ":n,(i=e.match(/^(.+)(\.[^.]+)$/))&&(o=i[2],e=i[1]),a=e+o,!this.fileByName(a,t))return a;for(;1e4>r;)if(a=e+n+ ++r+o,!this.fileByName(a,t))return a;return e+Math.random()+o},i18n:function(){var t,n,i,a=this,r=this.messages,o=[],s=[],l=function(e){var t;return 0===e.indexOf("#")&&(t=a.file(e.substr(1)))?t.name:e};for(t=0;t0&&o[n]&&s.push(n),a.escape(o[n])||""})):i=i.get(0).outerHTML,o[t]=i);return e.map(o,function(t,n){return-1===e.inArray(n,s)?t:null}).join(" ")},mime2class:function(e){var t="elfinder-cwd-icon-";return e=e.split("/"),t+e[0]+("image"!=e[0]&&e[1]?" "+t+e[1].replace(/(\.|\+)/g,"-"):"")},mime2kind:function(e){var t,n="object"==typeof e?e.mime:e;return t=e.alias&&"symlink-broken"!=e.mime?"Alias":this.kinds[n]?this.kinds[n]:0===n.indexOf("text")?"Text":0===n.indexOf("image")?"Image":0===n.indexOf("audio")?"Audio":0===n.indexOf("video")?"Video":0===n.indexOf("application")?"App":n,this.messages["kind"+t]?this.i18n("kind"+t):n},formatDate:function(e,t){var n,i,a,r,o,s,l,d,c,u,p,h=this,t=t||e.ts,f=h.i18;return h.options.clientFormatDate&&t>0?(n=new Date(1e3*t),d=n[h.getHours](),c=d>12?d-12:d,u=n[h.getMinutes](),p=n[h.getSeconds](),r=n[h.getDate](),o=n[h.getDay](),s=n[h.getMonth]()+1,l=n[h.getFullYear](),i=t>=this.yesterday?this.fancyFormat:this.dateFormat,a=i.replace(/[a-z]/gi,function(e){switch(e){case"d":return r>9?r:"0"+r;case"j":return r;case"D":return h.i18n(f.daysShort[o]);case"l":return h.i18n(f.days[o]);case"m":return s>9?s:"0"+s;case"n":return s;case"M":return h.i18n(f.monthsShort[s-1]);case"F":return h.i18n(f.months[s-1]);case"Y":return l;case"y":return(""+l).substr(2);case"H":return d>9?d:"0"+d;case"G":return d;case"g":return c;case"h":return c>9?c:"0"+c;case"a":return d>12?"pm":"am";case"A":return d>12?"PM":"AM";case"i":return u>9?u:"0"+u;case"s":return p>9?p:"0"+p}return e}),t>=this.yesterday?a.replace("$1",this.i18n(t>=this.today?"Today":"Yesterday")):a):e.date?e.date.replace(/([a-z]+)\s/i,function(e,t){return h.i18n(t)+" "}):h.i18n("dateUnknown")},perms2class:function(e){var t="";return e.read||e.write?e.read?e.write||(t="elfinder-ro"):t="elfinder-wo":t="elfinder-na",t},formatPermissions:function(e){var t=[];return e.read&&t.push(this.i18n("read")),e.write&&t.push(this.i18n("write")),t.length?t.join(" "+this.i18n("and")+" "):this.i18n("noaccess")},formatSize:function(e){var t=1,n="b";return"unknown"==e?this.i18n("unknown"):(e>1073741824?(t=1073741824,n="GB"):e>1048576?(t=1048576,n="MB"):e>1024&&(t=1024,n="KB"),e/=t,(e>0?t>=1048576?e.toFixed(2):Math.round(e):0)+" "+n)},formatFileMode:function(t,n){var i,a,r,o,s,l,d,c,u;if(n||(n=this.options.fileModeStyle.toLowerCase()),t=e.trim(t),t.match(/[rwxs-]{9}$/i)){if(c=t=t.substr(-9),"string"==n)return c;for(u="",r=0,i=0;7>i;i+=3)a=t.substr(i,3),o=0,a.match(/[r]/i)&&(o+=4),a.match(/[w]/i)&&(o+=2),a.match(/[xs]/i)&&(a.match(/[xs]/)&&(o+=1),a.match(/[s]/i)&&(0==i?r+=4:3==i&&(r+=2))),u+=o.toString(8);r&&(u=r.toString(8)+u)}else{if(t=parseInt(t,8),u=t?t.toString(8):"",!t||"octal"==n)return u;for(a=t.toString(8),r=0,a.length>3&&(a=a.substr(-4),r=parseInt(a.substr(0,1),8),a=a.substr(1)),s=1==(1&r),d=2==(2&r),l=4==(4&r),c="",i=0;3>i;i++)c+=4==(4&parseInt(a.substr(i,1),8))?"r":"-",c+=2==(2&parseInt(a.substr(i,1),8))?"w":"-",c+=1==(1&parseInt(a.substr(i,1),8))?0==i&&l||1==i&&d?"s":"x":"-"}return"both"==n?c+" ("+u+")":"string"==n?c:u},navHash2Id:function(e){return this.navPrefix+e},navId2Hash:function(e){return"string"==typeof e?e.substr(this.navPrefix.length):!1},cwdHash2Id:function(e){return this.cwdPrefix+e},cwdId2Hash:function(e){return"string"==typeof e?e.substr(this.cwdPrefix.length):!1},log:function(e){return window.console&&window.console.log&&window.console.log(e),this},debug:function(t,n){var i=this.options.debug;return("all"==i||i===!0||e.isArray(i)&&-1!=e.inArray(t,i))&&window.console&&window.console.log&&window.console.log("elfinder debug: ["+t+"] ["+this.id+"]",n),this},time:function(e){window.console&&window.console.time&&window.console.time(e)},timeEnd:function(e){window.console&&window.console.timeEnd&&window.console.timeEnd(e)}},Object.keys||(Object.keys=function(){var e=Object.prototype.hasOwnProperty,t=!{toString:null}.propertyIsEnumerable("toString"),n=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],i=n.length;return function(a){if("object"!=typeof a&&"function"!=typeof a||null===a)throw new TypeError("Object.keys called on non-object");var r=[];for(var o in a)e.call(a,o)&&r.push(o);if(t)for(var s=0;i>s;s++)e.call(a,n[s])&&r.push(n[s]);return r}}()),elFinder.prototype.version="2.1.5 (2.1-src Nightly: 62ee5c1)",function(){if(e.ui&&e.ui.ddmanager){var t=e.ui.ddmanager.prepareOffsets;e.ui.ddmanager.prepareOffsets=function(n,i){var a=function(e){if(e.is(":hidden"))return!0;var t=e[0].getBoundingClientRect();return document.elementFromPoint(t.left,t.top)?!1:!0};if("mousedown"===i.type){var r,o,s=e.ui.ddmanager.droppables[n.options.scope]||[],l=s.length;for(r=0;l>r;r++)o=s[r],o.options.autoDisable&&(!o.options.disabled||o.options.autoDisable>1)&&(o.options.disabled=a(o.element),o.options.autoDisable=o.options.disabled?2:1)}return t(n,i)}}}(),e.fn.elfinder=function(e){return"instance"==e?this.getElFinder():this.each(function(){var t="string"==typeof e?e:"";switch(this.elfinder||new elFinder(this,"object"==typeof e?e:{}),t){case"close":case"hide":this.elfinder.hide();break;case"open":case"show":this.elfinder.show();break;case"destroy":this.elfinder.destroy()}})},e.fn.getElFinder=function(){var e;return this.each(function(){return this.elfinder?(e=this.elfinder,!1):void 0}),e},elFinder.prototype._options={url:"",requestType:"get",transport:{},urlUpload:"",dragUploadAllow:"auto",uploadMaxChunkSize:10485760,iframeTimeout:0,customData:{},handlers:{},customHeaders:{},xhrFields:{},lang:"en",cssClass:"",commands:["open","opendir","reload","home","up","back","forward","getfile","quicklook","download","rm","duplicate","rename","mkdir","mkfile","upload","copy","cut","paste","edit","extract","archive","search","info","view","help","resize","sort","netmount","netunmount","places","chmod"],commandsOptions:{getfile:{onlyURL:!1,multiple:!1,folders:!1,oncomplete:""},upload:{ui:"uploadbutton"},quicklook:{autoplay:!0,jplayer:"extensions/jplayer"},edit:{mimes:[],editors:[]},info:{nullUrlDirLinkSelf:!0,custom:{}},netmount:{ftp:{inputs:{host:e(' '),port:e(' '),path:e(' '),user:e(' '),pass:e(' '),encoding:e(' '),locale:e(' ')}},dropbox:{inputs:{host:e(' '),path:e(' '),user:e(' '),pass:e(' ')},select:function(e){var t=this;t.inputs.host.find("span").length&&e.request({data:{cmd:"netmount",protocol:"dropbox",host:"dropbox.com",user:"init",pass:"init",options:{url:e.uploadURL,id:e.id}},preventDefault:!0}).done(function(n){t.inputs.host.find("span").removeClass("elfinder-info-spinner"),t.inputs.host.find("span").html(n.body.replace(/\{msg:([^}]+)\}/g,function(t,n){return e.i18n(n,"Dropbox.com")}))}).fail(function(){})},done:function(t,n){var i=this;"makebtn"==n.mode?(i.inputs.host.find("span").removeClass("elfinder-info-spinner"),i.inputs.host.find("input").hover(function(){e(this).toggleClass("ui-state-hover")}),i.inputs.host[1].value=""):(i.inputs.host.find("span").removeClass("elfinder-info-spinner"),i.inputs.host.find("span").html("Dropbox.com"),i.inputs.host[1].value="dropbox",i.inputs.user.val("done"),i.inputs.pass.val("done"))}}},help:{view:["about","shortcuts","help"]}},getFileCallback:null,defaultView:"icons",startPathHash:"",ui:["toolbar","tree","path","stat"],uiOptions:{toolbar:[["back","forward"],["netmount"],["mkdir","mkfile","upload"],["open","download","getfile"],["info","chmod"],["quicklook"],["copy","cut","paste"],["rm"],["duplicate","rename","edit","resize"],["extract","archive"],["search"],["view","sort"],["help"]],tree:{openRootOnLoad:!0,openCwdOnOpen:!0,syncTree:!0},navbar:{minWidth:150,maxWidth:500},cwd:{oldSchool:!1,listView:{columns:["perm","date","size","kind"],columnsCustomName:{}}}},onlyMimes:[],sortRules:{},sortType:"name",sortOrder:"asc",sortStickFolders:!0,clientFormatDate:!0,UTCDate:!1,dateFormat:"",fancyDateFormat:"",fileModeStyle:"both",width:"auto",height:400,resizable:!0,notifyDelay:500,notifyDialog:{position:{top:"12px",right:"12px"},width:280},allowShortcuts:!0,rememberLastDir:!0,reloadClearHistory:!1,useBrowserHistory:!0,showFiles:30,showThreshold:50,validName:!1,backupSuffix:"~",sync:0,syncStart:!0,loadTmbs:5,cookie:{expires:30,domain:"",path:"/",secure:!1},contextmenu:{navbar:["open","|","upload","|","copy","cut","paste","duplicate","|","rm","|","rename","|","places","info","chmod","netunmount"],cwd:["reload","back","|","upload","mkdir","mkfile","paste","|","sort","|","info"],files:["getfile","|","open","opendir","quicklook","|","download","upload","|","copy","cut","paste","duplicate","|","rm","|","edit","rename","resize","|","archive","extract","|","places","info","chmod"]},debug:["error","warning","event-destroy"]},elFinder.prototype.history=function(t){var n,i=this,a=!0,r=[],o=function(){r=[t.cwd().hash],n=0,a=!0},s=t.options.useBrowserHistory&&window.history&&window.history.pushState?window.history:null,l=function(s){return s&&i.canForward()||!s&&i.canBack()?(a=!1,t.exec("open",r[s?++n:--n]).fail(o)):e.Deferred().reject()};this.canBack=function(){return n>0},this.canForward=function(){return n=0&&e>n+1&&r.splice(n+1),r[r.length-1]!=i&&r.push(i),n=r.length-1),a=!0,s&&(s.state?s.state.thash!=i&&s.pushState({thash:i},null,location.pathname+location.search+"#elf_"+i):s.replaceState({thash:i},null,location.pathname+location.search+"#elf_"+i))
+}).reload(t.options.reloadClearHistory&&o)},elFinder.prototype.command=function(t){this.fm=t,this.name="",this.title="",this.state=-1,this.alwaysEnabled=!1,this._disabled=!1,this.disableOnSearch=!1,this.updateOnSelect=!0,this._handlers={enable:function(){this.update(void 0,this.value)},disable:function(){this.update(-1,this.value)},"open reload load":function(){this._disabled=!(this.alwaysEnabled||this.fm.isCommandEnabled(this.name)),this.update(void 0,this.value),this.change()}},this.handlers={},this.shortcuts=[],this.options={ui:"button"},this.setup=function(t,n){var i,a,r,o=this,s=this.fm;for(this.name=t,this.title=s.messages["cmd"+t]?s.i18n("cmd"+t):t,this.options=e.extend({},this.options,n),this.listeners=[],n.shortcuts&&("function"==typeof n.shortcuts?r=n.shortcuts(this.fm,this.shortcuts):e.isArray(n.shortcuts)&&(r=n.shortcuts),this.shortcuts=r||[]),this.updateOnSelect&&(this._handlers.select=function(){this.update(void 0,this.value)}),e.each(e.extend({},o._handlers,o.handlers),function(t,n){s.bind(t,e.proxy(n,o))}),i=0;i-1},this.active=function(){return this.state>0},this.getstate=function(){return-1},this.update=function(e,t){var n=this.state,i=this.value;this.state=this._disabled?-1:void 0!==e?e:this.getstate(),this.value=t,(n!=this.state||i!=this.value)&&this.change()},this.change=function(e){var t,n;if("function"==typeof e)this.listeners.push(e);else for(n=0;n ',lock:' ',symlink:' ',navicon:' ',navspinner:' ',navdir:' {symlink}{permissions}{name}
',placedir:' {symlink}{permissions}{name}
'},mimes:{text:["application/x-empty","application/javascript","application/xhtml+xml","audio/x-mp3-playlist","application/x-web-config","application/docbook+xml","application/x-php","application/x-perl","application/x-awk","application/x-config","application/x-csh","application/xml"]},mixin:{make:function(){var t,n,i,a=this.fm,r=this.name,o=a.getUI("cwd"),s="list"!=a.storage("view"),l=function(){s?(m.zIndex("").css("position",""),n.css("max-height","")):(i.css("width",""),i.parent("td").css("overflow",""))},d=e.Deferred().fail(function(e){l(),o.trigger("unselectall"),e&&a.error(e)}).always(function(){g.remove(),m.remove(),a.enable()}),c="tmp_"+parseInt(1e5*Math.random()),u=a.cwd().hash,p=new Date,h={hash:c,name:a.uniqueName(this.prefix),mime:this.mime,read:!0,write:!0,date:"Today "+p.getHours()+":"+p.getMinutes()},f=this.data||{},m=o.trigger("create."+a.namespace,h).find("#"+a.cwdHash2Id(c)),g=e(s?"":' ').on("keyup text",function(){s?(this.style.height="1px",this.style.height=this.scrollHeight+"px"):t&&(this.style.width=t+"px",this.scrollWidth>t&&(this.style.width=this.scrollWidth+10+"px"))}).keydown(function(t){t.stopImmediatePropagation(),t.keyCode==e.ui.keyCode.ESCAPE?d.reject():t.keyCode==e.ui.keyCode.ENTER&&g.blur()}).mousedown(function(e){e.stopPropagation()}).blur(function(){var t=e.trim(g.val()),n=g.parent(),i=!0;if(n.length){if(a.options.validName&&a.options.validName.test)try{i=a.options.validName.test(t)}catch(s){i=!1}if(!t||".."===t||!i)return a.error("errInvName"),!1;if(a.fileByName(t,u))return a.error(["errExists",t]),!1;l(),n.html(a.escape(t)),a.lockfiles({files:[c]}),a.request({data:e.extend({cmd:r,name:t,target:u},f||{}),notify:{type:r,cnt:1},preventFail:!0,syncOnFail:!0}).fail(function(e){d.reject(e)}).done(function(e){if(d.resolve(e),e.added&&e.added[0]){var t=o.find("#"+a.cwdHash2Id(e.added[0].hash));t.length&&t.trigger("scrolltoview")}})}});return this.disabled()||!m.length?d.reject():(a.disable(),n=m.find(".elfinder-cwd-filename"),i=n.parent(),s?(m.zIndex(m.parent().zIndex()+1).css("position","relative"),n.css("max-height","none")):(t=i.width(),i.width(t-15),i.parent("td").css("overflow","visible")),n.empty("").append(g.val(h.name)),g.trigger("keyup"),g.select().focus(),g[0].setSelectionRange&&g[0].setSelectionRange(0,h.name.replace(/\..+$/,"").length),d)}}},e.fn.dialogelfinder=function(t){var n="elfinderPosition",i="elfinderDestroyOnClose";if(this.not(".elfinder").each(function(){var a=(e(document),e('")),r=(e(' ').appendTo(a).click(function(e){e.preventDefault(),r.dialogelfinder("close")}),e(this).addClass("dialogelfinder").css("position","absolute").hide().appendTo("body").draggable({handle:".dialogelfinder-drag",containment:"window"}).elfinder(t).prepend(a));r.elfinder("instance"),r.width(parseInt(r.width())||840).data(i,!!t.destroyOnClose).find(".elfinder-toolbar").removeClass("ui-corner-top"),t.position&&r.data(n,t.position),t.autoOpen!==!1&&e(this).dialogelfinder("open")}),"open"==t){var a=e(this),r=a.data(n)||{top:parseInt(e(document).scrollTop()+(e(window).height()o&&(o=t+1)}),a.zIndex(o).css(r).show().trigger("resize"),setTimeout(function(){a.trigger("resize").mousedown()},200))}else if("close"==t){var a=e(this);a.is(":visible")&&(a.data(i)?a.elfinder("destroy").remove():a.elfinder("close"))}else if("instance"==t)return e(this).getElFinder();return this},elFinder&&elFinder.prototype&&"object"==typeof elFinder.prototype.i18&&(elFinder.prototype.i18.en={translator:"Troex Nevelin <troex@fury.scancode.ru>",language:"English",direction:"ltr",dateFormat:"M d, Y h:i A",fancyDateFormat:"$1 h:i A",messages:{error:"Error",errUnknown:"Unknown error.",errUnknownCmd:"Unknown command.",errJqui:"Invalid jQuery UI configuration. Selectable, draggable and droppable components must be included.",errNode:"elFinder requires DOM Element to be created.",errURL:"Invalid elFinder configuration! URL option is not set.",errAccess:"Access denied.",errConnect:"Unable to connect to backend.",errAbort:"Connection aborted.",errTimeout:"Connection timeout.",errNotFound:"Backend not found.",errResponse:"Invalid backend response.",errConf:"Invalid backend configuration.",errJSON:"PHP JSON module not installed.",errNoVolumes:"Readable volumes not available.",errCmdParams:'Invalid parameters for command "$1".',errDataNotJSON:"Data is not JSON.",errDataEmpty:"Data is empty.",errCmdReq:"Backend request requires command name.",errOpen:'Unable to open "$1".',errNotFolder:"Object is not a folder.",errNotFile:"Object is not a file.",errRead:'Unable to read "$1".',errWrite:'Unable to write into "$1".',errPerm:"Permission denied.",errLocked:'"$1" is locked and can not be renamed, moved or removed.',errExists:'File named "$1" already exists.',errInvName:"Invalid file name.",errFolderNotFound:"Folder not found.",errFileNotFound:"File not found.",errTrgFolderNotFound:'Target folder "$1" not found.',errPopup:"Browser prevented opening popup window. To open file enable it in browser options.",errMkdir:'Unable to create folder "$1".',errMkfile:'Unable to create file "$1".',errRename:'Unable to rename "$1".',errCopyFrom:'Copying files from volume "$1" not allowed.',errCopyTo:'Copying files to volume "$1" not allowed.',errMkOutLink:"Unable to create a link to outside the volume root.",errUpload:"Upload error.",errUploadFile:'Unable to upload "$1".',errUploadNoFiles:"No files found for upload.",errUploadTotalSize:"Data exceeds the maximum allowed size.",errUploadFileSize:"File exceeds maximum allowed size.",errUploadMime:"File type not allowed.",errUploadTransfer:'"$1" transfer error.',errUploadTemp:"Unable to make temporary file for upload.",errNotReplace:'Object "$1" already exists at this location and can not be replaced by object with another type.',errReplace:'Unable to replace "$1".',errSave:'Unable to save "$1".',errCopy:'Unable to copy "$1".',errMove:'Unable to move "$1".',errCopyInItself:'Unable to copy "$1" into itself.',errRm:'Unable to remove "$1".',errRmSrc:"Unable remove source file(s).",errExtract:'Unable to extract files from "$1".',errArchive:"Unable to create archive.",errArcType:"Unsupported archive type.",errNoArchive:"File is not archive or has unsupported archive type.",errCmdNoSupport:"Backend does not support this command.",errReplByChild:'The folder "$1" can\'t be replaced by an item it contains.',errArcSymlinks:"For security reason denied to unpack archives contains symlinks or files with not allowed names.",errArcMaxSize:"Archive files exceeds maximum allowed size.",errResize:'Unable to resize "$1".',errResizeDegree:"Invalid rotate degree.",errResizeRotate:"Unable to rotate image.",errResizeSize:"Invalid image size.",errResizeNoChange:"Image size not changed.",errUsupportType:"Unsupported file type.",errNotUTF8Content:'File "$1" is not in UTF-8 and cannot be edited.',errNetMount:'Unable to mount "$1".',errNetMountNoDriver:"Unsupported protocol.",errNetMountFailed:"Mount failed.",errNetMountHostReq:"Host required.",errSessionExpires:"Your session has expired due to inactivity.",errCreatingTempDir:'Unable to create temporary directory: "$1"',errFtpDownloadFile:'Unable to download file from FTP: "$1"',errFtpUploadFile:'Unable to upload file to FTP: "$1"',errFtpMkdir:'Unable to create remote directory on FTP: "$1"',errArchiveExec:'Error while archiving files: "$1"',errExtractExec:'Error while extracting files: "$1"',errNetUnMount:"Unable to unmount",errConvUTF8:"Not convertible to UTF-8",errFolderUpload:"Try Google Chrome, If you'd like to upload the folder.",errSearchTimeout:'Timed out while searching "$1". Search result is partial.',cmdarchive:"Create archive",cmdback:"Back",cmdcopy:"Copy",cmdcut:"Cut",cmddownload:"Download",cmdduplicate:"Duplicate",cmdedit:"Edit file",cmdextract:"Extract files from archive",cmdforward:"Forward",cmdgetfile:"Select files",cmdhelp:"About this software",cmdhome:"Home",cmdinfo:"Get info",cmdmkdir:"New folder",cmdmkfile:"New text file",cmdopen:"Open",cmdpaste:"Paste",cmdquicklook:"Preview",cmdreload:"Reload",cmdrename:"Rename",cmdrm:"Delete",cmdsearch:"Find files",cmdup:"Go to parent directory",cmdupload:"Upload files",cmdview:"View",cmdresize:"Resize & Rotate",cmdsort:"Sort",cmdnetmount:"Mount network volume",cmdnetunmount:"Unmount",cmdplaces:"To Places",cmdchmod:"Change mode",cmdopendir:"Open a folder",btnClose:"Close",btnSave:"Save",btnRm:"Remove",btnApply:"Apply",btnCancel:"Cancel",btnNo:"No",btnYes:"Yes",btnMount:"Mount",btnApprove:"Goto $1 & approve",btnUnmount:"Unmount",btnConv:"Convert",btnCwd:"Here",btnVolume:"Volume",btnAll:"All",btnMime:"MIME Type",btnFileName:"Filename",btnSaveClose:"Save & Close",btnBackup:"Backup",ntfopen:"Open folder",ntffile:"Open file",ntfreload:"Reload folder content",ntfmkdir:"Creating directory",ntfmkfile:"Creating files",ntfrm:"Delete files",ntfcopy:"Copy files",ntfmove:"Move files",ntfprepare:"Prepare to copy files",ntfrename:"Rename files",ntfupload:"Uploading files",ntfdownload:"Downloading files",ntfsave:"Save files",ntfarchive:"Creating archive",ntfextract:"Extracting files from archive",ntfsearch:"Searching files",ntfresize:"Resizing images",ntfsmth:"Doing something",ntfloadimg:"Loading image",ntfnetmount:"Mounting network volume",ntfnetunmount:"Unmounting network volume",ntfdim:"Acquiring image dimension",ntfreaddir:"Reading folder infomation",ntfurl:"Getting URL of link",ntfchmod:"Changing file mode",ntfpreupload:"Verifying upload file name",dateUnknown:"unknown",Today:"Today",Yesterday:"Yesterday",msJan:"Jan",msFeb:"Feb",msMar:"Mar",msApr:"Apr",msMay:"May",msJun:"Jun",msJul:"Jul",msAug:"Aug",msSep:"Sep",msOct:"Oct",msNov:"Nov",msDec:"Dec",January:"January",February:"February",March:"March",April:"April",May:"May",June:"June",July:"July",August:"August",September:"September",October:"October",November:"November",December:"December",Sunday:"Sunday",Monday:"Monday",Tuesday:"Tuesday",Wednesday:"Wednesday",Thursday:"Thursday",Friday:"Friday",Saturday:"Saturday",Sun:"Sun",Mon:"Mon",Tue:"Tue",Wed:"Wed",Thu:"Thu",Fri:"Fri",Sat:"Sat",sortname:"by name",sortkind:"by kind",sortsize:"by size",sortdate:"by date",sortFoldersFirst:"Folders first","untitled file.txt":"NewFile.txt","untitled folder":"NewFolder",Archive:"NewArchive",confirmReq:"Confirmation required",confirmRm:"Are you sure you want to remove files? This cannot be undone!",confirmRepl:"Replace old file with new one?",confirmConvUTF8:"Not in UTF-8 Convert to UTF-8? Contents become UTF-8 by saving after conversion.",confirmNotSave:"It has been modified. Losing work if you do not save changes.",apllyAll:"Apply to all",name:"Name",size:"Size",perms:"Permissions",modify:"Modified",kind:"Kind",read:"read",write:"write",noaccess:"no access",and:"and",unknown:"unknown",selectall:"Select all files",selectfiles:"Select file(s)",selectffile:"Select first file",selectlfile:"Select last file",viewlist:"List view",viewicons:"Icons view",places:"Places",calc:"Calculate",path:"Path",aliasfor:"Alias for",locked:"Locked",dim:"Dimensions",files:"Files",folders:"Folders",items:"Items",yes:"yes",no:"no",link:"Link",searcresult:"Search results",selected:"selected items",about:"About",shortcuts:"Shortcuts",help:"Help",webfm:"Web file manager",ver:"Version",protocolver:"protocol version",homepage:"Project home",docs:"Documentation",github:"Fork us on Github",twitter:"Follow us on twitter",facebook:"Join us on facebook",team:"Team",chiefdev:"chief developer",developer:"developer",contributor:"contributor",maintainer:"maintainer",translator:"translator",icons:"Icons",dontforget:"and don't forget to take your towel",shortcutsof:"Shortcuts disabled",dropFiles:"Drop files here",or:"or",selectForUpload:"Select files to upload",moveFiles:"Move files",copyFiles:"Copy files",rmFromPlaces:"Remove from places",aspectRatio:"Aspect ratio",scale:"Scale",width:"Width",height:"Height",resize:"Resize",crop:"Crop",rotate:"Rotate","rotate-cw":"Rotate 90 degrees CW","rotate-ccw":"Rotate 90 degrees CCW",degree:"°",netMountDialogTitle:"Mount network volume",protocol:"Protocol",host:"Host",port:"Port",user:"User",pass:"Password",confirmUnmount:"Are you unmount $1?",dropFilesBrowser:"Drop or Paste files from browser",dropPasteFiles:"Drop or Paste files here",encoding:"Encoding",locale:"Locale",searchTarget:"Target: $1",searchMime:"Search by input MIME Type",owner:"Owner",group:"Group",other:"Other",execute:"Execute",perm:"Permission",mode:"Mode",emptyFolder:"Folder is empty",emptyFolderDrop:"Folder is empty\\A Drop to add items",emptyFolderLTap:"Folder is empty\\A Long tap to add items",quality:"Quality",autoSync:"Auto sync",kindUnknown:"Unknown",kindFolder:"Folder",kindAlias:"Alias",kindAliasBroken:"Broken alias",kindApp:"Application",kindPostscript:"Postscript document",kindMsOffice:"Microsoft Office document",kindMsWord:"Microsoft Word document",kindMsExcel:"Microsoft Excel document",kindMsPP:"Microsoft Powerpoint presentation",kindOO:"Open Office document",kindAppFlash:"Flash application",kindPDF:"Portable Document Format (PDF)",kindTorrent:"Bittorrent file",kind7z:"7z archive",kindTAR:"TAR archive",kindGZIP:"GZIP archive",kindBZIP:"BZIP archive",kindXZ:"XZ archive",kindZIP:"ZIP archive",kindRAR:"RAR archive",kindJAR:"Java JAR file",kindTTF:"True Type font",kindOTF:"Open Type font",kindRPM:"RPM package",kindText:"Text document",kindTextPlain:"Plain text",kindPHP:"PHP source",kindCSS:"Cascading style sheet",kindHTML:"HTML document",kindJS:"Javascript source",kindRTF:"Rich Text Format",kindC:"C source",kindCHeader:"C header source",kindCPP:"C++ source",kindCPPHeader:"C++ header source",kindShell:"Unix shell script",kindPython:"Python source",kindJava:"Java source",kindRuby:"Ruby source",kindPerl:"Perl script",kindSQL:"SQL source",kindXML:"XML document",kindAWK:"AWK source",kindCSV:"Comma separated values",kindDOCBOOK:"Docbook XML document",kindMarkdown:"Markdown text",kindImage:"Image",kindBMP:"BMP image",kindJPEG:"JPEG image",kindGIF:"GIF Image",kindPNG:"PNG Image",kindTIFF:"TIFF image",kindTGA:"TGA image",kindPSD:"Adobe Photoshop image",kindXBITMAP:"X bitmap image",kindPXM:"Pixelmator image",kindAudio:"Audio media",kindAudioMPEG:"MPEG audio",kindAudioMPEG4:"MPEG-4 audio",kindAudioMIDI:"MIDI audio",kindAudioOGG:"Ogg Vorbis audio",kindAudioWAV:"WAV audio",AudioPlaylist:"MP3 playlist",kindVideo:"Video media",kindVideoDV:"DV movie",kindVideoMPEG:"MPEG movie",kindVideoMPEG4:"MPEG-4 movie",kindVideoAVI:"AVI movie",kindVideoMOV:"Quick Time movie",kindVideoWM:"Windows Media movie",kindVideoFlash:"Flash movie",kindVideoMKV:"Matroska movie",kindVideoOGG:"Ogg movie"}}),e.fn.elfinderbutton=function(t){return this.each(function(){var n,i="class",a=t.fm,r=a.res(i,"disabled"),o=a.res(i,"active"),s=a.res(i,"hover"),l="elfinder-button-menu-item",d="elfinder-button-menu-item-selected",c=e(this).addClass("ui-state-default elfinder-button").attr("title",t.title).append(' ').hover(function(e){!c.hasClass(r)&&c["mouseleave"==e.type?"removeClass":"addClass"](s)}).click(function(e){c.hasClass(r)||(n&&t.variants.length>1?(n.is(":hidden")&&t.fm.getUI().click(),e.stopPropagation(),n.slideToggle(100)):t.exec())}),u=function(){n.hide()};e.isArray(t.variants)&&(c.addClass("elfinder-menubutton"),n=e('').hide().appendTo(c).zIndex(12+c.zIndex()).on("mouseenter mouseleave","."+l,function(){e(this).toggleClass(s)}).on("click","."+l,function(i){i.preventDefault(),i.stopPropagation(),c.removeClass(s),n.hide(),t.exec(t.fm.selected(),e(this).data("value"))}),t.fm.bind("disable select",u).getUI().click(u),t.change(function(){n.html(""),e.each(t.variants,function(i,a){n.append(e(''+a[1]+"
").data("value",a[0]).addClass(a[0]==t.value?d:""))})})),t.change(function(){t.disabled()?c.removeClass(o+" "+s).addClass(r):(c.removeClass(r),c[t.active()?"addClass":"removeClass"](o))}).change()})},e.fn.elfindercontextmenu=function(t){return this.each(function(){var n=e(this),i="elfinder-contextmenu-item",a="elfinder-contextsubmenu-item",r="elfinder-contextmenu-extra-icon",o=n.addClass("ui-helper-reset ui-widget ui-state-default ui-corner-all elfinder-contextmenu elfinder-contextmenu-"+t.direction).hide().appendTo("body").on("mouseenter mouseleave","."+i,function(t){e(this).toggleClass("ui-state-hover","mouseenter"===t.type)}).on("mouseenter mouseleave","."+r,function(t){e(this).parent().toggleClass("ui-state-hover","mouseleave"===t.type)}).on("contextmenu",function(){return!1}),s="ltr"==t.direction?"left":"right",l=e.extend({},t.options.contextmenu),d=i+(t.UA.Touch?" elfinder-touch":""),c='{label}
',u=function(t,n,i){return e(c.replace("{icon}",n?"elfinder-button-icon-"+n:"").replace("{label}",t)).click(function(e){e.stopPropagation(),e.preventDefault(),i()})},p=function(n,i){var a=e(window),r=o.outerWidth(),l=o.outerHeight(),d=a.width(),c=a.height(),u=a.scrollTop(),p=a.scrollLeft(),h=t.UA.Touch?10:0,f={top:c>i-u+h+l?i+h:i-h-l>0?i-h-l:i+h,left:d>n-p+h+r?n+h:n-h-r,"z-index":100+t.getUI("workzone").zIndex()};o.css(f).show(),f={"z-index":f["z-index"]+10},f[s]=parseInt(o.width()),o.find(".elfinder-contextmenu-sub").css(f)},h=function(){o.hide().empty()},f=function(i,r){var s=!1,c={},p=[],f=0===r[0].indexOf(t.cwd().volumeid,0);n.data("cmdMaps")&&e.each(n.data("cmdMaps"),function(e,t){return 0==r[0].indexOf(e,0)?(c=t,!1):void 0}),f||t.disabledCmds&&e.each(t.disabledCmds,function(e,t){return 0==r[0].indexOf(e,0)?(p=t,!1):void 0}),e.each(l[i]||[],function(n,l){var m,g,v,b,y;if("|"==l&&s)return o.append(''),s=!1,void 0;if(c[l]&&(l=c[l]),m=t.command(l),m&&!f&&(y=m._disabled,m._disabled=!(m.alwaysEnabled||(t._commands[l]?-1===e.inArray(l,p):!1))),m&&-1!=m.getstate(r)){if(r._type=i,m.variants){if(!m.variants.length)return;g=u(m.title,m.name,function(){}).on("touchend",function(){g.data("touching",!0),setTimeout(function(){g.data("touching",!1)},50)}).on("click touchend","."+a,function(t){t.stopPropagation(),g.data("touching")?(g.data("touching",!1),e(this).removeClass("ui-state-hover"),t.preventDefault()):"click"==t.type&&(o.hide(),m.exec(r,e(this).data("exec")))}),v=e('').appendTo(g.append('')),b=function(){var t,n,i,a=e(window),r=e(g).offset().left,o=e(g).offset().top,s=e(g).outerWidth(),l=v.outerWidth(),d=v.outerHeight(),c=a.scrollLeft()+a.width(),u=a.scrollTop()+a.height(),p=5;i=r+s+l+p-c,t=i>0?s-i:s,i=o+5+d+p-u,n=i>0?5-i:5;var h={left:t,top:n};v.css(h).toggle()},g.addClass("elfinder-contextmenu-group").hover(function(){b()}),e.each(m.variants,function(t,n){v.append(e(''+n[1]+"
").data("exec",n[0]))})}else g=u(m.title,m.name,function(){h(),m.exec(r)}),m.extra&&m.extra.node?g.append(e('').append(m.extra.node)):g.remove(".elfinder-contextmenu-extra-icon");o.append(g),s=!0}m&&!f&&(m._disabled=y)})},m=function(t){e.each(t,function(e,t){var n;t.label&&"function"==typeof t.callback&&(n=u(t.label,t.icon,function(){h(),t.callback()}),o.append(n))})};t.one("load",function(){t.bind("contextmenu",function(e){var t=e.data;h(),t.type&&t.targets?f(t.type,t.targets):t.raw&&m(t.raw),o.children().length&&p(t.x,t.y)}).one("destroy",function(){o.remove()}).bind("disable select",function(){!n.data("mouseEvInternal")&&h(),n.data("mouseEvInternal",!1)}).getUI().click(h)})})},e.fn.elfindercwd=function(t,n){return this.not(".elfinder-cwd").each(function(){var i=t.UA.Mobile,a="list"==t.viewType,r="select."+t.namespace,o="unselect."+t.namespace,s="disable."+t.namespace,l="enable."+t.namespace,d="class",c=t.res(d,"cwdfile"),u="."+c,p="ui-selected",h=t.res(d,"disabled"),f=t.res(d,"draggable"),m=t.res(d,"droppable"),g=t.res(d,"hover"),v=t.res(d,"adroppable"),b=c+"-tmp",y=t.options.loadTmbs>0?t.options.loadTmbs:5,w="",x=[],k=[],C=function(){for(var e="",n=t.options.uiOptions.cwd.listView.columns,i=0;i{"+n[i]+"}";return e},T={icon:'',row:' {marker}{name}
'+C()+" "},I=t.res("tpl","perms"),F=t.res("tpl","lock"),M=t.res("tpl","symlink"),P={id:function(e){return t.cwdHash2Id(e.hash)},name:function(e){return name=t.escape(e.name),!a&&(name=name.replace(/([_.])/g,"$1")),name},nametitle:function(e){return t.escape(e.name)},permsclass:function(e){return t.perms2class(e)},perm:function(e){return t.formatPermissions(e)},dirclass:function(e){return"directory"==e.mime?"directory":""},mime:function(e){return t.mime2class(e.mime)},size:function(e){return t.formatSize(e.size)},date:function(e){return t.formatDate(e)},kind:function(e){return t.mime2kind(e)},mode:function(e){return e.perm?t.formatFileMode(e.perm):""},modestr:function(e){return e.perm?t.formatFileMode(e.perm,"string"):""},modeoct:function(e){return e.perm?t.formatFileMode(e.perm,"octal"):""},modeboth:function(e){return e.perm?t.formatFileMode(e.perm,"both"):""},marker:function(e){return(e.alias||"symlink-broken"==e.mime?M:"")+(e.read&&e.write?"":I)+(e.locked?F:"")},tooltip:function(e){var n=t.formatDate(e)+(e.size>0?" ("+t.formatSize(e.size)+")":""),i="";return i=w&&e.path?t.escape(e.path.replace(/\/[^\/]*$/,"")):e.tooltip?t.escape(e.tooltip).replace(/\r/g,"
"):"",i?i+"
"+n:n}},S=function(e){return T[a?"row":"icon"].replace(/\{([a-z]+)\}/g,function(t,n){return P[n]?P[n](e):e[n]?e[n]:""})},z=!1,A=function(t,n){function i(e,t){return e[t+"All"]("[id]:not(."+h+"):not(.elfinder-cwd-parent):first")}var s,l,d,c,u,f=e.ui.keyCode,m=t==f.LEFT||t==f.UP,g=Z.find("[id]."+p);if(g.length)if(s=g.filter(m?":first":":last"),d=i(s,m?"prev":"next"),d.length)if(a||t==f.LEFT||t==f.RIGHT)l=d;else if(c=s.position().top,u=s.position().left,l=s,m){do l=l.prev("[id]");while(l.length&&!(l.position().topc&&l.position().left>=u));l.hasClass(h)&&(l=i(l,"prev")),l.length||(d=Z.find("[id]:not(."+h+"):last"),d.position().top>c&&(l=d))}else l=s;else l=Z.find("[id]:not(."+h+"):not(.elfinder-cwd-parent):"+(m?"last":"first"));l&&l.length&&!l.hasClass("elfinder-cwd-parent")&&(n?l=s.add(s[m?"prevUntil":"nextUntil"]("#"+l.attr("id"))).add(l):g.trigger(o),l.trigger(r),H(l.filter(m?":first":":last")),j())},D=[],O=function(n){e("#"+t.cwdHash2Id(n)).trigger(r)},U=function(){var n=t.cwd().hash;Z.find("[id]:not(."+p+"):not(.elfinder-cwd-parent)").trigger(r),D=e.map(t.files(),function(e){return e.phash==n?e.hash:null}),j()},E=function(){z=!1,D=[],Z.find("[id]."+p).trigger(o),j()},j=function(){t.trigger("select",{selected:D})},H=function(e){var t=e.position().top,n=e.outerHeight(!0),i=et.scrollTop(),a=et.innerHeight();t+n>i+a?et.scrollTop(parseInt(t+n-a)):i>t&&et.scrollTop(t)},R=[],_=function(e){for(var t=R.length;t--;)if(R[t].hash==e)return t;return-1},N="scroll."+t.namespace,q={filter:u,stop:j,delay:250,selected:function(t,n){e(n.selected).trigger(r)},unselected:function(t,n){e(n.unselected).trigger(o)}},L=function(){var n=function(){var o,s,l=[],d=!1,c=[],u={},h=R._last||Z.find("[id]:last"),f=!h.length,m=R._place||(a?Z.children("table").children("tbody"):Z);if(f&&(et._top=0),et._mousedown&&et._top!=et.scrollTop())return et._top=et.scrollTop(),setTimeout(function(){n()},50),void 0;if(delete R._timer,!R.length)return tt.hide(),et.off(N);for(;(!h.length||(o=h.position().top-(et.height()+et.scrollTop()+t.options.showThreshold))<=0)&&(s=R.splice(0,t.options.showFiles-(o||0)/(R._hpi||1))).length&&(l=e.map(s,function(e){return e.hash&&e.name?("directory"==e.mime&&(d=!0),e.tmb&&(1===e.tmb?c.push(e.hash):u[e.hash]=e.tmb),S(e)):null}),(f||!R.length)&&tt.hide(),m.append(l.join("")),h=Z.find("[id]:last"),f&&et.scrollTop(0),(f||!R._hpi)&&Y(m,s.length),!f););R._last=h,W(u),c.length&&B(c),d&&!i&&V(),D.length&&m.find("[id]:not(."+p+"):not(.elfinder-cwd-parent)").each(function(){var n=t.cwdId2Hash(this.id);-1!==e.inArray(n,D)&&e(this).trigger(r)})};R._timer&&clearTimeout(R._timer),!R._timer&&n(),R._timer=setTimeout(function(){n()},100)},$=e.extend({},t.droppable,{over:function(n,i){var a,r,o,s=e(this),l=i.helper,c=n.shiftKey||n.ctrlKey||n.metaKey;return n.stopPropagation(),l.data("dropover",l.data("dropover")+1),s.data("dropover",!0),l.data("namespace")!==t.namespace?(s.removeClass(v),!1):(s.hasClass(t.res(d,"cwdfile"))?(a=t.cwdId2Hash(s.attr("id")),s.data("dropover",a)):(a=t.cwd().hash,t.cwd().write&&s.data("dropover",a)),o=t.file(l.data("files")[0]).phash===a,s.data("dropover")===a?e.each(l.data("files"),function(e,t){return t===a||o&&!c&&!l.hasClass("elfinder-drag-helper-plus")?(s.removeClass(v),!1):void 0}):s.removeClass(v),l.data("locked")||o?r="elfinder-drag-helper-plus":(r="elfinder-drag-helper-move",c&&(r+=" elfinder-drag-helper-plus")),s.hasClass(v)&&l.addClass(r),setTimeout(function(){s.hasClass(v)&&l.addClass(r)},20),void 0)},out:function(t,n){var i=n.helper;t.stopPropagation(),i.removeClass("elfinder-drag-helper-move elfinder-drag-helper-plus").data("dropover",Math.max(i.data("dropover")-1,0)),e(this).removeData("dropover").removeClass(v)},deactivate:function(){e(this).removeData("dropover").removeClass(v)}}),V=function(){var e=Z.find(".directory:not(."+m+",.elfinder-na,.elfinder-ro)");t.isCommandEnabled("paste")&&e.droppable($),t.isCommandEnabled("upload")&&e.addClass("native-droppable")},W=function(n){var i,a=t.option("tmbUrl"),r=!0;return e.each(n,function(n,o){var s=e("#"+t.cwdHash2Id(n));s.length?function(t,n){e(" ").load(function(){t.find(".elfinder-cwd-icon").css("background","url('"+n+"') center center no-repeat")}).attr("src",n)}(s,t.tmbUrls._search?t.tmb(n):a+o):(r=!1,-1!=(i=_(n))&&(R[i].tmb=o))}),r},B=function(e){var n=[];return t.oldAPI?(t.request({data:{cmd:"tmb",current:t.cwd().hash},preventFail:!0}).done(function(e){W(e.images||[])&&e.tmb&&B()}),void 0):(n=n=e.splice(0,y),n.length&&t.request({data:{cmd:"tmb",targets:n},preventFail:!0}).done(function(t){W(t.images||[])&&B(e)}),void 0)},K=function(n){var r,o,s,l,d=a?Z.find("tbody"):Z,c=n.length,u=[],p={},h=!1,f=function(e){for(var n,i=Z.find("[id]:first");i.length;){if(n=t.file(t.cwdId2Hash(i.attr("id"))),!i.hasClass("elfinder-cwd-parent")&&n&&t.compare(e,n)<0)return i;i=i.next("[id]")}},m=function(e){var n,i=R.length;for(n=0;i>n;n++)if(t.compare(e,R[n])<0)return n;return i||-1};for(c&&et.removeClass("elfinder-cwd-wrapper-empty");c--;)r=n[c],o=r.hash,e("#"+t.cwdHash2Id(o)).length||((s=f(r))&&s.length?s.before(S(r)):(l=m(r))>=0?R.splice(l,0,r):d.append(S(r)),e("#"+t.cwdHash2Id(o)).length&&("directory"==r.mime?h=!0:r.tmb&&(1===r.tmb?u.push(o):p[o]=r.tmb)));Y(d),W(p),u.length&&B(u),h&&!i&&V()},J=function(n){var i,a,r,o=n.length;if(!t.cwd().hash&&"open"!==t.currentReqCmd)return e.each(k.reverse(),function(e,n){return t.files()[n]?(t.one(t.currentReqCmd,function(){t.exec("open",n)}),!1):void 0}),void 0;for(;o--;)if(i=n[o],(a=e("#"+t.cwdHash2Id(i))).length)try{a.remove()}catch(s){t.debug("error",s)}else-1!=(r=_(i))&&R.splice(r,1);Z.children().length<1&&(et.addClass("elfinder-cwd-wrapper-empty"),Z.hide(),setTimeout(function(){Z.show()},0))},G={name:t.i18n("name"),perm:t.i18n("perms"),date:t.i18n("modify"),size:t.i18n("size"),kind:t.i18n("kind"),modestr:t.i18n("mode"),modeoct:t.i18n("mode"),modeboth:t.i18n("mode")},X=function(){for(var n="",i="",a=t.options.uiOptions.cwd.listView.columns,r=e.extend({},G,t.options.uiOptions.cwd.listView.columnsCustomName),o=0;o'+n+"";
+return i},Y=function(e,t){var n;e=e||(a?Z.find("tbody"):Z),R.length>0&&(e.css({height:"auto"}),n=e.height(),t&&(R._hpi=n/t),tt.css({top:R._hpi*R.length+n+"px"}).show())},Q=function(i,r){var o=t.cwd().hash;k=t.parents(o),E();try{Z.empty()}catch(s){Z.html("")}if(Z.removeClass("elfinder-cwd-view-icons elfinder-cwd-view-list").addClass("elfinder-cwd-view-"+(a?"list":"icons")),Z.css("height","auto"),tt.hide(),et[a?"addClass":"removeClass"]("elfinder-cwd-wrapper-list"),et._padding=parseInt(et.css("padding-top"))+parseInt(et.css("padding-bottom")),a&&Z.html('"),R=e.map(i,function(e){return r||e.phash==o?e:null}),R=t.sortFiles(R),et[!r&&R.length<1?"addClass":"removeClass"]("elfinder-cwd-wrapper-empty").on(N,L).trigger(N),o=t.cwd().phash,n.oldSchool&&o&&!w){var l=e.extend(!0,{},t.file(o),{name:"..",mime:"directory"});l=e(S(l)).addClass("elfinder-cwd-parent").bind("mousedown click mouseup touchstart touchmove touchend dblclick mouseenter",function(e){e.preventDefault(),e.stopPropagation()}).dblclick(function(){t.exec("open",t.cwdId2Hash(this.id))}),(a?Z.find("tbody"):Z).prepend(l)}r||!t.cwd().write?et.removeClass("native-droppable").droppable("disable"):(et[t.isCommandEnabled("upload")?"addClass":"removeClass"]("native-droppable"),et.droppable("enable"))},Z=e(this).addClass("ui-helper-clearfix elfinder-cwd").attr("unselectable","on").on("click."+t.namespace,u,function(n){var i,a=this.id?e(this):e(this).parents("[id]:first"),s=a.prevAll("."+p+":first"),l=a.nextAll("."+p+":first"),d=s.length,c=l.length;if(Z.data("longtap"))return n.stopPropagation(),void 0;if(n.stopImmediatePropagation(),n.shiftKey&&(d||c))i=d?a.prevUntil("#"+s.attr("id")):a.nextUntil("#"+l.attr("id")),i.add(a).trigger(r);else if(n.ctrlKey||n.metaKey)a.trigger(a.hasClass(p)?o:r);else{if(a.data("touching")&&a.hasClass(p))return a.data("touching",null),t.dblclick({file:t.cwdId2Hash(this.id)}),E(),void 0;E(),a.trigger(r)}j()}).on("dblclick."+t.namespace,u,function(){t.dblclick({file:t.cwdId2Hash(this.id)})}).on("touchstart."+t.namespace,u,function(n){if(n.stopPropagation(),"INPUT"!=n.target.nodeName&&"TEXTAREA"!=n.target.nodeName){var i=this.id?e(this):e(this).parents("[id]:first"),a=i.prevAll("."+p+":first").length+i.nextAll("."+p+":first").length;Z.data("longtap",null),i.addClass(g).data("touching",!0).data("tmlongtap",setTimeout(function(){Z.data("longtap",!0),i.hasClass(p)&&a>0?(i.trigger(o),j()):("TD"!=n.target.nodeName||t.selected().length>0)&&(i.trigger(r),j(),t.trigger("contextmenu",{type:"files",targets:t.selected(),x:n.originalEvent.touches[0].pageX,y:n.originalEvent.touches[0].pageY}))},500))}}).on("touchmove."+t.namespace+" touchend."+t.namespace,u,function(t){if(t.stopPropagation(),"INPUT"!=t.target.nodeName&&"TEXTAREA"!=t.target.nodeName){var n=this.id?e(this):e(this).parents("[id]:first");clearTimeout(n.data("tmlongtap")),"touchmove"==t.type&&n.removeClass(g)}}).on("mouseenter."+t.namespace,u,function(){var n=e(this),o=null,s=a?n:n.children("div.elfinder-cwd-file-wrapper,div.elfinder-cwd-filename");i||n.hasClass(b)||s.hasClass(f+" "+h)||s.on("mousedown",function(n){n.shiftKey&&!t.UA.IE&&Z.data("selectable")&&(Z.selectable("destroy").data("selectable",!1),setTimeout(function(){Z.selectable(q).data("selectable",!0)},10)),s.draggable("option","disabled",n.shiftKey),n.shiftKey?s.attr("draggable","true"):s.attr("draggable","false").draggable("option","cursorAt",{left:50-parseInt(e(n.currentTarget).css("margin-left")),top:47})}).on("dragstart",function(n){var i=n.dataTransfer||n.originalEvent.dataTransfer||null;if(o=null,i&&!t.UA.IE){var a,s=this.id?e(this):e(this).parents("[id]:first"),l=e(""),d="",c=null,u=null,p=[],h=function(n){var i,a=n.mime;return i='
',n.tmb&&1!==n.tmb&&(i=e(i).css("background","url('"+t.option("tmbUrl")+n.tmb+"') center center no-repeat").get(0).outerHTML),i},f=[];if(s.trigger(r),j(),e.each(D,function(n,i){var a=t.file(i),r=a.url;if(a&&"directory"!==a.mime){if(r){if("1"==r)return f.push(i),!0}else r=t.url(a.hash);r&&(r=t.convAbsUrl(r),p.push(i),e("").attr("href",r).text(r).appendTo(l),d+=r+"\n",c||(c=a.mime+":"+a.name+":"+r),u||(u=r+"\n"+a.name))}}),f.length)return e.each(f,function(e,n){var i=t.file(n);i.url="",t.request({data:{cmd:"url",target:n},notify:{type:"url",cnt:1},preventDefault:!0}).always(function(e){i.url=e.url?e.url:"1"})}),!1;if(!d)return!1;i.setDragImage&&(o=e('
').append(h(t.file(p[0]))).appendTo(e(document.body)),(a=p.length)>1&&o.append(h(t.file(p[a-1]))+''+a+" "),i.setDragImage(o.get(0),50,47)),i.effectAllowed="copyLink",i.setData("DownloadURL",c),i.setData("text/x-moz-url",u),i.setData("text/uri-list",d),i.setData("text/plain",d),i.setData("text/html",l.html()),i.setData("elfinderfrom",window.location.href+t.cwd().hash),i.setData("elfinderfrom:"+i.getData("elfinderfrom"),"")}}).on("dragend",function(){E(),o&&o.remove()}).draggable(t.draggable)}).on(r,u,function(){var n=e(this),i=t.cwdId2Hash(n.attr("id"));z||n.hasClass(h)||(n.addClass(p).children().addClass(g),-1===e.inArray(i,D)&&D.push(i))}).on(o,u,function(){var n,i=e(this),a=t.cwdId2Hash(i.attr("id"));z||(e(this).removeClass(p).children().removeClass(g),n=e.inArray(a,D),-1!==n&&D.splice(n,1))}).on(s,u,function(){var t=e(this).removeClass(g+" "+p).addClass(h),n=t.children(),i=a?t:n;n.removeClass(g+" "+p),t.hasClass(m)&&t.droppable("disable"),i.hasClass(f)&&i.draggable("disable")}).on(l,u,function(){var t=e(this).removeClass(h),n=a?t:t.children();t.hasClass(m)&&t.droppable("enable"),n.hasClass(f)&&n.draggable("enable")}).on("scrolltoview",u,function(){H(e(this))}).on("mouseenter."+t.namespace+" mouseleave."+t.namespace,u,function(n){t.trigger("hover",{hash:t.cwdId2Hash(e(this).attr("id")),type:n.type}),e(this).toggleClass(g,"mouseenter"==n.type)}).on("contextmenu."+t.namespace,function(n){var i=e(n.target).closest("."+c);i.length&&("TD"!=n.target.nodeName||e.inArray(t.cwdId2Hash(i.get(0).id),t.selected())>-1)&&(n.stopPropagation(),n.preventDefault(),i.hasClass(h)||i.data("touching")||(i.hasClass(p)||(E(),i.trigger(r),j()),t.trigger("contextmenu",{type:"files",targets:t.selected(),x:n.pageX,y:n.pageY})))}).on("click."+t.namespace,function(e){return Z.data("longtap")?(e.stopPropagation(),void 0):(!e.shiftKey&&!e.ctrlKey&&!e.metaKey&&E(),void 0)}).selectable(q).data("selectable",!0).on("create."+t.namespace,function(t,n){var i=a?Z.find("tbody"):Z,r=i.find(".elfinder-cwd-parent"),n=e(S(n)).addClass(b);E(),r.length?r.after(n):i.prepend(n),Z.parent().scrollTop(0)}).on("unselectall",E).on("selectfile",function(n,i){e("#"+t.cwdHash2Id(i)).trigger(r),j()}),et=e('
').droppable(e.extend({},$,{autoDisable:!1})).on("contextmenu",function(e){e.preventDefault(),t.trigger("contextmenu",{type:"cwd",targets:[t.cwd().hash],x:e.pageX,y:e.pageY})}).on("touchstart."+t.namespace,function(n){var i=e(this);Z.data("longtap",null),i.data("touching",!0),i.data("tmlongtap",setTimeout(function(){Z.data("longtap",!0),t.trigger("contextmenu",{type:"cwd",targets:[t.cwd().hash],x:n.originalEvent.touches[0].pageX,y:n.originalEvent.touches[0].pageY})},500))}).on("touchmove."+t.namespace+" touchend."+t.namespace,function(){clearTimeout(e(this).data("tmlongtap"))}).on("mousedown",function(){et._mousedown=!0}).on("mouseup",function(){et._mousedown=!1}),tt=e("
").css({position:"absolute",width:"1px",height:"1px"}).hide(),nt=null,it=function(t){var n=function(){var t=0;et.siblings("div.elfinder-panel:visible").each(function(){t+=e(this).outerHeight(!0)}),et.height(rt.height()-t-et._padding)};t&&n(),nt&&clearTimeout(nt),nt=setTimeout(function(){!t&&n();var e,i;Z.css("height","auto"),e=et[0].clientHeight-parseInt(et.css("padding-top"))-parseInt(et.css("padding-bottom")),i=Z.outerHeight(!0),e>i&&Z.height(e)},20)},at=e(this).parent().resize(it),rt=at.children(".elfinder-workzone").append(et.append(this).append(tt));e("body").on("touchstart touchmove touchend",function(){}),t.one("init",function(){var e,n=document.createElement("style");document.head.appendChild(n),e=n.sheet,e.insertRule('.elfinder-cwd-wrapper-empty .elfinder-cwd:after{ content:"'+t.i18n("emptyFolder")+'" }',0),e.insertRule('.ui-droppable.elfinder-cwd-wrapper-empty .elfinder-cwd:after{ content:"'+t.i18n("emptyFolder"+(i?"LTap":"Drop"))+'" }',1),e.insertRule('.ui-droppable.elfinder-cwd-wrapper-empty.ui-droppable-disabled .elfinder-cwd:after{ content:"'+t.i18n("emptyFolder")+'" }',2)}).bind("open",function(e){Q(e.data.files),it()}).bind("search",function(e){x=e.data.files,Q(x,!0),et.addClass("elfinder-search-result"),t.autoSync("stop"),it()}).bind("searchend",function(e){x=[],w&&(w="",e.data&&e.data.noupdate||Q(t.files())),et.removeClass("elfinder-search-result"),t.autoSync(),it()}).bind("searchstart",function(e){w=e.data.query}).bind("sortchange",function(){Q(w?x:t.files(),!!w)}).bind("viewchange",function(){var n=t.selected(),i="list"==t.storage("view");i!=a&&(a=i,Q(w?x:t.files(),!!w),e.each(n,function(e,t){O(t)}),j()),it()}).bind("resize",function(){var e=a?Z.find("tbody"):Z;it(!0),Y(e,e.find("[id]").length)}).bind("add",function(){it()}).add(function(n){var i=t.cwd().hash,a=w?e.map(n.data.added||[],function(e){return-1===e.name.indexOf(w)?null:e}):e.map(n.data.added||[],function(e){return e.phash==i?e:null});K(a)}).change(function(n){var i=t.cwd().hash,a=t.selected();w?e.each(n.data.changed||[],function(t,n){J([n.hash]),-1!==n.name.indexOf(w)&&(K([n]),-1!==e.inArray(n.hash,a)&&O(n.hash))}):e.each(e.map(n.data.changed||[],function(e){return e.phash==i?e:null}),function(t,n){J([n.hash]),K([n]),-1!==e.inArray(n.hash,a)&&O(n.hash)}),j()}).remove(function(e){J(e.data.removed||[]),j()}).dragstart(function(t){var n=e(t.data.target),i=t.data.originalEvent;n.hasClass(u.substr(1))&&(n.hasClass(p)||(!(i.ctrlKey||i.metaKey||i.shiftKey)&&E(),n.trigger(r),j())),Z.selectable("disable").removeClass(h),z=!0}).dragstop(function(){Z.selectable("enable"),z=!1}).bind("lockfiles unlockfiles selectfiles unselectfiles",function(n){var i,a,d={lockfiles:s,unlockfiles:l,selectfiles:r,unselectfiles:o},c=d[n.type],u=n.data.files||[],p=u.length,h=n.data.helper||e();if(p>0&&(i=t.parents(u[0])),!h.data("locked")){for(;p--;)e("#"+t.cwdHash2Id(u[p])).trigger(c);j()}et.data("dropover")&&-1!==i.indexOf(et.data("dropover"))&&(a="lockfiles"!==n.type,h.toggleClass("elfinder-drag-helper-plus",a),et.toggleClass(v,a))}).bind("mkdir mkfile duplicate upload rename archive extract paste multiupload",function(n){if("upload"!=n.type||!n.data._multiupload){var i=t.cwd().hash;E(),e.each(n.data.added||[],function(e,t){t&&t.phash==i&&O(t.hash)}),j()}}).shortcut({pattern:"ctrl+a",description:"selectall",callback:U}).shortcut({pattern:"left right up down shift+left shift+right shift+up shift+down",description:"selectfiles",type:"keydown",callback:function(e){A(e.keyCode,e.shiftKey)}}).shortcut({pattern:"home",description:"selectffile",callback:function(){E(),H(Z.find("[id]:first").trigger(r)),j()}}).shortcut({pattern:"end",description:"selectlfile",callback:function(){E(),H(Z.find("[id]:last").trigger(r)),j()}})}),this},e.fn.elfinderdialog=function(t){var n;return"string"==typeof t&&(n=this.closest(".ui-dialog")).length&&("open"==t?"none"==n.css("display")&&n.fadeIn(120,function(){n.trigger("open")}):"close"==t?"none"!=n.css("display")&&n.hide().trigger("close"):"destroy"==t?n.hide().remove():"toTop"==t?n.trigger("totop"):"posInit"==t&&n.trigger("posinit")),t=e.extend({},e.fn.elfinderdialog.defaults,t),this.filter(":not(.ui-dialog-content)").each(function(){var n=e(this).addClass("ui-dialog-content ui-widget-content"),i=n.parent(),a="elfinder-dialog-active",r="elfinder-dialog",o="elfinder-dialog-notify",s="ui-state-hover",l=parseInt(1e6*Math.random()),d=i.children(".elfinder-overlay"),c=e('
'),u=e('
').append(c),p=-1!=window.navigator.platform.indexOf("Win"),h=e('
').hide().append(n).appendTo(i).draggable({handle:".ui-dialog-titlebar",containment:"document",stop:function(){h.css({height:t.height})}}).css({width:t.width,height:t.height}).mousedown(function(t){t.stopPropagation(),e(document).mousedown(),h.hasClass(a)||(i.find("."+r+":visible").removeClass(a),h.addClass(a).zIndex(f()+1))}).on("open",function(){var a=e(this),s=a.outerWidth()>i.width()-10?i.width()-10:null;s&&a.css({width:s,left:"5px"}),h.trigger("totop"),"function"==typeof t.open&&e.proxy(t.open,n[0])(),h.hasClass(o)||i.find("."+r+":visible").not("."+o).each(function(){var t=e(this),n=parseInt(t.css("top")),i=parseInt(t.css("left")),a=parseInt(h.css("top")),r=parseInt(h.css("left"));t[0]==h[0]||n!=a&&i!=r||h.css({top:n+(s?15:10)+"px",left:(s?5:i+10)+"px"})})}).on("close",function(){var a=i.find(".elfinder-dialog:visible"),r=f();e(this).data("modal")&&d.elfinderoverlay("hide"),a.length?a.each(function(){var t=e(this);return t.zIndex()>=r?(t.trigger("totop"),!1):void 0}):setTimeout(function(){i.mousedown().click()},10),"function"==typeof t.close?e.proxy(t.close,n[0])():t.destroyOnClose&&h.hide().remove()}).on("totop",function(){e(this).mousedown().find(".ui-button:"+(p?"first":"last")).focus().end().find(":text:first").focus(),e(this).data("modal")&&d.is(":hidden")&&d.elfinderoverlay("show"),d.zIndex(e(this).zIndex())}).on("posinit",function(){var e=t.position;e||(e={top:Math.max(0,parseInt((i.height()-h.outerHeight())/2-42))+"px",left:Math.max(0,parseInt((i.width()-h.outerWidth())/2))+"px"}),h.css(e)}).data({modal:t.modal}),f=function(){var t=i.zIndex()+10;return i.find("."+r+":visible").each(function(){var n;this!=h[0]&&(n=e(this).zIndex(),n>t&&(t=n))}),t};h.trigger("posinit"),t.closeOnEscape&&e(document).on("keyup."+l,function(t){t.keyCode==e.ui.keyCode.ESCAPE&&h.hasClass(a)&&(n.elfinderdialog("close"),e(document).off("keyup."+l))}),h.prepend(e('").prepend(e(' ').mousedown(function(e){e.preventDefault(),n.elfinderdialog("close")}))),e.each(t.buttons,function(i,a){var r=e(''+i+" ").click(e.proxy(a,n[0])).hover(function(n){t.btnHoverFocus?e(this)["mouseenter"==n.type?"focus":"blur"]():e(this).toggleClass(s,"mouseenter"==n.type)}).focus(function(){e(this).addClass(s)}).blur(function(){e(this).removeClass(s)}).keydown(function(t){var n;t.keyCode==e.ui.keyCode.ENTER?e(this).click():t.keyCode==e.ui.keyCode.TAB||t.keyCode==e.ui.keyCode.RIGHT?(t.preventDefault(),n=e(this).next(".ui-button"),n.length?n.focus():e(this).parent().children(".ui-button:first").focus()):t.keyCode==e.ui.keyCode.LEFT&&(t.preventDefault(),n=e(this).prev(".ui-button"),n.length?n.focus():e(this).parent().children(".ui-button:last").focus())});p?c.append(r):c.prepend(r)}),c.children().length&&h.append(u),t.resizable&&e.fn.resizable&&h.resizable({minWidth:t.minWidth,minHeight:t.minHeight,alsoResize:this}),"function"==typeof t.create&&e.proxy(t.create,this)(),t.autoOpen&&n.elfinderdialog("open")}),this},e.fn.elfinderdialog.defaults={cssClass:"",title:"",modal:!1,resizable:!0,autoOpen:!0,closeOnEscape:!0,destroyOnClose:!1,buttons:{},btnHoverFocus:!0,position:null,width:320,height:"auto",minWidth:200,minHeight:110},e.fn.elfindernavbar=function(t,n){return this.not(".elfinder-navbar").each(function(){var i,a=e(this).addClass("ui-state-default elfinder-navbar"),r=a.parent().resize(function(){a.height(o.height()-s)}),o=r.children(".elfinder-workzone").append(a),s=a.outerHeight()-a.height(),l="ltr"==t.direction;if(e.fn.resizable){if(i=a.resizable({handles:l?"e":"w",minWidth:n.minWidth||150,maxWidth:n.maxWidth||500}).on("resize scroll",function(){var e=t.UA.Opera&&a.scrollLeft()?20:2;i.css({top:parseInt(a.scrollTop())+"px",left:l?"auto":parseInt(a.scrollLeft()+e),right:l?-1*parseInt(a.scrollLeft()-e):"auto"})}).find(".ui-resizable-handle").zIndex(a.zIndex()+10),t.UA.Touch){var d=function(){i.data("closed")?(i.data("closed",!1).css({backgroundColor:"transparent"}),a.css({width:i.data("width")}).trigger("resize")):(i.data("closed",!0).css({backgroundColor:"inherit"}),a.css({width:8})),i.data({startX:null,endX:null})};i.data({closed:!1,width:a.width()}).on("touchstart",function(e){i.data("startX",e.originalEvent.touches[0].pageX)}).on("touchmove",function(e){var t=e.originalEvent.touches[0].pageX,n=i.data("startX"),a=l?n&&t>n:n>t,r=l?n>t:n&&t>n;(a||r)&&d()}).on("touchend",function(){i.data("startX")&&d()}),t.UA.Mobile&&(i.data("defWidth",a.width()),e(window).on("resize",function(){var e=a.parent().width()/2;i.data("defWidth")>e?a.width(e):a.width(i.data("defWidth")),i.data("width",a.width())}))}t.one("open",function(){setTimeout(function(){a.trigger("resize")},150)})}}),this},e.fn.elfinderoverlay=function(t){if(this.filter(":not(.elfinder-overlay)").each(function(){t=e.extend({},t),e(this).addClass("ui-widget-overlay elfinder-overlay").hide().mousedown(function(e){e.preventDefault(),e.stopPropagation()}).data({cnt:0,show:"function"==typeof t.show?t.show:function(){},hide:"function"==typeof t.hide?t.hide:function(){}})}),"show"==t){var n=this.eq(0),i=n.data("cnt")+1,a=n.data("show");n.data("cnt",i),n.is(":hidden")&&(n.zIndex(n.parent().zIndex()+1),n.show(),a())}if("hide"==t){var n=this.eq(0),i=n.data("cnt")-1,r=n.data("hide");n.data("cnt",i),0==i&&n.is(":visible")&&(n.hide(),r())}return this},e.fn.elfinderpanel=function(t){return this.each(function(){var n=e(this).addClass("elfinder-panel ui-state-default ui-corner-all"),i="margin-"+("ltr"==t.direction?"left":"right");t.one("load",function(){var e=t.getUI("navbar");n.css(i,parseInt(e.outerWidth(!0))),e.on("resize",function(){n.is(":visible")&&n.css(i,parseInt(e.outerWidth(!0)))})})})},e.fn.elfinderpath=function(t){return this.each(function(){var n="",i="",a=[],r=e(this).addClass("elfinder-path").html(" ").on("click","a",function(i){var r=e(this).attr("href").substr(5);i.preventDefault(),r!=t.cwd().hash&&(n?t.exec("search",n,{target:r,mime:a.join(" ")}):t.exec("open",r))}).prependTo(t.getUI("statusbar").show());t.bind("open searchend parents",function(){var o=[];n="",i="",a=[],e.each(t.parents(t.cwd().hash),function(e,n){o.push(''+t.escape(t.file(n).name)+" ")}),r.html(o.join(t.option("separator")))}).bind("searchstart",function(e){e.data&&(n=e.data.query||"",i=e.data.target||"",a=e.data.mimes||[])}).bind("search",function(){var n=[],a="";i?(e.each(t.parents(i),function(e,i){n.push(''+t.escape(t.file(i).name)+" ")}),a=n.join(t.option("separator"))):a=t.i18n("btnAll"),r.html(t.i18n("searcresult")+": "+a)})})},e.fn.elfinderplaces=function(t,n){return this.each(function(){var i={},a="class",r=t.res(a,"navdir"),o=t.res(a,"navcollapse"),s=t.res(a,"navexpand"),l=t.res(a,"hover"),d=t.res(a,"treeroot"),c=t.res(a,"adroppable"),u=t.res("tpl","placedir"),p=t.res("tpl","perms"),h=e(t.res("tpl","navspinner")),f="places"+(n.suffix?n.suffix:""),m=function(e){return e.substr(6)},g=function(e){return"place-"+e},v=function(){var n=[],a=[];n=e.map(I.children().find("[id]"),function(e){return m(e.id)}),e.each(n.reverse(),function(e,t){a.push(t+"#"+i[t].name)}),t.storage(f,a.join(","))},b=function(n,i){return e(u.replace(/\{id\}/,g(n?n.hash:i)).replace(/\{name\}/,t.escape(n?n.name:i)).replace(/\{cssclass\}/,n?(t.UA.Touch?"elfinder-touch ":"")+t.perms2class(n):"").replace(/\{permissions\}/,!n||n.read&&n.write?"":p).replace(/\{title\}/,n&&n.path?t.escape(n.path):"").replace(/\{symlink\}/,"").replace(/\{style\}/,""))},y=function(e){var n,a;return"directory"!==e.mime?!1:(a=e.hash,t.files().hasOwnProperty(a)||t.trigger("tree",{tree:[e]}),n=b(e,a),e.notfound&&n.addClass("ui-state-disabled"),i[a]=e,I.prepend(n),T.addClass(o),!0)},w=function(t){var n,a=null;return i[t]&&(delete i[t],n=e("#"+g(t)),n.length&&(a=n.text(),n.parent().remove(),!I.children().length&&T.removeClass(o+" "+s))),a},x=function(t,n){var a=t.hash,r=e("#"+g(n||a)),o=b(t,a);return r.length>0?(t.notfound&&o.addClass("ui-state-disabled"),r.parent().replaceWith(o),i[a]=t,!0):!1},k=function(){e.each(i,function(n,i){var a=t.file(n)||i,o=b(a,n),s=null;return a||o.hide(),I.children().length&&(e.each(I.children(),function(){var t=e(this);return a.name.localeCompare(t.children("."+r).text())<0?s=!o.insertBefore(t):void 0}),null!==s)?!0:(!e("#"+g(n)).length&&I.append(o),void 0)}),v()},C=b({hash:"root-"+t.namespace,name:t.i18n(n.name,"places"),read:!0,write:!0}),T=C.children("."+r).addClass(d).click(function(e){e.stopPropagation(),T.hasClass(o)&&(F.toggleClass(s),I.slideToggle(),t.storage("placesState",F.hasClass(s)?1:0))}).append(e(' ').on("click",function(e){e.stopPropagation(),I.empty(),k()})),I=C.children("."+t.res(a,"navsubtree")).sortable({appendTo:"body",revert:!1,helper:function(n){var i=e(n.target).parent();return i.children().removeClass("ui-state-hover"),e('
').append(e('
').show().append(i.clone()))},stop:function(t,n){var i=e(n.item[0]),a=F.offset().top,r=F.offset().left,o=F.width(),s=F.height(),l=t.pageX,d=t.pageY;l>r&&r+o>l&&d>a&&d+s>d||(w(m(i.children(":first").attr("id"))),v())},update:function(){v()}}),F=e(this).addClass(t.res(a,"tree")+" elfinder-places ui-corner-all").hide().append(C).appendTo(t.getUI("navbar")).on("mouseenter mouseleave","."+r,function(t){e(this).toggleClass("ui-state-hover","mouseenter"==t.type)}).on("click","."+r,function(n){var i=e(this);return i.data("longtap")?(n.stopPropagation(),void 0):(t.exec("open",i.attr("id").substr(6)),void 0)}).on("contextmenu","."+r+":not(."+d+")",function(n){var i=e(this).attr("id").substr(6);n.preventDefault(),t.trigger("contextmenu",{raw:[{label:t.i18n("rmFromPlaces"),icon:"rm",callback:function(){w(i),v()}}],x:n.pageX,y:n.pageY})}).droppable({tolerance:"pointer",accept:".elfinder-cwd-file-wrapper,.elfinder-tree-dir,.elfinder-cwd-file",hoverClass:t.res("class","adroppable"),over:function(n,a){var r=a.helper,o=e.map(r.data("files"),function(e){return"directory"!==t.file(e).mime||i[e]?null:e});n.stopPropagation(),r.data("dropover",r.data("dropover")+1),o.length>0?r.addClass("elfinder-drag-helper-plus"):e(this).removeClass(c),t.trigger("unlockfiles",{files:r.data("files"),helper:r})},out:function(n,i){var a=i.helper;n.stopPropagation(),a.removeClass("elfinder-drag-helper-move elfinder-drag-helper-plus").data("dropover",Math.max(a.data("dropover")-1,0)),e(this).removeData("dropover").removeClass(c),t.trigger("unlockfiles",{files:a.data("files"),helper:a})},drop:function(n,a){var r=a.helper,o=!0;e.each(r.data("files"),function(e,n){var a=t.file(n);a&&"directory"==a.mime&&!i[a.hash]?y(a):o=!1}),v(),o&&r.hide()}}).on("touchstart","."+r+":not(."+d+")",function(n){var i=e(this).attr("id").substr(6),a=e(this).addClass(l).data("longtap",null).data("tmlongtap",setTimeout(function(){a.data("longtap",!0),t.trigger("contextmenu",{raw:[{label:t.i18n("rmFromPlaces"),icon:"rm",callback:function(){w(i),v()}}],x:n.originalEvent.touches[0].pageX,y:n.originalEvent.touches[0].pageY})},500))}).on("touchmove touchend","."+r+":not(."+d+")",function(t){clearTimeout(e(this).data("tmlongtap")),"touchmove"==t.type&&e(this).removeClass(l)});e(this).on("regist",function(t,n){var a=!1;e.each(n,function(e,t){t&&"directory"==t.mime&&!i[t.hash]&&y(t)&&(a=!0)}),a&&v()}),t.one("load",function(){var n,a;t.oldAPI||(F.show().parent().show(),i={},n=e.map((t.storage(f)||"").split(","),function(e){return e||null}),e.each(n,function(e,t){var n=t.split("#");i[n[0]]=n[1]?n[1]:{hash:n[0],name:n[0]}}),a=Object.keys(i),a.length&&(T.prepend(h),t.request({data:{cmd:"info",targets:a},preventDefault:!0}).done(function(n){var a={};e.each(n.files,function(e,t){var n=t.hash;a[n]=t}),e.each(i,function(e,t){y(a[e]||{hash:e,name:t,mime:"directory",notfound:!0})}),t.storage("placesState")>0&&T.click()}).always(function(){h.remove()})),t.change(function(t){var n=!1;e.each(t.data.changed,function(e,t){i[t.hash]&&("directory"!==t.mime?w(t.hash)&&(n=!0):x(t)&&(n=!0))}),n&&v()}).bind("rename",function(t){var n=!1;t.data.removed&&e.each(t.data.removed,function(e,i){t.data.added[e]&&x(t.data.added[e],i)&&(n=!0)}),n&&v()}).bind("rm paste",function(t){var n=[],i=!1;t.data.removed&&e.each(t.data.removed,function(e,t){var i=w(t);i&&n.push(i)}),n.length&&(i=!0),t.data.added&&n.length&&e.each(t.data.added,function(t,i){1!==e.inArray(i.name,n)&&"directory"==i.mime&&y(i)}),i&&v()}).bind("sync",function(){var n=Object.keys(i);n.length&&(T.prepend(h),t.request({data:{cmd:"info",targets:n},preventDefault:!0}).done(function(n){var a={},r=!1,o=t.cwd().hash;e.each(n.files||[],function(e,n){var i=n.hash;a[i]=n,t.files().hasOwnProperty(n.hash)||t.trigger("tree",{tree:[n]})}),e.each(i,function(e,t){!t.notfound!=!!a[e]&&(t.phash===o||a[e]&&"directory"!==a[e].mime?w(e)&&(r=!0):x(a[e]||{hash:e,name:t.name,mime:"directory",notfound:!0})&&(r=!0))}),r&&v()}).always(function(){h.remove()}))}))})})},e.fn.elfindersearchbutton=function(t){return this.each(function(){var n=!1,i=t.fm,a=function(e){return i.namespace+e},r=i.getUI("toolbar"),o=i.res("class","searchbtn"),s=e(this).hide().addClass("ui-widget-content elfinder-button "+o),l=function(){u.slideUp();var r=e.trim(c.val()),o=!e("#"+a("SearchFromAll")).prop("checked"),s=e("#"+a("SearchMime")).prop("checked");o&&(o=e("#"+a("SearchFromVol")).prop("checked")?i.root(i.cwd().hash):i.cwd().hash),s&&(s=r,r="."),r?t.exec(r,o,s).done(function(){n=!0,c.focus()}):i.trigger("searchend")},d=function(){u.slideUp(),c.val(""),n&&(n=!1,i.trigger("searchend"))},c=e(' ').focus(function(){u.slideDown()}).blur(function(){u.data("infocus")?u.data("infocus",!1):u.slideUp()}).appendTo(s).keypress(function(e){e.stopPropagation()}).keydown(function(e){e.stopPropagation(),13==e.keyCode&&l(),27==e.keyCode&&(e.preventDefault(),d())}),u=e('').append(e('
').append(e(''+i.i18n("btnCwd")+" ")).append(e(''+i.i18n("btnVolume")+" ")).append(e(''+i.i18n("btnAll")+" "))).append(e('
').append(e(''+i.i18n("btnFileName")+" ")).append(e(''+i.i18n("btnMime")+" "))).hide().zIndex(12+s.zIndex()).css("overflow","hidden").appendTo(s);e(' ').appendTo(s).click(l),e(' ').appendTo(s).click(d),e(function(){u.find("div.buttonset").buttonset(),e("#"+a("SearchFromAll")).next("label").attr("title",i.i18n("searchTarget",i.i18n("btnAll"))),e("#"+a("SearchMime")).next("label").attr("title",i.i18n("searchMime")),u.find("input").on("mousedown",function(){u.data("infocus",!0)}).on("click",function(){e.trim(c.val())&&l()})}),r.on("load",function(){var e=s.parent();if(e.length){if(r.children("."+o).remove(),r.prepend(s.show()),e.remove(),i.UA.ltIE7){var t=s.children("ltr"==i.direction?".ui-icon-close":".ui-icon-search");t.css({right:"",left:parseInt(s.width())-t.outerWidth(!0)})}i.resize()}}),i.select(function(){c.blur()}).bind("searchend",function(){c.val("")}).bind("open parents",function(){var t=[],n=i.file(i.root(i.cwd().hash));n&&(e.each(i.parents(i.cwd().hash),function(e,n){t.push(i.file(n).name)}),e("#"+a("SearchFromCwd")).next("label").attr("title",i.i18n("searchTarget",t.join(i.option("separator")))),e("#"+a("SearchFromVol")).next("label").attr("title",i.i18n("searchTarget",n.name)))}).shortcut({pattern:"ctrl+f f3",description:t.title,callback:function(){c.select().focus()}})})},e.fn.elfindersortbutton=function(t){return this.each(function(){var n=t.fm,i=t.name,a="class",r=n.res(a,"disabled"),o=n.res(a,"hover"),s="elfinder-button-menu-item",l=s+"-selected",d=l+"-asc",c=l+"-desc",u=e(this).addClass("ui-state-default elfinder-button elfinder-menubutton elfiner-button-"+i).attr("title",t.title).append(' ').hover(function(){!u.hasClass(r)&&u.toggleClass(o)}).click(function(e){u.hasClass(r)||(e.stopPropagation(),p.is(":hidden")&&t.fm.getUI().click(),p.slideToggle(100))}),p=e('').hide().appendTo(u).zIndex(12+u.zIndex()).on("mouseenter mouseleave","."+s,function(){e(this).toggleClass(o)}).on("click","."+s,function(e){e.preventDefault(),e.stopPropagation(),f()}),h=function(){p.children(":not(:last)").removeClass(l+" "+d+" "+c).filter('[rel="'+n.sortType+'"]').addClass(l+" "+("asc"==n.sortOrder?d:c)),p.children(":last").toggleClass(l,n.sortStickFolders)},f=function(){p.hide()};e.each(n.sortRules,function(t){p.append(e(' '+n.i18n("sort"+t)+"
").data("type",t))}),p.children().click(function(){var i=e(this).attr("rel");t.exec([],{type:i,order:i==n.sortType?"asc"==n.sortOrder?"desc":"asc":n.sortOrder,stick:n.sortStickFolders})}),e(' '+n.i18n("sortFoldersFirst")+"
").appendTo(p).click(function(){t.exec([],{type:n.sortType,order:n.sortOrder,stick:!n.sortStickFolders})}),n.bind("disable select",f).getUI().click(f),n.bind("sortchange",h),p.children().length>1?t.change(function(){u.toggleClass(r,t.disabled()),h()}).change():u.addClass(r)})},e.fn.elfinderstat=function(t){return this.each(function(){var n=e(this).addClass("elfinder-stat-size"),i=e('
').on("click","a",function(n){var i=e(this).data("hash");n.preventDefault(),t.exec("opendir",[i])}),a=t.i18n("size").toLowerCase(),r=t.i18n("items").toLowerCase(),o=t.i18n("selected"),s=function(i,o){var s=0,l=0;e.each(i,function(e,t){o&&t.phash!=o||(s++,l+=parseInt(t.size)||0)}),n.html(r+": "+s+", "+a+": "+t.formatSize(l))},l=!1;t.getUI("statusbar").prepend(n).append(i).show(),t.bind("open reload add remove change searchend",function(){s(t.files(),t.cwd().hash)}).bind("searchend",function(){l=!1}).search(function(e){l=!0,s(e.data.files)}).select(function(){var n,r=0,s=0,d=t.selectedFiles(),c=[];return 1==d.length?(n=d[0],r=n.size,l&&c.push(''+(n.path?n.path.replace(/\/[^\/]*$/,""):"..")+" "),c.push(t.escape(n.name)),i.html(c.join("/")+(r>0?", "+t.formatSize(r):"")),void 0):(e.each(d,function(e,t){s++,r+=parseInt(t.size)||0}),i.html(s?o+": "+s+", "+a+": "+t.formatSize(r):" "),void 0)})})},e.fn.elfindertoolbar=function(t,n){return this.not(".elfinder-toolbar").each(function(){var i,a,r,o,s,l=t._commands,d=e(this).addClass("ui-helper-clearfix ui-widget-header ui-corner-top elfinder-toolbar"),c=n||[],u=null,p="";d.prev().length&&d.parent().prepend(this);var h=function(t){var n;for(d.empty(),i=c.length;i--;)if(c[i]){for(o=e('
'),a=c[i].length;a--;)n=c[i][a],t&&-1!==e.inArray(n,t)||!(r=l[n])||(s="elfinder"+r.options.ui,e.fn[s]&&o.prepend(e("
")[s](r)));
+o.children().length&&d.prepend(o),o.children(":gt(0)").before(' ')}d.children().length?d.show():d.hide(),d.trigger("load")};h(),t.bind("open sync",function(){var n=[],i=t.option("disabled");u&&u.toString()===i.sort().toString()||h(i&&i.length?i:null),u=i.concat().sort(),p!==JSON.stringify(t.commandMap)&&(p=JSON.stringify(t.commandMap),Object.keys(t.commandMap).length&&e.each(t.commandMap,function(i,a){var r=t._commands[a],o=r?"elfinder"+r.options.ui:null;if(o&&e.fn[o]){n.push(i);var s=e("div.elfinder-buttonset div.elfinder-button").has("span.elfinder-button-icon-"+i);s.length&&!s.next().has("span.elfinder-button-icon-"+a).length&&(s.after(e("
")[o](t._commands[a]).data("origin",i)),s.hide())}}),e.each(e("div.elfinder-button"),function(){var t=e(this).data("origin");t&&-1==e.inArray(t,n)&&(e("span.elfinder-button-icon-"+e(this).data("origin")).parent().show(),e(this).remove())}))})}),this},e.fn.elfindertree=function(t,n){var i=t.res("class","tree");return this.not("."+i).each(function(){var a="class",r=t.UA.Mobile,o=t.res(a,"treeroot"),s=n.openRootOnLoad,l=n.openCwdOnOpen,d=t.res(a,"navsubtree"),c=t.res(a,"treedir"),u="span."+c,p=t.res(a,"navcollapse"),h=t.res(a,"navexpand"),f="elfinder-subtree-loaded",m=t.res(a,"navarrow"),g=t.res(a,"active"),v=t.res(a,"adroppable"),b=t.res(a,"hover"),y=t.res(a,"disabled"),w=t.res(a,"draggable"),x=t.res(a,"droppable"),k="elfinder-navbar-wrapper-pastable",C="elfinder-navbar-wrapper-uploadable",T=function(e){var t=$.offset().left;return e>=t&&e<=t+$.width()},I=t.droppable.drop,F=e.extend(!0,{},t.droppable,{over:function(n,i){var a,r,o=e(this),s=i.helper,l=b+" "+v;return n.stopPropagation(),s.data("dropover",s.data("dropover")+1),o.data("dropover",!0),i.helper.data("namespace")!==t.namespace?(o.removeClass(l),!1):(o.addClass(b),o.is("."+p+":not(."+h+")")&&o.data("expandTimer",setTimeout(function(){o.children("."+m).click()},500)),a=t.navId2Hash(o.attr("id")),o.data("dropover",a),e.each(i.helper.data("files"),function(e,n){return n===a||t.file(n).phash===a&&!i.helper.hasClass("elfinder-drag-helper-plus")?(o.removeClass(l),!1):void 0}),s.data("locked")?r="elfinder-drag-helper-plus":(r="elfinder-drag-helper-move",(n.shiftKey||n.ctrlKey||n.metaKey)&&(r+=" elfinder-drag-helper-plus")),o.hasClass(v)&&s.addClass(r),setTimeout(function(){o.hasClass(v)&&s.addClass(r)},20),void 0)},out:function(t,n){var i=e(this),a=n.helper;t.stopPropagation(),a.removeClass("elfinder-drag-helper-move elfinder-drag-helper-plus").data("dropover",Math.max(a.data("dropover")-1,0)),i.data("expandTimer")&&clearTimeout(i.data("expandTimer")),i.removeData("dropover").removeClass(b+" "+v)},deactivate:function(){e(this).removeData("dropover").removeClass(b+" "+v)},drop:function(e,t){T(e.clientX)&&I.call(this,e,t)}}),M=e(t.res("tpl","navspinner")),P=t.res("tpl","navdir"),S=t.res("tpl","perms"),z=(t.res("tpl","lock"),t.res("tpl","symlink")),A={id:function(e){return t.navHash2Id(e.hash)},cssclass:function(e){var i=(t.UA.Touch?"elfinder-touch ":"")+(e.phash?"":o)+" "+c+" "+t.perms2class(e);return e.dirs&&!e.link&&(i+=" "+p),n.getClass&&(i+=" "+n.getClass(e)),e.csscls&&(i+=" "+t.escape(e.csscls)),i},permissions:function(e){return e.read&&e.write?"":S},symlink:function(e){return e.alias?z:""},style:function(e){return e.icon?"style=\"background-image:url('"+t.escape(e.icon)+"')\"":""}},D=function(e){return e.name=t.escape(e.i18||e.name),P.replace(/(?:\{([a-z]+)\})/gi,function(t,n){return e[n]||(A[n]?A[n](e):"")})},O=function(t){return e.map(t||[],function(e){return"directory"==e.mime?e:null})},U=function(n){return n?e("#"+t.navHash2Id(n)).next("."+d):L},E=function(n,i){var a,r,o=n.children(":first");for(r=t.naturalCompare;o.length;){if(a=t.file(t.navId2Hash(o.children("[id]").attr("id"))),(a=t.file(t.navId2Hash(o.children("[id]").attr("id"))))&&r(i.name,a.name)<0)return o;o=o.next()}return e("")},j=function(n){for(var i,a,o,s,l,d=n.length,c=[],u=n.length,p={},h=!0;u--;)i=n[u],e("#"+t.navHash2Id(i.hash)).length||((a=U(i.phash)).length?i.phash&&((s=!a.children().length)||(o=E(a,i)).length)?s?(p[i.phash]||(p[i.phash]=[]),p[i.phash].push(i)):o.before(D(i)):(a[h||i.phash?"append":"prepend"](D(i)),h=!1,i.phash||(l=e("#"+t.navHash2Id(i.hash)).parent(),!i.disabled||i.disabled.length<1?l.addClass(k+" "+C):(-1===e.inArray("paste",i.disabled)&&l.addClass(k),-1===e.inArray("upload",i.disabled)&&l.addClass(C)))):c.push(i));return Object.keys(p).length&&e.each(p,function(t,n){var i=U(t),a=[];n.sort(H),e.each(n,function(e,t){a.push(D(t))}),i.append(a.join(""))}),c.length&&c.lengths||s>o)&&i.animate({scrollTop:i.scrollTop()+s-a-r/3},{duration:"fast"})}},_=function(i,a){var r,c,v,b,y,w,x=t.cwd(),k=x.hash,C=e("#"+t.navHash2Id(k)),i=i||!1,a=a||[];if(s&&(r=e("#"+t.navHash2Id(t.root())),r.hasClass(f)&&r.addClass(h).next("."+d).show(),s=!1),C.hasClass(g)||(L.find(u+"."+g).removeClass(g),C.addClass(g)),n.syncTree||!C.length){if(C.length)return i||(C.addClass(f),l&&C.hasClass(p)&&C.addClass(h).next("."+d).slideDown()),b=C.parentsUntil("."+o).filter("."+d),y=b.length,w=1,b.show().prev(u).addClass(h,function(){!i&&y==w++&&R()}),!y&&!i&&R(),void 0;if(t.newAPI){if(c=t.file(k),c&&c.phash&&(v=e("#"+t.navHash2Id(c.phash)),v.length&&v.hasClass(f)))return j([c]),_(i),void 0;v=x.root?e("#"+t.navHash2Id(x.root)):null,v&&(M.insertBefore(v.children("."+m)),v.removeClass(p)),t.request({data:{cmd:"parents",target:k},preventFail:!0}).done(function(n){a=e.merge(a,O(n.tree)),j(a),q(a,f),k==t.cwd().hash&&_(i)}).always(function(){v&&(M.remove(),v.addClass(p+" "+f))})}}},N=function(e){var t,n=100;e||(L.find("div."+C).find(u+":not(.elfinder-ro,.elfinder-na)").addClass("native-droppable"),e=L.find("div."+k).find(u+":not(."+x+",.elfinder-ro,.elfinder-na)")),e.length>n&&(t=e.slice(n),e=e.slice(0,n)),e.droppable(F),t&&setTimeout(function(){N(t)},20)},q=function(n,i){var a=i==f?"."+p+":not(."+f+")":":not(."+p+")";e.each(n,function(n,r){e("#"+t.navHash2Id(r.phash)+a).filter(function(){return e(this).next("."+d).children().length>0}).addClass(i)})},L=e(this).addClass(i).on("mouseenter mouseleave",u,function(n){var i=e(this),a="mouseenter"==n.type;i.hasClass(v+" "+y)||(!r&&a&&!i.hasClass(o+" "+w+" elfinder-na elfinder-wo")&&i.draggable(t.draggable),i.toggleClass(b,a))}).on("dropover dropout drop",u,function(t){e(this)["dropover"==t.type?"addClass":"removeClass"](v+" "+b)}).on("click",u,function(n){var i=e(this),a=t.navId2Hash(i.attr("id"));return t.file(a),i.data("longtap")?(n.stopPropagation(),void 0):(t.trigger("searchend",{noupdate:!0}),a==t.cwd().hash||i.hasClass(y)?i.hasClass(p)&&i.children("."+m).click():t.exec("open",a),void 0)}).on("touchstart",u,function(n){n.stopPropagation();var i=n.originalEvent,a=e(this).addClass(b).data("longtap",null).data("tmlongtap",setTimeout(function(){a.data("longtap",!0),t.trigger("contextmenu",{type:"navbar",targets:[t.navId2Hash(a.attr("id"))],x:i.touches[0].pageX,y:i.touches[0].pageY})},500))}).on("touchmove touchend",u,function(t){t.stopPropagation(),clearTimeout(e(this).data("tmlongtap")),"touchmove"==t.type&&e(this).removeClass(b)}).on("click",u+"."+p+" ."+m,function(n){var i,a=e(this),r=a.parent(u),o=r.next("."+d),s=30;n.stopPropagation(),r.hasClass(f)?(r.toggleClass(h),i=r.hasClass(h)?o.children().length+o.find("div.elfinder-navbar-subtree[style*=block]").children().length:o.find("div:visible").length,i>s?(o.toggle(),t.draggingUiHelper&&t.draggingUiHelper.data("refreshPositions",1)):o.stop(!0,!0).slideToggle("normal",function(){t.draggingUiHelper&&t.draggingUiHelper.data("refreshPositions",1)})):(M.insertBefore(a),r.removeClass(p),t.request({cmd:"tree",target:t.navId2Hash(r.attr("id"))}).done(function(e){j(O(e.tree)),o.children().length&&(r.addClass(p+" "+h),o.children().length>s?(o.show(),t.draggingUiHelper&&t.draggingUiHelper.data("refreshPositions",1)):o.stop(!0,!0).slideDown("normal",function(){t.draggingUiHelper&&t.draggingUiHelper.data("refreshPositions",1)})),_(!0)}).always(function(){M.remove(),r.addClass(f)}))}).on("contextmenu",u,function(n){n.preventDefault(),t.trigger("contextmenu",{type:"navbar",targets:[t.navId2Hash(e(this).attr("id"))],x:n.pageX,y:n.pageY})}),$=t.getUI("navbar").append(L).show();t.open(function(n){var i=n.data,a=O(i.files),r=t.getUI("contextmenu");i.init&&L.empty(),a.length&&(r.data("cmdMaps")||r.data("cmdMaps",{}),j(a),q(a,f),e.each(a,function(e,t){t.volumeid&&t.uiCmdMap&&Object.keys(t.uiCmdMap).length&&!r.data("cmdMaps")[t.volumeid]&&(r.data("cmdMaps")[t.volumeid]=t.uiCmdMap)})),_(!1,a)}).add(function(e){var t=O(e.data.added);t.length&&(j(t),q(t,p))}).change(function(n){for(var i,a,o,s,l,c,p,m,g,v=O(n.data.changed),b=v.length,y=b;y--;)if(i=v[y],(a=e("#"+t.navHash2Id(i.hash))).length){if(i.phash){if(s=a.closest("."+d),l=U(i.phash),c=a.parent().next(),p=E(l,i),!l.length)continue;(l[0]!==s[0]||c.get(0)!==p.get(0))&&(p.length?p.before(a):l.append(a))}m=a.hasClass(h),g=a.hasClass(f),o=e(D(i)),a.replaceWith(o.children(u)),i.dirs&&(m||g)&&(a=e("#"+t.navHash2Id(i.hash)))&&a.next("."+d).children().length&&(m&&a.addClass(h),g&&a.addClass(f))}_(),b&&!r&&N()}).remove(function(n){for(var i,a,r=n.data.removed,o=r.length;o--;)(i=e("#"+t.navHash2Id(r[o]))).length&&(a=i.closest("."+d),i.parent().detach(),a.children().length||a.hide().prev(u).removeClass(p+" "+h+" "+f))}).bind("lockfiles unlockfiles",function(n){var i="lockfiles"==n.type,a=n.data.helper?n.data.helper.data("locked"):!1,r=i&&!a?"disable":"enable",o=e.map(n.data.files||[],function(e){var n=t.file(e);return n&&"directory"==n.mime?e:null});e.each(o,function(n,o){var s=e("#"+t.navHash2Id(o));s.length&&!a&&(s.hasClass(w)&&s.draggable(r),s.hasClass(x)&&s.droppable(r),s[i?"addClass":"removeClass"](y))})})}),this},e.fn.elfinderuploadbutton=function(t){return this.each(function(){var n=e(this).elfinderbutton(t).off("click"),i=e("").appendTo(n),a=e(' ').change(function(){var n=e(this);n.val()&&(t.exec({input:n.remove()[0]}),a.clone(!0).appendTo(i))}).on("dragover",function(e){e.originalEvent.dataTransfer.dropEffect="copy"});i.append(a.clone(!0)),t.change(function(){i[t.disabled()?"hide":"show"]()}).change()})},e.fn.elfinderviewbutton=function(t){return this.each(function(){var n=e(this).elfinderbutton(t),i=n.children(".elfinder-button-icon");t.change(function(){var e="icons"==t.value;i.toggleClass("elfinder-button-icon-view-list",e),n.attr("title",t.fm.i18n(e?"viewlist":"viewicons"))})})},e.fn.elfinderworkzone=function(){var t="elfinder-workzone";return this.not("."+t).each(function(){var n=e(this).addClass(t),i=n.outerHeight(!0)-n.height(),a=n.parent();a.add(window).on("resize",function(){var r=a.height();a.children(":visible:not(."+t+")").each(function(){var t=e(this);"absolute"!=t.css("position")&&"fixed"!=t.css("position")&&(r-=t.outerHeight(!0))}),n.height(r-i)})}),this},elFinder.prototype.commands.archive=function(){var t,n=this,i=n.fm,a=[];this.variants=[],this.disableOnSearch=!0,i.bind("open reload",function(){n.variants=[],e.each(a=i.option("archivers").create||[],function(e,t){n.variants.push([t,i.mime2kind(t)])}),n.change()}),this.getstate=function(){return!this._disabled&&a.length&&(i.selected().length||t&&"pending"==t.state())&&i.cwd().write?0:-1},this.exec=function(r,o){var s,l,d=this.files(r),c=d.length,u=o||a[0],p=i.cwd(),h=["errArchive","errPerm","errCreatingTempDir","errFtpDownloadFile","errFtpUploadFile","errFtpMkdir","errArchiveExec","errExtractExec","errRm"];if(t=e.Deferred().fail(function(e){e&&i.error(e)}),!(this.enabled()&&c&&a.length&&-1!==e.inArray(u,a)))return t.reject();if(!p.write)return t.reject(h);for(s=0;c>s;s++)if(!d[s].read)return t.reject(h);return n.mime=u,n.prefix=(c>1?"Archive":d[0].name)+"."+i.option("archivers").createext[u],n.data={targets:n.hashes(r),type:u},l=e.proxy(i.res("mixin","make"),n)(),t.reject(),l}},elFinder.prototype.commands.back=function(){this.alwaysEnabled=!0,this.updateOnSelect=!1,this.shortcuts=[{pattern:"ctrl+left backspace"}],this.getstate=function(){return this.fm.history.canBack()?0:-1},this.exec=function(){return this.fm.history.back()}},elFinder.prototype.commands.chmod=function(){this.updateOnSelect=!1;var t=this,n=this.fm,i={0:"owner",1:"group",2:"other"},a={read:n.i18n("read"),write:n.i18n("write"),execute:n.i18n("execute"),perm:n.i18n("perm"),kind:n.i18n("kind"),files:n.i18n("files")},r=function(e){return!isNaN(parseInt(e,8)&&parseInt(e,8)<=511)||e.match(/^([r-][w-][x-]){3}$/i)};this.tpl={main:' {title}
{dataTable}',itemTitle:'{name} {kind} ',groupTitle:"{items}: {num} ",dataTable:''+a.perm+':
',fieldset:'{f_title}{name} '+a.read+" "+' '+a.write+" "+' '+a.execute+" "},this.shortcuts=[{}],this.getstate=function(e){var n=this.fm;return e=e||n.selected(),0==e.length&&(e=[n.cwd().hash]),!this._disabled&&t.checkstate(this.files(e))?0:-1},this.checkstate=function(t){var n=t.length;if(!n)return!1;var i=e.map(t,function(e){return e.isowner&&e.perm&&r(e.perm)&&(1==n||"directory"!=e.mime)?e:null}).length;return n==i?!0:!1},this.exec=function(t){var n=this.files(t);n.length||(t=[this.fm.cwd().hash],n=this.files(t));var o,s,l=this.fm,d=e.Deferred().always(function(){l.enable()}),c=this.tpl,t=this.hashes(t),u=n.length,p=n[0],h=l.namespace+"-perm-"+p.hash,f=c.main,m=' checked="checked"',g=function(){var e={};return e[l.i18n("btnApply")]=v,e[l.i18n("btnCancel")]=function(){I.elfinderdialog("close")},e},v=function(){var n=e.trim(e("#"+h+"-perm").val());return r(n)?(I.elfinderdialog("close"),l.request({data:{cmd:"chmod",targets:t,mode:n},notify:{type:"chmod",cnt:u}}).fail(function(e){d.reject(e)}).done(function(e){d.resolve(e)}),void 0):!1},b=function(){for(var t,n="",a=0;3>a;a++)t=0,e("#"+h+"-read-"+i[a]+"-perm").is(":checked")&&(t=4|t),e("#"+h+"-write-"+i[a]+"-perm").is(":checked")&&(t=2|t),e("#"+h+"-execute-"+i[a]+"-perm").is(":checked")&&(t=1|t),n+=t.toString(8);e("#"+h+"-perm").val(n)},y=function(t){for(var n,a=0;3>a;a++)n=parseInt(t.slice(a,a+1),8),e("#"+h+"-read-"+i[a]+"-perm").prop("checked",!1),e("#"+h+"-write-"+i[a]+"-perm").prop("checked",!1),e("#"+h+"-execute-"+i[a]+"-perm").prop("checked",!1),4==(4&n)&&e("#"+h+"-read-"+i[a]+"-perm").prop("checked",!0),2==(2&n)&&e("#"+h+"-write-"+i[a]+"-perm").prop("checked",!0),1==(1&n)&&e("#"+h+"-execute-"+i[a]+"-perm").prop("checked",!0);b()},w=function(e){for(var t,n,i,a="777",r="",o=e.length,s=0;o>s;s++){t=C(e[s].perm),r="";for(var l=0;3>l;l++)n=parseInt(t.slice(l,l+1),8),i=parseInt(a.slice(l,l+1),8),4!=(4&n)&&4==(4&i)&&(i-=4),2!=(2&n)&&2==(2&i)&&(i-=2),1!=(1&n)&&1==(1&i)&&(i-=1),r+=i.toString(8);a=r}return a},x=function(e){return e?":"+e:""},k=function(e,t){for(var n,r,o="",s=c.dataTable,d=0;3>d;d++)n=parseInt(e.slice(d,d+1),8),o+=n.toString(8),r=c.fieldset.replace("{f_title}",l.i18n(i[d])).replace("{name}",x(t[i[d]])).replace(/\{level\}/g,i[d]),s=s.replace("{"+d+"}",r).replace("{checked-r}",4==(4&n)?m:"").replace("{checked-w}",2==(2&n)?m:"").replace("{checked-x}",1==(1&n)?m:"");return s=s.replace("{value}",o).replace("{valueCaption}",a.perm)},C=function(e){if(isNaN(parseInt(e,8))){for(var t=e.split(""),n=[],i=0,a=t.length;a>i;i++)0===i||3===i||6===i?t[i].match(/[r]/i)?n.push(1):t[i].match(/[-]/)&&n.push(0):1===i||4===i||7===i?t[i].match(/[w]/i)?n.push(1):t[i].match(/[-]/)&&n.push(0):t[i].match(/[x]/i)?n.push(1):t[i].match(/[-]/)&&n.push(0);n.splice(3,0,","),n.splice(7,0,",");for(var r=n.join(""),o=r.split(","),s=[],l=0,d=o.length;d>l;l++){var c=parseInt(o[l],2).toString(8);s.push(c)}e=s.join("")}else e=parseInt(e,8).toString(8);return e},T={title:this.title,width:"auto",buttons:g(),close:function(){e(this).elfinderdialog("destroy")}},I=l.getUI().find("#"+h),F="";return I.length?(I.elfinderdialog("toTop"),e.Deferred().resolve()):(f=f.replace("{class}",u>1?"elfinder-cwd-icon-group":l.mime2class(p.mime)),u>1?o=c.groupTitle.replace("{items}",l.i18n("items")).replace("{num}",u):(o=c.itemTitle.replace("{name}",p.name).replace("{kind}",l.mime2kind(p)),p.tmb&&(F=l.option("tmbUrl")+p.tmb)),s=k(w(n),1==n.length?n[0]:{}),f=f.replace("{title}",o).replace("{dataTable}",s).replace(/{id}/g,h),I=l.dialog(f,T),I.attr("id",h),F&&e(" ").on("load",function(){I.find(".elfinder-cwd-icon").css("background",'url("'+F+'") center center no-repeat')}).attr("src",F),e("#"+h+"-table-perm :checkbox").on("click",function(){b("perm")}),e("#"+h+"-perm").on("keydown",function(e){var t=e.keyCode;return e.stopPropagation(),13==t?(v(),void 0):void 0}).on("focus",function(){e(this).select()}).on("keyup",function(){3==e(this).val().length&&(e(this).select(),y(e(this).val()))}),d)}},elFinder.prototype.commands.copy=function(){this.shortcuts=[{pattern:"ctrl+c ctrl+insert"}],this.getstate=function(t){var t=this.files(t),n=t.length;return!this._disabled&&n&&e.map(t,function(e){return e.phash&&e.read?e:null}).length==n?0:-1},this.exec=function(t){var n=this.fm,i=e.Deferred().fail(function(e){n.error(e)});return e.each(this.files(t),function(e,t){return t.read&&t.phash?void 0:!i.reject(["errCopy",t.name,"errPerm"])}),"rejected"==i.state()?i:i.resolve(n.clipboard(this.hashes(t)))}},elFinder.prototype.commands.cut=function(){this.shortcuts=[{pattern:"ctrl+x shift+insert"}],this.getstate=function(t){var t=this.files(t),n=t.length;return!this._disabled&&n&&e.map(t,function(e){return e.phash&&e.read&&!e.locked?e:null}).length==n?0:-1},this.exec=function(t){var n=this.fm,i=e.Deferred().fail(function(e){n.error(e)});return e.each(this.files(t),function(e,t){return t.read&&t.phash?t.locked?!i.reject(["errLocked",t.name]):void 0:!i.reject(["errCopy",t.name,"errPerm"])}),"rejected"==i.state()?i:i.resolve(n.clipboard(this.hashes(t),!0))}},elFinder.prototype.commands.download=function(){var t=this,n=this.fm,i=function(n){return e.map(t.files(n),function(e){return"directory"==e.mime?null:e})};this.shortcuts=[{pattern:"shift+enter"}],this.getstate=function(){var e=this.fm.selected(),t=e.length;return this._disabled||!t||(n.UA.IE||n.UA.Mobile)&&1!=t||t!=i(e).length?-1:0},this.fm.bind("contextmenu",function(n){var i,a,r=t.fm,o=null,s=function(t){var n=t.url||r.url(t.hash);return{icon:"link",node:e(" ").attr({href:n,target:"_blank",title:r.i18n("link")}).text(t.name).on("mousedown click touchstart touchmove touchend contextmenu",function(e){var t=r.getUI("contextmenu");e.stopPropagation(),t.data("mouseEvInternal",!0),setTimeout(function(){t.data("mouseEvInternal",!1)},500)}).on("dragstart",function(n){var i=n.dataTransfer||n.originalEvent.dataTransfer||null;if(o=null,i){var a=function(t){var n,i=t.mime;return n='
',t.tmb&&1!==t.tmb&&(n=e(n).css("background","url('"+r.option("tmbUrl")+t.tmb+"') center center no-repeat").get(0).outerHTML),n};i.effectAllowed="copyLink",i.setDragImage&&(o=e('').append(a(t)).appendTo(e(document.body)),i.setDragImage(o.get(0),50,47)),r.UA.IE||(i.setData("elfinderfrom",window.location.href+t.phash),i.setData("elfinderfrom:"+i.getData("elfinderfrom"),""))}}).on("dragend",function(){o&&o.remove()})}};if(t.extra=null,n.data&&(i=n.data.targets||[],1===i.length&&(a=r.file(i[0]))&&"directory"!==a.mime))if("1"!=a.url)t.extra=s(a);else{var l;t.extra={icon:"link",node:e("
").attr({href:"#",title:r.i18n("link"),draggable:"false"}).text(a.name).on("click",function(e){var t=l.parent();e.stopPropagation(),e.preventDefault(),t.removeClass("ui-state-disabled").addClass("elfinder-button-icon-spinner"),r.request({data:{cmd:"url",target:a.hash},preventDefault:!0}).always(function(e){if(e.url){var n=r.file(a.hash);n.url=e.url,t.removeClass("elfinder-button-icon-spinner"),l.replaceWith(s(a).node)}else t.addClass("ui-state-disabled")})})},l=t.extra.node,l.ready(function(){setTimeout(function(){l.parent().addClass("ui-state-disabled")},10)})}}),this.exec=function(t){var n,a,r=this.fm,o=(r.options.url,i(t)),s=e.Deferred(),l="";if(this.disabled())return s.reject();var a,d=e("
").hide().appendTo(e("body")),c="string"==typeof d.get(0).download;for(n=0;n ';return d.remove(),e(l).appendTo("body").ready(function(){setTimeout(function(){e(l).each(function(){e("#"+e(this).attr("id")).remove()})},r.UA.Firefox?2e4+1e4*n:1e3)}),r.trigger("download",{files:o}),s.resolve(t)}},elFinder.prototype.commands.duplicate=function(){var t=this.fm;this.getstate=function(n){var n=this.files(n),i=n.length;return!this._disabled&&i&&t.cwd().write&&e.map(n,function(e){return e.phash&&e.read?e:null}).length==i?0:-1},this.exec=function(t){var n=this.fm,i=this.files(t),a=i.length,r=e.Deferred().fail(function(e){e&&n.error(e)});return!a||this._disabled?r.reject():(e.each(i,function(e,t){return t.read&&n.file(t.phash).write?void 0:!r.reject(["errCopy",t.name,"errPerm"])}),"rejected"==r.state()?r:n.request({data:{cmd:"duplicate",targets:this.hashes(t)},notify:{type:"copy",cnt:a}}))}},elFinder.prototype.commands.edit=function(){var t=this,n=this.fm,i=n.res("mimes","text")||[],a=function(e){return e.replace(/\s+$/,"")},r=function(n){return e.map(n,function(n){return 0!==n.mime.indexOf("text/")&&-1===e.inArray(n.mime,i)||!n.mime.indexOf("text/rtf")||t.onlyMimes.length&&-1===e.inArray(n.mime,t.onlyMimes)||!n.read||!n.write?null:n})},o=function(r,o,s){var l=e.Deferred(),d=e('"),c=d.val(),u=function(){d.editor&&d.editor.save(d[0],d.editor.instance),c=d.val(),l.notifyWith(d)},p=function(){var e=function(){l.reject(),d.elfinderdialog("close")};d.editor&&d.editor.save(d[0],d.editor.instance),a(c)!==a(d.val())?(c=d.val(),n.confirm({title:t.title,text:"confirmNotSave",accept:{label:"btnSaveClose",callback:function(){u(),e()}},cancel:{label:"btnClose",callback:e}})):e()},h=function(){u(),p()},f={title:n.escape(o.name),width:t.options.dialogWidth||450,buttons:{},btnHoverFocus:!1,closeOnEscape:!1,close:function(){var i=e(this),r=function(){d.editor&&d.editor.close(d[0],d.editor.instance),i.elfinderdialog("destroy")};d.editor&&d.editor.save(d[0],d.editor.instance),a(c)!==a(d.val())?n.confirm({title:t.title,text:"confirmNotSave",accept:{label:"btnSaveClose",callback:function(){u(),r()}},cancel:{label:"btnClose",callback:r}}):r()},open:function(){n.disable(),d.focus(),d[0].setSelectionRange&&d[0].setSelectionRange(0,0),d.editor&&(d.editor.instance=d.editor.load(d[0])||null,d.editor.focus(d[0],d.editor.instance))}},m=function(t,n){if(n=n||i.concat("text/"),-1!==e.inArray(t,n))return!0;var a,r;for(r=n.length,a=0;r>a;a++)if(0===t.indexOf(n[a]))return!0;return!1},g=function(e,t){if(!t||!t.length)return!0;var n,i,a=e.replace(/^.+\.([^.]+)|(.+)$/,"$1$2").toLowerCase();for(i=t.length,n=0;i>n;n++)if(a===t[n].toLowerCase())return!0;return!1};return d.getContent=function(){return d.val()},e.each(t.options.editors||[],function(e,t){return m(o.mime,t.mimes||null)&&g(o.name,t.exts||null)&&"function"==typeof t.load&&"function"==typeof t.save?(d.editor={load:t.load,save:t.save,close:"function"==typeof t.close?t.close:function(){},focus:"function"==typeof t.focus?t.focus:function(){},instance:null,doSave:u,doCancel:p,doClose:h,file:o},!1):void 0}),d.editor||d.keydown(function(e){var t,n,i=e.keyCode;e.stopPropagation(),9==i&&(e.preventDefault(),this.setSelectionRange&&(t=this.value,n=this.selectionStart,this.value=t.substr(0,n)+" "+t.substr(this.selectionEnd),n+=1,this.setSelectionRange(n,n))),(e.ctrlKey||e.metaKey)&&((81==i||87==i)&&(e.preventDefault(),p()),83==i&&(e.preventDefault(),u()))}).on("mouseenter",function(){this.focus()}),f.buttons[n.i18n("btnSave")]=u,f.buttons[n.i18n("btnSaveClose")]=h,f.buttons[n.i18n("btnCancel")]=p,n.dialog(d,f).attr("id",r),l.promise()},s=function(i,a){var r,l=i.hash,d=(n.options,e.Deferred()),c="edit-"+n.namespace+"-"+i.hash,u=n.getUI().find("#"+c),p=a?1:0;return u.length?(u.elfinderdialog("toTop"),d.resolve()):i.read&&i.write?(n.request({data:{cmd:"get",target:l,conv:p},notify:{type:"file",cnt:1},syncOnFail:!0}).done(function(e){e.doconv?n.confirm({title:t.title,text:"confirmConvUTF8",accept:{label:"btnConv",callback:function(){d=s(i,1)}},cancel:{label:"btnCancel",callback:function(){d.reject()}}}):o(c,i,e.content).progress(function(){var e=this;n.request({options:{type:"post"},data:{cmd:"put",target:l,content:e.getContent()},notify:{type:"save",cnt:1},syncOnFail:!0}).fail(function(e){d.reject(e)}).done(function(t){t.changed&&t.changed.length&&n.change(t),d.resolve(t),setTimeout(function(){e.focus(),e.editor&&e.editor.focus(e[0],e.editor.instance)},50)})})}).fail(function(e){d.reject(e)}),d.promise()):(r=["errOpen",i.name,"errPerm"],n.error(r),d.reject(r))};this.shortcuts=[{pattern:"ctrl+e"}],this.init=function(){this.onlyMimes=this.options.mimes||[]},this.getstate=function(e){var e=this.files(e),t=e.length;return!this._disabled&&t&&r(e).length==t?0:-1},this.exec=function(t){var n,i=r(this.files(t)),a=[];if(this.disabled())return e.Deferred().reject();for(;n=i.shift();)a.push(s(n));return a.length?e.when.apply(null,a):e.Deferred().reject()}},elFinder.prototype.commands.extract=function(){var t=this,n=t.fm,i=[],a=function(t){return e.map(t,function(t){return t.read&&-1!==e.inArray(t.mime,i)?t:null})};this.variants=[],this.disableOnSearch=!0,n.bind("open reload",function(){i=n.option("archivers").extract||[],t.variants=[["makedir",n.i18n("cmdmkdir")],["intohere",n.i18n("btnCwd")]],t.change()}),this.getstate=function(e){var e=this.files(e),t=e.length;return!this._disabled&&t&&this.fm.cwd().write&&a(e).length==t?0:-1},this.exec=function(t,a){var r,o,s,l=this.files(t),d=e.Deferred(),c=l.length,u="makedir"==a?1:0,p=!1,h=!1,f=0,m=e.map(n.files(t),function(e){return e.name}),g={};e.map(n.files(t),function(e){g[e.name]=e});var v=function(e){switch(e){case"overwrite_all":p=!0;break;case"omit_all":h=!0}},b=function(t){t.read&&n.file(t.phash).write?-1===e.inArray(t.mime,i)?(o=["errExtract",t.name,"errNoArchive"],n.error(o),d.reject(o)):n.request({data:{cmd:"extract",target:t.hash,makedir:u},notify:{type:"extract",cnt:1},syncOnFail:!0}).fail(function(e){"rejected"!=d.state()&&d.reject(e)}).done(function(){}):(o=["errExtract",t.name,"errPerm"],n.error(o),d.reject(o))},y=function(t,i){var a=t[i],o=a.name.replace(/\.((tar\.(gz|bz|bz2|z|lzo))|cpio\.gz|ps\.gz|xcf\.(gz|bz2)|[a-z0-9]{1,4})$/gi,""),l=e.inArray(o,m)>=0,w=function(){c>i+1?y(t,i+1):d.resolve()};!u&&l&&"directory"!=g[o].mime?n.confirm({title:n.i18n("ntfextract"),text:["errExists",o,"confirmRepl"],accept:{label:"btnYes",callback:function(e){if(s=e?"overwrite_all":"overwrite",v(s),p||h){if(p){for(r=i;c>r;r++)b(t[r]);d.resolve()}}else"overwrite"==s&&b(a),c>i+1?y(t,i+1):d.resolve()}},reject:{label:"btnNo",callback:function(e){s=e?"omit_all":"omit",v(s),!p&&!h&&c>i+1?y(t,i+1):h&&d.resolve()}},cancel:{label:"btnCancel",callback:function(){d.resolve()}},all:c>i+1}):u?(b(a),w()):0==f?n.confirm({title:n.i18n("cmdextract"),text:[n.i18n("cmdextract")+' "'+a.name+'"',"confirmRepl"],accept:{label:"btnYes",callback:function(e){e&&(f=1),b(a),w()}},reject:{label:"btnNo",callback:function(e){e&&(f=-1),w()}},cancel:{label:"btnCancel",callback:function(){d.resolve()}},all:c>i+1}):(f>0&&b(a),w())};return this.enabled()&&c&&i.length?(c>0&&y(l,0),d):d.reject()}},elFinder.prototype.commands.forward=function(){this.alwaysEnabled=!0,this.updateOnSelect=!0,this.shortcuts=[{pattern:"ctrl+right"}],this.getstate=function(){return this.fm.history.canForward()?0:-1},this.exec=function(){return this.fm.history.forward()}},elFinder.prototype.commands.getfile=function(){var t=this,n=this.fm,i=function(n){var i=t.options;return n=e.map(n,function(e){return"directory"!=e.mime||i.folders?e:null}),i.multiple||1==n.length?n:[]};this.alwaysEnabled=!0,this.callback=n.options.getFileCallback,this._disabled="function"==typeof this.callback,this.getstate=function(e){var e=this.files(e),t=e.length;return this.callback&&t&&i(e).length==t?0:-1},this.exec=function(n){var i,a,r,o=this.fm,s=this.options,l=this.files(n),d=l.length,c=o.option("url"),u=o.option("tmbUrl"),p=e.Deferred().done(function(e){o.trigger("getfile",{files:e}),t.callback(e,o),"close"==s.oncomplete?o.hide():"destroy"==s.oncomplete&&o.destroy()}),h=function(){return s.onlyURL?s.multiple?e.map(l,function(e){return e.url}):l[0].url:s.multiple?l:l[0]},f=[];if(-1==this.getstate(n))return p.reject();for(i=0;d>i;i++){if(a=l[i],"directory"==a.mime&&!s.folders)return p.reject();a.baseUrl=c,"1"==a.url?f.push(o.request({data:{cmd:"url",target:a.hash},notify:{type:"url",cnt:1,hideCnt:!0},preventDefault:!0}).done(function(e){if(e.url){var t=o.file(this.hash);t.url=this.url=e.url}}.bind(a))):a.url=o.url(a.hash),a.path=o.path(a.hash),a.tmb&&1!=a.tmb&&(a.tmb=u+a.tmb),a.width||a.height||(a.dim?(r=a.dim.split("x"),a.width=r[0],a.height=r[1]):-1!==a.mime.indexOf("image")&&f.push(o.request({data:{cmd:"dim",target:a.hash},notify:{type:"dim",cnt:1,hideCnt:!0},preventDefault:!0}).done(function(e){if(e.dim){var t=e.dim.split("x"),n=o.file(this.hash);n.width=this.width=t[0],n.height=this.height=t[1]}}.bind(a))))}return f.length?(e.when.apply(null,f).always(function(){p.resolve(h(l))}),p):p.resolve(h(l))}},elFinder.prototype.commands.help=function(){var t=this.fm,n=this,i='',a='',r=/\{url\}/,o=/\{link\}/,s=/\{author\}/,l=/\{work\}/,d="replace",c="ui-priority-primary",u="ui-priority-secondary",p="elfinder-help-license",h='{title} ',f=['','"),-1!==e.inArray("about",i)&&v(),-1!==e.inArray("shortcuts",i)&&b(),-1!==e.inArray("help",i)&&y(),f.push("
"),w=e(f.join("")),w.find(".ui-tabs-nav li").hover(function(){e(this).toggleClass("ui-state-hover")}).children().click(function(t){var n=e(this);t.preventDefault(),t.stopPropagation(),n.hasClass("ui-tabs-selected")||(n.parent().addClass("ui-tabs-selected ui-state-active").siblings().removeClass("ui-tabs-selected").removeClass("ui-state-active"),w.find(".ui-tabs-panel").hide().filter(n.attr("href")).show())}).filter(":first").click()},200),this.getstate=function(){return 0},this.exec=function(){this.dialog||(w.find("#apiver").text(this.fm.api),this.dialog=this.fm.dialog(w,{title:this.title,width:530,autoOpen:!1,destroyOnClose:!1})),this.dialog.elfinderdialog("open").find(".ui-tabs-nav li a:first").click()}},elFinder.prototype.commands.home=function(){this.title="Home",this.alwaysEnabled=!0,this.updateOnSelect=!1,this.shortcuts=[{pattern:"ctrl+home ctrl+shift+up",description:"Home"}],this.getstate=function(){var e=this.fm.root(),t=this.fm.cwd().hash;return e&&t&&e!=t?0:-1},this.exec=function(){return this.fm.exec("open",this.fm.root())}},elFinder.prototype.commands.info=function(){var t=this.fm,n="elfinder-info-spinner",i={calc:t.i18n("calc"),size:t.i18n("size"),unknown:t.i18n("unknown"),path:t.i18n("path"),aliasfor:t.i18n("aliasfor"),modify:t.i18n("modify"),perms:t.i18n("perms"),locked:t.i18n("locked"),dim:t.i18n("dim"),kind:t.i18n("kind"),files:t.i18n("files"),folders:t.i18n("folders"),items:t.i18n("items"),yes:t.i18n("yes"),no:t.i18n("no"),link:t.i18n("link"),owner:t.i18n("owner"),group:t.i18n("group"),perm:t.i18n("perm")};this.tpl={main:' {title}
',itemTitle:'
{name} {kind} ',groupTitle:"
{items}: {num} ",row:"
{label} : {value} ",spinner:'
{text} '},this.alwaysEnabled=!0,this.updateOnSelect=!1,this.shortcuts=[{pattern:"ctrl+i"}],this.init=function(){e.each(i,function(e,n){i[e]=t.i18n(n)})},this.getstate=function(){return 0},this.exec=function(t){var a=this.files(t);a.length||(a=this.files([this.fm.cwd().hash]));var r,o,s,l,d,c=this.fm,u=this.options,p=this.tpl,h=p.row,f=a.length,m=[],g=p.main,v="{label}",b="{value}",y={title:this.title,width:"auto",close:function(){e(this).elfinderdialog("destroy")}},w=[],x=function(e,t){C.find("."+n+"-"+t).parent().html(e)},k=c.namespace+"-info-"+e.map(a,function(e){return e.hash}).join("-"),C=c.getUI().find("#"+k),T=[];if(!f)return e.Deferred().reject();if(C.length)return C.elfinderdialog("toTop"),e.Deferred().resolve();if(1==f){if(s=a[0],g=g.replace("{class}",c.mime2class(s.mime)),l=p.itemTitle.replace("{name}",c.escape(s.i18||s.name)).replace("{kind}",c.mime2kind(s)),s.tmb&&(o=c.option("tmbUrl")+s.tmb),s.read?"directory"!=s.mime||s.alias?r=c.formatSize(s.size):(r=p.spinner.replace("{text}",i.calc).replace("{name}","size"),w.push(s.hash)):r=i.unknown,m.push(h.replace(v,i.size).replace(b,r)),s.alias&&m.push(h.replace(v,i.aliasfor).replace(b,s.alias)),m.push(h.replace(v,i.path).replace(b,c.escape(c.path(s.hash,!0)))),s.read){var I,F=c.escape(s.name);if("1"==s.url)m.push(h.replace(v,i.link).replace(b,p.spinner.replace("{text}",i.modify).replace("{name}","url"))),c.request({data:{cmd:"url",target:s.hash},preventDefault:!0}).fail(function(){x(F,"url")}).done(function(e){if(x('
'+F+" "||F,"url"),e.url){var t=c.file(s.hash);t.url=e.url}});else{if(u.nullUrlDirLinkSelf&&"directory"==s.mime&&null===s.url){var M=window.location;I=M.pathname+M.search+"#elf_"+s.hash}else I=c.url(s.hash);m.push(h.replace(v,i.link).replace(b,'
'+F+" "))}}s.dim?m.push(h.replace(v,i.dim).replace(b,s.dim)):-1!==s.mime.indexOf("image")&&(s.width&&s.height?m.push(h.replace(v,i.dim).replace(b,s.width+"x"+s.height)):(m.push(h.replace(v,i.dim).replace(b,p.spinner.replace("{text}",i.calc).replace("{name}","dim"))),c.request({data:{cmd:"dim",target:s.hash},preventDefault:!0}).fail(function(){x(i.unknown,"dim")}).done(function(e){if(x(e.dim||i.unknown,"dim"),e.dim){var t=e.dim.split("x"),n=c.file(s.hash);n.width=t[0],n.height=t[1]}}))),m.push(h.replace(v,i.modify).replace(b,c.formatDate(s))),m.push(h.replace(v,i.perms).replace(b,c.formatPermissions(s))),m.push(h.replace(v,i.locked).replace(b,s.locked?i.yes:i.no)),s.owner&&m.push(h.replace(v,i.owner).replace(b,s.owner)),s.group&&m.push(h.replace(v,i.group).replace(b,s.group)),s.perm&&m.push(h.replace(v,i.perm).replace(b,c.formatFileMode(s.perm))),u.custom&&e.each(u.custom,function(t,n){n.mimes&&!e.map(n.mimes,function(e){return s.mime===e||0===s.mime.indexOf(e+"/")?!0:null}).length||n.hashRegex&&!s.hash.match(n.hashRegex)||(m.push(h.replace(v,c.i18n(n.label)).replace(b,n.tpl.replace("{id}",k))),n.action&&"function"==typeof n.action&&T.push(n.action))})}else g=g.replace("{class}","elfinder-cwd-icon-group"),l=p.groupTitle.replace("{items}",i.items).replace("{num}",f),d=e.map(a,function(e){return"directory"==e.mime?1:null}).length,d?(m.push(h.replace(v,i.kind).replace(b,d==f?i.folders:i.folders+" "+d+", "+i.files+" "+(f-d))),m.push(h.replace(v,i.size).replace(b,p.spinner.replace("{text}",i.calc).replace("{name}","size"))),w=e.map(a,function(e){return e.hash})):(r=0,e.each(a,function(e,t){var n=parseInt(t.size);n>=0&&r>=0?r+=n:r="unknown"}),m.push(h.replace(v,i.kind).replace(b,i.files)),m.push(h.replace(v,i.size).replace(b,c.formatSize(r))));g=g.replace("{title}",l).replace("{content}",m.join("")),C=c.dialog(g,y),C.attr("id",k),o&&e("
").load(function(){C.find(".elfinder-cwd-icon").css("background",'url("'+o+'") center center no-repeat')}).attr("src",o),w.length&&c.request({data:{cmd:"size",targets:w},preventDefault:!0}).fail(function(){x(i.unknown,"size")}).done(function(e){var t=parseInt(e.size);x(t>=0?c.formatSize(t):i.unknown,"size")}),T.length&&e.each(T,function(e,t){try{t(s,c,C)}catch(n){c.debug("error",n)}})}},elFinder.prototype.commands.mkdir=function(){this.disableOnSearch=!0,this.updateOnSelect=!1,this.mime="directory",this.prefix="untitled folder",this.exec=e.proxy(this.fm.res("mixin","make"),this),this.shortcuts=[{pattern:"ctrl+shift+n"}],this.getstate=function(){return!this._disabled&&this.fm.cwd().write?0:-1}},elFinder.prototype.commands.mkfile=function(){this.disableOnSearch=!0,this.updateOnSelect=!1,this.mime="text/plain",this.prefix="untitled file.txt",this.exec=e.proxy(this.fm.res("mixin","make"),this),this.getstate=function(){return!this._disabled&&this.fm.cwd().write?0:-1}},elFinder.prototype.commands.netmount=function(){var t=this;this.alwaysEnabled=!0,this.updateOnSelect=!1,this.drivers=[],this.handlers={load:function(){this.drivers=this.fm.netDrivers}},this.getstate=function(){return this.drivers.length?0:-1},this.exec=function(){var n=t.fm,i=e.Deferred(),a=t.options,r=function(){var r,o={protocol:e("
").change(function(){var e=this.value;l.find(".elfinder-netmount-tr").hide(),l.find(".elfinder-netmount-tr-"+e).show(),"function"==typeof a[e].select&&a[e].select(n)})},s={title:n.i18n("netMountDialogTitle"),resizable:!1,modal:!0,destroyOnClose:!0,close:function(){delete t.dialog,"pending"==i.state()&&i.reject()},buttons:{}},l=e('
'),d=e("
");return l.append(e("
").append(e("
"+n.i18n("protocol")+" ")).append(e("
").append(o.protocol))),e.each(t.drivers,function(t,i){o.protocol.append('
'+n.i18n(i)+" "),e.each(a[i].inputs,function(t,a){a.attr("name",t),"hidden"!=a.attr("type")?(a.addClass("ui-corner-all elfinder-netmount-inputs-"+i),l.append(e("
").addClass("elfinder-netmount-tr elfinder-netmount-tr-"+i).append(e("
"+n.i18n(t)+" ")).append(e("
").append(a)))):(a.addClass("elfinder-netmount-inputs-"+i),d.append(a))})}),l.append(d),l.find(".elfinder-netmount-tr").hide(),s.buttons[n.i18n("btnMount")]=function(){var a=o.protocol.val(),r={cmd:"netmount",protocol:a};return e.each(l.find("input.elfinder-netmount-inputs-"+a),function(t,n){var i;i="function"==typeof n.val?e.trim(n.val()):e.trim(n.value),i&&(r[n.name]=i)}),r.host?(n.request({data:r,notify:{type:"netmount",cnt:1,hideCnt:!0}}).done(function(e){e.added&&e.added.length&&n.exec("open",e.added[0].hash),i.resolve()}).fail(function(e){i.reject(e)}),t.dialog.elfinderdialog("close"),void 0):n.trigger("error",{error:"errNetMountHostReq"})},s.buttons[n.i18n("btnCancel")]=function(){t.dialog.elfinderdialog("close")},r=n.dialog(l,s),r.ready(function(){o.protocol.change(),r.elfinderdialog("posInit")}),r};return n.bind("netmount",function(e){var t=e.data||null;t&&t.protocol&&a[t.protocol]&&"function"==typeof a[t.protocol].done&&a[t.protocol].done(n,t)}),t.dialog||(t.dialog=r()),i.promise()}},elFinder.prototype.commands.netunmount=function(){this.alwaysEnabled=!0,this.updateOnSelect=!1,this.drivers=[],this.handlers={load:function(){this.drivers=this.fm.netDrivers}},this.getstate=function(e){var t=this.fm;return e&&this.drivers.length&&!this._disabled&&t.file(e[0]).netkey?0:-1},this.exec=function(t){var n=this,i=this.fm,a=e.Deferred().fail(function(e){e&&i.error(e)}),r=i.file(t[0]);return this._disabled?a.reject():("pending"==a.state()&&i.confirm({title:n.title,text:i.i18n("confirmUnmount",r.name),accept:{label:"btnUnmount",callback:function(){i.request({data:{cmd:"netmount",protocol:"netunmount",host:r.netkey,user:r.hash,pass:"dum"},notify:{type:"netunmount",cnt:1,hideCnt:!0},preventFail:!0}).fail(function(e){a.reject(e)}).done(function(e){var t=i.root()==r.hash;if(e.removed=[r.hash],i.remove(e),t){var n=i.files();for(var o in n)if("directory"==i.file(o).mime){i.exec("open",o);break}}a.resolve()})}},cancel:{label:"btnCancel",callback:function(){a.reject()}}}),a)}},elFinder.prototype.commands.open=function(){this.alwaysEnabled=!0,this._handlers={dblclick:function(e){e.preventDefault(),this.exec()},"select enable disable reload":function(e){this.update("disable"==e.type?-1:void 0)}},this.shortcuts=[{pattern:"ctrl+down numpad_enter"+("mac"!=this.fm.OS&&" enter")}],this.getstate=function(t){var t=this.files(t),n=t.length;return 1==n?0:n&&!this.fm.UA.Mobile?e.map(t,function(e){return"directory"==e.mime?null:e}).length==n?0:-1:-1},this.exec=function(t,n){var i,a,r,o,s,l,d,c,u,p,h,f,m=this.fm,g=e.Deferred().fail(function(e){e&&m.error(e)}),v=this.files(t),b=v.length,y="object"==typeof n?n.thash:!1;if(!b&&!y)return g.reject();if(y||1==b&&(i=v[0])&&"directory"==i.mime)return y||!i||i.read?m.request({data:{cmd:"open",target:y||i.hash},notify:{type:"open",cnt:1,hideCnt:!0},syncOnFail:!0}):g.reject(["errOpen",i.name,"errPerm"]);if(v=e.map(v,function(e){return"directory"!=e.mime?e:null}),b!=v.length)return g.reject();try{u=new RegExp(m.option("dispInlineRegex"))}catch(w){u=!1}for(p=e("
").hide().appendTo(e("body")),h="string"==typeof p.get(0).download,b=v.length;b--;){if(i=v[b],!i.read)return g.reject(["errOpen",i.name,"errPerm"]);if(f=u&&i.mime.match(u),m.UA.Mobile||!f)if(a=m.openUrl(i.hash,!f),h)!f&&p.attr("download",i.name),p.attr("href",a).attr("target","_blank").get(0).click();else{var x=window.open(a);if(!x)return g.reject("errPopup")}else{s=d=Math.round(2*e(window).width()/3),l=c=Math.round(2*e(window).height()/3),parseInt(i.width)&&parseInt(i.height)?(s=parseInt(i.width),l=parseInt(i.height)):i.dim&&(r=i.dim.split("x"),s=parseInt(r[0]),l=parseInt(r[1])),d>=s&&c>=l?(d=s,c=l):s-d>l-c?c=Math.round(l*(d/s)):d=Math.round(s*(c/l)),o="width="+d+",height="+c;var x=window.open("","new_window",o+",top=50,left=50,scrollbars=yes,resizable=yes");if(!x)return g.reject("errPopup");var k=document.createElement("form");k.action=m.options.url,k.method="POST",k.target="new_window",k.style.display="none";var C=e.extend({},m.options.customData,{cmd:"file",target:i.hash});e.each(C,function(e,t){var n=document.createElement("input");n.name=e,n.value=t,k.appendChild(n)}),document.body.appendChild(k),k.submit(),x.focus()}}return p.remove(),g.resolve(t)}},elFinder.prototype.commands.opendir=function(){this.alwaysEnabled=!0,this.getstate=function(){var e,t=this.fm.selected(),n=t.length;return 1!==n?-1:(e=this.fm.getUI("cwd").parent(),e.hasClass("elfinder-search-result")?0:-1)},this.exec=function(t){var n,i=this.fm,a=e.Deferred(),r=this.files(t),o=r.length,s=null;return o&&r[0].phash?(n=r[0].phash,i.file(n)||(s=i.request({data:{cmd:"parents",target:n},syncOnFail:!1})),e.when(s).done(function(){i.trigger("searchend",{noupdate:!0}),i.request({data:{cmd:"open",target:n},notify:{type:"open",cnt:1,hideCnt:!0},syncOnFail:!1})}),a):a.reject()}},elFinder.prototype.commands.paste=function(){this.updateOnSelect=!1,this.handlers={changeclipboard:function(){this.update()}},this.shortcuts=[{pattern:"ctrl+v shift+insert"}],this.getstate=function(t){if(this._disabled)return-1;if(t){if(e.isArray(t)){if(1!=t.length)return-1;t=this.fm.file(t[0])}}else t=this.fm.cwd();return this.fm.clipboard().length&&"directory"==t.mime&&t.write?0:-1},this.exec=function(t){var n,i,a=this,r=a.fm,t=t?this.files(t)[0]:r.cwd(),o=r.clipboard(),s=o.length,l=s?o[0].cut:!1,d=l?"errMove":"errCopy",c=[],u=[],p=e.Deferred().fail(function(e){e&&r.error(e)}).always(function(){r.unlockfiles({files:e.map(o,function(e){return e.hash})})}),h=function(t){return t.length&&r._commands.duplicate?r.exec("duplicate",t):e.Deferred().resolve()},f=function(n){var i=e.Deferred(),o=[],s=function(t,n){for(var i=[],a=t.length;a--;)-1!==e.inArray(t[a].name,n)&&i.unshift(a);return i},d=function(e){var t=o[e],a=n[t],s=e==o.length-1;a&&r.confirm({title:r.i18n(l?"moveFiles":"copyFiles"),text:["errExists",a.name,"confirmRepl"],all:!s,accept:{label:"btnYes",callback:function(t){s||t?u(n):d(++e)}},reject:{label:"btnNo",callback:function(t){var i;if(t)for(i=o.length;e '),b=e("
"),y=e('
'),w=e('
').mousedown(function(t){var n=r.window,a=n.hasClass(p),s="scroll."+o.namespace,l=e(window);t.stopPropagation(),a?(n.css(n.data("position")).unbind("mousemove"),l.unbind(s).trigger(r.resize).unbind(r.resize),x.unbind("mouseenter").unbind("mousemove")):(n.data("position",{left:n.css("left"),top:n.css("top"),width:n.width(),height:n.height()}).css({width:"100%",height:"100%"}),e(window).bind(s,function(){n.css({left:parseInt(e(window).scrollLeft())+"px",top:parseInt(e(window).scrollTop())+"px"})}).bind(r.resize,function(){r.preview.trigger("changesize")}).trigger(s).trigger(r.resize),n.bind("mousemove",function(){x.stop(!0,!0).show().delay(3e3).fadeOut("slow")}).mousemove(),x.mouseenter(function(){x.stop(!0,!0).show()}).mousemove(function(e){e.stopPropagation()})),x.attr("style","").draggable(a?"destroy":{}),n.toggleClass(p),e(this).toggleClass(u+"-fullscreen-off");var d=n;i.is(".ui-resizable")&&(d=d.add(i)),e.fn.resizable&&!o.UA.Touch&&d.resizable(a?"enable":"disable").removeClass("ui-state-disabled")}),x=e('
').append(e('
').mousedown(function(){h(37)})).append(w).append(e('
').mousedown(function(){h(39)})).append('
').append(e('
').mousedown(function(){r.window.trigger("close")}));this.resize="resize."+o.namespace,this.info=e('
').append(b).append(y),this.preview=e('
').bind("change",function(){r.info.attr("style","").hide(),b.removeAttr("class").attr("style",""),y.html("")}).bind("update",function(t){var n,i=r.fm,a=(r.preview,t.file),o='{value}
';a?(!a.read&&t.stopImmediatePropagation(),r.window.data("hash",a.hash),r.preview.unbind("changesize").trigger("change").children().remove(),v.html(i.escape(a.name)),y.html(o.replace(/\{value\}/,i.escape(a.name))+o.replace(/\{value\}/,i.mime2kind(a))+("directory"==a.mime?"":o.replace(/\{value\}/,i.formatSize(a.size)))+o.replace(/\{value\}/,i.i18n("modify")+": "+i.formatDate(a))),b.addClass("elfinder-cwd-icon ui-corner-all "+i.mime2class(a.mime)),a.tmb&&e(" ").hide().appendTo(r.preview).load(function(){b.css("background",'url("'+n+'") center center no-repeat'),e(this).remove()}).attr("src",n=i.tmb(a.hash)),r.info.delay(100).fadeIn(10)):t.stopImmediatePropagation()}),this.window=e('
').click(function(e){e.stopPropagation()}).append(e('
').append(v).append(e(' ').mousedown(function(e){e.stopPropagation(),r.window.trigger("close")}))).append(this.preview.add(x)).append(r.info.hide()).draggable({handle:"div.elfinder-quicklook-titlebar"}).bind("open",function(){var e,t=r.window,n=r.value;r.closed()&&n&&(e=a.find("#"+o.cwdHash2Id(n.hash))).length&&(x.attr("style",""),c=l,e.trigger("scrolltoview"),t.css(f(e)).show().animate(m(),550,function(){c=d,r.update(1,r.value)}))}).bind("close",function(){var e=r.window,t=r.preview.trigger("change"),n=(r.value,a.find("#"+o.cwdHash2Id(e.data("hash")))),i=function(){c=s,e.hide(),t.children().remove(),r.update(0,r.value)};r.opened()&&(c=l,e.hasClass(p)&&w.mousedown(),n.length?e.animate(f(n),500,i):i())}),this.alwaysEnabled=!0,this.value=null,this.handlers={select:function(){this.update(void 0,this.fm.selectedFiles()[0])},error:function(){r.window.is(":visible")&&r.window.data("hash","").trigger("close")},"searchshow searchhide":function(){this.opened()&&this.window.trigger("close")}},this.shortcuts=[{pattern:"space"}],this.support={audio:{ogg:g('audio/ogg; codecs="vorbis"'),mp3:g("audio/mpeg;"),wav:g('audio/wav; codecs="1"'),m4a:g("audio/x-m4a;")||g("audio/aac;")},video:{ogg:g('video/ogg; codecs="theora"'),webm:g('video/webm; codecs="vp8, vorbis"'),mp4:g('video/mp4; codecs="avc1.42E01E"')||g('video/mp4; codecs="avc1.42E01E, mp4a.40.2"')}},this.closed=function(){return c==s},this.opened=function(){return c==d},this.init=function(){var s=this.options,l=this.window,d=this.preview;t=s.width>0?parseInt(s.width):450,n=s.height>0?parseInt(s.height):300,o.one("load",function(){i=o.getUI(),a=o.getUI("cwd"),l.appendTo("body").zIndex(100+i.zIndex()),e(document).keydown(function(e){27==e.keyCode&&r.opened()&&l.trigger("close")}),e.fn.resizable&&!o.UA.Touch&&l.resizable({handles:"se",minWidth:350,minHeight:120,resize:function(){d.trigger("changesize")}}),r.change(function(){r.opened()&&(r.value?d.trigger(e.Event("update",{file:r.value})):l.trigger("close"))}),e.each(o.commands.quicklook.plugins||[],function(e,t){"function"==typeof t&&new t(r)}),d.bind("update",function(){r.info.show()})})},this.getstate=function(){return 1==this.fm.selected().length?c==d?1:0:-1},this.exec=function(){this.enabled()&&this.window.trigger(this.opened()?"close":"open")},this.hideinfo=function(){this.info.stop(!0).hide()}},elFinder.prototype.commands.quicklook.plugins=[function(t){var n=["image/jpeg","image/png","image/gif"],i=t.preview;e.each(navigator.mimeTypes,function(t,i){var a=i.type;0===a.indexOf("image/")&&e.inArray(a,n)&&n.push(a)}),i.bind("update",function(a){var r,o=a.file;-1!==e.inArray(o.mime,n)&&(a.stopImmediatePropagation(),r=e(" ").hide().appendTo(i).load(function(){setTimeout(function(){var e=(r.width()/r.height()).toFixed(2);i.bind("changesize",function(){var t,n,a=parseInt(i.width()),o=parseInt(i.height());e<(a/o).toFixed(2)?(n=o,t=Math.floor(n*e)):(t=a,n=Math.floor(t/e)),r.width(t).height(n).css("margin-top",o>n?Math.floor((o-n)/2):0)}).trigger("changesize"),t.hideinfo(),r.fadeIn(100)},1)}).attr("src",t.fm.openUrl(o.hash)))})},function(t){var n=["text/html","application/xhtml+xml"],i=t.preview,a=t.fm;i.bind("update",function(r){var o,s=r.file;-1!==e.inArray(s.mime,n)&&(r.stopImmediatePropagation(),i.one("change",function(){"pending"==o.state()&&o.reject()}),o=a.request({data:{cmd:"get",target:s.hash,current:s.phash,conv:1},preventDefault:!0}).done(function(n){t.hideinfo(),doc=e('').appendTo(i)[0].contentWindow.document,doc.open(),doc.write(n.content),doc.close()}))})},function(t){var n=t.fm,i=n.res("mimes","text"),a=t.preview;a.bind("update",function(r){var o,s=r.file,l=s.mime;(0===l.indexOf("text/")||-1!==e.inArray(l,i))&&(r.stopImmediatePropagation(),a.one("change",function(){"pending"==o.state()&&o.reject()}),o=n.request({data:{cmd:"get",target:s.hash,conv:1},preventDefault:!0}).done(function(i){t.hideinfo(),e('").appendTo(a)}))})},function(t){var n=t.fm,i="application/pdf",a=t.preview,r=!1;n.UA.Safari&&"mac"==n.OS||n.UA.IE?r=!0:e.each(navigator.plugins,function(t,n){e.each(n,function(e,t){return t.type==i?!(r=!0):void 0})}),r&&a.bind("update",function(r){var o,s=r.file;s.mime==i&&(r.stopImmediatePropagation(),a.one("change",function(){o.unbind("load").remove()}),o=e('').hide().appendTo(a).load(function(){t.hideinfo(),o.show()}).attr("src",n.url(s.hash)))})},function(t){var n=t.fm,i="application/x-shockwave-flash",a=t.preview,r=!1;e.each(navigator.plugins,function(t,n){e.each(n,function(e,t){return t.type==i?!(r=!0):void 0})}),r&&a.bind("update",function(r){var o,s=r.file;s.mime==i&&(r.stopImmediatePropagation(),t.hideinfo(),a.append(o=e(' ')))})},function(t){var n,i=t.preview,a=!!t.options.autoplay,r={"audio/mpeg":"mp3","audio/mpeg3":"mp3","audio/mp3":"mp3","audio/x-mpeg3":"mp3","audio/x-mp3":"mp3","audio/x-wav":"wav","audio/wav":"wav","audio/x-m4a":"m4a","audio/aac":"m4a","audio/mp4":"m4a","audio/x-mp4":"m4a","audio/ogg":"ogg"};i.bind("update",function(o){var s=o.file,l=r[s.mime];t.support.audio[l]&&(o.stopImmediatePropagation(),n=e(' ').appendTo(i),a&&n[0].play())}).bind("change",function(){n&&n.parent().length&&(n[0].pause(),n.remove(),n=null)})},function(t){var n,i=t.preview,a=!!t.options.autoplay,r={"video/mp4":"mp4","video/x-m4v":"mp4","video/ogg":"ogg","application/ogg":"ogg","video/webm":"webm"};i.bind("update",function(o){var s=o.file,l=r[s.mime];t.support.video[l]&&(o.stopImmediatePropagation(),t.hideinfo(),n=e(' ').appendTo(i),a&&n[0].play())}).bind("change",function(){n&&n.parent().length&&(n[0].pause(),n.remove(),n=null)})},function(t){var n,i=t.preview,a=[];e.each(navigator.plugins,function(t,n){e.each(n,function(e,t){(0===t.type.indexOf("audio/")||0===t.type.indexOf("video/"))&&a.push(t.type)})}),i.bind("update",function(r){var o,s=r.file,l=s.mime;-1!==e.inArray(s.mime,a)&&(r.stopImmediatePropagation(),(o=0===l.indexOf("video/"))&&t.hideinfo(),n=e(' ').appendTo(i))}).bind("change",function(){n&&n.parent().length&&(n.remove(),n=null)})}],elFinder.prototype.commands.reload=function(){var t=this,n=!1;this.alwaysEnabled=!0,this.updateOnSelect=!0,this.shortcuts=[{pattern:"ctrl+shift+r f5"}],this.getstate=function(){return 0},this.init=function(){this.fm.bind("search searchend",function(e){n="search"==e.type})},this.fm.bind("contextmenu",function(){var n=t.fm;if(n.options.sync>=1e3){var i;t.extra={icon:"accept",node:e(" ").attr({title:n.i18n("autoSync")}).on("click",function(e){e.stopPropagation(),e.preventDefault(),i.parent().toggleClass("ui-state-disabled",n.options.syncStart).parent().removeClass("ui-state-hover"),n.options.syncStart=!n.options.syncStart,n.autoSync(n.options.syncStart?null:"stop")})},i=t.extra.node,i.ready(function(){setTimeout(function(){i.parent().toggleClass("ui-state-disabled",!n.options.syncStart)},10)})}}),this.exec=function(){var t=this.fm;if(!n){var i=t.sync(),a=setTimeout(function(){t.notify({type:"reload",cnt:1,hideCnt:!0}),i.always(function(){t.notify({type:"reload",cnt:-1})})},t.notifyDelay);return i.always(function(){clearTimeout(a),t.trigger("reload")})}e("div.elfinder-toolbar > div."+t.res("class","searchbtn")+" > span.ui-icon-search").click()}},elFinder.prototype.commands.rename=function(){this.shortcuts=[{pattern:"f2"+("mac"==this.fm.OS?" enter":"")}],this.getstate=function(e){var e=this.files(e);return this._disabled||1!=e.length||!e[0].phash||e[0].locked?-1:0},this.exec=function(t){var n,i=this.fm,a=i.getUI("cwd"),r=t||(i.selected().length?i.selected():!1)||[i.cwd().hash],o=r.length,s=i.file(r.shift()),l=".elfinder-cwd-filename",d=t&&t._type?t._type:i.selected().length?"files":"navbar",c="navbar"===d,u=i.cwd().hash==s.hash,p="files"===d&&"list"!=i.storage("view"),h=function(){p?(b.zIndex("").css("position",""),g.css("max-height","")):c||(b.css("width",""),b.parent("td").css("overflow",""))},f=e.Deferred().done(function(e){u&&i.exec("open",e.added[0].hash)}).fail(function(e){var t=m.parent(),n=i.escape(s.name);p&&(n=n.replace(/([_.])/g,"$1")),h(),c?m.replaceWith(n):t.length?(m.remove(),t.html(n)):(a.find("#"+i.cwdHash2Id(s.hash)).find(l).html(n),setTimeout(function(){a.find("#"+i.cwdHash2Id(s.hash)).click()},50)),e&&i.error(e)}).always(function(){i.enable()}),m=e(p?"":' ').on("keyup text",function(){p?(this.style.height="1px",this.style.height=this.scrollHeight+"px"):n&&(this.style.width=n+"px",this.scrollWidth>n&&(this.style.width=this.scrollWidth+10+"px"))}).keydown(function(t){t.stopPropagation(),t.stopImmediatePropagation(),t.keyCode==e.ui.keyCode.ESCAPE?f.reject():t.keyCode==e.ui.keyCode.ENTER&&m.blur()}).mousedown(function(e){e.stopPropagation()}).click(function(e){e.stopPropagation()}).dblclick(function(e){e.stopPropagation(),e.preventDefault()}).blur(function(){var t=e.trim(m.val()),n=(m.parent(),!0);if(b.length){if(m[0].setSelectionRange&&m[0].setSelectionRange(0,0),t==s.name)return f.reject();if(i.options.validName&&i.options.validName.test)try{n=i.options.validName.test(t)}catch(r){n=!1}if(!t||".."===t||!n)return i.error("errInvName"),!1;if(i.fileByName(t,s.phash))return i.error(["errExists",t]),!1;h(),(c?b:g).html(i.escape(t)),i.lockfiles({files:[s.hash]}),i.request({data:{cmd:"rename",target:s.hash,name:t},notify:{type:"rename",cnt:1}}).fail(function(){f.reject(),i.sync()}).done(function(e){if(f.resolve(e),!c&&e&&e.added&&e.added[0]){var t=a.find("#"+i.cwdHash2Id(e.added[0].hash));t.length&&t.trigger("scrolltoview")}}).always(function(){i.unlockfiles({files:[s.hash]})})}}),g=c?e("#"+i.navHash2Id(s.hash)).contents().filter(function(){return 3==this.nodeType&&e(this).parent().attr("id")===i.navHash2Id(s.hash)}):a.find("#"+i.cwdHash2Id(s.hash)).find(l),v=s.name.replace(/\.((tar\.(gz|bz|bz2|z|lzo))|cpio\.gz|ps\.gz|xcf\.(gz|bz2)|[a-z0-9]{1,4})$/gi,""),b=g.parent();return c?g.replaceWith(m.val(s.name)):(p?(b.zIndex(b.zIndex()+1).css("position","relative"),g.css("max-height","none")):c||(n=b.width(),b.width(n-15),b.parent("td").css("overflow","visible")),g.empty().append(m.val(s.name))),o>1||this.getstate([s.hash])<0?f.reject():s&&g.length?s.locked?f.reject(["errLocked",s.name]):(i.one("select",function(){m.parent().length&&s&&-1===e.inArray(s.hash,i.selected())&&m.blur()}),m.trigger("keyup"),m.select().focus(),m[0].setSelectionRange&&m[0].setSelectionRange(0,v.length),f):f.reject("errCmdParams",this.title)}},elFinder.prototype.commands.resize=function(){this.updateOnSelect=!1,this.getstate=function(){var e=this.fm.selectedFiles();return!this._disabled&&1==e.length&&e[0].read&&e[0].write&&-1!==e[0].mime.indexOf("image/")?0:-1},this.exec=function(t){var n,i,a=this.fm,r=this.files(t),o=e.Deferred(),s=function(t,n){var i="image/jpeg"===t.mime,r=e('
'),s=' ',l='
',d='
',c=e('
'),u=e('
'),p=e(''+a.i18n("ntfloadimg")+"
"),h=e('
'),f=e('
'),m=e('
'),g=e('
'),v='
',b='
',y=' ',w=e('
'),x=e(b).attr("title",a.i18n("rotate-cw")).append(e(' ').click(function(){B-=90,nt.update(B)
+})),k=e(b).attr("title",a.i18n("rotate-ccw")).append(e(' ').click(function(){B+=90,nt.update(B)})),C=e(" "),T=e('
'),I=e('
').append(''+a.i18n("resize")+" ").append(''+a.i18n("crop")+" ").append(''+a.i18n("rotate")+" "),F=e("input",I).attr("disabled","disabled").change(function(){var t=e("input:checked",I).val();Z(),it(!0),at(!0),rt(!0),"resize"==t?(m.show(),w.hide(),g.hide(),it()):"crop"==t?(w.hide(),m.hide(),g.show(),at()):"rotate"==t&&(m.hide(),g.hide(),w.show(),rt())}),M=e(' ').change(function(){q=!!M.prop("checked"),et.fixHeight(),it(!0),it()}),P=e(s).change(function(){var e=parseInt(P.val()),t=parseInt(q?Math.round(e/H):S.val());e>0&&t>0&&(et.updateView(e,t),S.val(t))}),S=e(s).change(function(){var e=parseInt(S.val()),t=parseInt(q?Math.round(e*H):P.val());t>0&&e>0&&(et.updateView(t,e),P.val(t))}),z=e(s).change(function(){tt.updateView()}),A=e(s).change(function(){tt.updateView()}),D=e(s).change(function(){tt.updateView()}),O=e(s).change(function(){tt.updateView()}),U=i?e(s).val(a.option("jpgQuality")).addClass("quality").on("blur",function(){var e=Math.min(100,Math.max(1,parseInt(this.value)));r.find("input.quality").val(e)}):null,E=e(' ').change(function(){nt.update()}),j=e('
').slider({min:0,max:360,value:E.val(),animate:!0,change:function(e,t){t.value!=j.slider("value")&&nt.update(t.value)},slide:function(e,t){nt.update(t.value,!1)}}),H=1,R=1,_=0,N=0,q=!0,L=0,$=0,V=0,W=0,B=0,K=e(" ").load(function(){p.remove(),_=K.width(),N=K.height(),H=_/N,et.updateView(_,N),h.append(K.show()).show(),P.val(_),S.val(N);var t=Math.min(L,$)/Math.sqrt(Math.pow(_,2)+Math.pow(N,2));V=_*t,W=N*t,F.button("enable"),c.find("input,select").removeAttr("disabled").filter(":text").keydown(function(t){var n,i=t.keyCode;return t.stopPropagation(),i>=37&&40>=i||i==e.ui.keyCode.BACKSPACE||i==e.ui.keyCode.DELETE||65==i&&(t.ctrlKey||t.metaKey)||27==i?void 0:(9==i&&(n=e(this).parent()[t.shiftKey?"prevAll":"nextAll"]("div.elfinder-resize-row").children(":text"),n.length?n[0].focus():e(this).parent().parent().find(":text:"+(t.shiftKey?"last":"first")).focus()),13==i?(a.confirm({title:e("input:checked",I).val(),text:"confirmReq",accept:{label:"btnApply",callback:function(){ot()}},cancel:{label:"btnCancel",callback:function(){}}}),void 0):(i>=48&&57>=i||i>=96&&105>=i||t.preventDefault(),void 0))}).filter(":first").focus(),it(),T.hover(function(){T.toggleClass("ui-state-hover")}).click(Z)}).error(function(){p.text("Unable to load image").css("background","transparent")}),J=e("
"),G=e(" "),X=e("
"),Y=e(" "),Q=function(e){return i?8*Math.round(e/8):Math.round(e)},Z=function(){P.val(_),S.val(N),et.updateView(_,N)},et={update:function(){P.val(Q(K.width()/R)),S.val(Q(K.height()/R))},updateView:function(e,t){e>L||t>$?e/L>t/$?(R=L/e,K.width(L).height(Math.ceil(t*R))):(R=$/t,K.height($).width(Math.ceil(e*R))):K.width(e).height(t),R=K.width()/e,C.text("1 : "+(1/R).toFixed(2)),et.updateHandle()},updateHandle:function(){h.width(K.width()).height(K.height())},fixHeight:function(){var e,t;q&&(e=P.val(),t=Math.round(e/H),et.updateView(e,t),S.val(t))}},tt={update:function(){D.val(Q((f.data("w")||f.width())/R)),O.val(Q((f.data("h")||f.height())/R)),z.val(Math.round(((f.data("x")||f.offset().left)-G.offset().left)/R)),A.val(Math.round(((f.data("y")||f.offset().top)-G.offset().top)/R))},updateView:function(){var e=parseInt(z.val())*R+G.offset().left,t=parseInt(A.val())*R+G.offset().top,n=D.val()*R,i=O.val()*R;f.data({x:e,y:t,w:n,h:i}).width(Math.round(n)).height(Math.round(i)).offset({left:Math.round(e),top:Math.round(t)}),X.width(f.width()).height(f.height())},resize_update:function(){f.data({w:null,h:null}),tt.update(),X.width(f.width()).height(f.height())},drag_update:function(){f.data({x:null,y:null}),tt.update()}},nt={mouseStartAngle:0,imageStartAngle:0,imageBeingRotated:!1,update:function(e,t){"undefined"==typeof e&&(B=e=parseInt(E.val())),"undefined"==typeof t&&(t=!0),!t||a.UA.Opera||a.UA.ltIE8?Y.rotate(e):Y.animate({rotate:e+"deg"}),e%=360,0>e&&(e+=360),E.val(parseInt(e)),j.slider("value",E.val())},execute:function(e){if(nt.imageBeingRotated){var t=nt.getCenter(Y),n=e.pageX-t[0],i=e.pageY-t[1],a=Math.atan2(i,n),r=a-nt.mouseStartAngle+nt.imageStartAngle;return r=Math.round(180*parseFloat(r)/Math.PI),e.shiftKey&&(r=15*Math.round((r+6)/15)),Y.rotate(r),r%=360,0>r&&(r+=360),E.val(r),j.slider("value",E.val()),!1}},start:function(t){nt.imageBeingRotated=!0;var n=nt.getCenter(Y),i=t.pageX-n[0],a=t.pageY-n[1];return nt.mouseStartAngle=Math.atan2(a,i),nt.imageStartAngle=parseFloat(Y.rotate())*Math.PI/180,e(document).mousemove(nt.execute),!1},stop:function(){return nt.imageBeingRotated?(e(document).unbind("mousemove",nt.execute),setTimeout(function(){nt.imageBeingRotated=!1},10),!1):void 0},getCenter:function(){var e=Y.rotate();Y.rotate(0);var t=Y.offset(),n=t.left+Y.width()/2,i=t.top+Y.height()/2;return Y.rotate(e),Array(n,i)}},it=function(t){e.fn.resizable&&(t?(h.filter(":ui-resizable").resizable("destroy"),h.hide()):(h.show(),h.resizable({alsoResize:K,aspectRatio:q,resize:et.update,stop:et.fixHeight})))},at=function(t){e.fn.draggable&&e.fn.resizable&&(t?(f.filter(":ui-resizable").resizable("destroy").filter(":ui-draggable").draggable("destroy"),J.hide()):(J.show().width(K.width()).height(K.height()),G.width(K.width()).height(K.height()),X.width(K.width()).height(K.height()),f.width(G.width()).height(G.height()).offset(G.offset()).resizable({containment:J,resize:tt.resize_update,handles:"all"}).draggable({handle:X,containment:G,drag:tt.drag_update}),tt.update()))},rt=function(t){e.fn.draggable&&e.fn.resizable&&(t?Y.hide():Y.show().width(V).height(W).css("margin-top",($-W)/2+"px").css("margin-left",(L-V)/2+"px"))},ot=function(){var n,i,s,l,d,c,u=e("input:checked",I).val();if("resize"==u)n=parseInt(P.val())||0,i=parseInt(S.val())||0;else if("crop"==u)n=parseInt(D.val())||0,i=parseInt(O.val())||0,s=parseInt(z.val())||0,l=parseInt(A.val())||0;else if("rotate"==u){if(n=_,i=N,d=parseInt(E.val())||0,0>d||d>360)return a.error("Invalid rotate degree");if(0==d||360==d)return a.error("Image dose not rotated")}if(c=U?parseInt(U.val()):0,"rotate"!=u){if(0>=n||0>=i)return a.error("Invalid image size");if(n==_&&i==N)return a.error("Image size not changed")}r.elfinderdialog("close"),a.request({data:{cmd:"resize",target:t.hash,width:n,height:i,x:s,y:l,degree:d,quality:c,mode:u},notify:{type:"resize",cnt:1}}).fail(function(e){o.reject(e)}).done(function(){o.resolve()})},st={},lt="elfinder-resize-handle-hline",dt="elfinder-resize-handle-vline",ct="elfinder-resize-handle-point",ut=a.url(t.hash);Y.mousedown(nt.start),e(document).mouseup(nt.stop),m.append(e(l).append(e(d).text(a.i18n("width")),P,T),e(l).append(e(d).text(a.i18n("height")),S),e(l).append(e(" ").text(a.i18n("aspectRatio")).prepend(M)),U?e(l).append(e(d).text(a.i18n("quality")),U,e(" ").text(" (1-100)")):e(),e(l).append(e(d).text(a.i18n("scale")),C)),g.append(e(l).append(e(d).text("X"),z),e(l).append(e(d).text("Y")).append(A),e(l).append(e(d).text(a.i18n("width")),D),e(l).append(e(d).text(a.i18n("height")),O),U?e(l).append(e(d).text(a.i18n("quality")),U.clone(!0),e(" ").text(" (1-100)")):e()),w.append(e(l).append(e(d).text(a.i18n("rotate")),E,e(" ").text(a.i18n("degree")),e(v).append(x,e(y),k)),e(l).css("height","20px").append(j),U?e(l).append(e(d).text(a.i18n("quality")),U.clone(!0),e(" ").text(" (1-100)")):e()),r.append(I).on("resize",function(e){e.stopPropagation()}),c.append(e(l),m,g.hide(),w.hide()).find("input,select").attr("disabled","disabled"),h.append('
','
','
','
','
','
','
'),u.append(p).append(h.hide()).append(K.hide()),f.css("position","absolute").append('
','
','
','
','
','
','
','
','
','
','
','
'),u.append(J.css("position","absolute").hide().append(G,f.append(X))),u.append(Y.hide()),u.css("overflow","hidden"),r.append(u,c),st[a.i18n("btnApply")]=ot,st[a.i18n("btnCancel")]=function(){r.elfinderdialog("close")},a.dialog(r,{title:a.escape(t.name),width:650,resizable:!1,destroyOnClose:!0,buttons:st,open:function(){var t=r.width()-20;u.width()>t&&u.width(t),u.zIndex(1+e(this).parent().zIndex()),L=u.width()-(h.outerWidth()-h.width()),$=u.height()-(h.outerHeight()-h.height()),K.attr("src",ut+(-1===ut.indexOf("?")?"?":"&")+"_="+Math.random()),G.attr("src",K.attr("src")),Y.attr("src",K.attr("src"))}}).attr("id",n),a.UA.ltIE8&&e(".elfinder-dialog").css("filter",""),T.css("left",P.position().left+P.width()+12),X.css({opacity:.2,"background-color":"#fff",position:"absolute"}),f.css("cursor","move"),f.find(".elfinder-resize-handle-point").css({"background-color":"#fff",opacity:.5,"border-color":"#000"}),Y.css("cursor","pointer"),I.buttonset()};return r.length&&-1!==r[0].mime.indexOf("image/")?(n="resize-"+a.namespace+"-"+r[0].hash,i=a.getUI().find("#"+n),i.length?(i.elfinderdialog("toTop"),o.resolve()):(s(r[0],n),o)):o.reject()}},function(e){var t=function(e,t){var n=0;for(n in t)if("undefined"!=typeof e[t[n]])return t[n];return e[t[n]]="",t[n]};if(e.cssHooks.rotate={get:function(t){return e(t).rotate()},set:function(t,n){return e(t).rotate(n),n}},e.cssHooks.transform={get:function(e){var n=t(e.style,["WebkitTransform","MozTransform","OTransform","msTransform","transform"]);return e.style[n]},set:function(e,n){var i=t(e.style,["WebkitTransform","MozTransform","OTransform","msTransform","transform"]);return e.style[i]=n,n}},e.fn.rotate=function(e){if("undefined"==typeof e){if(window.opera){var t=this.css("transform").match(/rotate\((.*?)\)/);return t&&t[1]?Math.round(180*parseFloat(t[1])/Math.PI):0}var t=this.css("transform").match(/rotate\((.*?)\)/);return t&&t[1]?parseInt(t[1]):0}return this.css("transform",this.css("transform").replace(/none|rotate\(.*?\)/,"")+"rotate("+parseInt(e)+"deg)"),this},e.fx.step.rotate=function(t){0==t.state&&(t.start=e(t.elem).rotate(),t.now=t.start),e(t.elem).rotate(t.now)},"undefined"==typeof window.addEventListener&&"undefined"==typeof document.getElementsByClassName){var n=function(e){for(var t=e,n=t.offsetLeft,i=t.offsetTop;t.offsetParent&&(t=t.offsetParent,t==document.body||"static"==t.currentStyle.position);)t!=document.body&&t!=document.documentElement&&(n-=t.scrollLeft,i-=t.scrollTop),n+=t.offsetLeft,i+=t.offsetTop;return{x:n,y:i}},i=function(e){if("static"==e.currentStyle.position){var t=n(e);e.style.position="absolute",e.style.left=t.x+"px",e.style.top=t.y+"px"}},a=function(e,t){var n,a=1,r=1,o=1,s=1;if("undefined"!=typeof e.style.msTransform)return!0;i(e),n=t.match(/rotate\((.*?)\)/);var l=n&&n[1]?parseInt(n[1]):0;l%=360,0>l&&(l=360+l);var d=l*Math.PI/180,c=Math.cos(d),u=Math.sin(d);a*=c,r*=-u,o*=u,s*=c,e.style.filter=(e.style.filter||"").replace(/progid:DXImageTransform\.Microsoft\.Matrix\([^)]*\)/,"")+("progid:DXImageTransform.Microsoft.Matrix(M11="+a+",M12="+r+",M21="+o+",M22="+s+",FilterType='bilinear',sizingMethod='auto expand')");var p=parseInt(e.style.width||e.width||0),h=parseInt(e.style.height||e.height||0),d=l*Math.PI/180,f=Math.abs(Math.cos(d)),m=Math.abs(Math.sin(d)),g=(p-(p*f+h*m))/2,v=(h-(p*m+h*f))/2;return e.style.marginLeft=Math.floor(g)+"px",e.style.marginTop=Math.floor(v)+"px",!0},r=e.cssHooks.transform.set;e.cssHooks.transform.set=function(e,t){return r.apply(this,[e,t]),a(e,t),t}}}(jQuery),elFinder.prototype.commands.rm=function(){this.shortcuts=[{pattern:"delete ctrl+backspace"}],this.getstate=function(t){var n=this.fm;return t=t||n.selected(),!this._disabled&&t.length&&e.map(t,function(e){var t=n.file(e);return t&&t.phash&&!t.locked?e:null}).length==t.length?0:-1},this.exec=function(t){var n,i,a,r,o,s,l,d,c=this,u=this.fm,p=e.Deferred().fail(function(e){e&&u.error(e)}),h=this.files(t),f=h.length,m=(u.cwd().hash,'');return!f||this._disabled?p.reject():(e.each(h,function(e,t){return t.phash?t.locked?!p.reject(["errLocked",t.name]):void 0:!p.reject(["errRm",t.name,"errPerm"])}),"pending"==p.state()&&(n=this.hashes(t),f=h.length,l=[],f>1?(e.map(h,function(e){return"directory"==e.mime?1:null}).length||(o=0,e.each(h,function(e,t){if(!t.size||"unknown"==t.size)return o="unknown",!1;var n=parseInt(t.size);n>=0&&o>=0&&(o+=n)}),l.push(u.i18n("size")+": "+u.formatSize(o))),i=[e(m.replace("{class}","elfinder-cwd-icon-group").replace("{title}",""+u.i18n("items")+": "+f+" ").replace("{desc}",l.join(" ")))]):(a=h[0],a.tmb&&(s=u.option("tmbUrl")+a.tmb),a.size&&l.push(u.i18n("size")+": "+u.formatSize(a.size)),l.push(u.i18n("modify")+": "+u.formatDate(a)),r=u.escape(a.i18||a.name).replace(/([_.])/g,"$1"),i=[e(m.replace("{class}",u.mime2class(a.mime)).replace("{title}",""+r+" ").replace("{desc}",l.join(" ")))]),i.push("confirmRm"),u.lockfiles({files:n}),d=u.confirm({title:c.title,text:i,accept:{label:"btnRm",callback:function(){u.request({data:{cmd:"rm",targets:n},notify:{type:"rm",cnt:f},preventFail:!0}).fail(function(e){p.reject(e)}).done(function(e){p.done(e)}).always(function(){u.unlockfiles({files:n})})}},cancel:{label:"btnCancel",callback:function(){u.unlockfiles({files:n}),u.selectfiles({files:n}),p.reject()}}}),s&&e(" ").load(function(){d.find(".elfinder-cwd-icon").css("background",'url("'+s+'") center center no-repeat')}).attr("src",s)),p)}},elFinder.prototype.commands.search=function(){this.title="Find files",this.options={ui:"searchbutton"},this.alwaysEnabled=!0,this.updateOnSelect=!1,this.getstate=function(){return 0},this.exec=function(t,n,i){var a=this.fm;return"string"==typeof t&&t?("object"==typeof n&&(i=n.mime||"",n=n.target||""),n=n?n:"",i=i?e.trim(i).replace(","," ").split(" "):[],e.each(i,function(){return e.trim(this)}),a.trigger("searchstart",{query:t,target:n,mimes:i}),a.request({data:{cmd:"search",q:t,target:n,mimes:i},notify:{type:"search",cnt:1,hideCnt:!0}})):(a.getUI("toolbar").find("."+a.res("class","searchbtn")+" :text").focus(),e.Deferred().reject())}},elFinder.prototype.commands.sort=function(){var t,n=this,i=n.fm;this.options={ui:"sortbutton"},i.bind("open sortchange",function(){n.variants=[],e.each(i.sortRules,function(e){var t={type:e,order:e==i.sortType?"asc"==i.sortOrder?"desc":"asc":i.sortOrder},a=e==i.sortType?"asc"==t.order?"n":"s":"";n.variants.push([t,(a?' ':"")+" "+i.i18n("sort"+e)])})}),i.bind("open sortchange viewchange search searchend",function(){t&&clearTimeout(t),t=setTimeout(function(){var t=e(i.cwd).find("div.elfinder-cwd-wrapper-list table");t.length&&e.each(i.sortRules,function(a){var r=t.find("thead tr td.elfinder-cwd-view-th-"+a);if(r.length){var o,s=a==i.sortType,l={type:a,order:s?"asc"==i.sortOrder?"desc":"asc":i.sortOrder};s&&(r.addClass("ui-state-active"),o="asc"==i.sortOrder?"n":"s",e(' ').appendTo(r)),e(r).on("click",function(e){e.stopPropagation(),n.exec([],l)}).hover(function(){e(this).addClass("ui-state-hover")},function(){e(this).removeClass("ui-state-hover")})}})},100)}),this.getstate=function(){return 0},this.exec=function(t,n){var i=this.fm,a=e.extend({type:i.sortType,order:i.sortOrder,stick:i.sortStickFolders},n);return this.fm.setSort(a.type,a.order,a.stick),e.Deferred().resolve()}},elFinder.prototype.commands.up=function(){this.alwaysEnabled=!0,this.updateOnSelect=!1,this.shortcuts=[{pattern:"ctrl+up"}],this.getstate=function(){return this.fm.cwd().phash?0:-1},this.exec=function(){return this.fm.cwd().phash?this.fm.exec("open",this.fm.cwd().phash):e.Deferred().reject()}},elFinder.prototype.commands.upload=function(){var t=this.fm.res("class","hover");this.disableOnSearch=!0,this.updateOnSelect=!1,this.shortcuts=[{pattern:"ctrl+u"}],this.getstate=function(e){var t,n=this.fm,e=n.directUploadTarget?[n.directUploadTarget]:e||[n.cwd().hash];return this._disabled||1!=e.length||(t=n.file(e[0])),t&&"directory"==t.mime&&t.write?0:-1},this.exec=function(n){var i,a,r,o,s,l,d,c=this.fm,u=n&&n instanceof Array?n:null,p=!u&&n&&n.target?[n.target]:u,h=function(e){c.upload(e).fail(function(e){m.reject(e)}).done(function(e){var t=c.getUI("cwd");if(m.resolve(e),e&&e.added&&e.added[0]){var n=t.find("#"+c.cwdHash2Id(e.added[0].hash));n.length&&n.trigger("scrolltoview")}})},f=function(e){i.elfinderdialog("close"),u&&(e.target=u[0]),h(e)},m=e.Deferred();return this.getstate(p)<0?m.reject():(l=function(e){e.stopPropagation(),e.preventDefault();var t=!1,n="",i=null,a="",r=null,o=e._target||null;try{i=e.dataTransfer.getData("elfinderfrom")}catch(e){}if(i&&(a=window.location.href+c.cwd().hash,!o&&i===a||o===a))return m.reject(),void 0;try{r=e.dataTransfer.getData("text/html")}catch(e){}r?(t=[r],n="html"):e.dataTransfer&&e.dataTransfer.items&&e.dataTransfer.items.length?(t=e.dataTransfer,n="data"):e.dataTransfer&&e.dataTransfer.files&&e.dataTransfer.files.length?(t=e.dataTransfer.files,n="files"):(r=e.dataTransfer.getData("text"))&&(t=[r],n="text"),t?h({files:t,type:n,target:o}):m.reject()},!u&&n?(n.input||n.files?(n.type="files",h(n)):n.dropEvt&&l(n.dropEvt),m):(d=function(t){var n,t=t.originalEvent||t,i=[],a=[];if(t.clipboardData){if(t.clipboardData.items&&t.clipboardData.items.length){a=t.clipboardData.items;for(var r=0;r ]*>/gi," "),n=t.match(/<[^>]+>/)?"html":"text";o.innerHTML="",f({files:[t],type:n})}},1)},a=e(' ').change(function(){f({input:a[0],type:"files"})}).on("dragover",function(e){e.originalEvent.dataTransfer.dropEffect="copy"}),r=e(''+c.i18n("selectForUpload")+"
").append(e("").append(a)).hover(function(){r.toggleClass(t)}),i=e('
').append(r),s=e(''+c.i18n("dropFilesBrowser")+"
").on("paste drop",function(e){d(e)}).on("mousedown click",function(){e(this).focus()}).on("focus",function(){this.innerHTML=""}).on("dragenter mouseover",function(){s.addClass(t)}).on("dragleave mouseout",function(){s.removeClass(t)}),c.dragUpload?(o=e(''+c.i18n("dropPasteFiles")+"
").on("paste",function(e){d(e)}).on("mousedown click",function(){e(this).focus()}).on("focus",function(){this.innerHTML=""}).on("mouseover",function(){e(this).addClass(t)}).on("mouseout",function(){e(this).removeClass(t)}).prependTo(i).after(''+c.i18n("or")+"
")[0],o.addEventListener("dragenter",function(n){n.stopPropagation(),n.preventDefault(),e(o).addClass(t)},!1),o.addEventListener("dragleave",function(n){n.stopPropagation(),n.preventDefault(),e(o).removeClass(t)},!1),o.addEventListener("dragover",function(n){n.stopPropagation(),n.preventDefault(),n.dataTransfer.dropEffect="copy",e(o).addClass(t)},!1),o.addEventListener("drop",function(e){i.elfinderdialog("close"),u&&(e._target=u[0]),l(e)},!1)):s.prependTo(i).after(''+c.i18n("or")+"
")[0],c.dialog(i,{title:this.title+(u?" - "+c.escape(c.file(u[0]).name):""),modal:!0,resizable:!1,destroyOnClose:!0}),m))}},elFinder.prototype.commands.view=function(){this.value=this.fm.viewType,this.alwaysEnabled=!0,this.updateOnSelect=!1,this.options={ui:"viewbutton"},this.getstate=function(){return 0},this.exec=function(){var e=this.fm.storage("view","list"==this.value?"icons":"list");this.fm.viewchange(),this.update(void 0,e)}}}(jQuery);
\ No newline at end of file
diff --git a/js/proxy/elFinderSupportVer1.js b/js/proxy/elFinderSupportVer1.js
index 6c33dc64c..4b0157b21 100644
--- a/js/proxy/elFinderSupportVer1.js
+++ b/js/proxy/elFinderSupportVer1.js
@@ -130,8 +130,6 @@ window.elFinderSupportVer1 = function(upload) {
})
return dfrd;
-
- return $.ajax(opts);
}
// fix old connectors errors messages as possible
diff --git a/php/elFinder.class.php b/php/elFinder.class.php
index 91e28430a..94b44311c 100644
--- a/php/elFinder.class.php
+++ b/php/elFinder.class.php
@@ -2222,6 +2222,7 @@ class elFinder {
foreach ($args['targets'] as $hash) {
if (($volume = $this->volume($hash)) != false
&& ($info = $volume->file($hash)) != false) {
+ $info['path'] = $volume->path($hash);
$files[] = $info;
}
}