function userCanViewWidget()
 {
     global $current_user;
     if (!isset($current_user) || empty($current_user)) {
         return false;
     }
     $perms = parent::getAdminOptions();
     $widget_perms = $perms['dashboard_access'];
     $user_roles = $current_user->roles;
     $user_role = @array_shift($user_roles);
     $user_role = @ucwords($user_role);
     if ($widget_perms == 2) {
         if ($user_role != "Administrator") {
             return false;
         }
     } else {
         if ($widget_perms == 1) {
             if ($user_role == "Subscriber" || !in_array($user_role, parent::getRolesArray())) {
                 return false;
             }
         } else {
             /* all roles are allowed so just return true */
         }
     }
     return true;
 }
Exemplo n.º 2
0
 if (!function_exists('CustomContactForms_ap')) {
     function CustomContactForms_ap()
     {
         global $custom_contact_admin;
         if (!isset($custom_contact_admin)) {
             return;
         }
         if (function_exists('add_menu_page')) {
             add_menu_page(__('Custom Contact Forms', 'custom-contact-forms'), __('Custom Contact Forms', 'custom-contact-forms'), 'manage_options', 'custom-contact-forms', array(&$custom_contact_admin, 'printAdminPage'));
             add_submenu_page('custom-contact-forms', __('Custom Contact Forms', 'custom-contact-forms'), __('Custom Contact Forms', 'custom-contact-forms'), 'manage_options', 'custom-contact-forms', array(&$custom_contact_admin, 'printAdminPage'));
             add_submenu_page('custom-contact-forms', __('Saved Form Submissions', 'custom-contact-forms'), __('Saved Form Submissions', 'custom-contact-forms'), 'manage_options', 'ccf-saved-form-submissions', array(&$custom_contact_admin, 'printFormSubmissionsPage'));
             add_submenu_page('custom-contact-forms', __('General Settings', 'custom-contact-forms'), __('General Settings', 'custom-contact-forms'), 'manage_options', 'ccf-settings', array(&$custom_contact_admin, 'printSettingsPage'));
         }
     }
 }
 $admin_options = $custom_contact_admin->getAdminOptions();
 if (isset($admin_options['enable_dashboard_widget']) && $admin_options['enable_dashboard_widget'] == 1) {
     ccf_utils::load_module('widget/custom-contact-forms-dashboard.php');
     $ccf_dashboard = new CustomContactFormsDashboard();
     if ($ccf_dashboard->isDashboardPage()) {
         add_action('admin_print_styles', array(&$ccf_dashboard, 'insertDashboardStyles'), 1);
         add_action('admin_enqueue_scripts', array(&$ccf_dashboard, 'insertDashboardScripts'), 1);
     }
     add_action('wp_dashboard_setup', array(&$ccf_dashboard, 'install'));
 }
 add_action('init', array(&$custom_contact_admin, 'adminInit'), 1);
 if ($custom_contact_admin->isPluginAdminPage()) {
     add_action('admin_print_styles', array(&$custom_contact_admin, 'insertBackEndStyles'), 1);
     add_action('admin_enqueue_scripts', array(&$custom_contact_admin, 'insertAdminScripts'), 1);
 }
 add_action('wp_ajax_ccf-ajax', array(&$custom_contact_admin, 'handleAJAX'));