HEX
Server: Apache/2.4.52 (Ubuntu)
System: Linux WebLive 5.15.0-79-generic #86-Ubuntu SMP Mon Jul 10 16:07:21 UTC 2023 x86_64
User: ubuntu (1000)
PHP: 7.4.33
Disabled: pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
Upload Files
File: /var/www/html/wptoho/wp-content/plugins/ninja-tables/app/Http/Controllers/FluentFormsController.php
<?php

namespace NinjaTables\App\Http\Controllers;

use NinjaTables\Framework\Request\Request;
use  NinjaTables\App\Modules\DataProviders\FluentFormProvider;
use NinjaTables\Framework\Support\Arr;


class FluentFormsController extends Controller
{
    public function index(Request $request)
    {
        if ( ! current_user_can(ninja_table_admin_role())) {
            return;
        }

        if (function_exists('wpFluentForm')) {
            $forms = wpFluent()->table('fluentform_forms')->select(array('id', 'title'))->get();

            return $this->sendSuccess([
                'data' => $forms
            ], 200);
        }
    }

    public function getFormsFields(Request $request, $id)
    {
        $id = intval($id);

        if ( ! current_user_can(ninja_table_admin_role())) {
            return;
        }

        $labels = (new FluentFormProvider())->getFields($id);

        return $this->sendSuccess([
            'data' => $labels
        ], 200);
    }

    public function store(Request $request)
    {
        if ( ! current_user_can(ninja_table_admin_role())) {
            return;
        }

        $messages = array();
        $tableId  = intval(Arr::get($request->all(), 'table_Id'));
        $formId   = intval(Arr::get($request->form, 'id'));

        if ( ! $tableId) {
            // Validate Title
            if (empty(Arr::get($request->all(), 'post_title'))) {
                $messages['title'] = __('The title field is required.', 'ninja-tables');
            }
        }

        // Validate Columns
        $fields = ninja_tables_sanitize_array(Arr::get($request->form, 'fields', array()));

        if ( ! $fields) {
            $messages['fields'] = __('No fields were selected.', 'ninja-tables');
        }

        // If Validation failed
        if (array_filter($messages)) {
            return $this->sendError([
                'data' => [
                    'message' => $messages
                ]
            ], 422);
        }

        $form = Arr::get($request->all(), 'form');

        $tableId = (new FluentFormProvider())->saveTable($form, $fields, $tableId, $formId);

        return $this->sendSuccess([
            'data' => [
                'table_id' => $tableId,
                'form_id'  => $formId
            ]
        ], 200);
    }

}