From 13bd8566f717f0bf33b8b52843579ddb0f7ac865 Mon Sep 17 00:00:00 2001 From: wangzemei Date: Wed, 19 Nov 2025 09:27:10 +0800 Subject: [PATCH] - [task#152541] remove the useless code. --- module/ai/js/modelcreate.ui.js | 91 ---------------------- module/ai/js/modeledit.ui.js | 93 ---------------------- module/ai/js/models.ui.js | 37 --------- module/ai/js/modelview.ui.js | 41 ---------- module/ai/ui/modelcreate.html.php | 117 ---------------------------- module/ai/ui/modeledit.html.php | 124 ------------------------------ module/ai/ui/models.html.php | 62 --------------- module/ai/ui/modelview.html.php | 80 ------------------- module/index/config.php | 1 - 9 files changed, 646 deletions(-) delete mode 100644 module/ai/js/modelcreate.ui.js delete mode 100644 module/ai/js/modeledit.ui.js delete mode 100644 module/ai/js/models.ui.js delete mode 100644 module/ai/js/modelview.ui.js delete mode 100644 module/ai/ui/modelcreate.html.php delete mode 100644 module/ai/ui/modeledit.html.php delete mode 100644 module/ai/ui/models.html.php delete mode 100644 module/ai/ui/modelview.html.php diff --git a/module/ai/js/modelcreate.ui.js b/module/ai/js/modelcreate.ui.js deleted file mode 100644 index a587b83310..0000000000 --- a/module/ai/js/modelcreate.ui.js +++ /dev/null @@ -1,91 +0,0 @@ -window.testConnection = () => -{ - $('#model-form').find('button[type="submit"]').attr('disabled', 'disabled'); - $('#test-conn-btn').attr('disabled', 'disabled'); - $.ajax( - { - type: 'POST', - url: $.createLink('ai', 'modelTestConnection'), - data: $('#model-form').find('form').serialize(), - dataType: 'json', - success: data => - { - if(data.result == 'success') - { - zui.Messager.show({content: data.message, type: 'success'}) - } - else - { - zui.Messager.show({content: data.message, type: 'danger'}) - } - }, - complete: () => - { - $('#model-form').find('button[type="submit"]').removeAttr('disabled'); - $('#test-conn-btn').removeAttr('disabled'); - } - }); -}; - -const handleModelTypeChange = () => -{ - const modelType = $('select[name="type"]').val(); - const vendorList = window.vendorListLang[modelType]; - $('select[name="vendor"]').html(''); - for(const vendor in vendorList) $('select[name="vendor"]').append(''); - $('select[name="vendor"]').trigger('chosen:updated'); - $('select[name="vendor"]').trigger('change'); -}; - -const handleVendorChange = () => -{ - const vendor = $('select[name="vendor"]').val(); - const requiredFields = window.vendorList[vendor]['credentials']; - const vendorTip = window.vendorTipsLang[vendor]; - $('.vendor-tips').html(vendorTip ? vendorTip : ''); - $('.vendor-row').each((_, el) => {$(el).toggle(requiredFields.includes($(el).find('input').attr('name')));}); -}; - -const handleProxyTypeChange = () => -{ - $('#proxy-addr-container').toggle($('select[name="proxyType"]').val() != ''); -}; - -$(() => -{ - handleVendorChange(); - $('select[name="type"]').on('change', handleModelTypeChange); - $('select[name="vendor"]').on('change', handleVendorChange); - $('select[name="proxyType"]').on('change', handleProxyTypeChange); - $('button[type="submit"]').on('click', e => - { - $('button[type="submit"]').attr('disabled', 'disabled'); - $('#test-conn-btn').attr('disabled', 'disabled'); - e.preventDefault(); - - $.ajax( - { - type: 'POST', - url: $.createLink('ai', 'modelcreate'), - data: $('form').serialize(), - dataType: 'json', - success: data => - { - if(data.result == 'success') - { - zui.Messager.show({content: data.message, type: 'success'}); - window.location.href = $.createLink('ai', 'models'); - } - else - { - zui.Messager.show({content: data.message, type: 'danger'}); - } - }, - complete: () => - { - $('button[type="submit"]').removeAttr('disabled'); - $('#test-conn-btn').removeAttr('disabled'); - } - }); - }); -}); diff --git a/module/ai/js/modeledit.ui.js b/module/ai/js/modeledit.ui.js deleted file mode 100644 index 6ccfddedfb..0000000000 --- a/module/ai/js/modeledit.ui.js +++ /dev/null @@ -1,93 +0,0 @@ -window.testConnection = () => -{ - $('#model-form').find('button[type="submit"]').attr('disabled', 'disabled'); - $('#test-conn-btn').attr('disabled', 'disabled'); - $.ajax( - { - type: 'POST', - url: $.createLink('ai', 'modelTestConnection'), - data: $('.form').serialize(), - dataType: 'json', - success: data => - { - if(data.result == 'success') - { - zui.Messager.show({content: data.message, type: 'success'}) - } - else - { - zui.Messager.show({content: data.message, type: 'danger'}) - } - }, - complete: () => - { - $('#model-form').find('button[type="submit"]').removeAttr('disabled'); - $('#test-conn-btn').removeAttr('disabled'); - } - }); -}; - -const handleModelTypeChange = (modelType = '') => -{ - if(!modelType) modelType = $('select[name="type"]').val(); - const vendorList = window.vendorListLang[modelType]; - $('select[name="vendor"]').html(''); - for(const vendor in vendorList) $('select[name="vendor"]').append(''); - $('select[name="vendor"]').trigger('chosen:updated'); - $('select[name="vendor"]').trigger('change'); -}; - -const handleVendorChange = (vendor = '') => -{ - vendor ? $('select[name="vendor"]').val(vendor) : (vendor = $('select[name="vendor"]').val()); - const requiredFields = window.vendorList[vendor]['credentials']; - const vendorTip = window.vendorTipsLang[vendor]; - $('.vendor-tips').html(vendorTip ? vendorTip : ''); - $('.vendor-row').each((_, el) => {$(el).toggle(requiredFields.includes($(el).find('input').attr('name')));}); -}; - -const handleProxyTypeChange = () => -{ - $('#proxy-addr-container').toggle($('select[name="proxyType"]').val() != ''); -}; - -$(() => -{ - handleModelTypeChange(window.modelData.type); - handleVendorChange(window.modelData.vendor); - handleProxyTypeChange(); - $('select[name="type"]').on('change', handleModelTypeChange); - $('select[name="vendor"]').on('change', handleVendorChange); - $('select[name="proxyType"]').on('change', handleProxyTypeChange); - $('button[type="submit"]').on('click', e => - { - $('button[type="submit"]').attr('disabled', 'disabled'); - $('#test-conn-btn').attr('disabled', 'disabled'); - e.preventDefault(); - - $.ajax( - { - type: 'POST', - url: $.createLink('ai', 'modeledit', "id=" + modelData.id), - data: $('.form').serialize(), - dataType: 'json', - success: data => - { - if(data.result == 'success') - { - zui.Messager.show({content: data.message, type: 'success'}); - window.location.href = $.createLink('ai', 'models'); - } - else - { - zui.Messager.show({content: data.message, type: 'danger'}); - } - }, - complete: () => - { - $('button[type="submit"]').removeAttr('disabled'); - $('#test-conn-btn').removeAttr('disabled'); - } - }); - }); -}); diff --git a/module/ai/js/models.ui.js b/module/ai/js/models.ui.js deleted file mode 100644 index ec2ee70e69..0000000000 --- a/module/ai/js/models.ui.js +++ /dev/null @@ -1,37 +0,0 @@ -let renderedDefault = false; -let defaultModel = null; -window.onRenderCell = (result, {col, row}) => -{ - if(col.name == 'name' && ((!renderedDefault && row.data.enabled == '1') || (renderedDefault && row.data.id == defaultModel))) - { - result.push({html: `${langDefault}`}); - renderedDefault = true; - defaultModel = row.data.id; - } - return result; -}; - -window.confirmDisable = function(modelID) -{ - zui.Modal.confirm({message: confirmDisableTip, icon: 'icon-exclamation-sign', iconClass: 'warning-pale rounded-full icon-2x'}).then(res => - { - if(res) $.ajaxSubmit({url: $.createLink('ai', 'modeldisable', `modelID=${modelID}`)}); - }) -}; - -$(function() -{ - const container = window.frameElement?.closest('.load-indicator'); - if(container) - { - delete container.dataset.loading; - container.classList.remove('loading'); - container.classList.remove('no-delay'); - } - - /* If user navigated to this page from old page, reload. */ - if(window.name === 'app-admin-old') - { - $.apps.reloadApp('admin', $.createLink('ai', 'models')); - } -}); diff --git a/module/ai/js/modelview.ui.js b/module/ai/js/modelview.ui.js deleted file mode 100644 index 7345486025..0000000000 --- a/module/ai/js/modelview.ui.js +++ /dev/null @@ -1,41 +0,0 @@ -window.confirmDelete = modelID => -{ - zui.Modal.confirm({message: confirmDeleteTip, icon: 'icon-exclamation-sign', iconClass: 'warning-pale rounded-full icon-2x'}).then(res => - { - if(res) $.ajaxSubmit({url: $.createLink('ai', 'modeldelete', `modelID=${modelID}`)}); - }) -}; - -window.confirmDisable = modelID => -{ - zui.Modal.confirm({message: confirmDisableTip, icon: 'icon-exclamation-sign', iconClass: 'warning-pale rounded-full icon-2x'}).then(res => - { - if(res) $.ajaxSubmit({url: $.createLink('ai', 'modeldisable', `modelID=${modelID}`)}); - }) -}; - -window.testConnection = modelID => -{ - $('[href^="javascript:testConnection"]').attr('disabled', 'disabled'); - $.ajax( - { - type: 'GET', - url: $.createLink('ai', 'modelTestConnection', `modelID=${modelID}`), - dataType: 'json', - success: data => - { - if(data.result == 'success') - { - zui.Messager.show({content: data.message, type: 'success'}) - } - else - { - zui.Messager.show({content: data.message, type: 'danger'}) - } - }, - complete: () => - { - $('[href^="javascript:testConnection"]').removeAttr('disabled'); - } - }); -}; diff --git a/module/ai/ui/modelcreate.html.php b/module/ai/ui/modelcreate.html.php deleted file mode 100644 index e2669fec36..0000000000 --- a/module/ai/ui/modelcreate.html.php +++ /dev/null @@ -1,117 +0,0 @@ -ai->models->typeList); -$defaultModelVendor = array_key_first($lang->ai->models->vendorList->{$defaultModelType}); -$allCredFields = array_unique(array_reduce((array)$config->ai->vendorList, function($carry, $vendor) {return array_merge($carry, array_values((array)$vendor['credentials']));}, array())); - -jsVar('window.vendorList', $config->ai->vendorList); -jsVar('window.vendorListLang', $lang->ai->models->vendorList); -jsVar('window.vendorTipsLang', $lang->ai->models->vendorTips); - -formPanel -( - set::title($lang->ai->models->create), - set::id('model-form'), - set::actions(array('submit', array('text' => $lang->ai->models->testConnection, 'id' => 'test-conn-btn', 'class' => 'btn secondary', 'url' => 'javascript:testConnection()'), 'cancel')), - formGroup - ( - set::label($lang->ai->models->name), - set::width('1/2'), - input - ( - set::name('name'), - set('maxlength', 20) - ) - ), - formGroup - ( - set::label($lang->ai->models->type), - set::width('1/2'), - set::required(true), - select - ( - set::name('type'), - set::items($lang->ai->models->typeList), - set::value($defaultModelType), - set::required(true) - ) - ), - formRow - ( - formGroup - ( - /* Update vendor group on model type change. */ - set::label($lang->ai->models->vendor), - set::width('1/2'), - set::required(true), - select - ( - set::name('vendor'), - set::items($lang->ai->models->vendorList->{$defaultModelType}), - set::required(true) - ), - set::tip(' '), - set::tipClass('vendor-tips text-gray') - ) - ), - array_map( // Vendor credentials rows. - function($field) use ($lang) - { - return formRow - ( - set::className('vendor-row'), - formGroup - ( - set::label($lang->ai->models->{$field}), - set::required(true), - input - ( - set::name($field), - set::required(true) - ) - ) - ); - }, - $allCredFields - ), - formRow - ( - formGroup - ( - set::label($lang->ai->models->proxyType), - set::width('1/2'), - set::required(true), - select - ( - set::name('proxyType'), - set::items($lang->ai->models->proxyTypes), - set::required(true) - ) - ), - formGroup - ( - set::label($lang->ai->models->proxyAddr), - set::width('1/2'), - set::required(true), - set::style(array('display' => 'none')), // Hide proxy address input by default. - set::id('proxy-addr-container'), - input - ( - set::name('proxyAddr'), - set::required(true) - ) - ) - ), - formGroup - ( - set::label($lang->ai->models->description), - textarea - ( - set::name('description'), - set::rows(3) - ) - ) -); diff --git a/module/ai/ui/modeledit.html.php b/module/ai/ui/modeledit.html.php deleted file mode 100644 index fe60b47ec4..0000000000 --- a/module/ai/ui/modeledit.html.php +++ /dev/null @@ -1,124 +0,0 @@ -ai->models->typeList); -$defaultModelVendor = array_key_first($lang->ai->models->vendorList->{$defaultModelType}); -$allCredFields = array_unique(array_reduce((array)$config->ai->vendorList, function($carry, $vendor) {return array_merge($carry, array_values((array)$vendor['credentials']));}, array())); - -jsVar('window.vendorList', $config->ai->vendorList); -jsVar('window.vendorListLang', $lang->ai->models->vendorList); -jsVar('window.vendorTipsLang', $lang->ai->models->vendorTips); -jsVar('window.modelData', $model); - -formPanel -( - set::title($lang->ai->models->edit . (empty($model->name) ? '' : " - {$model->name}")), - set::id('model-form'), - set::actions(array('submit', array('text' => $lang->ai->models->testConnection, 'id' => 'test-conn-btn', 'class' => 'btn secondary', 'url' => 'javascript:testConnection()'), 'cancel')), - formGroup - ( - set::label($lang->ai->models->name), - set::width('1/2'), - input - ( - set::name('name'), - set('maxlength', 20), - set::value($model->name) - ) - ), - formGroup - ( - set::label($lang->ai->models->type), - set::width('1/2'), - set::required(true), - select - ( - set::name('type'), - set::items($lang->ai->models->typeList), - set::value($model->type), - set::required(true) - ) - ), - formRow - ( - formGroup - ( - /* Update vendor group on model type change. */ - set::label($lang->ai->models->vendor), - set::width('1/2'), - set::required(true), - select - ( - set::name('vendor'), - set::items($lang->ai->models->vendorList->{$defaultModelType}), - set::value($model->vendor), - set::required(true) - ), - set::tip(' '), - set::tipClass('vendor-tips text-gray') - ) - ), - array_map( // Vendor credentials rows. - function($field) use ($lang, $model) - { - return formRow - ( - set::className('vendor-row'), - formGroup - ( - set::label($lang->ai->models->{$field}), - set::required(true), - input - ( - set::name($field), - set::value(empty($model->{$field}) ? '' : $model->{$field}), - set::required(true) - ) - ) - ); - }, - $allCredFields - ), - formRow - ( - formGroup - ( - set::label($lang->ai->models->proxyType), - set::width('1/2'), - set::required(true), - select - ( - set::name('proxyType'), - set::items($lang->ai->models->proxyTypes), - set::value(empty($model->proxyType) ? '' : $model->proxyType), - set::required(true) - ) - ), - formGroup - ( - set::label($lang->ai->models->proxyAddr), - set::width('1/2'), - set::required(true), - set::style(array('display' => 'none')), // Hide proxy address input by default. - set::id('proxy-addr-container'), - input - ( - set::name('proxyAddr'), - set::value(empty($model->proxyAddr) ? '' : $model->proxyAddr), - set::required(true) - ) - ) - ), - formGroup - ( - set::label($lang->ai->models->description), - textarea - ( - set::name('description'), - set::rows(3), - set::value($model->desc) - ) - ) -); diff --git a/module/ai/ui/models.html.php b/module/ai/ui/models.html.php deleted file mode 100644 index 2c606947b3..0000000000 --- a/module/ai/ui/models.html.php +++ /dev/null @@ -1,62 +0,0 @@ -ai->models->default); -jsVar('langDefaultTip', $lang->ai->models->defaultTip); -jsVar('confirmDisableTip', $lang->ai->models->confirmDisable); - -featureBar(); -hasPriv('ai', 'modelcreate') && toolbar( - item( - set(array( - 'text' => $lang->ai->models->create, - 'url' => createLink('ai', 'modelcreate'), - 'data-app' => $app->tab, - 'icon' => 'plus', - 'class' => 'btn primary', - )) - ) -); - -if(empty($models)) -{ - panel - ( - center - ( - set::style(array('height' => 'calc(100vh - 145px)')), // 145px is sum of header and footer height. - div - ( - span - ( - set::className('p-8 text-gray'), - $lang->ai->models->noModels - ), - btn - ( - set::text($lang->ai->models->create), - set::icon('plus'), - set::className('btn secondary'), - set::url(createLink('ai', 'modelcreate')), - set('data-app', $app->tab) - ) - ) - ) - ); -} -else -{ - $models = initTableData($models, $config->ai->dtable->models, $this->ai); - - dtable - ( - set::cols($config->ai->dtable->models), - set::data($models), - set::onRenderCell(jsRaw('window.onRenderCell')), - set::orderBy($orderBy), - set::sortLink(inlink('models', "orderBy={name}_{sortType}&recTotal={$pager->recTotal}&recPerPage={$pager->recPerPage}")), - set::footPager(usePager()), - ); -} diff --git a/module/ai/ui/modelview.html.php b/module/ai/ui/modelview.html.php deleted file mode 100644 index f9cb432f66..0000000000 --- a/module/ai/ui/modelview.html.php +++ /dev/null @@ -1,80 +0,0 @@ -ai->models->confirmDelete); -jsVar('confirmDisableTip', $lang->ai->models->confirmDisable); - -detailHeader -( - backBtn(set::icon('back'), setClass('ghost text-white'), $lang->goback), - to::title - ( - entityLabel - ( - set(array('entityID' => $model->id, 'text' => $model->name)), - ) - ) -); - -$actions = $this->loadModel('common')->buildOperateMenu($model); - -detailBody -( - sectionList - ( - section - ( - set::title($lang->ai->models->details), - tableData - ( - item - ( - set::name($lang->ai->models->type), - $lang->ai->models->typeList[$model->type] - ), - item - ( - set::name($lang->ai->models->vendor), - $lang->ai->models->vendorList->{$model->type}[$model->vendor] - ), - array_map(function($field) use ($model, $lang) - { - return item - ( - set::name($lang->ai->models->$field), - empty($model->$field) ? $lang->ai->models->unconfigured : $model->$field - ); - }, $config->ai->vendorList[$model->vendor]['credentials']), - item - ( - set::name($lang->ai->models->proxyType), - $lang->ai->models->proxyTypes[empty($model->proxyType) ? '' : $model->proxyType] - ), - !empty($model->proxyType) ? item - ( - set::name($lang->ai->models->proxyAddr), - empty($model->proxyAddr) ? $lang->ai->models->unconfigured : $model->proxyAddr - ) : null, - item - ( - set::name($lang->ai->models->description), - $model->desc - ), - item - ( - set::name($lang->statusAB), - $lang->ai->models->statusList[$model->enabled] - ) - ) - ) - ), - floatToolbar - ( - set::object($model), - isAjaxRequest('modal') ? null : to::prefix(backBtn(set::back('ai-models'), set::icon('back'), setClass('ghost text-white'), $lang->goback)), - set::main($actions['mainActions']), - set::suffix($actions['suffixActions']) - ), -); diff --git a/module/index/config.php b/module/index/config.php index fa4af001c5..29735ce945 100644 --- a/module/index/config.php +++ b/module/index/config.php @@ -27,7 +27,6 @@ $config->index->oldPages[] = 'screen-burn'; $config->index->oldPages[] = 'screen-viewold'; $config->index->oldPages[] = 'screen-staticdataold'; $config->index->oldPages[] = 'report-annualdata'; -$config->index->oldPages[] = 'ai-adminindex'; $config->index->oldPages[] = 'ai-chat'; $config->index->oldPages[] = 'api-debug'; $config->index->oldPages[] = 'datatable-ajaxoldcustom';