asgarosforum = $object; // Set filter based on URL parameters. add_action('asgarosforum_prepare_members', array($this, 'set_filter')); add_action('asgarosforum_breadcrumbs_members', array($this, 'add_breadcrumbs')); } public function functionality_enabled() { if (!$this->asgarosforum->options['enable_memberslist'] || ($this->asgarosforum->options['memberslist_loggedin_only'] && !is_user_logged_in())) { return false; } else { return true; } } public function add_breadcrumbs() { $element_link = $this->asgarosforum->get_link('members'); $element_title = __('Members', 'asgaros-forum'); $this->asgarosforum->breadcrumbs->add_breadcrumb($element_link, $element_title); } public function set_filter() { if ($this->functionality_enabled()) { if (!empty($_GET['filter_type']) && !empty($_GET['filter_name'])) { if ($_GET['filter_type'] === 'role') { switch ($_GET['filter_name']) { case 'all': case 'normal': case 'moderator': case 'administrator': case 'banned': $this->filter_type = 'role'; $this->filter_name = $_GET['filter_name']; break; } } else if ($_GET['filter_type'] === 'group') { $this->filter_type = 'group'; $this->filter_name = $_GET['filter_name']; } } } } public function show_memberslist_link() { if ($this->functionality_enabled()) { $membersLink = $this->asgarosforum->get_link('members'); $membersLink = apply_filters('asgarosforum_filter_members_link', $membersLink); echo ''.__('Members', 'asgaros-forum').''; } } public function show_filters() { $filter_toggle_text = __('Show Filters', 'asgaros-forum'); $filter_toggle_icon = 'fas fa-chevron-down'; $filter_toggle_hide = 'style="display: none;"'; if (!empty($_GET['filter_type']) && !empty($_GET['filter_name'])) { $filter_toggle_text = __('Hide Filters', 'asgaros-forum'); $filter_toggle_icon = 'fas fa-chevron-up'; $filter_toggle_hide = ''; } echo '