403Webshell
Server IP : 15.235.198.142  /  Your IP : 216.73.216.202
Web Server : Apache/2.4.58 (Ubuntu)
System : Linux ballsack 6.8.0-45-generic #45-Ubuntu SMP PREEMPT_DYNAMIC Fri Aug 30 12:02:04 UTC 2024 x86_64
User : www-data ( 33)
PHP Version : 8.3.6
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : ON  |  Pkexec : OFF
Directory :  /var/www/rhodeworks/wp-content/plugins/really-simple-ssl/settings/src/Menu/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /var/www/rhodeworks/wp-content/plugins/really-simple-ssl/settings/src/Menu/MenuItem.js
import { __ } from '@wordpress/i18n';
import useMenu from "./MenuData";

const MenuItem = (props) => {
    const {selectedSubMenuItem, selectedMainMenuItem, subMenu, menu} = useMenu();
    const menuIsSelected = isSelectedMenuItem(selectedSubMenuItem, props.menuItem);

    const ensureArray = (data) => {
        return Array.isArray(data) ? data : [data];
    }

    let menuClass = menuIsSelected ? ' rsssl-active' : '';
    menuClass += props.menuItem.featured ? ' rsssl-featured' : '';
    menuClass += props.menuItem.new ? ' rsssl-new' : '';
    menuClass += props.menuItem.premium && !rsssl_settings.pro_plugin_active ? ' rsssl-premium' : '';
    let menuLink = props.menuItem.directLink || '#'+selectedMainMenuItem+'/'+props.menuItem.id;

    return (
        <>
            {props.menuItem.visible && (
                <>
                    {props.isMainMenu ? (
                        <div className="rsssl-main-menu">
                            <div className={"rsssl-menu-item" + menuClass}>
                                <a href={menuLink}>
                                    <span>{props.menuItem.title}</span>
                                    {props.menuItem.featured && <span className='rsssl-menu-item-beta-pill'>{__('Beta', 'really-simple-ssl')}</span>}
                                    {props.menuItem.new && <span className='rsssl-menu-item-new-pill'>{__('New', 'really-simple-ssl')}</span>}
                                </a>
                            </div>
                        </div>
                    ) : (
                        <div className={"rsssl-menu-item" + menuClass}>
                            <a href={menuLink}>
                                <span>{props.menuItem.title}</span>
                                {props.menuItem.featured && <span className='rsssl-menu-item-beta-pill'>{__('Beta', 'really-simple-ssl')}</span>}
                                {props.menuItem.new && <span className='rsssl-menu-item-new-pill'>{__('New', 'really-simple-ssl')}</span>}
                            </a>
                        </div>
                    )}

                    {props.menuItem.menu_items && menuIsSelected && (
                        <div className="rsssl-submenu-item">
                            {ensureArray(props.menuItem.menu_items).map((subMenuItem, i) => (
                                subMenuItem.visible && <MenuItem key={"submenuItem" + i} menuItem={subMenuItem} isMainMenu={false} />
                            ))}
                        </div>
                    )}
                </>
            )}
        </>
    );



}

export default MenuItem

/**
 * Utility function to check if selected menu item is the current menu item or a child of the current menu item
 * @param selectedSubMenuItem
 * @param menuItem
 * @returns {boolean}
 */
const isSelectedMenuItem = (selectedSubMenuItem, menuItem) => {
    if (selectedSubMenuItem === menuItem.id) {
        return true;
    }
    if (menuItem.menu_items) {
        for (const item of menuItem.menu_items) {
            if (item.id === selectedSubMenuItem) {
                return true;
            }
        }
    }
    return false;
};

Youez - 2016 - github.com/yon3zu
LinuXploit