Your IP : 216.73.216.86


Current Path : /var/www/homesaver/www/bitrix/components/bitrix/voting.vote.edit/templates/.default/
Upload File :
Current File : /var/www/homesaver/www/bitrix/components/bitrix/voting.vote.edit/templates/.default/template.php

<?php
/**
 * @var array $arResult
 * @var array $arParams
 * @var \CBitrixComponent $component
 */
if(!defined("B_PROLOG_INCLUDED")||B_PROLOG_INCLUDED!==true)die();

\Bitrix\Main\UI\Extension::load(["ui.forms", "ui.design-tokens", "ui.fonts.opensans"]);

$controlName = $arParams["~INPUT_NAME"];
$controller = "BX('votes-".$arResult["CONTROL_UID"]."')";
$pr = $controlName."_DATA";
$arVote = reset($arResult["VOTES"]);
$uid = $this->randString(6);
?><input type="hidden" name="<?=$controlName?>" value="<?=$arVote["ID"]?>" /><?php
?><input type="hidden" name="<?=$controlName?>_DATA[ID]" value="<?=$arVote["ID"]?>" /><?php
?><input type="hidden" name="<?=$controlName?>_DATA[URL]" value="<?=$arVote["URL"]?>" /><?php
$m = array(
	"VVE_QUESTION" => GetMessage("VVE_QUESTION"),
	"VVE_QUESTION_DEL" => GetMessage("VVE_QUESTION_DEL"),
	"VVE_QUESTION_MULTIPLE" => GetMessage("VVE_QUESTION_MULTIPLE"),
	"VVE_QUESTION_SORT_DOWN" => GetMessage("VVE_QUESTION_SORT_DOWN"),
	"VVE_QUESTION_SORT_UP" => GetMessage("VVE_QUESTION_SORT_UP")
);
$sQuestion = <<<HTML
<li class="vote-question<!--Q_ID--> vote-question-saved<!--/Q_ID-->" data-bx-role="question" data-bx-number="#Q#" id="question_#Q#" >
	<div class="vote-block-title-wrap">
		<label for="question_#Q#" class="vote-block-sort-up" title="{$m["VVE_QUESTION_SORT_UP"]}" data-bx-action="sortUp"></label>
		<label for="question_#Q#" class="vote-block-sort-down" title="{$m["VVE_QUESTION_SORT_DOWN"]}" data-bx-action="sortDown"></label>
		<input type="text" name="{$pr}[QUESTIONS][#Q#][QUESTION]" placeholder="{$m['VVE_QUESTION']}" value="#Q_VALUE#" class="vote-block-title" data-bx-question-field="MESSAGE"  data-bx-action="adda" />
		<label for="question_#Q#" class="vote-block-close" data-bx-action="delq" title="{$m['VVE_QUESTION_DEL']}"></label>
		<input type="hidden" name="{$pr}[QUESTIONS][#Q#][C_SORT]" data-bx-question-field="C_SORT" value="#Q_C_SORT#" />
		<input type="hidden" name="{$pr}[QUESTIONS][#Q#][QUESTION_TYPE]" value="{$arParams["QUESTION_TYPE"]}" />
		<!--Q_ID--><input type="hidden" name="{$pr}[QUESTIONS][#Q#][ID]" id="question_#Q#_id" value="#Q_ID#" /><!--/Q_ID-->
	</div>
	<ol class="vote-answers" data-bx-role="answer-list">#ANSWERS#</ol>
	<div class="vote-checkbox-wrap">
		<input type="hidden" value="0" name="{$pr}[QUESTIONS][#Q#][FIELD_TYPE]" />
		<input type="checkbox" value="1" name="{$pr}[QUESTIONS][#Q#][FIELD_TYPE]" id="field_type_#Q#" #Q_MULTY# class="vote-checkbox" onclick="BX.onCustomEvent('onClickMulti', [this])" />
		<label class="vote-checkbox-label" for="field_type_#Q#">{$m['VVE_QUESTION_MULTIPLE']}</label>
	</div>
</li>
HTML;
$sQuestion = preg_replace(array("/\t+/", "/\n/"), array(""), $sQuestion);
$sQuestionEmpty = preg_replace(array("/\<\!\-\-Q\_ID\-\-\>(.+?)\<\!\-\-\/Q\_ID\-\-\>/"), array(""), $sQuestion);
$sQuestion = preg_replace(array("/\<\!\-\-Q\_ID\-\-\>/", "/\<\!\-\-\/Q\_ID\-\-\>/"), array(""), $sQuestion);

$m = array(
	"VVE_ANS" => GetMessage("VVE_ANS"),
	"VVE_ANS_DEL" => GetMessage("VVE_ANS_DEL"),
	"VVE_ANS_SORT" => GetMessage("VVE_ANS_SORT")
);
$sAnswer = <<<HTML
<li class="vote-block-inp-wrap<!--A_ID--> vote-block-inp-wrap-saved<!--/A_ID-->" id="answer_#Q#__#A#_" data-bx-role="answer" data-bx-number="#A#">
	<label class="vote-block-sort-dd" for="answer_#Q#__#A#_" title="{$m["VVE_ANS_SORT"]}" data-bx-action="sortDD"></label>
	<input class="vote-block-inp" type="text" placeholder="{$m["VVE_ANS"]} #A_PH#" name="{$pr}[QUESTIONS][#Q#][ANSWERS][#A#][MESSAGE]" value="#A_VALUE#" data-bx-answer-field="MESSAGE" data-bx-action="adda" />
	<label class="vote-block-close" for="answer_#Q#__#A#_" title="{$m["VVE_ANS_DEL"]}" data-bx-action="dela"></label>
	<input type="hidden" name="{$pr}[QUESTIONS][#Q#][ANSWERS][#A#][MESSAGE_TYPE]" value="{$arParams["MESSAGE_TYPE"]}" />
	<input type="hidden" name="{$pr}[QUESTIONS][#Q#][ANSWERS][#A#][C_SORT]" data-bx-answer-field="C_SORT" value="#A_C_SORT#" />
	<input type="hidden" name="{$pr}[QUESTIONS][#Q#][ANSWERS][#A#][FIELD_TYPE]" value="#A_FIELD_TYPE#" />
	<!--A_ID--><input type="hidden" name="{$pr}[QUESTIONS][#Q#][ANSWERS][#A#][ID]" id="answer_#Q#__#A#_id" value="#A_ID#" /><!--/A_ID-->
</li>
HTML;
$sAnswer = preg_replace(array("/\t+/", "/\n/"), array(""), $sAnswer);
$sAnswerEmpty = preg_replace(array("/\<\!\-\-A\_ID\-\-\>(.+?)\<\!\-\-\/A\_ID\-\-\>/"), array(""), $sAnswer);
$sAnswer = preg_replace(array("/\<\!\-\-A\_ID\-\-\>/", "/\<\!\-\-\/A\_ID\-\-\>/"), array(""), $sAnswer);
?>
<div class="feed-add-vote-wrap" id="votes-<?=$arResult["CONTROL_UID"]?>"><?php
	if (($arParams["SHOW_TITLE"] ?? null) == "Y"):?>
		<div class="vote-header"><input type="text" name="<?=$pr?>[TITLE]" value="<?=$arVote["TITLE"]?>" /></div><?php
	endif;?>
	<div class="vote-fields">
		<?php if ($arParams["SHOW_DATE"] ?? null == "Y"):?>
		<div class="vote-field"><label><?=GetMessage("VVE_DATE")?></label><?php
			$GLOBALS["APPLICATION"]->IncludeComponent(
				"bitrix:main.calendar",
				"",
				array(
					"SHOW_INPUT"=>"Y",
					"SHOW_TIME"=>"N",
					"INPUT_NAME"=> $pr."[DATE_END]",
					"INPUT_VALUE"=>$arVote["DATE_END"]
				),
				$component,
				array("HIDE_ICONS"=>true)
			);?>
		</div>
		<?php endif; ?>
		<ol class="vote-questions" data-bx-role="question-list">
			<?php if (empty($arVote["QUESTIONS"])):?>
				<?=str_replace(
					["#Q_C_SORT#", "#Q_VALUE#", "#Q_MULTY#", "#ANSWERS#", "#Q#"],
					[
						"10", "", "",
						str_replace(
							["#A#", "#A_VALUE#", "#A_PH#", "#A_FIELD_TYPE#", "#A_C_SORT#"],
							[0, "", 1, "0", 10],
							$sAnswerEmpty).
						str_replace(
							["#A#", "#A_VALUE#", "#A_PH#", "#A_FIELD_TYPE#", "#A_C_SORT#"],
							[1, "", 2, "0", 20],
							$sAnswerEmpty),
						0
					],
					$sQuestionEmpty);
			else:
				$qq = 0;
				foreach($arVote["QUESTIONS"] as $arQuestion):
					$arAnswers = [];
					$arQuestion["ANSWERS"] = (is_array($arQuestion["ANSWERS"]) ? array_values($arQuestion["ANSWERS"]) : []);
					$aa = 0;
					foreach ($arQuestion["ANSWERS"] as $arAnswer)
					{
						$arAnswers[] = str_replace(
							["#A#", "#A_ID#", "#A_VALUE#", "#A_PH#", "#A_FIELD_TYPE#", "#A_C_SORT#"],
							[$aa, $arAnswer["ID"], $arAnswer["MESSAGE"], ($aa + 1), $arAnswer["FIELD_TYPE"], $arAnswer["C_SORT"]],
							$arAnswer["ID"] > 0 ? $sAnswer : $sAnswerEmpty);
						$aa++;
					}
					?><?=str_replace(
						["#Q_C_SORT#", "#Q_VALUE#", "#Q_ID#", "#Q_MULTY#", "#ANSWERS#", "#Q#"],
						[$arQuestion["C_SORT"], $arQuestion["QUESTION"], $arQuestion["ID"], ($arQuestion["MULTI"] == "Y" ? "checked" : ""), implode("", $arAnswers), $qq],
					$arQuestion["ID"] > 0 ? $sQuestion : $sQuestionEmpty
					);
					$qq++;
				endforeach;
			endif;?></ol>
		<a class="vote-new-question-link" data-bx-action="addq" href="javascript:void(0);"><?=GetMessage("VVE_QUESTION_ADD")?></a>
	</div>
	<input id="checkbox_<?=$uid?>_switcher" class="adm-designed-checkbox <?php /*For core_admin_interface.js*/?> vote-additional-block-checkbox" type="checkbox" style="" />
	<div class="vote-additional-block">
		<div class="vote-additional-block-inner">
			<div class="ui-form-block">
				<label for="<?=$controlName?>_1" class="ui-ctl-label-text"><?=\Bitrix\Vote\Vote\Anonymity::getTitle()?></label>
				<div class="ui-ctl ui-ctl-after-icon ui-ctl-dropdown">
					<div class="ui-ctl-after ui-ctl-icon-angle"></div>
					<select id="<?=$controlName?>_1" class="ui-ctl-element" name="<?=$pr?>[ANONYMITY]"><?php
						foreach(\Bitrix\Vote\Vote\Anonymity::getTitledList() as $key => $val)
						{
							?><option value="<?=htmlspecialcharsbx($key)?>"<?=($key == $arVote["ANONYMITY"] ? " selected" : "")?>><?=htmlspecialcharsbx($val)?></option><?php
						}
						?></select>
				</div>
				<label for="<?=$controlName?>_2" class="ui-ctl ui-ctl-checkbox">
					<input type="checkbox" id="<?=$controlName?>_2" class="ui-ctl-element" name="<?=$pr?>[OPTIONS][]" value="<?=\Bitrix\Vote\Vote\Option::ALLOW_REVOTE?>" <?=($arVote["OPTIONS"] & \Bitrix\Vote\Vote\Option::ALLOW_REVOTE ? "checked" : "")?>>
					<div class="ui-ctl-label-text"><?=GetMessage("VVE_ALLOW_TO_CHANGE_MIND")?></div>
				</label>
				<label for="<?=$controlName?>_3" class="ui-ctl ui-ctl-checkbox" style="display:none;">
					<input type="checkbox" id="<?=$controlName?>_3" class="ui-ctl-element" name="<?=$pr?>[OPTIONS][]" value="<?=\Bitrix\Vote\Vote\Option::HIDE_RESULT?>" <?=($arVote["OPTIONS"] & \Bitrix\Vote\Vote\Option::HIDE_RESULT ? "checked" : "")?>>
					<div class="ui-ctl-label-text"><?=GetMessage("VVE_ALLOW_TO_VIEW_RESULTS")?></div>
				</label>
			</div>
		</div>
		<label for="checkbox_<?=$uid?>_switcher" class="vote-additional-block-switcher vote-checkbox-label">
			<span class="vote-additional-block-switcher-arrow"></span>
		</label>
	</div>
</div>
<script>
BX.message({
	VVE_ANS_DELETE:'<?=GetMessageJS("VVE_ANS_DELETE")?>',
	VVE_QUESTION_DELETE:'<?=GetMessageJS("VVE_QUESTION_DELETE")?>',
	VOTE_TEMPLATE_QUESTION : '<?=CUtil::JSEscape($sQuestionEmpty)?>',
	VOTE_TEMPLATE_ANSWER : '<?=CUtil::JSEscape($sAnswerEmpty)?>'
});
window.__vote<?=$arResult["CONTROL_UID"]?> = function() {
	if (!!<?=$controller?> && !<?=$controller?>.loaded) {
		<?=$controller?>.loaded = true;
		BVoteC<?=$uid?> = new BVoteConstructor({
			'CID' : "<?=$arResult['CONTROL_UID']?>",
			'multiple' : <?=( $arParams['MULTIPLE'] == 'N' ? 'false' : 'true' )?>,
			'controller':  <?=$controller?>,
			'maxQ' : 0, 'maxA' : 0,
			'msg' : {}}
		);
	}
};
window.__vote<?=$arResult["CONTROL_UID"]?>();
</script>