Edit File by line

Deprecated: str_replace(): Passing null to parameter #2 ($replace) of type array|string is deprecated in /home/sportsfever/public_html/filemanger/function.php on line 93
/home/sportsfe.../httpdocs/wp-conte.../plugins/wp-file-.../lib/js/commands
File: preference.js
/**
[0] Fix | Delete
* @class elFinder command "preference"
[1] Fix | Delete
* "Preference" dialog
[2] Fix | Delete
*
[3] Fix | Delete
* @author Naoki Sawada
[4] Fix | Delete
**/
[5] Fix | Delete
elFinder.prototype.commands.preference = function() {
[6] Fix | Delete
var self = this,
[7] Fix | Delete
fm = this.fm,
[8] Fix | Delete
r = 'replace',
[9] Fix | Delete
tab = '<li class="' + fm.res('class', 'tabstab') + ' elfinder-preference-tab-{id}"><a href="#'+fm.namespace+'-preference-{id}" id="'+fm.namespace+'-preference-tab-{id}" class="ui-tabs-anchor {class}">{title}</a></li>',
[10] Fix | Delete
base = jQuery('<div class="ui-tabs ui-widget ui-widget-content ui-corner-all elfinder-preference">'),
[11] Fix | Delete
ul = jQuery('<ul class="ui-tabs-nav ui-helper-reset ui-helper-clearfix ui-widget-header ui-corner-top">'),
[12] Fix | Delete
tabs = jQuery('<div class="elfinder-preference-tabs ui-tabs-panel ui-widget-content ui-corner-bottom"></div>'),
[13] Fix | Delete
sep = '<div class="elfinder-preference-separator"></div>',
[14] Fix | Delete
selfUrl = jQuery('base').length? document.location.href.replace(/#.*$/, '') : '',
[15] Fix | Delete
selectTab = function(tab) {
[16] Fix | Delete
jQuery('#'+fm.namespace+'-preference-tab-'+tab).trigger('mouseover').trigger('click');
[17] Fix | Delete
openTab = tab;
[18] Fix | Delete
},
[19] Fix | Delete
clTabActive = fm.res('class', 'tabsactive'),
[20] Fix | Delete
build = function() {
[21] Fix | Delete
var cats = self.options.categories || {
[22] Fix | Delete
'language' : ['language'],
[23] Fix | Delete
'theme' : ['theme'],
[24] Fix | Delete
'toolbar' : ['toolbarPref'],
[25] Fix | Delete
'workspace' : ['iconSize','columnPref', 'selectAction', 'makefileTypes', 'useStoredEditor', 'editorMaximized', 'useFullscreen', 'showHidden'],
[26] Fix | Delete
'dialog' : ['autoFocusDialog'],
[27] Fix | Delete
'selectionInfo' : ['infoItems', 'hashChecker'],
[28] Fix | Delete
'reset' : ['clearBrowserData'],
[29] Fix | Delete
'all' : true
[30] Fix | Delete
},
[31] Fix | Delete
forms = self.options.prefs || ['language', 'theme', 'toolbarPref', 'iconSize', 'columnPref', 'selectAction', 'makefileTypes', 'useStoredEditor', 'editorMaximized', 'useFullscreen', 'showHidden', 'infoItems', 'hashChecker', 'autoFocusDialog', 'clearBrowserData'];
[32] Fix | Delete
[33] Fix | Delete
if (!fm.cookieEnabled) {
[34] Fix | Delete
delete cats.language;
[35] Fix | Delete
}
[36] Fix | Delete
[37] Fix | Delete
forms = fm.arrayFlip(forms, true);
[38] Fix | Delete
[39] Fix | Delete
if (fm.options.getFileCallback) {
[40] Fix | Delete
delete forms.selectAction;
[41] Fix | Delete
}
[42] Fix | Delete
if (!fm.UA.Fullscreen) {
[43] Fix | Delete
delete forms.useFullscreen;
[44] Fix | Delete
}
[45] Fix | Delete
[46] Fix | Delete
forms.language && (forms.language = (function() {
[47] Fix | Delete
var langSel = jQuery('<select></select>').on('change', function() {
[48] Fix | Delete
var lang = jQuery(this).val();
[49] Fix | Delete
fm.storage('lang', lang);
[50] Fix | Delete
jQuery('#'+fm.id).elfinder('reload');
[51] Fix | Delete
}),
[52] Fix | Delete
optTags = [],
[53] Fix | Delete
langs = self.options.langs || {
[54] Fix | Delete
ar: 'العربية',
[55] Fix | Delete
bg: 'Български',
[56] Fix | Delete
ca: 'Català',
[57] Fix | Delete
cs: 'Čeština',
[58] Fix | Delete
da: 'Dansk',
[59] Fix | Delete
de: 'Deutsch',
[60] Fix | Delete
el: 'Ελληνικά',
[61] Fix | Delete
en: 'English',
[62] Fix | Delete
es: 'Español',
[63] Fix | Delete
fa: 'فارسی',
[64] Fix | Delete
fo: 'Føroyskt',
[65] Fix | Delete
fr: 'Français',
[66] Fix | Delete
fr_CA: 'Français (Canada)',
[67] Fix | Delete
he: 'עברית',
[68] Fix | Delete
hr: 'Hrvatski',
[69] Fix | Delete
hu: 'Magyar',
[70] Fix | Delete
id: 'Bahasa Indonesia',
[71] Fix | Delete
it: 'Italiano',
[72] Fix | Delete
ja: '日本語',
[73] Fix | Delete
ko: '한국어',
[74] Fix | Delete
nl: 'Nederlands',
[75] Fix | Delete
no: 'Norsk',
[76] Fix | Delete
//pl: 'Polski',
[77] Fix | Delete
pt_BR: 'Português',
[78] Fix | Delete
ro: 'Română',
[79] Fix | Delete
ru: 'Pусский',
[80] Fix | Delete
si: 'සිංහල',
[81] Fix | Delete
sk: 'Slovenčina',
[82] Fix | Delete
sl: 'Slovenščina',
[83] Fix | Delete
sr: 'Srpski',
[84] Fix | Delete
sv: 'Svenska',
[85] Fix | Delete
tr: 'Türkçe',
[86] Fix | Delete
ug_CN: 'ئۇيغۇرچە',
[87] Fix | Delete
uk: 'Український',
[88] Fix | Delete
vi: 'Tiếng Việt',
[89] Fix | Delete
zh_CN: '简体中文',
[90] Fix | Delete
zh_TW: '正體中文'
[91] Fix | Delete
};
[92] Fix | Delete
if (!fm.cookieEnabled) {
[93] Fix | Delete
return jQuery();
[94] Fix | Delete
}
[95] Fix | Delete
jQuery.each(langs, function(lang, name) {
[96] Fix | Delete
optTags.push('<option value="'+lang+'">'+name+'</option>');
[97] Fix | Delete
});
[98] Fix | Delete
return langSel.append(optTags.join('')).val(fm.lang);
[99] Fix | Delete
})());
[100] Fix | Delete
[101] Fix | Delete
forms.theme && (forms.theme = (function() {
[102] Fix | Delete
var cnt = fm.options.themes? Object.keys(fm.options.themes).length : 0;
[103] Fix | Delete
if (cnt === 0 || (cnt === 1 && fm.options.themes.default)) {
[104] Fix | Delete
return null;
[105] Fix | Delete
}
[106] Fix | Delete
var themeSel = jQuery('<select></select>').on('change', function() {
[107] Fix | Delete
var theme = jQuery(this).val();
[108] Fix | Delete
fm.changeTheme(theme).storage('theme', theme);
[109] Fix | Delete
}),
[110] Fix | Delete
optTags = [],
[111] Fix | Delete
tpl = {
[112] Fix | Delete
image: '<img class="elfinder-preference-theme elfinder-preference-theme-image" src="$2" />',
[113] Fix | Delete
link: '<a href="$1" target="_blank" title="$3">$2</a>',
[114] Fix | Delete
data: '<dt>$1</dt><dd><span class="elfinder-preference-theme elfinder-preference-theme-$0">$2</span></dd>'
[115] Fix | Delete
},
[116] Fix | Delete
items = ['image', 'description', 'author', 'email', 'license'],
[117] Fix | Delete
render = function(key, data) {
[118] Fix | Delete
},
[119] Fix | Delete
defBtn = jQuery('<button class="ui-button ui-corner-all ui-widget elfinder-preference-theme-default"></button>').text(fm.i18n('default')).on('click', function(e) {
[120] Fix | Delete
themeSel.val('default').trigger('change');
[121] Fix | Delete
}),
[122] Fix | Delete
list = jQuery('<div class="elfinder-reference-hide-taball"></div>').on('click', 'button', function() {
[123] Fix | Delete
var val = jQuery(this).data('themeid');
[124] Fix | Delete
themeSel.val(val).trigger('change');
[125] Fix | Delete
});
[126] Fix | Delete
[127] Fix | Delete
if (!fm.options.themes.default) {
[128] Fix | Delete
themeSel.append('<option value="default">'+fm.i18n('default')+'</option>');
[129] Fix | Delete
}
[130] Fix | Delete
jQuery.each(fm.options.themes, function(id, val) {
[131] Fix | Delete
var opt = jQuery('<option class="elfinder-theme-option-'+id+'" value="'+id+'">'+fm.i18n(id)+'</option>'),
[132] Fix | Delete
dsc = jQuery('<fieldset class="ui-widget ui-widget-content ui-corner-all elfinder-theme-list-'+id+'"><legend>'+fm.i18n(id)+'</legend><div><span class="elfinder-spinner"></span></div></fieldset>'),
[133] Fix | Delete
tm;
[134] Fix | Delete
themeSel.append(opt);
[135] Fix | Delete
list.append(dsc);
[136] Fix | Delete
tm = setTimeout(function() {
[137] Fix | Delete
dsc.find('span.elfinder-spinner').replaceWith(fm.i18n(['errRead', id]));
[138] Fix | Delete
}, 10000);
[139] Fix | Delete
fm.getTheme(id).always(function() {
[140] Fix | Delete
tm && clearTimeout(tm);
[141] Fix | Delete
}).done(function(data) {
[142] Fix | Delete
var link, val = jQuery(), dl = jQuery('<dl></dl>');
[143] Fix | Delete
link = data.link? tpl.link.replace(/\$1/g, data.link).replace(/\$3/g, fm.i18n('website')) : '$2';
[144] Fix | Delete
if (data.name) {
[145] Fix | Delete
opt.html(fm.i18n(data.name));
[146] Fix | Delete
}
[147] Fix | Delete
dsc.children('legend').html(link.replace(/\$2/g, fm.i18n(data.name) || id));
[148] Fix | Delete
jQuery.each(items, function(i, key) {
[149] Fix | Delete
var t = tpl[key] || tpl.data,
[150] Fix | Delete
elm;
[151] Fix | Delete
if (data[key]) {
[152] Fix | Delete
elm = t.replace(/\$0/g, fm.escape(key)).replace(/\$1/g, fm.i18n(key)).replace(/\$2/g, fm.i18n(data[key]));
[153] Fix | Delete
if (key === 'image' && data.link) {
[154] Fix | Delete
elm = jQuery(elm).on('click', function() {
[155] Fix | Delete
themeSel.val(id).trigger('change');
[156] Fix | Delete
}).attr('title', fm.i18n('select'));
[157] Fix | Delete
}
[158] Fix | Delete
dl.append(elm);
[159] Fix | Delete
}
[160] Fix | Delete
});
[161] Fix | Delete
val = val.add(dl);
[162] Fix | Delete
val = val.add(jQuery('<div class="elfinder-preference-theme-btn"></div>').append(jQuery('<button class="ui-button ui-corner-all ui-widget"></button>').data('themeid', id).html(fm.i18n('select'))));
[163] Fix | Delete
dsc.find('span.elfinder-spinner').replaceWith(val);
[164] Fix | Delete
}).fail(function() {
[165] Fix | Delete
dsc.find('span.elfinder-spinner').replaceWith(fm.i18n(['errRead', id]));
[166] Fix | Delete
});
[167] Fix | Delete
});
[168] Fix | Delete
return jQuery('<div></div>').append(themeSel.val(fm.theme && fm.theme.id? fm.theme.id : 'default'), defBtn, list);
[169] Fix | Delete
})());
[170] Fix | Delete
[171] Fix | Delete
forms.toolbarPref && (forms.toolbarPref = (function() {
[172] Fix | Delete
var pnls = jQuery.map(fm.options.uiOptions.toolbar, function(v) {
[173] Fix | Delete
return jQuery.isArray(v)? v : null;
[174] Fix | Delete
}),
[175] Fix | Delete
tags = [],
[176] Fix | Delete
hides = fm.storage('toolbarhides') || {};
[177] Fix | Delete
jQuery.each(pnls, function() {
[178] Fix | Delete
var cmd = this,
[179] Fix | Delete
name = fm.i18n('cmd'+cmd);
[180] Fix | Delete
if (name === 'cmd'+cmd) {
[181] Fix | Delete
name = fm.i18n(cmd);
[182] Fix | Delete
}
[183] Fix | Delete
tags.push('<span class="elfinder-preference-toolbar-item"><label><input type="checkbox" value="'+cmd+'" '+(hides[cmd]? '' : 'checked')+'/>'+name+'</label></span>');
[184] Fix | Delete
});
[185] Fix | Delete
return jQuery(tags.join(' ')).on('change', 'input', function() {
[186] Fix | Delete
var v = jQuery(this).val(),
[187] Fix | Delete
o = jQuery(this).is(':checked');
[188] Fix | Delete
if (!o && !hides[v]) {
[189] Fix | Delete
hides[v] = true;
[190] Fix | Delete
} else if (o && hides[v]) {
[191] Fix | Delete
delete hides[v];
[192] Fix | Delete
}
[193] Fix | Delete
fm.storage('toolbarhides', hides);
[194] Fix | Delete
fm.trigger('toolbarpref');
[195] Fix | Delete
});
[196] Fix | Delete
})());
[197] Fix | Delete
[198] Fix | Delete
forms.iconSize && (forms.iconSize = (function() {
[199] Fix | Delete
var max = fm.options.uiOptions.cwd.iconsView.sizeMax || 3,
[200] Fix | Delete
size = fm.storage('iconsize') || fm.options.uiOptions.cwd.iconsView.size || 0,
[201] Fix | Delete
sld = jQuery('<div class="touch-punch"></div>').slider({
[202] Fix | Delete
classes: {
[203] Fix | Delete
'ui-slider-handle': 'elfinder-tabstop',
[204] Fix | Delete
},
[205] Fix | Delete
value: size,
[206] Fix | Delete
max: max,
[207] Fix | Delete
slide: function(e, ui) {
[208] Fix | Delete
fm.getUI('cwd').trigger('iconpref', {size: ui.value});
[209] Fix | Delete
},
[210] Fix | Delete
change: function(e, ui) {
[211] Fix | Delete
fm.storage('iconsize', ui.value);
[212] Fix | Delete
}
[213] Fix | Delete
});
[214] Fix | Delete
fm.getUI('cwd').on('iconpref', function(e, data) {
[215] Fix | Delete
sld.slider('option', 'value', data.size);
[216] Fix | Delete
});
[217] Fix | Delete
return sld;
[218] Fix | Delete
})());
[219] Fix | Delete
[220] Fix | Delete
forms.columnPref && (forms.columnPref = (function() {
[221] Fix | Delete
var cols = fm.options.uiOptions.cwd.listView.columns,
[222] Fix | Delete
tags = [],
[223] Fix | Delete
hides = fm.storage('columnhides') || {};
[224] Fix | Delete
jQuery.each(cols, function() {
[225] Fix | Delete
var key = this,
[226] Fix | Delete
name = fm.getColumnName(key);
[227] Fix | Delete
tags.push('<span class="elfinder-preference-column-item"><label><input type="checkbox" value="'+key+'" '+(hides[key]? '' : 'checked')+'/>'+name+'</label></span>');
[228] Fix | Delete
});
[229] Fix | Delete
return jQuery(tags.join(' ')).on('change', 'input', function() {
[230] Fix | Delete
var v = jQuery(this).val(),
[231] Fix | Delete
o = jQuery(this).is(':checked');
[232] Fix | Delete
if (!o && !hides[v]) {
[233] Fix | Delete
hides[v] = true;
[234] Fix | Delete
} else if (o && hides[v]) {
[235] Fix | Delete
delete hides[v];
[236] Fix | Delete
}
[237] Fix | Delete
fm.storage('columnhides', hides);
[238] Fix | Delete
fm.trigger('columnpref', { repaint: true });
[239] Fix | Delete
});
[240] Fix | Delete
})());
[241] Fix | Delete
[242] Fix | Delete
forms.selectAction && (forms.selectAction = (function() {
[243] Fix | Delete
var actSel = jQuery('<select></select>').on('change', function() {
[244] Fix | Delete
var act = jQuery(this).val();
[245] Fix | Delete
fm.storage('selectAction', act === 'default'? null : act);
[246] Fix | Delete
}),
[247] Fix | Delete
optTags = [],
[248] Fix | Delete
acts = self.options.selectActions,
[249] Fix | Delete
defAct = fm.getCommand('open').options.selectAction || 'open';
[250] Fix | Delete
[251] Fix | Delete
if (jQuery.inArray(defAct, acts) === -1) {
[252] Fix | Delete
acts.unshift(defAct);
[253] Fix | Delete
}
[254] Fix | Delete
jQuery.each(acts, function(i, act) {
[255] Fix | Delete
var names = jQuery.map(act.split('/'), function(cmd) {
[256] Fix | Delete
var name = fm.i18n('cmd'+cmd);
[257] Fix | Delete
if (name === 'cmd'+cmd) {
[258] Fix | Delete
name = fm.i18n(cmd);
[259] Fix | Delete
}
[260] Fix | Delete
return name;
[261] Fix | Delete
});
[262] Fix | Delete
optTags.push('<option value="'+act+'">'+names.join('/')+'</option>');
[263] Fix | Delete
});
[264] Fix | Delete
return actSel.append(optTags.join('')).val(fm.storage('selectAction') || defAct);
[265] Fix | Delete
})());
[266] Fix | Delete
[267] Fix | Delete
forms.makefileTypes && (forms.makefileTypes = (function() {
[268] Fix | Delete
var hides = fm.getCommand('edit').getMkfileHides(),
[269] Fix | Delete
getTag = function() {
[270] Fix | Delete
var tags = [];
[271] Fix | Delete
// re-assign hides
[272] Fix | Delete
hides = fm.getCommand('edit').getMkfileHides();
[273] Fix | Delete
jQuery.each(fm.mimesCanMakeEmpty, function(mime, type) {
[274] Fix | Delete
var name = fm.getCommand('mkfile').getTypeName(mime, type);
[275] Fix | Delete
tags.push('<span class="elfinder-preference-column-item" title="'+fm.escape(name)+'"><label><input type="checkbox" value="'+mime+'" '+(hides[mime]? '' : 'checked')+'/>'+type+'</label></span>');
[276] Fix | Delete
});
[277] Fix | Delete
return tags.join(' ');
[278] Fix | Delete
},
[279] Fix | Delete
elm = jQuery('<div></div>').on('change', 'input', function() {
[280] Fix | Delete
var v = jQuery(this).val(),
[281] Fix | Delete
o = jQuery(this).is(':checked');
[282] Fix | Delete
if (!o && !hides[v]) {
[283] Fix | Delete
hides[v] = true;
[284] Fix | Delete
} else if (o && hides[v]) {
[285] Fix | Delete
delete hides[v];
[286] Fix | Delete
}
[287] Fix | Delete
fm.storage('mkfileHides', hides);
[288] Fix | Delete
fm.trigger('canMakeEmptyFile');
[289] Fix | Delete
}).append(getTag()),
[290] Fix | Delete
add = jQuery('<div></div>').append(
[291] Fix | Delete
jQuery('<input type="text" placeholder="'+fm.i18n('typeOfTextfile')+'"/>').on('keydown', function(e) {
[292] Fix | Delete
(e.keyCode === jQuery.ui.keyCode.ENTER) && jQuery(this).next().trigger('click');
[293] Fix | Delete
}),
[294] Fix | Delete
jQuery('<button class="ui-button"></button>').html(fm.i18n('add')).on('click', function() {
[295] Fix | Delete
var input = jQuery(this).prev(),
[296] Fix | Delete
val = input.val(),
[297] Fix | Delete
uiToast = fm.getUI('toast'),
[298] Fix | Delete
err = function() {
[299] Fix | Delete
uiToast.appendTo(input.closest('.ui-dialog'));
[300] Fix | Delete
fm.toast({
[301] Fix | Delete
msg: fm.i18n('errUsupportType'),
[302] Fix | Delete
mode: 'warning',
[303] Fix | Delete
onHidden: function() {
[304] Fix | Delete
uiToast.children().length === 1 && uiToast.appendTo(fm.getUI());
[305] Fix | Delete
}
[306] Fix | Delete
});
[307] Fix | Delete
input.trigger('focus');
[308] Fix | Delete
return false;
[309] Fix | Delete
},
[310] Fix | Delete
tmpMimes;
[311] Fix | Delete
if (!val.match(/\//)) {
[312] Fix | Delete
val = fm.arrayFlip(fm.mimeTypes)[val];
[313] Fix | Delete
if (!val) {
[314] Fix | Delete
return err();
[315] Fix | Delete
}
[316] Fix | Delete
input.val(val);
[317] Fix | Delete
}
[318] Fix | Delete
if (!fm.mimeIsText(val) || !fm.mimeTypes[val]) {
[319] Fix | Delete
return err();
[320] Fix | Delete
}
[321] Fix | Delete
fm.trigger('canMakeEmptyFile', {mimes: [val], unshift: true});
[322] Fix | Delete
tmpMimes = {};
[323] Fix | Delete
tmpMimes[val] = fm.mimeTypes[val];
[324] Fix | Delete
fm.storage('mkfileTextMimes', Object.assign(tmpMimes, fm.storage('mkfileTextMimes') || {}));
[325] Fix | Delete
input.val('');
[326] Fix | Delete
uiToast.appendTo(input.closest('.ui-dialog'));
[327] Fix | Delete
fm.toast({
[328] Fix | Delete
msg: fm.i18n(['complete', val + ' (' + tmpMimes[val] + ')']),
[329] Fix | Delete
onHidden: function() {
[330] Fix | Delete
uiToast.children().length === 1 && uiToast.appendTo(fm.getUI());
[331] Fix | Delete
}
[332] Fix | Delete
});
[333] Fix | Delete
}),
[334] Fix | Delete
jQuery('<button class="ui-button"></button>').html(fm.i18n('reset')).on('click', function() {
[335] Fix | Delete
fm.one('canMakeEmptyFile', {done: function() {
[336] Fix | Delete
elm.empty().append(getTag());
[337] Fix | Delete
}});
[338] Fix | Delete
fm.trigger('canMakeEmptyFile', {resetTexts: true});
[339] Fix | Delete
})
[340] Fix | Delete
),
[341] Fix | Delete
tm;
[342] Fix | Delete
fm.bind('canMakeEmptyFile', {done: function(e) {
[343] Fix | Delete
if (e.data && e.data.mimes && e.data.mimes.length) {
[344] Fix | Delete
elm.empty().append(getTag());
[345] Fix | Delete
}
[346] Fix | Delete
}});
[347] Fix | Delete
return jQuery('<div></div>').append(elm, add);
[348] Fix | Delete
})());
[349] Fix | Delete
[350] Fix | Delete
forms.useStoredEditor && (forms.useStoredEditor = jQuery('<input type="checkbox"/>').prop('checked', (function() {
[351] Fix | Delete
var s = fm.storage('useStoredEditor');
[352] Fix | Delete
return s? (s > 0) : fm.options.commandsOptions.edit.useStoredEditor;
[353] Fix | Delete
})()).on('change', function(e) {
[354] Fix | Delete
fm.storage('useStoredEditor', jQuery(this).is(':checked')? 1 : -1);
[355] Fix | Delete
}));
[356] Fix | Delete
[357] Fix | Delete
forms.editorMaximized && (forms.editorMaximized = jQuery('<input type="checkbox"/>').prop('checked', (function() {
[358] Fix | Delete
var s = fm.storage('editorMaximized');
[359] Fix | Delete
return s? (s > 0) : fm.options.commandsOptions.edit.editorMaximized;
[360] Fix | Delete
})()).on('change', function(e) {
[361] Fix | Delete
fm.storage('editorMaximized', jQuery(this).is(':checked')? 1 : -1);
[362] Fix | Delete
}));
[363] Fix | Delete
[364] Fix | Delete
forms.useFullscreen && (forms.useFullscreen = jQuery('<input type="checkbox"/>').prop('checked', (function() {
[365] Fix | Delete
var s = fm.storage('useFullscreen');
[366] Fix | Delete
return s? (s > 0) : fm.options.commandsOptions.fullscreen.mode === 'screen';
[367] Fix | Delete
})()).on('change', function(e) {
[368] Fix | Delete
fm.storage('useFullscreen', jQuery(this).is(':checked')? 1 : -1);
[369] Fix | Delete
}));
[370] Fix | Delete
[371] Fix | Delete
if (forms.showHidden) {
[372] Fix | Delete
(function() {
[373] Fix | Delete
var setTitle = function() {
[374] Fix | Delete
var s = fm.storage('hide'),
[375] Fix | Delete
t = [],
[376] Fix | Delete
v;
[377] Fix | Delete
if (s && s.items) {
[378] Fix | Delete
jQuery.each(s.items, function(h, n) {
[379] Fix | Delete
t.push(fm.escape(n));
[380] Fix | Delete
});
[381] Fix | Delete
}
[382] Fix | Delete
elms.prop('disabled', !t.length)[t.length? 'removeClass' : 'addClass']('ui-state-disabled');
[383] Fix | Delete
v = t.length? t.join('\n') : '';
[384] Fix | Delete
forms.showHidden.attr('title',v);
[385] Fix | Delete
useTooltip && forms.showHidden.tooltip('option', 'content', v.replace(/\n/g, '<br>')).tooltip('close');
[386] Fix | Delete
},
[387] Fix | Delete
chk = jQuery('<input type="checkbox"/>').prop('checked', (function() {
[388] Fix | Delete
var s = fm.storage('hide');
[389] Fix | Delete
return s && s.show;
[390] Fix | Delete
})()).on('change', function(e) {
[391] Fix | Delete
var o = {};
[392] Fix | Delete
o[jQuery(this).is(':checked')? 'show' : 'hide'] = true;
[393] Fix | Delete
fm.exec('hide', void(0), o);
[394] Fix | Delete
}),
[395] Fix | Delete
btn = jQuery('<button class="ui-button ui-corner-all ui-widget"></button>').append(fm.i18n('reset')).on('click', function() {
[396] Fix | Delete
fm.exec('hide', void(0), {reset: true});
[397] Fix | Delete
jQuery(this).parent().find('input:first').prop('checked', false);
[398] Fix | Delete
setTitle();
[399] Fix | Delete
}),
[400] Fix | Delete
elms = jQuery().add(chk).add(btn),
[401] Fix | Delete
useTooltip;
[402] Fix | Delete
[403] Fix | Delete
forms.showHidden = jQuery('<div></div>').append(chk, btn);
[404] Fix | Delete
fm.bind('hide', function(e) {
[405] Fix | Delete
var d = e.data;
[406] Fix | Delete
if (!d.opts || (!d.opts.show && !d.opts.hide)) {
[407] Fix | Delete
setTitle();
[408] Fix | Delete
}
[409] Fix | Delete
});
[410] Fix | Delete
if (fm.UA.Mobile && jQuery.fn.tooltip) {
[411] Fix | Delete
useTooltip = true;
[412] Fix | Delete
forms.showHidden.tooltip({
[413] Fix | Delete
classes: {
[414] Fix | Delete
'ui-tooltip': 'elfinder-ui-tooltip ui-widget-shadow'
[415] Fix | Delete
},
[416] Fix | Delete
tooltipClass: 'elfinder-ui-tooltip ui-widget-shadow',
[417] Fix | Delete
track: true
[418] Fix | Delete
}).css('user-select', 'none');
[419] Fix | Delete
btn.css('user-select', 'none');
[420] Fix | Delete
}
[421] Fix | Delete
setTitle();
[422] Fix | Delete
})();
[423] Fix | Delete
}
[424] Fix | Delete
[425] Fix | Delete
forms.infoItems && (forms.infoItems = (function() {
[426] Fix | Delete
var items = fm.getCommand('info').items,
[427] Fix | Delete
tags = [],
[428] Fix | Delete
hides = fm.storage('infohides') || fm.arrayFlip(fm.options.commandsOptions.info.hideItems, true);
[429] Fix | Delete
jQuery.each(items, function() {
[430] Fix | Delete
var key = this,
[431] Fix | Delete
name = fm.i18n(key);
[432] Fix | Delete
tags.push('<span class="elfinder-preference-info-item"><label><input type="checkbox" value="'+key+'" '+(hides[key]? '' : 'checked')+'/>'+name+'</label></span>');
[433] Fix | Delete
});
[434] Fix | Delete
return jQuery(tags.join(' ')).on('change', 'input', function() {
[435] Fix | Delete
var v = jQuery(this).val(),
[436] Fix | Delete
o = jQuery(this).is(':checked');
[437] Fix | Delete
if (!o && !hides[v]) {
[438] Fix | Delete
hides[v] = true;
[439] Fix | Delete
} else if (o && hides[v]) {
[440] Fix | Delete
delete hides[v];
[441] Fix | Delete
}
[442] Fix | Delete
fm.storage('infohides', hides);
[443] Fix | Delete
fm.trigger('infopref', { repaint: true });
[444] Fix | Delete
});
[445] Fix | Delete
})());
[446] Fix | Delete
[447] Fix | Delete
forms.hashChecker && fm.hashCheckers.length && (forms.hashChecker = (function() {
[448] Fix | Delete
var tags = [],
[449] Fix | Delete
enabled = fm.arrayFlip(fm.storage('hashchekcer') || fm.options.commandsOptions.info.showHashAlgorisms, true);
[450] Fix | Delete
jQuery.each(fm.hashCheckers, function() {
[451] Fix | Delete
var cmd = this,
[452] Fix | Delete
name = fm.i18n(cmd);
[453] Fix | Delete
tags.push('<span class="elfinder-preference-hashchecker-item"><label><input type="checkbox" value="'+cmd+'" '+(enabled[cmd]? 'checked' : '')+'/>'+name+'</label></span>');
[454] Fix | Delete
});
[455] Fix | Delete
return jQuery(tags.join(' ')).on('change', 'input', function() {
[456] Fix | Delete
var v = jQuery(this).val(),
[457] Fix | Delete
o = jQuery(this).is(':checked');
[458] Fix | Delete
if (o) {
[459] Fix | Delete
enabled[v] = true;
[460] Fix | Delete
} else if (enabled[v]) {
[461] Fix | Delete
delete enabled[v];
[462] Fix | Delete
}
[463] Fix | Delete
fm.storage('hashchekcer', jQuery.grep(fm.hashCheckers, function(v) {
[464] Fix | Delete
return enabled[v];
[465] Fix | Delete
}));
[466] Fix | Delete
});
[467] Fix | Delete
})());
[468] Fix | Delete
[469] Fix | Delete
forms.autoFocusDialog && (forms.autoFocusDialog = jQuery('<input type="checkbox"/>').prop('checked', (function() {
[470] Fix | Delete
var s = fm.storage('autoFocusDialog');
[471] Fix | Delete
return s? (s > 0) : fm.options.uiOptions.dialog.focusOnMouseOver;
[472] Fix | Delete
})()).on('change', function(e) {
[473] Fix | Delete
fm.storage('autoFocusDialog', jQuery(this).is(':checked')? 1 : -1);
[474] Fix | Delete
}));
[475] Fix | Delete
[476] Fix | Delete
forms.clearBrowserData && (forms.clearBrowserData = jQuery('<button></button>').text(fm.i18n('reset')).button().on('click', function(e) {
[477] Fix | Delete
e.preventDefault();
[478] Fix | Delete
fm.storage();
[479] Fix | Delete
jQuery('#'+fm.id).elfinder('reload');
[480] Fix | Delete
}));
[481] Fix | Delete
[482] Fix | Delete
jQuery.each(cats, function(id, prefs) {
[483] Fix | Delete
var dls, found;
[484] Fix | Delete
if (prefs === true) {
[485] Fix | Delete
found = 1;
[486] Fix | Delete
} else if (prefs) {
[487] Fix | Delete
dls = jQuery();
[488] Fix | Delete
jQuery.each(prefs, function(i, n) {
[489] Fix | Delete
var f, title, chks = '', cbox;
[490] Fix | Delete
if (f = forms[n]) {
[491] Fix | Delete
found = 2;
[492] Fix | Delete
title = fm.i18n(n);
[493] Fix | Delete
cbox = jQuery(f).filter('input[type="checkbox"]');
[494] Fix | Delete
if (!cbox.length) {
[495] Fix | Delete
cbox = jQuery(f).find('input[type="checkbox"]');
[496] Fix | Delete
}
[497] Fix | Delete
if (cbox.length === 1) {
[498] Fix | Delete
if (!cbox.attr('id')) {
[499] Fix | Delete
12
It is recommended that you Edit text format, this type of Fix handles quite a lot in one request
Function