From: Steve Sutton Date: Fri, 27 Nov 2015 13:48:34 +0000 (-0500) Subject: Setup capabilities for Emmet County Emp Plugin X-Git-Url: http://cvs2.gaslightmedia.com/gitweb/?a=commitdiff_plain;h=35fea0f810bf036907dade8862500d42c07d90df;p=WP-Plugins%2Femmet-employment.git Setup capabilities for Emmet County Emp Plugin --- diff --git a/controllers/admin.php b/controllers/admin.php index 73b24ac..3720849 100644 --- a/controllers/admin.php +++ b/controllers/admin.php @@ -28,9 +28,20 @@ class emmet_employment_admin $this->pluginDirName = $path; $this->wpdb = $wpdb; $jobs = new emmet_employment_job($path); + add_action('admin_init', array($this, 'emmet_jobs_add_role_caps')); //add_action('admin_menu', array($this, 'add_job_menus')); } + public function emmet_jobs_add_role_caps() + { + $roles = array('manager', 'editor', 'administrator'); + + foreach ($roles as $the_role) { + $role = get_role($the_role); + $role->add_cap( EMMET_EMP_CAPABILITY ); + } + } + /** * Add job menus */ diff --git a/index.php b/index.php index d9c2033..89a82a1 100644 --- a/index.php +++ b/index.php @@ -16,10 +16,12 @@ define('EMMET_EMP_PLUGIN_PATH_FILE', __FILE__); define('EMMET_EMP_VERSION', '0.0.1'); define('EMMET_EMP_VRS_OPTION_NAME', 'emmet_jobs_db_version'); define('EMMET_EMP_POST_TYPE', 'emmet_jobs'); +define('EMMET_EMP_CAPABILITY', 'emmet_job'); define('EMMET_EMP_TAX_CATEGORIES', 'emmet_jobscategory'); define('EMMET_EMP_TAX_DEPARTMENTS', 'emmet_jobsdepartment'); define('EMMET_EMP_APPLICATION_TABLE', 'emmet_jobs_application'); define('EMMET_EMP_FORM_TABLE', 'emmet_jobs_app_form'); + $wp_upload_dir = wp_upload_dir(); define('EMMET_EMP_UPLOAD_DIR', $wp_upload_dir['basedir'] . '/emmet-emp/'); define('EMMET_EMP_UPLOAD_URL', $wp_upload_dir['baseurl'] . '/emmet-emp/'); diff --git a/models/job.php b/models/job.php index 6f47b9c..eb97017 100644 --- a/models/job.php +++ b/models/job.php @@ -341,7 +341,8 @@ class emmet_employment_job 'supports' => array('title', 'editor'), 'has_archive' => true, 'menu_icon' => 'dashicons-businessman', - 'capability_type' => 'post', + 'capability_type' => EMMET_EMP_CAPABILITY, + 'map_meta_cap' => true, 'hierarchical' => false, 'rewrite' => array('slug' => 'jobs'), 'taxonomies' => array(EMMET_EMP_TAX_CATEGORIES, EMMET_EMP_TAX_DEPARTMENTS), @@ -436,7 +437,13 @@ class emmet_employment_job 'query_var' => EMMET_EMP_TAX_CATEGORIES, 'rewrite' => array('slug' => EMMET_EMP_TAX_CATEGORIES), 'show_admin_column' => true, - '_builtin' => true + '_builtin' => true, + 'capabilities' => array( + 'manage_terms' => EMMET_EMP_CAPABILITY, + 'edit_terms' => EMMET_EMP_CAPABILITY, + 'delete_terms' => EMMET_EMP_CAPABILITY, + 'assign_terms' => EMMET_EMP_CAPABILITY, + ) )); $labels = array( @@ -467,6 +474,12 @@ class emmet_employment_job 'show_ui' => true, 'query_var' => EMMET_EMP_TAX_DEPARTMENTS, 'rewrite' => array('slug' => EMMET_EMP_TAX_DEPARTMENTS), + 'capabilities' => array( + 'manage_terms' => EMMET_EMP_CAPABILITY, + 'edit_terms' => EMMET_EMP_CAPABILITY, + 'delete_terms' => EMMET_EMP_CAPABILITY, + 'assign_terms' => EMMET_EMP_CAPABILITY, + ) )); }