Projet

Général

Profil

Paste
Télécharger (4,59 ko) Statistiques
| Branche: | Révision:

root / drupal7 / sites / all / modules / ldap / ldap_query / ldap_query.module @ 91af538d

1 85ad3d82 Assos Assos
<?php
2
3 bc175c27 Assos Assos
/**
4
 * @file
5
 */
6
7 85ad3d82 Assos Assos
define('LDAP_QUERY_MENU_BASE_PATH', 'admin/config/people/ldap');
8
define('LDAP_QUERY_INDEX_BASE_PATH', 'admin/config/people/ldap/query');
9 32700c57 Assos Assos
// For argument offsets.
10
define('LDAP_QUERY_MENU_BASE_PATH_PARTS', 4);
11 85ad3d82 Assos Assos
12 32700c57 Assos Assos
/**
13
 *
14
 */
15 85ad3d82 Assos Assos
function ldap_query_menu() {
16
  $menu_offset = 4;
17
18 32700c57 Assos Assos
  $items['admin/config/people/ldap/query'] = [
19 85ad3d82 Assos Assos
    'title' => 'Queries',
20
    'page callback' => 'ldap_query_index',
21 32700c57 Assos Assos
    'page arguments' => [],
22 85ad3d82 Assos Assos
    'weight' => 6,
23
    'type' => MENU_LOCAL_TASK,
24 32700c57 Assos Assos
    'access arguments' => ['administer site configuration'],
25 85ad3d82 Assos Assos
    'file' => 'ldap_query.admin.inc',
26 32700c57 Assos Assos
  ];
27 85ad3d82 Assos Assos
28 32700c57 Assos Assos
  $items['admin/config/people/ldap/query/list'] = [
29 85ad3d82 Assos Assos
    'title' => 'Queries',
30
    'type' => MENU_DEFAULT_LOCAL_TASK,
31 32700c57 Assos Assos
  ];
32 85ad3d82 Assos Assos
33 32700c57 Assos Assos
  $items['admin/config/people/ldap/query/add'] = [
34 85ad3d82 Assos Assos
    'title' => 'Add LDAP Query',
35
    'page callback' => 'drupal_get_form',
36 32700c57 Assos Assos
    'page arguments' => ['ldap_query_admin_form', 'add'],
37 85ad3d82 Assos Assos
    'type' => MENU_LOCAL_TASK + MENU_CONTEXT_INLINE,
38
    'weight' => 3,
39 32700c57 Assos Assos
    'access arguments' => ['administer site configuration'],
40 85ad3d82 Assos Assos
    'file' => 'ldap_query.admin.inc',
41 32700c57 Assos Assos
  ];
42 85ad3d82 Assos Assos
43 32700c57 Assos Assos
  $items['admin/config/people/ldap/query/edit/%'] = [
44 85ad3d82 Assos Assos
    'title' => 'Edit LDAP Query',
45
    'page callback' => 'drupal_get_form',
46 32700c57 Assos Assos
    'page arguments' => ['ldap_query_admin_form', 'edit', $menu_offset + 2],
47
    'access arguments' => ['administer site configuration'],
48 85ad3d82 Assos Assos
    'file' => 'ldap_query.admin.inc',
49 32700c57 Assos Assos
  ];
50 85ad3d82 Assos Assos
51 32700c57 Assos Assos
  $items['admin/config/people/ldap/query/test/%'] = [
52 85ad3d82 Assos Assos
    'title' => 'Test LDAP Query',
53
    'page callback' => 'ldap_query_test',
54 32700c57 Assos Assos
    'page arguments' => [$menu_offset + 2],
55
    'access arguments' => ['administer site configuration'],
56 85ad3d82 Assos Assos
    'file' => 'ldap_query.admin.inc',
57 32700c57 Assos Assos
  ];
58 85ad3d82 Assos Assos
59 32700c57 Assos Assos
  $items['admin/config/people/ldap/query/delete/%'] = [
60 85ad3d82 Assos Assos
    'title' => 'Delete LDAP Query',
61
    'page callback' => 'drupal_get_form',
62 32700c57 Assos Assos
    'page arguments' => ['ldap_query_admin_delete', $menu_offset + 1, $menu_offset + 2],
63
    'access arguments' => ['administer site configuration'],
64 85ad3d82 Assos Assos
    'file' => 'ldap_query.admin.inc',
65 32700c57 Assos Assos
  ];
66 85ad3d82 Assos Assos
67 32700c57 Assos Assos
  $items['admin/config/people/ldap/query/enable/%'] = [
68 85ad3d82 Assos Assos
    'title' => 'Enable LDAP Query',
69
    'page callback' => 'drupal_get_form',
70 32700c57 Assos Assos
    'page arguments' => ['ldap_query_admin_enable_disable', $menu_offset + 1, $menu_offset + 2],
71
    'access arguments' => ['administer site configuration'],
72 85ad3d82 Assos Assos
    'file' => 'ldap_query.admin.inc',
73 32700c57 Assos Assos
  ];
74 85ad3d82 Assos Assos
75 32700c57 Assos Assos
  $items['admin/config/people/ldap/query/disable/%'] = [
76 85ad3d82 Assos Assos
    'title' => 'Enable LDAP Query',
77
    'page callback' => 'drupal_get_form',
78 32700c57 Assos Assos
    'page arguments' => ['ldap_query_admin_enable_disable', $menu_offset + 1, $menu_offset + 2],
79
    'access arguments' => ['administer site configuration'],
80 85ad3d82 Assos Assos
    'file' => 'ldap_query.admin.inc',
81 32700c57 Assos Assos
  ];
82 85ad3d82 Assos Assos
83
  return $items;
84
}
85
86 32700c57 Assos Assos
/**
87
 *
88
 */
89 85ad3d82 Assos Assos
function ldap_query_theme() {
90 32700c57 Assos Assos
  return [
91
    'ldap_query_list' => [
92
      'variables' => ['ldap_query' => NULL, 'actions' => TRUE, 'type' => 'table'],
93 85ad3d82 Assos Assos
      'render element' => 'element',
94 32700c57 Assos Assos
      'file' => 'ldap_query.theme.inc',
95
    ],
96
    'ldap_query' => [
97
      'variables' => ['ldap_server' => NULL, 'actions' => FALSE, 'type' => 'detail'],
98 85ad3d82 Assos Assos
      'render element' => 'element',
99 32700c57 Assos Assos
      'file' => 'ldap_query.theme.inc',
100
    ],
101
    'ldap_query_results' => [
102
      'variables' => ['ldap_query' => NULL, 'result' => FALSE, 'show_query' => TRUE],
103 85ad3d82 Assos Assos
      'render element' => 'element',
104 32700c57 Assos Assos
      'file' => 'ldap_query.theme.inc',
105
    ],
106
  ];
107 85ad3d82 Assos Assos
}
108
109 32700c57 Assos Assos
/**
110
 *
111
 */
112 85ad3d82 Assos Assos
function ldap_query_cache_clear() {
113
  $discard = ldap_query_get_queries(NULL, 'all', FALSE, TRUE);
114
}
115 32700c57 Assos Assos
116 85ad3d82 Assos Assos
/**
117 32700c57 Assos Assos
 * Return ldap query objects.
118 85ad3d82 Assos Assos
 *
119 32700c57 Assos Assos
 * @param string $qid
120
 * @param string $type
121
 *   'all', 'enabled',.
122
 * @param bool $flatten
123
 *   signifies if array or single object returned.  Only works if sid is specified.
124
 * @param bool $reset
125
 *   do not use cached or static result.
126 85ad3d82 Assos Assos
 *
127 32700c57 Assos Assos
 * @return array
128
 *   of server conf object keyed on sid
129
 *   - single server conf object (if flatten == TRUE)
130 85ad3d82 Assos Assos
 */
131
function ldap_query_get_queries($qid = NULL, $type, $flatten = FALSE, $reset = FALSE) {
132
  ldap_servers_module_load_include('inc', 'ldap_query', 'ldap_query');
133 32700c57 Assos Assos
  return _ldap_query_get_queries($qid, $type, $flatten, $reset);
134 85ad3d82 Assos Assos
}
135
136 32700c57 Assos Assos
/**
137
 *
138
 */
139 85ad3d82 Assos Assos
function ldap_query_fields() {
140
  ldap_servers_module_load_include('php', 'ldap_query', 'LdapQuery.class');
141
  return LdapQuery::fields();
142
}
143
144 32700c57 Assos Assos
/**
145
 *
146
 */
147 85ad3d82 Assos Assos
function ldap_query_help($path, $arg) {
148
149
  $help = '<h3>' . t('LDAP Query Module') . '</h3><p>' .
150
  t('This module does nothing in and of itself.  It should only be
151
    enabled and configured if another module requires it.') . '</p>';
152
153
  switch ($path) {
154
    case 'admin/config/people/ldap/query':
155
      $output = '<p>' . $help . '</p>';
156
      return $output;
157
158
    case 'admin/help#ldap_query':
159
      $output = '<p>' . $help . '</p>';
160
      return $output;
161
  }
162
163
}