Ejemplo n.º 1
0
 $arSelectedFields = array("ID", "BLOG_ID", "POST_ID", "AUTHOR_ID", "AUTHOR_NAME", "AUTHOR_EMAIL", "POST_TEXT", "DATE_CREATE", "PUBLISH_STATUS", "HAS_PROPS", "SHARE_DEST");
 if ($GLOBALS["DB"]->type == "MYSQL") {
     $arSelectedFields[] = "DATE_CREATE_TS";
 }
 $dbComment = CBlogComment::GetList($arOrder, $arFilter, false, false, $arSelectedFields);
 $resComments = array();
 $arCommentsAll = array();
 $arIdToGet = array();
 while ($arComment = $dbComment->Fetch()) {
     if (IntVal($arComment["AUTHOR_ID"]) > 0) {
         $arIdToGet[] = $arComment["AUTHOR_ID"];
     }
     $arCommentsAll[] = $arComment;
 }
 if (!empty($arIdToGet)) {
     $arResult["userCache"] = CBlogUser::GetUserInfoArray($arIdToGet, $arParams["PATH_TO_USER"], array("AVATAR_SIZE" => isset($arParams["AVATAR_SIZE_COMMON"]) ? $arParams["AVATAR_SIZE_COMMON"] : $arParams["AVATAR_SIZE"], "AVATAR_SIZE_COMMENT" => $arParams["AVATAR_SIZE_COMMENT"]));
     foreach ($arResult["userCache"] as $userId => $arUserCache) {
         $arTmpUser = array("NAME" => $arUserCache["~NAME"], "LAST_NAME" => $arUserCache["~LAST_NAME"], "SECOND_NAME" => $arUserCache["~SECOND_NAME"], "LOGIN" => $arUserCache["~LOGIN"], "NAME_LIST_FORMATTED" => "");
         $arResult["userCache"][$userId]["NAME_FORMATED"] = CUser::FormatName($arParams["NAME_TEMPLATE"], $arTmpUser, $arParams["SHOW_LOGIN"] != "N" ? true : false);
     }
 }
 $i = 0;
 if (!empty($arCommentsAll[$i])) {
     $arComment = $arCommentsAll[$i];
     $p = new blogTextParser(false, $arParams["PATH_TO_SMILE"]);
     $p->LAZYLOAD = isset($arParams["LAZYLOAD"]) && $arParams["LAZYLOAD"] == "Y" ? "Y" : "N";
     $p->bMobile = isset($arParams["MOBILE"]) && $arParams["MOBILE"] == "Y";
     $arParserParams = array("imageWidth" => $arParams["IMAGE_MAX_WIDTH"], "imageHeight" => $arParams["IMAGE_MAX_HEIGHT"], "pathToUser" => $arParams["PATH_TO_USER"]);
     $bHasImg = false;
     if ($arPost["HAS_COMMENT_IMAGES"] != "N") {
         $res = CBlogImage::GetList(array("ID" => "ASC"), array("POST_ID" => $arPost['ID'], "BLOG_ID" => $arPost['BLOG_ID'], "IS_COMMENT" => "Y"), false, false, array("ID", "FILE_ID", "POST_ID", "BLOG_ID", "USER_ID", "TITLE", "COMMENT_ID", "IS_COMMENT"));
Ejemplo n.º 2
0
 $repl[] = "\\1";
 $patt[] = "#(\\[|<)(/?)(b|u|i|list|code|quote|url|img|color|font|right|left|center|justify|/*)(.*?)(\\]|>)#is";
 $repl[] = " ";
 $patt[] = "#\\s+#";
 $repl[] = " ";
 $allow = array("HTML" => "N", "ANCHOR" => "N", "BIU" => "N", "IMG" => "N", "QUOTE" => "N", "CODE" => "N", "FONT" => "N", "LIST" => "N", "SMILES" => "N", "NL2BR" => "N");
 $arPostsAll = array();
 $arIdToGet = array();
 while ($arPost = $dbPost->GetNext()) {
     if (IntVal($arPost["AUTHOR_ID"]) > 0) {
         $arIdToGet[] = $arPost["AUTHOR_ID"];
     }
     $arPostsAll[] = $arPost;
 }
 if (!empty($arIdToGet)) {
     $arResult["userCache"] = CBlogUser::GetUserInfoArray($arIdToGet, $arParams["PATH_TO_USER"], array("AVATAR_SIZE" => $arParams["AVATAR_SIZE"]));
     foreach ($arResult["userCache"] as $userId => $arUserCache) {
         $arUserCache["~AUTHOR_NAME"] = CUser::FormatName($arParams["NAME_TEMPLATE"], array("LAST_NAME" => $arUserCache["~LAST_NAME"], "NAME" => $arUserCache["~NAME"], "SECOND_NAME" => $arUserCache["~SECOND_NAME"], "LOGIN" => $arUserCache["~LOGIN"]), $arParams["SHOW_LOGIN"], false);
         $arUserCache["AUTHOR_NAME"] = htmlspecialcharsbx($arUserCache["~AUTHOR_NAME"]);
         $arResult["userCache"][$userId] = $arUserCache;
     }
 }
 $db_user = CUser::GetById($GLOBALS["USER"]->GetId());
 $arResult["USER"] = $db_user->Fetch();
 foreach ($arPostsAll as $arPost) {
     $text = preg_replace($patt, $repl, $arPost["~DETAIL_TEXT"]);
     $text = TruncateText($text, $arParams["MESSAGE_LENGTH"]);
     $text = CBlogTools::DeleteDoubleBR($p->convert($text, true, false, $allow));
     $arPost["~CLEAR_TEXT"] = $text;
     $arPost["CLEAR_TEXT"] = $p->wrap_long_words($text);
     $arPost["perms"] = $arResult["perms"];