From ee8f42c2699553802f8c2e82e8d3cc7f2cb22ccf Mon Sep 17 00:00:00 2001 From: Chenjianyu Date: Mon, 14 Aug 2023 16:34:51 +0800 Subject: [PATCH] * add required field validators. --- module/ai/control.php | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/module/ai/control.php b/module/ai/control.php index b6e410a9f8..ca4a31d7ad 100644 --- a/module/ai/control.php +++ b/module/ai/control.php @@ -81,9 +81,15 @@ class ai extends control { $modelConfig = fixer::input('post')->get(); + $currentVendor = empty($modelConfig->vendor) ? key($lang->ai->models->openaiVendorList) : $modelConfig->vendor; + $vendorRequiredFields = $this->config->ai->vendorList[$currentVendor]['requiredFields']; + $errors = array(); if(empty($modelConfig->type)) $errors[] = sprintf($this->lang->ai->validate->noEmpty, $this->lang->ai->models->type); - if(empty($modelConfig->key)) $errors[] = sprintf($this->lang->ai->validate->noEmpty, $this->lang->ai->models->apiKey); + foreach($vendorRequiredFields as $field) + { + if(empty($modelConfig->$field)) $errors[] = sprintf($this->lang->ai->validate->noEmpty, $this->lang->ai->models->$field); + } if(!empty($modelConfig->proxyType) && empty($modelConfig->proxyAddr)) { $errors[] = sprintf($this->lang->ai->validate->noEmpty, $this->lang->ai->models->proxyAddr); @@ -122,9 +128,15 @@ class ai extends control { $modelConfig = fixer::input('post')->get(); + $currentVendor = empty($modelConfig->vendor) ? key($lang->ai->models->openaiVendorList) : $modelConfig->vendor; + $vendorRequiredFields = $this->config->ai->vendorList[$currentVendor]['requiredFields']; + $errors = array(); if(empty($modelConfig->type)) $errors[] = sprintf($this->lang->ai->validate->noEmpty, $this->lang->ai->models->type); - if(empty($modelConfig->key)) $errors[] = sprintf($this->lang->ai->validate->noEmpty, $this->lang->ai->models->apiKey); + foreach($vendorRequiredFields as $field) + { + if(empty($modelConfig->$field)) $errors[] = sprintf($this->lang->ai->validate->noEmpty, $this->lang->ai->models->$field); + } if(!empty($modelConfig->proxyType) && empty($modelConfig->proxyAddr)) { $errors[] = sprintf($this->lang->ai->validate->noEmpty, $this->lang->ai->models->proxyAddr);