- 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.
67 lines
2.4 KiB
PHP
67 lines
2.4 KiB
PHP
<?php
|
|
/**
|
|
* Created by JetBrains PhpStorm.
|
|
* User: Stefan Warnat <support@stefanwarnat.de>
|
|
* Date: 20.09.14 23:15
|
|
* You must not use this file without permission.
|
|
*/
|
|
namespace Workflow\Plugins\RelationAddExtend;
|
|
|
|
class ModComments extends \Workflow\RelationAddExtend {
|
|
private static $Cache = array();
|
|
|
|
/*
|
|
* Must be equal to classname and filename!!!
|
|
*/
|
|
protected $_relatedModule = 'ModComments';
|
|
protected $_title = 'Comments';
|
|
|
|
public function addRelatedRecord($sourceRecordId, $targetRecordId) {
|
|
$adb = \PearDatabase::getInstance();
|
|
|
|
$sql = 'SELECT createdtime, modifiedtime, smownerid, modifiedby FROM vtiger_crmentity WHERE crmid = ?';
|
|
$result = $adb->pquery($sql, array(intval($sourceRecordId)));
|
|
$data = $adb->fetchByAssoc($result);
|
|
|
|
$sql = 'SELECT modcommentsid FROM vtiger_modcomments
|
|
INNER JOIN vtiger_crmentity ON (vtiger_crmentity.crmid = modcommentsid)
|
|
WHERE related_to = ? AND smownerid = ? AND createdtime = ? AND commentcontent = (SELECT commentcontent FROM vtiger_modcomments WHERE modcommentsid = ?)';
|
|
|
|
$result = $adb->pquery($sql, array(
|
|
$targetRecordId,
|
|
$data['smownerid'],
|
|
$data['createdtime'],
|
|
intval($sourceRecordId)
|
|
));
|
|
if($adb->num_rows($result) > 0) {
|
|
return true;
|
|
}
|
|
|
|
$record = \ModComments_Record_Model::getInstanceById(intval($sourceRecordId));
|
|
$recordModel = \Vtiger_Record_Model::getCleanInstance("ModComments");
|
|
$recordModel->getData();
|
|
$recordModel->set('mode', '');
|
|
|
|
$recordModel->set("commentcontent", $record->get('commentcontent'));
|
|
$recordModel->set("related_to", $targetRecordId);
|
|
|
|
$recordModel->set("assigned_user_id", $record->get('assigned_user_id'));
|
|
$recordModel->set("userid", $record->get('userid'));
|
|
|
|
$recordModel->save();
|
|
|
|
$sql = 'UPDATE vtiger_crmentity SET createdtime = ?, modifiedtime = ?, smownerid = ?, modifiedby = ? WHERE crmid = ?';
|
|
$adb->pquery($sql, array(
|
|
$data['createdtime'],
|
|
$data['modifiedtime'],
|
|
$data['smownerid'],
|
|
$data['modifiedby'],
|
|
$recordModel->getId(),
|
|
));
|
|
|
|
return true;
|
|
}
|
|
|
|
}
|
|
|
|
\Workflow\RelationAddExtend::register(str_replace('.inc.php', '', basename(__FILE__)), '\Workflow\\Plugins\\RelationAddExtend\\'.str_replace('.inc.php', '', basename(__FILE__))); |