Переглянути джерело

Updated default user search views to have access permission & fixed some permissions bugs in the process

Lacey Sanderson 11 роки тому
батько
коміт
4464f631c6

+ 3 - 0
tripal_analysis/tripal_analysis.views_default.inc

@@ -52,6 +52,9 @@ function tripal_analysis_defaultvalue_user_analysis() {
   $view->display['page_1']->display_options['menu']['type'] = 'normal';
   unset($view->display['page_1']->display_options['tab_options']);
 
+  // Change the permission
+  $view->display['default']->display_options['access']['perm'] = 'access chado_analysis content';
+
   // Remove edit/delete node
   unset(
     $view->display['default']->display_options['fields']['delete_node'],

+ 3 - 0
tripal_contact/tripal_contact.views_default.inc

@@ -56,6 +56,9 @@ function tripal_contact_defaultvalue_user_contacts() {
   );
   unset($view->display['page_1']->display_options['tab_options']);
 
+  // Change the permission
+  $view->display['default']->display_options['access']['perm'] = 'access chado_contact content';
+
   // Remove edit/delete node
   unset(
     $view->display['default']->display_options['fields']['delete_node'],

+ 3 - 0
tripal_feature/tripal_feature.views_default.inc

@@ -54,6 +54,9 @@ function tripal_feature_defaultvalue_user_features() {
   );
   unset($view->display['page_1']->display_options['tab_options']);
 
+  // Change the permission
+  $view->display['default']->display_options['access']['perm'] = 'access chado_feature content';
+
   // Remove edit/delete node
   unset(
     $view->display['default']->display_options['fields']['delete_node'],

+ 9 - 9
tripal_featuremap/includes/tripal_featuremap.chado_node.inc

@@ -107,10 +107,10 @@ function chado_featuremap_form($node, &$form_state) {
     '#default_value' => $description,
   );
 
-  // get the list of unit types  
+  // get the list of unit types
   $units = tripal_get_cvterm_default_select_options('featuremap', 'unittype_id', 'map unit types');
   $units[0] = 'Select a Type';
-  
+
   $form['unittype_id'] = array(
     '#title'       => t('Map Units'),
     '#type'        => t('select'),
@@ -170,7 +170,7 @@ function chado_featuremap_validate($node, $form, &$form_state) {
   // trim white space from text fields
   $node->fmapname       = trim($node->fmapname);
   $node->description    = trim($node->description);
-  
+
   $featuremap = 0;
   // check to make sure the unique name on the map is unique
   // before we try to insert into chado. If this is an update then we will
@@ -221,26 +221,26 @@ function chado_featuremap_node_access($node, $op, $account) {
   if (is_object($node)) {
     $node_type = $node->type;
   }
-  
+
   if($node_type == 'chado_featuremap') {
     if ($op == 'create') {
-      if (!user_access('create chado_featuremap', $account)) {
+      if (!user_access('create chado_featuremap content', $account)) {
         return NODE_ACCESS_DENY;
       }
       return NODE_ACCESS_ALLOW;
     }
     if ($op == 'update') {
-      if (!user_access('edit chado_featuremap', $account)) {
+      if (!user_access('edit chado_featuremap content', $account)) {
         return NODE_ACCESS_DENY;
       }
     }
     if ($op == 'delete') {
-      if (!user_access('delete chado_featuremap', $account)) {
+      if (!user_access('delete chado_featuremap content', $account)) {
         return NODE_ACCESS_DENY;
       }
     }
     if ($op == 'view') {
-      if (!user_access('access chado_featuremap', $account)) {
+      if (!user_access('access chado_featuremap content', $account)) {
         return NODE_ACCESS_DENY;
       }
     }
@@ -418,7 +418,7 @@ function chado_featuremap_load($nodes) {
     if (!$featuremap_id) {
       continue;
     }
-    
+
     $values = array('featuremap_id' => $featuremap_id);
     $featuremap = chado_generate_var('featuremap', $values);
 

+ 3 - 0
tripal_featuremap/tripal_featuremap.views_default.inc

@@ -54,6 +54,9 @@ function tripal_featuremap_defaultvalue_user_featuremaps() {
   );
   unset($view->display['page_1']->display_options['tab_options']);
 
+  // Change the permission
+  $view->display['default']->display_options['access']['perm'] = 'access chado_featuremap content';
+
   // Remove edit/delete node
   unset(
     $view->display['default']->display_options['fields']['delete_node'],

+ 9 - 9
tripal_library/includes/tripal_library.chado_node.inc

@@ -118,7 +118,7 @@ function chado_library_form($node, &$form_state) {
     '#default_value' => $uniquename,
   );
 
-  // get the list of library types  
+  // get the list of library types
   $types = tripal_get_cvterm_default_select_options('library', 'type_id', 'library types');
   $types[0] = 'Select a Type';
 
@@ -208,13 +208,13 @@ function chado_library_validate($node, $form, &$form_state) {
   if($node->op == 'Delete') {
     return;
   }
-  
+
   // we are syncing if we do not have a node ID but we do have a featuremap_id. We don't
   // need to validate during syncing so just skip it.
   if (is_null($node->nid) and property_exists($node, 'library_id') and $node->library_id != 0) {
     return;
   }
-  
+
   // trim white space from text fields
   $node->libraryname = trim($node->libraryname);
   $node->uniquename  = trim($node->uniquename);
@@ -386,7 +386,7 @@ function chado_library_load($nodes) {
     if (!$library_id) {
       continue;
     }
-    
+
     $values = array('library_id' => $library_id);
     $library = chado_generate_var('library', $values);
 
@@ -456,26 +456,26 @@ function chado_library_node_access($node, $op, $account) {
   if (is_object($node)) {
     $node_type = $node->type;
   }
-  
+
   if($node_type == 'chado_library') {
     if ($op == 'create') {
-      if (!user_access('create chado_library', $account)) {
+      if (!user_access('create chado_library content', $account)) {
         return NODE_ACCESS_DENY;
       }
       return NODE_ACCESS_ALLOW;
     }
     if ($op == 'update') {
-      if (!user_access('edit chado_library', $account)) {
+      if (!user_access('edit chado_library content', $account)) {
         return NODE_ACCESS_DENY;
       }
     }
     if ($op == 'delete') {
-      if (!user_access('delete chado_library', $account)) {
+      if (!user_access('delete chado_library content', $account)) {
         return NODE_ACCESS_DENY;
       }
     }
     if ($op == 'view') {
-      if (!user_access('access chado_library', $account)) {
+      if (!user_access('access chado_library content', $account)) {
         return NODE_ACCESS_DENY;
       }
     }

+ 1 - 1
tripal_library/tripal_library.module

@@ -28,7 +28,7 @@ require_once 'includes/tripal_library.chado_node.inc';
  *
  * @ingroup tripal_library
  */
-function tripal_library_permisssion() {
+function tripal_library_permission() {
   return array(
     'access chado_library content' => array(
       'title' => t('View Libraries'),

+ 3 - 0
tripal_library/tripal_library.views_default.inc

@@ -54,6 +54,9 @@ function tripal_library_defaultvalue_user_library() {
   );
   unset($view->display['page_1']->display_options['tab_options']);
 
+  // Change the permission
+  $view->display['default']->display_options['access']['perm'] = 'access chado_library content';
+
   // Remove edit/delete node
   unset(
     $view->display['default']->display_options['fields']['delete_node'],

+ 7 - 7
tripal_organism/includes/tripal_organism.chado_node.inc

@@ -66,26 +66,26 @@ function chado_organism_node_access($node, $op, $account) {
   if (is_object($node)) {
     $node_type = $node->type;
   }
-  
+
   if($node_type == 'chado_organism') {
     if ($op == 'create') {
-      if (!user_access('create chado_organism', $account)) {
+      if (!user_access('create chado_organism content', $account)) {
         return NODE_ACCESS_DENY;
       }
       return NODE_ACCESS_ALLOW;
     }
     if ($op == 'update') {
-      if (!user_access('edit chado_organism', $account)) {
+      if (!user_access('edit chado_organism content', $account)) {
         return NODE_ACCESS_DENY;
       }
     }
     if ($op == 'delete') {
-      if (!user_access('delete chado_organism', $account)) {
+      if (!user_access('delete chado_organism content', $account)) {
         return NODE_ACCESS_DENY;
       }
     }
     if ($op == 'view') {
-      if (!user_access('access chado_organism', $account)) {
+      if (!user_access('access chado_organism content', $account)) {
         return NODE_ACCESS_DENY;
       }
     }
@@ -230,7 +230,7 @@ function chado_organism_validate($node, $form, &$form_state) {
   $node->abbreviation = trim($node->abbreviation);
   $node->common_name  = trim($node->common_name);
   $node->description  = trim($node->description);
-  
+
   // Validating for an update
   if (property_exists($node, 'organism_id')) {
     $sql = "
@@ -486,7 +486,7 @@ function chado_organism_load($nodes) {
   foreach ($nodes as $nid => $node) {
     // find the organism and add in the details
     $organism_id = chado_get_id_from_nid('organism', $nid);
-    
+
     // if the nid does not have a matching record then skip this node.
     // this can happen with orphaned nodes.
     if (!$organism_id) {

+ 3 - 0
tripal_organism/tripal_organism.views_default.inc

@@ -54,6 +54,9 @@ function tripal_organism_defaultvalue_user_organisms() {
   );
   unset($view->display['page_1']->display_options['tab_options']);
 
+  // Change the permission
+  $view->display['default']->display_options['access']['perm'] = 'access chado_organism content';
+
   // Remove edit/delete node
   unset(
     $view->display['default']->display_options['fields']['delete_node'],

+ 4 - 4
tripal_project/includes/tripal_project.chado_node.inc

@@ -438,23 +438,23 @@ function chado_project_node_access($node, $op, $account) {
 
   if($node_type == 'chado_project') {
     if ($op == 'create') {
-      if (!user_access('create chado_project', $account)) {
+      if (!user_access('create chado_project content', $account)) {
         return NODE_ACCESS_DENY;
       }
       return NODE_ACCESS_ALLOW;
     }
     if ($op == 'update') {
-      if (!user_access('edit chado_project', $account)) {
+      if (!user_access('edit chado_project content', $account)) {
         return NODE_ACCESS_DENY;
       }
     }
     if ($op == 'delete') {
-      if (!user_access('delete chado_project', $account)) {
+      if (!user_access('delete chado_project content', $account)) {
         return NODE_ACCESS_DENY;
       }
     }
     if ($op == 'view') {
-      if (!user_access('access chado_project', $account)) {
+      if (!user_access('access chado_project content', $account)) {
         return NODE_ACCESS_DENY;
       }
     }

+ 5 - 1
tripal_project/tripal_project.views_default.inc

@@ -54,6 +54,9 @@ function tripal_project_defaultvalue_user_projects() {
   );
   unset($view->display['page']->display_options['tab_options']);
 
+  // Change the permission
+  $view->display['default']->display_options['access']['perm'] = 'access chado_project content';
+
   // Remove edit/delete node
   unset(
     $view->display['default']->display_options['fields']['delete_node'],
@@ -88,7 +91,8 @@ function tripal_project_defaultview_admin_projects() {
   $handler = $view->new_display('default', 'Master', 'default');
   $handler->display->display_options['title'] = 'Projects';
   $handler->display->display_options['use_more_always'] = FALSE;
-  $handler->display->display_options['access']['type'] = 'none';
+$handler->display->display_options['access']['type'] = 'perm';
+$handler->display->display_options['access']['perm'] = 'adminster tripal project';
   $handler->display->display_options['cache']['type'] = 'none';
   $handler->display->display_options['query']['type'] = 'views_query';
   $handler->display->display_options['exposed_form']['type'] = 'basic';

+ 3 - 0
tripal_stock/tripal_stock.views_default.inc

@@ -54,6 +54,9 @@ function tripal_stock_defaultvalue_user_stocks() {
   );
   unset($view->display['page_1']->display_options['tab_options']);
 
+  // Change the permission
+  $view->display['default']->display_options['access']['perm'] = 'access chado_stock content';
+
   // Remove edit/delete node
   unset(
     $view->display['default']->display_options['fields']['delete_node'],