✅ ЧТО СДЕЛАНО: - Поднят новый 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)
28 lines
609 B
JavaScript
28 lines
609 B
JavaScript
const genfun = require('./')
|
|
const { d } = genfun.formats
|
|
|
|
function multiply (a, b) {
|
|
return a * b
|
|
}
|
|
|
|
function addAndMultiplyNumber (val) {
|
|
const fn = genfun(`
|
|
function (n) {
|
|
if (typeof n !== 'number') {
|
|
throw new Error('argument should be a number')
|
|
}
|
|
const result = multiply(${d(val)}, n + ${d(val)})
|
|
return result
|
|
}
|
|
`)
|
|
|
|
// use fn.toString() if you want to see the generated source
|
|
|
|
return fn.toFunction({multiply})
|
|
}
|
|
|
|
const addAndMultiply2 = addAndMultiplyNumber(2)
|
|
|
|
console.log(addAndMultiply2.toString())
|
|
console.log('(3 + 2) * 2 =', addAndMultiply2(3))
|