From 1da73d26c2d8018f389f6290e2be8249280e76bc Mon Sep 17 00:00:00 2001 From: Angie Byron Date: Tue, 27 Oct 2009 19:29:12 +0000 Subject: #591794 by chx, Rob Loach, sun, JohnAlbin: Give themes access to alter hooks. --- modules/simpletest/tests/common_test.module | 34 +++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) (limited to 'modules/simpletest/tests/common_test.module') diff --git a/modules/simpletest/tests/common_test.module b/modules/simpletest/tests/common_test.module index cc8c22772..e8c6602c2 100644 --- a/modules/simpletest/tests/common_test.module +++ b/modules/simpletest/tests/common_test.module @@ -100,6 +100,40 @@ function common_test_drupal_alter_alter(&$data, &$arg2 = NULL, &$arg3 = NULL) { } } +/** + * Implement hook_TYPE_alter() on behalf of Garland theme. + * + * Same as common_test_drupal_alter_alter(), but here, we verify that themes + * can also alter and come last. + */ +function garland_drupal_alter_alter(&$data, &$arg2 = NULL, &$arg3 = NULL) { + // Alter first argument. + if (is_array($data)) { + $data['foo'] .= ' theme'; + } + elseif (is_object($data)) { + $data->foo .= ' theme'; + } + // Alter second argument, if present. + if (isset($arg2)) { + if (is_array($arg2)) { + $arg2['foo'] .= ' theme'; + } + elseif (is_object($arg2)) { + $arg2->foo .= ' theme'; + } + } + // Try to alter third argument, if present. + if (isset($arg3)) { + if (is_array($arg3)) { + $arg3['foo'] .= ' theme'; + } + elseif (is_object($arg3)) { + $arg3->foo .= ' theme'; + } + } +} + /** * Implement hook_theme(). */ -- cgit v1.2.3