first commit

This commit is contained in:
2025-08-07 13:15:31 +01:00
commit d903893b4c
21854 changed files with 4461308 additions and 0 deletions

View File

@ -0,0 +1,86 @@
/**
* Adapted from https://github.com/kurtnovack/stickytoolbar
*/
tinymce.PluginManager.add('stickytoolbar', function(editor, url) {
var offset = editor.settings.sticky_offset ? editor.settings.sticky_offset : 0;
editor.on('init', function() {
editor.setSticky();
});
$(window).on('scroll', function() {
editor.setSticky();
});
editor.setSticky = function () {
offset = editor.settings.sticky_offset ? editor.settings.sticky_offset : 0;
var container = editor.editorContainer;
var toolbars = $(container).find('.mce-toolbar-grp');
var statusbar = $(container).find('.mce-statusbar');
if (editor.isSticky()) {
$(container).css({
paddingTop: toolbars.outerHeight()
});
if (editor.isAtBottom()) {
toolbars.css({
top: 'auto',
bottom: statusbar.outerHeight(),
position: 'absolute',
width: '100%',
borderBottom: 'none'
});
} else {
toolbars.css({
top: offset,
bottom: 'auto',
position: 'fixed',
width: $(container).width(),
borderBottom: '1px solid rgba(0,0,0,0.2)'
});
}
} else {
$(container).css({
paddingTop: 0
});
toolbars.css({
top: 0,
position: 'relative',
width: 'auto',
borderBottom: 'none'
});
}
};
editor.isSticky = function () {
var container = editor.editorContainer,
editorTop = container.getBoundingClientRect().top;
if (editorTop < offset) {
return true;
}
return false;
};
editor.isAtBottom = function () {
const container = editor.getContainer();
const editorPosition = container.getBoundingClientRect().top,
statusbar = container.querySelector('.mce-statusbar'),
topPart = container.querySelector('.mce-top-part');
const statusbarHeight = statusbar ? statusbar.offsetHeight : 0,
topPartHeight = topPart ? topPart.offsetHeight : 0;
const stickyHeight = -(container.offsetHeight - topPartHeight - statusbarHeight);
if (editorPosition < stickyHeight + offset) {
return true;
}
return false;
};
});

View File

@ -0,0 +1 @@
tinymce.PluginManager.add("stickytoolbar",(function(t,o){var e=t.settings.sticky_offset?t.settings.sticky_offset:0;t.on("init",(function(){t.setSticky()}));$(window).on("scroll",(function(){t.setSticky()}));t.setSticky=function(){e=t.settings.sticky_offset?t.settings.sticky_offset:0;var o=t.editorContainer;var i=$(o).find(".mce-toolbar-grp");var s=$(o).find(".mce-statusbar");if(t.isSticky()){$(o).css({paddingTop:i.outerHeight()});if(t.isAtBottom()){i.css({top:"auto",bottom:s.outerHeight(),position:"absolute",width:"100%",borderBottom:"none"})}else{i.css({top:e,bottom:"auto",position:"fixed",width:$(o).width(),borderBottom:"1px solid rgba(0,0,0,0.2)"})}}else{$(o).css({paddingTop:0});i.css({top:0,position:"relative",width:"auto",borderBottom:"none"})}};t.isSticky=function(){var o=t.editorContainer,i=o.getBoundingClientRect().top;if(i<e){return true}return false};t.isAtBottom=function(){const o=t.getContainer();const i=o.getBoundingClientRect().top,s=o.querySelector(".mce-statusbar"),n=o.querySelector(".mce-top-part");const r=s?s.offsetHeight:0,c=n?n.offsetHeight:0;const f=-(o.offsetHeight-c-r);if(i<f+e){return true}return false}}));