User Guide - query builder

Fleshing out the API reference
Signed-off-by:James L Parry <jim_parry@bcit.ca>
diff --git a/user_guide_src/source/database/query_builder_reference.rst b/user_guide_src/source/database/query_builder_reference.rst
index f20a1e7..7c379ae 100644
--- a/user_guide_src/source/database/query_builder_reference.rst
+++ b/user_guide_src/source/database/query_builder_reference.rst
@@ -21,3 +21,220 @@
 		Generates a platform-specific query string that counts 
                 all records returned by an Query Builder query.
 
+	.. method:: dbprefix($table = '')
+
+		:param	string	$table: The table name to work with
+		:returns:	The modified table name
+		:rtype:	string
+
+		Prepends a database prefix if one exists in configuration
+
+	.. method:: delete($table = '', $where = '', $limit = NULL, $reset_data = TRUE)
+
+		:param	mixed	$table: The table(s) to delete from; string or array
+		:param	string	$where: The where clause
+		:param	string	$limit: The limit clause
+		:param	boolean	$reset_data: TRUE to reset the query "write" clause
+		:returns:	DB_query_builder instance, FALSE on failure
+		:rtype:	mixed
+
+		Compiles a delete string and runs the query
+
+	.. method:: distinct($val = TRUE)
+
+		:param	boolean	$val: Desired value of the "distinct" flag
+		:returns:	DB_query_driver instance
+		:rtype:	object
+
+		Sets a flag which tells the query string compiler to add DISTINCT
+
+	.. method:: empty_table($table = '')
+
+		:param	string	$table: Name of table to empty
+		:returns:	DB_driver instance
+		:rtype:	object
+
+		Compiles a delete string and runs "DELETE FROM table"
+
+	.. method:: flush_cache()
+
+		:rtype:	void
+
+		Empties the QB cache
+
+	.. method:: from($from)
+
+		:param	mixed	$from: Can be a string or array
+		:returns:	DB_query_builder instance
+		:rtype:	object
+
+		Generates the FROM portion of the query
+
+	.. method:: get($table = '', $limit = NULL, $offset = NULL)
+
+		:param	string	$table: The table to query
+		:param	string	$limit: The limit clause
+		:param	string	$offset: The offset clause
+		:returns:	DB_result
+		:rtype:	object
+
+		Compiles the select statement based on the other functions 
+                called and runs the query
+
+	.. method:: get_compiled_delete($table = '', $reset = TRUE)
+
+		:param	string	$table: Name of the table to delete from
+		:param	boolean	$reset: TRUE: reset QB values; FALSE: leave QB values alone
+		:returns:	The SQL string
+		:rtype:	string
+
+		Compiles a delete query string and returns the sql
+
+	.. method:: get_compiled_insert($table = '', $reset = TRUE)
+
+		:param	string	$table: Name of the table to insert into
+		:param	boolean	$reset: TRUE: reset QB values; FALSE: leave QB values alone
+		:returns:	The SQL string
+		:rtype:	string
+
+		Compiles an insert query string and returns the sql
+
+	.. method:: get_compiled_select($table = '', $reset = TRUE)
+
+		:param	string	$table: Name of the table to select from
+		:param	boolean	$reset: TRUE: reset QB values; FALSE: leave QB values alone
+		:returns:	The SQL string
+		:rtype:	string
+
+		Compiles a select query string and returns the sql
+
+	.. method:: get_compiled_update($table = '', $reset = TRUE)
+
+		:param	string	$table: Name of the table to update
+		:param	boolean	$reset: TRUE: reset QB values; FALSE: leave QB values alone
+		:returns:	The SQL string
+		:rtype:	string
+
+		Compiles an update query string and returns the sql
+
+	.. method:: get_where($table = '', $where = NULL, $limit = NULL, $offset = NULL)
+
+		:param	mixed	$table: The table(s) to delete from; string or array
+		:param	string	$where: The where clause
+		:param	int	$limit: Number of records to return
+		:param	int	$offset: Number of records to skip
+		:returns:	DB_result
+		:rtype:	object
+
+		Allows the where clause, limit and offset to be added directly
+
+	.. method:: group_by($by, $escape = NULL)
+
+		:param	mixed	$by: Field(s) to group by; string or array
+		:returns:	DB_query_builder instance
+		:rtype:	object
+
+		Adds a GROUPBY clause to the query
+
+	.. method:: group_end()
+
+		:returns:	DB_query_builder instance
+		:rtype:	object
+
+		Ends a query group
+
+	.. method:: group_start($not = '', $type = 'AND ')
+
+		:param	string	$not: (Internal use only)
+		:param	string	$type: (Internal use only)
+		:returns:	DB_query_builder instance
+		:rtype:	object
+
+		Starts a query group.
+
+	.. method:: having($key, $value = NULL, $escape = NULL)
+
+		:param	string	$key: Key (string) or associative array of values
+		:param	string	$value: Value sought if the key is a string
+		:param	string	$escape: TRUE to escape the content
+		:returns:	DB_query_builder instance
+		:rtype:	object
+
+		Separates multiple calls with 'AND'.
+
+	.. method:: insert($table = '', $set = NULL, $escape = NULL)
+
+		:param	string	$table: The table to insert data into
+		:param	array	$set: An associative array of insert values
+		:param	boolean	$table: Whether to escape values and identifiers
+		:returns:	DB_result
+		:rtype:	object
+
+		Compiles an insert string and runs the query
+
+	.. method:: insert_batch($table = '', $set = NULL, $escape = NULL)
+
+		:param	string	$table: The table to insert data into
+		:param	array	$set: An associative array of insert values
+		:param	boolean	$escape: Whether to escape values and identifiers
+		:returns:	Number of rows inserted or FALSE on failure
+		:rtype:	mixed
+
+		Compiles batch insert strings and runs the queries
+
+	.. method:: join($table, $cond, $type = '', $escape = NULL)
+
+		:param	string	$table: Name of the table being joined
+		:param	string	$cond: The JOIN condition
+		:param	string	$type: The JOIN type
+		:param	boolean	$escape: Whether to escape values and identifiers
+		:returns:	DB_query_builder instance
+		:rtype:	object
+
+		Generates the JOIN portion of the query
+
+	.. method:: like($field, $match = '', $side = 'both', $escape = NULL)
+
+		:param	string	$field: Name of field to compare
+		:param	string	$match: Text portion to match
+		:param	string	$side: Position of a match
+		:param	boolean	$escape: Whether to escape values and identifiers
+		:returns:	DB_query_builder instance
+		:rtype:	object
+
+		Generates a %LIKE% portion of the query.
+                Separates multiple calls with 'AND'.
+
+	.. method:: limit($value, $offset = FALSE)
+
+		:param	mixed	$value: Number of rows to limit the results to, NULL for no limit
+		:param	mixed	$offset: Number of rows to skip, FALSE if no offset used
+		:returns:	DB_query_builder instance
+		:rtype:	object
+
+		Specify a limit and offset for the query
+
+	.. method:: x
+
+		:param	string	$x: x
+		:returns:	x
+		:rtype:	x
+
+		x
+
+	.. method:: x
+
+		:param	string	$x: x
+		:returns:	x
+		:rtype:	x
+
+		x
+
+	.. method:: x
+
+		:param	string	$x: x
+		:returns:	x
+		:rtype:	x
+
+		x
+