Sh3ll
OdayForums


Server : LiteSpeed
System : Linux premium84.web-hosting.com 4.18.0-553.44.1.lve.el8.x86_64 #1 SMP Thu Mar 13 14:29:12 UTC 2025 x86_64
User : claqxcrl ( 523)
PHP Version : 8.1.32
Disable Function : NONE
Directory :  /home/claqxcrl/confenda.com/wp-content/plugins/poll-maker/poll/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : /home/claqxcrl/confenda.com/wp-content/plugins/poll-maker/poll/poll-maker-block.js
(function(wp) {
    var el = wp.element.createElement,
        registerBlockType = wp.blocks.registerBlockType,
        withSelect = wp.data.withSelect,
        BlockControls = wp.editor.BlockControls,
        AlignmentToolbar = wp.editor.AlignmentToolbar,
        InspectorControls = wp.blocks.InspectorControls,
        ServerSideRender = wp.components.ServerSideRender,
        __ = wp.i18n.__,
        Text = wp.components.TextControl,
        aysSelect = wp.components.SelectControl,
        createBlock = wp.blocks.createBlock,
        select = wp.data.select,
        dispatch = wp.data.dispatch;
    var iconEl = el(
        'svg', {
            width: 24,
            height: 24,
            viewBox: '0 0 20 20',
            style: {
                width: '24px',
                height: '24px'
            }
        },
        el(
            'path', {
                d: "M17.431,2.156h-3.715c-0.228,0-0.413,0.186-0.413,0.413v6.973h-2.89V6.687c0-0.229-0.186-0.413-0.413-0.413H6.285c-0.228,0-0.413,0.184-0.413,0.413v6.388H2.569c-0.227,0-0.413,0.187-0.413,0.413v3.942c0,0.228,0.186,0.413,0.413,0.413h14.862c0.228,0,0.413-0.186,0.413-0.413V2.569C17.844,2.342,17.658,2.156,17.431,2.156 M5.872,17.019h-2.89v-3.117h2.89V17.019zM9.587,17.019h-2.89V7.1h2.89V17.019z M13.303,17.019h-2.89v-6.651h2.89V17.019z M17.019,17.019h-2.891V2.982h2.891V17.019z",
                fill: '#1db3c9'
            }
        )
    );

    var supports = {
        customClassName: false
    };

    registerBlockType( 'poll-maker/poll', {
        title: __('Poll Maker'),
        category: 'common',
        icon: iconEl,
        supports: supports,
        edit: withSelect(function(select) {
            if (select('core/blocks').getBlockType('poll-maker/poll').attributes.idner &&
                (select('core/blocks').getBlockType('poll-maker/poll').attributes.idner != undefined ||
                    select('core/blocks').getBlockType('poll-maker/poll').attributes.idner != null)) {
                return {
                    polls: select('core/blocks').getBlockType('poll-maker/poll').attributes.idner
                };
            } else {
                return {
                    polls: __("Something went wrong please reload page")
                };
            }
        } )( function( props ) {

           if (!props.polls) {
                return __("Loading...");
            }
            if (typeof props.polls != "object") {
                return props.polls;
            }

            if (props.polls.length === 0) {
                return __("There are no polls yet");
            }

            var status = 0;
            if(props.attributes.metaFieldValue > 0){            
                status = 1;
            }

            var pollner = [];
            pollner.push({
                label: __("-Select Poll-"),
                value: ''
            });
            for (var i in props.polls) {
                var pollData = {
                    value: props.polls[i].id,
                    label: props.polls[i].title,
                }
                pollner.push(pollData)
            }
            var aysElement = el(
                aysSelect, {
                    className: 'ays_poll_maker_block_select',
                    label: __("Select Poll"),
                    value: props.attributes.metaFieldValue,
                    onChange: function(content) {
                        var c = content;
                        if(isNaN(content)){
                            c = '';
                        }
                        status = 1;
                        wp.data.dispatch('core/editor').updateBlockAttributes(props.clientId, {
                            shortcode: "[ays_poll id=" + c + "]",
                            metaFieldValue: parseInt(c)
                        });
                    },
                    options: pollner
                }
            );
            var aysElement2 = el(
                aysSelect, {
                    className: 'ays_poll_maker_block_select',
                    label: '',
                    value: props.attributes.metaFieldValue,
                    onChange: function( content ) {
                        var c = content;
                        if(isNaN(content)){
                            c = '';
                        }
                        wp.data.dispatch( 'core/editor' ).updateBlockAttributes( props.clientId, {
                            shortcode: "[ays_poll id="+c+"]",
                            metaFieldValue: parseInt(c)
                        } );
                        
                        // return 
                    },
                    options: pollner
                },
                el(ServerSideRender, {
                    key: "editable",
                    block: "poll-maker/poll",
                    attributes:  props.attributes
                })
            );
            var res = el(
                wp.element.Fragment,
                {},
                el(
                    BlockControls,
                    props
                ),
                el(
                    wp.editor.InspectorControls,
                    {},
                    el(
                        wp.components.PanelBody,
                        {},
                        el(
                            "div",
                            {
                                className: 'ays_poll_maker_block_container',
                                key: "inspector",
                            },
                            aysElement
                        )
                    )
                ),
                aysElement2,
                el(ServerSideRender, {
                    key: "editable",
                    block: "poll-maker/poll",
                    attributes:  props.attributes
                })
            );
            var res2 = el(
                wp.element.Fragment, {},
                el(
                    BlockControls,
                    props
                ),
                el(
                    wp.editor.InspectorControls, {},
                    el(
                        wp.components.PanelBody, {},
                        el(
                            "div", {
                                className: 'ays_poll_maker_block_container',
                                key: "inspector"
                            },
                            aysElement
                        )
                    )
                ),
                el(ServerSideRender, {
                    key: "editable",
                    block: "poll-maker/poll",
                    attributes: props.attributes
                })
            );

            if(status == 1){
                return res2;
            }else{
                return res;
            }

        }),

        save: function(e) {
            var t = e.attributes,
                n = t.metaFieldValue;

            resolveBlocks();

            return n ? el("div", null, '[ays_poll id="'+n+'"]') : null
        }
    } );

    function resolveBlocks(id){
        var blocks = id ?
            select('core/block-editor').getBlock(id).innerBlocks
            : select('core/block-editor').getBlocks();

        if ( Array.isArray(blocks) ) {
            blocks.map( function(block){
                if(block.name == 'poll-maker/poll'){
                    if (!block.isValid) {
                        var newBlock = createBlock( block.name, block.attributes, block.innerblocks);
                        dispatch('core/block-editor').replaceBlock( block.clientId, newBlock );
                    } else {
                        resolveBlocks(block.clientId);
                    };
                }
            } );
        };
    };
})(wp);

ZeroDay Forums Mini