<?php 

$polls = & singleton('polls');

/* Передан идентификатор опроса, отображаем результаты опроса и/или сообщение о том, что ответ принят
или сообщение о невозможности просмотра */
if (isset($GLOBALS['poll_id']))
{
	/* Получаем данные об опросе */
	$poll_row = $polls->GetPoll($GLOBALS['poll_id']);

	/* Идентификатор группы опросов */
	$polls_group_id = to_int($poll_row['poll_group_id']);

	/* Информация о группе опросов */
	$polls_group_row = $polls->GetPollsGroup($polls_group_id);

	if (to_int($polls_group_row['site_id']) == CURRENT_SITE)
	{

		$external_propertys = array();

		// Пользователь имеет право голосовать по данному опросу
		if (to_bool($GLOBALS['success_vote']))
		{
			$external_propertys['ПользовательИмеетПравоОтвечать'] = 1;
		}
		elseif(isset($_POST['vote'])) // Пользователь пытался голосовать, но не имеет права голосовать по данному опросу
		{
			$external_propertys['ПользовательИмеетПравоОтвечать'] = 0;
		}

		/* Нажали кнопку "Ответить" */

		if (isset($_POST['vote']))
		{
			$external_propertys['ОтображатьСообщениеПользователю'] = 1;
			$external_propertys['НеВыбранВариантОтвета'] = 0;
		}
		else // Выбрали ссылку Показать результаты
		{
			$external_propertys['ОтображатьСообщениеПользователю'] = 0;
		}
		$XslShowPollResult = to_str($GLOBALS['LA']['XslShowPollResult']);

                $param = array();
                $param['order_field'] = to_int($GLOBALS['LA']['XslPollsOrderField']);
	        $param['order_type'] = to_int($GLOBALS['LA']['XslPollsOrderType']); 
		$polls->ShowPoll($XslShowPollResult, to_int($GLOBALS['poll_id']), $external_propertys, $param);
	}
}
else /* Отображаем опрос/опросы заданной группы опросов */
{
	$polls_group_id = to_int($GLOBALS['LA']['polls_group_id']);

	/* Информация о группе опросов */
	$polls_group_row = $polls->GetPollsGroup($polls_group_id);

	if (to_int($polls_group_row['site_id']) == CURRENT_SITE)
	{

		$param = array();

		/* Число показываемых опросов */
		$param['poll_count'] = to_int($GLOBALS['LA']['poll_count']);

		/* Порядковый номер опроса, с которого начинать показ списка опросов (по умолчанию $param['poll_begin'] = 0) */
		$param['poll_begin'] = to_int($GLOBALS['LA']['poll_begin']);

		/* Направление сортировки ('asc' - по возрастанию, 'desc' - по убыванию, 'RAND()' - в произвольном порядке), по умолчанию $param['order_type'] = 'RAND()'; */
		$param['order_type'] = to_str($GLOBALS['LA']['order_type']);

		$external_propertys = array();

		if (to_bool($GLOBALS['LA']['ShowResultWithoutPoll']))
		{
			$external_propertys['ПоказатьРезультытыБезГолосования'] = 1;
		}
		else
		{
			$external_propertys['ПоказатьРезультытыБезГолосования'] = 0;
		}

		$XslPollsGroup = to_str($GLOBALS['LA']['XslPollsGroup']);

		$polls->ShowPollsGroup($polls_group_id, $XslPollsGroup, $param);
	}

}
?>