mirror of
https://github.com/myvesta/vesta
synced 2025-07-06 04:51:54 -07:00
FileManager move function + small bugfixes
This commit is contained in:
parent
7b924c0227
commit
4adbef4517
38 changed files with 563 additions and 566 deletions
|
@ -797,9 +797,9 @@ App.Ajax.request = function(method, data, callback, onError){
|
|||
}*/
|
||||
//App.Helpers.setAjaxBusy(method, data);
|
||||
data = data || {};
|
||||
|
||||
|
||||
var prgs = $('.progress-container');
|
||||
|
||||
|
||||
switch (method) {
|
||||
case 'cd':
|
||||
prgs.find('title').text('Opening dir');
|
||||
|
@ -825,8 +825,12 @@ App.Ajax.request = function(method, data, callback, onError){
|
|||
prgs.find('title').text('Renaming file');
|
||||
prgs.show();
|
||||
break;
|
||||
case 'copy_file':
|
||||
case 'copy_directory':
|
||||
prgs.find('title').text('Copying files');
|
||||
prgs.show();
|
||||
break;
|
||||
default:
|
||||
|
||||
break;
|
||||
}
|
||||
|
||||
|
|
|
@ -314,7 +314,6 @@ FM.open = function(dir, box, callback) {
|
|||
'dir': dir
|
||||
};
|
||||
App.Ajax.request('cd', params, function(reply) {
|
||||
//var tab = FM.getTabLetter(FM.CURRENT_TAB);
|
||||
FM.preselectedItems[tab] = [];
|
||||
if (reply.result == true) {
|
||||
var html = FM.generate_listing(reply.listing, box);
|
||||
|
@ -324,17 +323,16 @@ FM.open = function(dir, box, callback) {
|
|||
}
|
||||
|
||||
callback && callback(reply);
|
||||
|
||||
|
||||
var current_pwd = dir.trim() == '' ? FM.ROOT_DIR : dir;
|
||||
|
||||
|
||||
FM.updateTopLevelPathBar(box, tab, current_pwd);
|
||||
|
||||
|
||||
|
||||
var path_a = FM['TAB_A_CURRENT_PATH'] == '' ? FM.ROOT_DIR : FM['TAB_A_CURRENT_PATH'];
|
||||
var path_b = FM['TAB_B_CURRENT_PATH'] == '' ? FM.ROOT_DIR : FM['TAB_B_CURRENT_PATH'];
|
||||
var url = '/list/directory/?dir_a='+path_a+'&dir_b='+path_b;
|
||||
history.pushState({}, null, url);
|
||||
|
||||
|
||||
if (FM['CURRENT_' + tab + '_LINE'] == -1) {
|
||||
FM.setActive(0, FM.CURRENT_TAB);
|
||||
}
|
||||
|
@ -738,7 +736,7 @@ FM.bulkOperation = function(ref) {
|
|||
$(ref).find('option[value=-1]').attr('selected', true);
|
||||
}
|
||||
|
||||
FM.checkBulkStatus = function(bulkStatuses, acc) {
|
||||
FM.checkBulkStatus = function(bulkStatuses, acc, dont_reload) {
|
||||
var status = true;
|
||||
var msg = '';
|
||||
if (bulkStatuses.length == acc.length) {
|
||||
|
@ -760,10 +758,11 @@ FM.checkBulkStatus = function(bulkStatuses, acc) {
|
|||
$('#popup .ok').hide();
|
||||
}
|
||||
|
||||
var box = FM['TAB_' + tab];
|
||||
var tab = FM.getTabLetter(FM.CURRENT_TAB);
|
||||
// FM.openAndSync(FM['TAB_' + tab + '_CURRENT_PATH'], box, function(){}, true);
|
||||
FM.openAndSync(FM['TAB_' + tab + '_CURRENT_PATH'], box, function(){}, false);
|
||||
var box = FM['TAB_' + tab];
|
||||
if(!dont_reload){
|
||||
FM.openAndSync(FM['TAB_' + tab + '_CURRENT_PATH'], box);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -803,8 +802,6 @@ FM.humanFileSizeUnit = function(size) {
|
|||
FM.bulkCopyDo = function() {
|
||||
var acc = $(FM.CURRENT_TAB).find('.dir.selected');
|
||||
if (acc.length > 0) {
|
||||
//FM.popupClose();
|
||||
|
||||
var cfr_html = '';
|
||||
var numberOfItems = 0;
|
||||
$.each(acc, function(i, o) {
|
||||
|
@ -825,7 +822,6 @@ FM.bulkCopyDo = function() {
|
|||
src = $.parseJSON(src);
|
||||
|
||||
if (FM.isItemPseudo(src)) {
|
||||
//cfr_html += '<div>'+src.name+'</div>';
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -836,9 +832,6 @@ FM.bulkCopyDo = function() {
|
|||
}
|
||||
|
||||
if (FM.isItemPseudo(src)) {
|
||||
/*return FM.displayError(
|
||||
App.Constants.FM_NO_FILE_OR_DIRECTORY_SELECTED
|
||||
);*/
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -856,16 +849,18 @@ FM.bulkCopyDo = function() {
|
|||
dir_target: dest
|
||||
};
|
||||
|
||||
|
||||
App.Ajax.request(action, params, function(reply) {
|
||||
if (reply.result == true) {
|
||||
bulkStatuses.push(true);
|
||||
}
|
||||
else {
|
||||
//FM.showError('copy-items', reply.message);
|
||||
bulkStatuses.push(reply.message);
|
||||
}
|
||||
|
||||
FM.checkBulkStatus(bulkStatuses, acc);
|
||||
FM.checkBulkStatus(bulkStatuses, acc, true);
|
||||
if(bulkStatuses.length == acc.length){
|
||||
FM.open(FM['TAB_' + opposite_tab + '_CURRENT_PATH'], FM['TAB_' + opposite_tab]);
|
||||
}
|
||||
});
|
||||
});
|
||||
}
|
||||
|
@ -960,7 +955,6 @@ FM.bulkRemoveDo = function() {
|
|||
bulkStatuses.push(true);
|
||||
}
|
||||
else {
|
||||
//FM.showError('copy-items', reply.message);
|
||||
bulkStatuses.push(reply.message);
|
||||
}
|
||||
|
||||
|
@ -997,76 +991,6 @@ FM.bulkRemove = function() {
|
|||
}
|
||||
}
|
||||
|
||||
|
||||
FM.bulkRemove11111 = function() {
|
||||
var acc = $(FM.CURRENT_TAB).find('.dir.selected');
|
||||
if (acc.length > 0) {
|
||||
//FM.popupClose();
|
||||
|
||||
var cfr_html = '';
|
||||
|
||||
$.each(acc, function(i, o) {
|
||||
var ref = $(o);
|
||||
var src = $(ref).find('.source').val();
|
||||
src = $.parseJSON(src);
|
||||
|
||||
if (!FM.isItemPseudo(o)) {
|
||||
cfr_html += '<div>'+src.name+'</div>';
|
||||
}
|
||||
});
|
||||
|
||||
var tpl = Tpl.get('popup_bulk', 'FM');
|
||||
tpl.set(':ACTION', App.Constants.FM_YOU_ARE_REMOVING);
|
||||
tpl.set(':TEXT', cfr_html);
|
||||
|
||||
FM.popupOpen(tpl.finalize());
|
||||
|
||||
var bulkStatuses = [];
|
||||
$.each(acc, function(i, o) {
|
||||
var ref = $(o);
|
||||
var src = $(ref).find('.source').val();
|
||||
src = $.parseJSON(src);
|
||||
|
||||
var tab = FM.getTabLetter(FM.CURRENT_TAB);
|
||||
|
||||
var opposite_tab = 'A';
|
||||
if (tab == 'A') {
|
||||
opposite_tab = 'B';
|
||||
}
|
||||
|
||||
if (FM.isItemPseudo(src)) {
|
||||
return;
|
||||
/*return FM.displayError(
|
||||
App.Constants.FM_NO_FILE_OR_DIRECTORY_SELECTED
|
||||
);*/
|
||||
}
|
||||
|
||||
var dest = FM['TAB_' + opposite_tab + '_CURRENT_PATH' ];
|
||||
if (dest == '') {
|
||||
dest = GLOBAL.ROOT_DIR;
|
||||
}
|
||||
|
||||
var params = {
|
||||
item: src.full_path,
|
||||
dir: FM['TAB_' + tab + '_CURRENT_PATH']
|
||||
};
|
||||
|
||||
App.Ajax.request('delete_files', params, function(reply) {
|
||||
if (reply.result == true) {
|
||||
bulkStatuses.push(true);
|
||||
}
|
||||
else {
|
||||
//FM.showError('copy-items', reply.message);
|
||||
bulkStatuses.push(reply.message);
|
||||
}
|
||||
|
||||
FM.checkBulkStatus(bulkStatuses, acc);
|
||||
});
|
||||
});
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
FM.toggleAllItemsSelected = function() {
|
||||
var tab = FM.getTabLetter(FM.CURRENT_TAB);
|
||||
var box = FM['TAB_' + tab];
|
||||
|
@ -1398,6 +1322,198 @@ FM.renameItems = function() {
|
|||
FM.popupOpen(tpl.finalize());
|
||||
}
|
||||
|
||||
FM.confirmMove = function() {
|
||||
var tab = FM.getTabLetter(FM.CURRENT_TAB);
|
||||
var box = FM['TAB_' + tab];
|
||||
var selected = $(FM['TAB_' + tab] ).find('.dir.active');
|
||||
if (!selected) {
|
||||
return FM.displayError(
|
||||
App.Constants.FM_NO_FILE_OR_DIRECTORY_SELECTED
|
||||
);
|
||||
}
|
||||
|
||||
var src = selected.find('.source').val();
|
||||
src = $.parseJSON(src);
|
||||
|
||||
var target_name = $('#dst-name').val();
|
||||
|
||||
if (target_name.trim().length == 0) {
|
||||
return FM.displayError(
|
||||
App.Constants.FM_FILE_NAME_CANNOT_BE_EMPTY
|
||||
);
|
||||
}
|
||||
|
||||
var opposite_tab = 'A';
|
||||
if (tab == 'A') {
|
||||
opposite_tab = 'B';
|
||||
}
|
||||
var opposite_box = FM['TAB_' + opposite_tab];
|
||||
|
||||
var action = FM.isItemFile(src) ? 'move_file' : 'move_directory';
|
||||
|
||||
var params = {
|
||||
item: FM['TAB_' + tab + '_CURRENT_PATH'] + '/' + src.name,
|
||||
target_name: target_name
|
||||
};
|
||||
|
||||
App.Ajax.request(action, params, function(reply) {
|
||||
if (reply.result == true) {
|
||||
FM.popupClose();
|
||||
FM.openAndSync(FM['TAB_' + tab + '_CURRENT_PATH'], box);
|
||||
FM.openAndSync(FM['TAB_' + opposite_tab + '_CURRENT_PATH'], opposite_box);
|
||||
}
|
||||
else {
|
||||
FM.showError('rename-items', reply.message);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
FM.moveItems = function() {
|
||||
var tab = FM.getTabLetter(FM.CURRENT_TAB);
|
||||
var selected = $(FM['TAB_' + tab] ).find('.dir.selected');
|
||||
if (selected.length == 0) {
|
||||
return FM.displayError(
|
||||
App.Constants.FM_NO_FILE_OR_DIRECTORY_SELECTED
|
||||
);
|
||||
}
|
||||
|
||||
if (selected.length > 1) { // multi operation
|
||||
return FM.bulkMove();
|
||||
}
|
||||
|
||||
var src = selected.find('.source').val();
|
||||
src = $.parseJSON(src);
|
||||
|
||||
if (FM.isItemPseudo(src)) {
|
||||
return FM.displayError(
|
||||
App.Constants.FM_NO_FILE_OR_DIRECTORY_SELECTED
|
||||
);
|
||||
}
|
||||
|
||||
var opposite_tab = 'A';
|
||||
if (tab == 'A') {
|
||||
opposite_tab = 'B';
|
||||
}
|
||||
|
||||
var dst = FM['TAB_' + opposite_tab + '_CURRENT_PATH'];
|
||||
if (dst == '') {
|
||||
dst = GLOBAL.ROOT_DIR;
|
||||
}
|
||||
|
||||
var tpl = Tpl.get('popup_move', 'FM');
|
||||
tpl.set(':FILENAME', src.full_path);
|
||||
tpl.set(':DST_NAME', (dst + '/' + src.name).replace('//', '/'));
|
||||
FM.popupOpen(tpl.finalize());
|
||||
}
|
||||
|
||||
FM.bulkMove = function() {
|
||||
var acc = $(FM.CURRENT_TAB).find('.dir.selected');
|
||||
if (acc.length > 0) {
|
||||
FM.popupClose();
|
||||
|
||||
var cfr_html = '';
|
||||
var numberOfItems = 0;
|
||||
$.each(acc, function(i, o) {
|
||||
var ref = $(o);
|
||||
var src = $(ref).find('.source').val();
|
||||
src = $.parseJSON(src);
|
||||
|
||||
if (!FM.isItemPseudo(src)) {
|
||||
cfr_html += '<div>'+src.name+'</div>';
|
||||
numberOfItems++;
|
||||
}
|
||||
});
|
||||
|
||||
var tab = FM.getTabLetter(FM.CURRENT_TAB);
|
||||
var opposite_tab = 'A';
|
||||
if (tab == 'A') {
|
||||
opposite_tab = 'B';
|
||||
}
|
||||
var dest = FM['TAB_' + opposite_tab + '_CURRENT_PATH' ];
|
||||
if (dest == '') {
|
||||
dest = GLOBAL.ROOT_DIR;
|
||||
}
|
||||
|
||||
var tpl = Tpl.get('popup_bulk_move', 'FM');
|
||||
tpl.set(':NUMBER_OF_ITEMS', numberOfItems);
|
||||
tpl.set(':DST_NAME', dest);
|
||||
//popup_bulk_copy
|
||||
|
||||
FM.popupOpen(tpl.finalize());
|
||||
}
|
||||
}
|
||||
|
||||
FM.bulkMoveDo = function() {
|
||||
var acc = $(FM.CURRENT_TAB).find('.dir.selected');
|
||||
if (acc.length > 0) {
|
||||
//FM.popupClose();
|
||||
|
||||
var cfr_html = '';
|
||||
var numberOfItems = 0;
|
||||
$.each(acc, function(i, o) {
|
||||
var ref = $(o);
|
||||
var src = $(ref).find('.source').val();
|
||||
src = $.parseJSON(src);
|
||||
|
||||
if (!FM.isItemPseudo(o)) {
|
||||
cfr_html += '<div>'+src.name+'</div>';
|
||||
numberOfItems++;
|
||||
}
|
||||
});
|
||||
|
||||
var bulkStatuses = [];
|
||||
$.each(acc, function(i, o) {
|
||||
var ref = $(o);
|
||||
var src = $(ref).find('.source').val();
|
||||
src = $.parseJSON(src);
|
||||
|
||||
var target_name = $('#dst-name').val();
|
||||
if (target_name.trim().length == 0) {
|
||||
return FM.displayError(
|
||||
App.Constants.FM_FILE_NAME_CANNOT_BE_EMPTY
|
||||
);
|
||||
}
|
||||
|
||||
var tab = FM.getTabLetter(FM.CURRENT_TAB);
|
||||
var opposite_tab = 'A';
|
||||
if (tab == 'A') {
|
||||
opposite_tab = 'B';
|
||||
}
|
||||
|
||||
if (FM.isItemPseudo(src)) {
|
||||
return;
|
||||
}
|
||||
|
||||
var dest = FM['TAB_' + opposite_tab + '_CURRENT_PATH' ];
|
||||
if (dest == '') {
|
||||
dest = GLOBAL.ROOT_DIR;
|
||||
}
|
||||
var action = FM.isItemFile(src) ? 'move_file' : 'move_directory';
|
||||
|
||||
var params = {
|
||||
item: FM['TAB_' + tab + '_CURRENT_PATH'] + '/' + src.name,
|
||||
target_name: target_name
|
||||
};
|
||||
|
||||
App.Ajax.request(action, params, function(reply) {
|
||||
if (reply.result == true) {
|
||||
bulkStatuses.push(true);
|
||||
}
|
||||
else {
|
||||
//FM.showError('copy-items', reply.message);
|
||||
bulkStatuses.push(reply.message);
|
||||
}
|
||||
|
||||
FM.checkBulkStatus(bulkStatuses, acc);
|
||||
if(bulkStatuses.length == acc.length){
|
||||
FM.open(FM['TAB_' + opposite_tab + '_CURRENT_PATH'], FM['TAB_' + opposite_tab]);
|
||||
}
|
||||
});
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
FM.confirmChmod = function() {
|
||||
var tab = FM.getTabLetter(FM.CURRENT_TAB);
|
||||
var box = FM['TAB_' + tab];
|
||||
|
@ -1540,9 +1656,6 @@ FM.confirmBulkChmod = function() {
|
|||
$('#popup .message').show().html(msg);
|
||||
$('#popup .ok').hide();
|
||||
}
|
||||
|
||||
// FM.popupClose();
|
||||
// FM.openAndSync(FM['TAB_' + tab + '_CURRENT_PATH'], box);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -1635,6 +1748,7 @@ FM.popupOpen = function(html) {
|
|||
}
|
||||
|
||||
FM.popupClose = function() {
|
||||
$('#reload-in-time').remove();
|
||||
clearTimeout(FM.Env.errorMessageHideTimeout);
|
||||
return $('#popup').flayer_close();
|
||||
}
|
||||
|
@ -1651,22 +1765,22 @@ FM.copyItems = function() {
|
|||
if (selected.length > 1) { // multi operation
|
||||
return FM.bulkCopy();
|
||||
}
|
||||
|
||||
|
||||
|
||||
var src = selected.find('.source').val();
|
||||
src = $.parseJSON(src);
|
||||
|
||||
|
||||
if (FM.isItemPseudo(src)) {
|
||||
return FM.displayError(
|
||||
App.Constants.FM_NO_FILE_OR_DIRECTORY_SELECTED
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
var opposite_tab = 'A';
|
||||
if (tab == 'A') {
|
||||
opposite_tab = 'B';
|
||||
}
|
||||
|
||||
|
||||
var dst = FM['TAB_' + opposite_tab + '_CURRENT_PATH'];
|
||||
if (dst == '') {
|
||||
dst = GLOBAL.ROOT_DIR;
|
||||
|
@ -1687,7 +1801,7 @@ FM.confirmUnpackItem = function () {
|
|||
App.Constants.FM_NO_FILE_SELECTED
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
var opposite_tab = 'A';
|
||||
if (tab == 'A') {
|
||||
opposite_tab = 'B';
|
||||
|
@ -1695,7 +1809,7 @@ FM.confirmUnpackItem = function () {
|
|||
|
||||
var src = selected.find('.source').val();
|
||||
src = $.parseJSON(src);
|
||||
|
||||
|
||||
if (FM.isItemPseudo(src)) {
|
||||
return FM.displayError(
|
||||
App.Constants.FM_NO_FILE_SELECTED
|
||||
|
@ -1707,12 +1821,12 @@ FM.confirmUnpackItem = function () {
|
|||
App.Constants.FM_FILE_TYPE_NOT_SUPPORTED
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
var dst = FM['TAB_' + tab + '_CURRENT_PATH'];
|
||||
if (dst == '') {
|
||||
dst = GLOBAL.ROOT_DIR;
|
||||
}
|
||||
|
||||
|
||||
var params = {
|
||||
item: src.full_path,
|
||||
filename: src.name,
|
||||
|
@ -1733,47 +1847,63 @@ FM.confirmUnpackItem = function () {
|
|||
}
|
||||
|
||||
FM.confirmPackItem = function () {
|
||||
|
||||
var tab = FM.getTabLetter(FM.CURRENT_TAB);
|
||||
var box = FM['TAB_' + tab];
|
||||
var selected = $(FM['TAB_' + tab] ).find('.dir.active');
|
||||
var selected = $(FM['TAB_' + tab] ).find('.dir.active, .dir.selected');
|
||||
if (selected.length == 0) {
|
||||
return FM.displayError(
|
||||
App.Constants.FM_NO_FILE_OR_DIRECTORY_SELECTED
|
||||
);
|
||||
}
|
||||
|
||||
if (selected.length == 1) {
|
||||
var ref = $(selected[0]);
|
||||
var src = $(ref).find('.source').val();
|
||||
src = $.parseJSON(src);
|
||||
|
||||
if (FM.isItemPseudo(src)) {
|
||||
return FM.displayError(
|
||||
App.Constants.FM_NO_FILE_OR_DIRECTORY_SELECTED
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if (selected.length > 0) {
|
||||
var files_arr = [];
|
||||
$.each(selected, function(i, o) {
|
||||
var ref = $(o);
|
||||
var src = $(ref).find('.source').val();
|
||||
src = $.parseJSON(src);
|
||||
|
||||
if (!FM.isItemPseudo(o)) {
|
||||
files_arr.push(src.full_path);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
|
||||
var opposite_tab = 'A';
|
||||
if (tab == 'A') {
|
||||
opposite_tab = 'B';
|
||||
}
|
||||
|
||||
var src = selected.find('.source').val();
|
||||
src = $.parseJSON(src);
|
||||
|
||||
if (FM.isItemPseudo(src)) {
|
||||
return FM.displayError(
|
||||
App.Constants.FM_NO_FILE_OR_DIRECTORY_SELECTED
|
||||
);
|
||||
}
|
||||
|
||||
var dst = FM['TAB_' + tab + '_CURRENT_PATH'];
|
||||
if (dst == '') {
|
||||
dst = GLOBAL.ROOT_DIR;
|
||||
}
|
||||
|
||||
|
||||
var params = {
|
||||
item: src.full_path,
|
||||
filename: src.name,
|
||||
dir: FM['TAB_' + tab + '_CURRENT_PATH'],
|
||||
dir_target: $('#pack-destination').val()
|
||||
items: files_arr.join(','),
|
||||
dst_item: $('#pack-destination').val()
|
||||
};
|
||||
|
||||
|
||||
App.Ajax.request('pack_item', params, function(reply) {
|
||||
if (reply.result == true) {
|
||||
FM.popupClose();
|
||||
FM.open(FM['TAB_' + tab + '_CURRENT_PATH'], FM['TAB_' + tab]);
|
||||
FM.open(FM['TAB_' + opposite_tab + '_CURRENT_PATH'], FM['TAB_' + opposite_tab]);
|
||||
/// FM.open(FM['TAB_' + opposite_tab + '_CURRENT_PATH'], FM['TAB_' + opposite_tab]);
|
||||
}
|
||||
else {
|
||||
FM.showError('unpack_item', reply.message);
|
||||
|
@ -1784,7 +1914,7 @@ FM.confirmPackItem = function () {
|
|||
FM.confirmCopyItems = function () {
|
||||
var tab = FM.getTabLetter(FM.CURRENT_TAB);
|
||||
var selected = $(FM['TAB_' + tab] ).find('.dir.selected');
|
||||
|
||||
|
||||
if (!selected) {
|
||||
return FM.displayError(
|
||||
App.Constants.FM_NO_FILE_OR_DIRECTORY_SELECTED
|
||||
|
@ -1822,7 +1952,6 @@ FM.confirmCopyItems = function () {
|
|||
App.Ajax.request(action, params, function(reply) {
|
||||
if (reply.result == true) {
|
||||
FM.popupClose();
|
||||
// FM.open(FM['TAB_' + tab + '_CURRENT_PATH'], FM['TAB_' + tab]);
|
||||
FM.openAndSync(FM['TAB_' + opposite_tab + '_CURRENT_PATH'], FM['TAB_' + opposite_tab]);
|
||||
}
|
||||
else {
|
||||
|
@ -1962,12 +2091,11 @@ FM.triggerRefreshActionTrick = function() {
|
|||
$('#reload-in-time').remove();
|
||||
FM.Env.RELOAD_IN_TIME = true;
|
||||
var tpl = Tpl.get('reload_in_time', 'FM');
|
||||
//tpl.set(':TIME_LEFT', FM.RELOAD_IN_TIME_SECONDS + 1);
|
||||
|
||||
|
||||
$('body').append(tpl.finalize());
|
||||
|
||||
|
||||
var ref = $('#reload-in-time').find('.reload-in-time-counter');
|
||||
|
||||
|
||||
var timeleft = FM.RELOAD_IN_TIME_SECONDS;
|
||||
FM.Env.reload_in_time_interval =
|
||||
setInterval(function() {
|
||||
|
@ -2293,6 +2421,32 @@ $(document).ready(function() {
|
|||
'target': document
|
||||
});
|
||||
|
||||
shortcut.add("F4",function() {
|
||||
var tab = FM.getTabLetter(FM.CURRENT_TAB);
|
||||
var elm = $(FM.CURRENT_TAB).find('.dir:eq('+FM['CURRENT_'+tab+'_LINE']+')');
|
||||
|
||||
if (elm.length == 1) {
|
||||
var src = $.parseJSON($(elm).find('.source').val());
|
||||
|
||||
if (src.type == 'd') {
|
||||
}
|
||||
else {
|
||||
if(FM.IMG_FILETYPES.indexOf(src.filetype) >= 0 && src.filetype.length > 0) {
|
||||
FM.fotoramaOpen(tab, 'img-' + elm.index());
|
||||
}
|
||||
else {
|
||||
FM.openFile(src.full_path, FM.CURRENT_TAB, elm);
|
||||
}
|
||||
}
|
||||
}
|
||||
},{
|
||||
'type': 'keydown',
|
||||
'propagate': false,
|
||||
'disable_in_input': false,
|
||||
'target': document
|
||||
});
|
||||
|
||||
|
||||
shortcut.add("Enter",function() {
|
||||
if (FM.isPopupOpened()) {
|
||||
return FM.handlePopupSubmit();
|
||||
|
@ -2357,6 +2511,16 @@ $(document).ready(function() {
|
|||
'target': document
|
||||
});
|
||||
|
||||
shortcut.add("m",function() {
|
||||
FM.moveItems();
|
||||
},{
|
||||
'type': 'keydown',
|
||||
'propagate': false,
|
||||
'disable_in_input': true,
|
||||
'target': document
|
||||
});
|
||||
|
||||
|
||||
shortcut.add("shift+F6",function() {
|
||||
FM.renameItems();
|
||||
},{
|
||||
|
|
|
@ -24,6 +24,7 @@ App.Constants.FM_DIRECTORY_NOT_AVAILABLE = '<?=__('Directory not availabl
|
|||
App.Constants.FM_DONE = '<?=__('Done')?>';
|
||||
App.Constants.FM_CLOSE = '<?=__('Close')?>';
|
||||
App.Constants.FM_COPY = '<?=__('Copy') ?>';
|
||||
App.Constants.FM_MOVE = '<?=__('Move') ?>';
|
||||
App.Constants.FM_CANCEL = '<?=__('Cancel')?>';
|
||||
App.Constants.FM_RENAME = '<?=__('Rename')?>';
|
||||
App.Constants.FM_CHMOD = '<?=__('Change Rights')?>';
|
||||
|
@ -38,8 +39,10 @@ App.Constants.FM_YOU_ARE_COPYING = '<?=__('YOU ARE COPYING')?>';
|
|||
App.Constants.FM_YOU_ARE_REMOVING = '<?=__('YOU ARE REMOVING')?>';
|
||||
|
||||
App.Constants.FM_COPY_BULK = '<?=__('Copy files')?>';
|
||||
App.Constants.FM_MOVE_BULK = '<?=__('Move files')?>';
|
||||
|
||||
App.Constants.FM_CONFIRM_COPY = '<?=__('Are you sure you want to copy')?>';
|
||||
App.Constants.FM_CONFIRM_MOVE = '<?=__('Are you sure you want to move')?>';
|
||||
App.Constants.FM_CONFIRM_DELETE = '<?=__('Are you sure you want to delete')?>';
|
||||
App.Constants.FM_INTO_KEYWORD = '<?=__('into')?>';
|
||||
App.Constants.FM_EXISTING_FILES_WILL_BE_REPLACED= '<?=__('existing files will be replaced')?>';
|
||||
|
|
|
@ -64,14 +64,18 @@ App.Templates.html = {
|
|||
<p class="ok" onClick="FM.bulkCopyDo();">'+App.Constants.FM_COPY+'</p>\
|
||||
</div>\
|
||||
</div>'],
|
||||
/*popup_bulk: ['<div class="confirm-box alarm popup-box">\
|
||||
<div class="message">~!:ACTION~!: <br />~!:TEXT~!</div>\
|
||||
<div class="results"></div>\
|
||||
<div class="controls">\
|
||||
<!-- p class="ok" onClick="FM.popupClose();">'+App.Constants.FM_CLOSE+'</p -->\
|
||||
<p><img src="/images/in_progress.gif"></p>\
|
||||
popup_bulk_move: ['<div class="confirm-box copy popup-box">\
|
||||
<div class="message">'+App.Constants.FM_MOVE_BULK+' (~!:NUMBER_OF_ITEMS~!) '+ App.Constants.FM_INTO_KEYWORD +':</div>\
|
||||
<div class="actions">\
|
||||
<input type="text" id="dst-name" value="~!:DST_NAME~!" class="new-title">\
|
||||
</div>\
|
||||
</div>'],*/
|
||||
<div class="results"></div>\
|
||||
<div class="warning">'+App.Constants.FM_EXISTING_FILES_WILL_BE_REPLACED+'</div>\
|
||||
<div class="controls">\
|
||||
<p class="cancel" onClick="FM.popupClose();">'+App.Constants.FM_CANCEL+'</p>\
|
||||
<p class="ok" onClick="FM.bulkMoveDo();">'+App.Constants.FM_MOVE+'</p>\
|
||||
</div>\
|
||||
</div>'],
|
||||
popup_delete: ['<div class="confirm-box delete popup-box">\
|
||||
<div class="message">'+App.Constants.FM_CONFIRM_DELETE+' <span class="title">"~!:FILENAME~!"</span>?</div>\
|
||||
<div class="warning warning-message"></div>\
|
||||
|
@ -85,13 +89,27 @@ App.Templates.html = {
|
|||
<div class="actions">\
|
||||
<input type="text" id="copy_dest" value="~!:DST_FILENAME~!" class="new-title">\
|
||||
</div>\
|
||||
<div class="message">'+App.Constants.FM_EXISTING_FILES_WILL_BE_REPLACED+'</div>\
|
||||
<div class="warning warning-message"></div>\
|
||||
<div class="message"></div>\
|
||||
<div class="warning warning-message">'+App.Constants.FM_EXISTING_FILES_WILL_BE_REPLACED+'</div>\
|
||||
<div class="controls">\
|
||||
<p class="cancel" onClick="FM.popupClose();">'+App.Constants.FM_CANCEL+'</p>\
|
||||
<p class="ok" onClick="FM.confirmCopyItems();">'+App.Constants.FM_COPY+'</p>\
|
||||
</div>\
|
||||
</div>'],
|
||||
|
||||
popup_move: ['<div class="confirm-box copy popup-box">\
|
||||
<div class="message">'+App.Constants.FM_MOVE+' <span class="title">"~!:FILENAME~!"</span> '+App.Constants.FM_INTO_KEYWORD+':</div>\
|
||||
<div class="actions">\
|
||||
<input type="text" id="dst-name" value="~!:DST_NAME~!" class="new-title">\
|
||||
</div>\
|
||||
<div class="message"></div>\
|
||||
<div class="warning warning-message">'+App.Constants.FM_EXISTING_FILES_WILL_BE_REPLACED+'</div>\
|
||||
<div class="controls">\
|
||||
<p class="cancel" onClick="FM.popupClose();">'+App.Constants.FM_CANCEL+'</p>\
|
||||
<p class="ok" onClick="FM.confirmMove();">'+App.Constants.FM_MOVE+'</p>\
|
||||
</div>\
|
||||
</div>'],
|
||||
|
||||
popup_rename: ['<div class="confirm-box rename warning">\
|
||||
<div class="message">'+App.Constants.FM_RENAME+': <span class="title">"~!:FILENAME~!"</span></div>\
|
||||
<div class="warning warning-message"></div>\
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue