materio_page_title.module 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091
  1. <?php
  2. /**
  3. * Implements hook_block_info().
  4. */
  5. function materio_page_title_block_info() {
  6. // This example comes from node.module.
  7. /*
  8. *$blocks['syndicate'] = array(
  9. * 'info' => t('Syndicate'),
  10. * 'cache' => DRUPAL_NO_CACHE
  11. *);
  12. */
  13. $blocks['materio_page_title'] = array(
  14. 'info' => t('Materio page title'),
  15. 'cache' => DRUPAL_NO_CACHE
  16. );
  17. return $blocks;
  18. }
  19. /**
  20. * Implements hook_block_view().
  21. */
  22. function materio_page_title_block_view($delta = '') {
  23. $block = array();
  24. switch ($delta) {
  25. case 'materio_page_title':
  26. $block['subject'] = t('Page title');
  27. $block['content'] = theme('materio_page_title', array('title' => materio_page_title_get_title()));
  28. drupal_add_js(drupal_get_path('module', 'materio_page_title').'/js/materio_page_title-ck.js');
  29. break;
  30. }
  31. return $block;
  32. }
  33. function materio_page_title_get_title(){
  34. if (arg(0) == 'node' && $node = node_load(arg(1))) {
  35. if(!user_access('show '.$node->type.' title')){
  36. if($node->type == "materiau"){
  37. $title = field_get_items('node', $node, 'field_nature_titre');
  38. return $title[0]['safe_value'];
  39. }else{
  40. return 'restricted access';
  41. }
  42. }
  43. }
  44. return drupal_get_title();
  45. }
  46. /**
  47. * Implements hook_theme().
  48. */
  49. function materio_page_title_theme($existing, $type, $theme, $path) {
  50. return array(
  51. 'materio_page_title' => array(
  52. 'variables' => array('title' => NULL,),
  53. ),
  54. );
  55. }
  56. function theme_materio_page_title($vars){
  57. if($vars['title'])
  58. return '<h1 id="materio-page-title" class="page-title">'.$vars['title'].'</h1>';
  59. return;
  60. }
  61. /**
  62. * Implements hook_menu().
  63. */
  64. // function materio_page_title_menu() {
  65. // $items = array();
  66. // $base = array(
  67. // 'type' => MENU_CALLBACK,
  68. // 'file' => 'materio_page_title.pages.inc',
  69. // );
  70. // $items['materio_page_title/refresh/block'] = $base+array(
  71. // 'title' => 'Materio page title refresh block',
  72. // 'page callback' => 'materio_page_title_refresh_block',
  73. // 'page arguments' => array(),
  74. // 'access callback' => TRUE,
  75. // );
  76. // return $items;
  77. // }