MDL-78903 tiny_media: show repositories if editor filepicker type set

This commit is contained in:
Meirza 2023-10-26 15:30:22 +07:00
parent 9dbbd31076
commit dc7da1a416
10 changed files with 118 additions and 52 deletions

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -34,10 +34,13 @@ import {component} from "./common";
import Modal from './embedmodal';
import Selectors from './selectors';
import {getEmbedPermissions} from './options';
import {getFilePicker} from 'editor_tiny/options';
export const MediaEmbed = class {
editor = null;
canShowFilePicker = false;
canShowFilePickerPoster = false;
canShowFilePickerTrack = false;
/**
* @property {Object} The names of the alignment options.
@ -56,7 +59,12 @@ export const MediaEmbed = class {
constructor(editor) {
const permissions = getEmbedPermissions(editor);
this.canShowFilePicker = permissions.filepicker;
// Indicates whether the file picker can be shown.
this.canShowFilePicker = permissions.filepicker && (typeof getFilePicker(editor, 'media') !== 'undefined');
this.canShowFilePickerPoster = permissions.filepicker && (typeof getFilePicker(editor, 'image') !== 'undefined');
this.canShowFilePickerTrack = permissions.filepicker && (typeof getFilePicker(editor, 'subtitle') !== 'undefined');
this.editor = editor;
}
@ -91,6 +99,8 @@ export const MediaEmbed = class {
return Object.assign({}, {
elementid: this.editor.getElement().id,
showfilepicker: this.canShowFilePicker,
showfilepickerposter: this.canShowFilePickerPoster,
showfilepickertrack: this.canShowFilePickerTrack,
langsinstalled: languages.installed,
langsavailable: languages.available,
link: true,
@ -443,7 +453,7 @@ export const MediaEmbed = class {
await modal.getBody();
const $root = modal.getRoot();
const root = $root[0];
if (this.canShowFilePicker) {
if (this.canShowFilePicker || this.canShowFilePickerPoster || this.canShowFilePickerTrack) {
root.addEventListener('click', this.clickHandler.bind(this));
}

View File

@ -30,6 +30,7 @@ import Selectors from './selectors';
import Modal from './imagemodal';
import {getImagePermissions} from './options';
import {component} from "./common";
import {getFilePicker} from 'editor_tiny/options';
export const MediaImage = class {
@ -48,7 +49,10 @@ export const MediaImage = class {
constructor(editor) {
const permissions = getImagePermissions(editor);
this.canShowFilePicker = permissions.filepicker;
// Indicates whether the file picker can be shown.
this.canShowFilePicker = permissions.filepicker && (typeof getFilePicker(editor, 'image') !== 'undefined');
this.editor = editor;
}

View File

@ -32,9 +32,11 @@
</label>
<div class="input-group input-append w-100">
<input id="audio-audio-url-input" class="form-control tiny_media_url_entry" type="url" size="32" value="{{.}}"/>
{{#showfilepicker}}
<span class="input-group-append">
<button class="btn btn-secondary openmediabrowser" type="button">{{#str}} browserepositories, tiny_media {{/str}}</button>
</span>
{{/showfilepicker}}
</div>
</div>
<div class="addcomponent-wrapper">
@ -60,9 +62,11 @@
</label>
<div class="input-group input-append w-100">
<input id="audio-audio-url-input" class="form-control tiny_media_url_entry" type="url" size="32"/>
{{#showfilepicker}}
<span class="input-group-append">
<button class="btn btn-secondary openmediabrowser" type="button">{{#str}} browserepositories, tiny_media {{/str}}</button>
</span>
{{/showfilepicker}}
</div>
</div>
<div class="addcomponent-wrapper">
@ -248,9 +252,11 @@
</label>
<div class="input-group input-append w-100">
<input id="subtitle-audio-url-input" class="form-control tiny_media_url_entry" type="url" size="32" value="{{src}}"/>
{{#showfilepickertrack}}
<span class="input-group-append">
<button class="btn btn-secondary openmediabrowser" type="button">{{#str}} browserepositories, tiny_media {{/str}}</button>
</span>
<button class="btn btn-secondary openmediabrowser" type="button">{{#str}} browserepositories, tiny_media {{/str}}</button>
</span>
{{/showfilepickertrack}}
</div>
</div>
</div>
@ -298,9 +304,11 @@
</label>
<div class="input-group input-append w-100">
<input id="subtitle-audio-url-input" class="form-control tiny_media_url_entry" type="url" size="32"/>
{{#showfilepickertrack}}
<span class="input-group-append">
<button class="btn btn-secondary openmediabrowser" type="button">{{#str}} browserepositories, tiny_media {{/str}}</button>
</span>
<button class="btn btn-secondary openmediabrowser" type="button">{{#str}} browserepositories, tiny_media {{/str}}</button>
</span>
{{/showfilepickertrack}}
</div>
</div>
</div>
@ -356,9 +364,11 @@
</label>
<div class="input-group input-append w-100">
<input id="caption-audio-url-input" class="form-control tiny_media_url_entry" type="url" size="32" value="{{src}}"/>
{{#showfilepickertrack}}
<span class="input-group-append">
<button class="btn btn-secondary openmediabrowser" type="button">{{#str}} browserepositories, tiny_media {{/str}}</button>
</span>
<button class="btn btn-secondary openmediabrowser" type="button">{{#str}} browserepositories, tiny_media {{/str}}</button>
</span>
{{/showfilepickertrack}}
</div>
</div>
</div>
@ -406,9 +416,11 @@
</label>
<div class="input-group input-append w-100">
<input id="caption-audio-url-input" class="form-control tiny_media_url_entry" type="url" size="32"/>
{{#showfilepickertrack}}
<span class="input-group-append">
<button class="btn btn-secondary openmediabrowser" type="button">{{#str}} browserepositories, tiny_media {{/str}}</button>
</span>
<button class="btn btn-secondary openmediabrowser" type="button">{{#str}} browserepositories, tiny_media {{/str}}</button>
</span>
{{/showfilepickertrack}}
</div>
</div>
</div>
@ -464,9 +476,11 @@
</label>
<div class="input-group input-append w-100">
<input id="description-audio-url-input" class="form-control tiny_media_url_entry" type="url" size="32" value="{{src}}"/>
{{#showfilepickertrack}}
<span class="input-group-append">
<button class="btn btn-secondary openmediabrowser" type="button">{{#str}} browserepositories, tiny_media {{/str}}</button>
</span>
<button class="btn btn-secondary openmediabrowser" type="button">{{#str}} browserepositories, tiny_media {{/str}}</button>
</span>
{{/showfilepickertrack}}
</div>
</div>
</div>
@ -514,9 +528,11 @@
</label>
<div class="input-group input-append w-100">
<input id="description-audio-url-input" class="form-control tiny_media_url_entry" type="url" size="32"/>
{{#showfilepickertrack}}
<span class="input-group-append">
<button class="btn btn-secondary openmediabrowser" type="button">{{#str}} browserepositories, tiny_media {{/str}}</button>
</span>
<button class="btn btn-secondary openmediabrowser" type="button">{{#str}} browserepositories, tiny_media {{/str}}</button>
</span>
{{/showfilepickertrack}}
</div>
</div>
</div>
@ -572,9 +588,11 @@
</label>
<div class="input-group input-append w-100">
<input id="chapter-audio-url-input" class="form-control tiny_media_url_entry" type="url" size="32" value="{{src}}"/>
{{#showfilepickertrack}}
<span class="input-group-append">
<button class="btn btn-secondary openmediabrowser" type="button">{{#str}} browserepositories, tiny_media {{/str}}</button>
</span>
<button class="btn btn-secondary openmediabrowser" type="button">{{#str}} browserepositories, tiny_media {{/str}}</button>
</span>
{{/showfilepickertrack}}
</div>
</div>
</div>
@ -622,9 +640,11 @@
</label>
<div class="input-group input-append w-100">
<input id="chapter-audio-url-input" class="form-control tiny_media_url_entry" type="url" size="32"/>
{{#showfilepickertrack}}
<span class="input-group-append">
<button class="btn btn-secondary openmediabrowser" type="button">{{#str}} browserepositories, tiny_media {{/str}}</button>
</span>
<button class="btn btn-secondary openmediabrowser" type="button">{{#str}} browserepositories, tiny_media {{/str}}</button>
</span>
{{/showfilepickertrack}}
</div>
</div>
</div>
@ -681,9 +701,11 @@
</label>
<div class="input-group input-append w-100">
<input id="metadata-audio-url-input" class="form-control tiny_media_url_entry" type="url" size="32" value="{{src}}"/>
{{#showfilepickertrack}}
<span class="input-group-append">
<button class="btn btn-secondary openmediabrowser" type="button">{{#str}} browserepositories, tiny_media {{/str}}</button>
</span>
<button class="btn btn-secondary openmediabrowser" type="button">{{#str}} browserepositories, tiny_media {{/str}}</button>
</span>
{{/showfilepickertrack}}
</div>
</div>
</div>
@ -731,9 +753,11 @@
</label>
<div class="input-group input-append w-100">
<input id="metadata-audio-url-input" class="form-control tiny_media_url_entry" type="url" size="32"/>
{{#showfilepickertrack}}
<span class="input-group-append">
<button class="btn btn-secondary openmediabrowser" type="button">{{#str}} browserepositories, tiny_media {{/str}}</button>
</span>
<button class="btn btn-secondary openmediabrowser" type="button">{{#str}} browserepositories, tiny_media {{/str}}</button>
</span>
{{/showfilepickertrack}}
</div>
</div>
</div>

View File

@ -31,9 +31,11 @@
</label>
<div class="input-group input-append w-100">
<input id="source-url-input" class="form-control tiny_media_url_entry" type="url" size="32"/>
{{#showfilepicker}}
<span class="input-group-append">
<button class="btn btn-secondary openmediabrowser" type="button">{{#str}} browserepositories, tiny_media {{/str}}</button>
</span>
{{/showfilepicker}}
</div>
</div>
</div>

View File

@ -32,9 +32,11 @@
</label>
<div class="input-group input-append w-100">
<input id="video-video-url-input" class="form-control tiny_media_url_entry" type="url" size="32" value="{{.}}"/>
{{#showfilepicker}}
<span class="input-group-append">
<button class="btn btn-secondary openmediabrowser" type="button">{{#str}} browserepositories, tiny_media {{/str}}</button>
</span>
{{/showfilepicker}}
</div>
</div>
<div class="addcomponent-wrapper">
@ -60,9 +62,11 @@
</label>
<div class="input-group input-append w-100">
<input id="video-video-url-input" class="form-control tiny_media_url_entry" type="url" size="32"/>
{{#showfilepicker}}
<span class="input-group-append">
<button class="btn btn-secondary openmediabrowser" type="button">{{#str}} browserepositories, tiny_media {{/str}}</button>
</span>
<button class="btn btn-secondary openmediabrowser" type="button">{{#str}} browserepositories, tiny_media {{/str}}</button>
</span>
{{/showfilepicker}}
</div>
</div>
<div class="addcomponent-wrapper">
@ -133,9 +137,11 @@
</label>
<div class="input-group input-append w-100">
<input id="display-video-url-input" class="form-control tiny_media_url_entry" type="url" size="32" value="{{video.poster}}"/>
{{#showfilepickerposter}}
<span class="input-group-append">
<button class="btn btn-secondary openmediabrowser" type="button">{{#str}} browserepositories, tiny_media {{/str}}</button>
</span>
<button class="btn btn-secondary openmediabrowser" type="button">{{#str}} browserepositories, tiny_media {{/str}}</button>
</span>
{{/showfilepickerposter}}
</div>
</div>
</div>
@ -276,9 +282,11 @@
</label>
<div class="input-group input-append w-100">
<input id="subtitle-video-url-input" class="form-control tiny_media_url_entry" type="url" size="32" value="{{src}}"/>
{{#showfilepickertrack}}
<span class="input-group-append">
<button class="btn btn-secondary openmediabrowser" type="button">{{#str}} browserepositories, tiny_media {{/str}}</button>
</span>
<button class="btn btn-secondary openmediabrowser" type="button">{{#str}} browserepositories, tiny_media {{/str}}</button>
</span>
{{/showfilepickertrack}}
</div>
</div>
</div>
@ -326,9 +334,11 @@
</label>
<div class="input-group input-append w-100">
<input id="subtitle-video-url-input" class="form-control tiny_media_url_entry" type="url" size="32"/>
{{#showfilepickertrack}}
<span class="input-group-append">
<button class="btn btn-secondary openmediabrowser" type="button">{{#str}} browserepositories, tiny_media {{/str}}</button>
</span>
<button class="btn btn-secondary openmediabrowser" type="button">{{#str}} browserepositories, tiny_media {{/str}}</button>
</span>
{{/showfilepickertrack}}
</div>
</div>
</div>
@ -384,9 +394,11 @@
</label>
<div class="input-group input-append w-100">
<input id="caption-video-url-input" class="form-control tiny_media_url_entry" type="url" size="32" value="{{src}}"/>
{{#showfilepickertrack}}
<span class="input-group-append">
<button class="btn btn-secondary openmediabrowser" type="button">{{#str}} browserepositories, tiny_media {{/str}}</button>
</span>
<button class="btn btn-secondary openmediabrowser" type="button">{{#str}} browserepositories, tiny_media {{/str}}</button>
</span>
{{/showfilepickertrack}}
</div>
</div>
</div>
@ -434,9 +446,11 @@
</label>
<div class="input-group input-append w-100">
<input id="caption-video-url-input" class="form-control tiny_media_url_entry" type="url" size="32"/>
{{#showfilepickertrack}}
<span class="input-group-append">
<button class="btn btn-secondary openmediabrowser" type="button">{{#str}} browserepositories, tiny_media {{/str}}</button>
</span>
<button class="btn btn-secondary openmediabrowser" type="button">{{#str}} browserepositories, tiny_media {{/str}}</button>
</span>
{{/showfilepickertrack}}
</div>
</div>
</div>
@ -492,9 +506,11 @@
</label>
<div class="input-group input-append w-100">
<input id="description-video-url-input" class="form-control tiny_media_url_entry" type="url" size="32" value="{{src}}"/>
{{#showfilepickertrack}}
<span class="input-group-append">
<button class="btn btn-secondary openmediabrowser" type="button">{{#str}} browserepositories, tiny_media {{/str}}</button>
</span>
<button class="btn btn-secondary openmediabrowser" type="button">{{#str}} browserepositories, tiny_media {{/str}}</button>
</span>
{{/showfilepickertrack}}
</div>
</div>
</div>
@ -542,9 +558,11 @@
</label>
<div class="input-group input-append w-100">
<input id="description-video-url-input" class="form-control tiny_media_url_entry" type="url" size="32"/>
{{#showfilepickertrack}}
<span class="input-group-append">
<button class="btn btn-secondary openmediabrowser" type="button">{{#str}} browserepositories, tiny_media {{/str}}</button>
</span>
<button class="btn btn-secondary openmediabrowser" type="button">{{#str}} browserepositories, tiny_media {{/str}}</button>
</span>
{{/showfilepickertrack}}
</div>
</div>
</div>
@ -600,9 +618,11 @@
</label>
<div class="input-group input-append w-100">
<input id="chapter-video-url-input" class="form-control tiny_media_url_entry" type="url" size="32" value="{{src}}"/>
{{#showfilepickertrack}}
<span class="input-group-append">
<button class="btn btn-secondary openmediabrowser" type="button">{{#str}} browserepositories, tiny_media {{/str}}</button>
</span>
<button class="btn btn-secondary openmediabrowser" type="button">{{#str}} browserepositories, tiny_media {{/str}}</button>
</span>
{{/showfilepickertrack}}
</div>
</div>
</div>
@ -650,9 +670,11 @@
</label>
<div class="input-group input-append w-100">
<input id="chapter-video-url-input" class="form-control tiny_media_url_entry" type="url" size="32"/>
{{#showfilepickertrack}}
<span class="input-group-append">
<button class="btn btn-secondary openmediabrowser" type="button">{{#str}} browserepositories, tiny_media {{/str}}</button>
</span>
<button class="btn btn-secondary openmediabrowser" type="button">{{#str}} browserepositories, tiny_media {{/str}}</button>
</span>
{{/showfilepickertrack}}
</div>
</div>
</div>
@ -709,9 +731,11 @@
</label>
<div class="input-group input-append w-100">
<input id="metadata-video-url-input" class="form-control tiny_media_url_entry" type="url" size="32" value="{{src}}"/>
{{#showfilepickertrack}}
<span class="input-group-append">
<button class="btn btn-secondary openmediabrowser" type="button">{{#str}} browserepositories, tiny_media {{/str}}</button>
</span>
<button class="btn btn-secondary openmediabrowser" type="button">{{#str}} browserepositories, tiny_media {{/str}}</button>
</span>
{{/showfilepickertrack}}
</div>
</div>
</div>
@ -759,9 +783,11 @@
</label>
<div class="input-group input-append w-100">
<input id="metadata-video-url-input" class="form-control tiny_media_url_entry" type="url" size="32"/>
{{#showfilepickertrack}}
<span class="input-group-append">
<button class="btn btn-secondary openmediabrowser" type="button">{{#str}} browserepositories, tiny_media {{/str}}</button>
</span>
<button class="btn btn-secondary openmediabrowser" type="button">{{#str}} browserepositories, tiny_media {{/str}}</button>
</span>
{{/showfilepickertrack}}
</div>
</div>
</div>

View File

@ -48,7 +48,7 @@
{{^showfilepicker}}
<div class="mb-1">
<label for="{{elementid}}_tiny_image_urlentry">{{#str}} enterurl, tiny_media {{/str}}</label>
<input name="urlentry" class="form-control fullwidth tiny_image_urlentry" type="url" id="{{elementid}}_tiny_image_urlentry" size="32"/>
<input name="urlentry" class="form-control fullwidth tiny_image_urlentry" type="url" id="{{elementid}}_tiny_image_urlentry" size="32" value="{{src}}">
</div>
{{/showfilepicker}}
<div style="display:none" role="alert" class="alert alert-warning mb-1 tiny_image_altwarning">