1<?php
2/*
3 * Template Lite plugin
4 * -------------------------------------------------------------
5 * Type:	 function
6 * Name:	 db_function_call
7 * Purpose:  Interface with ADOdb Lite to query database.
8 *
9 * db_object = Database object
10 * db_function = Database function to execute
11 * db_query = query string to pass to the database
12 * db_assign = variable name to assign result data
13 * db_errornumber_assign = variable name to assign the database error number
14 * db_error_assign = the variable name to assign the database error message
15 * db_EOF_assign = the variable name to assign the database end of file flag
16 * -------------------------------------------------------------
17 */
18function tpl_function_db_function_call($params, &$template_object)
19{
20	if (empty($params['db_object']))
21	{
22		$template_object->trigger_error("db_function_call: missing db_object parameter");
23		return;
24	}
25
26	if (!is_object($params['db_object']))
27	{
28		$template_object->trigger_error("db_function_call: db_object isn't an object");
29		return;
30	}
31
32	$db = $params['db_object'];
33
34	if (empty($params['db_assign']))
35	{
36		$template_object->trigger_error("db_function_call: missing db_assign parameter");
37		return;
38	}
39
40	if (empty($params['db_function']))
41	{
42		$template_object->trigger_error("db_function_call: missing db_function parameter");
43		return;
44	}
45
46	$db_function = $params['db_function'];
47
48	$result = $db->$db_function($params['db_query']);
49
50	$template_object->assign($params['db_assign'], $result);
51
52	if (!empty($params['db_errornumber_assign']))
53	{
54		$template_object->assign($params['db_errornumber_assign'], $db->ErrorNo());
55	}
56
57	if (!empty($params['db_error_assign']))
58	{
59		$template_object->assign($params['db_error_assign'], $db->ErrorMsg());
60	}
61
62	if (!empty($params['db_EOF_assign']))
63	{
64		$template_object->assign($params['db_EOF_assign'], $result->EOF);
65	}
66}
67?>
68