✅ ЧТО СДЕЛАНО: - Поднят новый standalone OnlyOffice Document Server (порт 8083) - Настроен Nginx для доступа через office.clientright.ru:9443 - Создан open_file_v3_standalone.php для работы с новым OnlyOffice - Реализована поддержка прямых S3 URL (bucket публичный) - Добавлен s3_proxy.php с поддержкой Range requests - Создан onlyoffice_callback.php для сохранения (базовая версия) - Файлы успешно открываются и загружаются! ⚠️ TODO (на завтра): - Доработать onlyoffice_callback.php для сохранения обратно в ОРИГИНАЛЬНЫЙ путь в S3 - Добавить Redis маппинг documentKey → S3 path - Обновить CRM JS для использования open_file_v3_standalone.php - Протестировать сохранение файлов - Удалить тестовые файлы 📊 РЕЗУЛЬТАТ: - OnlyOffice Standalone РАБОТАЕТ! ✅ - Файлы открываются напрямую из S3 ✅ - Редактор загружается БЫСТРО ✅ - Автосохранение настроено ✅ (но нужна доработка callback)
78 lines
2.0 KiB
JavaScript
78 lines
2.0 KiB
JavaScript
'use strict';
|
|
|
|
const SqlString = require('sqlstring');
|
|
|
|
const ConnectionConfig = require('./lib/connection_config.js');
|
|
const parserCache = require('./lib/parsers/parser_cache.js');
|
|
|
|
const Connection = require('./lib/connection.js');
|
|
|
|
exports.createConnection = require('./lib/create_connection.js');
|
|
exports.connect = exports.createConnection;
|
|
exports.Connection = Connection;
|
|
exports.ConnectionConfig = ConnectionConfig;
|
|
|
|
const Pool = require('./lib/pool.js');
|
|
const PoolCluster = require('./lib/pool_cluster.js');
|
|
const createPool = require('./lib/create_pool.js');
|
|
const createPoolCluster = require('./lib/create_pool_cluster.js');
|
|
|
|
exports.createPool = createPool;
|
|
|
|
exports.createPoolCluster = createPoolCluster;
|
|
|
|
exports.createQuery = Connection.createQuery;
|
|
|
|
exports.Pool = Pool;
|
|
|
|
exports.PoolCluster = PoolCluster;
|
|
|
|
exports.createServer = function (handler) {
|
|
const Server = require('./lib/server.js');
|
|
const s = new Server();
|
|
if (handler) {
|
|
s.on('connection', handler);
|
|
}
|
|
return s;
|
|
};
|
|
|
|
exports.PoolConnection = require('./lib/pool_connection.js');
|
|
exports.authPlugins = require('./lib/auth_plugins');
|
|
exports.escape = SqlString.escape;
|
|
exports.escapeId = SqlString.escapeId;
|
|
exports.format = SqlString.format;
|
|
exports.raw = SqlString.raw;
|
|
|
|
exports.__defineGetter__(
|
|
'createConnectionPromise',
|
|
() => require('./promise.js').createConnection
|
|
);
|
|
|
|
exports.__defineGetter__(
|
|
'createPoolPromise',
|
|
() => require('./promise.js').createPool
|
|
);
|
|
|
|
exports.__defineGetter__(
|
|
'createPoolClusterPromise',
|
|
() => require('./promise.js').createPoolCluster
|
|
);
|
|
|
|
exports.__defineGetter__('Types', () => require('./lib/constants/types.js'));
|
|
|
|
exports.__defineGetter__('Charsets', () =>
|
|
require('./lib/constants/charsets.js')
|
|
);
|
|
|
|
exports.__defineGetter__('CharsetToEncoding', () =>
|
|
require('./lib/constants/charset_encodings.js')
|
|
);
|
|
|
|
exports.setMaxParserCache = function (max) {
|
|
parserCache.setMaxCache(max);
|
|
};
|
|
|
|
exports.clearParserCache = function () {
|
|
parserCache.clearCache();
|
|
};
|