Upgraded drupal core with security updates
[yaffs-website] / web / core / modules / system / tests / modules / database_test / database_test.module
1 <?php
2
3 /**
4  * @file
5  * Database test module.
6  */
7
8 use Drupal\Core\Database\Query\AlterableInterface;
9
10 /**
11  * Implements hook_query_alter().
12  */
13 function database_test_query_alter(AlterableInterface $query) {
14
15   if ($query->hasTag('database_test_alter_add_range')) {
16     $query->range(0, 2);
17   }
18
19   if ($query->hasTag('database_test_alter_add_join')) {
20     $people_alias = $query->join('test', 'people', "test_task.pid = %alias.id");
21     $query->addField($people_alias, 'name', 'name');
22     $query->condition($people_alias . '.id', 2);
23   }
24
25   if ($query->hasTag('database_test_alter_change_conditional')) {
26     $conditions =& $query->conditions();
27     $conditions[0]['value'] = 2;
28   }
29
30   if ($query->hasTag('database_test_alter_change_fields')) {
31     $fields =& $query->getFields();
32     unset($fields['age']);
33   }
34
35   if ($query->hasTag('database_test_alter_change_expressions')) {
36     $expressions =& $query->getExpressions();
37     $expressions['double_age']['expression'] = 'age*3';
38   }
39 }
40
41
42 /**
43  * Implements hook_query_TAG_alter().
44  *
45  * Called by DatabaseTestCase::testAlterRemoveRange.
46  */
47 function database_test_query_database_test_alter_remove_range_alter(AlterableInterface $query) {
48   $query->range();
49 }