Files
crm.clientright.ru/modules/Workflow2/tasks/WfTaskCreateuser.php
Fedor ac7467f0b4 Major CRM updates: AI Assistant, Court Status API, S3 integration improvements, and extensive file storage system
- 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.
2025-10-16 11:17:21 +03:00

76 lines
2.2 KiB
PHP

<?php
require_once(realpath(dirname(__FILE__).'/../autoload_wf.php'));
class WfTaskCreateuser extends \Workflow\Task
{
/**
* @var \Workflow\Preset\FieldSetter
*/
private $fieldSetter = false;
protected $_envSettings = array("created_user_id");
public function init() {
$this->fieldSetter = $this->addPreset("FieldSetter", "setter", array(
'fromModule' => $this->getModuleName(),
'toModule' => 'Users',
'refFields' => false
));
}
public function handleTask(&$context) {
/* Insert here source code to execute the task */
$dummy = \Workflow\VTEntity::getDummy();
$setterMap = $this->get("setter");
// var_dump($userid);exit();
/*$focus = CRMEntity::getInstance('Users');
$focus->id = $userid;
$focus->mode = 'edit';
$focus->retrieve_entity_info($userid, 'Users');
*/
$userModel = \Users_Record_Model::getCleanInstance('Users');
$this->fieldSetter->apply($dummy, $setterMap, $context, $this);
$data = $dummy->getData();
foreach($data as $key => $value) {
$userModel->set($key, $value);
}
$userModel->set('mode', '');
$userModel->save();
$context->setEnvironment('created_user_id', $userModel->get('id'), $this);
return "yes";
}
public function beforeGetTaskform($viewer) {
$setter = $this->get('setter');
if($setter == -1) {
$mandatoryFields = VtUtils::getMandatoryFields('Users');
$startFields = array();
$counter = 1;
$mandatoryFields = array('user_name', 'email1', 'last_name', 'roleid', 'user_password', 'confirm_password');
foreach($mandatoryFields as $field) {
$startFields["".$counter] = array("field" => $field, "mode" => "value", "value" => "", "fixed" => true);
$counter++;
}
$this->set("setter", $startFields);
}
/* Insert here source code to create custom configurations pages */
}
public function beforeSave(&$values) {
/* Insert here source code to modify the values the user submit on configuration */
}
}