1C-Bitrix 25.700.0
Загрузка...
Поиск...
Не найдено
include.php
См. документацию.
1<?php
2
3define("SOCSERV_AUTHORISATION_ERROR", 1);
4define("SOCSERV_REGISTRATION_DENY", 2);
5define("SOCSERV_DEFAULT_HTTP_TIMEOUT", 10);
6
7require_once __DIR__.'/autoload.php';
8
10 'js' => '/bitrix/js/socialservices/ss_timeman.js',
11 'css' => '/bitrix/js/socialservices/css/ss.css',
12 'rel' => ['ui.design-tokens', 'popup', 'ajax', 'fx', 'ls', 'date'],
13 'lang' => '/bitrix/modules/socialservices/lang/'.LANGUAGE_ID.'/js_socialservices.php'
14 );
15
16if(IsModuleInstalled("timeman"))
17{
18 $userSocServEnable = CSocServAuthManager::GetCachedUserOption("user_socserv_enable");
19 if($userSocServEnable != '')
20 $arJSDescription['lang_additional'] = array('IS_ENABLED' => $userSocServEnable);
21}
22
23CJSCore::RegisterExt('socserv_timeman', $arJSDescription);
24
26{
27 public static function OnFillSocNetLogEvents(&$arSocNetLogEvents)
28 {
29 $arSocNetLogEvents["twitter"] = array(
30 "ENTITIES" => array(
32 "OPERATION" => "viewprofile"
33 ),
35 "OPERATION" => "viewsystemevents"
36 ),
37 ),
38 "CLASS_FORMAT" => "CSocServEventHandlers",
39 "METHOD_FORMAT" => "FormatEvent_Data",
40 "FULL_SET" => array("data", "data_comment"),
41 "COMMENT_EVENT" => array(
42 "EVENT_ID" => "data_comment",
43 "CLASS_FORMAT" => "CSocServEventHandlers",
44 "METHOD_FORMAT" => "FormatComment_Data",
45 "RATING_TYPE_ID" => "LOG_COMMENT"
46 )
47 );
48 }
49
50 public static function FormatEvent_Data($arFields, $arParams, $bMail = false)
51 {
53 "EVENT" => $arFields,
54 "URL" => ""
55 );
56
57 if (!CModule::IncludeModule("socialnetwork"))
58 return $arResult;
59
61 {
63
64 $rsRight = CSocNetLogRights::GetList(array(), array("LOG_ID" => $arFields["ID"]));
65 $arRights = array();
66 while ($arRight = $rsRight->Fetch())
67 $arRights[] = $arRight["GROUP_CODE"];
68
69 $arDestination = CSocNetLogTools::FormatDestinationFromRights($arRights, $arParams, $iMoreCount);
70 }
71
72 $title = "";
73
74 $arEventParams = unserialize($arFields["~PARAMS"] <> '' ? $arFields["~PARAMS"] : $arFields["PARAMS"], ['allowed_classes' => [
75 \Bitrix\Main\Type\DateTime::class,
76 \Bitrix\Main\Type\Date::class,
77 \Bitrix\Main\Web\Uri::class,
78 \DateTime::class,
79 \DateTimeZone::class,
80 ]]);
81
82 if (
84 && is_array($arEventParams)
85 && count($arEventParams) > 0
86 && array_key_exists("ENTITY_NAME", $arEventParams)
87 && $arEventParams["ENTITY_NAME"] <> ''
88 )
89 {
90 if (!$bMail && $arFields["URL"] <> '')
91 $title_tmp = '<a href="'.$arFields["URL"].'">'.$arEventParams["ENTITY_NAME"].'</a>';
92 else
93 $title_tmp = $arEventParams["ENTITY_NAME"];
94 }
95 else
96 {
97 if (!$bMail && $arFields["URL"] <> '')
98 $title_tmp = '<a href="'.$arFields["URL"].'">'.$arFields["TITLE"].'</a>';
99 else
100 $title_tmp = $arFields["TITLE"];
101 }
102
103 $title = str_replace(
104 array("#TITLE#", "#ENTITY#"),
105 array($title_tmp, ($bMail ? $arResult["ENTITY"]["FORMATTED"] : $arResult["ENTITY"]["FORMATTED"]["NAME"])),
106 ($bMail ? GetMessage("LFP_SOCNET_LOG_DATA_".$arFields["ENTITY_TYPE"]."_TITLE_MAIL") : GetMessage("LFP_SOCNET_LOG_DATA_TITLE"))
107 );
108
109 $url = false;
110
111 if ($arFields["URL"] <> '')
112 $url = $arFields["URL"];
113
115 {
116 if (!$bMail)
117 $message = $arFields["MESSAGE"];
118 else
119 $message = $arFields["TITLE"]."#BR##BR#".$arFields["MESSAGE"];
120 }
121 else
122 $message = $arFields["MESSAGE"];
123
124 $arFieldsTooltip = array(
125 'ID' => $arFields['USER_ID'],
126 'NAME' => $arFields['~CREATED_BY_NAME'],
127 'LAST_NAME' => $arFields['~CREATED_BY_LAST_NAME'],
128 'SECOND_NAME' => $arFields['~CREATED_BY_SECOND_NAME'],
129 'LOGIN' => $arFields['~CREATED_BY_LOGIN'],
130 );
131 $arResult['CREATED_BY']['TOOLTIP_FIELDS'] = CSocNetLog::FormatEvent_FillTooltip($arFieldsTooltip, $arParams);
132 $twitInfo = unserialize($arFields['~PARAMS'], ['allowed_classes' => [
133 \Bitrix\Main\Type\DateTime::class,
134 \Bitrix\Main\Type\Date::class,
135 \Bitrix\Main\Web\Uri::class,
136 \DateTime::class,
137 \DateTimeZone::class,
138 ]]);
139
140 $arResult["EVENT_FORMATTED"] = array(
141 "TITLE" => $arFields["TITLE"],
142 "TITLE_24" => "",
143 "MESSAGE" => "<a target=\"_blank\" style=\"text-decoration: none; color: #5C6470; font-weight: bold; font-size: 12px\" href=\"https://twitter.com/".$twitInfo['SCREEN_NAME']."/status/".$twitInfo['TWIT_ID']."\">".$arFields["TITLE"]."</a><p>".($bMail ? CSocNetTextParser::killAllTags($message) : $message),
144 "IS_IMPORTANT" => false,
145 "STYLE" => "",
146 "DESTINATION" => $arDestination
147 );
148
149 if (intval($iMoreCount) > 0)
150 $arResult["EVENT_FORMATTED"]["DESTINATION_MORE"] = $iMoreCount;
151
152 if (
153 is_array($arEventParams)
154 && array_key_exists("SOURCE_TIMESTAMP", $arEventParams)
155 )
156 $arResult["EVENT_FORMATTED"]["LOG_DATE_FORMAT"] = ConvertTimeStamp($arEventParams["SOURCE_TIMESTAMP"], "FULL");
157
158 if ($url <> '')
159 $arResult["EVENT_FORMATTED"]["URL"] = $url;
160
161 if (!$bMail)
162 {
163 if ($arFields["ENTITY_TYPE"] == SONET_SUBSCRIBE_ENTITY_GROUP)
164 {
165 $arGroup = array(
166 "IMAGE_ID" => $arFields["GROUP_IMAGE_ID"]
167 );
169 }
172 elseif ($arFields["ENTITY_TYPE"] == "N")
173 $arResult["EVENT_FORMATTED"]["AVATAR_STYLE"] = "avatar-info";
174
175 $parserLog = new logTextParser(false, $arParams["PATH_TO_SMILE"]);
176 $arAllow = array(
177 "HTML" => "Y", "ANCHOR" => "Y", "BIU" => "Y",
178 "IMG" => "Y", "LOG_IMG" => "N",
179 "QUOTE" => "Y", "LOG_QUOTE" => "N",
180 "CODE" => "Y", "LOG_CODE" => "N",
181 "FONT" => "Y", "LOG_FONT" => "N",
182 "LIST" => "Y",
183 "SMILES" => "Y",
184 "NL2BR" => "N",
185 "MULTIPLE_BR" => "Y",
186 "VIDEO" => "Y", "LOG_VIDEO" => "N"
187 );
188
189 $arResult["EVENT_FORMATTED"]["SHORT_MESSAGE"] = $parserLog->html_cut(
190 $parserLog->convert(htmlspecialcharsback(str_replace("#CUT#", "", $arResult["EVENT_FORMATTED"]["MESSAGE"])), array(), $arAllow),
191 500
192 );
193
194 $arAllow = array("HTML" => "Y", "ANCHOR" => "Y", "BIU" => "Y", "IMG" => "Y", "QUOTE" => "Y", "CODE" => "Y", "FONT" => "Y", "LIST" => "Y", "SMILES" => "Y", "NL2BR" => "N", "MULTIPLE_BR" => "Y", "VIDEO" => "Y", "LOG_VIDEO" => "N");
195 $arResult["EVENT_FORMATTED"]["MESSAGE"] = htmlspecialcharsbx($parserLog->convert(htmlspecialcharsback($arResult["EVENT_FORMATTED"]["MESSAGE"]), array(), $arAllow));
196
197 if (
198 $arParams["MOBILE"] != "Y"
199 && $arParams["NEW_TEMPLATE"] != "Y"
200 )
201 $arResult["EVENT_FORMATTED"]["IS_MESSAGE_SHORT"] = CSocNetLogTools::FormatEvent_IsMessageShort($arResult["EVENT_FORMATTED"]["MESSAGE"], $arResult["EVENT_FORMATTED"]["SHORT_MESSAGE"]);
202 }
203
204 return $arResult;
205 }
206
207 public static function GetEntity_Data($arFields, $bMail)
208 {
209 $arEntity = array();
210
211 global $arProviders;
212
213 if (!$arProviders)
214 $arProviders = array();
215
216 if (intval($arFields["ENTITY_ID"]) > 0)
217 {
218 if (array_key_exists($arFields["ENTITY_ID"], $arProviders))
219 {
220 if ($bMail)
221 $arEntity["FORMATTED"] = $arProviders[$arFields["ENTITY_ID"]]["NAME"];
222 else
223 $arEntity["FORMATTED"]["NAME"] = $arProviders[$arFields["ENTITY_ID"]]["NAME"];
224 }
225 else
226 {
227 $rsScheme = CXDILFScheme::GetByID($arFields["ENTITY_ID"]);
228 if ($arScheme = $rsScheme->GetNext())
229 {
230 if ($bMail)
231 $arEntity["FORMATTED"] = $arProviders[$arFields["ENTITY_ID"]]["NAME"] = $arScheme["NAME"];
232 else
233 $arEntity["FORMATTED"]["NAME"] = $arProviders[$arFields["ENTITY_ID"]]["NAME"] = $arScheme["NAME"];
234 }
235 }
236 }
237
238 return $arEntity;
239 }
240
241 public static function FormatComment_Data($arFields, $arParams, $bMail = false, $arLog = array())
242 {
244 "EVENT_FORMATTED" => array(),
245 );
246
247 if (!CModule::IncludeModule("socialnetwork"))
248 return $arResult;
249
250 if (in_array($arLog["ENTITY_TYPE"], array(SONET_SUBSCRIBE_ENTITY_GROUP, SONET_SUBSCRIBE_ENTITY_USER)))
252
253 if(!$bMail && $arParams["USE_COMMENT"] != "Y")
254 {
255 $arLog["ENTITY_ID"] = $arFields["ENTITY_ID"];
256 $arLog["ENTITY_TYPE"] = $arFields["ENTITY_TYPE"];
257 }
258
259 if (
260 !$bMail
261 && array_key_exists("URL", $arLog)
262 && $arLog["URL"] <> ''
263 )
264 $news_tmp = '<a href="'.$arLog["URL"].'">'.$arLog["TITLE"].'</a>';
265 else
266 $news_tmp = $arLog["TITLE"];
267
268 $title_tmp = ($bMail ? GetMessage("LFP_SOCNET_LOG_DATA_COMMENT_".$arLog["ENTITY_TYPE"]."_TITLE_MAIL") : GetMessage("LFP_SOCNET_LOG_DATA_COMMENT_TITLE"));
269
270 $title = str_replace(
271 array("#TITLE#", "#ENTITY#"),
272 array($news_tmp, ($bMail ? $arResult["ENTITY"]["FORMATTED"] : $arResult["ENTITY"]["FORMATTED"]["NAME"])),
273 $title_tmp
274 );
275
276 $arResult["EVENT_FORMATTED"] = array(
277 "TITLE" => ($bMail || $arParams["USE_COMMENT"] != "Y" ? "<a href=\"asdfasdf\">".$title."</a>" : ""),
278 "MESSAGE" => ($bMail ? $arFields["TEXT_MESSAGE"] : $arFields["MESSAGE"])
279 );
280
281 if ($bMail)
282 {
284 if ($url <> '')
285 $arResult["EVENT_FORMATTED"]["URL"] = $url;
286 }
287 else
288 {
289 $parserLog = new logTextParser(false, $arParams["PATH_TO_SMILE"]);
290 $arAllow = array(
291 "HTML" => "Y", "ANCHOR" => "Y", "BIU" => "Y",
292 "IMG" => "Y", "LOG_IMG" => "N",
293 "QUOTE" => "Y", "LOG_QUOTE" => "N",
294 "CODE" => "Y", "LOG_CODE" => "N",
295 "FONT" => "Y", "LOG_FONT" => "N",
296 "LIST" => "Y",
297 "SMILES" => "Y",
298 "NL2BR" => "Y",
299 "MULTIPLE_BR" => "N",
300 "VIDEO" => "Y", "LOG_VIDEO" => "N"
301 );
302
303 $arAllow = array("HTML" => "Y", "ANCHOR" => "Y", "BIU" => "Y", "IMG" => "Y", "QUOTE" => "Y", "CODE" => "Y", "FONT" => "Y", "LIST" => "Y", "SMILES" => "Y", "NL2BR" => "N", "VIDEO" => "Y", "LOG_VIDEO" => "N");
304 $arResult["EVENT_FORMATTED"]["MESSAGE"] = htmlspecialcharsbx($parserLog->convert(htmlspecialcharsback($arResult["EVENT_FORMATTED"]["MESSAGE"]), array(), $arAllow));
305
306 if (
307 $arParams["MOBILE"] != "Y"
308 && $arParams["NEW_TEMPLATE"] != "Y"
309 )
310 {
311 $arResult["EVENT_FORMATTED"]["SHORT_MESSAGE"] = $parserLog->html_cut(
312 $parserLog->convert(htmlspecialcharsback($arResult["EVENT_FORMATTED"]["MESSAGE"]), array(), $arAllow),
313 500
314 );
315 $arResult["EVENT_FORMATTED"]["IS_MESSAGE_SHORT"] = CSocNetLogTools::FormatEvent_IsMessageShort($arResult["EVENT_FORMATTED"]["MESSAGE"], $arResult["EVENT_FORMATTED"]["SHORT_MESSAGE"]);
316 }
317 }
318
319 return $arResult;
320 }
321
322 public static function OnTimeManShow()
323 {
324 if(COption::GetOptionString("socialservices", "allow_send_user_activity", "Y") == 'Y')
325 CJSCore::Init(array('socserv_timeman'));
326 }
327
328 public static function OnUserLogout(&$arParams)
329 {
331 }
332}
$arParams
Определения access_dialog.php:21
$arResult
Определения generate_coupon.php:16
static FormatEvent_FillTooltip($arFields, $arParams)
Определения log.php:945
static Init($arExt=array(), $bReturn=false)
Определения jscore.php:66
static RegisterExt($name, $arPaths)
Определения jscore.php:28
static GetList($aSort=array(), $aFilter=array())
Определения log_rights.php:256
static FormatEvent_GetURL($arFields, $bAbsolute=false)
Определения log_tools.php:661
static FormatEvent_GetEntity($arFields, $arParams, $bMail)
Определения log_tools.php:586
static FormatDestinationFromRights($arRights, $arParams, &$iMoreCount=false)
Определения log_tools.php:4389
static FormatEvent_CreateAvatar($arFields, $arParams, $source="CREATED_BY_", $site_id=SITE_ID)
Определения log_tools.php:418
static FormatEvent_IsMessageShort($message, $short_message=false)
Определения log_tools.php:514
static FormatEvent_CreateAvatarGroup($arFields, $arParams)
Определения log_tools.php:482
static killAllTags($text)
Определения functions.php:428
static GetCachedUserOption($option)
Определения authmanager.php:929
static UnsetAuthorizedServiceId()
Определения authmanager.php:419
static OnFillSocNetLogEvents(&$arSocNetLogEvents)
Определения include.php:27
static OnTimeManShow()
Определения include.php:322
static OnUserLogout(&$arParams)
Определения include.php:328
static FormatEvent_Data($arFields, $arParams, $bMail=false)
Определения include.php:50
static FormatComment_Data($arFields, $arParams, $bMail=false, $arLog=array())
Определения include.php:241
static GetEntity_Data($arFields, $bMail)
Определения include.php:207
Определения log_tools.php:6352
$arFields
Определения dblapprove.php:5
</td ></tr ></table ></td ></tr >< tr >< td class="bx-popup-label bx-width30"><?=GetMessage("PAGE_NEW_TAGS")?> array( $site)
Определения file_new.php:804
$arJSDescription
Определения iblock_subelement_generator.php:23
htmlspecialcharsback($str)
Определения tools.php:2693
IsModuleInstalled($module_id)
Определения tools.php:5301
htmlspecialcharsbx($string, $flags=ENT_COMPAT, $doubleEncode=true)
Определения tools.php:2701
GetMessage($name, $aReplace=null)
Определения tools.php:3397
$message
Определения payment.php:8
if( $daysToExpire >=0 &&$daysToExpire< 60 elseif)( $daysToExpire< 0)
Определения prolog_main_admin.php:393
</p ></td >< td valign=top style='border-top:none;border-left:none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;padding:0cm 2.0pt 0cm 2.0pt;height:9.0pt'>< p class=Normal align=center style='margin:0cm;margin-bottom:.0001pt;text-align:center;line-height:normal'>< a name=ТекстовоеПоле54 ></a ><?=($taxRate > count( $arTaxList) > 0) ? $taxRate."%"
Определения waybill.php:936
$title
Определения pdf.php:123
const SONET_SUBSCRIBE_ENTITY_USER
Определения include.php:121
const SONET_SUBSCRIBE_ENTITY_GROUP
Определения include.php:120
$url
Определения iframe.php:7