80 lines
1.8 KiB
Plaintext
80 lines
1.8 KiB
Plaintext
|
<?php
|
||
|
|
||
|
/**
|
||
|
* @file
|
||
|
* Helper module for Ajax framework tests.
|
||
|
*/
|
||
|
|
||
|
/**
|
||
|
* Implements hook_menu().
|
||
|
*/
|
||
|
function ajax_test_menu() {
|
||
|
$items['ajax-test/render'] = array(
|
||
|
'title' => 'ajax_render',
|
||
|
'page callback' => 'ajax_test_render',
|
||
|
'delivery callback' => 'ajax_deliver',
|
||
|
'access callback' => TRUE,
|
||
|
'type' => MENU_CALLBACK,
|
||
|
);
|
||
|
$items['ajax-test/render-error'] = array(
|
||
|
'title' => 'ajax_render_error',
|
||
|
'page callback' => 'ajax_test_error',
|
||
|
'delivery callback' => 'ajax_deliver',
|
||
|
'access callback' => TRUE,
|
||
|
'type' => MENU_CALLBACK,
|
||
|
);
|
||
|
$items['ajax-test/link'] = array(
|
||
|
'title' => 'AJAX Link',
|
||
|
'page callback' => 'ajax_test_link',
|
||
|
'access callback' => TRUE,
|
||
|
);
|
||
|
return $items;
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
* Implements hook_system_theme_info().
|
||
|
*/
|
||
|
function ajax_test_system_theme_info() {
|
||
|
$themes['test_theme'] = drupal_get_path('module', 'ajax_test') . '/themes/test_theme/test_theme.info';
|
||
|
return $themes;
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
* Menu callback; Return an element suitable for use by ajax_deliver().
|
||
|
*
|
||
|
* Additionally ensures that ajax_render() incorporates JavaScript settings
|
||
|
* generated during the page request by invoking drupal_add_js() with a dummy
|
||
|
* setting.
|
||
|
*/
|
||
|
function ajax_test_render() {
|
||
|
drupal_add_js(array('ajax' => 'test'), 'setting');
|
||
|
return array('#type' => 'ajax', '#commands' => array());
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
* Menu callback; Returns Ajax element with #error property set.
|
||
|
*/
|
||
|
function ajax_test_error() {
|
||
|
$message = '';
|
||
|
if (!empty($_GET['message'])) {
|
||
|
$message = $_GET['message'];
|
||
|
}
|
||
|
return array('#type' => 'ajax', '#error' => $message);
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
* Menu callback; Renders a #type link with #ajax.
|
||
|
*/
|
||
|
function ajax_test_link() {
|
||
|
$build['link'] = array(
|
||
|
'#type' => 'link',
|
||
|
'#title' => 'Show help',
|
||
|
'#href' => 'filter/tips',
|
||
|
'#ajax' => array(
|
||
|
'wrapper' => 'block-system-main',
|
||
|
),
|
||
|
);
|
||
|
return $build;
|
||
|
}
|
||
|
|