aboutsummaryrefslogtreecommitdiff
path: root/muamba.module
blob: fbddf45790cb61fa20db9a6b6d9c8f5375253a0d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
<?php

/**
 * @file
 * Multiple-user Asset Manager and Borrowing Ambient.
 */

/**
 * Implements hook_permission()
 */
function muamba_permission() {
  return array(
    'administer muamba' => array(
      'title'       => t('request item'),
      'description' => t('Request an item to be borrowed or donated.'),
    ),
  );
}

/**
 * Implements hook_menu()
 */
function muamba_menu() {
  $items['muamba/request'] = array(
    'title'            => 'Request item',
    'page callback'    => 'muamba_request',
    'access arguments' => array('request item'),
    'type'             => MENU_SUGGESTED_ITEM,
    'file'             => 'muamba.misc.inc',
  );

  return $items;
}

/**
 * Implements hook_node_view()
 *
 * @todo
 *   Check widget status
 *   Check permissions
 */
function muamba_node_view($node, $view_mode, $langcode) {
  global $user;

  // Do not show widget to the owner or on non-muamba content types
  if ($node->uid == $user->uid || $node->type != 'muamba') {
    return;
  }

  if ($view_mode == 'full') {
    $node->content['muamba'] = array(
      '#markup' => theme('muamba_widget', array('nid' => $node->nid)),
      '#weight' => 100,
    );

    return $node;
  }
}

/**
 * Implements hook_theme()
 */
function muamba_theme($existing, $type, $theme, $path) {
  return array(
    'muamba_widget' => array(
      'template'  => 'muamba-widget',
      'variables' => array('nid' => NULL),
    ),
    'muamba_powered' => array(
      'template' => 'muamba-powered',
    ),
  );
}

/**
 * Implements hook_block_info()
 */
function muamba_block_info() {
  $blocks['muamba_powered'] = array(
    'info'   => t('Muamba powered'),
    'cache'  => DRUPAL_NO_CACHE,
    'status' => TRUE,
    'region' => 'footer',
  );

  return $blocks;
}

/**
 * Implements hook_block_view()
 */
function muamba_block_view($delta = '') {
  $block = array();

  switch ($delta) {
    case 'muamba_powered':
      $block['subject'] = NULL;
      $block['content'] = theme('muamba_powered');
      break;
    
  }
  return $block;
}