38 lines
1.1 KiB
PHP
38 lines
1.1 KiB
PHP
<?php
|
|
|
|
namespace App\Http\Controllers\Forms;
|
|
|
|
use App\Console\Commands\GenerateTemplate;
|
|
use App\Http\Controllers\Controller;
|
|
use App\Http\Requests\AiGenerateFormRequest;
|
|
use App\Models\Forms\AI\AiFormCompletion;
|
|
use App\Service\OpenAi\GptCompleter;
|
|
use Illuminate\Support\Str;
|
|
|
|
class AiFormController extends Controller
|
|
{
|
|
public function generateForm(AiGenerateFormRequest $request)
|
|
{
|
|
$this->middleware('throttle:4,1');
|
|
|
|
return $this->success([
|
|
'message' => 'We\'re working on your form, please wait ~1 min.',
|
|
'ai_form_completion_id' => AiFormCompletion::create([
|
|
'form_prompt' => $request->input('form_prompt'),
|
|
'ip' => $request->ip()
|
|
])->id
|
|
]);
|
|
}
|
|
|
|
public function show(AiFormCompletion $aiFormCompletion)
|
|
{
|
|
if ($aiFormCompletion->ip != request()->ip()) {
|
|
return $this->error('You are not authorized to view this AI completion.', 403);
|
|
}
|
|
|
|
return $this->success([
|
|
'ai_form_completion' => $aiFormCompletion
|
|
]);
|
|
}
|
|
}
|