PHP code example of arrilot / bitrix-hermitage

1. Go to this page and download the library: Download arrilot/bitrix-hermitage library. Choose the download type require.

2. Extract the ZIP file and open the index.php.

3. Add this code to the index.php.
    
        
<?php
require_once('vendor/autoload.php');

/* Start to develop here. Best regards https://php-download.com/ */

    

arrilot / bitrix-hermitage example snippets


// Без пакета
foreach($arResult["ARTICLES"] as $article) {
    $arButtons = CIBlock::GetPanelButtons(
        $article["IBLOCK_ID"],
        $article["ID"],
        0,
        array("SECTION_BUTTONS" => false, "SESSID" => false)
    );

    $article["EDIT_LINK"] = $arButtons["edit"]["edit_element"]["ACTION_URL"];
    $article["DELETE_LINK"] = $arButtons["edit"]["delete_element"]["ACTION_URL"];

    $areaId = 'iblock_element_' . $advice['ID'];
    $this->AddEditAction($areaId, $article['EDIT_LINK'], CIBlock::GetArrayByID($element["IBLOCK_ID"], "ELEMENT_EDIT"));
    $this->AddDeleteAction($areaId, $article['DELETE_LINK'], CIBlock::GetArrayByID($element["IBLOCK_ID"], "ELEMENT_DELETE"), array("CONFIRM" => 'Вы уверены, что хотите удалить элемент?'));

    

Action::editAndDeleteIBlockElement($template, $element);
Action::editIBlockElement($template, $element);
Action::deleteIBlockElement($template, $element, $confirm = 'Вы уверены, что хотите удалить элемент?');

Action::editAndDeleteIBlockSection($template, $section);
Action::editIBlockSection($template, $section);
Action::deleteIBlockSection($template, $section, $confirm = 'Вы уверены, что хотите удалить раздел?');

Action::editAndDeleteHLBlockElement($template, $element);
Action::editHLBlockElement($template, $element);
Action::deleteHLBlockElement($template, $element, $confirm = 'Вы уверены, что хотите удалить элемент?');

// Без пакета
if($APPLICATION->GetShowIncludeAreas()) {
    $arButtons = CIBlock::GetPanelButtons($iblockId, 0, 0, [...]);
    $this->addIncludeAreaIcons(CIBlock::GetComponentMenu($APPLICATION->GetPublicShowMode(), $arButtons));
}

// С пакетом
\Arrilot\BitrixHermitage\Action::addForIBlock($this, $iblockId, [...]);
// В отличии от варианта выше, данный метод можно вызывать как в компоненте, так и в шаблоне. Он понимает и то, и другое в качестве первого параметра.

public function getHlblockIdAttribute()
{
    return 1; // поменять на нужный идентификатор
}