403Webshell
Server IP : 104.26.2.156  /  Your IP : 216.73.216.185
Web Server : nginx/1.27.1
System : Linux us-1 5.15.0-131-generic #141-Ubuntu SMP Fri Jan 10 21:18:28 UTC 2025 x86_64
User : vinodai ( 3134)
PHP Version : 7.4.33
Disable Function : exec,passthru,shell_exec,system,proc_open,popen,parse_ini_file,show_source
MySQL : OFF  |  cURL : ON  |  WGET : OFF  |  Perl : OFF  |  Python : OFF  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /storage/v1396/wwwindicidolscom/public_html/wp-content/plugins/fluentform/app/Models/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /storage/v1396/wwwindicidolscom/public_html/wp-content/plugins/fluentform/app/Models//FormMeta.php
<?php

namespace FluentForm\App\Models;

use FluentForm\Framework\Support\Arr;

// phpcs:disable WordPress.DB.SlowDBQuery.slow_db_query_meta_key -- This class uses custom meta table (fluentform_form_meta), not WordPress postmeta
class FormMeta extends Model
{
    /**
     * The table associated with the model.
     *
     * @var string
     */
    protected $table = 'fluentform_form_meta';

    /**
     * Indicates if the model should be timestamped.
     *
     * @var bool
     */
    public $timestamps = false;

    /**
     * A formMeta is owned by a form.
     *
     * @return \FluentForm\Framework\Database\Orm\Relations\BelongsTo
     */
    public function form()
    {
        return $this->belongsTo(Form::class, 'form_id', 'id');
    }

    public static function prepare($attributes, $predefinedForm)
    {
        $formMeta = [];
    
        $formMeta[] = [
            'meta_key' => 'formSettings',
            'value'    => json_encode(Form::getFormsDefaultSettings()),
        ];
    
        $formMeta[] = [
            'meta_key' => 'template_name',
            'value'    => Arr::get($attributes, 'predefined'),
        ];
    
        if (isset($predefinedForm['notifications'])) {
            $formMeta[] = [
                'meta_key' => 'notifications',
                'value'    => json_encode($predefinedForm['notifications']),
            ];
        }
    
        if (Arr::get($attributes, 'predefined') == 'conversational') {
            $formMeta[] = [
                'meta_key' => 'is_conversion_form',
                'value'    => 'yes',
            ];
        }

        return $formMeta;
    }

    public static function retrieve($key, $formId = null, $default  = null)
    {
        $meta = static::when($formId, function ($q) use ($formId) {
            return $q->where('form_id', $formId);
        })
            ->where('meta_key', $key)
            ->first();

        if ($meta && isset($meta->value)) {
            $value = json_decode($meta->value, true);
            if (JSON_ERROR_NONE == json_last_error()) {
                return $value;
            }
            return $meta->value;
        }

        return $default;
    }

    public static function store(Form $form, $formMeta)
    {
        foreach ($formMeta as $meta) {
            $meta['value'] = trim(preg_replace('/\s+/', ' ', $meta['value']));

            $form->formMeta()->create([
                'meta_key' => $meta['meta_key'],
                'value'    => $meta['value'],
            ]);
        }
    }

    public static function persist($formId, $metaKey, $metaValue)
    {
        if (is_array($metaValue) || is_object($metaValue)) {
            $metaValue = json_encode($metaValue);
        }

        return static::updateOrCreate(
            ['form_id' => $formId, 'meta_key' => $metaKey],
            ['value' => $metaValue]
        );
    }

    public static function remove($formId, $metaKey)
    {
        static::where('form_id', $formId)
            ->where('meta_key', $metaKey)
            ->delete();
    }
}

Youez - 2016 - github.com/yon3zu
LinuXploit