__  __    __   __  _____      _            _          _____ _          _ _ 
 |  \/  |   \ \ / / |  __ \    (_)          | |        / ____| |        | | |
 | \  / |_ __\ V /  | |__) | __ ___   ____ _| |_ ___  | (___ | |__   ___| | |
 | |\/| | '__|> <   |  ___/ '__| \ \ / / _` | __/ _ \  \___ \| '_ \ / _ \ | |
 | |  | | |_ / . \  | |   | |  | |\ V / (_| | ||  __/  ____) | | | |  __/ | |
 |_|  |_|_(_)_/ \_\ |_|   |_|  |_| \_/ \__,_|\__\___| |_____/|_| |_|\___V 2.1
 if you need WebShell for Seo everyday contact me on Telegram
 Telegram Address : @jackleet
        
        
For_More_Tools: Telegram: @jackleet | Bulk Smtp support mail sender | Business Mail Collector | Mail Bouncer All Mail | Bulk Office Mail Validator | Html Letter private



Upload:

Command:

[email protected]: ~ $
<?php

namespace EssentialBlocks\Blocks;

use EssentialBlocks\Core\Block;
use EssentialBlocks\Utils\Helper;

class Form extends Block
{
    protected $frontend_scripts = [ 'essential-blocks-form-frontend' ];
    protected $frontend_styles  = [ 'essential-blocks-fontawesome' ];

    /**
     * Default attributes
     *
     * @var array
     */
    protected $default_attributes;

    public function __construct()
    {
        $this->default_attributes = [
            'btnAddIcon'   => false,
            'iconPosition' => 'right',
            'buttonText'   => __( 'Submit', 'essential-blocks' ),
            'icon'         => 'fas fa-chevron-right',
            'formLayout'   => 'block',
            'formStyle'    => 'form-style-classic',
            'enableMultistepForm' => false,
            'stepIndecator' => true,
            'stepNavigationStyle' => 'progress-bar',
            'enableStepCount' => false,
            'enableStepIcon' => true,
            'enableStepSubtitle' => false,
            'nextBtnText' => 'Next',
            'prevBtnText' => 'Previous',
         ];
    }

    /**
     * Unique name of the block.
     * @return string
     */
    public function get_name()
    {
        return 'form';
    }

    /**
     * Initialize the InnerBlocks for Accordion
     * @return array<Block>
     */
    public function inner_blocks()
    {
        return [
            FormTextField::get_instance()
         ];
    }

    /**
     * Register all other scripts
     * @return void
     */
    public function register_scripts()
    {
        $this->assets_manager->register(
            'form-frontend',
            $this->path() . '/frontend.js',
            [ 'essential-blocks-babel-bundle' ]
        );
    }

    /**
     * Render callback
     */
    public function render_callback( $attributes, $content )
    {
        if ( is_admin() ) {
            return;
        }

        //Modify wp_kses rules for Form Block kses
        add_filter( 'wp_kses_allowed_html', [ new Helper, 'eb_allowed_html' ], 99, 2 );

        $_essential_attributes = [
            'formType'         => 'contact_form',
            'preset'           => 'contact_form_1',
            'confirmationType' => 'message',
            'successMessage'   => __( 'Your form has been submitted Successfully!', 'essential-blocks' ),
            'errorMessage'     => __( 'Your form couldn\'t been submitted! Please try again', 'essential-blocks' )
         ];

        foreach ( $_essential_attributes as $key => $value ) {
            if ( isset( $attributes[ $key ] ) && is_bool( $attributes[ $key ] ) ) {
                $_essential_attributes[ $key ] = $attributes[ $key ];
            } elseif ( ! empty( $attributes[ $key ] ) ) {
                $_essential_attributes[ $key ] = $attributes[ $key ];
            } else {
                $_essential_attributes[ $key ] = $value;
            }
        }


        $attributes = wp_parse_args( $attributes, $this->default_attributes );

        if ( empty( $attributes[ 'formType' ] ) ) {
            return '';
        }
        if ( empty( $content ) ) {
            return '';
        }
        $classHook = isset( $attributes[ 'classHook' ] ) ? $attributes[ 'classHook' ] : '';

        $submit_btn_attr = apply_filters( 'eb_form_submit_btn_attr', [
            'data-id'      => $attributes[ 'blockId' ],
            'data-form-id' => $attributes[ 'formId' ]
         ] );

        $submit_btn_classes = apply_filters( 'eb_form_submit_btn_classes', 'btn btn-primary eb-form-submit-button' );

        $submit_button_icon = sprintf(
            '%1$s',
            Helper::eb_render_icon( Helper::eb_get_icon_type( $attributes[ 'icon' ] ), 'eb-button-icon', $attributes[ 'icon' ] )
        );

        $submit_button_html = sprintf(
            '<button type="submit" class="%1$s" %2$s>
                %4$s%3$s%5$s
                <img class="eb-form-submit-loader" src="%6$sassets/images/loading.svg" />
            </button>',
            $submit_btn_classes,
            http_build_query( $submit_btn_attr, '', ' ' ),
            $attributes[ 'buttonText' ],
            $attributes[ 'btnAddIcon' ] && $attributes[ 'iconPosition' ] === 'left' ? $submit_button_icon : '',
            $attributes[ 'btnAddIcon' ] && $attributes[ 'iconPosition' ] === 'right' ? $submit_button_icon : '',
            ESSENTIAL_BLOCKS_URL
        );

        $confirmation_div_attr = apply_filters( 'eb_form_confirmation_div_attr', [
            'data-confirmation-type' => esc_attr( $_essential_attributes[ 'confirmationType' ] ),
            'data-success'           => esc_html( $_essential_attributes[ 'successMessage' ] ),
            'data-error'             => esc_html( $_essential_attributes[ 'errorMessage' ] )
         ], $attributes );

        $attributes_html = '';
        foreach ( $confirmation_div_attr as $key => $value ) {
            $attributes_html .= sprintf( '%s="%s" ', esc_attr( $key ), esc_attr( $value ) );
        }

        $confirmation_div_html = sprintf(
            '<div class="eb_form_submit_response" %1$s></div>',
            trim( $attributes_html )
        );

        // $confirmation_div_html = sprintf(
        //     '<div class="eb_form_submit_response" %1$s></div>',
        //     http_build_query( $confirmation_div_attr, '', ' ' )
        // );

        ob_start();
        Helper::views( 'form-block', array_merge( $attributes, [
            'essentialAttr'         => $_essential_attributes,
            'classHook'             => $classHook,
            'submit_button_html'    => $submit_button_html,
            'confirmation_div_html' => $confirmation_div_html,
            'content'               => $content,
            'nonce'                 => wp_create_nonce( $attributes[ 'blockId' ] . '-nonce' )

         ] ) );

        return ob_get_clean();
    }
}

Filemanager

Name Type Size Permission Actions
Accordion.php File 1.03 KB 0640
AccordionItem.php File 335 B 0640
AddToCart.php File 3.43 KB 0640
AdvancedHeading.php File 5.73 KB 0640
AdvancedImage.php File 2.77 KB 0640
AdvancedNavigation.php File 703 B 0640
AdvancedTabs.php File 886 B 0640
AdvancedVideo.php File 1021 B 0640
Breadcrumbs.php File 11.37 KB 0640
Button.php File 3.82 KB 0640
CallToAction.php File 365 B 0640
Column.php File 220 B 0640
CountDown.php File 605 B 0640
DualButton.php File 666 B 0640
FeatureList.php File 332 B 0640
FlexContainer.php File 371 B 0640
FlipBox.php File 648 B 0640
FluentForms.php File 3.77 KB 0640
Form.php File 5.72 KB 0640
FormTextField.php File 246 B 0640
GoogleMap.php File 2.55 KB 0640
Icon.php File 323 B 0640
ImageComparison.php File 620 B 0640
ImageGallery.php File 2.26 KB 0640
InfoBox.php File 761 B 0640
InstagramFeed.php File 5.89 KB 0640
InteractivePromo.php File 321 B 0640
LottieAnimation.php File 608 B 0640
NftGallery.php File 649 B 0640
Notice.php File 580 B 0640
NumberCounter.php File 598 B 0640
Openverse.php File 480 B 0640
ParallaxSlider.php File 664 B 0640
PopUp.php File 625 B 0640
PostBlock.php File 1.57 KB 0640
PostCarousel.php File 4.62 KB 0640
PostGrid.php File 5.79 KB 0640
PostMeta.php File 7.24 KB 0640
PricingTable.php File 333 B 0640
ProductDetails.php File 3.51 KB 0640
ProductImages.php File 2.83 KB 0640
ProductPrice.php File 4.75 KB 0640
ProductRating.php File 2.97 KB 0640
ProgressBar.php File 604 B 0640
Row.php File 455 B 0640
ShapeDivider.php File 602 B 0640
Slider.php File 1.09 KB 0640
Social.php File 352 B 0640
SocialShare.php File 3.89 KB 0640
Tab.php File 214 B 0640
TableOfContents.php File 17.38 KB 0640
Taxonomy.php File 4.92 KB 0640
TeamMember.php File 361 B 0640
Testimonial.php File 373 B 0640
Text.php File 5.17 KB 0640
ToggleContent.php File 613 B 0640
TypingText.php File 594 B 0640
WPForms.php File 2.92 KB 0640
WooProductGrid.php File 8.39 KB 0640
Wrapper.php File 359 B 0640
price.php File 239 B 0640
Filemanager