Ejemplo n.º 1
0
 /**
  * Registers meta boxes.
  * 
  * @global type $post 
  */
 public static function wpcf_access_post_add_meta_boxes()
 {
     global $post;
     $areas = Access_Helper::wpcf_access_get_areas();
     if (!empty($areas)) {
         $roles = Access_Helper::wpcf_get_editable_roles();
         TAccess_Loader::load('CLASS/Admin_Edit');
         //add_action('admin_footer', 'wpcf_access_suggest_js'); // this callback does not seem to exist
         foreach ($areas as $area) {
             // Add meta boxes
             add_meta_box('wpcf-access-' . $area['id'], $area['name'], array(__CLASS__, 'wpcf_access_post_meta_box'), $post->post_type, 'advanced', 'high', array($area, $roles));
         }
     }
 }
Ejemplo n.º 2
0
function taccess_export($what)
{
    TAccess_Loader::load('CLASS/XML_Processor');
    $xmlstring = Access_XML_Processor::exportToXMLString($what);
    return $xmlstring;
}
Ejemplo n.º 3
0
 public static function wpcf_process_change_role_caps_ajax()
 {
     if (!current_user_can('manage_options')) {
         _e('There are security problems. You do not have permissions.', 'wpcf-access');
         die;
     }
     if (!isset($_POST['wpnonce']) || !wp_verify_nonce($_POST['wpnonce'], 'wpcf-access-error-pages')) {
         die('verification failed');
     }
     $role = sanitize_text_field($_POST['role']);
     $caps = '';
     if (isset($_POST['caps'])) {
         $caps = array_map('sanitize_text_field', $_POST['caps']);
     }
     TAccess_Loader::load('CLASS/Admin_Edit');
     $model = TAccess_Loader::get('MODEL/Access');
     $default_caps = getDefaultCaps();
     $default_wordpress_caps = $default_caps[10];
     $access_roles = $model->getAccessRoles();
     $wocommerce_caps = get_woocommerce_caps();
     $wpml_caps_list = get_wpml_caps();
     $custom_caps = get_option('wpcf_access_custom_caps');
     //$toolset_caps_list = get_toolset_caps();
     $role_data = get_role($role);
     for ($i = 0, $caps_limit = count($default_wordpress_caps); $i < $caps_limit; $i++) {
         if (isset($access_roles[$role]['caps'][$default_wordpress_caps[$i]])) {
             unset($access_roles[$role]['caps'][$default_wordpress_caps[$i]]);
             $role_data->remove_cap($default_wordpress_caps[$i]);
         }
     }
     foreach ($wocommerce_caps as $cap => $cap_info) {
         if (isset($access_roles[$role]['caps'][$cap])) {
             unset($access_roles[$role]['caps'][$cap]);
             $role_data->remove_cap($cap);
         }
     }
     foreach ($wpml_caps_list as $cap => $cap_info) {
         if (isset($access_roles[$role]['caps'][$cap])) {
             unset($access_roles[$role]['caps'][$cap]);
             $role_data->remove_cap($cap);
         }
     }
     if (is_array($custom_caps)) {
         foreach ($custom_caps as $cap => $cap_info) {
             if (isset($access_roles[$role]['caps'][$cap])) {
                 unset($access_roles[$role]['caps'][$cap]);
                 $role_data->remove_cap($cap);
             }
         }
     }
     if (class_exists('WPDD_Layouts_Users_Profiles')) {
         foreach (WPDD_Layouts_Users_Profiles::ddl_get_capabilities() as $cap => $cap_info) {
             if (isset($access_roles[$role]['caps'][$cap])) {
                 unset($access_roles[$role]['caps'][$cap]);
                 $role_data->remove_cap($cap);
             }
         }
     }
     $access_caps = array('access_change_post_group' => __('Select access group for content', 'wpcf-access'), 'access_create_new_group' => __('Create new access groups', 'wpcf-access'));
     foreach ($access_caps as $cap => $cap_info) {
         if (isset($access_roles[$role]['caps'][$cap])) {
             unset($access_roles[$role]['caps'][$cap]);
             $role_data->remove_cap($cap);
         }
     }
     /*
     foreach ($toolset_caps_list as $cap => $cap_info){
     	if ( isset( $access_roles[$role]['caps'][$cap] ) ){
     		unset( $access_roles[$role]['caps'][$cap] );
     		$role_data->remove_cap($cap);
     	}
     }
     */
     for ($i = 0, $caps_limit = count($caps); $i < $caps_limit; $i++) {
         $cap = str_replace('cap_', '', $caps[$i]);
         $access_roles[$role]['caps'][$cap] = true;
         $role_data->add_cap($cap);
     }
     $model->updateAccessRoles($access_roles);
     die;
 }
Ejemplo n.º 4
0
 public static function import_export_hook($action)
 {
     if (isset($_POST['access-export']) && wp_verify_nonce($_POST['access-export-form'], 'access-export-form')) {
         TAccess_Loader::load('CLASS/XML_Processor');
         Access_XML_Processor::exportToXML('all');
     }
 }