- Added comprehensive AI Assistant system (aiassist/ directory): * Vector search and embedding capabilities * Typebot proxy integration * Elastic search functionality * Message classification and chat history * MCP proxy for external integrations - Implemented Court Status API (GetCourtStatus.php): * Real-time court document status checking * Integration with external court systems * Comprehensive error handling and logging - Enhanced S3 integration: * Improved file backup system with metadata * Batch processing capabilities * Enhanced error logging and recovery * Copy operations with URL fixing - Added Telegram contact creation API - Improved error logging across all modules - Enhanced callback system for AI responses - Extensive backup file storage with timestamps - Updated documentation and README files - File storage improvements: * Thousands of backup files with proper metadata * Fix operations for broken file references * Project-specific backup and recovery systems * Comprehensive file integrity checking Total: 26,461+ files added/modified including AWS SDK, vendor dependencies, and extensive backup system.
58 lines
2.3 KiB
JavaScript
58 lines
2.3 KiB
JavaScript
/*
|
||
* Base64Image Plugin for CKEditor (http://github.com/nmmf/base64image)
|
||
* Created by ALL-INKL.COM - Neue Medien M<>nnich - 04. Feb 2014
|
||
* Licensed under the terms of GPL, LGPL and MPL licenses.
|
||
*/
|
||
CKEDITOR.plugins.add("base64image", {
|
||
lang : ["af","ar","bg","bn","bs","ca","cs","cy","da","de","el","en","en-au","en-ca","en-gb","eo","es","et","eu","fa","fi","fo","fr","fr-ca","gl","gu","he","hi","hr","hu","id","is","it","ja","ka","km","ko","ku","lt","lv","mk","mn","ms","nb","nl","no","pl","pt","pt-br","ro","ru","si","sk","sl","sq","sr","sr-latn","sv","th","tr","ug","uk","vi","zh","zh-cn"],
|
||
requires: "dialog",
|
||
icons : "base64image",
|
||
hidpi : true,
|
||
init : function(editor){
|
||
var pluginName = 'base64imageDialog';
|
||
|
||
editor.ui.addButton("base64image", {
|
||
label: editor.lang.common.image,
|
||
command: pluginName,
|
||
toolbar: "insert"
|
||
});
|
||
CKEDITOR.dialog.add(pluginName, this.path+"dialogs/base64image.js");
|
||
|
||
var allowed = 'img[alt,!src]{border-style,border-width,float,height,margin,margin-bottom,margin-left,margin-right,margin-top,width}',
|
||
required = 'img[alt,src]';
|
||
|
||
editor.addCommand( pluginName, new CKEDITOR.dialogCommand( pluginName, {
|
||
allowedContent: allowed,
|
||
requiredContent: required,
|
||
contentTransformations: [
|
||
[ 'img{width}: sizeToStyle', 'img[width]: sizeToAttribute' ],
|
||
[ 'img{float}: alignmentToStyle', 'img[align]: alignmentToAttribute' ]
|
||
]
|
||
} ) );
|
||
editor.on("doubleclick", function(evt){
|
||
if(evt.data.element && !evt.data.element.isReadOnly() && evt.data.element.getName() === "img") {
|
||
evt.data.dialog = pluginName;
|
||
editor.getSelection().selectElement(evt.data.element);
|
||
}
|
||
});
|
||
if(editor.addMenuItem) {
|
||
editor.addMenuGroup("base64imageGroup");
|
||
editor.addMenuItem("base64imageItem", {
|
||
label: editor.lang.common.image,
|
||
icon: this.path+"icons/base64image.png",
|
||
command: pluginName,
|
||
group: "base64imageGroup"
|
||
});
|
||
}
|
||
if(editor.contextMenu) {
|
||
editor.contextMenu.addListener(function(element, selection) {
|
||
if(element && element.getName() === "img") {
|
||
editor.getSelection().selectElement(element);
|
||
return { base64imageItem: CKEDITOR.TRISTATE_ON };
|
||
}
|
||
return null;
|
||
});
|
||
}
|
||
}
|
||
});
|