403Webshell
Server IP : 103.119.228.120  /  Your IP : 3.15.12.95
Web Server : Apache
System : Linux v8.techscape8.com 3.10.0-1160.119.1.el7.tuxcare.els2.x86_64 #1 SMP Mon Jul 15 12:09:18 UTC 2024 x86_64
User : nobody ( 99)
PHP Version : 5.6.40
Disable Function : shell_exec,symlink,system,exec,proc_get_status,proc_nice,proc_terminate,define_syslog_variables,syslog,openlog,closelog,escapeshellcmd,passthru,ocinum cols,ini_alter,leak,listen,chgrp,apache_note,apache_setenv,debugger_on,debugger_off,ftp_exec,dl,dll,myshellexec,proc_open,socket_bind,proc_close,escapeshellarg,parse_ini_filepopen,fpassthru,exec,passthru,escapeshellarg,escapeshellcmd,proc_close,proc_open,ini_alter,popen,show_source,proc_nice,proc_terminate,proc_get_status,proc_close,pfsockopen,leak,apache_child_terminate,posix_kill,posix_mkfifo,posix_setpgid,posix_setsid,posix_setuid,dl,symlink,shell_exec,system,dl,passthru,escapeshellarg,escapeshellcmd,myshellexec,c99_buff_prepare,c99_sess_put,fpassthru,getdisfunc,fx29exec,fx29exec2,is_windows,disp_freespace,fx29sh_getupdate,fx29_buff_prepare,fx29_sess_put,fx29shexit,fx29fsearch,fx29ftpbrutecheck,fx29sh_tools,fx29sh_about,milw0rm,imagez,sh_name,myshellexec,checkproxyhost,dosyayicek,c99_buff_prepare,c99_sess_put,c99getsource,c99sh_getupdate,c99fsearch,c99shexit,view_perms,posix_getpwuid,posix_getgrgid,posix_kill,parse_perms,parsesort,view_perms_color,set_encoder_input,ls_setcheckboxall,ls_reverse_all,rsg_read,rsg_glob,selfURL,dispsecinfo,unix2DosTime,addFile,system,get_users,view_size,DirFiles,DirFilesWide,DirPrintHTMLHeaders,GetFilesTotal,GetTitles,GetTimeTotal,GetMatchesCount,GetFileMatchesCount,GetResultFiles,fs_copy_dir,fs_copy_obj,fs_move_dir,fs_move_obj,fs_rmdir,SearchText,getmicrotime
MySQL : ON |  cURL : ON |  WGET : ON |  Perl : ON |  Python : ON |  Sudo : ON |  Pkexec : ON
Directory :  /var/softaculous/sitepad/editor/site-data/plugins/pagelayer/js/react/src/components/

Upload File :
current_dir [ Writeable] document_root [ Writeable]

 

Command :


[ Back ]     

Current File : /var/softaculous/sitepad/editor/site-data/plugins/pagelayer/js/react/src/components/text-shadow.js
import { __ } from '@wordpress/i18n';
import { LabelControl } from './label';
import { useState, useRef, useEffect } from '@wordpress/element';
import { ColorPicker } from '@wordpress/components';

export const TextShadowControl = (props) => {
    const { prop, label, value, setAttributes } = props;
    const { name } = prop['c'];
	
	var values = !pagelayer_empty(value) ? value : ['', '', '', ''];
	
	// Do we have a val ?
	if(pagelayer_is_string(value)){
		values = value.split(',');
	}
	
    const [isColorPickerVisible, setIsColorPickerVisible] = useState(false);
    const [isTextShadowVisible, setIsTextShadowVisible] = useState(false);
    const colorPreviewRef = useRef(null);
    const colorPickerRef = useRef(null);
    const textShadowRef = useRef(null);

    const handleInputChange = (index, newValue) => {
        const newValues = [...values];
        newValues[index] = newValue;
        setAttributes({ [name]: newValues });
    };

    const onChange = (color = '') => {
        handleInputChange(3, color);
    }

    const handleRemoveColor = (e) => {
        handleInputChange(3, '');
        setIsColorPickerVisible(false);

    };
    var blank = 'pagelayer-blank-preview';
    useEffect(() => {
        const handleDocumentClick = (e) => {
            // ColorPicker Handler
            if (
                colorPickerRef.current &&
                !colorPickerRef.current.contains(e.target) &&
                colorPreviewRef.current &&
                !colorPreviewRef.current.contains(e.target)
            ) {
                setIsColorPickerVisible(false);
            }
            // text Shodow Modal Handler
            if (
                textShadowRef.current &&
                !textShadowRef.current.contains(e.target)
            ) {
                setIsTextShadowVisible(false);
            }
        };

        document.addEventListener('click', handleDocumentClick);
        return () => {
            document.removeEventListener('click', handleDocumentClick);
        };
    }, []);

    return (
        <div className="components-base-control pagelayer-base-control">
            <LabelControl {...props} />
            <div className="pagelayer-prop-holder" ref={textShadowRef}>
                <span
                    className="pagelayer-prop-edit"
                    onClick={() => setIsTextShadowVisible(!isTextShadowVisible)}
                >
                    <i className="pli pli-pencil"></i>
                </span>
                {isTextShadowVisible &&
                    <div className="pagelayer-elp-shadow-div">
                        <div className="pagelayer-elp-prop-grp pagelayer-elp-shadow-horizontal">
                            <label className="pagelayer-elp-label">{ __('Horizontal') }</label>
                            <input
                                className="pagelayer-elp-shadow-input"
                                type="number"
                                max="100"
                                min="-100"
                                step="1"
                                name="horizontal"
                                value={values[0]}
                                onChange={(e) => handleInputChange(0, parseFloat(e.target.value))}
                            />
                        </div>
                        <div className="pagelayer-elp-prop-grp pagelayer-elp-shadow-vertical">
                            <label className="pagelayer-elp-label">{ __('Vertical') }</label>
                            <input
                                className="pagelayer-elp-shadow-input"
                                type="number"
                                max="100"
                                min="-100"
                                step="1"
                                name="vertical"
                                value={values[1]}
                                onChange={(e) => handleInputChange(1, parseFloat(e.target.value))}
                            />
                        </div>
                        <div className="pagelayer-elp-prop-grp pagelayer-elp-shadow-blur">
                            <label className="pagelayer-elp-label">{ __('Blur') }</label>
                            <input
                                className="pagelayer-elp-shadow-input"
                                type="number"
                                max="100"
                                min="-100"
                                step="1"
                                name="blur"
                                value={values[2]}
                                onChange={(e) => handleInputChange(2, parseFloat(e.target.value))}
                            />
                        </div>
                        <div className="pagelayer-elp-prop-grp pagelayer-elp-shadow-color">
                            <label className="pagelayer-elp-label">{ __('Color') }</label>
                            <div
                                className="pagelayer-elp-color-div"
                                ref={colorPickerRef}
                            >
                                <div
                                    className={`pagelayer-elp-color-preview ${values[3] === '' ? blank : ''}`}
                                    onClick={() => setIsColorPickerVisible(!isColorPickerVisible)}
                                    style={{ backgroundColor: values[3] }}

                                ></div>
                                <span className="pagelayer-elp-remove-color" onClick={() => { handleRemoveColor() }}>
                                    <i className="pli pli-cross"></i>
                                </span>

                            </div>
                        </div>
                        {isColorPickerVisible && (
                            <div ref={colorPickerRef} className="test">
                                <ColorPicker
                                    color={values[3]}
                                    onChangeComplete={(val) => {
                                        if (val.rgb) {
                                            onChange(
                                                val.rgb.a != 1
                                                    ? "rgba(" +
                                                    val.rgb.r +
                                                    "," +
                                                    val.rgb.g +
                                                    "," +
                                                    val.rgb.b +
                                                    "," +
                                                    val.rgb.a +
                                                    ")"
                                                    : val.hex
                                            );
                                        }
                                    }}
                                    disableAlpha={false}
                                />
                            </div>
                        )}
                    </div>
                }
            </div>
        </div>
    )
}

Youez - 2016 - github.com/yon3zu
LinuXploit