tripal_feature.blocks.inc 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119
  1. <?php
  2. /**
  3. * @file
  4. * Describes the feature blocks to drupal
  5. */
  6. /**
  7. * Implements hook_block().
  8. *
  9. * @ingroup tripal_feature
  10. */
  11. function tripal_feature_block_info() {
  12. $blocks['references']['info'] = t('Tripal Feature References');
  13. $blocks['references']['cache'] = 'BLOCK_NO_CACHE';
  14. $blocks['base']['info'] = t('Tripal Feature Details');
  15. $blocks['base']['cache'] = 'BLOCK_NO_CACHE';
  16. $blocks['sequence']['info'] = t('Tripal Feature Sequence');
  17. $blocks['sequence']['cache'] = 'BLOCK_NO_CACHE';
  18. $blocks['featureloc_sequences']['info'] = t('Tripal Feature Annotated Sequence');
  19. $blocks['featureloc_sequences']['cache'] = 'BLOCK_NO_CACHE';
  20. $blocks['synonyms']['info'] = t('Tripal Feature Synonyms');
  21. $blocks['synonyms']['cache'] = 'BLOCK_NO_CACHE';
  22. $blocks['properties']['info'] = t('Tripal Feature Properties');
  23. $blocks['properties']['cache'] = 'BLOCK_NO_CACHE';;
  24. $blocks['terms']['info'] = t('Tripal Annotated Terms');
  25. $blocks['terms']['cache'] = 'BLOCK_NO_CACHE';;
  26. $blocks['alignments']['info'] = t('Tripal Feature Alignments');
  27. $blocks['alignments']['cache'] = 'BLOCK_NO_CACHE';
  28. $blocks['relationships']['info'] = t('Tripal Feature Relationships');
  29. $blocks['relationships']['cache'] = 'BLOCK_NO_CACHE';
  30. $blocks['org_feature_counts']['info'] = t('Tripal Organism Feature Counts');
  31. $blocks['org_feature_counts']['cache'] = 'BLOCK_NO_CACHE';
  32. $blocks['org_feature_browser']['info'] = t('Tripal Organism Feature Browser');
  33. $blocks['org_feature_browser']['cache'] = 'BLOCK_NO_CACHE';
  34. return $blocks;
  35. }
  36. /**
  37. * Implements hook_block_view().
  38. *
  39. * @ingroup tripal_feature
  40. */
  41. function tripal_feature_block_view($delta = '') {
  42. if (user_access('access chado_feature content') and arg(0) == 'node' and is_numeric(arg(1))) {
  43. $nid = arg(1);
  44. $node = node_load($nid);
  45. $block = array();
  46. switch ($delta) {
  47. case 'references':
  48. $block['subject'] = t('Cross References');
  49. $block['content'] = theme('tripal_feature_references', $node);
  50. break;
  51. case 'base':
  52. $block['subject'] = t('Feature Details');
  53. $block['content'] = theme('tripal_feature_base', $node);
  54. break;
  55. case 'synonyms':
  56. $block['subject'] = t('Synonyms');
  57. $block['content'] = theme('tripal_feature_synonyms', $node);
  58. break;
  59. case 'properties':
  60. $block['subject'] = t('Properties');
  61. $block['content'] = theme('tripal_feature_properties', $node);
  62. break;
  63. case 'terms':
  64. $block['subject'] = t('Annotated Terms');
  65. $block['content'] = theme('tripal_feature_terms', $node);
  66. break;
  67. case 'sequence':
  68. $block['subject'] = t('Sequence');
  69. $block['content'] = theme('tripal_feature_sequence', $node);
  70. break;
  71. case 'featureloc_sequences':
  72. $block['subject'] = t('Formatted Sequences');
  73. $block['content'] = theme('tripal_feature_featureloc_sequences', $node);
  74. break;
  75. case 'alignments':
  76. $block['subject'] = t('Alignments');
  77. $block['content'] = theme('tripal_feature_alignments', $node);
  78. break;
  79. case 'relationships':
  80. $block['subject'] = t('Relationships');
  81. $block['content'] = theme('tripal_feature_relationships', $node);
  82. break;
  83. case 'org_feature_counts':
  84. $block['subject'] = t('Feature Type Summary');
  85. $block['content'] = theme('tripal_organism_feature_counts', array('node' => $node));
  86. break;
  87. case 'org_feature_browser':
  88. $block['subject'] = t('Feature Browser');
  89. $block['content'] = theme('tripal_organism_feature_browser', array('node' => $node));
  90. break;
  91. case 'library_feature_browser':
  92. $block['subject'] = t('Library Feature Browser');
  93. $block['content'] = theme('tripal_library_feature_browser', $node);
  94. break;
  95. case 'analysis_feature_browser':
  96. $block['subject'] = t('Analysis Feature Browser');
  97. $block['content'] = theme('tripal_analysis_feature_browser', $node);
  98. break;
  99. default :
  100. }
  101. return $block;
  102. }
  103. }