Files
crm.clientright.ru/layouts/vlayout/modules/Settings/Workflows/Tasks/VTCreateTodoTask.tpl
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

105 lines
5.6 KiB
Smarty

{*<!--
/*********************************************************************************
** The contents of this file are subject to the vtiger CRM Public License Version 1.0
* ("License"); You may not use this file except in compliance with the License
* The Original Code is: vtiger CRM Open Source
* The Initial Developer of the Original Code is vtiger.
* Portions created by vtiger are Copyright (C) vtiger.
* All Rights Reserved.
*
********************************************************************************/
-->*}
{strip}
<div class="row-fluid">
<div class="row-fluid padding-bottom1per">
<span class="span2">{vtranslate('LBL_TITLE',$QUALIFIED_MODULE)}<span class="redColor">*</span></span>
<input data-validation-engine='validate[required]' class="span9" name="todo" type="text" value="{$TASK_OBJECT->todo}" />
</div>
<div class="row-fluid padding-bottom1per">
<span class="span2">{vtranslate('LBL_DESCRIPTION',$QUALIFIED_MODULE)}</span>
<textarea class="span9" name="description">{$TASK_OBJECT->description}</textarea>
</div>
<div class="row-fluid padding-bottom1per">
<span class="span2">{vtranslate('LBL_STATUS',$QUALIFIED_MODULE)}</span>
<span class="span5">
{assign var=STATUS_PICKLIST_VALUES value=$TASK_TYPE_MODEL->getTaskBaseModule()->getField('taskstatus')->getPickListValues()}
<select name="status" class="chzn-select">
{foreach from=$STATUS_PICKLIST_VALUES item=STATUS_PICKLIST_VALUE key=STATUS_PICKLIST_KEY}
<option value="{$STATUS_PICKLIST_KEY}" {if $STATUS_PICKLIST_KEY eq $TASK_OBJECT->status} selected="" {/if}>{$STATUS_PICKLIST_VALUE}</option>
{/foreach}
</select>
</span>
</div>
<div class="row-fluid padding-bottom1per">
<span class="span2">{vtranslate('LBL_PRIORITY',$QUALIFIED_MODULE)}</span>
<span class="span5">
{assign var=PRIORITY_PICKLIST_VALUES value=$TASK_TYPE_MODEL->getTaskBaseModule()->getField('taskpriority')->getPickListValues()}
<select name="priority" class="chzn-select">
{foreach from=$PRIORITY_PICKLIST_VALUES item=PRIORITY_PICKLIST_VALUE key=PRIORITY_PICKLIST_KEY}
<option value="{$PRIORITY_PICKLIST_KEY}" {if $PRIORITY_PICKLIST_KEY eq $TASK_OBJECT->priority} selected="" {/if}>{$PRIORITY_PICKLIST_VALUE}</option>
{/foreach}
</select>
</span>
</div>
<div class="row-fluid padding-bottom1per">
<span class="span2">{vtranslate('LBL_ASSIGNED_TO',$QUALIFIED_MODULE)}</span>
<span class="span5">
<select name="assigned_user_id" class="chzn-select">
<option value="">{vtranslate('LBL_SELECT_OPTION','Vtiger')}</option>
{foreach from=$ASSIGNED_TO key=LABEL item=ASSIGNED_USERS_LIST}
<optgroup label="{vtranslate($LABEL,$QUALIFIED_MODULE)}">
{foreach from=$ASSIGNED_USERS_LIST item=ASSIGNED_USER key=ASSIGNED_USER_KEY}
<option value="{$ASSIGNED_USER_KEY}" {if $ASSIGNED_USER_KEY eq $TASK_OBJECT->assigned_user_id} selected="" {/if}>{$ASSIGNED_USER}</option>
{/foreach}
</optgroup>
{/foreach}
<optgroup label="{vtranslate('LBL_SPECIAL_OPTIONS')}">
<option value="copyParentOwner" {if $TASK_OBJECT->assigned_user_id eq 'copyParentOwner'} selected="" {/if}>{vtranslate('LBL_PARENT_OWNER')}</option>
</optgroup>
</select>
</span>
</div>
<div class="row-fluid padding-bottom1per">
<span class="span2">{vtranslate('LBL_TIME',$QUALIFIED_MODULE)}</span>
<div class="input-append time span6">
{if $TASK_OBJECT->time neq ''}
{assign var=TIME value=$TASK_OBJECT->time}
{else}
{assign var=DATE_TIME_VALUE value=Vtiger_Datetime_UIType::getDateTimeValue('now')}
{assign var=DATE_TIME_COMPONENTS value=explode(' ' ,$DATE_TIME_VALUE)}
{assign var=TIME value=implode(' ',array($DATE_TIME_COMPONENTS[1],$DATE_TIME_COMPONENTS[2]))}
{/if}
<input type="text" class="timepicker-default input-small" value="{$TIME}" name="time" />
<span class="add-on cursorPointer">
<i class="icon-time"></i>
</span>
</div>
</div>
<div class="row-fluid padding-bottom1per">
<span class="span2">{vtranslate('LBL_DUE_DATE',$QUALIFIED_MODULE)}</span>
<span class="span2 row-fluid">
<input class="span6" type="text" name="days" value="{$TASK_OBJECT->days}">&nbsp;
<span class="alignMiddle">{vtranslate('LBL_DAYS',$QUALIFIED_MODULE)}</span>
</span>
<span class="span marginLeftZero">
<select class="chzn-select" name="direction" style="width: 100px">
<option {if $TASK_OBJECT->direction eq 'after'}selected=""{/if} value="after">{vtranslate('LBL_AFTER',$QUALIFIED_MODULE)}</option>
<option {if $TASK_OBJECT->direction eq 'before'}selected=""{/if} value="before">{vtranslate('LBL_BEFORE',$QUALIFIED_MODULE)}</option>
</select>
</span>
<span class="span6">
<select class="chzn-select" name="datefield" style="width: 150px">
{foreach from=$DATETIME_FIELDS item=DATETIME_FIELD}
<option {if $TASK_OBJECT->datefield eq $DATETIME_FIELD->get('name')}selected{/if} value="{$DATETIME_FIELD->get('name')}">{vtranslate($DATETIME_FIELD->get('label'),$QUALIFIED_MODULE)}</option>
{/foreach}
</select>&nbsp;<span style="vertical-align: super">({vtranslate('LBL_THE_SAME_VALUE_IS_USED_FOR_START_DATE',$QUALIFIED_MODULE)})</span>
</span>
</div>
<div class="row-fluid">
<span class="span2">{vtranslate('LBL_SEND_NOTIFICATION',$QUALIFIED_MODULE)}</span>
<div class="span6">
<input type="checkbox" name="sendNotification" value="true" {if $TASK_OBJECT->sendNotification}checked{/if} />
</div>
</div>
</div>
{/strip}