public static function GetElementInfo($elementID, $checkPermissions = true)
 {
     if (!(IsModuleInstalled('iblock') && IsModuleInstalled('webdav') && CModule::IncludeModule('iblock') && CModule::IncludeModule('webdav'))) {
         return array();
     }
     if ($checkPermissions && !self::CheckElementReadPermission($elementID)) {
         return array();
     }
     $arElement = self::GetElement($elementID);
     if (!$arElement) {
         return array();
     }
     if (self::$URL_TEMPLATES === null && method_exists('CWebDavIblock', 'GetULRsFromIBlockID')) {
         self::$URL_TEMPLATES = CWebDavIblock::GetULRsFromIBlockID($arElement['IBLOCK_ID']);
     }
     $showUrlTemplate = '';
     $viewUrlTemplate = '';
     $editUrlTemplate = '';
     $deleteUrlTemplate = '';
     if (is_array(self::$URL_TEMPLATES) && !empty(self::$URL_TEMPLATES)) {
         if (isset(self::$URL_TEMPLATES['view'])) {
             $showUrlTemplate = self::$URL_TEMPLATES['view'];
         }
         if (isset(self::$URL_TEMPLATES['history_get'])) {
             $viewUrlTemplate = self::$URL_TEMPLATES['history_get'];
         }
         if (isset(self::$URL_TEMPLATES['edit'])) {
             $editUrlTemplate = self::$URL_TEMPLATES['edit'];
         }
         if (isset(self::$URL_TEMPLATES['delete_dropped'])) {
             $deleteUrlTemplate = self::$URL_TEMPLATES['delete_dropped'];
         }
     }
     if ($showUrlTemplate === '') {
         $showUrlTemplate = CWebDavIblock::LibOptions('lib_paths', true, $arElement['IBLOCK_ID']);
         if (!is_string($showUrlTemplate)) {
             $showUrlTemplate = '';
         }
     }
     if ($showUrlTemplate === '') {
         //HACK: Build default paths.
         if (\Bitrix\Main\ModuleManager::isModuleInstalled('bitrix24')) {
             $showUrlTemplate = '/docs/element/view/#ELEMENT_ID#/';
             $viewUrlTemplate = '/docs/element/historyget/#ELEMENT_ID#/#ELEMENT_NAME#';
             $editUrlTemplate = '/docs/element/edit/edit/#ELEMENT_ID#/';
         } else {
             $showUrlTemplate = SITE_DIR . 'docs/shared/element/view/#ELEMENT_ID#/';
             $viewUrlTemplate = SITE_DIR . 'docs/shared/element/historyget/#ELEMENT_ID#/#ELEMENT_NAME#';
             $editUrlTemplate = SITE_DIR . 'docs/shared/element/edit/edit/#ELEMENT_ID#/';
         }
     }
     $showUrl = self::PrepareUrl($showUrlTemplate, $arElement);
     $viewUrl = $viewUrlTemplate !== '' ? self::PrepareUrl($viewUrlTemplate, $arElement) : str_replace('view', 'historyget', $showUrl);
     $editUrl = $editUrlTemplate !== '' ? self::PrepareUrl($editUrlTemplate, $arElement) : str_replace('view', 'edit', $showUrl) . 'EDIT/';
     $deleteUrl = $deleteUrlTemplate !== '' ? self::PrepareUrl($deleteUrlTemplate, $arElement) : (preg_match('/\\/docs\\/shared\\//i', $showUrl) ? '' : str_replace('view', 'edit', $showUrl) . 'DELETE_DROPPED/');
     $size = '';
     $dbSize = CIBlockElement::GetProperty($arElement['IBLOCK_ID'], $arElement['ID'], array(), array('CODE' => 'WEBDAV_SIZE'));
     if ($dbSize && ($arSize = $dbSize->Fetch())) {
         $size = CFile::FormatSize($arSize['VALUE']);
     }
     return array('ID' => $elementID, 'NAME' => $arElement['NAME'], 'EDIT_URL' => CHTTP::urlAddParams($editUrl, array('ncc' => '1')), 'VIEW_URL' => CHTTP::urlAddParams($viewUrl, array('ncc' => '1')), 'DELETE_URL' => CHTTP::urlAddParams($deleteUrl, array('ncc' => '1')), 'SHOW_URL' => CHTTP::urlAddParams($showUrl, array('ncc' => '1')), 'SIZE' => $size);
 }