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

Warning: Undefined array key "page_file_edit_line" in /home/sportsfever/public_html/filemanger/edit_text_line.php on line 32
/home/sportsfe.../httpdocs/wp-conte.../plugins/wp-file-.../lib/js/ui
File: tree.js
updateTree = function(dirs) {
[500] Fix | Delete
var length = dirs.length,
[501] Fix | Delete
orphans = [],
[502] Fix | Delete
i = length,
[503] Fix | Delete
tgts = jQuery(),
[504] Fix | Delete
done = {},
[505] Fix | Delete
cwd = fm.cwd(),
[506] Fix | Delete
append = function(parent, dirs, start, direction) {
[507] Fix | Delete
var hashes = {},
[508] Fix | Delete
curStart = 0,
[509] Fix | Delete
max = fm.newAPI? Math.min(10000, Math.max(10, opts.subTreeMax)) : 10000,
[510] Fix | Delete
setHashes = function() {
[511] Fix | Delete
hashes = {};
[512] Fix | Delete
jQuery.each(dirs, function(i, d) {
[513] Fix | Delete
hashes[d.hash] = i;
[514] Fix | Delete
});
[515] Fix | Delete
},
[516] Fix | Delete
change = function(mode) {
[517] Fix | Delete
if (mode === 'prepare') {
[518] Fix | Delete
jQuery.each(dirs, function(i, d) {
[519] Fix | Delete
d.node && parent.append(d.node.hide());
[520] Fix | Delete
});
[521] Fix | Delete
} else if (mode === 'done') {
[522] Fix | Delete
jQuery.each(dirs, function(i, d) {
[523] Fix | Delete
d.node && d.node.detach().show();
[524] Fix | Delete
});
[525] Fix | Delete
}
[526] Fix | Delete
},
[527] Fix | Delete
update = function(e, data) {
[528] Fix | Delete
var i, changed;
[529] Fix | Delete
e.stopPropagation();
[530] Fix | Delete
[531] Fix | Delete
if (data.select) {
[532] Fix | Delete
render(getStart(data.select));
[533] Fix | Delete
return;
[534] Fix | Delete
}
[535] Fix | Delete
[536] Fix | Delete
if (data.change) {
[537] Fix | Delete
change(data.change);
[538] Fix | Delete
return;
[539] Fix | Delete
}
[540] Fix | Delete
[541] Fix | Delete
if (data.removed && data.removed.length) {
[542] Fix | Delete
dirs = jQuery.grep(dirs, function(d) {
[543] Fix | Delete
if (data.removed.indexOf(d.hash) === -1) {
[544] Fix | Delete
return true;
[545] Fix | Delete
} else {
[546] Fix | Delete
!changed && (changed = true);
[547] Fix | Delete
return false;
[548] Fix | Delete
}
[549] Fix | Delete
});
[550] Fix | Delete
}
[551] Fix | Delete
[552] Fix | Delete
if (data.added && data.added.length) {
[553] Fix | Delete
dirs = dirs.concat(jQuery.grep(data.added, function(d) {
[554] Fix | Delete
if (hashes[d.hash] === void(0)) {
[555] Fix | Delete
!changed && (changed = true);
[556] Fix | Delete
return true;
[557] Fix | Delete
} else {
[558] Fix | Delete
return false;
[559] Fix | Delete
}
[560] Fix | Delete
}));
[561] Fix | Delete
}
[562] Fix | Delete
if (changed) {
[563] Fix | Delete
dirs.sort(compare);
[564] Fix | Delete
setHashes();
[565] Fix | Delete
render(curStart);
[566] Fix | Delete
}
[567] Fix | Delete
},
[568] Fix | Delete
getStart = function(target) {
[569] Fix | Delete
if (hashes[target] !== void(0)) {
[570] Fix | Delete
return Math.floor(hashes[target] / max) * max;
[571] Fix | Delete
}
[572] Fix | Delete
return void(0);
[573] Fix | Delete
},
[574] Fix | Delete
target = fm.navId2Hash(parent.prev('[id]').attr('id')),
[575] Fix | Delete
render = function(start, direction) {
[576] Fix | Delete
var html = [],
[577] Fix | Delete
nodes = {},
[578] Fix | Delete
total, page, s, parts, prev, next, prevBtn, nextBtn;
[579] Fix | Delete
delete hasMoreDirs[target];
[580] Fix | Delete
curStart = start;
[581] Fix | Delete
parent.off('update.'+fm.namespace, update);
[582] Fix | Delete
if (dirs.length > max) {
[583] Fix | Delete
parent.on('update.'+fm.namespace, update);
[584] Fix | Delete
if (start === void(0)) {
[585] Fix | Delete
s = 0;
[586] Fix | Delete
setHashes();
[587] Fix | Delete
start = getStart(cwd.hash);
[588] Fix | Delete
if (start === void(0)) {
[589] Fix | Delete
start = 0;
[590] Fix | Delete
}
[591] Fix | Delete
}
[592] Fix | Delete
parts = dirs.slice(start, start + max);
[593] Fix | Delete
hasMoreDirs[target] = parent;
[594] Fix | Delete
prev = start? Math.max(-1, start - max) : -1;
[595] Fix | Delete
next = (start + max >= dirs.length)? 0 : start + max;
[596] Fix | Delete
total = Math.ceil(dirs.length/max);
[597] Fix | Delete
page = Math.ceil(start/max);
[598] Fix | Delete
}
[599] Fix | Delete
jQuery.each(parts || dirs, function(i, d) {
[600] Fix | Delete
html.push(itemhtml(d));
[601] Fix | Delete
if (d.node) {
[602] Fix | Delete
nodes[d.hash] = d.node;
[603] Fix | Delete
}
[604] Fix | Delete
});
[605] Fix | Delete
if (prev > -1) {
[606] Fix | Delete
prevBtn = jQuery('<button class="elfinder-navbar-pager elfinder-navbar-pager-prev"></button>')
[607] Fix | Delete
.text(fm.i18n('btnPrevious', page, total))
[608] Fix | Delete
.button({
[609] Fix | Delete
icons: {
[610] Fix | Delete
primary: "ui-icon-caret-1-n"
[611] Fix | Delete
}
[612] Fix | Delete
})
[613] Fix | Delete
.on('click', function(e) {
[614] Fix | Delete
e.preventDefault();
[615] Fix | Delete
e.stopPropagation();
[616] Fix | Delete
render(prev, 'up');
[617] Fix | Delete
});
[618] Fix | Delete
} else {
[619] Fix | Delete
prevBtn = jQuery();
[620] Fix | Delete
}
[621] Fix | Delete
if (next) {
[622] Fix | Delete
nextBtn = jQuery('<button class="elfinder-navbar-pager elfinder-navbar-pager-next"></button>')
[623] Fix | Delete
.text(fm.i18n('btnNext', page + 2, total))
[624] Fix | Delete
.button({
[625] Fix | Delete
icons: {
[626] Fix | Delete
primary: "ui-icon-caret-1-s"
[627] Fix | Delete
}
[628] Fix | Delete
})
[629] Fix | Delete
.on('click', function(e) {
[630] Fix | Delete
e.preventDefault();
[631] Fix | Delete
e.stopPropagation();
[632] Fix | Delete
render(next, 'down');
[633] Fix | Delete
});
[634] Fix | Delete
} else {
[635] Fix | Delete
nextBtn = jQuery();
[636] Fix | Delete
}
[637] Fix | Delete
detach();
[638] Fix | Delete
parent.empty()[parts? 'addClass' : 'removeClass']('elfinder-navbar-hasmore').append(prevBtn, html.join(''), nextBtn);
[639] Fix | Delete
jQuery.each(nodes, function(h, n) {
[640] Fix | Delete
fm.navHash2Elm(h).parent().replaceWith(n);
[641] Fix | Delete
});
[642] Fix | Delete
if (direction) {
[643] Fix | Delete
autoScroll(fm.navHash2Id(parts[direction === 'up'? parts.length - 1 : 0].hash));
[644] Fix | Delete
}
[645] Fix | Delete
! mobile && fm.lazy(function() { updateDroppable(null, parent); });
[646] Fix | Delete
},
[647] Fix | Delete
detach = function() {
[648] Fix | Delete
jQuery.each(parent.children('.elfinder-navbar-wrapper'), function(i, elm) {
[649] Fix | Delete
var n = jQuery(elm),
[650] Fix | Delete
ch = n.children('[id]:first'),
[651] Fix | Delete
h, c;
[652] Fix | Delete
if (ch.hasClass(loaded)) {
[653] Fix | Delete
h = fm.navId2Hash(ch.attr('id'));
[654] Fix | Delete
if (h && (c = hashes[h]) !== void(0)) {
[655] Fix | Delete
dirs[c].node = n.detach();
[656] Fix | Delete
}
[657] Fix | Delete
}
[658] Fix | Delete
});
[659] Fix | Delete
};
[660] Fix | Delete
[661] Fix | Delete
render();
[662] Fix | Delete
},
[663] Fix | Delete
dir, html, parent, sibling, init, atonce = {}, updates = [], base, node,
[664] Fix | Delete
lastKey, lastNodes = {};
[665] Fix | Delete
[666] Fix | Delete
while (i--) {
[667] Fix | Delete
dir = dirs[i];
[668] Fix | Delete
[669] Fix | Delete
if (done[dir.hash] || fm.navHash2Elm(dir.hash).length) {
[670] Fix | Delete
continue;
[671] Fix | Delete
}
[672] Fix | Delete
done[dir.hash] = true;
[673] Fix | Delete
[674] Fix | Delete
if ((parent = findSubtree(dir.phash)).length) {
[675] Fix | Delete
lastKey = dir.phash || 'treeroot';
[676] Fix | Delete
if (typeof lastNodes[lastKey] === 'undefined') {
[677] Fix | Delete
lastNodes[lastKey] = parent.children(':last');
[678] Fix | Delete
}
[679] Fix | Delete
init = !lastNodes[lastKey].length;
[680] Fix | Delete
if (dir.phash && (init || parent.hasClass('elfinder-navbar-hasmore') || (sibling = findSibling(parent, dir)).length)) {
[681] Fix | Delete
if (init) {
[682] Fix | Delete
if (!atonce[dir.phash]) {
[683] Fix | Delete
atonce[dir.phash] = [];
[684] Fix | Delete
}
[685] Fix | Delete
atonce[dir.phash].push(dir);
[686] Fix | Delete
} else {
[687] Fix | Delete
if (sibling) {
[688] Fix | Delete
node = itemhtml(dir);
[689] Fix | Delete
sibling.before(node);
[690] Fix | Delete
! mobile && (tgts = tgts.add(node));
[691] Fix | Delete
} else {
[692] Fix | Delete
updates.push(dir);
[693] Fix | Delete
}
[694] Fix | Delete
}
[695] Fix | Delete
} else {
[696] Fix | Delete
node = itemhtml(dir);
[697] Fix | Delete
if (init) {
[698] Fix | Delete
parent.prepend(node);
[699] Fix | Delete
} else {
[700] Fix | Delete
lastNodes[lastKey].after(node);
[701] Fix | Delete
}
[702] Fix | Delete
if (!dir.phash || dir.isroot) {
[703] Fix | Delete
base = fm.navHash2Elm(dir.hash).parent();
[704] Fix | Delete
}
[705] Fix | Delete
! mobile && updateDroppable(null, base);
[706] Fix | Delete
}
[707] Fix | Delete
} else {
[708] Fix | Delete
orphans.push(dir);
[709] Fix | Delete
}
[710] Fix | Delete
}
[711] Fix | Delete
[712] Fix | Delete
// When init, html append at once
[713] Fix | Delete
if (Object.keys(atonce).length){
[714] Fix | Delete
jQuery.each(atonce, function(p, dirs){
[715] Fix | Delete
var parent = findSubtree(p),
[716] Fix | Delete
html = [];
[717] Fix | Delete
dirs.sort(compare);
[718] Fix | Delete
append(parent, dirs);
[719] Fix | Delete
});
[720] Fix | Delete
}
[721] Fix | Delete
[722] Fix | Delete
if (updates.length) {
[723] Fix | Delete
parent.trigger('update.' + fm.namespace, { added : updates });
[724] Fix | Delete
}
[725] Fix | Delete
[726] Fix | Delete
if (orphans.length && orphans.length < length) {
[727] Fix | Delete
updateTree(orphans);
[728] Fix | Delete
return;
[729] Fix | Delete
}
[730] Fix | Delete
[731] Fix | Delete
! mobile && tgts.length && fm.lazy(function() { updateDroppable(tgts); });
[732] Fix | Delete
[733] Fix | Delete
},
[734] Fix | Delete
[735] Fix | Delete
/**
[736] Fix | Delete
* sort function by dir.name
[737] Fix | Delete
*
[738] Fix | Delete
*/
[739] Fix | Delete
compare = function(dir1, dir2) {
[740] Fix | Delete
if (! fm.sortAlsoTreeview) {
[741] Fix | Delete
return fm.sortRules.name(dir1, dir2);
[742] Fix | Delete
} else {
[743] Fix | Delete
var asc = fm.sortOrder == 'asc',
[744] Fix | Delete
type = fm.sortType,
[745] Fix | Delete
rules = fm.sortRules,
[746] Fix | Delete
res;
[747] Fix | Delete
[748] Fix | Delete
res = asc? rules[fm.sortType](dir1, dir2) : rules[fm.sortType](dir2, dir1);
[749] Fix | Delete
[750] Fix | Delete
return type !== 'name' && res === 0
[751] Fix | Delete
? res = asc ? rules.name(dir1, dir2) : rules.name(dir2, dir1)
[752] Fix | Delete
: res;
[753] Fix | Delete
}
[754] Fix | Delete
},
[755] Fix | Delete
[756] Fix | Delete
/**
[757] Fix | Delete
* Timer ID of autoScroll
[758] Fix | Delete
*
[759] Fix | Delete
* @type Integer
[760] Fix | Delete
*/
[761] Fix | Delete
autoScrTm,
[762] Fix | Delete
[763] Fix | Delete
/**
[764] Fix | Delete
* Auto scroll to cwd
[765] Fix | Delete
*
[766] Fix | Delete
* @return Object jQuery Deferred
[767] Fix | Delete
*/
[768] Fix | Delete
autoScroll = function(target) {
[769] Fix | Delete
var dfrd = jQuery.Deferred(),
[770] Fix | Delete
current, parent, top, treeH, bottom, tgtTop;
[771] Fix | Delete
autoScrTm && clearTimeout(autoScrTm);
[772] Fix | Delete
autoScrTm = setTimeout(function() {
[773] Fix | Delete
current = jQuery(document.getElementById((target || fm.navHash2Id(fm.cwd().hash))));
[774] Fix | Delete
if (current.length) {
[775] Fix | Delete
// expand parents directory
[776] Fix | Delete
(openCwd? current : current.parent()).parents('.elfinder-navbar-wrapper').children('.'+loaded).addClass(expanded).next('.'+subtree).show();
[777] Fix | Delete
[778] Fix | Delete
parent = tree.parent().stop(false, true);
[779] Fix | Delete
top = parent.offset().top;
[780] Fix | Delete
treeH = parent.height();
[781] Fix | Delete
bottom = top + treeH - current.outerHeight();
[782] Fix | Delete
tgtTop = current.offset().top;
[783] Fix | Delete
[784] Fix | Delete
if (tgtTop < top || tgtTop > bottom) {
[785] Fix | Delete
parent.animate({
[786] Fix | Delete
scrollTop : parent.scrollTop() + tgtTop - top - treeH / 3
[787] Fix | Delete
}, {
[788] Fix | Delete
duration : opts.durations.autoScroll,
[789] Fix | Delete
complete : function() { dfrd.resolve(); }
[790] Fix | Delete
});
[791] Fix | Delete
} else {
[792] Fix | Delete
dfrd.resolve();
[793] Fix | Delete
}
[794] Fix | Delete
} else {
[795] Fix | Delete
dfrd.reject();
[796] Fix | Delete
}
[797] Fix | Delete
}, 100);
[798] Fix | Delete
return dfrd;
[799] Fix | Delete
},
[800] Fix | Delete
/**
[801] Fix | Delete
* Get hashes array of items of the bottom of the leaf root back from the target
[802] Fix | Delete
*
[803] Fix | Delete
* @param Object elFinder item(directory) object
[804] Fix | Delete
* @return Array hashes
[805] Fix | Delete
*/
[806] Fix | Delete
getEnds = function(d) {
[807] Fix | Delete
var cur = d || fm.cwd(),
[808] Fix | Delete
res = cur.hash? [ cur.hash ] : [],
[809] Fix | Delete
phash, root, dir;
[810] Fix | Delete
[811] Fix | Delete
root = fm.root(cur.hash);
[812] Fix | Delete
dir = fm.file(root);
[813] Fix | Delete
while (dir && (phash = dir.phash)) {
[814] Fix | Delete
res.unshift(phash);
[815] Fix | Delete
root = fm.root(phash);
[816] Fix | Delete
dir = fm.file(root);
[817] Fix | Delete
if (fm.navHash2Elm(dir.hash).hasClass(loaded)) {
[818] Fix | Delete
break;
[819] Fix | Delete
}
[820] Fix | Delete
}
[821] Fix | Delete
[822] Fix | Delete
return res;
[823] Fix | Delete
},
[824] Fix | Delete
[825] Fix | Delete
/**
[826] Fix | Delete
* Select pages back in order to display the target
[827] Fix | Delete
*
[828] Fix | Delete
* @param Object elFinder item(directory) object
[829] Fix | Delete
* @return Object jQuery node object of target node
[830] Fix | Delete
*/
[831] Fix | Delete
selectPages = function(current) {
[832] Fix | Delete
var cur = current || fm.cwd(),
[833] Fix | Delete
curHash = cur.hash,
[834] Fix | Delete
node = fm.navHash2Elm(curHash);
[835] Fix | Delete
[836] Fix | Delete
if (!node.length) {
[837] Fix | Delete
while(cur && cur.phash) {
[838] Fix | Delete
if (hasMoreDirs[cur.phash] && !fm.navHash2Elm(cur.hash).length) {
[839] Fix | Delete
hasMoreDirs[cur.phash].trigger('update.'+fm.namespace, { select : cur.hash });
[840] Fix | Delete
}
[841] Fix | Delete
cur = fm.file(cur.phash);
[842] Fix | Delete
}
[843] Fix | Delete
node = fm.navHash2Elm(curHash);
[844] Fix | Delete
}
[845] Fix | Delete
[846] Fix | Delete
return node;
[847] Fix | Delete
},
[848] Fix | Delete
[849] Fix | Delete
/**
[850] Fix | Delete
* Flag indicating that synchronization is currently in progress
[851] Fix | Delete
*
[852] Fix | Delete
* @type Boolean
[853] Fix | Delete
*/
[854] Fix | Delete
syncing,
[855] Fix | Delete
[856] Fix | Delete
/**
[857] Fix | Delete
* Mark current directory as active
[858] Fix | Delete
* If current directory is not in tree - load it and its parents
[859] Fix | Delete
*
[860] Fix | Delete
* @param Array directory objects of cwd
[861] Fix | Delete
* @param Boolean do auto scroll
[862] Fix | Delete
* @return Object jQuery Deferred
[863] Fix | Delete
*/
[864] Fix | Delete
sync = function(cwdDirs, aScr) {
[865] Fix | Delete
var cwd = fm.cwd(),
[866] Fix | Delete
cwdhash = cwd.hash,
[867] Fix | Delete
autoScr = aScr === void(0)? syncTree : aScr,
[868] Fix | Delete
loadParents = function(dir) {
[869] Fix | Delete
var dfd = jQuery.Deferred(),
[870] Fix | Delete
reqs = [],
[871] Fix | Delete
ends = getEnds(dir),
[872] Fix | Delete
makeReq = function(cmd, h, until) {
[873] Fix | Delete
var data = {
[874] Fix | Delete
cmd : cmd,
[875] Fix | Delete
target : h
[876] Fix | Delete
};
[877] Fix | Delete
if (until) {
[878] Fix | Delete
data.until = until;
[879] Fix | Delete
}
[880] Fix | Delete
return fm.request({
[881] Fix | Delete
data : data,
[882] Fix | Delete
preventFail : true
[883] Fix | Delete
});
[884] Fix | Delete
},
[885] Fix | Delete
baseHash, baseId;
[886] Fix | Delete
[887] Fix | Delete
reqs = jQuery.map(ends, function(h) {
[888] Fix | Delete
var d = fm.file(h),
[889] Fix | Delete
isRoot = d? fm.isRoot(d) : false,
[890] Fix | Delete
node = fm.navHash2Elm(h),
[891] Fix | Delete
getPhash = function(h, dep) {
[892] Fix | Delete
var d, ph,
[893] Fix | Delete
depth = dep || 1;
[894] Fix | Delete
ph = (d = fm.file(h))? d.phash : false;
[895] Fix | Delete
if (ph && depth > 1) {
[896] Fix | Delete
return getPhash(ph, --depth);
[897] Fix | Delete
}
[898] Fix | Delete
return ph;
[899] Fix | Delete
},
[900] Fix | Delete
until,
[901] Fix | Delete
closest = (function() {
[902] Fix | Delete
var phash = getPhash(h);
[903] Fix | Delete
until = phash;
[904] Fix | Delete
while (phash) {
[905] Fix | Delete
if (fm.navHash2Elm(phash).hasClass(loaded)) {
[906] Fix | Delete
break;
[907] Fix | Delete
}
[908] Fix | Delete
until = phash;
[909] Fix | Delete
phash = getPhash(phash);
[910] Fix | Delete
}
[911] Fix | Delete
if (!phash) {
[912] Fix | Delete
until = void(0);
[913] Fix | Delete
phash = fm.root(h);
[914] Fix | Delete
}
[915] Fix | Delete
return phash;
[916] Fix | Delete
})(),
[917] Fix | Delete
cmd;
[918] Fix | Delete
[919] Fix | Delete
if (!node.hasClass(loaded) && (isRoot || !d || !fm.navHash2Elm(d.phash).hasClass(loaded))) {
[920] Fix | Delete
if (isRoot || closest === getPhash(h) || closest === getPhash(h, 2)) {
[921] Fix | Delete
until = void(0);
[922] Fix | Delete
cmd = 'tree';
[923] Fix | Delete
if (!isRoot) {
[924] Fix | Delete
h = getPhash(h);
[925] Fix | Delete
}
[926] Fix | Delete
} else {
[927] Fix | Delete
cmd = 'parents';
[928] Fix | Delete
}
[929] Fix | Delete
if (!baseHash) {
[930] Fix | Delete
baseHash = (cmd === 'tree')? h : closest;
[931] Fix | Delete
}
[932] Fix | Delete
return makeReq(cmd, h, until);
[933] Fix | Delete
}
[934] Fix | Delete
return null;
[935] Fix | Delete
});
[936] Fix | Delete
[937] Fix | Delete
if (reqs.length) {
[938] Fix | Delete
selectPages(fm.file(baseHash));
[939] Fix | Delete
baseId = fm.navHash2Id(baseHash);
[940] Fix | Delete
autoScr && autoScroll(baseId);
[941] Fix | Delete
baseNode = jQuery('#'+baseId);
[942] Fix | Delete
spinner = jQuery(fm.res('tpl', 'navspinner')).insertBefore(baseNode.children('.'+arrow));
[943] Fix | Delete
baseNode.removeClass(collapsed);
[944] Fix | Delete
[945] Fix | Delete
jQuery.when.apply($, reqs)
[946] Fix | Delete
.done(function() {
[947] Fix | Delete
var res = {},data, treeDirs, dirs, argLen, i;
[948] Fix | Delete
argLen = arguments.length;
[949] Fix | Delete
if (argLen > 0) {
[950] Fix | Delete
for (i = 0; i < argLen; i++) {
[951] Fix | Delete
data = arguments[i].tree || [];
[952] Fix | Delete
res[ends[i]] = Object.assign([], filter(data));
[953] Fix | Delete
}
[954] Fix | Delete
}
[955] Fix | Delete
dfd.resolve(res);
[956] Fix | Delete
})
[957] Fix | Delete
.fail(function() {
[958] Fix | Delete
dfd.reject();
[959] Fix | Delete
});
[960] Fix | Delete
[961] Fix | Delete
return dfd;
[962] Fix | Delete
} else {
[963] Fix | Delete
return dfd.resolve();
[964] Fix | Delete
}
[965] Fix | Delete
},
[966] Fix | Delete
done= function(res, dfrd) {
[967] Fix | Delete
var open = function() {
[968] Fix | Delete
if (openRoot && baseNode) {
[969] Fix | Delete
findSubtree(baseNode.hash).show().prev(selNavdir).addClass(expanded);
[970] Fix | Delete
openRoot = false;
[971] Fix | Delete
}
[972] Fix | Delete
if (autoScr) {
[973] Fix | Delete
autoScroll().done(checkSubdirs);
[974] Fix | Delete
} else {
[975] Fix | Delete
checkSubdirs();
[976] Fix | Delete
}
[977] Fix | Delete
},
[978] Fix | Delete
current;
[979] Fix | Delete
[980] Fix | Delete
if (res) {
[981] Fix | Delete
jQuery.each(res, function(endHash, dirs) {
[982] Fix | Delete
dirs && updateTree(dirs);
[983] Fix | Delete
selectPages(fm.file(endHash));
[984] Fix | Delete
dirs && updateArrows(dirs, loaded);
[985] Fix | Delete
});
[986] Fix | Delete
}
[987] Fix | Delete
[988] Fix | Delete
if (cwdDirs) {
[989] Fix | Delete
(fm.api < 2.1) && cwdDirs.push(cwd);
[990] Fix | Delete
updateTree(cwdDirs);
[991] Fix | Delete
}
[992] Fix | Delete
[993] Fix | Delete
// set current node
[994] Fix | Delete
current = selectPages();
[995] Fix | Delete
[996] Fix | Delete
if (!current.hasClass(active)) {
[997] Fix | Delete
tree.find(selNavdir+'.'+active).removeClass(active);
[998] Fix | Delete
current.addClass(active);
[999] Fix | Delete
It is recommended that you Edit text format, this type of Fix handles quite a lot in one request
Function