<?php
	/**
	 * UsersTestAnswersManager.php
	 *
	 * Description	: A Simple Getter/Setter Bin Class
	 *
	 * Developed By : Suresh Shinde
	 *
	 * Developed On : 07 June, 2010
	 *
	 * Liscence 	: GPL
	 *
	 * Created On 	: 12/07/2011 09:00:03
	 *
	 * Created By 	: Mrunal Malusare
	 *
	 */

	/**
	 * Include BIN (Getters & Setters) Class
	 */
	require_once(dirname(__FILE__)."/UsersTestAnswers.php");

	/**
	 * Include Exception Class
	 */
	require_once(dirname(__FILE__)."/UsersTestAnswersException.php");

	/**
	 * Start of class UsersTestAnswersManager
	 */
	class UsersTestAnswersManager
	{
		/**
		 * Add UsersTestAnswers
		 */
		function addUsersTestAnswers ($UsersTestAnswers)
		{
			try
			{
				$conn	= new ConnectionPool();

				$sql	=
					"INSERT INTO tcv_users_test_answers
					 (
						user_test_answer_id,
						user_test_id,
						user_id,
						question_id,
						test_answer_id,
						answer_value,
						is_correct,
						is_demo_plate,
						create_date
					 )
					 VALUES
					 (
						'".addslashes($UsersTestAnswers->getUserTestAnswerId())."',
						'".addslashes($UsersTestAnswers->getUserTestId())."',
						'".addslashes($UsersTestAnswers->getUserId())."',
						'".addslashes($UsersTestAnswers->getQuestionId())."',
						'".addslashes($UsersTestAnswers->getTestAnswerId())."',
						'".addslashes($UsersTestAnswers->getAnswerValue())."',
						'".addslashes($UsersTestAnswers->getIsCorrect())."',
						'".addslashes($UsersTestAnswers->getIsDemoPlate())."',
						'".addslashes($UsersTestAnswers->getCreateDate())."'
					 )
					"; 
				if(!$conn->db_query($sql))
				{
					throw new UsersTestAnswersException(mysql_errno($conn->dbLink),mysql_error($conn->dbLink));
				}
				else
				{
					return $conn->db_last_insert_id();
				}
			}
			catch(Exception $e)
			{
				throw $e;
			}
		}


		/**
		 * Update UsersTestAnswers
		 */
		function updateUsersTestAnswers ($UsersTestAnswers)
		{
			try
			{
				$conn	= new ConnectionPool();

				$sql	=
					"UPDATE tcv_users_test_answers
					 SET
						user_test_id = '".addslashes($UsersTestAnswers->getUserTestId())."',
						user_id = '".addslashes($UsersTestAnswers->getUserId())."',
						question_id = '".addslashes($UsersTestAnswers->getQuestionId())."',
						test_answer_id = '".addslashes($UsersTestAnswers->getTestAnswerId())."',
						answer_value = '".addslashes($UsersTestAnswers->getAnswerValue())."',
						is_correct = '".addslashes($UsersTestAnswers->getIsCorrect())."',
						is_demo_plate = '".addslashes($UsersTestAnswers->getIsDemoPlate())."',
						create_date = '".addslashes($UsersTestAnswers->getCreateDate())."'
   					 WHERE user_test_answer_id = '".$UsersTestAnswers->getUserTestAnswerId()."'
					";

				if(!$conn->db_query($sql))
				{
					throw new UsersTestAnswersException(mysql_errno($conn->dbLink),mysql_error($conn->dbLink));
				}
			}
			catch(Exception $e)
			{
				throw $e;
			}
		}


		/**
		 * Delete UsersTestAnswers
		 */
		function deleteUsersTestAnswers ($UserTestAnswerId)
		{
			try
			{
				$conn	= new ConnectionPool();

				$sql	=
					"DELETE FROM tcv_users_test_answers
   					 WHERE user_test_answer_id = $UserTestAnswerId
					";

				if(!$conn->db_query($sql))
				{
					throw new UsersTestAnswersException(mysql_errno($conn->dbLink),mysql_error($conn->dbLink));
				}
			}
			catch(Exception $e)
			{
				throw $e;
			}
		}


		/**
		 * Get Single UsersTestAnswers
		 */
		function getSingleUsersTestAnswers ($user_test_answer_id)
		{
			try
			{
				$conn	= new ConnectionPool();

				$sql	=
					"SELECT *
					 FROM tcv_users_test_answers
					 WHERE user_test_answer_id = $user_test_answer_id
					";

				$result	= $conn->db_query($sql);

				if((!$result) || ($conn->db_num_rows($result) == 0))
				{
					throw new UsersTestAnswersException(mysql_errno($conn->dbLink),mysql_error($conn->dbLink));
					return array();
				}
				else
				{
					$row = $conn->db_fetch_object($result);

					$arr = new UsersTestAnswers();

					$arr->setUserTestAnswerId(stripslashes($row->user_test_answer_id));
					$arr->setUserTestId(stripslashes($row->user_test_id));
					$arr->setUserId(stripslashes($row->user_id));
					$arr->setQuestionId(stripslashes($row->question_id));
					$arr->setTestAnswerId(stripslashes($row->test_answer_id));
					$arr->setAnswerValue(stripslashes($row->answer_value));
					$arr->setIsCorrect(stripslashes($row->is_correct));
					$arr->setIsDemoPlate(stripslashes($row->is_demo_plate));
					$arr->setCreateDate(stripslashes($row->create_date));

					return $arr;
				}
			}
			catch(Exception $e)
			{
				throw $e;
			}
		}


		/**
		 * Get All UsersTestAnswers
		 */
		function getAllUsersTestAnswers ($where_clause = NULL)
		{
			try
			{
				$conn 	= new ConnectionPool();

				$sql 	=
							"	SELECT *
								FROM tcv_users_test_answers";

				if($where_clause != NULL)
					$sql .= " WHERE ".$where_clause;

				$result	= $conn->db_query($sql);

				if((!$result) || ($conn->db_num_rows($result) == 0))
				{
					throw new UsersTestAnswersException(mysql_errno($conn->dbLink),mysql_error($conn->dbLink));
					return array();
				}
				else
				{
					for($count = 0; $row = $conn->db_fetch_object($result); $count ++)
					{
						$arr[$count] = new UsersTestAnswers();

						$arr[$count]->setUserTestAnswerId(stripslashes($row->user_test_answer_id));
						$arr[$count]->setUserTestId(stripslashes($row->user_test_id));
						$arr[$count]->setUserId(stripslashes($row->user_id));
						$arr[$count]->setQuestionId(stripslashes($row->question_id));
						$arr[$count]->setTestAnswerId(stripslashes($row->test_answer_id));
						$arr[$count]->setAnswerValue(stripslashes($row->answer_value));
						$arr[$count]->setIsCorrect(stripslashes($row->is_correct));
						$arr[$count]->setIsDemoPlate(stripslashes($row->is_demo_plate));
						$arr[$count]->setCreateDate(stripslashes($row->create_date));
					}

					return $arr;
				}
			}
			catch(Exception $e)
			{
				throw $e;
			}
		}


		/**
		 * Get All UsersTestAnswers Count
		 */
		function getAllUsersTestAnswersCount ($where_clause = NULL)
		{
			try
			{
				$conn 	= new ConnectionPool();

				$sql 	=
					"SELECT count(*) AS count
					 FROM tcv_users_test_answers
					";

				if($where_clause != NULL)
					$sql .= " WHERE ".$where_clause;

				$result	= $conn->db_query($sql);

				if((!$result) || ($conn->db_num_rows($result) == 0))
				{
					throw new UsersTestAnswersException(mysql_errno($conn->dbLink),mysql_error($conn->dbLink));
					return array();
				}
				else
				{
					$row	= $conn->db_fetch_object($result);

					return $row->count;
				}
			}
			catch(Exception $e)
			{
				throw $e;
			}
		}
		
			/**
		 * Delete UsersTestAnswers WHERE
		 * MODIFED BY UZMA SHAIKH
		 */
		function deleteUsersTestAnswersWhere ($where_clause)
		{
			try
			{
				$conn	= new ConnectionPool();

				$sql	=
					"DELETE FROM tcv_users_test_answers
					WHERE ".$where_clause;
					
				if(!$conn->db_query($sql))
				{
					throw new UsersTestAnswersException(mysql_errno($conn->dbLink),mysql_error($conn->dbLink));
				}
			}
			catch(Exception $e)
			{
				throw $e;
			}
		}


	}
	/**
	 * End of class UsersTestAnswersManager
	 */
?>
