# adminify/1.0.7/Inc/Admin/Options/Module_Folders.php

Adminify – White Label, Admin Menu Editor, Login Customizer, version 1.0.7. 127 lines.

- Page: https://pluginprobe.com/plugins/adminify/1.0.7/code/Inc/Admin/Options/Module_Folders.php
- Raw: https://pluginprobe.com/plugins/adminify/1.0.7/raw/Inc/Admin/Options/Module_Folders.php
- Modified: 2021-11-24T08:01:26+00:00

Line numbers below start at 1. Link to a line or a range by appending a fragment to the
page URL, for example `https://pluginprobe.com/plugins/adminify/1.0.7/code/Inc/Admin/Options/Module_Folders.php#L10-L20`.

```php
<?php

namespace WPAdminify\Inc\Admin\Options;

use WPAdminify\Inc\Utils;
use WPAdminify\Inc\Admin\AdminSettingsModel;

if (!defined('ABSPATH')) {
    die;
} // Cannot access directly.

if (!class_exists('Module_Folders')) {
    class Module_Folders extends AdminSettingsModel
    {
        public function __construct()
        {
            $this->folders_settings();
        }

        public function get_defaults()
        {
            return [
                'folders_user_roles' => [],
                'folders_enable_for' => ['post', 'page'],
                'folders_media'      => true
            ];
        }

        /**
         * User Roles
         */
        public function folders_user_roles(&$fields)
        {
            $fields[] = array(
                'type'    => 'subheading',
                'content'   => Utils::adminfiy_help_urls(
                    __('Folders Settings', WP_ADMINIFY_TD),
                    'https://wpadminify.com/kb/organize-media-library-pages-posts-post-type-using-folder/',
                    'https://www.youtube.com/playlist?list=PLqpMw0NsHXV-EKj9Xm1DMGa6FGniHHly8',
                    'https://www.facebook.com/groups/jeweltheme',
                    'https://wpadminify.com/support/folders/'
                )
            );
            $fields[] = array(
                'id'          => 'folders_user_roles',
                'type'        => 'select',
                'title'       => __('Disable for', WP_ADMINIFY_TD),
                'placeholder' => __('Select User roles you want to show', WP_ADMINIFY_TD),
                'options'     => 'roles',
                'multiple'    => true,
                'chosen'      => true,
                'default'     => $this->get_default_field('folders_user_roles'),
            );
            $fields[] = array(
                'id'         => 'folders_enable_for',
                'type'       => 'checkbox',
                'title'      => __('Enable Folders for', WP_ADMINIFY_TD),
                'subtitle'   => __('Select Post Types for enabling Folders Module', WP_ADMINIFY_TD),
                'options'    => 'post_types',
                'query_args' => array(
                    'orderby' => 'post_title',
                    'order'   => 'ASC',
                ),
                'default' => $this->get_default_field('folders_enable_for'),
            );

            if (!jltwp_adminify()->can_use_premium_code__premium_only()) {
                $fields[] = array(
                    'type'       => 'notice',
                    'style'      => 'warning',
                    'content'    => Utils::adminify_upgrade_pro(),
                    'dependency' => array(
                        array('folders_enable_for', 'not-any', 'post,page', 'true'),
                        array('folders_enable_for', '!=', '', 'true'),
                    ),
                );
            }
        }


        /**
         * Media Elements Sortable
         *
         * @return void
         */

        public function folders_for_media(&$fields)
        {
            $fields[] = array(
                'id'         => 'folders_media',
                'type'       => 'switcher',
                'title'      => __('Enable for Media', WP_ADMINIFY_TD),
                'text_on'    => __('Enabled', WP_ADMINIFY_TD),
                'text_off'   => __('Disabled', WP_ADMINIFY_TD),
                'text_width' => 100,
                'default'    => $this->get_default_field('folders_media'),
            );
        }


        /**
         * Module: Folders
         *
         * @return void
         */
        public function folders_settings()
        {
            if (!class_exists('ADMINIFY')) {
                return;
            }

            $fields = [];
            $this->folders_user_roles($fields);
            $this->folders_for_media($fields);

            // Folders Order Section
            \ADMINIFY::createSection($this->prefix, array(
                'title'  => __('Folders', WP_ADMINIFY_TD),
                'id'     => 'module_folders_section',
                'parent' => 'module_settings',
                'icon'   => 'far fa-folder-open',
                'fields' => $fields
            ));
        }
    }
}

```
