%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /home/bitrix/www/bitrix/modules/idea/classes/general/
Upload File :
Create Path :
Current File : /home/bitrix/www/bitrix/modules/idea/classes/general/idea_idea_comment.php

<?
Class CIdeaManagmentIdeaComment
{
	private $CommentId = false;

	function __construct($CommentId = false)
	{
		$this->SetId($CommentId);
	}

	public function IsAvailable()
	{
		return $this->CommentId>0 && CModule::IncludeModule('blog');
	}

	public function SetID($StatusId)
	{
		$this->CommentId = $StatusId;
		return $this;
	}

	public function Get()
	{
		if(!$this->IsAvailable())
			return false;

		return CBlogComment::GetList(
			array(),
			array("ID" => $this->CommentId)
		)->Fetch();
	}

	public function Bind()
	{
		if(!$this->IsAvailable())
			return false;

		//Comment doesn't exists
		$arComment = $this->Get();
		if(!$arComment)
			return false;

		$arIdea = CBlogPost::GetList(
			array(),
			array("ID" => $arComment["POST_ID"]),
			false,
			false,
			array("ID", CIdeaManagment::UFAnswerIdField)
		)->Fetch();
		//Post doesn't exists
		if($arIdea)
		{
			//Already binded
			if(is_array($arIdea[CIdeaManagment::UFAnswerIdField]) && in_array($arComment["ID"], $arIdea[CIdeaManagment::UFAnswerIdField]))
			{
				return false;
			}
			elseif(!is_array($arIdea[CIdeaManagment::UFAnswerIdField]))
			{
				$arIdea[CIdeaManagment::UFAnswerIdField] = array();
			}

			$arIdea[CIdeaManagment::UFAnswerIdField][] = $arComment["ID"];
			unset($arIdea["ID"]);

			return CBlogPost::Update($arComment["POST_ID"], $arIdea)>0;
		}

		return false;
	}

	public function UnBind()
	{
		if(!$this->IsAvailable())
			return false;

		//Comment doesn't exists
		$arComment = $this->Get();
		if(!$arComment)
			return false;

		$arIdea = CBlogPost::GetList(array(), array("ID" => $arComment["POST_ID"]), false, false, array("ID", CIdeaManagment::UFAnswerIdField))->Fetch();
		if($arIdea)
		{
			if(!is_array($arIdea[CIdeaManagment::UFAnswerIdField]))
				$arIdea[CIdeaManagment::UFAnswerIdField] = array();
			$arIdea[CIdeaManagment::UFAnswerIdField] = array_unique($arIdea[CIdeaManagment::UFAnswerIdField]);

			$key = array_search($arComment["ID"], $arIdea[CIdeaManagment::UFAnswerIdField]);
			if(is_numeric($key))
			{
				unset($arIdea[CIdeaManagment::UFAnswerIdField][$key], $arIdea["ID"]);
				return CBlogPost::Update($arComment["POST_ID"], $arIdea)>0;
			}
		}

		return false;
	}
}
?>

Zerion Mini Shell 1.0