: str_replace(): Passing null to parameter #2 ($replace) of type array|string is deprecated in
* @class elFinder command "empty".
elFinder.prototype.commands.empty = function() {
selFiles = function(select) {
var sel = self.files(select);
this.linkedCmds = ['rm'];
// lazy assign to make possible to become superclass
this.getstate = function(select) {
var sel = selFiles(select),
filter = function(files) {
return jQuery.grep(files, function(f) {
fres = fres && f.read && f.write && f.mime === 'directory' ? true : false;
return filter(sel).length == cnt ? 0 : -1;
this.exec = function(hashes) {
var dirs = selFiles(hashes),
var data = {changed: {}};
fm.toast({msg: fm.i18n(['"'+success.join('", ')+'"', 'complete', fm.i18n('cmdempty')])});
jQuery.each(dirs, function(i, dir) {
data.changed[dir.hash] = dir;
fm.trigger('selectfiles', {files: jQuery.map(dirs, function(d) { return cwd === d.phash? d.hash : null; })});
if (typeof res === 'number') {
success.push(dirs[res].name);
(--cnt < 1) && dfrd[success.length? 'resolve' : 'reject']();
jQuery.each(dirs, function(i, dir) {
if (!(dir.write && dir.mime === 'directory')) {
done(['errEmpty', dir.name, 'errPerm']);
if (!fm.isCommandEnabled('rm', dir.hash)) {
done(['errCmdNoSupport', '"rm"']);
tm = setTimeout(function() {
fm.notify({type : 'search', cnt : 1, hideCnt : cnt > 1? false : true});
data : {cmd : 'open', target : dir.hash},
if (fm.ui.notify.children('.elfinder-notify-search').length) {
fm.notify({type : 'search', cnt : -1, hideCnt : cnt > 1? false : true});
if (data && data.files && data.files.length) {
if (data.files.length > fm.maxTargets) {
done(['errEmpty', dir.name, 'errMaxTargets', fm.maxTargets]);
jQuery.each(data.files, function(i, f) {
if (!f.write || f.locked) {
done(['errEmpty', dir.name, 'errRm', f.name, 'errPerm']);
fm.exec('rm', targets, { _userAction : true, addTexts : [ fm.i18n('folderToEmpty', dir.name) ] })
fm.trigger('unselectfiles', {files: fm.selected()});
done(fm.parseError(error) || '');
.done(function() { done(i); });
fm.toast({ mode: 'warning', msg: fm.i18n('filderIsEmpty', dir.name)});
}).fail(function(error) {
done(fm.parseError(error) || '');