elementor / elementor

The most advanced frontend drag & drop page builder. Create high-end, pixel perfect websites at record speeds. Any theme, any page, any design.
https://elementor.com/
GNU General Public License v3.0
6.6k stars 1.42k forks source link

Form Attachment file_size loading time #27726

Open babyyodadev opened 5 months ago

babyyodadev commented 5 months ago

Prerequisites

Description

PHP config upload_max_filesize xMB, Elementor creates for each xMB an option on Form -> Content -> Form Fields -> Attachment > Max. File Size resulting in loading for minutes when upload_max_filesize is set high (20000MB)

Steps to reproduce

  1. PHP config upload_max_filesize = 10000MB
  2. Create Form with attachment

Expected behavior

  1. crash or loading time for > 1 minute

Isolating the problem

Elementor System Info

== Server Environment ==
    Operating System: FreeBSD
    Software: Apache
    MySQL version: FreeBSD Ports v10.6.16
    PHP Version: 8.1.28
    PHP Memory Limit: 256M
    PHP Max Input Vars: 1000
    PHP Max Post Size: 10000M
    GD Installed: Yes
    ZIP Installed: Yes
    Write Permissions: All right
    Elementor Library: Connected

== WordPress Environment ==
    Version: 6.5.4
    Site URL: 
    Home URL: 
    WP Multisite: No
    Max Upload Size: 10 GB
    Memory limit: 40M
    Max Memory limit: 256M
    Permalink Structure: /%postname%/
    Language: de_CH
    Timezone: Europe/Zurich
    Admin Email: 
    Debug Mode: Inactive

== Theme ==
    Name: Hello Elementor
    Version: 3.0.1
    Author: Elementor Team
    Child Theme: No

== User ==
    Role: administrator
    WP Profile lang: de-CH
    User Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36

== Active Plugins ==
    Elementor
        Version: 3.21.5
        Author: Elementor.com

    Elementor Pro
        Version: 3.21.2
        Author: Elementor.com

== Must-Use Plugins ==
    Elementor Safe Mode
        Version: 1.0.0
        Author: Elementor.com

== Elements Usage ==

    footer : 1
        container : 1
        nav-menu : 1
    header : 1
        container : 1
        theme-site-logo : 1
    wp-page : 2
        container : 2
        form : 2
        heading : 3
    single-page : 1
        button : 1
        container : 2
        heading : 1
        shortcode : 1

== Settings ==

    cpt_support: post, page, smtp-data
    disable_color_schemes: yes
    disable_typography_schemes: yes
    allow_tracking: yes
    unfiltered_files_upload: 1
    font_display: swap

== Features ==
    Custom Fonts: 1
    Custom Icons: 0

== Integrations ==

== Elementor Experiments ==
    Improved Asset Loading: Active by default
    Improved CSS Loading: Active by default
    Inline Font Icons: Active by default
    Additional Custom Breakpoints: Active by default
    admin_menu_rearrangement: Inactive by default
    Flexbox Container: Active by default
    Upgrade Swiper Library: Active by default
    Grid Container: Active by default
    Nested Elements Performance: Inactive by default
    Optimized Control Loading: Inactive by default
    Default to New Theme Builder: Active by default
    Hello Theme Header & Footer: Active by default
    Elementor Home Screen: Active by default
    Editor Top Bar: Inactive by default
    Build with AI: Active by default
    Landing Pages: Active by default
    Nested Elements: Inactive by default
    Lazy Load Background Images: Inactive by default
    Display Conditions: Inactive by default
    Form Submissions: Active by default
    Menu: Inactive by default
    Taxonomy Filter: Inactive by default

== Log ==
    ---

== Elementor - Compatibility Tag ==

    Elementor Forms Item Accordion: Incompatible
    Elementor Pro: Compatible

== Elementor Pro - Compatibility Tag ==

    Elementor Forms Item Accordion: Incompatible

Agreement

babyyodadev commented 5 months ago

life improvement change from selectable to number (and remove options) https://github.com/elementor/elementor/blob/3e877c6371b78f8ac6e6fb8b85311453916f6828/tests/qunit/mock/elments/form.json#L165

babyyodadev commented 5 months ago

fix: https://github.com/elementor/elementor/commit/9fe91377ab7386fc339df6d91a1d87cc02cf9188