fix: Обновлены пути Nextcloud с /crm2/ на /crm/ для нового сервера

Обновленные файлы:
- crm_extensions/nextcloud_editor/js/nextcloud-editor.js (5 путей)
- crm_extensions/file_storage/api/get_edit_urls.php (6 путей)
- modules/Documents/actions/NcPrepareEdit.php (2 пути)
- crm_extensions/file_storage/api/prepare_edit.php (1 путь)
- crm_extensions/file_storage/NextcloudClient.php (1 путь)
- data/CRMEntity.php (nc_path для новых файлов)

Все пути теперь используют /crm/ вместо /crm2/ для соответствия новому External Storage на office.clientright.ru
This commit is contained in:
Fedor
2025-10-20 17:23:20 +03:00
parent 75d3f7942b
commit f582cf9c0f
6 changed files with 16 additions and 16 deletions

View File

@@ -203,7 +203,7 @@ class NextcloudClient {
if (substr($fileName, 0, 1) === '_') { if (substr($fileName, 0, 1) === '_') {
$fileName = substr($fileName, 1); $fileName = substr($fileName, 1);
} }
$editUrl = $this->baseUrl . '/apps/files/?dir=/crm2/CRM_Active_Files/Documents/' . $recordId . '&openfile=' . urlencode($fileName); $editUrl = $this->baseUrl . '/apps/files/?dir=/crm/CRM_Active_Files/Documents/' . $recordId . '&openfile=' . urlencode($fileName);
return [ return [
'success' => true, 'success' => true,

View File

@@ -24,12 +24,12 @@ try {
// Создаем различные варианты URL // Создаем различные варианты URL
$urls = [ $urls = [
'direct_edit' => $baseUrl . '/apps/files/files/662?dir=/crm2/CRM_Active_Files/Documents/' . $recordId . '&openfile=' . urlencode($fileName) . '&action=edit', 'direct_edit' => $baseUrl . '/apps/files/files/662?dir=/crm/CRM_Active_Files/Documents/' . $recordId . '&openfile=' . urlencode($fileName) . '&action=edit',
'openfile_only' => $baseUrl . '/apps/files/files/662?dir=/crm2/CRM_Active_Files/Documents/' . $recordId . '&openfile=' . urlencode($fileName), 'openfile_only' => $baseUrl . '/apps/files/files/662?dir=/crm/CRM_Active_Files/Documents/' . $recordId . '&openfile=' . urlencode($fileName),
'edit_true' => $baseUrl . '/apps/files/files/662?dir=/crm2/CRM_Active_Files/Documents/' . $recordId . '&openfile=' . urlencode($fileName) . '&edit=true', 'edit_true' => $baseUrl . '/apps/files/files/662?dir=/crm/CRM_Active_Files/Documents/' . $recordId . '&openfile=' . urlencode($fileName) . '&edit=true',
'richdocuments' => $baseUrl . '/apps/richdocuments/open?path=/crm2/CRM_Active_Files/Documents/' . $recordId . '/' . urlencode($fileName), 'richdocuments' => $baseUrl . '/apps/richdocuments/open?path=/crm/CRM_Active_Files/Documents/' . $recordId . '/' . urlencode($fileName),
'onlyoffice' => $baseUrl . '/apps/onlyoffice/open?path=/crm2/CRM_Active_Files/Documents/' . $recordId . '/' . urlencode($fileName), 'onlyoffice' => $baseUrl . '/apps/onlyoffice/open?path=/crm/CRM_Active_Files/Documents/' . $recordId . '/' . urlencode($fileName),
'files_app' => $baseUrl . '/apps/files/?dir=/crm2/CRM_Active_Files/Documents/' . $recordId . '&openfile=' . urlencode($fileName) . '&action=edit' 'files_app' => $baseUrl . '/apps/files/?dir=/crm/CRM_Active_Files/Documents/' . $recordId . '&openfile=' . urlencode($fileName) . '&action=edit'
]; ];
echo json_encode([ echo json_encode([

View File

@@ -72,7 +72,7 @@ try {
if (substr($actualFileName, 0, 1) === '_') { if (substr($actualFileName, 0, 1) === '_') {
$actualFileName = substr($actualFileName, 1); $actualFileName = substr($actualFileName, 1);
} }
$nextcloudPath = '/crm2/CRM_Active_Files/Documents/' . $recordId . '/' . $actualFileName; $nextcloudPath = '/crm/CRM_Active_Files/Documents/' . $recordId . '/' . $actualFileName;
// Проверяем, существует ли файл в Nextcloud // Проверяем, существует ли файл в Nextcloud
$fileExists = $nextcloudClient->fileExists($nextcloudPath); $fileExists = $nextcloudClient->fileExists($nextcloudPath);

View File

@@ -78,17 +78,17 @@ function createEditUrls(baseEditUrl, recordId, fileName, fileId = 662) {
// Извлекаем базовый URL из базовой ссылки // Извлекаем базовый URL из базовой ссылки
const baseUrl = 'https://office.clientright.ru'; const baseUrl = 'https://office.clientright.ru';
const encodedFileName = encodeURIComponent(fileName); const encodedFileName = encodeURIComponent(fileName);
const filePath = `/crm2/CRM_Active_Files/Documents/${recordId}/${encodedFileName}`; const filePath = `/crm/CRM_Active_Files/Documents/${recordId}/${encodedFileName}`;
const urls = { const urls = {
'correct_path': fileId ? `${baseUrl}/apps/files/files/${fileId}?dir=/crm2/CRM_Active_Files/Documents/${recordId}&editing=false&openfile=true` : `${baseUrl}/apps/files/?dir=/crm2/CRM_Active_Files/Documents/${recordId}&openfile=${encodedFileName}`, 'correct_path': fileId ? `${baseUrl}/apps/files/files/${fileId}?dir=/crm/CRM_Active_Files/Documents/${recordId}&editing=false&openfile=true` : `${baseUrl}/apps/files/?dir=/crm/CRM_Active_Files/Documents/${recordId}&openfile=${encodedFileName}`,
'collabora_path': `${baseUrl}/apps/richdocuments/open?path=${filePath}`, 'collabora_path': `${baseUrl}/apps/richdocuments/open?path=${filePath}`,
'onlyoffice_path': `${baseUrl}/apps/onlyoffice/open?path=${filePath}`, 'onlyoffice_path': `${baseUrl}/apps/onlyoffice/open?path=${filePath}`,
'files_manager': `${baseUrl}/apps/files/?dir=/crm2/CRM_Active_Files/Documents/${recordId}&openfile=${encodedFileName}`, 'files_manager': `${baseUrl}/apps/files/?dir=/crm/CRM_Active_Files/Documents/${recordId}&openfile=${encodedFileName}`,
'collabora_id': fileId ? `${baseUrl}/apps/richdocuments/index?fileId=${fileId}` : null, 'collabora_id': fileId ? `${baseUrl}/apps/richdocuments/index?fileId=${fileId}` : null,
'onlyoffice_id': fileId ? `${baseUrl}/apps/onlyoffice?fileId=${fileId}` : null, 'onlyoffice_id': fileId ? `${baseUrl}/apps/onlyoffice?fileId=${fileId}` : null,
'files_app': `${baseUrl}/apps/files/?dir=/crm2/CRM_Active_Files/Documents/${recordId}&openfile=${encodedFileName}&action=edit`, 'files_app': `${baseUrl}/apps/files/?dir=/crm/CRM_Active_Files/Documents/${recordId}&openfile=${encodedFileName}&action=edit`,
'simple_files': `${baseUrl}/apps/files/?dir=/crm2/CRM_Active_Files/Documents/${recordId}` 'simple_files': `${baseUrl}/apps/files/?dir=/crm/CRM_Active_Files/Documents/${recordId}`
}; };
// Убираем null значения // Убираем null значения

View File

@@ -390,7 +390,7 @@ class CRMEntity {
? $s3_metadata['url'] ? $s3_metadata['url']
: ('https://'.$s3_metadata['bucket'].'/'.$s3_metadata['key']); : ('https://'.$s3_metadata['bucket'].'/'.$s3_metadata['key']);
// Исправляем nc_path - добавляем дублирование crm2 для Nextcloud // Исправляем nc_path - добавляем дублирование crm2 для Nextcloud
$nc_path = '/crm2/' . $s3_metadata['key']; $nc_path = '/crm/' . $s3_metadata['key'];
$sql4 = "UPDATE vtiger_notes SET filename=?, filelocationtype='E', filesize=?, s3_bucket=?, s3_key=?, s3_etag=?, nc_path=? WHERE notesid=?"; $sql4 = "UPDATE vtiger_notes SET filename=?, filelocationtype='E', filesize=?, s3_bucket=?, s3_key=?, s3_etag=?, nc_path=? WHERE notesid=?";
$params4 = array(strip_tags(trim($s3_url)), $s3_metadata['size'], $s3_metadata['bucket'], $s3_metadata['key'], $s3_metadata['etag'], $nc_path, $current_id); $params4 = array(strip_tags(trim($s3_url)), $s3_metadata['size'], $s3_metadata['bucket'], $s3_metadata['key'], $s3_metadata['etag'], $nc_path, $current_id);
$result4 = $adb->pquery($sql4, $params4); $result4 = $adb->pquery($sql4, $params4);

View File

@@ -81,7 +81,7 @@ class Documents_NcPrepareEdit_Action extends Vtiger_Action_Controller {
* Получение пути к директории * Получение пути к директории
*/ */
private function getDirPath($recordId): string { private function getDirPath($recordId): string {
return '/crm2/CRM_Active_Files/Documents/' . $recordId; return '/crm/CRM_Active_Files/Documents/' . $recordId;
} }
/** /**
@@ -131,7 +131,7 @@ class Documents_NcPrepareEdit_Action extends Vtiger_Action_Controller {
* Получение пути к файлу в Nextcloud * Получение пути к файлу в Nextcloud
*/ */
private function getNcPath(int $recordId, string $fileName): string { private function getNcPath(int $recordId, string $fileName): string {
return "/crm2/CRM_Active_Files/Documents/{$recordId}/" . rawurlencode($fileName); return "/crm/CRM_Active_Files/Documents/{$recordId}/" . rawurlencode($fileName);
} }
/** /**