1
0
Эх сурвалжийг харах

#5406 AI Agents revamp: form input trigger

Aleksandr Trofimov 3 сар өмнө
parent
commit
7a8de9c6c8

+ 1 - 0
modules/boonex/english/data/langs/system/en.xml

@@ -2273,6 +2273,7 @@
     <string name="_sys_agents_form_object_info"><![CDATA[Form object that contains the required field, for custom forms enter form id here]]></string>
     <string name="_sys_agents_form_input"><![CDATA[Form input]]></string>
     <string name="_sys_agents_form_input_info"><![CDATA[Form input where AI-generated text should be pasted]]></string>
+    <string name="_sys_agents_agent_form_input_popup_text"><![CDATA[Please describe what you want to insert into this field.]]></string>
     <string name="_sys_agents_json_field_err"><![CDATA[Invalid JSON format.]]></string>
     <string name="_sys_agents_automators_txt_active"><![CDATA[Active]]></string>
     <string name="_sys_agents_automators_txt_name"><![CDATA[Name]]></string>

+ 1 - 0
modules/boonex/russian/data/langs/system/ru.xml

@@ -2248,6 +2248,7 @@
         <string name="_sys_agents_form_object_info"><![CDATA[Объект формы, содержащий необходимое поле]]></string>
         <string name="_sys_agents_form_input"><![CDATA[Поле формы]]></string>
         <string name="_sys_agents_form_input_info"><![CDATA[Поле формы, в которое нужно вставить текст, сгенерированный ИИ]]></string>
+        <string name="_sys_agents_agent_form_input_popup_text"><![CDATA[Опишите, что вы хотите вставить в это поле.]]></string>
         <string name="_sys_agents_json_field_err"><![CDATA[Неверный формат JSON.]]></string>
         <string name="_sys_agents_automators_txt_active"><![CDATA[Активный]]></string>
         <string name="_sys_agents_automators_txt_name"><![CDATA[Название]]></string>

+ 3 - 3
studio/template/scripts/BxBaseStudioAgentsAgents.php

@@ -367,9 +367,9 @@ class BxBaseStudioAgentsAgents extends BxDolStudioAgentsAgents
                         'message' => 'message',
                         'form-input' => 'form input',
                     ],
-                    'attrs' => [
-                        'onchange' => $this->getPageJsObject() . '.onChangeAgentTrigger(this)',
-                    ],
+                    // 'attrs' => [
+                    //    'onchange' => $this->getPageJsObject() . '.onChangeAgentTrigger(this)',
+                    // ],
                     'required' => '1',
                     'db' => [
                         'pass' => 'Xss',

+ 13 - 2
template/form_field_textarea.html

@@ -13,7 +13,7 @@
     <script>
         $(document).ready(function() {
             $('.bx-form-input-agent-button.__name__ a').click(function() {
-                bx_prompt("Prompt:", '', (o) => {
+                bx_prompt("__popup_text__", '', (o) => {
                     if(o.getValue()) {
                         $('.bx-form-input-agent-button.__name__ .sys-icon').removeClass('magic').addClass('sync animate-spin');
                         $.ajax({
@@ -28,7 +28,18 @@
                             }),
                             success: function(data) {
                                 $('.bx-form-input-agent-button.__name__ .sys-icon').addClass('magic').removeClass('sync animate-spin');
-                                $('textarea[name="__name__"]').val(data.msg);
+
+                                if (__html__) {
+                                    var sEditorId = $('textarea[name="__name__"]').attr('id');
+                                    if (!sEditorId) {
+                                        sEditorId = 'bx-form-input-textarea-__name__' + Math.floor(Math.random() * 100000);
+                                        $('textarea[name="__name__"]').attr('id', sEditorId);
+                                    }
+                                    bx_editor_insert_html (sEditorId, '', data.msg);
+                                }
+                                else {
+                                    $('textarea[name="__name__"]').val(data.msg);
+                                }
                             }
                         });
 

+ 2 - 0
template/scripts/BxBaseFormView.php

@@ -1694,6 +1694,8 @@ BLAH;
                     'name' => $aInput['name'],
                     'agent_id' => $aAgent['id'] ?? 0,
                     'form_id' => $this->getId(),
+                    'html' => $aInput['html'] ?? 0,
+                    'popup_text' => _t('_sys_agents_agent_form_input_popup_text'),
                 ]
             ]
         ]);