%PDF- %PDF-
| Direktori : /home/bitrix/www/local/templates/UB/components/bitrix/forum.topic.reviews/.default/ |
| Current File : //home/bitrix/www/local/templates/UB/components/bitrix/forum.topic.reviews/.default/template.php |
<?if(!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED!==true)die();
CUtil::InitJSCore(array('ajax', 'fx'));
// ************************* Input params***************************************************************
$arParams["SHOW_LINK_TO_FORUM"] = ($arParams["SHOW_LINK_TO_FORUM"] == "N" ? "N" : "Y");
$arParams["FILES_COUNT"] = intVal(intVal($arParams["FILES_COUNT"]) > 0 ? $arParams["FILES_COUNT"] : 1);
$arParams["IMAGE_SIZE"] = (intVal($arParams["IMAGE_SIZE"]) > 0 ? $arParams["IMAGE_SIZE"] : 100);
if (LANGUAGE_ID == 'ru'):
$path = str_replace(array("\\", "//"), "/", dirname(__FILE__)."/ru/script.php");
include($path);
endif;
$arParams['MINIMIZED_EXPAND_TEXT'] = GetMessage("ADD_A_REVIEW");
// echo $_REQUEST["ACCOUNT"];
if($USER->GetID()==$_REQUEST["ACCOUNT"]) $thuser = true; else $thuser = false; // Проверяем, это ль страница авторизованного пользователя
if ($arParams['SHOW_MINIMIZED'] == "Y" && !$thuser && $arResult["IS_AUTHORIZED"]) { ?>
<div class="reviews-collapse reviews-minimized" style='position:relative; float:none;'>
<a id="forcommentsform<?=$arParams['FORUM_ID']?>" class="btn-grey btn-small btn-pad" onclick="fToggleCommentsForm(this,false,<?=$arParams['FORUM_ID']?>)" href="javascript:void(0);">
<i class="fa fa-comment-o"></i> <?=$arParams['MINIMIZED_EXPAND_TEXT']?>
</a>
</div>
<div class="clearfix"></div>
<? } elseif (!$USER->IsAuthorized()) { ?>
<div class="reviews-collapse reviews-minimized" style="position:relative; float:none; padding-bottom: 40px">
<a class="btn-grey btn-small btn-pad" onclick="showAuthAlert('profile_feedback');" href="#">
<i class="fa fa-comment-o"></i> <?=$arParams['MINIMIZED_EXPAND_TEXT']?>
</a>
</div>
<? } else { ?>
<div class="alert alert-warning">
<button type="button" class="close" data-dismiss="alert">×</button>
<?=GetMessage("LEAVE_A_REVIEW_TO_YOUR_PROFILE_IS_NOT_POSSIBLE")?>
</div>
<? } ?>
<div class="reviews-reply-form well" <?=(($arParams['SHOW_MINIMIZED'] == "Y")?'style="display:none;"':'')?>>
<div class="close-form"><a href="javascript:void(0);" onclick="$('#forcommentsform<?=$arParams['FORUM_ID']?>').click();">×</a></div>
<h4 class="title"><?=GetMessage("ENTER_THE_TEXT_OF_REVIEW")?></h4>
<a name="review_anchor"></a>
<?
if (!empty($arResult["ERROR_MESSAGE"])):
?>
<div class="reviews-note-box reviews-note-error">
<div class="reviews-note-box-text"><?=ShowError($arResult["ERROR_MESSAGE"], "reviews-note-error");?></div>
</div>
<?
endif;
?>
<form name="REPLIER<?=$arParams['FORUM_ID']?>" id="REPLIER<?=$arParams['FORUM_ID']?>" action="<?=POST_FORM_ACTION_URI?>#postform"<?
?> method="POST" enctype="multipart/form-data" onsubmit="return ValidateForm(this, '<?=$arParams["AJAX_TYPE"]?>', '<?=$arParams["AJAX_POST"]?>', '<?=$arParams["PREORDER"]?>');"<?
?>>
<input type="hidden" name="back_page" value="<?=$arResult["CURRENT_PAGE"]?>" />
<input type="hidden" name="ELEMENT_ID" value="<?=$arParams["ELEMENT_ID"]?>" />
<input type="hidden" name="SECTION_ID" value="<?=$arResult["ELEMENT_REAL"]["IBLOCK_SECTION_ID"]?>" />
<input type="hidden" name="save_product_review" value="Y" />
<input type="hidden" name="preview_comment" value="N" />
<?=bitrix_sessid_post()?>
<?
if ($arParams['AUTOSAVE'])
$arParams['AUTOSAVE']->Init();
?>
<div style="position:relative; display: block; width:100%;">
<?
/* GUEST PANEL */
if (!$arResult["IS_AUTHORIZED"]):
?>
<div class="reviews-reply-fields">
<div class="reviews-reply-field-user">
<div class="reviews-reply-field reviews-reply-field-author"><label for="REVIEW_AUTHOR<?=$arParams['FORUM_ID']?>"><?=GetMessage("OPINIONS_NAME")?><?
?><span class="reviews-required-field">*</span></label>
<span><input name="REVIEW_AUTHOR" id="REVIEW_AUTHOR<?=$arParams['FORUM_ID']?>" size="30" type="text" value="<?=$arResult["REVIEW_AUTHOR"]?>" tabindex="<?=$tabIndex++;?>" /></span></div>
<?
if ($arResult["FORUM"]["ASK_GUEST_EMAIL"]=="Y"):
?>
<div class="reviews-reply-field-user-sep"> </div>
<div class="reviews-reply-field reviews-reply-field-email"><label for="REVIEW_EMAIL<?=$arParams['FORUM_ID']?>"><?=GetMessage("OPINIONS_EMAIL")?></label>
<span><input type="text" name="REVIEW_EMAIL" id="REVIEW_EMAIL<?=$arParams['FORUM_ID']?>" size="30" value="<?=$arResult["REVIEW_EMAIL"]?>" tabindex="<?=$tabIndex++;?>" /></span></div>
<?
endif;
?>
<div class="reviews-clear-float"></div>
</div>
</div>
<?
endif;
?>
<div class="reviews-reply-field reviews-reply-field-text">
<textarea class="form-control" rows="4" name="REVIEW_TEXT"></textarea>
</div>
<div id="cont_smile" data-site-id="<?=SITE_ID;?>" data-active="N" style="margin-right: -6px; margin-top: 5px; text-align:right">
<span class="fa fa-frown-o smil" id="bad"></span>
<span class="fa fa-meh-o smil" id="neutral"></span>
<span class="fa fa-smile-o smil" id="good"></span>
<select id="sel_smile" name="SMILE" size="1" style="display: none;">
<option value="0">None</option>
<option value="1">Bad</option>
<option value="2">Neutral</option>
<option value="3">Good</option>
</select>
<input class="btn-small btn-color btn-pad"
name="send_button" type="submit" value="<?=GetMessage("OPINIONS_SEND")?>" tabindex="<?=$tabIndex++;?>" <?
?>onclick="document.forms['REPLIER<?=$arParams['FORUM_ID']?>'].preview_comment.value = 'N';$('#forcommentsform<?=$arParams['FORUM_ID']?>').trigger('click'); " />
<input name="view_button" type="submit" value="<?=GetMessage("OPINIONS_PREVIEW")?>" tabindex="<?=$tabIndex++;?>" <?
?>onclick="document.forms['REPLIER<?=$arParams['FORUM_ID']?>'.preview_comment.value = 'VIEW';" />
</div>
</div>
</form>
</div>
<div class="reviews-block-container reviews-reviews-block-container">
<div class="reviews-block-outer">
<div class="reviews-block-inner" id="reviews-block-inner-<?=$arParams['FORUM_ID']?>"
data-comments-count="<?=$arResult["NAV_RESULT"]->NavRecordCount>0?$arResult["NAV_RESULT"]->NavRecordCount:0?>">
<?
// *************************/Input params***************************************************************
if (!empty($arResult["MESSAGES"])):
?><?
//echo '<pre>'; print_r($arResult["MESSAGES"]); echo '</pre>';?>
<?
$iCount = 0;
foreach ($arResult["MESSAGES"] as $res):
$iCount++;
$author = getUserMeta($res["AUTHOR_ID"]);
$profile = getUserProfile($res["AUTHOR_ID"]);
?>
<table cellspacing="0" border="0" class="reviews-post-table <?=($iCount == 1 ? "reviews-post-first " : "")?><?
?><?=($iCount == count($arResult["MESSAGES"]) ? "reviews-post-last " : "")?><?
?><?=($iCount%2 == 1 ? "reviews-post-odd " : "reviews-post-even ")?><?
?><?=(($res["APPROVED"] == 'Y') ? "" : "reviews-post-hidden")
?>" id="message<?=$res["ID"]?>">
<tbody><tr>
<td class="rpt_ava" >
<div class="col-new">
<div class="portfolio-item">
<a href="<?=$profile['LINK']?>" class="portfolio-item-link"><img src="<?=$author['AVATAR']?>"></a>
<div class="clearfix"></div>
</div>
</div>
</td>
<td class="rpt_first">
<?if (false && $arParams["SHOW_RATING"] == "Y") {?>
<div class="review-rating rating_vote_graphic">
<?
$arRatingParams = Array(
"ENTITY_TYPE_ID" => "FORUM_POST",
"ENTITY_ID" => $res["ID"],
"OWNER_ID" => $res["AUTHOR_ID"],
"PATH_TO_USER_PROFILE" => "/user/#USER_ID#/"
);
if (!isset($res['RATING']))
$res['RATING'] = array(
"USER_VOTE" => 0,
"USER_HAS_VOTED" => 'N',
"TOTAL_VOTES" => 0,
"TOTAL_POSITIVE_VOTES" => 0,
"TOTAL_NEGATIVE_VOTES" => 0,
"TOTAL_VALUE" => 0
);
$arRatingParams = array_merge($arRatingParams, $res['RATING']);
$GLOBALS["APPLICATION"]->IncludeComponent( "bitrix:rating.vote", $arParams["RATING_TYPE"],
$arRatingParams, $component, array("HIDE_ICONS" => "Y"));
?>
</div>
<? } ?>
<div>
<a name="message<?=$res["ID"]?>"></a><b><a href="<?=$profile['LINK']?>" ><?=$author['NAME']?></a></b>
<br/><span class='message-post-date'><?=FormatDate('d.m.Y H:i', strtotime($res["POST_DATE"]))?></span>
</div>
</td>
<td class="rpt_comment">
<div class="testimonial item"><div class="testimonials-arrow"></div>
<div class="testimonial-content" id="message_text_<?=$res["ID"]?>">
<?
$keys = array_keys($arResult["MESSAGES"]);
$max = intval(max($keys));
$smsw = (isset($_POST['SMILE']) && intval($res["ID"]) == $max) ? intval($_POST['SMILE']) : intval($arResult['MESSAGES'][$res["ID"]]['PARAM1']);
switch ($smsw) {
case 1:
$smcl = "fa-frown-o active_bad";
break;
case 2:
$smcl = "fa-meh-o active_neutral";
break;
case 3:
$smcl = "fa-smile-o active_good";
break;
default:
$smcl = "fa-smile-o active_good";
};
?>
<span class="fa <?=$smcl;?> smilemes"></span>
<?=$res["~POST_MESSAGE_TEXT"]?>
</div>
<?
foreach ($res["FILES"] as $arFile):
?><div class="reviews-message-img"><?
?><?$GLOBALS["APPLICATION"]->IncludeComponent(
"bitrix:forum.interface", "show_file",
Array(
"FILE" => $arFile,
"WIDTH" => $arResult["PARSER"]->image_params["width"],
"HEIGHT" => $arResult["PARSER"]->image_params["height"],
"CONVERT" => "N",
"FAMILY" => "FORUM",
"SINGLE" => "Y",
"RETURN" => "N",
"SHOW_LINK" => "Y"),
null,
array("HIDE_ICONS" => "Y"));
?></div><?
endforeach;
?>
<? if ($arResult["SHOW_POST_FORM"] == "Y") { ?>
<div class="reviews-post-reply-buttons"><noindex>
<? if ($arResult["PANELS"]["MODERATE"] == "Y") { ?>
<span class="separator"></span>
<a rel="nofollow" href="<?=$res["URL"]["MODERATE"]?>" class="reviews-button-small" <? if ($arParams['AJAX_POST'] == 'Y') { ?>onclick="return replyActionComment(this, 'MODERATE');"<? } ?>><?=GetMessage((($res["APPROVED"] == 'Y') ? "F_HIDE" : "F_SHOW"))?></a>
<? } ?>
<? if ($arResult["PANELS"]["DELETE"] == "Y") { ?>
<span class="separator"></span>
<a rel="nofollow" href="<?=$res["URL"]["DELETE"]?>" class="reviews-button-small" <? if ($arParams['AJAX_POST'] == 'Y') { ?>onclick="return replyActionComment(this, 'DEL');"<? } ?>><?=GetMessage("F_DELETE")?></a>
<? } ?>
<? if ($arParams["SHOW_RATING"] == "Y") { ?>
<span class="rating_vote_text">
<span class="separator"></span>
<?
$arRatingParams = Array(
"ENTITY_TYPE_ID" => "FORUM_POST",
"ENTITY_ID" => $res["ID"],
"OWNER_ID" => $res["AUTHOR_ID"],
"PATH_TO_USER_PROFILE" => "/user/#USER_ID#/"
);
if (!isset($res['RATING']))
$res['RATING'] = array(
"USER_VOTE" => 0,
"USER_HAS_VOTED" => 'N',
"TOTAL_VOTES" => 0,
"TOTAL_POSITIVE_VOTES" => 0,
"TOTAL_NEGATIVE_VOTES" => 0,
"TOTAL_VALUE" => 0
);
$arRatingParams = array_merge($arRatingParams, $res['RATING']);
$GLOBALS["APPLICATION"]->IncludeComponent( "bitrix:rating.vote", $arParams["RATING_TYPE"], $arRatingParams, $component, array("HIDE_ICONS" => "Y"));
?>
</span>
<? } ?>
</noindex></div>
<? } ?>
</div>
<!-- </div> -->
</td></tr>
</tbody>
</table>
<?
endforeach;
?>
<?
if (strlen($arResult["NAV_STRING"]) > 0 &&
$arResult["NAV_RESULT"]->NavPageCount > 1 &&
$arResult["NAV_RESULT"]->NavPageNomer < $arResult["NAV_RESULT"]->NavPageCount):
?>
<div style="text-align: right"><br/>
<a class="btn-small btn-color btn-pad" href="javascript:void(0);"
onclick="loadPrevComments(this,<?=$arResult["NAV_RESULT"]->NavPageNomer+1;?>,<?=$arResult["NAV_RESULT"]->NavPageSize;?>,<?=$arParams['FORUM_ID']?>,<?=$arResult['ELEMENT']['PRODUCT']['ID']?>)"><?=GetMessage("SEE_PREVIOUS_MESSAGES")?></a>
</div>
<div class="bottom-marker">
<?
endif;
if (!empty($arResult["read"]) && $arParams["SHOW_LINK_TO_FORUM"] != "N"):
?>
<div class="reviews-link-box">
<div class="reviews-link-box-text">
<a href="<?=$arResult["read"]?>"><?=GetMessage("F_C_GOTO_FORUM");?></a>
</div>
</div>
<?
endif;
endif;
?>
</div>
</div>
</div>
<?
if (empty($arResult["ERROR_MESSAGE"]) && !empty($arResult["OK_MESSAGE"])):
?>
<div class="reviews-note-box reviews-note-note">
<a name="reviewnote"></a>
<div class="reviews-note-box-text"><?=ShowNote($arResult["OK_MESSAGE"]);?></div>
</div>
<?
endif;
/*
if ($arResult["SHOW_POST_FORM"] != "Y"):
return false;
endif;
*/
if (!empty($arResult["MESSAGE_VIEW"])):
?>
<div class="reviews-preview">
<div class="reviews-header-box">
<div class="reviews-header-title"><a name="postform"><span><?=GetMessage("F_PREVIEW")?></span></a></div>
</div>
<div class="reviews-info-box reviews-post-preview">
<div class="reviews-info-box-inner">
<div class="reviews-post-entry">
<div class="reviews-post-text"><?=$arResult["MESSAGE_VIEW"]["POST_MESSAGE_TEXT"]?></div>
<?
if (!empty($arResult["REVIEW_FILES"])):
?>
<div class="reviews-post-attachments">
<label><?=GetMessage("F_ATTACH_FILES")?></label>
<?
foreach ($arResult["REVIEW_FILES"] as $arFile):
?>
<div class="reviews-post-attachment"><?
?><?$GLOBALS["APPLICATION"]->IncludeComponent(
"bitrix:forum.interface", "show_file",
Array(
"FILE" => $arFile,
"WIDTH" => $arResult["PARSER"]->image_params["width"],
"HEIGHT" => $arResult["PARSER"]->image_params["height"],
"CONVERT" => "N",
"FAMILY" => "FORUM",
"SINGLE" => "Y",
"RETURN" => "N",
"SHOW_LINK" => "Y"),
null,
array("HIDE_ICONS" => "Y"));
?></div>
<?
endforeach;
?>
</div>
<?
endif;
?>
</div>
</div>
</div>
<div class="reviews-br"></div>
</div>
<?
endif;
?>
<script type="text/javascript">
if (typeof oErrors != "object")
var oErrors = {};
oErrors['no_topic_name'] = "<?=CUtil::addslashes(GetMessage("JERROR_NO_TOPIC_NAME"))?>";
oErrors['no_message'] = "<?=CUtil::addslashes(GetMessage("JERROR_NO_MESSAGE"))?>";
oErrors['max_len'] = "<?=CUtil::addslashes(GetMessage("JERROR_MAX_LEN"))?>";
oErrors['no_url'] = "<?=CUtil::addslashes(GetMessage("FORUM_ERROR_NO_URL"))?>";
oErrors['no_title'] = "<?=CUtil::addslashes(GetMessage("FORUM_ERROR_NO_TITLE"))?>";
oErrors['no_path'] = "<?=CUtil::addslashes(GetMessage("FORUM_ERROR_NO_PATH_TO_VIDEO"))?>";
if (typeof oText != "object")
var oText = {};
oText['author'] = " <?=CUtil::addslashes(GetMessage("JQOUTE_AUTHOR_WRITES"))?>:\n";
oText['enter_url'] = "<?=CUtil::addslashes(GetMessage("FORUM_TEXT_ENTER_URL"))?>";
oText['enter_url_name'] = "<?=CUtil::addslashes(GetMessage("FORUM_TEXT_ENTER_URL_NAME"))?>";
oText['enter_image'] = "<?=CUtil::addslashes(GetMessage("FORUM_TEXT_ENTER_IMAGE"))?>";
oText['list_prompt'] = "<?=CUtil::addslashes(GetMessage("FORUM_LIST_PROMPT"))?>";
oText['video'] = "<?=CUtil::addslashes(GetMessage("FORUM_VIDEO"))?>";
oText['path'] = "<?=CUtil::addslashes(GetMessage("FORUM_PATH"))?>:";
oText['preview'] = "<?=CUtil::addslashes(GetMessage("FORUM_PREVIEW"))?>:";
oText['width'] = "<?=CUtil::addslashes(GetMessage("FORUM_WIDTH"))?>:";
oText['height'] = "<?=CUtil::addslashes(GetMessage("FORUM_HEIGHT"))?>:";
oText['cdm'] = '<?=CUtil::addslashes(GetMessage("F_DELETE_CONFIRM"))?>';
oText['show'] = '<?=CUtil::addslashes(GetMessage("F_SHOW"))?>';
oText['hide'] = '<?=CUtil::addslashes(GetMessage("F_HIDE"))?>';
oText['wait'] = '<?=CUtil::addslashes(GetMessage("F_WAIT"))?>';
oText['BUTTON_OK'] = "<?=CUtil::addslashes(GetMessage("FORUM_BUTTON_OK"))?>";
oText['BUTTON_CANCEL'] = "<?=CUtil::addslashes(GetMessage("FORUM_BUTTON_CANCEL"))?>";
oText['smile_hide'] = "<?=CUtil::addslashes(GetMessage("F_HIDE_SMILE"))?>";
oText['MINIMIZED_EXPAND_TEXT'] = "<i class=\"fa fa-comment-o\"></i> <?=CUtil::addslashes($arParams["MINIMIZED_EXPAND_TEXT"])?>";
oText['MINIMIZED_MINIMIZE_TEXT'] = "<i class=\"fa fa-times\"></i>";
if (typeof oForum != "object")
var oForum = {};
oForum.page_number = <?=intval($arResult['PAGE_NUMBER']);?>;
oForum.page_count = <?=intval($arResult['PAGE_COUNT']);?>;
if (typeof oHelp != "object")
var oHelp = {};
if (typeof phpVars != "object")
var phpVars = {};
phpVars.bitrix_sessid = '<?=bitrix_sessid()?>';
function reviewsCtrlEnterHandler<?=CUtil::JSEscape($arParams['FORUM_ID']);?>()
{
if (window.oLHE)
window.oLHE.SaveContent();
var form = document.forms["REPLIER<?=CUtil::JSEscape($arParams['FORUM_ID']);?>"];
if (BX.fireEvent(form, 'submit'))
form.submit();
}
function replyForumFormOpen()
{
<? if ($arParams['SHOW_MINIMIZED'] == "Y") { ?>
var link = BX.findChild(document, {'class': 'reviews-collapse-link'}, true);
if (link) fToggleCommentsForm(link, true, <?=CUtil::JSEscape($arParams['FORUM_ID']);?>);
<? } ?>
return;
}
function fToggleCommentsForm(link, forceOpen, forcommentsform)
{
if (forceOpen == null) forceOpen = false;
forceOpen = !!forceOpen;
// var form = BX.findChild(link.parentNode.parentNode, {'class':'reviews-reply-form'}, true);
var form = document.forms['REPLIER'+forcommentsform].parentNode;
var bHidden = (form.style.display != 'block') || forceOpen;
form.style.display = (bHidden ? 'block' : 'none');
link.innerHTML = (bHidden ? oText['MINIMIZED_MINIMIZE_TEXT'] : oText['MINIMIZED_EXPAND_TEXT']);
var classAdd = (bHidden ? 'reviews-expanded' : 'reviews-minimized');
var classRemove = (bHidden ? 'reviews-minimized' : 'reviews-expanded');
BX.removeClass(BX.addClass(link.parentNode, classAdd), classRemove);
// BX.scrollToNode(BX.findChild(form, {'attribute': { 'name' : 'send_button' }}, true));
if (bHidden) $('#forcommentsform'+forcommentsform).hide();
else $('#forcommentsform'+forcommentsform).show();
if (window.oLHE)
setTimeout(function() {
if (!BX.browser.IsIE())
window.oLHE.SetFocusToEnd();
else
window.oLHE.SetFocus();
}, 100);
}
function reply2author(name) {
name = name.replace(/</gi, "<").replace(/>/gi, ">").replace(/"/gi, "\"");
if (!!window.oLHE && !!name)
{
replyForumFormOpen();
name = name.replace(/</gi, "<").replace(/>/gi, ">").replace(/"/gi, "\"");
if (window.oLHE.sEditorMode == 'code' && window.oLHE.bBBCode) { // BB Codes
<?if ($arResult["FORUM"]["ALLOW_BIU"] == "Y") { ?> name = '[B]' + name + '[/B]';<? } ?>
window.oLHE.WrapWith("", ", ", name);
} else if (window.oLHE.sEditorMode == 'html') { // WYSIWYG
<?if ($arResult["FORUM"]["ALLOW_BIU"] == "Y") { ?> name = '<b>' + name + '</b>, ';<? } ?>
window.oLHE.InsertHTML(name);
}
window.oLHE.SetFocus();
BX.defer(window.oLHE.SetFocus, window.oLHE)();
}
return false;
}
</script>
<?=ForumAddDeferredScript($this->GetFolder().'/script_deferred.js')?>