1C-Bitrix 25.700.0
Загрузка...
Поиск...
Не найдено
options.php
См. документацию.
1<?
4
6
7$module_id = "socialnetwork";
8
9CJSCore::Init(array("access"));
10
12if ($SONET_RIGHT>="R") :
13
14IncludeModuleLangFile($_SERVER["DOCUMENT_ROOT"].'/bitrix/modules/main/options.php');
15IncludeModuleLangFile($_SERVER["DOCUMENT_ROOT"].'/bitrix/modules/main/admin/settings.php');
16IncludeModuleLangFile(__FILE__);
17
18CModule::IncludeModule('socialnetwork');
19
20if (
21 $_SERVER['REQUEST_METHOD']=="GET"
22 && ($RestoreDefaults ?? null) <> ''
23 && $SONET_RIGHT=="W"
25)
26{
27 COption::RemoveOption("socialnetwork");
28 $z = CGroup::GetList("id", "asc", array("ACTIVE" => "Y", "ADMIN" => "N"));
29 while($zr = $z->Fetch())
30 {
31 $APPLICATION->DelGroupRight($module_id, array($zr["ID"]));
32 }
33}
34
35$arSocNetFeaturesSettings = CSocNetAllowed::GetAllowedFeatures();
36
38 SONET_RELATIONS_TYPE_NONE => GetMessage("SONET_PVU_NONE"),
40 SONET_RELATIONS_TYPE_AUTHORIZED => GetMessage("SONET_PVU_AUTHORIZED"),
41 SONET_RELATIONS_TYPE_ALL => GetMessage("SONET_PVU_ALL"),
42);
43
45 UserToGroupTable::ROLE_OWNER => GetMessage("SONET_PVG_OWNER"),
46 UserToGroupTable::ROLE_MODERATOR => GetMessage("SONET_PVG_MOD"),
47 UserToGroupTable::ROLE_USER => GetMessage("SONET_PVG_USER"),
48 SONET_ROLES_AUTHORIZED => GetMessage("SONET_PVG_AUTHORIZED"),
49 SONET_ROLES_ALL => GetMessage("SONET_PVG_ALL"),
50);
51
53
55 "forum" => GetMessage("SONET_FEATURE_FORUM"),
56 "blog" => GetMessage("SONET_FEATURE_BLOG"),
57 "photo" => GetMessage("SONET_FEATURE_PHOTO"),
58);
59
61 "LOGIN" => GetMessage("SONET_FIELD_LOGIN"),
62 "NAME" => GetMessage("SONET_FIELD_NAME"),
63 "SECOND_NAME" => GetMessage("SONET_FIELD_SECOND_NAME"),
64 "LAST_NAME" => GetMessage("SONET_FIELD_LAST_NAME"),
65 "EMAIL" => GetMessage("SONET_FIELD_EMAIL"),
66 "LAST_LOGIN" => GetMessage("SONET_FIELD_LAST_LOGIN"),
67 "DATE_REGISTER" => GetMessage("SONET_FIELD_DATE_REGISTER"),
68 "PERSONAL_BIRTHDAY" => GetMessage("SONET_FIELD_PERSONAL_BIRTHDAY"),
69 "PERSONAL_PROFESSION" => GetMessage("SONET_FIELD_PERSONAL_PROFESSION"),
70 "PERSONAL_WWW" => GetMessage("SONET_FIELD_PERSONAL_WWW"),
71 "PERSONAL_ICQ" => GetMessage("SONET_FIELD_PERSONAL_ICQ"),
72 "PERSONAL_GENDER" => GetMessage("SONET_FIELD_PERSONAL_GENDER"),
73 "PERSONAL_PHOTO" => GetMessage("SONET_FIELD_PERSONAL_PHOTO"),
74 "PERSONAL_NOTES" => GetMessage("SONET_FIELD_PERSONAL_NOTES"),
75 "PERSONAL_PHONE" => GetMessage("SONET_FIELD_PERSONAL_PHONE"),
76 "PERSONAL_FAX" => GetMessage("SONET_FIELD_PERSONAL_FAX"),
77 "PERSONAL_MOBILE" => GetMessage("SONET_FIELD_PERSONAL_MOBILE"),
78 "PERSONAL_PAGER" => GetMessage("SONET_FIELD_PERSONAL_PAGER"),
79 "PERSONAL_COUNTRY" => GetMessage("SONET_FIELD_PERSONAL_COUNTRY"),
80 "PERSONAL_STATE" => GetMessage("SONET_FIELD_PERSONAL_STATE"),
81 "PERSONAL_CITY" => GetMessage("SONET_FIELD_PERSONAL_CITY"),
82 "PERSONAL_ZIP" => GetMessage("SONET_FIELD_PERSONAL_ZIP"),
83 "PERSONAL_STREET" => GetMessage("SONET_FIELD_PERSONAL_STREET"),
84 "PERSONAL_MAILBOX" => GetMessage("SONET_FIELD_PERSONAL_MAILBOX"),
85 "WORK_COMPANY" => GetMessage("SONET_FIELD_WORK_COMPANY"),
86 "WORK_DEPARTMENT" => GetMessage("SONET_FIELD_WORK_DEPARTMENT"),
87 "WORK_POSITION" => GetMessage("SONET_FIELD_WORK_POSITION"),
88 "MANAGERS" => GetMessage("SONET_FIELD_MANAGERS"),
89 "WORK_WWW" => GetMessage("SONET_FIELD_WORK_WWW"),
90 "WORK_PROFILE" => GetMessage("SONET_FIELD_WORK_PROFILE"),
91 "WORK_LOGO" => GetMessage("SONET_FIELD_WORK_LOGO"),
92 "WORK_NOTES" => GetMessage("SONET_FIELD_WORK_NOTES"),
93 "WORK_PHONE" => GetMessage("SONET_FIELD_WORK_PHONE"),
94 "WORK_FAX" => GetMessage("SONET_FIELD_WORK_FAX"),
95 "WORK_PAGER" => GetMessage("SONET_FIELD_WORK_PAGER"),
96 "WORK_COUNTRY" => GetMessage("SONET_FIELD_WORK_COUNTRY"),
97 "WORK_STATE" => GetMessage("SONET_FIELD_WORK_STATE"),
98 "WORK_CITY" => GetMessage("SONET_FIELD_WORK_CITY"),
99 "WORK_ZIP" => GetMessage("SONET_FIELD_WORK_ZIP"),
100 "WORK_STREET" => GetMessage("SONET_FIELD_WORK_STREET"),
101 "WORK_MAILBOX" => GetMessage("SONET_FIELD_WORK_MAILBOX"),
102);
103
104$arRes = $GLOBALS["USER_FIELD_MANAGER"]->GetUserFields("USER", 0, LANGUAGE_ID);
106if (!empty($arRes))
107{
108 foreach ($arRes as $key => $val)
109 {
110 $arTooltipProperties[$val["FIELD_NAME"]] = ($val["EDIT_FORM_LABEL"] <> '' ? $val["EDIT_FORM_LABEL"] : $val["FIELD_NAME"]);
111 }
112}
113
115$db_res = CRatings::GetList($aSort = array("ID" => "ASC"), array("ACTIVE" => "Y", "ENTITY_ID" => "USER"));
116while ($res = $db_res->GetNext())
117{
118 $arRatings[$res["ID"]] = "[ ".$res["ID"]." ] ".$res["NAME"];
119}
120
121if ($bIntranet)
122{
124 "EMAIL",
125 "WORK_PHONE",
126 "PERSONAL_PHOTO",
127 "PERSONAL_CITY",
128 "WORK_COMPANY",
129 "WORK_POSITION",
130 );
131}
132else
133{
135 "PERSONAL_ICQ",
136 "PERSONAL_BIRTHDAY",
137 "PERSONAL_PHOTO",
138 "PERSONAL_CITY",
139 "WORK_COMPANY",
140 "WORK_POSITION"
141 );
142}
143
144if ($bIntranet)
145{
147 "UF_DEPARTMENT",
148 "UF_PHONE_INNER",
149 "UF_SKYPE",
150 );
151}
152else
153{
155 "UF_SKYPE",
156 );
157}
158
161
162if ($bIntranet)
163{
164 $arFeatures["tasks"] = GetMessage("SONET_FEATURE_TASKS");
165}
166
168
169if ($bCalendar)
170{
171 $arFeatures["calendar"] = GetMessage("SONET_FEATURE_CALENDAR");
172}
173
174if (IsModuleInstalled('search'))
175{
176 $arFeatures["search"] = GetMessage("SONET_FEATURE_SEARCH");
177}
178
179if (!function_exists('set_valign'))
180{
181 function set_valign($ctrlType, $bIsMultiple = false)
182 {
183 if (
184 (
185 in_array($ctrlType, array("select_fields", "select_properties", "select_rating", "select_user_perm", "select_user", "select_group"))
186 && $bIsMultiple == false
187 )
188 || in_array($ctrlType, array("checkbox", "text"))
189 )
190 {
191 return '';
192 }
193 else
194 {
195 return "class=\"adm-detail-valign-top\"";
196 }
197 }
198}
199
201 array("follow_default_type", GetMessage($bIntranet ? "SONET_LOG_FOLLOW_DEFAULT_TYPE3" : "SONET_LOG_FOLLOW_DEFAULT_TYPE"), "Y", Array("checkbox")),
202 array("allow_livefeed_toall", GetMessage($bIntranet ? "SONET_LOG_ALLOW_TOALL3" : "SONET_LOG_ALLOW_TOALL"), "Y", Array("checkbox")),
203 array("livefeed_toall_rights", GetMessage("SONET_LOG_TOALL_RIGHTS"), 'a:1:{i:0;s:2:"AU";}', Array("hidden")),
204 array("default_livefeed_toall", GetMessage("SONET_LOG_DEFAULT_TOALL"), "Y", Array("checkbox")),
205 array("email_users_all", GetMessage("SONET_LOG_EMAIL_USERS_ALL"), "N", Array("checkbox")),
206);
207
208if (!IsModuleInstalled("intranet"))
209{
210 $arAllOptionsCommon[] = array("sonet_log_smart_filter", GetMessage($bIntranet ? "SONET_LOG_SMART_FILTER2" : "SONET_LOG_SMART_FILTER"), "N", Array("checkbox"));
211}
212
213if (IsModuleInstalled("im"))
214{
215 $arAllOptionsCommon[] = array("use_workgroup_chat", GetMessage("SONET_USE_WORKGROUP_CHAT"), "Y", Array("checkbox"));
216}
217
218$fulltextIndexExists = $DB->IndexExists("b_sonet_log_index", array("CONTENT"));
219$arAllOptionsCommon[] = array("use_lf_fulltext_index", GetMessage($bIntranet ? "SONET_USE_LF_FULLTEXT_INDEX3" : "SONET_USE_LF_FULLTEXT_INDEX"), ($fulltextIndexExists ? "Y" : "N"), array("checkbox"));
220
222 array("allow_frields", GetMessage("SONET_ALLOW_FRIELDS"), "Y", Array("checkbox")),
223 array("allow_tooltip", GetMessage("SONET_ALLOW_TOOLTIP"), "Y", Array("checkbox")),
224 array("group_path_template", GetMessage("SONET_GROUP_PATH_TEMPLATE"), "", Array("text", 40)),
225 array("messages_path", GetMessage("SONET_MESSAGES_PATH"), "/company/personal/messages/", Array("text", 40)),
226 array("tooltip_fields", GetMessage("SONET_TOOLTIP_FIELDS"), $arTooltipFieldsDefault, Array("select_fields", true, 7)),
227 array("tooltip_properties", GetMessage("SONET_TOOLTIP_PROPERTIES"), $arTooltipPropertiesDefault, Array("select_properties", true, 3)),
228 array("tooltip_show_rating", GetMessage("SONET_TOOLTIP_SHOW_RATING"), "N", Array("checkbox")),
229 array("tooltip_rating_id", GetMessage("SONET_TOOLTIP_RATING_ID"), serialize(Array()), Array("select_rating", true, 3))
230);
231
233 array("default_user_viewfriends", GetMessage("SONET_USER_OPERATIONS_viewfriends"), SONET_RELATIONS_TYPE_ALL, Array("select_user_perm")),
234 array("default_user_viewgroups", GetMessage("SONET_USER_OPERATIONS_viewgroups"), SONET_RELATIONS_TYPE_ALL, Array("select_user_perm")),
235 array("default_user_viewprofile", GetMessage("SONET_USER_OPERATIONS_viewprofile"), SONET_RELATIONS_TYPE_ALL, Array("select_user_perm")),
236 array("allow_forum_user", GetMessage("SONET_ALLOW_FORUM_USER"), "Y", Array("checkbox"), "showHideTab", "opt_user_feature_forum"),
237 array("allow_photo_user", GetMessage("SONET_ALLOW_PHOTO_USER"), "Y", Array("checkbox"), "showHideTab", "opt_user_feature_photo"),
238);
239
240if ($bIntranet)
241{
242 $arAllOptionsUsers[] = array("allow_files_user", GetMessage("SONET_ALLOW_FILES_USER"), "Y", Array("checkbox"), "showHideTab", "opt_user_feature_files");
243 $arAllOptionsUsers[] = array("allow_tasks_user", GetMessage("SONET_ALLOW_TASKS_USER"), "Y", Array("checkbox"), "showHideTab", "opt_user_feature_tasks");
244}
245
246if ($bCalendar)
247{
248 $arAllOptionsUsers[] = array("allow_calendar_user", GetMessage("SONET_ALLOW_CALENDAR_USER"), "Y", Array("checkbox"), "showHideTab", "opt_user_feature_calendar");
249}
250
251if (IsModuleInstalled('search'))
252{
253 $arAllOptionsUsers[] = array("allow_search_user", GetMessage("SONET_ALLOW_SEARCH_USER"), "N", Array("checkbox"), "showHideTab", "opt_user_feature_search");
254}
255
257
258$arAllOptionsUsersBlocks["forum"][] = array("default_forum_operation_full_user", GetMessage("SONET_FORUM_OPERATION_FULL_USER"), SONET_RELATIONS_TYPE_NONE, Array("select_user"));
259$arAllOptionsUsersBlocks["forum"][] = array("default_forum_operation_newtopic_user", GetMessage("SONET_FORUM_OPERATION_NEWTOPIC_USER"), SONET_RELATIONS_TYPE_NONE, Array("select_user"));
260$arAllOptionsUsersBlocks["forum"][] = array("default_forum_operation_answer_user", GetMessage("SONET_FORUM_OPERATION_ANSWER_USER"), (CSocNetUser::IsFriendsAllowed() ? SONET_RELATIONS_TYPE_FRIENDS : SONET_RELATIONS_TYPE_AUTHORIZED), Array("select_user"));
261$arAllOptionsUsersBlocks["forum"][] = array("default_forum_operation_view_user", GetMessage("SONET_FORUM_OPERATION_VIEW_USER"), SONET_RELATIONS_TYPE_ALL, Array("select_user"));
262
263$arAllOptionsUsersBlocks["blog"][] = array("default_blog_operation_view_post_user", GetMessage("SONET_BLOG_OPERATION_VIEW_POST_USER"), SONET_RELATIONS_TYPE_ALL, Array("select_user"));
264//$arAllOptionsUsersBlocks["blog"][] = array("default_blog_operation_premoderate_post_user", GetMessage("SONET_BLOG_OPERATION_PREMODERATE_POST_USER"), SONET_RELATIONS_TYPE_NONE, Array("select_user"));
265//$arAllOptionsUsersBlocks["blog"][] = array("default_blog_operation_write_post_user", GetMessage("SONET_BLOG_OPERATION_WRITE_POST_USER"), SONET_RELATIONS_TYPE_NONE, Array("select_user"));
266//$arAllOptionsUsersBlocks["blog"][] = array("default_blog_operation_moderate_post_user", GetMessage("SONET_BLOG_OPERATION_MODERATE_POST_USER"), SONET_RELATIONS_TYPE_NONE, Array("select_user"));
267//$arAllOptionsUsersBlocks["blog"][] = array("default_blog_operation_full_post_user", GetMessage("SONET_BLOG_OPERATION_FULL_POST_USER"), SONET_RELATIONS_TYPE_NONE, Array("select_user"));
268$arAllOptionsUsersBlocks["blog"][] = array("default_blog_operation_view_comment_user", GetMessage("SONET_BLOG_OPERATION_VIEW_COMMENT_USER"), SONET_RELATIONS_TYPE_ALL, Array("select_user"));
269$arAllOptionsUsersBlocks["blog"][] = array("default_blog_operation_premoderate_comment_user", GetMessage("SONET_BLOG_OPERATION_PREMODERATE_COMMENT_USER"), SONET_RELATIONS_TYPE_ALL, Array("select_user"));
270$arAllOptionsUsersBlocks["blog"][] = array("default_blog_operation_write_comment_user", GetMessage("SONET_BLOG_OPERATION_WRITE_COMMENT_USER"), SONET_RELATIONS_TYPE_ALL, Array("select_user"));
271//$arAllOptionsUsersBlocks["blog"][] = array("default_blog_operation_moderate_comment_user", GetMessage("SONET_BLOG_OPERATION_MODERATE_COMMENT_USER"), SONET_RELATIONS_TYPE_NONE, Array("select_user"));
272//$arAllOptionsUsersBlocks["blog"][] = array("default_blog_operation_full_comment_user", GetMessage("SONET_BLOG_OPERATION_FULL_COMMENT_USER"), SONET_RELATIONS_TYPE_NONE, Array("select_user"));
273
274$arAllOptionsUsersBlocks["photo"][] = array("default_photo_operation_write_user", GetMessage("SONET_PHOTO_OPERATION_WRITE_USER"), SONET_RELATIONS_TYPE_NONE, Array("select_user"));
275$arAllOptionsUsersBlocks["photo"][] = array("default_photo_operation_view_user", GetMessage("SONET_PHOTO_OPERATION_VIEW_USER"), SONET_RELATIONS_TYPE_ALL, Array("select_user"));
276
277if ($bIntranet)
278{
279 $arAllOptionsUsersBlocks["tasks"][] = array("default_tasks_operation_view_user", GetMessage("SONET_TASKS_OPERATION_VIEW_USER"), SONET_RELATIONS_TYPE_ALL, Array("select_user"));
280 $arAllOptionsUsersBlocks["tasks"][] = array("default_tasks_operation_view_all_user", GetMessage("SONET_TASKS_OPERATION_VIEW_ALL_USER"), SONET_RELATIONS_TYPE_NONE, Array("select_user"));
281 $arAllOptionsUsersBlocks["tasks"][] = array("default_tasks_operation_create_tasks_user", GetMessage("SONET_TASKS_OPERATION_CREATE_TASKS_USER"), SONET_RELATIONS_TYPE_AUTHORIZED, Array("select_user"));
282 $arAllOptionsUsersBlocks["tasks"][] = array("default_tasks_operation_edit_tasks_user", GetMessage("SONET_TASKS_OPERATION_EDIT_TASKS_USER"), SONET_RELATIONS_TYPE_NONE, Array("select_user"));
283 $arAllOptionsUsersBlocks["tasks"][] = array("default_tasks_operation_delete_tasks_user", GetMessage("SONET_TASKS_OPERATION_DELETE_TASKS_USER"), SONET_RELATIONS_TYPE_NONE, Array("select_user"));
284 $arAllOptionsUsersBlocks["tasks"][] = array("default_tasks_operation_modify_common_views_user", GetMessage("SONET_TASKS_OPERATION_MODIFY_COMMON_VIEWS_USER"), SONET_RELATIONS_TYPE_NONE, Array("select_user"));
285}
286
287if ($bCalendar)
288{
289 $arAllOptionsUsersBlocks["calendar"][] = array("default_calendar_operation_write_user", GetMessage("SONET_CALENDAR_OPERATION_WRITE_USER"), SONET_RELATIONS_TYPE_NONE, Array("select_user"));
290 $arAllOptionsUsersBlocks["calendar"][] = array("default_calendar_operation_view_user", GetMessage("SONET_CALENDAR_OPERATION_VIEW_USER"), SONET_RELATIONS_TYPE_ALL, Array("select_user"));
291}
292
293if (IsModuleInstalled('search'))
294{
295 $arAllOptionsUsersBlocks["search"][] = array("default_search_operation_view_user", GetMessage("SONET_SEARCH_OPERATION_VIEW_USER"), SONET_RELATIONS_TYPE_ALL, Array("select_user"));
296}
297
299$arAllOptionsUsersGender["male"][] = array("default_user_picture_male", GetMessage("SONET_USER_PICTURE"), false, Array("image"));
300$arAllOptionsUsersGender["female"][] = array("default_user_picture_female", GetMessage("SONET_USER_PICTURE"), false, Array("image"));
301$arAllOptionsUsersGender["unknown"][] = array("default_user_picture_unknown", GetMessage("SONET_USER_PICTURE"), false, Array("image"));
302
304 array("allow_forum_group", GetMessage("SONET_ALLOW_FORUM_GROUP"), "Y", Array("checkbox"), "showHideTab", "opt_group_feature_forum"),
305 array("allow_blog_group", GetMessage("SONET_ALLOW_BLOG_GROUP"), "Y", Array("checkbox"), "showHideTab", "opt_group_feature_blog"),
306 array("allow_photo_group", GetMessage("SONET_ALLOW_PHOTO_GROUP"), "Y", Array("checkbox"), "showHideTab", "opt_group_feature_photo"),
307);
308
309if ($bIntranet)
310{
311 $arAllOptionsGroups[] = array("allow_files_group", GetMessage("SONET_ALLOW_FILES_GROUP"), "Y", Array("checkbox"), "showHideTab", "opt_group_feature_files");
312 $arAllOptionsGroups[] = array("allow_tasks_group", GetMessage("SONET_ALLOW_TASKS_GROUP"), "Y", Array("checkbox"), "showHideTab", "opt_group_feature_tasks");
313}
314
315if ($bCalendar)
316{
317 $arAllOptionsGroups[] = array("allow_calendar_group", GetMessage("SONET_ALLOW_CALENDAR_GROUP"), "Y", Array("checkbox"), "showHideTab", "opt_group_feature_calendar");
318}
319
320if (IsModuleInstalled('search'))
321{
322 $arAllOptionsGroups[] = array("allow_search_group", GetMessage("SONET_ALLOW_SEARCH_GROUP"), "Y", Array("checkbox"), "showHideTab", "opt_group_feature_search");
323}
324
326
327$arAllOptionsGroupsBlocks["forum"][] = array("default_forum_operation_full_group", GetMessage("SONET_FORUM_OPERATION_FULL_GROUP"), SONET_ROLES_MODERATOR, Array("select_group"));
328$arAllOptionsGroupsBlocks["forum"][] = array("default_forum_operation_newtopic_group", GetMessage("SONET_FORUM_OPERATION_NEWTOPIC_GROUP"), SONET_ROLES_USER, Array("select_group"));
329$arAllOptionsGroupsBlocks["forum"][] = array("default_forum_operation_answer_group", GetMessage("SONET_FORUM_OPERATION_ANSWER_GROUP"), SONET_ROLES_USER, Array("select_group"));
330$arAllOptionsGroupsBlocks["forum"][] = array("default_forum_operation_view_group", GetMessage("SONET_FORUM_OPERATION_VIEW_GROUP"), SONET_ROLES_USER, Array("select_group"));
331$arAllOptionsGroupsBlocks["forum"][] = array("default_forum_create_default", GetMessage("SONET_FUNCTIONALITY_CREATE_DEFAULT"), "Y", Array("checkbox"));
332
333$arAllOptionsGroupsBlocks["blog"][] = array("default_blog_operation_view_post_group", GetMessage("SONET_BLOG_OPERATION_VIEW_POST_GROUP"), SONET_ROLES_USER, Array("select_group"));
334$arAllOptionsGroupsBlocks["blog"][] = array("default_blog_operation_premoderate_post_group", GetMessage("SONET_BLOG_OPERATION_PREMODERATE_POST_GROUP"), SONET_ROLES_USER, Array("select_group"));
335$arAllOptionsGroupsBlocks["blog"][] = array("default_blog_operation_write_post_group", GetMessage("SONET_BLOG_OPERATION_WRITE_POST_GROUP"), SONET_ROLES_USER, Array("select_group"));
336$arAllOptionsGroupsBlocks["blog"][] = array("default_blog_operation_moderate_post_group", GetMessage("SONET_BLOG_OPERATION_MODERATE_POST_GROUP"), SONET_ROLES_MODERATOR, Array("select_group"));
337$arAllOptionsGroupsBlocks["blog"][] = array("default_blog_operation_full_post_group", GetMessage("SONET_BLOG_OPERATION_FULL_POST_GROUP"), SONET_ROLES_MODERATOR, Array("select_group"));
338$arAllOptionsGroupsBlocks["blog"][] = array("default_blog_operation_view_comment_group", GetMessage("SONET_BLOG_OPERATION_VIEW_COMMENT_GROUP"), SONET_ROLES_USER, Array("select_group"));
339$arAllOptionsGroupsBlocks["blog"][] = array("default_blog_operation_premoderate_comment_group", GetMessage("SONET_BLOG_OPERATION_PREMODERATE_COMMENT_GROUP"), SONET_ROLES_USER, Array("select_group"));
340$arAllOptionsGroupsBlocks["blog"][] = array("default_blog_operation_write_comment_group", GetMessage("SONET_BLOG_OPERATION_WRITE_COMMENT_GROUP"), SONET_ROLES_USER, Array("select_group"));
341$arAllOptionsGroupsBlocks["blog"][] = array("default_blog_operation_moderate_comment_group", GetMessage("SONET_BLOG_OPERATION_MODERATE_COMMENT_GROUP"), SONET_ROLES_MODERATOR, Array("select_group"));
342$arAllOptionsGroupsBlocks["blog"][] = array("default_blog_operation_full_comment_group", GetMessage("SONET_BLOG_OPERATION_FULL_COMMENT_GROUP"), SONET_ROLES_MODERATOR, Array("select_group"));
343$arAllOptionsGroupsBlocks["blog"][] = array("default_blog_create_default", GetMessage("SONET_FUNCTIONALITY_CREATE_DEFAULT"), "Y", Array("checkbox"));
344
345$arAllOptionsGroupsBlocks["photo"][] = array("default_photo_operation_write_group", GetMessage("SONET_PHOTO_OPERATION_WRITE_GROUP"), SONET_ROLES_MODERATOR, Array("select_group"));
346$arAllOptionsGroupsBlocks["photo"][] = array("default_photo_operation_view_group", GetMessage("SONET_PHOTO_OPERATION_VIEW_GROUP"), SONET_ROLES_USER, Array("select_group"));
347$arAllOptionsGroupsBlocks["photo"][] = array("default_photo_create_default", GetMessage("SONET_FUNCTIONALITY_CREATE_DEFAULT"), "Y", Array("checkbox"));
348
349if ($bIntranet)
350{
351 $arAllOptionsGroupsBlocks["tasks"][] = array("default_tasks_operation_view_group", GetMessage("SONET_TASKS_OPERATION_VIEW_GROUP"), SONET_ROLES_USER, Array("select_group"));
352 $arAllOptionsGroupsBlocks["tasks"][] = array("default_tasks_operation_view_all_group", GetMessage("SONET_TASKS_OPERATION_VIEW_ALL_GROUP"), SONET_ROLES_USER, Array("select_group"));
353 $arAllOptionsGroupsBlocks["tasks"][] = array("default_tasks_operation_sort_group", GetMessage("SONET_TASKS_OPERATION_SORT_GROUP"), SONET_ROLES_USER, Array("select_group"));
354 $arAllOptionsGroupsBlocks["tasks"][] = array("default_tasks_operation_create_tasks_group", GetMessage("SONET_TASKS_OPERATION_CREATE_TASKS_GROUP"), SONET_ROLES_USER, Array("select_group"));
355 $arAllOptionsGroupsBlocks["tasks"][] = array("default_tasks_operation_edit_tasks_group", GetMessage("SONET_TASKS_OPERATION_EDIT_TASKS_GROUP"), SONET_ROLES_MODERATOR, Array("select_group"));
356 $arAllOptionsGroupsBlocks["tasks"][] = array("default_tasks_operation_delete_tasks_group", GetMessage("SONET_TASKS_OPERATION_DELETE_TASKS_GROUP"), SONET_ROLES_MODERATOR, Array("select_group"));
357 $arAllOptionsGroupsBlocks["tasks"][] = array("default_tasks_operation_modify_common_views_group", GetMessage("SONET_TASKS_OPERATION_MODIFY_COMMON_VIEWS_GROUP"), SONET_ROLES_MODERATOR, Array("select_group"));
358 $arAllOptionsGroupsBlocks["tasks"][] = array("default_tasks_create_default", GetMessage("SONET_FUNCTIONALITY_CREATE_DEFAULT"), "Y", Array("checkbox"));
359}
360
361if ($bCalendar)
362{
363 $arAllOptionsGroupsBlocks["calendar"][] = array("default_calendar_create_default", GetMessage("SONET_FUNCTIONALITY_CREATE_DEFAULT"), "Y", Array("checkbox"));
364}
365
366if (IsModuleInstalled('search'))
367{
368 $arAllOptionsGroupsBlocks["search"][] = array("default_search_operation_view_group", GetMessage("SONET_SEARCH_OPERATION_VIEW_GROUP"), SONET_ROLES_USER, Array("select_group"));
369 $arAllOptionsGroupsBlocks["search"][] = array("default_search_create_default", GetMessage("SONET_FUNCTIONALITY_CREATE_DEFAULT"), "Y", Array("checkbox"));
370}
371
372$arAllOptionsGroups[] = array("work_with_closed_groups", GetMessage("SONET_WORK_WITH_CLOSED_GROUPS"), "N", Array("checkbox"));
373
375$arAllOptionsGroupsGender[] = array("default_group_picture", GetMessage("SONET_GROUP_PICTURE"), false, Array("image"));
376
378if (
379 $_SERVER['REQUEST_METHOD'] == "POST"
380 && $Update <> ''
381 && $SONET_RIGHT == "W"
383)
384{
385 $tmp_count = count($arAllOptionsCommon);
386 for ($i = 0; $i < $tmp_count; $i++)
387 {
389 $val = ${$name} ?? null;
390 if ($arAllOptionsCommon[$i][3][0] == "checkbox" && $val != "Y")
391 $val = "N";
392 elseif ($name == "livefeed_toall_rights")
393 {
394 if (
395 is_array($val)
396 && count($val) > 0
397 )
398 $val = serialize($val);
399 else
400 $val = serialize(array("G2"));
401 }
402
403 $prev_val = COption::GetOptionString("socialnetwork", $arAllOptionsCommon[$i][0], $arAllOptionsCommon[$i][2], "");
404
405 if ($arAllOptionsCommon[$i][0] == 'use_lf_fulltext_index')
406 {
407 \Bitrix\Socialnetwork\LogIndexTable::getEntity()->enableFullTextIndex("CONTENT", ($val == 'Y'));
408 }
409
410 if ($val != $prev_val)
411 {
412 if ($arAllOptionsCommon[$i][0] == 'use_lf_fulltext_index')
413 {
414 if (
415 $DB->type == 'MYSQL'
416 && $val == 'Y'
417 )
418 {
419 if (!$DB->IndexExists("b_sonet_log_index", array("CONTENT")))
420 {
421 if ($DB->Query("CREATE fulltext index IXF_SONET_LOG_INDEX on b_sonet_log_index (CONTENT)", true))
422 {
423 \Bitrix\Socialnetwork\LogIndexTable::getEntity()->enableFullTextIndex("CONTENT");
424 COption::SetOptionString("socialnetwork", $arAllOptionsCommon[$i][0], $val, $arAllOptionsCommon[$i][1], "");
425 }
426 else
427 {
428 \Bitrix\Socialnetwork\LogIndexTable::getEntity()->enableFullTextIndex("CONTENT", false);
429 $e = $APPLICATION->GetException();
430 $strWarning = GetMessage("SONET_USE_LF_FULLTEXT_INDEX_ERROR");
431 if(is_object($e))
432 {
433 $strWarning .= ": ".$e->GetString();
434 }
435 }
436 }
437 else
438 {
439 \Bitrix\Socialnetwork\LogIndexTable::getEntity()->enableFullTextIndex("CONTENT");
440 }
441 }
442 }
443 else
444 {
445 COption::SetOptionString("socialnetwork", $arAllOptionsCommon[$i][0], $val, $arAllOptionsCommon[$i][1], "");
446 }
447 }
448 }
449
450 $dbSites = CSite::GetList('', '', array("ACTIVE" => "Y"));
451
452 $bFriendsDisabledForAllSites = true;
453 $bFriendsEnabledForAnySite = false;
454 $bFilesDisabledForAllSites = true;
455 $bFilesEnabledForAnySite = false;
456 $bBlogDisabledForAllSites = true;
457 $bBlogEnabledForAnySite = false;
458 $bPhotoDisabledForAllSites = true;
459 $bPhotoEnabledForAnySite = false;
460 $bForumDisabledForAllSites = true;
461 $bForumEnabledForAnySite = false;
462 $bTasksDisabledForAllSites = true;
463 $bTasksEnabledForAnySite = false;
464 $bCalendarDisabledForAllSites = true;
465 $bCalendarEnabledForAnySite = false;
466
467 while ($arSite = $dbSites->Fetch())
468 {
469 $tmp_count = count($arAllOptions);
470 for ($i = 0; $i < $tmp_count; $i++)
471 {
472 $name = $arAllOptions[$i][0]."_".$arSite["ID"];
473 $val = ${$name} ?? null;
474 if ($arAllOptions[$i][3][0] == "checkbox" && $val != "Y")
475 $val = "N";
476
477 if ($arAllOptions[$i][3][0] == "select_fields" || $arAllOptions[$i][3][0] == "select_properties" || $arAllOptions[$i][3][0] == "select_rating")
478 if($arAllOptions[$i][3][1] == true): // multiple select
479 if (!is_array($val))
480 $val = array();
481 $val = serialize($val);
482 endif;
483
484 $prev_val = COption::GetOptionString("socialnetwork", $arAllOptions[$i][0], $arAllOptions[$i][2], $arSite["ID"]);
485
486 COption::SetOptionString("socialnetwork", $arAllOptions[$i][0], $val, $arAllOptions[$i][1], $arSite["ID"]);
487
488 if ($arAllOptions[$i][0] == "allow_frields")
489 {
490 if ($val == "Y")
491 {
492 $bFriendsDisabledForAllSites = false;
493 $bFriendsEnabledForAnySite = true;
494 }
495 }
496 }
497
498 $tmp_count = count($arAllOptionsUsers);
499 for ($i = 0; $i < $tmp_count; $i++)
500 {
501 $name = $arAllOptionsUsers[$i][0]."_".$arSite["ID"];
502 $val = ${$name} ?? null;
503 if ($arAllOptionsUsers[$i][3][0] == "checkbox" && $val != "Y")
504 $val = "N";
505 COption::SetOptionString("socialnetwork", $arAllOptionsUsers[$i][0], $val, $arAllOptionsUsers[$i][1], $arSite["ID"]);
506
507 if ($arAllOptionsUsers[$i][0] == "allow_files_user")
508 {
509 if ($val == "Y")
510 {
511 $bFilesDisabledForAllSites = false;
512 $bFilesEnabledForAnySite = true;
513 }
514 }
515
516 if ($arAllOptionsUsers[$i][0] == "allow_photo_user")
517 {
518 if ($val == "Y")
519 {
520 $bPhotoDisabledForAllSites = false;
521 $bPhotoEnabledForAnySite = true;
522 }
523 }
524
525 if ($arAllOptionsUsers[$i][0] == "allow_forum_user")
526 {
527 if ($val == "Y")
528 {
529 $bForumDisabledForAllSites = false;
530 $bForumEnabledForAnySite = true;
531 }
532 }
533
534 if ($arAllOptionsUsers[$i][0] == "allow_tasks_user")
535 {
536 if ($val == "Y")
537 {
538 $bTasksDisabledForAllSites = false;
539 $bTasksEnabledForAnySite = true;
540 }
541 }
542
543 if ($arAllOptionsUsers[$i][0] == "allow_calendar_user")
544 {
545 if ($val == "Y")
546 {
547 $bCalendarDisabledForAllSites = false;
548 $bCalendarEnabledForAnySite = true;
549 }
550 }
551 }
552
553 foreach ($arFeatures as $feature => $feature_name)
554 {
555 $tmp_count = count($arAllOptionsUsersBlocks[$feature]);
556 for ($i = 0; $i < $tmp_count; $i++)
557 {
558 $name = $arAllOptionsUsersBlocks[$feature][$i][0]."_".$arSite["ID"];
559 $val = ${$name};
560 if ($arAllOptionsUsersBlocks[$feature][$i][3][0] == "checkbox" && $val != "Y")
561 $val = "N";
562 COption::SetOptionString("socialnetwork", $arAllOptionsUsersBlocks[$feature][$i][0], $val, $arAllOptionsUsersBlocks[$feature][$i][1], $arSite["ID"]);
563 }
564 }
565
566 $arGender = array("male", "female", "unknown");
567 foreach ($arGender as $gender)
568 {
569 $tmp_count = count($arAllOptionsUsersGender[$gender]);
570 for ($i = 0; $i < $tmp_count; $i++)
571 {
572 $name = $arAllOptionsUsersGender[$gender][$i][0]."_".$arSite["ID"];
573
574 $arPICTURE = $_FILES[$name];
575 $arPICTURE["del"] = ${$name."_del"} ?? null;
576 $arPICTURE["MODULE_ID"] = "socialnetwork";
577
578 if ($old_fid = COption::GetOptionInt("socialnetwork", $arAllOptionsUsersGender[$gender][$i][0], false, $arSite["ID"]))
579 $arPICTURE["old_file"] = $old_fid;
580
581 $checkRes = CFile::CheckImageFile($arPICTURE, 0, 0, 0);
582
583 if ($checkRes == '')
584 {
585 $fid = CFile::SaveFile($arPICTURE, "socialnetwork");
586 if ($arPICTURE["del"] == "Y" || $_FILES[$name]["name"] <> '')
587 COption::SetOptionInt("socialnetwork", $arAllOptionsUsersGender[$gender][$i][0], intval($fid), $arAllOptionsUsersGender[$gender][$i][1], $arSite["ID"]);
588 }
589 else
590 {
592 }
593 }
594 }
595
596 $tmp_count = count($arAllOptionsGroups);
597 for ($i = 0; $i < $tmp_count; $i++)
598 {
599 $name = $arAllOptionsGroups[$i][0]."_".$arSite["ID"];
600 $val = ${$name} ?? null;
601 if (
602 $arAllOptionsGroups[$i][3][0] == "checkbox"
603 && $val != "Y"
604 )
605 {
606 $val = "N";
607 }
608
609 COption::SetOptionString("socialnetwork", $arAllOptionsGroups[$i][0], $val, $arAllOptionsGroups[$i][1], $arSite["ID"]);
610
611 if ($arAllOptionsUsers[$i][0] == "allow_tasks_group")
612 {
613 if ($val == "Y")
614 {
615 $bTasksDisabledForAllSites = false;
616 $bTasksEnabledForAnySite = true;
617 }
618 }
619 elseif ($arAllOptionsUsers[$i][0] == "allow_calendar_group")
620 {
621 if ($val == "Y")
622 {
623 $bCalendarDisabledForAllSites = false;
624 $bCalendarEnabledForAnySite = true;
625 }
626 }
627 }
628
629 foreach ($arFeatures as $feature => $feature_name)
630 {
631 $tmp_count = count($arAllOptionsGroupsBlocks[$feature]);
632 for ($i = 0; $i < $tmp_count; $i++)
633 {
634 $name = $arAllOptionsGroupsBlocks[$feature][$i][0]."_".$arSite["ID"];
635 $val = ${$name};
636 if ($arAllOptionsGroupsBlocks[$feature][$i][3][0] == "checkbox" && $val != "Y")
637 $val = "N";
638 COption::SetOptionString("socialnetwork", $arAllOptionsGroupsBlocks[$feature][$i][0], $val, $arAllOptionsGroupsBlocks[$feature][$i][1], $arSite["ID"]);
639 }
640 }
641
642 $tmp_count = count($arAllOptionsGroupsGender);
643 for ($i = 0; $i < $tmp_count; $i++)
644 {
645 $name = $arAllOptionsGroupsGender[$i][0]."_".$arSite["ID"];
646
647 $arPICTURE = $_FILES[$name];
648 $arPICTURE["del"] = ${$name."_del"} ?? null;
649 $arPICTURE["MODULE_ID"] = "socialnetwork";
650
651 if ($old_fid = COption::GetOptionInt("socialnetwork", $arAllOptionsGroupsGender[$i][0], false, $arSite["ID"]))
652 $arPICTURE["old_file"] = $old_fid;
653
654 $checkRes = CFile::CheckImageFile($arPICTURE, 0, 0, 0);
655
656 if ($checkRes == '')
657 {
658 $fid = CFile::SaveFile($arPICTURE, "socialnetwork");
659 if ($arPICTURE["del"] == "Y" || $_FILES[$name]["name"] <> '')
660 COption::SetOptionInt("socialnetwork", $arAllOptionsGroupsGender[$i][0], intval($fid), $arAllOptionsGroupsGender[$i][1], $arSite["ID"]);
661 }
662 else
663 {
665 }
666 }
667 }
668
669 if ($bFriendsDisabledForAllSites)
670 {
671 if (CBXFeatures::IsFeatureEnabled("Friends"))
672 {
673 CBXFeatures::SetFeatureEnabled("Friends", false, false);
674 }
675 }
676 elseif(
677 $bFriendsEnabledForAnySite
679 && !CBXFeatures::IsFeatureEnabled("Friends")
680 )
681 {
682 CBXFeatures::SetFeatureEnabled("Friends", true, false);
683 }
684
685 if ($bFilesDisabledForAllSites)
686 {
687 if (CBXFeatures::IsFeatureEnabled("PersonalFiles"))
688 {
689 CBXFeatures::SetFeatureEnabled("PersonalFiles", false, false);
690 }
691 }
692 elseif(
693 $bFilesEnabledForAnySite
694 && CBXFeatures::IsFeatureEditable("PersonalFiles")
695 && !CBXFeatures::IsFeatureEnabled("PersonalFiles")
696 )
697 {
698 CBXFeatures::SetFeatureEnabled("PersonalFiles", true, false);
699 }
700
701 if ($bBlogDisabledForAllSites)
702 {
703 if (CBXFeatures::IsFeatureEnabled("PersonalBlog"))
704 {
705 CBXFeatures::SetFeatureEnabled("PersonalBlog", false, false);
706 }
707 }
708 elseif(
709 $bBlogEnabledForAnySite
710 && CBXFeatures::IsFeatureEditable("PersonalBlog")
711 && !CBXFeatures::IsFeatureEnabled("PersonalBlog")
712 )
713 {
714 CBXFeatures::SetFeatureEnabled("PersonalBlog", true, false);
715 }
716
717 if ($bPhotoDisabledForAllSites)
718 {
719 if (CBXFeatures::IsFeatureEnabled("PersonalPhoto"))
720 {
721 CBXFeatures::SetFeatureEnabled("PersonalPhoto", false, false);
722 }
723 }
724 elseif(
725 $bPhotoEnabledForAnySite
726 && CBXFeatures::IsFeatureEditable("PersonalPhoto")
727 && !CBXFeatures::IsFeatureEnabled("PersonalPhoto")
728 )
729 {
730 CBXFeatures::SetFeatureEnabled("PersonalPhoto", true, false);
731 }
732
733 if ($bForumDisabledForAllSites)
734 {
735 if (CBXFeatures::IsFeatureEnabled("PersonalForum"))
736 {
737 CBXFeatures::SetFeatureEnabled("PersonalForum", false, false);
738 }
739 }
740 elseif(
741 $bForumEnabledForAnySite
742 && CBXFeatures::IsFeatureEditable("PersonalForum")
743 && !CBXFeatures::IsFeatureEnabled("PersonalForum")
744 )
745 {
746 CBXFeatures::SetFeatureEnabled("PersonalForum", true, false);
747 }
748
749 if ($bTasksDisabledForAllSites)
750 {
752 {
753 CBXFeatures::SetFeatureEnabled("Tasks", false, false);
754 }
755
756 }
757 elseif(
758 $bTasksEnabledForAnySite
761 )
762 {
763 CBXFeatures::SetFeatureEnabled("Tasks", true, false);
764 }
765
766 if ($bCalendarDisabledForAllSites)
767 {
768 if (CBXFeatures::IsFeatureEnabled("Calendar"))
769 {
770 CBXFeatures::SetFeatureEnabled("Calendar", false, false);
771 }
772 }
773 elseif(
774 $bCalendarEnabledForAnySite
775 && CBXFeatures::IsFeatureEditable("Calendar")
776 && !CBXFeatures::IsFeatureEnabled("Calendar")
777 )
778 {
779 CBXFeatures::SetFeatureEnabled("Calendar", true, false);
780 }
781
782 CBitrixComponent::clearComponentCache("bitrix:menu");
783}
784
785if ($strWarning <> '')
786{
788}
789
791 array("DIV" => "edit1", "TAB" => GetMessage("SONET_TAB_SET"), "ICON" => "socialnetwork_settings", "TITLE" => GetMessage("SONET_TAB_SET_ALT")),
792 array("DIV" => "edit2", "TAB" => GetMessage("SONET_TAB_RIGHTS"), "ICON" => "socialnetwork_settings", "TITLE" => GetMessage("SONET_TAB_RIGHTS_ALT")),
793);
795
797foreach ($arFeatures as $key => $value)
798{
799 $aSubTabs[] = array("DIV" => "opt_user_feature_".$key."_common", "TAB" => $value, 'TITLE' => GetMessage('SONET_SUBTAB_USER_TITLE_FEATURE').' "'.$value.'"');
800}
802
803$aSubTabs = array();
804foreach ($arFeatures as $key => $value)
805{
806 $aSubTabs[] = array("DIV" => "opt_group_feature_".$key."_common", "TAB" => $value, 'TITLE' => GetMessage('SONET_SUBTAB_GROUP_TITLE_FEATURE').' "'.$value.'"');
807}
809
811
812$dbSites = CSite::GetList('', '', array("ACTIVE" => "Y"));
813while ($arSite = $dbSites->Fetch())
814{
815 $aSiteTabs[] = array("DIV" => "opt_site_".$arSite["ID"], "TAB" => '['.$arSite["ID"].'] '.htmlspecialcharsbx($arSite["NAME"]), 'TITLE' => GetMessage('SONET_OPTIONS_FOR_SITE').' ['.$arSite["ID"].'] '.htmlspecialcharsbx($arSite["NAME"]));
816
817 $aSubTabs = array();
818 foreach ($arFeatures as $key => $value)
819 {
820 $aSubTabs[] = array(
821 "DIV" => "opt_user_feature_".$key."_".$arSite["ID"],
822 "TAB" => $value,
823 "TITLE" => GetMessage("SONET_SUBTAB_USER_TITLE_FEATURE").' "'.$value.'"',
824 "VISIBLE" => (COption::GetOptionString("socialnetwork", "allow_".$key."_user", "Y", $arSite["ID"]) == "Y")
825 );
826 }
827
828 $arChildTabControlUser[$arSite["ID"]] = new CAdminViewTabControl("childTabControlUser_".$arSite["ID"], $aSubTabs);
829
830 $aSubTabsGender = array(
831 array("DIV" => "opt_user_gender_m_".$arSite["ID"], "TAB" => GetMessage("SONET_GENDER_M"), 'TITLE' => GetMessage('SONET_SUBTAB_USER_TITLE_GENDER_M')),
832 array("DIV" => "opt_user_gender_f_".$arSite["ID"], "TAB" => GetMessage("SONET_GENDER_F"), 'TITLE' => GetMessage('SONET_SUBTAB_USER_TITLE_GENDER_F')),
833 array("DIV" => "opt_user_gender_u_".$arSite["ID"], "TAB" => GetMessage("SONET_GENDER_U"), 'TITLE' => GetMessage('SONET_SUBTAB_USER_TITLE_GENDER_U')),
834 );
835
836 $arChildTabControlUserGender[$arSite["ID"]] = new CAdminViewTabControl("childTabControlUserGender_".$arSite["ID"], $aSubTabsGender);
837
838 $aSubTabs = array();
839 foreach ($arFeatures as $key => $value)
840 {
841 $aSubTabs[] = array(
842 "DIV" => "opt_group_feature_".$key."_".$arSite["ID"],
843 "TAB" => $value,
844 "TITLE" => GetMessage('SONET_SUBTAB_GROUP_TITLE_FEATURE').' "'.$value.'"',
845 "VISIBLE" => (COption::GetOptionString("socialnetwork", "allow_".$key."_group", "Y", $arSite["ID"]) == "Y")
846 );
847 }
848 $arChildTabControlGroup[$arSite["ID"]] = new CAdminViewTabControl("childTabControlGroup_".$arSite["ID"], $aSubTabs);
849}
850
852
854 array("ID" => "all", "NAME" => GetMessage("SONET_ALL_SITES"))
855);
856$rsSites = CSite::GetList("sort", "asc", array("ACTIVE" => "Y"));
857$i = 1;
858while($arRes = $rsSites->Fetch())
859{
860 $siteList[$i]["ID"] = $arRes["ID"];
861 $siteList[$i]["NAME"] = $arRes["NAME"];
862 $i++;
863}
865
866?>
867<?
868$tabControl->Begin();
869?>
870
871<script>
872 BX.message({
873 SLToAllDel: '<?=CUtil::JSEscape(GetMessage("SONET_LOG_TOALL_DEL"))?>'
874 });
875
876 function SelectSite(id)
877 {
878 <?
879 for($i = 0; $i < $siteCount; $i++):
880 ?>
881 document.getElementById('<?= CUtil::JSEscape(htmlspecialcharsbx($siteList[$i]["ID"]));?>_Propery').style.display='none';
882 <?
883 endfor;
884 ?>
885 document.getElementById(id+'_Propery').style.display='';
886 }
887
888 function showHideTab(obTabControl, contentId)
889 {
890 if (BX('view_tab_' + contentId))
891 {
892 if (BX('view_tab_' + contentId).style.display != 'none')
893 {
894 obTabControl.DisableTab(contentId);
895 }
896 else
897 {
898 obTabControl.EnableTab(contentId);
899 }
900 }
901 }
902</script>
903
904<form method="POST" name="sonet_opt_form" action="<?echo $APPLICATION->GetCurPage()?>?mid=<?=htmlspecialcharsbx($mid)?>&lang=<?=LANGUAGE_ID?>" ENCTYPE="multipart/form-data"><?
905?><?=bitrix_sessid_post()?><?
906$tabControl->BeginNextTab();
907
908 if (count($arAllOptionsCommon) > 0)
909 {
910 $tmp_count = count($arAllOptionsCommon);
911 for ($i = 0; $i < $tmp_count; $i++):
913 $val = COption::GetOptionString("socialnetwork", $Option[0], $Option[2]);
914
915 if (
916 $Option[0] == 'use_lf_fulltext_index'
917 && $val == 'Y'
918 && !\Bitrix\Socialnetwork\LogIndexTable::getEntity()->fullTextIndexEnabled("CONTENT")
919 )
920 {
921 $val = 'N';
922 }
923
924 $type = $Option[3];
925
926 if ($type[0] != "hidden")
927 {
928 ?><tr id="<?=htmlspecialcharsbx($Option[0])?>_tr" style="display: <?=($Option[0] != "default_livefeed_toall" || COption::GetOptionString("socialnetwork", "allow_livefeed_toall", "Y") == "Y" ? "table-row" : "none")?>;">
929 <td <?=set_valign($type[0], ($type[1] ?? null))?> width="40%"><?
930
931 if ($type[0] == "checkbox")
932 echo "<label for=\"".htmlspecialcharsbx($Option[0])."\">".$Option[1]."</label>";
933 else
934 echo $Option[1];
935 ?>:</td>
936 <td width="60%"><?
937 if($type[0]=="checkbox"):
938 ?><input type="checkbox" name="<?echo htmlspecialcharsbx($Option[0])?>" id="<?echo htmlspecialcharsbx($Option[0])?>" value="Y"<?if($val=="Y")echo" checked";?>><?
939 elseif($type[0]=="text"):
940 ?><input type="text" size="<?echo $type[1]?>" value="<?echo htmlspecialcharsbx($val)?>" name="<?echo htmlspecialcharsbx($Option[0])?>"><?
941 elseif($type[0]=="textarea"):
942 ?><textarea rows="<?echo $type[1]?>" cols="<?echo $type[2]?>" name="<?echo htmlspecialcharsbx($Option[0])?>"><?echo htmlspecialcharsbx($val)?></textarea><?
943 endif;
944
945 if ($Option[0] == "allow_livefeed_toall")
946 {
947 ?><script>
948 var toAllCheckBox = BX('allow_livefeed_toall');
949 </script><?
950 }
951 elseif ($Option[0] == "default_livefeed_toall")
952 {
953 ?>
954 <script>
955 var defaultToAllCont = BX('default_livefeed_toall_tr');
956 if (toAllCheckBox && defaultToAllCont)
957 {
958 BX.bind(toAllCheckBox, 'click', BX.delegate(function(e) {
959 defaultToAllCont.style.display = (this.checked ? "" : "none");
960 }, toAllCheckBox));
961 }
962 </script>
963 <?
964 }
965 ?></td>
966 </tr><?
967 }
968 elseif ($Option[0] == "livefeed_toall_rights")
969 {
970 $arToAllRights = unserialize($val, [ 'allowed_classes' => false ]);
971 if (!$arToAllRights)
972 $arToAllRights = unserialize($Option[2], [ 'allowed_classes' => false ]);
973
974 $access = new CAccess();
975 $arNames = $access->GetNames($arToAllRights);
976
977 ?><tr id="RIGHTS_all" style="display: <?=(COption::GetOptionString("socialnetwork", "allow_livefeed_toall", "Y") == "Y" ? "table-row" : "none")?>;"><td>&nbsp;</td><td><?
978 ?><script>
979
980 var rightsCont = BX('RIGHTS_all');
981 if (toAllCheckBox && rightsCont)
982 {
983 BX.bind(toAllCheckBox, 'click', BX.delegate(function(e) {
984 rightsCont.style.display = (this.checked ? "" : "none");
985 }, toAllCheckBox));
986 }
987
988 function DeleteToAllAccessRow(ob)
989 {
990 var divNode = BX('RIGHTS_div', true);
991 var div = BX.findParent(ob, {tag: 'div', className: 'toall-right'}, divNode);
992 if (div)
993 var right = div.getAttribute('data-bx-right');
994
995 if (div && right)
996 {
997 BX.remove(div);
998 var artoAllRightsNew = [];
999
1000 for(var i = 0; i < arToAllRights.length; i++)
1001 if (arToAllRights[i] != right)
1002 artoAllRightsNew[artoAllRightsNew.length] = arToAllRights[i];
1003
1004 arToAllRights = BX.clone(artoAllRightsNew);
1005
1006 var hidden_el = BX('<?=htmlspecialcharsbx($Option[0])?>_' + right);
1007 if (hidden_el)
1008 BX.remove(hidden_el);
1009 }
1010 return false;
1011 }
1012
1013 function ShowToAllAccessPopup(val)
1014 {
1015 val = val || [];
1016
1017 BX.Access.Init({
1018 other: {
1019 disabled: false,
1020 disabled_g2: true,
1021 disabled_cr: true
1022 },
1023 groups: { disabled: true },
1024 socnetgroups: { disabled: true },
1025 extranet: { disabled: true }
1026 });
1027
1028 var startValue = {};
1029 for(var i = 0; i < val.length; i++)
1030 startValue[val[i]] = true;
1031
1032 BX.Access.SetSelected(startValue);
1033
1034 BX.Access.ShowForm({
1035 callback: function(arRights)
1036 {
1037 var divNode = BX('RIGHTS_div', true);
1038 var pr = false;
1039
1040 for(var provider in arRights)
1041 {
1042 pr = BX.Access.GetProviderName(provider);
1043 for(var right in arRights[provider])
1044 {
1045 divNode.appendChild(BX.create('div', {
1046 attrs: {
1047 'data-bx-right': right
1048 },
1049 props: {
1050 'className': 'toall-right'
1051 },
1052 children: [
1053 BX.create('span', {
1054 html: (pr.length > 0 ? pr + ': ' : '') + arRights[provider][right].name + '&nbsp;'
1055 }),
1056 BX.create('a', {
1057 attrs: {
1058 href: 'javascript:void(0);',
1059 title: BX.message('SLToAllDel')
1060 },
1061 props: {
1062 'className': 'access-delete'
1063 },
1064 events: {
1065 click: function() { DeleteToAllAccessRow(this); }
1066 }
1067 })
1068 ]
1069 }));
1070
1071 divNode.appendChild(BX.create('input', {
1072 attrs: {
1073 'type': 'hidden'
1074 },
1075 props: {
1076 'name': '<?=htmlspecialcharsbx($Option[0])?>[]',
1077 'id': '<?=htmlspecialcharsbx($Option[0])?>_' + right,
1078 'value': right
1079 }
1080 }));
1081
1082 arToAllRights[arToAllRights.length] = arRights[provider][right].id;
1083 }
1084 }
1085 }
1086 });
1087
1088 return false;
1089 }
1090 </script><?
1091
1092 ?><div id="RIGHTS_div"><?
1093 foreach($arToAllRights as $right)
1094 {
1095 ?><input type="hidden" name="<?echo htmlspecialcharsbx($Option[0])?>[]" id="<?echo htmlspecialcharsbx($Option[0]."_".$right)?>" value="<?=htmlspecialcharsbx($right)?>"><?
1096 ?><div data-bx-right="<?=htmlspecialcharsbx($right)?>" class="toall-right"><span><?=(!empty($arNames[$right]["provider"]) ? $arNames[$right]["provider"].": " : "").$arNames[$right]["name"]?>&nbsp;</span><a href="javascript:void(0);" onclick="DeleteToAllAccessRow(this);" class="access-delete" title="<?=GetMessage("SONET_LOG_TOALL_DEL")?>"></a></div><?
1097 }
1098 ?></div><?
1099 ?><script>
1100 var arToAllRights = <?=CUtil::PhpToJSObject($arToAllRights)?>;
1101 </script><?
1102
1103 ?><div style="padding-top: 5px;"><a href="javascript:void(0)" class="bx-action-href" onclick="ShowToAllAccessPopup(arToAllRights);"><?=GetMessage("SONET_LOG_TOALL_RIGHTS_ADD")?></a></div>
1104 </td></tr><?
1105 }
1106
1108
1109 ?><tr><td colspan="2">&nbsp;</td></tr><?
1110 }
1111 ?><tr>
1112 <td colspan="2"><?
1113 $arChildTabControlSite->Begin();
1114
1115 for($j = 1; $j < $siteCount; $j++)
1116 {
1117 $arChildTabControlSite->BeginNextTab();
1118 ?><table cellspacing="7" cellpadding="0" border="0" width="100%"><?
1119 $tmp_count = count($arAllOptions);
1120 for ($i = 0; $i < $tmp_count; $i++)
1121 {
1123 $val = COption::GetOptionString("socialnetwork", $Option[0], $Option[2], $siteList[$j]["ID"]);
1124
1125 if ($Option[0] == "allow_frields")
1126 {
1127 $bAllowFriends = ($val == "Y");
1128 }
1129
1130 $type = $Option[3];
1131
1132 if (in_array($type[0], array("select_fields", "select_properties", "select_rating")))
1133 {
1134 $val = ($type[1] == true ? unserialize($val, [ 'allowed_classes' => false ]) : array($val)); // multiple select
1135 }
1136 ?><tr>
1137 <td <?=set_valign($type[0], ($type[1] ?? null))?> width="40%" align="right"><?
1138 if ($type[0]=="checkbox")
1139 {
1140 echo "<label for=\"".htmlspecialcharsbx($Option[0]."_".$siteList[$j]["ID"])."\">".$Option[1]."</label>";
1141 }
1142 else
1143 {
1144 echo $Option[1];
1145 }
1146 ?>:</td>
1147 <td width="60%" align="left">
1148 <?if($type[0]=="checkbox"):?>
1149 <input type="checkbox" name="<?echo htmlspecialcharsbx($Option[0]."_".$siteList[$j]["ID"])?>" id="<?echo htmlspecialcharsbx($Option[0]."_".$siteList[$j]["ID"])?>" value="Y"<?if($val=="Y")echo" checked";?>>
1150 <?elseif($type[0]=="text"):?>
1151 <input type="text" size="<?echo $type[1]?>" value="<?echo htmlspecialcharsbx($val)?>" name="<?echo htmlspecialcharsbx($Option[0]."_".$siteList[$j]["ID"])?>">
1152 <?elseif($type[0]=="textarea"):?>
1153 <textarea rows="<?echo $type[1]?>" cols="<?echo $type[2]?>" name="<?echo htmlspecialcharsbx($Option[0]."_".$siteList[$j]["ID"])?>"><?echo htmlspecialcharsbx($val)?></textarea>
1154 <?elseif($type[0]=="select_fields"):?>
1155 <select <?=($type[1] == true ? "multiple" : "")?> size="<?echo $type[2]?>" name="<?echo htmlspecialcharsbx($Option[0]."_".$siteList[$j]["ID"])?><?=($type[1] == true ? "[]" : "")?>">
1156 <? foreach ($arTooltipFields as $key => $value):
1157 ?><option value="<?=htmlspecialcharsbx($key)?>" <?=(in_array($key, $val) ? "selected" : "")?>><?=htmlspecialcharsEx($value)?></option><?
1158 endforeach; ?>
1159 </select>
1160 <?elseif($type[0]=="select_properties"):?>
1161 <select <?=($type[1] == true ? "multiple" : "")?> size="<?echo $type[2]?>" name="<?echo htmlspecialcharsbx($Option[0]."_".$siteList[$j]["ID"])?><?=($type[1] == true ? "[]" : "")?>">
1162 <? foreach ($arTooltipProperties as $key => $value):
1163 ?><option value="<?=htmlspecialcharsbx($key)?>" <?=(in_array($key, $val) ? "selected" : "")?>><?=htmlspecialcharsEx($value)?></option><?
1164 endforeach; ?>
1165 </select>
1166 <?elseif($type[0]=="select_rating"):?>
1167 <select <?=($type[1] == true ? "multiple" : "")?> size="<?echo $type[2]?>" name="<?echo htmlspecialcharsbx($Option[0]."_".$siteList[$j]["ID"])?><?=($type[1] == true ? "[]" : "")?>">
1168 <? foreach ($arRatings as $key => $value):
1169 ?><option value="<?=$key?>" <?=(in_array($key, $val) ? "selected" : "")?>><?=$value?></option><?
1170 endforeach; ?>
1171 </select>
1172 <?endif?>
1173 </td>
1174 </tr><?
1175 }
1176 ?><tr class="heading">
1177 <td colspan="2"><?=GetMessage("SONET_4_USERS")?></td>
1178 </tr><?
1179 $tmp_count = count($arAllOptionsUsers);
1180 for ($i = 0; $i < $tmp_count; $i++)
1181 {
1183
1184 $val = COption::GetOptionString("socialnetwork", $Option[0], $Option[2], $siteList[$j]["ID"]);
1185 $type = $Option[3];
1186 ?><tr>
1187 <td <?=set_valign($type[0], ($type[1] ?? null))?> width="40%" align="right"><?
1188 if ($type[0]=="checkbox")
1189 {
1190 echo "<label for=\"".htmlspecialcharsbx($Option[0]."_".$siteList[$j]["ID"])."\">".$Option[1]."</label>";
1191 }
1192 else
1193 {
1194 echo $Option[1];
1195 }
1196 ?>:</td>
1197 <td width="60%" align="left"><?
1198 if($type[0]=="checkbox")
1199 {
1200 ?><input type="checkbox" name="<?echo htmlspecialcharsbx($Option[0]."_".$siteList[$j]["ID"])?>" id="<?echo htmlspecialcharsbx($Option[0]."_".$siteList[$j]["ID"])?>" value="Y"<?=($val == "Y" ? " checked" : "")?> <?=(isset($Option[4]) && $Option[4] == 'showHideTab' ? ' onclick="showHideTab(childTabControlUser_'.$siteList[$j]["ID"].', \''.$Option[5].'_'.$siteList[$j]["ID"].'\');"' : '')?>><?
1201 }
1202 elseif($type[0]=="text")
1203 {
1204 ?><input type="text" size="<?echo $type[1]?>" value="<?echo htmlspecialcharsbx($val)?>" name="<?echo htmlspecialcharsbx($Option[0]."_".$siteList[$j]["ID"])?>"><?
1205 }
1206 elseif($type[0]=="textarea")
1207 {
1208 ?><textarea rows="<?echo $type[1]?>" cols="<?echo $type[2]?>" name="<?echo htmlspecialcharsbx($Option[0]."_".$siteList[$j]["ID"])?>"><?echo htmlspecialcharsbx($val)?></textarea><?
1209 }
1210 elseif($type[0]=="select_user_perm")
1211 {
1212 ?><select name="<?echo htmlspecialcharsbx($Option[0]."_".$siteList[$j]["ID"])?>"><?
1213 if (!$bAllowFriends)
1214 {
1215 if (in_array($val, array(SONET_RELATIONS_TYPE_FRIENDS, SONET_RELATIONS_TYPE_FRIENDS2)))
1216 {
1217 $val = SONET_RELATIONS_TYPE_NONE;
1218 }
1219 }
1220 elseif ($val == SONET_RELATIONS_TYPE_FRIENDS2)
1221 {
1222 $val = SONET_RELATIONS_TYPE_FRIENDS;
1223 }
1224
1225 foreach ($arUserPermsVar as $key => $value)
1226 {
1227 if (
1228 !$bAllowFriends
1229 && $key == SONET_RELATIONS_TYPE_FRIENDS
1230 )
1231 {
1232 continue;
1233 }
1234 ?><option value="<?=$key?>" <?=($key == $val ? "selected" : "")?>><?=$value?></option><?
1235 }
1236 ?></select><?
1237 }
1238 ?></td>
1239 </tr><?
1240 }
1241 ?><tr>
1242 <td colspan="2"><?
1243 $arChildTabControlUser[$siteList[$j]["ID"]]->Begin();
1244
1245 foreach ($arAllOptionsUsersBlocks as $feature => $arAllOptionsUsersFeature):
1246 $arChildTabControlUser[$siteList[$j]["ID"]]->BeginNextTab();
1247 ?><table cellspacing="7" cellpadding="0" border="0" width="100%"><?
1248 $tmp_count = count($arAllOptionsUsersFeature);
1249 for ($i = 0; $i < $tmp_count; $i++):
1250 $Option = $arAllOptionsUsersFeature[$i];
1251
1252 if (count($Option) > 0)
1253 {
1254 $val = COption::GetOptionString("socialnetwork", $Option[0], $Option[2], $siteList[$j]["ID"]);
1255 $type = $Option[3];
1256 ?>
1257 <tr>
1258 <td <?=set_valign($type[0], ($type[1] ?? null))?> width="40%" align="right"><?
1259 if ($type[0]=="checkbox")
1260 echo "<label for=\"".htmlspecialcharsbx($Option[0]."_".$siteList[$j]["ID"])."\">".$Option[1]."</label>";
1261 else
1262 echo $Option[1];
1263 ?>:</td>
1264 <td width="60%">
1265 <?if($type[0]=="checkbox"):?>
1266 <input type="checkbox" name="<?echo htmlspecialcharsbx($Option[0]."_".$siteList[$j]["ID"])?>" id="<?echo htmlspecialcharsbx($Option[0]."_".$siteList[$j]["ID"])?>" value="Y"<?if($val=="Y")echo" checked";?>>
1267 <?elseif($type[0]=="text"):?>
1268 <input type="text" size="<?echo $type[1]?>" value="<?echo htmlspecialcharsbx($val)?>" name="<?echo htmlspecialcharsbx($Option[0]."_".$siteList[$j]["ID"])?>">
1269 <?elseif($type[0]=="textarea"):?>
1270 <textarea rows="<?echo $type[1]?>" cols="<?echo $type[2]?>" name="<?echo htmlspecialcharsbx($Option[0]."_".$siteList[$j]["ID"])?>"><?echo htmlspecialcharsbx($val)?></textarea>
1271 <?elseif($type[0]=="select_user"):?>
1272 <select name="<?echo htmlspecialcharsbx($Option[0]."_".$siteList[$j]["ID"])?>">
1273 <?foreach ($arUserPermsVar as $permvar_key => $permvar_value)
1274 {
1275 preg_match('/^default_'.$feature.'_operation_([A-Za-z_]+)_user$/i', $Option[0], $matches);
1276 $operation = $matches[1];
1277
1278 if (!$bAllowFriends)
1279 {
1281 {
1283 }
1284 }
1286 {
1288 }
1289
1290 if (
1291 is_array($arSocNetFeaturesSettings[$feature]["operations"][$operation])
1292 && (!array_key_exists("restricted", $arSocNetFeaturesSettings[$feature]["operations"][$operation])
1293 || !in_array($permvar_key, $arSocNetFeaturesSettings[$feature]["operations"][$operation]["restricted"][SONET_ENTITY_USER]))
1294 )
1295 {
1296 if (
1297 !$bAllowFriends
1298 && $permvar_key == SONET_RELATIONS_TYPE_FRIENDS
1299 )
1300 {
1301 continue;
1302 }
1303 ?><option value="<?= $permvar_key ?>"<?= ($permvar_key == $val) ? " selected" : "" ?>><?= $permvar_value ?></option><?
1304 }
1305 }
1306 ?></select>
1307 <?endif?>
1308 </td>
1309 </tr>
1310 <?
1311 }
1312 endfor;
1313 ?></table><?
1314 endforeach;
1315
1316 $arChildTabControlUser[$siteList[$j]["ID"]]->End();
1317 ?></td>
1318 </tr>
1319 <tr>
1320 <td colspan="2"><?
1321 $arChildTabControlUserGender[$siteList[$j]["ID"]]->Begin();
1322
1323 foreach ($arAllOptionsUsersGender as $gender => $arOptionUserGender):
1324 $arChildTabControlUserGender[$siteList[$j]["ID"]]->BeginNextTab();
1325 ?><table cellspacing="7" cellpadding="0" border="0" width="100%"><?
1326 $tmp_count = count($arOptionUserGender);
1327 for ($i = 0; $i < $tmp_count; $i++):
1328 $Option = $arOptionUserGender[$i];
1329
1330 if (count($Option) > 0)
1331 {
1332 $val = COption::GetOptionString("socialnetwork", $Option[0], $Option[2], $siteList[$j]["ID"]);
1333 $type = $Option[3];
1334 ?><tr>
1335 <td <?=set_valign($type[0], ($type[1] ?? null))?> width="40%" align="right"><?
1336 echo $Option[1];
1337 ?>:</td>
1338 <td width="60%">
1339 <?if($type[0]=="image"):?>
1340 <?echo CFile::InputFile(htmlspecialcharsbx($Option[0]."_".$siteList[$j]["ID"]), 20, $val);?><br>
1341 <?echo CFile::ShowImage($val, 200, 200, "border=0", "", true)?>
1342 <?endif?>
1343 </td>
1344 </tr>
1345 <?
1346 }
1347 endfor;
1348 ?></table><?
1349 endforeach;
1350 $arChildTabControlUserGender[$siteList[$j]["ID"]]->End();
1351 ?></td>
1352 </tr>
1353 <tr class="heading">
1354 <td colspan="2"><?=GetMessage("SONET_4_GROUPS")?></td>
1355 </tr><?
1356 $tmp_count = count($arAllOptionsGroups);
1357 for ($i = 0; $i < $tmp_count; $i++)
1358 {
1360 $val = COption::GetOptionString("socialnetwork", $Option[0], $Option[2], $siteList[$j]["ID"]);
1361 $type = $Option[3];
1362 ?><tr>
1363 <td <?=set_valign($type[0], ($type[1] ?? null))?> width="40%"><?
1364 if ($type[0]=="checkbox")
1365 {
1366 echo "<label for=\"".htmlspecialcharsbx($Option[0]."_".$siteList[$j]["ID"])."\">".$Option[1]."</label>";
1367 }
1368 else
1369 {
1370 echo $Option[1];
1371 }
1372 ?>:</td>
1373 <td width="60%"><?
1374 if($type[0]=="checkbox")
1375 {
1376 ?><input type="checkbox" name="<?echo htmlspecialcharsbx($Option[0]."_".$siteList[$j]["ID"])?>" id="<?echo htmlspecialcharsbx($Option[0]."_".$siteList[$j]["ID"])?>" value="Y"<?=($val == "Y" ? " checked" : "")?> <?=(isset($Option[4]) && $Option[4] == 'showHideTab' ? ' onclick="showHideTab(childTabControlGroup_'.$siteList[$j]["ID"].', \''.$Option[5].'_'.$siteList[$j]["ID"].'\');"' : '')?>><?
1377 }
1378 elseif($type[0]=="text")
1379 {
1380 ?><input type="text" size="<?echo $type[1]?>" value="<?echo htmlspecialcharsbx($val)?>" name="<?echo htmlspecialcharsbx($Option[0]."_".$siteList[$j]["ID"])?>"><?
1381 }
1382 elseif($type[0]=="textarea")
1383 {
1384 ?><textarea rows="<?echo $type[1]?>" cols="<?echo $type[2]?>" name="<?echo htmlspecialcharsbx($Option[0]."_".$siteList[$j]["ID"])?>"><?echo htmlspecialcharsbx($val)?></textarea><?
1385 }
1386 ?></td>
1387 </tr><?
1388 }
1389 ?><tr>
1390 <td colspan="2"><?
1391 $arChildTabControlGroup[$siteList[$j]["ID"]]->Begin();
1392
1393 foreach ($arAllOptionsGroupsBlocks as $feature => $arAllOptionsGroupsFeature):
1394 $arChildTabControlGroup[$siteList[$j]["ID"]]->BeginNextTab();
1395 ?><table cellspacing="7" cellpadding="0" border="0" width="100%"><?
1396 $tmp_count = count($arAllOptionsGroupsFeature);
1397 for ($i = 0; $i < $tmp_count; $i++):
1398 $Option = $arAllOptionsGroupsFeature[$i];
1399
1400 if (count($Option) > 0)
1401 {
1402 $val = COption::GetOptionString("socialnetwork", $Option[0], $Option[2], $siteList[$j]["ID"]);
1403 $type = $Option[3];
1404 ?><tr>
1405 <td <?=set_valign($type[0], ($type[1] ?? null))?> width="40%" align="right"><?
1406 if ($type[0]=="checkbox")
1407 echo "<label for=\"".htmlspecialcharsbx($Option[0]."_".$siteList[$j]["ID"])."\">".$Option[1]."</label>";
1408 else
1409 echo $Option[1];
1410 ?>:</td>
1411 <td width="60%">
1412 <?if($type[0]=="checkbox"):?>
1413 <input type="checkbox" name="<?echo htmlspecialcharsbx($Option[0]."_".$siteList[$j]["ID"])?>" id="<?echo htmlspecialcharsbx($Option[0]."_".$siteList[$j]["ID"])?>" value="Y"<?if($val=="Y")echo" checked";?>>
1414 <?elseif($type[0]=="hidden"):?>
1415 <input type="hidden" value="<?echo htmlspecialcharsbx($val)?>" name="<?echo htmlspecialcharsbx($Option[0]."_".$siteList[$j]["ID"])?>">
1416 <?elseif($type[0]=="text"):?>
1417 <input type="text" size="<?echo $type[1]?>" value="<?echo htmlspecialcharsbx($val)?>" name="<?echo htmlspecialcharsbx($Option[0]."_".$siteList[$j]["ID"])?>">
1418 <?elseif($type[0]=="textarea"):?>
1419 <textarea rows="<?echo $type[1]?>" cols="<?echo $type[2]?>" name="<?echo htmlspecialcharsbx($Option[0]."_".$siteList[$j]["ID"])?>"><?echo htmlspecialcharsbx($val)?></textarea>
1420 <?elseif($type[0]=="select_group"):?>
1421 <select name="<?echo htmlspecialcharsbx($Option[0]."_".$siteList[$j]["ID"])?>">
1422 <?foreach ($arGroupPermsVar as $permvar_key => $permvar_value):
1423 preg_match('/^default_'.$feature.'_operation_([A-Za-z_]+)_group$/i', $Option[0], $matches);
1424 $operation = $matches[1];
1425
1426 if (
1427 is_array($arSocNetFeaturesSettings[$feature]["operations"][$operation])
1428 && (!array_key_exists("restricted", $arSocNetFeaturesSettings[$feature]["operations"][$operation])
1429 || !in_array($permvar_key, $arSocNetFeaturesSettings[$feature]["operations"][$operation]["restricted"][SONET_ENTITY_GROUP]))
1430 ):
1431 ?><option value="<?= $permvar_key ?>"<?= ($permvar_key == $val) ? " selected" : "" ?>><?= $permvar_value ?></option><?
1432 endif;
1433 endforeach;?>
1434 </select><?
1435 endif;
1436 ?></td>
1437 </tr><?
1438 }
1439 endfor;
1440 ?></table><?
1441 endforeach;
1442 $arChildTabControlGroup[$siteList[$j]["ID"]]->End();
1443 ?></td>
1444 </tr><?
1445 $tmp_count = count($arAllOptionsGroupsGender);
1446 for ($i = 0; $i < $tmp_count; $i++):
1448
1449 $val = COption::GetOptionString("socialnetwork", $Option[0], $Option[2], $siteList[$j]["ID"]);
1450 $type = $Option[3];
1451 ?><tr>
1452 <td <?=set_valign($type[0], ($type[1] ?? null))?> width="40%" align="right"><?
1453 if ($type[0]=="checkbox")
1454 echo "<label for=\"".htmlspecialcharsbx($Option[0]."_".$siteList[$j]["ID"])."\">".$Option[1]."</label>";
1455 else
1456 echo $Option[1];
1457 ?>:</td>
1458 <td width="60%" align="left">
1459 <?if($type[0]=="image"):?>
1460 <?echo CFile::InputFile(htmlspecialcharsbx($Option[0]."_".$siteList[$j]["ID"]), 20, $val);?><br>
1461 <?echo CFile::ShowImage($val, 200, 200, "border=0", "", true)?>
1462 <?endif?>
1463 </td>
1464 </tr><?
1465 endfor;
1466 ?></table><?
1467 }
1469 ?></td>
1470 </tr><?
1471unset($value);
1472$tabControl->BeginNextTab();?>
1473<?require_once($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/admin/group_rights.php");?>
1474<?$tabControl->Buttons();?>
1475<script>
1476function RestoreDefaults()
1477{
1478 if (confirm('<?echo AddSlashes(GetMessage("MAIN_HINT_RESTORE_DEFAULTS_WARNING"))?>'))
1479 window.location = "<?echo $APPLICATION->GetCurPage()?>?RestoreDefaults=Y&lang=<?echo LANG?>&mid=<?echo urlencode($mid)."&".bitrix_sessid_get();?>";
1480}
1481</script>
1482
1483<input type="submit" <?if ($SONET_RIGHT<"W") echo "disabled" ?> name="Update" value="<?echo GetMessage("MAIN_SAVE")?>" class="adm-btn-save">
1484<input type="hidden" name="Update" value="Y">
1485<input type="reset" name="reset" value="<?echo GetMessage("MAIN_RESET")?>">
1486<input type="button" <?if ($SONET_RIGHT<"W") echo "disabled" ?> title="<?echo GetMessage("MAIN_HINT_RESTORE_DEFAULTS")?>" OnClick="RestoreDefaults();" value="<?echo GetMessage("MAIN_RESTORE_DEFAULTS")?>">
1487<?$tabControl->End();?>
1488</form>
1489<?endif;?>
return select
Определения access_edit.php:440
<?=$taskID?> selected
Определения access_edit.php:348
$type
Определения options.php:106
$dbSites
Определения options.php:14
$aSubTabs
Определения options.php:16
$db_res
Определения options_user_settings.php:8
global $APPLICATION
Определения include.php:80
$module_id
Определения options.php:6
if($canUseYandexMarket) $strWarning
Определения options.php:74
if($_SERVER $arAllOptions['REQUEST_METHOD']=='GET' &&!empty($_REQUEST['RestoreDefaults']) &&! $bReadOnly &&check_bitrix_sessid())
Определения options.php:63
$bIntranet
Определения checklist_structure.php:347
static ShowMessage($message)
Определения admin_lib.php:2351
static GetList($by='c_sort', $order='asc', $arFilter=[], $SHOW_USERS_AMOUNT="N")
Определения group.php:136
static GetOptionString($module_id, $name, $def="", $site=false, $bExactSite=false)
Определения option.php:8
static IsFeatureEnabled($_1488512778)
Определения include.php:116
static IsFeatureEditable($_1488512778)
Определения include.php:116
static SetFeatureEnabled($_1488512778, $_1436492502=true)
Определения include.php:116
static ShowImage($strImage, $iMaxW=0, $iMaxH=0, $sParams=null, $strImageUrl="", $bPopup=false, $sPopupTitle=false, $iSizeWHTTP=0, $iSizeHHTTP=0, $strImageUrlTemplate="")
Определения file.php:1805
static InputFile($strFieldName, $int_field_size, $strImageID, $strImageStorePath=false, $int_max_file_size=0, $strFileType="IMAGE", $field_file="class=typefile", $description_size=0, $field_text="class=typeinput", $field_checkbox="", $bShowNotes=true, $bShowFilePath=true)
Определения file.php:1379
static Init($arExt=array(), $bReturn=false)
Определения jscore.php:66
static GetList($arSort=[], $arFilter=[])
Определения ratings.php:94
static PhpToJSObject($arData, $bWS=false, $bSkipTilda=false, $bExtType=false)
Определения util.php:66
$right
Определения options.php:8
& nbsp
Определения epilog_main_admin.php:38
bx popup label bx width30 PAGE_NEW_MENU_NAME text width
Определения file_new.php:677
</td ></tr ></table ></td ></tr >< tr >< td class="bx-popup-label bx-width30"><?=GetMessage("PAGE_NEW_TAGS")?> array( $site)
Определения file_new.php:804
$rsSites
Определения options.php:477
$res
Определения filter_act.php:7
$zr
Определения options.php:5
Form FILTER_ACTION disabled
Определения options.php:358
foreach( $arCellTemplates as $key=> $value) foreach( $arCellTemplates as $key=> $value)
$Update
Определения options.php:212
$RestoreDefaults
Определения options.php:55
$_SERVER["DOCUMENT_ROOT"]
Определения cron_frame.php:9
global $DB
Определения cron_frame.php:29
$tabControl
Определения csv_new_setup.php:244
$aTabs
Определения csv_new_setup.php:238
endif
Определения csv_new_setup.php:990
$z
Определения options.php:31
if(!is_array($deviceNotifyCodes)) $access
Определения options.php:174
$arNames
Определения options.php:175
bitrix_sessid_post($varname='sessid', $returnInvocations=false)
Определения tools.php:4700
check_bitrix_sessid($varname='sessid')
Определения tools.php:4686
IsModuleInstalled($module_id)
Определения tools.php:5301
htmlspecialcharsEx($str)
Определения tools.php:2685
htmlspecialcharsbx($string, $flags=ENT_COMPAT, $doubleEncode=true)
Определения tools.php:2701
IncludeModuleLangFile($filepath, $lang=false, $bReturnArray=false)
Определения tools.php:3778
GetMessage($name, $aReplace=null)
Определения tools.php:3397
$name
Определения menu_edit.php:35
$value
Определения Param.php:39
global_menu_<?echo $menu["menu_id"]?> adm main menu item icon adm main menu item text text adm main menu hover adm submenu menucontainer menu_id menu_id items_id items_id desktop menu_id block none adm global submenu<?=($subMenuDisplay=="block" ? " adm-global-submenu-active" :"")?> global_submenu_<?echo $menu["menu_id"]?> text MAIN_PR_ADMIN_FAV items adm submenu items wrap adm submenu items stretch wrap BX adminMenu itemsStretchScroll()"> <table class if (!empty( $menu["items"])) elseif ( $menu[ 'menu_id']=='desktop') if ( $menu[ 'menu_id']=='desktop') endforeach
Определения prolog_main_admin.php:255
if( $daysToExpire >=0 &&$daysToExpire< 60 elseif)( $daysToExpire< 0)
Определения prolog_main_admin.php:393
<? endif;?> window document title
Определения prolog_main_admin.php:76
if(empty($signedUserToken)) $key
Определения quickway.php:257
$i
Определения factura.php:643
font style
Определения invoice.php:442
font size
Определения invoice.php:442
</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
endfor
Определения template.php:569
text align
Определения template.php:556
$siteCount
Определения options.php:69
$siteList
Определения options.php:47
$val
Определения options.php:1793
$matches
Определения index.php:22
margin right
Определения options_user_settings.php:273
const SONET_ROLES_USER
Определения include.php:31
const SONET_ENTITY_GROUP
Определения include.php:117
const SONET_ROLES_AUTHORIZED
Определения include.php:36
const SONET_ENTITY_USER
Определения include.php:118
const SONET_ROLES_MODERATOR
Определения include.php:30
const SONET_RELATIONS_TYPE_FRIENDS
Определения include.php:41
const SONET_ROLES_ALL
Определения include.php:35
const SONET_RELATIONS_TYPE_FRIENDS2
Определения include.php:40
const SONET_RELATIONS_TYPE_ALL
Определения include.php:38
const SONET_RELATIONS_TYPE_AUTHORIZED
Определения include.php:39
const SONET_RELATIONS_TYPE_NONE
Определения include.php:42
if($bIntranet) if( $bCalendar) if(IsModuleInstalled('search')) $arAllOptionsGroupsBlocks
Определения options.php:325
if(!empty($arRes)) $arRatings
Определения options.php:114
if($bIntranet) if( $bCalendar) if(IsModuleInstalled('search')) $arAllOptionsUsersBlocks
Определения options.php:256
$aSiteTabs
Определения options.php:810
if($bIntranet) $bCalendar
Определения options.php:167
$arUserPermsVar
Определения options.php:37
$arTooltipProperties
Определения options.php:105
foreach($arFeatures as $key=> $value) $arChildTabControlGroupCommon
Определения options.php:808
$arGroupPermsVar
Определения options.php:44
$arAllOptionsGroupsGender
Определения options.php:374
$strWarning
Определения options.php:377
$arAllOptionsGroups
Определения options.php:303
if( $_SERVER $arSocNetFeaturesSettings['REQUEST_METHOD']=="GET" &&($RestoreDefaults ?? null)<> '' && $SONET_RIGHT=="W" &&check_bitrix_sessid())
Определения options.php:35
$SONET_RIGHT
Определения options.php:11
if($bCalendar) if(IsModuleInstalled( 'search')) if(!function_exists('set_valign')) $arAllOptionsCommon
Определения options.php:200
$arAllOptionsUsers
Определения options.php:232
$arFeatures
Определения options.php:54
$arRes
Определения options.php:104
showHideTab(obTabControl, contentId)
Определения options.php:888
if(!IsModuleInstalled("intranet")) if(IsModuleInstalled("im")) $fulltextIndexExists
Определения options.php:218
if($bIntranet) if( $bCalendar) if(IsModuleInstalled('search')) $arAllOptionsUsersGender
Определения options.php:298
$arTooltipPropertiesDefault
Определения options.php:160
$arTooltipFields
Определения options.php:60
foreach($arFeatures as $key=> $value) $arChildTabControlUserCommon
Определения options.php:801
$arTooltipFieldsDefault
Определения options.php:159
while($arSite=$dbSites->Fetch()) $arChildTabControlSite
Определения options.php:851
else $Option[0]
Определения options.php:387
$GLOBALS['_____370096793']
Определения update_client.php:1
case callback
Определения wrapper_popup.php:31
adm detail iblock types adm detail iblock list tr_SITE_ID display
Определения yandex_setup.php:388