HEX
Server: Apache/2.4.52 (Ubuntu)
System: Linux WebLive 5.15.0-79-generic #86-Ubuntu SMP Mon Jul 10 16:07:21 UTC 2023 x86_64
User: ubuntu (1000)
PHP: 7.4.33
Disabled: pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
Upload Files
File: /var/www/html/wptoho/wp-content/plugins/really-simple-ssl/settings/src/utils/getAnchor.js
/*
 * helper function to delay after a promise
 * @param ms
 * @returns {function(*): Promise<unknown>}
 */
const getAnchor = (level) => {
    let url = window.location.href;
    if (url.indexOf('#') === -1) {
        return false;
    }

    let queryString = url.split('#')[1];
    if (!queryString) {
        return false;
    }

    // Split the query string to handle multiple parameters
    let urlParts = queryString.split('&');

    if (level === 'highlightfield') {
        // Extract highlightfield parameter
        for (let part of urlParts) {
            if (part.startsWith('highlightfield=')) {
                return part.split('=')[1];
            }
        }
        return false;
    }

    // Default behavior for 'anchor' and 'menu'
    let urlPart = urlParts[0];

    if (level === 'anchor') {
        if (urlPart.indexOf('/') === -1) {
            return false;
        } else {
            let urlSegments = urlPart.split('/');
            return urlSegments.length > 2 ? urlSegments[2] : false;
        }
    } else if (level === 'menu') {
        if (urlPart.indexOf('/') === -1) {
            return false;
        } else {
            let urlSegments = urlPart.split('/');
            return urlSegments.length > 1 ? urlSegments[1] : false;
        }
    } else {
        return urlPart.indexOf('/') === -1 ? urlPart : urlPart.split('/')[0];
    }
};

export default getAnchor;