%PDF- %PDF-
Direktori : /proc/self/root/home/bitrix/www/bitrix/components/bitrix/socialnetwork_group/ |
Current File : //proc/self/root/home/bitrix/www/bitrix/components/bitrix/socialnetwork_group/component.php |
<?if(!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED!==true)die(); /** @var CBitrixComponent $this */ /** @var array $arParams */ /** @var array $arResult */ /** @var string $componentPath */ /** @var string $componentName */ /** @var string $componentTemplate */ /** @global CDatabase $DB */ /** @global CUser $USER */ /** @global CMain $APPLICATION */ if (!CModule::IncludeModule("socialnetwork")) { ShowError(GetMessage("SONET_MODULE_NOT_INSTALL")); return; } if (!CBXFeatures::IsFeatureEnabled("Workgroups")) { ShowError(GetMessage("SONET_WORKGROUPS_FEATURE_DISABLED")); return; } $arDefaultUrlTemplates404 = array( "index" => "index.php", "group_reindex" => "group_reindex.php", "group_content_search" => "group/#group_id#/search/", "group_request_user" => "group/#group_id#/user/#user_id#/request/", "group_create" => "create/", "search" => "search.php", "group" => "group/#group_id#/", "group_card" => "group/#group_id#/card/", "group_general" => "group/#group_id#/general/", "group_edit" => "group/#group_id#/edit/", "group_invite" => "group/#group_id#/invite/", "group_tempate/edit" => "group/#group_id#/template/edit/", "group_requests" => "group/#group_id#/requests/", "group_requests_out" => "group/#group_id#/requests_out/", "group_mods" => "group/#group_id#/moderators/", "group_users" => "group/#group_id#/users/", "group_ban" => "group/#group_id#/ban/", "group_delete" => "group/#group_id#/delete/", "group_features" => "group/#group_id#/features/", "group_subscribe" => "group/#group_id#/subscribe/", "group_list" => "group/", "group_search" => "group/search/", "group_search_subject" => "group/search/#subject_id#/", "user_leave_group" => "group/#group_id#/user_leave/", "user_request_group" => "group/#group_id#/user_request/", "group_request_search" => "group/#group_id#/user_search/", "message_to_group" => "group/#group_id#/chat/", "group_photo" => "group/#group_id#/photo/", "group_photo_gallery" => "group/#group_id#/photo/gallery/", "group_photo_gallery_edit" => "group/#group_id#/photo/gallery/action/#action#/", "group_photo_galleries" => "group/#group_id#/photo/galleries/", "group_photo_section" => "group/#group_id#/photo/album/#section_id#/", "group_photo_section_edit" => "group/#group_id#/photo/album/#section_id#/action/#action#/", "group_photo_section_edit_icon" => "group/#group_id#/photo/album/#section_id#/icon/action/#action#/", "group_photo_element_upload" => "group/#group_id#/photo/photo/#section_id#/action/upload/", "group_photo_element" => "group/#group_id#/photo/photo/#section_id#/#element_id#/", "group_photo_element_edit" => "group/#group_id#/photo/photo/#section_id#/#element_id#/action/#action#/", "group_photo_element_slide_show" => "group/#group_id#/photo/photo/#section_id#/#element_id#/slide_show/", "group_photofull_gallery" => "group/#group_id#/photo/gallery/#user_alias#/", "group_photofull_gallery_edit" => "group/#group_id#/photo/gallery/#user_alias#/action/#action#/", "group_photofull_section" => "group/#group_id#/photo/album/#user_alias#/#section_id#/", "group_photofull_section_edit" => "group/#group_id#/photo/album/#user_alias#/#section_id#/action/#action#/", "group_photofull_section_edit_icon" => "group/#group_id#/photo/album/#user_alias#/#section_id#/icon/action/#action#/", "group_photofull_element_upload" => "group/#group_id#/photo/photo/#user_alias#/#section_id#/action/upload/", "group_photofull_element" => "group/#group_id#/photo/photo/#user_alias#/#section_id#/#element_id#/", "group_photofull_element_edit" => "group/#group_id#/photo/photo/#user_alias#/#section_id#/#element_id#/action/#action#/", "group_photofull_element_slide_show" => "group/#group_id#/photo/photo/#user_alias#/#section_id#/#element_id#/slide_show/", "group_calendar" => "group/#group_id#/calendar/", "group_files" => "group/#group_id#/files/lib/#path#/", "group_files_short" => "folder/view/#section_id#/#element_id#/#element_name#", "group_files_section_edit" => "group/#group_id#/files/folder/edit/#section_id#/#action#/", "group_files_element" => "group/#group_id#/files/element/view/#element_id#/", "group_files_element_comment" => "group/#group_id#/files/element/comment/#topic_id#/#message_id#/", "group_files_element_edit" => "group/#group_id#/files/element/edit/#element_id#/#action#/", "group_files_element_file" => "", "group_files_element_history" => "group/#group_id#/files/element/history/#element_id#/", "group_files_element_history_get" => "group/#group_id#/files/element/historyget/#element_id#/#element_name#", "group_files_element_version" => "group/#group_id#/files/element/version/#action#/#element_id#/", "group_files_element_versions" => "group/#group_id#/files/element/versions/#element_id#/", "group_files_element_upload" => "group/#group_id#/files/element/upload/#section_id#/", "group_files_help" => "group/#group_id#/files/help/", "group_files_connector" => "group/#group_id#/files/connector/", "group_files_webdav_bizproc_history" => "group/#group_id#/files/bizproc/history/#element_id#/", "group_files_webdav_bizproc_history_get" => "group/#group_id#/files/bizproc/historyget/#element_id#/#id#/#element_name#", "group_files_webdav_bizproc_log" => "group/#group_id#/files/bizproc/log/#element_id#/#id#/", "group_files_webdav_bizproc_view" => "group/#group_id#/files/bizproc/bizproc/#element_id#/", "group_files_webdav_bizproc_workflow_admin" => "group/#group_id#/files/bizproc/admin/", "group_files_webdav_bizproc_workflow_edit" => "group/#group_id#/files/bizproc/edit/#id#/", "group_files_webdav_start_bizproc" => "group/#group_id#/files/bizproc/start/#element_id#/", "group_files_webdav_task_list" => "group/#group_id#/files/bizproc/task/list/", "group_files_webdav_task" => "group/#group_id#/files/bizproc/task/read/#id#/", "group_blog" => "group/#group_id#/blog/", "group_blog_post_edit" => "group/#group_id#/blog/edit/#post_id#/", "group_blog_rss" => "group/#group_id#/blog/rss/#type#/", "group_blog_post_rss" => "group/#group_id#/blog/rss/#type#/#post_id#/", "group_blog_draft" => "group/#group_id#/blog/draft/", "group_blog_moderation" => "group/#group_id#/blog/moderation/", "group_blog_post" => "group/#group_id#/blog/#post_id#/", "group_forum" => "group/#group_id#/forum/", "group_forum_topic" => "group/#group_id#/forum/#topic_id#/", "group_forum_topic_edit" => "group/#group_id#/forum/edit/#topic_id#/", "group_forum_message" => "group/#group_id#/forum/message/#topic_id#/#message_id#/", "group_forum_message_edit" => "group/#group_id#/forum/message/#action#/#topic_id#/#message_id#/", "group_tasks" => "group/#group_id#/tasks/", "group_tasks_board" => "group/#group_id#/tasks/board/", "group_tasks_task" => "group/#group_id#/tasks/task/#action#/#task_id#/", "group_tasks_view" => "group/#group_id#/tasks/view/#action#/#view_id#/", "group_tasks_report" => "group/#group_id#/tasks/report/", "group_tasks_report_construct" => "group/#group_id#/tasks/report/construct/#report_id#/#action#/", "group_tasks_report_view" => "group/#group_id#/tasks/report/view/#report_id#/", //"group_tasks_import" => "group/#group_id#/tasks/import/", "group_log" => "group/#group_id#/log/", "group_log_rss" => "group/#group_id#/log/rss/?bx_hit_hash=#sign#&events=#events#", "group_log_rss_mask" => "group/#group_id#/log/rss/", "group_app" => "group/#group_id#/app/#placement_id#/", "group_marketplace" => "group/#group_id#/marketplace/", ); $diskEnabled = ( \Bitrix\Main\Config\Option::get('disk', 'successfully_converted', false) && CModule::includeModule('disk') ); $bExtranetEnabled = IsModuleInstalled('extranet'); if ($bExtranetEnabled) { $extranetSiteId = COption::GetOptionString("extranet", "extranet_site"); if (strlen($extranetSiteId) <= 0) { $bExtranetEnabled = false; } elseif ($arParams["SEF_MODE"] == "Y") { $arRedirectSite = CSocNetLogComponent::getExtranetRedirectSite($extranetSiteId); } } if($diskEnabled) { $arDefaultUrlTemplates404["group_disk"] = "group/#group_id#/disk/path/#PATH#"; $arDefaultUrlTemplates404["group_disk_file"] = "group/#group_id#/disk/file/#FILE_PATH#"; $arDefaultUrlTemplates404["group_disk_file_history"] = "group/#group_id#/disk/file-history/#FILE_ID#"; $arDefaultUrlTemplates404["group_trashcan_list"] = "group/#group_id#/disk/trashcan/#TRASH_PATH#"; $arDefaultUrlTemplates404["group_trashcan_file_view"] = "group/#group_id#/disk/trash/file/#TRASH_FILE_PATH#"; $arDefaultUrlTemplates404["group_external_link_list"] = "group/#group_id#/disk/external"; $arDefaultUrlTemplates404["group_disk_help"] = "group/#group_id#/disk/help"; $arDefaultUrlTemplates404["group_disk_bizproc_workflow_admin"] = "group/#group_id#/disk/bp/"; $arDefaultUrlTemplates404["group_disk_bizproc_workflow_edit"] = "group/#group_id#/disk/bp_edit/#ID#/"; $arDefaultUrlTemplates404["group_disk_start_bizproc"] = "group/#group_id#/disk/bp_start/#ELEMENT_ID#/"; $arDefaultUrlTemplates404["group_disk_task"] = "group/#group_id#/disk/bp_task/#ID#/"; $arDefaultUrlTemplates404["group_disk_task_list"] = "group/#group_id#/disk/bp_task_list/"; } $arDefaultUrlTemplatesN404 = array( "index" => "", "group_reindex" => "page=group_reindex", "group_content_search" => "page=group_content_search&group_id=#group_id#", "group_create" => "page=group_create&user_id=#group_id#", "group" => "page=group&group_id=#group_id#", "group_card" => "page=group_card&group_id=#group_id#", "group_general" => "page=group_general&group_id=#group_id#", "group_edit" => "page=group_edit&group_id=#group_id#", "group_invite" => "page=group_invite&group_id=#group_id#", "group_requests" => "page=group_requests&group_id=#group_id#", "group_requests_out" => "page=group_requests_out&group_id=#group_id#", "group_mods" => "page=group_mods&group_id=#group_id#", "group_users" => "page=group_users&group_id=#group_id#", "group_ban" => "page=group_ban&group_id=#group_id#", "group_delete" => "page=group_delete&group_id=#group_id#", "group_features" => "page=group_features&group_id=#group_id#", "group_subscribe" => "page=group_subscribe&group_id=#group_id#", "group_list" => "page=group_list", "group_search" => "page=group_search", "group_search_subject" => "page=group_search_subject&subject_id=#subject_id#", "user_leave_group" => "page=user_leave_group&group_id=#group_id#", "group_request_user" => "page=group_request_user&group_id=#group_id#&user_id=#user_id#", "user_request_group" => "page=user_request_group&group_id=#group_id#", "group_request_search" => "page=group_request_search&group_id=#group_id#", "group_photo" => "page=group_photo&group_id=#group_id#", "group_photo_gallery" => "page=group_photo_gallery&group_id=#group_id#", "group_photo_gallery_edit" => "page=group_photo_gallery&group_id=#group_id#&action=#action#", "group_photo_galleries" => "page=group_photo_galleries&group_id=#group_id#", "group_photo_section" => "page=group_photo_section&group_id=#group_id#§ion_id=#section_id#", "group_photo_section_edit" => "page=group_photo_section_edit&group_id=#group_id#§ion_id=#section_id#&action=#action#", "group_photo_section_edit_icon" => "page=group_photo_section_edit_icon&group_id=#group_id#§ion_id=#section_id#&action=#action#", "group_photo_element_upload" => "page=group_photo_element_upload&group_id=#group_id#§ion_id=#section_id#", "group_photo_element" => "page=group_photo_element&group_id=#group_id#§ion_id=#section_id#&element_id=#element_id#", "group_photo_element_edit" => "page=group_photo_element_edit&group_id=#group_id#§ion_id=#section_id#&element_id=#element_id#&action=#action#", "group_photo_element_slide_show" => "page=group_photo_element_slide_show&group_id=#group_id#§ion_id=#section_id#&element_id=#element_id#", "group_photofull_gallery" => "page=group_photofull_gallery&group_id=#group_id#&user_alias=#user_alias#", "group_photofull_gallery_edit" => "page=group_photofull_gallery_edit&group_id=#group_id#&user_alias=#user_alias#&action=#action#", "group_photofull_section" => "page=group_photofull_section&group_id=#group_id#&user_alias=#user_alias#§ion_id=#section_id#", "group_photofull_section_edit" => "page=group_photofull_section_edit&group_id=#group_id#&user_alias=#user_alias#§ion_id=#section_id#&action=#action#", "group_photofull_section_edit_icon" => "page=group_photofull_section_edit_icon&group_id=#group_id#&user_alias=#user_alias#§ion_id=#section_id#&action=#action#", "group_photofull_element_upload" => "page=group_photofull_element_upload&group_id=#group_id#&user_alias=#user_alias#§ion_id=#section_id#", "group_photofull_element" => "page=group_photofull_element&group_id=#group_id#&user_alias=#user_alias#§ion_id=#section_id#&element_id=#element_id#", "group_photofull_element_edit" => "page=group_photofull_element_edit&group_id=#group_id#&user_alias=#user_alias#§ion_id=#section_id#&element_id=#element_id#&action=#action#", "group_photofull_element_slide_show" => "page=group_photofull_element_slide_show&group_id=#group_id#&user_alias=#user_alias#§ion_id=#section_id#&element_id=#element_id#", "group_calendar" => "page=group_calendar&group_id=#group_id#", "message_to_group" => "page=message_to_group&group_id=#group_id#", "group_files" => "page=group_files&group_id=#group_id#&path=#path#", "group_files_short" => "page=group_files_short&group_id=#group_id#§ion_id=#section_id#&element_id=#element_id#&element_name=#element_name#", "group_files_section_edit" => "page=group_files_section_edit&group_id=#group_id#§ion_id=#section_id#&action=#action#", "group_files_element" => "page=group_files_element&group_id=#group_id#&element_id=#element_id#", "group_files_element_comment" => "page=group_files_element_comment&group_id=#group_id#&topic_id=#topic_id#&message_id=#message_id#", "group_files_element_edit" => "page=group_files_element_edit&group_id=#group_id#&element_id=#element_id#&action=#action#", "group_files_element_file" => "", "group_files_element_history" => "page=group_files_element_history&element_id=#element_id#", "group_files_element_history_get" => "page=group_files_element_history_get&element_id=#element_id#&element_name=#element_name#", "group_files_element_version" => "page=group_files_element_version&group_id=#group_id#&element_id=#element_id#&action=#action#", "group_files_element_versions" => "page=group_files_element_versions&group_id=#group_id#&element_id=#element_id#", "group_files_element_upload" => "page=group_files_element_upload&group_id=#group_id#§ion_id=#section_id#", "group_files_help" => "page=group_files_help&group_id=#group_id#", "group_files_connector" => "page=group_files_connector&group_id=#group_id#", "group_files_webdav_bizproc_history" => "page=group_files_webdav_bizproc_history&group_id=#group_id#&element_id=#element_id#", "group_files_webdav_bizproc_history_get" => "page=group_files_webdav_bizproc_history_get&group_id=#group_id#&element_id=#element_id#&element_name=#element_name#", "group_files_webdav_bizproc_log" => "page=group_files_webdav_bizproc_log&group_id=#group_id#&element_id=#element_id#&id=#id#", "group_files_webdav_bizproc_view" => "page=group_files_webdav_bizproc_view&group_id=#group_id#&element_id=#element_id#", "group_files_webdav_bizproc_workflow_admin" => "page=group_files_webdav_bizproc_workflow_admin&group_id=#group_id#", "group_files_webdav_bizproc_workflow_edit" => "page=group_files_webdav_bizproc_workflow_edit&group_id=#group_id#&id=#id#", "group_files_webdav_start_bizproc" => "page=group_files_webdav_start_bizproc&group_id=#group_id#&element_id=#element_id#", "group_files_webdav_task_list" => "page=group_files_webdav_task_list&group_id=#group_id#", "group_files_webdav_task" => "page=group_files_webdav_task&group_id=#group_id#&id=#id#", "group_blog" => "page=group_blog&group_id=#group_id#", "group_blog_post_edit" => "page=group_blog_post_edit&group_id=#group_id#&post_id=#post_id#", "group_blog_rss" => "page=group_blog_rss&group_id=#group_id#&type=#type#", "group_blog_post_rss" => "page=group_blog_post_rss&group_id=#group_id#&type=#type#&post_id=#post_id#", "group_blog_draft" => "page=group_blog_draft&group_id=#group_id#", "group_blog_moderation" => "page=group_blog_moderation&group_id=#group_id#", "group_blog_post" => "page=group_blog_post&group_id=#group_id#&post_id=#post_id#", "group_forum" => "page=group_forum&group_id=#group_id#", "group_forum_topic" => "page=group_forum_topic&group_id=#group_id#&topic_id=#topic_id#", "group_forum_topic_edit" => "page=group_forum_topic_edit&group_id=#group_id#&topic_id=#topic_id#", "group_forum_message" => "page=group_forum_message&group_id=#group_id#&topic_id=#topic_id#&message_id=#message_id#", "group_forum_message_edit" => "page=group_forum_message_edit&group_id=#group_id#&topic_id=#topic_id#&message_id=#message_id#&action=#action#", "group_tasks" => "page=group_tasks&group_id=#group_id#", "group_tasks_task" => "page=group_tasks_task&group_id=#group_id#&action=#action#&task_id=#task_id#", "group_tasks_view" => "page=group_tasks_view&group_id=#group_id#&action=#action#&view_id=#view_id#", "group_tasks_report" => "page=group_tasks_report&group_id=#group_id#", "group_tasks_report_construct" => "page=group_tasks_report_construct&group_id=#group_id#&action=#action#&report_id=#report_id#", "group_tasks_report_view" => "page=group_tasks_report_view&group_id=#group_id#&report_id=#report_id#", "group_log" => "page=group_log&group_id=#group_id#", "group_log_rss" => "page=group_log_rss&group_id=#group_id#&bx_hit_hash=#sign#&events=#events#", // "group_log_rss_mask" => "page=group_log_rss&group_id=#group_id#", "group_app" => "page=group_app&group_id=#group_id#&placement_id=#placement_id#", "group_marketplace" => "page=group_marketplace&group_id=#group_id#" ); $arDefaultVariableAliases404 = array(); $arDefaultVariableAliases = array(); $componentPage = ""; $arComponentVariables = array("user_id", "group_id", "page", "message_id", "subject_id", "path", "section_id", "element_id", "action", "post_id", "category", "topic_id", "task_id", "view_id", "type", "report_id", "placement_id"); if ( $_REQUEST["auth"]=="Y" && $USER->IsAuthorized() ) { LocalRedirect($APPLICATION->GetCurPageParam("", array("login", "logout", "register", "forgot_password", "change_password", "backurl", "auth"))); } if (!array_key_exists("SET_NAV_CHAIN", $arParams)) { $arParams["SET_NAV_CHAIN"] = $arParams["SET_NAVCHAIN"]; } $arParams["SET_NAV_CHAIN"] = ($arParams["SET_NAV_CHAIN"] == "N" ? "N" : "Y"); $arParams["HIDE_OWNER_IN_TITLE"] = ($arParams["HIDE_OWNER_IN_TITLE"] == "Y" ? "Y" : "N"); if (!array_key_exists("PATH_TO_USER_CALENDAR", $arParams)) { $arParams["PATH_TO_USER_CALENDAR"] = SITE_DIR."company/personal/user/#user_id#/calendar/"; } if (!array_key_exists("PATH_TO_USER_LOG", $arParams)) { $arParams["PATH_TO_USER_LOG"] = $arParams["~PATH_TO_USER_LOG"] = SITE_DIR."company/personal/log/"; } if (!array_key_exists("PATH_TO_USER_LOG_ENTRY", $arParams)) { $arParams["PATH_TO_USER_LOG_ENTRY"] = $arParams["~PATH_TO_USER_LOG_ENTRY"] = COption::GetOptionString("socialnetwork", "log_entry_page", false, SITE_ID); if (empty($arParams["PATH_TO_USER_LOG_ENTRY"])) { $arParams["PATH_TO_USER_LOG_ENTRY"] = $arParams["~PATH_TO_USER_LOG_ENTRY"] = SITE_DIR."company/personal/log/#log_id#/"; } } if (!is_array($arParams["VARIABLE_ALIASES"])) { $arParams["VARIABLE_ALIASES"] = array(); } if ($arParams["USE_KEYWORDS"] != "N") $arParams["USE_KEYWORDS"] = "Y"; // for bitrix:main.user.link if (IsModuleInstalled('intranet')) { $arTooltipFieldsDefault = serialize(array( "EMAIL", "PERSONAL_MOBILE", "WORK_PHONE", "PERSONAL_ICQ", "PERSONAL_PHOTO", "PERSONAL_CITY", "WORK_COMPANY", "WORK_POSITION", )); $arTooltipPropertiesDefault = serialize(array( "UF_DEPARTMENT", "UF_PHONE_INNER", )); } else { $arTooltipFieldsDefault = serialize(array( "PERSONAL_ICQ", "PERSONAL_BIRTHDAY", "PERSONAL_PHOTO", "PERSONAL_CITY", "WORK_COMPANY", "WORK_POSITION" )); $arTooltipPropertiesDefault = serialize(array()); } if (!array_key_exists("SHOW_FIELDS_TOOLTIP", $arParams)) { $arParams["SHOW_FIELDS_TOOLTIP"] = unserialize(COption::GetOptionString("socialnetwork", "tooltip_fields", $arTooltipFieldsDefault)); } if (!array_key_exists("USER_PROPERTY_TOOLTIP", $arParams)) { $arParams["USER_PROPERTY_TOOLTIP"] = unserialize(COption::GetOptionString("socialnetwork", "tooltip_properties", $arTooltipPropertiesDefault)); } if ( IsModuleInstalled('intranet') && !array_key_exists("PATH_TO_CONPANY_DEPARTMENT", $arParams) ) { $arParams["PATH_TO_CONPANY_DEPARTMENT"] = "/company/structure.php?set_filter_structure=Y&structure_UF_DEPARTMENT=#ID#"; } if ( IsModuleInstalled("search") && !array_key_exists("PATH_TO_SEARCH_TAG", $arParams) ) { $arParams["PATH_TO_SEARCH_TAG"] = SITE_DIR."search/?tags=#tag#"; } if (strlen(trim($arParams["NAME_TEMPLATE"])) <= 0) { $arParams["NAME_TEMPLATE"] = CSite::GetNameFormat(); } $arParams['SHOW_LOGIN'] = $arParams['SHOW_LOGIN'] != "N" ? "Y" : "N"; $arParams['CAN_OWNER_EDIT_DESKTOP'] = ( IsModuleInstalled("intranet") ? ($arParams['CAN_OWNER_EDIT_DESKTOP'] != "Y" ? "N" : "Y") : ($arParams['CAN_OWNER_EDIT_DESKTOP'] != "N" ? "Y" : "N") ); if (intval(trim($arParams["SEARCH_PAGE_RESULT_COUNT"])) <= 0) $arParams["SEARCH_PAGE_RESULT_COUNT"] = "10"; if (strlen(trim($arParams["SEARCH_DEFAULT_SORT"])) <= 0) $arParams["SEARCH_DEFAULT_SORT"] = "rank"; if (strlen(trim($arParams["SEARCH_TAGS_PAGE_ELEMENTS"])) <= 0) $arParams["SEARCH_TAGS_PAGE_ELEMENTS"] = 100; if (intval(trim($arParams["SEARCH_TAGS_PERIOD"])) <= 0) $arParams["SEARCH_TAGS_PERIOD"] = ""; if (intval(trim($arParams["SEARCH_TAGS_FONT_MAX"])) <= 0) $arParams["SEARCH_TAGS_FONT_MAX"] = "50"; if (intval(trim($arParams["SEARCH_TAGS_FONT_MIN"])) <= 0) $arParams["SEARCH_TAGS_FONT_MIN"] = "10"; if (strlen(trim($arParams["SEARCH_TAGS_COLOR_NEW"])) <= 0) $arParams["SEARCH_TAGS_COLOR_NEW"] = "3E74E6"; if (strlen(trim($arParams["SEARCH_TAGS_COLOR_OLD"])) <= 0) $arParams["SEARCH_TAGS_COLOR_OLD"] = "C0C0C0"; if (IsModuleInstalled("blog")) { if (!array_key_exists("BLOG_ALLOW_POST_CODE", $arParams)) $arParams["BLOG_ALLOW_POST_CODE"] = "Y"; } $arParams["USE_MAIN_MENU"] = (isset($arParams["USE_MAIN_MENU"]) && $arParams["USE_MAIN_MENU"] == "Y" ? $arParams["USE_MAIN_MENU"] : false); if ($arParams["USE_MAIN_MENU"] == "Y" && !array_key_exists("MAIN_MENU_TYPE", $arParams)) $arParams["MAIN_MENU_TYPE"] = "left"; $arParams["LOG_SUBSCRIBE_ONLY"] = (isset($arParams["LOG_SUBSCRIBE_ONLY"]) && $arParams["LOG_SUBSCRIBE_ONLY"] == "Y" ? "Y" : "N"); $arParams["LOG_RSS_TTL"] = (isset($arParams["LOG_RSS_TTL"]) && intval($arParams["LOG_RSS_TTL"]) > 0 ? $arParams["LOG_RSS_TTL"] : "60"); $arParams["GROUP_USE_BAN"] = $arParams["GROUP_USE_BAN"] != "N" ? "Y" : "N"; $arParams["ALLOW_RATING_SORT"] = $arParams["ALLOW_RATING_SORT"] != "Y" ? "N" : "Y"; // activation rating CRatingsComponentsMain::GetShowRating($arParams); if (IsModuleInstalled("search")) { if (!array_key_exists("SEARCH_FILTER_NAME", $arParams)) $arParams["SEARCH_FILTER_NAME"] = "sonet_search_filter"; if (!array_key_exists("SEARCH_FILTER_DATE_NAME", $arParams)) $arParams["SEARCH_FILTER_DATE_NAME"] = "sonet_search_filter_date"; } $arCustomPagesPath = array(); if ($arParams["SEF_MODE"] == "Y") { $arVariables = array(); $events = GetModuleEvents("socialnetwork", "OnParseSocNetComponentPath"); while ($arEvent = $events->Fetch()) ExecuteModuleEventEx($arEvent, array(&$arDefaultUrlTemplates404, &$arCustomPagesPath, $arParams)); $engine = new CComponentEngine($this); if($diskEnabled) { $engine->addGreedyPart("#PATH#"); $engine->addGreedyPart("#FILE_PATH#"); $engine->addGreedyPart("#TRASH_PATH#"); $engine->addGreedyPart("#TRASH_FILE_PATH#"); $engine->setResolveCallback(array(\Bitrix\Disk\Driver::getInstance()->getUrlManager(), "resolveSocNetPathComponentEngine")); } $arUrlTemplates = CComponentEngine::MakeComponentUrlTemplates($arDefaultUrlTemplates404, $arParams["SEF_URL_TEMPLATES"]); /* This code is needed to use short paths in WebDAV */ $arUrlTemplates["group_files_short"] = str_replace("#path#", $arDefaultUrlTemplates404["group_files_short"], $arUrlTemplates["group_files"]); /* / This code is needed to use short paths in WebDAV */ $arVariableAliases = CComponentEngine::MakeComponentVariableAliases($arDefaultVariableAliases404, $arParams["VARIABLE_ALIASES"]); $componentPage = $engine->guessComponentPath( $arParams["SEF_FOLDER"], $arUrlTemplates, $arVariables ); // $componentPage = CComponentEngine::ParseComponentPath($arParams["SEF_FOLDER"], $arUrlTemplates, $arVariables); if (array_key_exists($arVariables["page"], $arDefaultUrlTemplates404)) $componentPage = $arVariables["page"]; if (empty($componentPage) || (!array_key_exists($componentPage, $arDefaultUrlTemplates404))) { //if (strlen($componentPage) <= 0) $componentPage = "index"; } CComponentEngine::InitComponentVariables($componentPage, $arComponentVariables, $arVariableAliases, $arVariables); foreach ($arUrlTemplates as $url => $value) { $arResult["PATH_TO_".strToUpper($url)] = $arParams["SEF_FOLDER"].$value; } if ($_REQUEST["auth"] == "Y") { $componentPage = "auth"; } $userPage = COption::GetOptionString( "socialnetwork", "user_page", ( IsModuleInstalled('extranet') && SITE_ID == COption::GetOptionString("extranet", "extranet_site") ? "/extranet/contacts/personal/" : "/company/personal/" ), SITE_ID ); if(!isset($arParams["PATH_TO_MESSAGES_CHAT"])) { $arParams["PATH_TO_MESSAGES_CHAT"] = $userPage."messages/chat/#user_id#/"; } if(!isset($arParams["PATH_TO_MESSAGE_FORM_MESS"])) { $arParams["PATH_TO_MESSAGE_FORM_MESS"] = $userPage."messages/form/#user_id#/#message_id#/"; } if(!isset($arParams["PATH_TO_USER_TASKS_TEMPLATES"])) { $arParams["PATH_TO_USER_TASKS_TEMPLATES"] = $userPage."user/#user_id#/tasks/templates/"; } if(!isset($arParams["PATH_TO_USER_TEMPLATES_TEMPLATE"])) { $arParams["PATH_TO_USER_TEMPLATES_TEMPLATE"] = $userPage."user/#user_id#/tasks/templates/template/#action#/#template_id#/"; } if(!isset($arParams["PATH_TO_USER_BLOG_POST_IMPORTANT"])) { $arParams["PATH_TO_USER_BLOG_POST_IMPORTANT"] = $userPage."user/#user_id#/blog/important/"; } if ( IsModuleInstalled("video") && !isset($arParams["PATH_TO_VIDEO_CALL"]) ) { $arParams["PATH_TO_VIDEO_CALL"] = $userPage."video/#user_id#/"; } \Bitrix\Socialnetwork\ComponentHelper::setComponentOption( array( array( 'CHECK_SEF_FOLDER' => true, 'OPTION' => array('MODULE_ID' => 'socialnetwork', 'NAME' => 'workgroups_page'), 'VALUE' => $arParams["SEF_FOLDER"] ), array( 'CHECK_SEF_FOLDER' => true, 'OPTION' => array('MODULE_ID' => 'socialnetwork', 'NAME' => 'workgroups_list_page'), 'VALUE' => $arResult["PATH_TO_GROUP_SEARCH"] ), array( 'CHECK_SEF_FOLDER' => true, 'OPTION' => array('MODULE_ID' => 'socialnetwork', 'NAME' => 'subject_path_template'), 'VALUE' => $arResult["PATH_TO_GROUP_SEARCH_SUBJECT"] ), ), array( 'SEF_FOLDER' => $arParams["SEF_FOLDER"], 'SITE_ID' => SITE_ID ) ); } else { if(is_array($arParams["VARIABLE_ALIASES"])) { foreach ($arParams["VARIABLE_ALIASES"] as $key => $val) { $arParams["VARIABLE_ALIASES"][$key] = (!empty($val) ? $val : $key); } } $events = GetModuleEvents("socialnetwork", "OnParseSocNetComponentPath"); while ($arEvent = $events->Fetch()) { ExecuteModuleEventEx($arEvent, array(&$arDefaultUrlTemplatesN404, &$arCustomPagesPath, $arParams)); } $arVariables = array(); $arVariableAliases = CComponentEngine::MakeComponentVariableAliases($arDefaultVariableAliases, $arParams["VARIABLE_ALIASES"]); $events = GetModuleEvents("socialnetwork", "OnInitSocNetComponentVariables"); while ($arEvent = $events->Fetch()) { ExecuteModuleEventEx($arEvent, array(&$arVariableAliases, &$arCustomPagesPath)); } CComponentEngine::InitComponentVariables(false, $arComponentVariables, $arVariableAliases, $arVariables); if ( !empty($arDefaultUrlTemplatesN404) && !empty($arParams["VARIABLE_ALIASES"]) ) { foreach ($arDefaultUrlTemplatesN404 as $url => $value) { $pattern = array(); $replace = array(); foreach ($arParams["VARIABLE_ALIASES"] as $key => $res) { if ($key != $res && !empty($res)) { $pattern[] = preg_quote("/(^|([&?]+))".$key."\=/is"); $replace[] = "$1".$res."="; } } if (!empty($pattern)) { $value = preg_replace($pattern, $replace, $value); $arDefaultUrlTemplatesN404[$url] = $value; } } } foreach ($arDefaultUrlTemplatesN404 as $url => $value) { $arParamsKill = array("page", "path", "section_id", "element_id", "action", "user_id", "group_id", "action", "use_light_view", "AJAX_CALL", "MUL_MODE", "edit_section", "sessid", "post_id", "category", "topic_id", "result", "MESSAGE_TYPE", "q", "how", "tags", "where" ); $arParamsKill = array_merge($arParamsKill, $arParams["VARIABLE_ALIASES"], array_values($arVariableAliases)); $arResult["PATH_TO_".strToUpper($url)] = $APPLICATION->GetCurPageParam($value, $arParamsKill); } if (array_key_exists($arVariables["page"], $arDefaultUrlTemplatesN404)) { $componentPage = $arVariables["page"]; } if (empty($componentPage) || (!array_key_exists($componentPage, $arDefaultUrlTemplatesN404))) { //if (strlen($componentPage) <= 0) $componentPage = "index"; } if ($_REQUEST["auth"] == "Y") $componentPage = "auth"; $arResult["PATH_TO_GROUP_LOG_RSS_MASK"] = $arResult["~PATH_TO_GROUP_LOG_RSS_MASK"] = $APPLICATION->GetCurPage(true)."?page=group_log_rss&group_id=".$arVariables["group_id"]; } if (strlen($arParams["PATH_TO_USER_BLOG_POST"]) <= 0) { $arParams["PATH_TO_USER_BLOG_POST"] = COption::GetOptionString("socialnetwork", "userblogpost_page", false, SITE_ID); } if ( $arRedirectSite && $arParams["SEF_MODE"] == "Y" ) { if(is_array($arVariables)) { foreach($arVariables as $i => $variable) { if(!is_string($variable)) { unset($arVariables[$i]); } } unset($variable); } CSocNetLogComponent::redirectExtranetSite($arRedirectSite, $componentPage, $arVariables, $arDefaultUrlTemplates404, "workgroup"); } $arResult = array_merge( array( "SEF_MODE" => $arParams["SEF_MODE"], "SEF_FOLDER" => $arParams["SEF_FOLDER"], "VARIABLES" => $arVariables, "ALIASES" => $arParams["SEF_MODE"] == "Y"? array(): $arVariableAliases, "SET_TITLE" => $arParams["SET_TITLE"], "PATH_TO_SMILE" => $arParams["PATH_TO_SMILE"], "CACHE_TYPE" => $arParams["CACHE_TYPE"], "CACHE_TIME" => $arParams["CACHE_TIME"], "CACHE_TIME_LONG" => $arParams["CACHE_TIME_LONG"], "SET_NAV_CHAIN" => $arParams["SET_NAV_CHAIN"], "SET_NAVCHAIN" => $arParams["SET_NAV_CHAIN"], "ITEM_DETAIL_COUNT" => $arParams["ITEM_DETAIL_COUNT"], "ITEM_MAIN_COUNT" => $arParams["ITEM_MAIN_COUNT"], "DATE_TIME_FORMAT" => $arParams["DATE_TIME_FORMAT"], "DATE_TIME_FORMAT_WITHOUT_YEAR" => (isset($arParams["DATE_TIME_FORMAT_WITHOUT_YEAR"]) ? $arParams["DATE_TIME_FORMAT_WITHOUT_YEAR"] : false), "USER_PROPERTY_MAIN" => $arParams["USER_PROPERTY_MAIN"], "USER_PROPERTY_CONTACT" => $arParams["USER_PROPERTY_CONTACT"], "USER_PROPERTY_PERSONAL" => $arParams["USER_PROPERTY_PERSONAL"], "GROUP_PROPERTY" => $arParams["GROUP_PROPERTY"], "NAME_TEMPLATE" => $arParams["NAME_TEMPLATE"] ), $arResult ); $arParams["PATH_TO_SEARCH_EXTERNAL"] = Trim($arParams["PATH_TO_SEARCH_EXTERNAL"]); if (StrLen($arParams["PATH_TO_SEARCH_EXTERNAL"]) > 0) $arResult["PATH_TO_SEARCH"] = $arParams["PATH_TO_SEARCH_EXTERNAL"]; $arParams["PATH_TO_USER_CALENDAR"] = trim($arParams["PATH_TO_USER_CALENDAR"]); if (strlen($arParams["PATH_TO_USER_CALENDAR"]) > 0) $arResult["PATH_TO_USER_CALENDAR"] = $arParams["PATH_TO_USER_CALENDAR"]; if (!empty($arParams["PATH_TO_USER_BLOG_POST_IMPORTANT"])) $arResult["PATH_TO_USER_BLOG_POST_IMPORTANT"] = $arParams["PATH_TO_USER_BLOG_POST_IMPORTANT"]; $arParams["ERROR_MESSAGE"] = ""; $arParams["NOTE_MESSAGE"] = ""; /******************************************************************** WebDav ********************************************************************/ //detect VARIABLES if (strPos($componentPage, "user_files") === false && strPos($componentPage, "group_files") === false) { $sCurrUrl = strToLower(str_replace("//", "/", "/".$APPLICATION->GetCurPage()."/")); $arBaseUrl = array( "user" => $arParams["FILES_USER_BASE_URL"], "group" => $arParams["FILES_GROUP_BASE_URL"]); if ($arParams["SEF_MODE"] == "Y" ) { $arBaseUrl = array( "user" => $arResult["PATH_TO_USER_FILES"], "group" => $arResult["PATH_TO_GROUP_FILES"]); } foreach ($arBaseUrl as $key => $res) { if (strPos($res, "#path#") !== false) $res = subStr($res, 0, strPos($res, "#path#")); $res = strToLower(str_replace("//", "/", "/".$res."/")); $pos = strPos($res, "#".$key."_id#"); if ($pos !== false && subStr($res, 0, $pos) == subStr($sCurrUrl, 0, $pos)) { $v1 = subStr($res, $pos + strLen("#".$key."_id#")); $v2 = subStr($sCurrUrl, $pos); $v3 = subStr($v2, strPos($v2, subStr($v1, 0, 1)), strLen($v1)); if ($v1 == $v3) { $componentPage = $key."_files"; $arResult["VARIABLES"]["#".$key."_id#"] = intVal(subStr($v2, 0, strPos($v2, subStr($v1, 0, 1)))); $arResult["VARIABLES"][$key."_id"] = intVal(subStr($v2, 0, strPos($v2, subStr($v1, 0, 1)))); } } } } /******************************************************************** /WebDav ********************************************************************/ /******************************************************************** Search Index ********************************************************************/ if(check_bitrix_sessid() || $_SERVER['REQUEST_METHOD'] == "PUT") { global $bxSocNetSearch; if(!is_object($bxSocNetSearch)) { if (CModule::IncludeModule('tasks')) { $tasksForumId = 0; try { $tasksForumId = intval(CTasksTools::getForumIdForIntranet()); } catch(Exception $e) { } } $arSocNetSearchParams = array( "PATH_TO_GROUP" => $arResult["PATH_TO_GROUP"], "BLOG_GROUP_ID" => $arParams["BLOG_GROUP_ID"], "PATH_TO_GROUP_BLOG" => $arResult["PATH_TO_GROUP_BLOG"], "PATH_TO_GROUP_BLOG_POST" => $arResult["PATH_TO_GROUP_BLOG_POST"], "PATH_TO_GROUP_BLOG_COMMENT" => $arResult["PATH_TO_GROUP_BLOG_POST"]."?commentId=#comment_id##com#comment_id#", "PATH_TO_USER_BLOG" => "", "PATH_TO_USER_BLOG_POST" => "", "PATH_TO_USER_BLOG_COMMENT" => "", "FORUM_ID" => $arParams["FORUM_ID"], "PATH_TO_GROUP_FORUM_MESSAGE" => $arResult["PATH_TO_GROUP_FORUM_MESSAGE"], "PATH_TO_USER_FORUM_MESSAGE" => "", "PHOTO_GROUP_IBLOCK_ID" => $arParams["PHOTO_GROUP_IBLOCK_ID"], "PATH_TO_GROUP_PHOTO_ELEMENT" => $arResult["PATH_TO_GROUP_PHOTO_ELEMENT"], "PHOTO_USER_IBLOCK_ID" => false, "PATH_TO_USER_PHOTO_ELEMENT" => "", "PHOTO_FORUM_ID" => $arParams["PHOTO_FORUM_ID"], "CALENDAR_GROUP_IBLOCK_ID" => $arParams["CALENDAR_GROUP_IBLOCK_ID"], "PATH_TO_GROUP_CALENDAR_ELEMENT" => $arResult["PATH_TO_GROUP_CALENDAR"]."?EVENT_ID=#element_id#", "PATH_TO_GROUP_TASK_ELEMENT" => $arResult["PATH_TO_GROUP_TASKS_TASK"], "PATH_TO_USER_TASK_ELEMENT" => "", "TASK_FORUM_ID" => ($tasksForumId > 0 ? $tasksForumId : $arParams["TASK_FORUM_ID"]), ); if (!$diskEnabled) { $arSocNetSearchParams["FILES_PROPERTY_CODE"] = $arParams["NAME_FILE_PROPERTY"]; $arSocNetSearchParams["FILES_FORUM_ID"] = $arParams["FILES_FORUM_ID"]; $arSocNetSearchParams["FILES_GROUP_IBLOCK_ID"] = $arParams["FILES_GROUP_IBLOCK_ID"]; $arSocNetSearchParams["PATH_TO_GROUP_FILES_ELEMENT"] = $arResult["PATH_TO_GROUP_FILES_ELEMENT"]; $arSocNetSearchParams["PATH_TO_GROUP_FILES"] = $arResult["PATH_TO_GROUP_FILES"]; $arSocNetSearchParams["FILES_USER_IBLOCK_ID"] = false; $arSocNetSearchParams["PATH_TO_USER_FILES_ELEMENT"] = ""; $arSocNetSearchParams["PATH_TO_USER_FILES"] = ""; } if (isset($arResult["PATH_TO_GROUP_WIKI_POST_COMMENT"])) { $arSocNetSearchParams["PATH_TO_GROUP_WIKI_POST_COMMENT"] = $arResult["PATH_TO_GROUP_WIKI_POST_COMMENT"]; } $bxSocNetSearch = new CSocNetSearch( $arResult["VARIABLES"]["user_id"], $arResult["VARIABLES"]["group_id"], $arSocNetSearchParams ); AddEventHandler("search", "BeforeIndex", Array($bxSocNetSearch, "BeforeIndex")); AddEventHandler("iblock", "OnAfterIBlockElementUpdate", Array($bxSocNetSearch, "IBlockElementUpdate")); AddEventHandler("iblock", "OnAfterIBlockElementAdd", Array($bxSocNetSearch, "IBlockElementUpdate")); AddEventHandler("iblock", "OnAfterIBlockElementDelete", Array($bxSocNetSearch, "IBlockElementDelete")); AddEventHandler("iblock", "OnAfterIBlockSectionUpdate", Array($bxSocNetSearch, "IBlockSectionUpdate")); AddEventHandler("iblock", "OnAfterIBlockSectionAdd", Array($bxSocNetSearch, "IBlockSectionUpdate")); AddEventHandler("iblock", "OnAfterIBlockSectionDelete", Array($bxSocNetSearch, "IBlockSectionDelete")); } } /******************************************************************** Bizproc ********************************************************************/ if (IsModuleInstalled("bizproc")) { $arDefaultUrlTemplates404["bizproc_task_list"] = $arResult["PATH_TO_BIZPROC_TASK_LIST"] = (empty($arParams["PATH_TO_BIZPROC_TASK_LIST"]) ? "/company/personal/user/#user_id#/bizproc/" : $arParams["PATH_TO_BIZPROC_TASK_LIST"]); $arResult["PATH_TO_BIZPROC_TASK"] = ( empty($arParams["PATH_TO_BIZPROC_TASK"]) ? ( empty($arParams['PATH_TO_USER']) ? "/company/personal/user/#user_id#/" : $arParams['PATH_TO_USER'] ) . "bizproc/#id#/" : $arParams["PATH_TO_BIZPROC_TASK"] ); $arDefaultUrlTemplates404["bizproc_task"] = $arResult["PATH_TO_BIZPROC_TASK"] = str_replace("#task_id#", "#id#", $arResult["PATH_TO_BIZPROC_TASK"]); } /******************************************************************** Bizproc ********************************************************************/ /******************************************************************** Disk ********************************************************************/ if(strpos($componentPage, 'group_disk') !== false) { if(!CSocNetFeatures::isActiveFeature(SONET_ENTITY_GROUP, $arResult["VARIABLES"]["group_id"], "files")) { ShowError(GetMessage("SONET_FILES_IS_NOT_ACTIVE")); return 0; } } elseif (strpos($componentPage, 'group_app') !== false) { if(!CSocNetFeatures::isActiveFeature(SONET_ENTITY_GROUP, $arResult["VARIABLES"]["group_id"], "placement_".$arResult["VARIABLES"]["placement_id"])) { ShowError(GetMessage("SONET_APP_IS_NOT_ACTIVE")); return 0; } } /******************************************************************** Disk ********************************************************************/ /******************************************************************** WebDav ********************************************************************/ if ( !$diskEnabled && ( strPos($componentPage, "group_files") !== false || strPos($componentPage, "group_blog") !== false || strPos($componentPage, "group_log") !== false || $componentPage == "group" ) ) { if (intval($arResult["VARIABLES"]["group_id"]) > 0) { $cache_time = 31536000; $arEvent = array(); $cache = new CPHPCache; $cache_id = "files_iblock_id"; $cache_path = "/sonet/group_comp/".$arResult["VARIABLES"]["group_id"]."/"; if ( is_object($cache) && $cache->InitCache($cache_time, $cache_id, $cache_path) ) { $arCacheVars = $cache->GetVars(); $arParams["FILES_GROUP_IBLOCK_ID"] = $arCacheVars["FILES_GROUP_IBLOCK_ID"]; } elseif (CModule::IncludeModule("iblock")) { if (is_object($cache)) $cache->StartDataCache($cache_time, $cache_id, $cache_path); $arFilesIBlockID = array(); $rsIBlock = CIBlock::GetList(array(), array("ACTIVE" => "Y", "CHECK_PERMISSIONS"=>"N", "CODE"=>"group_files%")); while($arIBlock = $rsIBlock->Fetch()) $arFilesIBlockID[] = $arIBlock["ID"]; if (count($arFilesIBlockID) > 0) { $rsFilesSection = CIBlockSection::GetList( array("timestamp_x"=>"desc"), array( "IBLOCK_ID" => $arFilesIBlockID, "SOCNET_GROUP_ID" => $arResult["VARIABLES"]["group_id"] ) ); if ($arFilesSection = $rsFilesSection->Fetch()) $arParams["FILES_GROUP_IBLOCK_ID"] = $arFilesSection["IBLOCK_ID"]; } if (is_object($cache)) { $arCacheData = Array( "FILES_GROUP_IBLOCK_ID" => $arParams["FILES_GROUP_IBLOCK_ID"] ); $cache->EndDataCache($arCacheData); } } } if ( intval($arResult["VARIABLES"]["group_id"]) > 0 && intval($arResult["VARIABLES"]["element_id"]) > 0 && intval($arParams["FILES_FORUM_ID"]) > 0 && intval($arParams["FILES_GROUP_IBLOCK_ID"]) > 0 ) { $cache_time = 31536000; $arEvent = array(); $cache = new CPHPCache; $arCacheID = array(); $arKeys = array( "FILES_GROUP_IBLOCK_ID", ); foreach($arKeys as $param_key) { if (array_key_exists($param_key, $arParams)) $arCacheID[$param_key] = $arParams[$param_key]; else $arCacheID[$param_key] = false; } $cache_id = "files_forum_id_".md5(serialize($arCacheID)); $cache_path = "/sonet/group_comp/".$arResult["VARIABLES"]["group_id"]."/".$arResult["VARIABLES"]["element_id"]; if ( is_object($cache) && $cache->InitCache($cache_time, $cache_id, $cache_path) ) { $arCacheVars = $cache->GetVars(); $arParams["FILES_FORUM_ID"] = $arCacheVars["FILES_FORUM_ID"]; } elseif ( CModule::IncludeModule("forum") && CModule::IncludeModule("iblock") ) { if (is_object($cache)) $cache->StartDataCache($cache_time, $cache_id, $cache_path); $rsIBlockElement = CIBlockElement::GetList( array(), array( "IBLOCK_ID" => $arParams["FILES_GROUP_IBLOCK_ID"], "ID" => $arResult["VARIABLES"]["element_id"] ), false, false, array("IBLOCK_ID", "PROPERTY_FORUM_TOPIC_ID") ); if ( ($arIBlockElement = $rsIBlockElement->Fetch()) && array_key_exists("PROPERTY_FORUM_TOPIC_ID_VALUE", $arIBlockElement) && intval($arIBlockElement["PROPERTY_FORUM_TOPIC_ID_VALUE"] > 0) ) { $arForumTopic = CForumTopic::GetByID($arIBlockElement["PROPERTY_FORUM_TOPIC_ID_VALUE"]); $arParams["FILES_FORUM_ID"] = $arForumTopic["FORUM_ID"]; } if (is_object($cache)) { $arCacheData = Array( "FILES_FORUM_ID" => $arParams["FILES_FORUM_ID"] ); $cache->EndDataCache($arCacheData); } } } } $path2 = str_replace(array("\\", "//"), "/", dirname(__FILE__)."/include/webdav_2.php"); if (file_exists($path2)) include_once($path2); if (strPos($componentPage, "user_files") !== false || strPos($componentPage, "group_files") !== false) { $path = str_replace(array("\\", "//"), "/", dirname(__FILE__)."/include/webdav.php"); if (!file_exists($path)) { $arParams["ERROR_MESSAGE"] = "WebDAV file is not exist."; $res = 0; } else $res = include_once($path); $arParams["FATAL_ERROR"] = ($res <= 0 ? "Y" : "N"); if ($arParams["FATAL_ERROR"] === "Y") { if (strlen($arParams["NOTE_MESSAGE"]) > 0) ShowNote($arParams["NOTE_MESSAGE"]); if (strlen($arParams["ERROR_MESSAGE"]) > 0) ShowError($arParams["ERROR_MESSAGE"]); return 0; } } /******************************************************************** /WebDav ********************************************************************/ /******************************************************************** Photogalley ********************************************************************/ elseif (strPos($componentPage, "user_photo")!== false || strPos($componentPage, "group_photo")!== false) { if (strPos($componentPage, "user_photofull") !== false || strPos($componentPage, "group_photofull") !== false) $componentPage = str_replace("_photofull", "_photo", $componentPage); $path = str_replace(array("\\", "//"), "/", dirname(__FILE__)."/include/photogallery.php"); if (!file_exists($path)) { $arParams["ERROR_MESSAGE"] = "Photogallery file is not exist."; $res = 0; } else $res = include_once($path); $arParams["FATAL_ERROR"] = ($res <= 0 ? "Y" : "N"); if (strPos($componentPage, "group_photo") !== false && CModule::IncludeModule('iblock')) { $arPhotoIBlockID = array(); $rsIBlock = CIBlock::GetList(array(), array("ACTIVE" => "Y", "CODE"=>"group_photogallery%")); while($arIBlock = $rsIBlock->Fetch()) $arPhotoIBlockID[] = $arIBlock["ID"]; if (count($arPhotoIBlockID) > 0) { $rsPhotoSection = CIBlockSection::GetList( array("timestamp_x"=>"desc"), array( "IBLOCK_ID" => $arPhotoIBlockID, "SOCNET_GROUP_ID" => $arResult["VARIABLES"]["group_id"] ) ); if ($arPhotoSection = $rsPhotoSection->Fetch()) { $arParams["PHOTO_GROUP_IBLOCK_ID"] = $arPhotoSection["IBLOCK_ID"]; if ( intval($_GET["ELEMENT_ID"]) > 0 && intval($arParams["PHOTO"]["ALL"]["FORUM_ID"]) > 0 && $arParams["PHOTO"]["ALL"]["COMMENTS_TYPE"] == "FORUM" && CModule::IncludeModule("forum") ) { $rsIBlockElement = CIBlockElement::GetList( array(), array( "IBLOCK_ID" => $arParams["PHOTO_GROUP_IBLOCK_ID"], "ID" => $_GET["ELEMENT_ID"] ), false, false, array("IBLOCK_ID", "PROPERTY_FORUM_TOPIC_ID") ); if ( ($arIBlockElement = $rsIBlockElement->Fetch()) && array_key_exists("PROPERTY_FORUM_TOPIC_ID_VALUE", $arIBlockElement) ) { $arForumTopic = CForumTopic::GetByID($arIBlockElement["PROPERTY_FORUM_TOPIC_ID_VALUE"]); $arParams["PHOTO"]["ALL"]["FORUM_ID"] = $arForumTopic["FORUM_ID"]; } } } } } } /******************************************************************** /Photogalley ********************************************************************/ /******************************************************************** Calendar ********************************************************************/ elseif (strPos($componentPage, "group_calendar") !== false && CModule::IncludeModule("iblock")) { $arCalendarIBlockID = array(); $rsIBlock = CIBlock::GetList(array(), array("ACTIVE" => "Y", "CODE"=>"calendar_group%")); while($arIBlock = $rsIBlock->Fetch()) $arCalendarIBlockID[] = $arIBlock["ID"]; if (count($arCalendarIBlockID) > 0) { $rsCalendarSection = CIBlockSection::GetList( array("timestamp_x"=>"desc"), array( "IBLOCK_ID" => $arCalendarIBlockID, "SOCNET_GROUP_ID" => $arResult["VARIABLES"]["group_id"] ) ); if ($arCalendarSection = $rsCalendarSection->Fetch()) $arParams["CALENDAR_GROUP_IBLOCK_ID"] = $arCalendarSection["IBLOCK_ID"]; } } /******************************************************************** /Calendar ********************************************************************/ /******************************************************************** Forum ********************************************************************/ elseif (strPos($componentPage, "user_forum")!== false || strPos($componentPage, "group_forum")!== false || $componentPage == "user" || $componentPage == "group" || $componentPage == "index") { $path = str_replace(array("\\", "//"), "/", dirname(__FILE__)."/include/forum.php"); if (!file_exists($path)) { $arParams["ERROR_MESSAGE"] = "Forum file is not exist."; $res = 0; } else $res = include_once($path); $arParams["FATAL_ERROR"] = ($res <= 0 ? "Y" : "N"); } /******************************************************************** /Forum ********************************************************************/ /******************************************************************** Content Search ********************************************************************/ elseif (strPos($componentPage, "user_content_search")!== false || strPos($componentPage, "group_content_search")!== false) { $path = str_replace(array("\\", "//"), "/", dirname(__FILE__)."/include/search.php"); if (!file_exists($path)) { $arParams["ERROR_MESSAGE"] = "Content search file is not exist."; $res = 0; } else { $res = include_once($path); } $arParams["FATAL_ERROR"] = ($res <= 0 ? "Y" : "N"); } /******************************************************************** /Content search ********************************************************************/ //registering routes for building preview if(\Bitrix\Main\ModuleManager::isModuleInstalled('tasks')) { Bitrix\Main\UrlPreview\Router::setRouteHandler( $arParams['SEF_FOLDER'].$arUrlTemplates['group_tasks_task'], 'tasks', '\Bitrix\Tasks\Ui\Preview\Task', array( 'taskId' => '$task_id', 'groupId' => '$group_id', 'action' => '$action', 'PATH_TO_USER_PROFILE' => $arParams['SEF_FOLDER'].$arUrlTemplates['user'], ) ); } CUtil::InitJSCore(array("window", "ajax")); \Bitrix\Main\UI\Extension::load("socialnetwork.slider"); $this->IncludeComponentTemplate($componentPage, array_key_exists($componentPage, $arCustomPagesPath) ? $arCustomPagesPath[$componentPage] : ""); //top panel button to reindex if($USER->IsAdmin()) { $APPLICATION->AddPanelButton(array( "HREF"=> $arResult["PATH_TO_GROUP_REINDEX"], "ICON"=>"bx-panel-reindex-icon", "ALT"=>GetMessage('SONET_PANEL_REINDEX_TITLE'), "TEXT"=>GetMessage('SONET_PANEL_REINDEX'), "MAIN_SORT"=>"1000", "SORT"=>100 )); } ?>