Задать вопрос
  • Почему неправильно работает добавление в избранное?

    @Fedot1
    Добрый день. Попробуйте сессии Битрикс, вместо куки. Делал у себя на проекте, работает
    /////Можно сохранить в Битрикс сессии
    $session = \Bitrix\Main\Application::getInstance()->getSession();
    //$arElements = unserialize($APPLICATION->get_cookie('favorites'));
    $arElements = unserialize($session->get('favorites')/*$APPLICATION->get_cookie('favorites')*/);
    if(!in_array($_GET['id'], $arElements))
    {
    $arElements[] = $_GET['id'];
    $result = 1; // Датчик. Добавляем
    }
    else {
    $key = array_search($_GET['id'], $arElements); // Находим элемент, который нужно удалить из избранного
    unset($arElements[$key]);

    $result = 2; // Датчик. Удаляем
    }


    $session->set('favorites', serialize($arElements));
    /*
    $cookie = new Cookie("favorites", serialize($arElements), time() + 60*60*24*60);
    $cookie->setDomain($context->getServer()->getHttpHost());
    $cookie->setHttpOnly(false);
    $context->getResponse()->addCookie($cookie);
    $context->getResponse()->flush("");*/

    в файле component_epolog.php
    if(!$USER->IsAuthorized())
    {
    $session = \Bitrix\Main\Application::getInstance()->getSession();
    $arFavorites = unserialize($session->get('favorites'));
    //$arElements = unserialize($APPLICATION->get_cookie('favorites'));
    //$arFavorites = unserialize($APPLICATION->get_cookie("favorites"));
    //print_r($arFavorites);
    }
    и аналогично в index.php
    if(!$USER->IsAuthorized()) // Для неавторизованного
    {
    global $APPLICATION;
    $session = \Bitrix\Main\Application::getInstance()->getSession();
    $favorites = unserialize($session->get('favorites'));
    Ответ написан
    Комментировать
  • Как отобразить дерево каталогов проекта в PhpStorm?

    @Fedot1
    Была похожая ситуация в Ubuntu. Мне помогло закрытие проекта( File->Close Project) . А затем просто заново проект отрыл. Версия PhpStorm 2020.3
    Ответ написан
    1 комментарий