HEX
Server: Apache
System: Linux vmi2886312 6.8.0-86-generic #87-Ubuntu SMP PREEMPT_DYNAMIC Mon Sep 22 18:03:36 UTC 2025 x86_64
User: www (1000)
PHP: 8.3.27
Disabled: passthru,exec,system,putenv,chroot,chgrp,chown,shell_exec,popen,proc_open,pcntl_exec,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,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_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,imap_open,apache_setenv
Upload Files
File: /www/wwwroot/dr-lil.com/wp-content/plugins/fluentform/app/Services/Integrations/BaseIntegration.php
<?php

namespace FluentForm\App\Services\Integrations;

/**
 * @deprecated deprecated use FluentForm\App\Http\Controllers\IntegrationManagerHelper;
 */


class BaseIntegration
{
    private $setting_key = '';
    private $isMultiple = false;
    private $formId = false;
    private $isJsonValue = true;

    public function __construct($settings_key = '', $form_id = false, $isMultiple = false)
    {
        $this->setting_key = $settings_key;
        $this->isMultiple = $isMultiple;
        $this->formId = $form_id;
    }

    public function setSettingsKey($key)
    {
        $this->setting_key = $key;
    }

    public function setIsMultiple($isMultiple)
    {
        $this->isMultiple = $isMultiple;
    }

    public function setFormId($formId)
    {
        $this->formId = $formId;
    }

    public function setJasonType($type)
    {
        $this->isJsonValue = $type;
    }

    public function save($settings)
    {
        return wpFluent()->table('fluentform_form_meta')
                         ->insertGetId([
                             'meta_key' => $this->setting_key,
                             'form_id'  => $this->formId,
                             'value'    => json_encode($settings),
                         ]);
    }

    public function update($settingsId, $settings)
    {
        return wpFluent()->table('fluentform_form_meta')
                    ->where('id', $settingsId)
                    ->update([
                        'value' => json_encode($settings),
                    ]);
    }

    public function get($settingsId)
    {
        $settings = wpFluent()->table('fluentform_form_meta')
                                   ->where('form_id', $this->formId)
                                   ->where('meta_key', $this->setting_key)
                                   ->find($settingsId);
        $settings->formattedValue = $this->getFormattedValue($settings);
        return $settings;
    }

    public function getAll()
    {
        $settingsQuery = wpFluent()->table('fluentform_form_meta')
                              ->where('form_id', $this->formId)
                              ->where('meta_key', $this->setting_key);

        if ($this->isMultiple) {
            $settings = $settingsQuery->get();
            foreach ($settings as $setting) {
                $setting->formattedValue = $this->getFormattedValue($setting);
            }
        } else {
            $settings = $settingsQuery->first();
            $settings->formattedValue = $this->getFormattedValue($settings);
        }
        return $settings;
    }

    public function delete($settingsId)
    {
        return wpFluent()->table('fluentform_form_meta')
                    ->where('meta_key', $this->setting_key)
                    ->where('form_id', $this->formId)
                    ->where('id', $settingsId)
                    ->delete();
    }

    protected function validate($notification)
    {
        $validate = fluentValidator($notification, [
            'name'              => 'required',
            'list_id'           => 'required',
            'fieldEmailAddress' => 'required',
        ], [
            'name.required'              => __('Feed Name is required', 'fluentform'),
            'list.required'              => __(' List is required', 'fluentform'),
            'fieldEmailAddress.required'  => __('Email Address is required', 'fluentform')
        ])->validate();

        if ($validate->fails()) {
            wp_send_json_error([
                'errors'  => $validate->errors(),
                'message' => __('Please fix the errors', 'fluentform'),
            ], 400);
        }
        return true;
    }

    private function getFormattedValue($setting)
    {
        if ($this->isJsonValue) {
            return json_decode($setting->value, true);
        }

        return $setting->value;
    }

    public function deleteAll()
    {
        // ...
    }
}