move egw_get_file_editor_prefered_mimes() to egw.file_editor_prefered_mimes() as everything in old jsapi.js is deprecated and should be removed

.
This commit is contained in:
ralf
2022-10-18 08:30:15 +02:00
parent 9d2a319821
commit 05b316f7ff
9 changed files with 49 additions and 34 deletions

View File

@@ -454,6 +454,13 @@ declare interface IegwGlobal
* @return grant object, false if not (yet) loaded and no callback or undefined
*/
grants(_app : string) /*, _callback, _context)*/ : any;
/**
* Get mime types supported by file editor AND not excluded by user
*
* @param {string} _mime current mime type
* @returns {object|null} returns object of filemanager editor hook
*/
file_editor_prefered_mimes(_mime : string) : object|null;
/**
* implemented in egw_store.js

View File

@@ -1,6 +1,5 @@
//export var app = window.app;
export var egw = window.egw;
export var framework = window.framework;
export var egw_get_file_editor_prefered_mimes = window.egw_get_file_editor_prefered_mimes;
export var egw_getFramework = window.egw_getFramework;
export var jQuery = window.jQuery;

View File

@@ -539,7 +539,7 @@ egw.extend('links', egw.MODULE_GLOBAL, function()
{
return false;
}
let fe = egw_get_file_editor_prefered_mimes(mime);
let fe = this.file_editor_prefered_mimes(mime);
if (!fe || !fe.mime || fe && fe.mime && !fe.mime[mime])
{
return false;

View File

@@ -276,6 +276,35 @@ egw.extend('preferences', egw.MODULE_GLOBAL, function()
if (typeof _callback == 'function') return false;
}*/
return typeof grants[_app] === 'object' ? jQuery.extend({}, grants[_app]) : grants[_app];
},
/**
* Get mime types supported by file editor AND not excluded by user
*
* @param {string} _mime current mime type
* @returns {object|null} returns object of filemanager editor hook
*/
file_editor_prefered_mimes: function(_mime)
{
const fe = jQuery.extend(true, {}, this.link_get_registry('filemanager-editor'));
let ex_mimes = this.preference('collab_excluded_mimes', 'filemanager');
const dblclick_action = this.preference('document_doubleclick_action', 'filemanager');
if (dblclick_action === 'download' && typeof _mime === 'string')
{
ex_mimes = !ex_mimes ? _mime : ex_mimes+','+_mime;
}
if (fe && fe.mime && ex_mimes && typeof ex_mimes === 'string')
{
ex_mimes = ex_mimes.split(',');
for (let mime in fe.mime)
{
for (let i in ex_mimes)
{
if (ex_mimes[i] === mime) delete(fe.mime[mime]);
}
}
}
return fe && fe.mime ? fe : null;
}
};
});

View File

@@ -700,31 +700,11 @@ window.addOption = function(id,label,value,do_onchange)
}
/**
*
* @param {string} _mime current mime type
* @returns {object|null} returns object of filemanager editor hook
* @deprecated use egw.file_editor_prefered_mimes()
*/
window.egw_get_file_editor_prefered_mimes = function(_mime)
{
var fe = jQuery.extend(true, {},egw.link_get_registry('filemanager-editor'));
var ex_mimes = egw.preference('collab_excluded_mimes', 'filemanager');
var dblclick_action = egw.preference('document_doubleclick_action', 'filemanager');
if (dblclick_action == 'download' && typeof _mime === 'string')
{
ex_mimes = !ex_mimes ? _mime : ex_mimes+','+_mime;
}
if (fe && fe.mime && ex_mimes && typeof ex_mimes === 'string')
{
ex_mimes = ex_mimes.split(',');
for (var mime in fe.mime)
{
for (var i in ex_mimes)
{
if (ex_mimes[i] == mime) delete(fe.mime[mime]);
}
}
}
return fe && fe.mime?fe:null;
return egw.file_editor_prefered_mimes(_mime);
}
/**
* Install click handlers for popup and multiple triggers of uiaccountselection