Задать вопрос
  • Как найти скрипт импорта в iblock для 1с.битрикс?

    @pingvin156 Автор вопроса
    Нашел вот это, но явно не похоже
    5adf624f50efe743814921.png
    Не пойму, где еще может быть...
  • Как найти скрипт импорта в iblock для 1с.битрикс?

    @pingvin156 Автор вопроса
    Олег Мифле, огромное спасибо! Нашел /bitrix/php_interface/ - есть там ссылка на что-то похожее. Копаюсь в коде...
    А где увидеть периодичность запуска и как вручную запустить?
  • Как найти скрипт импорта в iblock для 1с.битрикс?

    @pingvin156 Автор вопроса
    Олег Мифле, а где эта настройка импорта находится? Как мне выйти на эти обработчики? Я с Битриксом не работал ранее...
  • Как найти скрипт импорта в iblock для 1с.битрикс?

    @pingvin156 Автор вопроса
    Нашел еще один лог с упоминанием файла загрузки
    Лог лежит здесь: bitrix\php_interface\log\2018-04-23-16-10-02.log.txt
    Содержимое такое:
    [2018-04-23 16:10:02 (YEKT)] START checkXML()
    [2018-04-23 16:10:02 (YEKT)] Последний обработанный файл: MessageFor_30000000383.xml
    [2018-04-23 16:10:02 (YEKT)] Путь к файлу выгрузки: /www/upload/1c_catalog/MessageFor_30000000384.xml
    [2018-04-23 16:10:02 (YEKT)] START parseXML()
    [2018-04-23 16:10:02 (YEKT)] BEFORE END parseXML: return self::addItems($arRes['ITEMS']
    [2018-04-23 16:10:02 (YEKT)] START addItems
    [2018-04-23 16:10:03 (YEKT)] Обновление существующего элемента "Велопарковка 0524"
    ...........................
    [2018-04-23 16:18:10 (YEKT)] END deactivateItems: return true
    [2018-04-23 16:18:11 (YEKT)] END checkXML(): return MA_CustomXMLimport::checkXML();
  • Как найти скрипт импорта в iblock для 1с.битрикс?

    @pingvin156 Автор вопроса
    Надо найти косяк в загрузке. Есть поле в Инфоблоке "Цена". Надо понять, почему она не обновляется по этому XML-файлу.
    Выгрузка настраивалась очень давно и не мной.

    Нашел "/bitrix/admin/1c_exchange.php". Вроде этот файл..
    Там только такое:
    <?
    require_once($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/sale/admin/1c_exchange.php");
    ?>

    В файле /bitrix/modules/sale/admin/1c_exchange.php вот что:
    <?
    define('BX_SESSION_ID_CHANGE', false);
    define('BX_SKIP_POST_UNQUOTE', true);
    define('NO_AGENT_CHECK', true);
    define("STATISTIC_SKIP_ACTIVITY_CHECK", true);

    if (isset($_REQUEST["type"]) && $_REQUEST["type"] == "crm")
    {
    define("ADMIN_SECTION", true);
    }
    require($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/prolog_before.php");

    if($type=="sale")
    {
    $APPLICATION->IncludeComponent("bitrix:sale.export.1c", "", Array(
    "SITE_LIST" => COption::GetOptionString("sale", "1C_SALE_SITE_LIST", ""),
    "EXPORT_PAYED_ORDERS" => COption::GetOptionString("sale", "1C_EXPORT_PAYED_ORDERS", ""),
    "EXPORT_ALLOW_DELIVERY_ORDERS" => COption::GetOptionString("sale", "1C_EXPORT_ALLOW_DELIVERY_ORDERS", ""),
    "EXPORT_FINAL_ORDERS" => COption::GetOptionString("sale", "1C_EXPORT_FINAL_ORDERS", ""),
    "CHANGE_STATUS_FROM_1C" => COption::GetOptionString("sale", "1C_CHANGE_STATUS_FROM_1C", ""),
    "FINAL_STATUS_ON_DELIVERY" => COption::GetOptionString("sale", "1C_FINAL_STATUS_ON_DELIVERY", "F"),
    "REPLACE_CURRENCY" => COption::GetOptionString("sale", "1C_REPLACE_CURRENCY", ""),
    "GROUP_PERMISSIONS" => explode(",", COption::GetOptionString("sale", "1C_SALE_GROUP_PERMISSIONS", "1")),
    "USE_ZIP" => COption::GetOptionString("sale", "1C_SALE_USE_ZIP", "Y"),
    "INTERVAL" => COption::GetOptionString("sale", "1C_INTERVAL", 30),
    "FILE_SIZE_LIMIT" => COption::GetOptionString("sale", "1C_FILE_SIZE_LIMIT", 200*1024),
    "SITE_NEW_ORDERS" => COption::GetOptionString("sale", "1C_SITE_NEW_ORDERS", "s1"),
    "IMPORT_NEW_ORDERS" => COption::GetOptionString("sale", "1C_IMPORT_NEW_ORDERS", "N"),
    )
    );
    }
    elseif($type=="crm")
    {
    if($_SERVER["REQUEST_METHOD"] == "POST")
    {
    $orderId = intval($_POST["ORDER_ID"]);
    $modifLabel = intval($_POST["MODIFICATION_LABEL"]);
    $ZZZ = intval($_POST["ZZZ"]);
    $IMPORT_SIZE = intval($_POST["IMPORT_SIZE"]);
    $GZ_COMPRESSION_SUPPORTED = intval($_POST["GZ_COMPRESSION_SUPPORTED"]);
    }
    else
    {
    $orderId = intval($_GET["ORDER_ID"]);
    $modifLabel = intval($_GET["MODIFICATION_LABEL"]);
    $ZZZ = intval($_GET["ZZZ"]);
    $IMPORT_SIZE = intval($_GET["IMPORT_SIZE"]);
    $GZ_COMPRESSION_SUPPORTED = intval($_GET["GZ_COMPRESSION_SUPPORTED"]);
    }

    $APPLICATION->IncludeComponent("bitrix:sale.export.1c", "", Array(
    "CRM_MODE" => "Y",
    "ORDER_ID" => $orderId,
    "MODIFICATION_LABEL" => $modifLabel,
    "ZZZ" => $ZZZ,
    "IMPORT_SIZE" => $IMPORT_SIZE,
    "GZ_COMPRESSION_SUPPORTED" => $GZ_COMPRESSION_SUPPORTED,
    "GROUP_PERMISSIONS" => explode(",", COption::GetOptionString("sale", "1C_SALE_GROUP_PERMISSIONS", "1")),
    "REPLACE_CURRENCY" => COption::GetOptionString("sale", "1C_REPLACE_CURRENCY", ""),
    "USE_ZIP" => "N",
    )
    );
    }
    elseif($type=="catalog")
    {
    $APPLICATION->IncludeComponent("bitrix:catalog.import.1c", "", Array(
    "IBLOCK_TYPE" => COption::GetOptionString("catalog", "1C_IBLOCK_TYPE", "-"),
    "SITE_LIST" => array(COption::GetOptionString("catalog", "1C_SITE_LIST", "-")),
    "INTERVAL" => COption::GetOptionString("catalog", "1C_INTERVAL", "-"),
    "GROUP_PERMISSIONS" => explode(",", COption::GetOptionString("catalog", "1C_GROUP_PERMISSIONS", "1")),
    "GENERATE_PREVIEW" => COption::GetOptionString("catalog", "1C_GENERATE_PREVIEW", "Y"),
    "PREVIEW_WIDTH" => COption::GetOptionString("catalog", "1C_PREVIEW_WIDTH", "100"),
    "PREVIEW_HEIGHT" => COption::GetOptionString("catalog", "1C_PREVIEW_HEIGHT", "100"),
    "DETAIL_RESIZE" => COption::GetOptionString("catalog", "1C_DETAIL_RESIZE", "Y"),
    "DETAIL_WIDTH" => COption::GetOptionString("catalog", "1C_DETAIL_WIDTH", "300"),
    "DETAIL_HEIGHT" => COption::GetOptionString("catalog", "1C_DETAIL_HEIGHT", "300"),
    "ELEMENT_ACTION" => COption::GetOptionString("catalog", "1C_ELEMENT_ACTION", "D"),
    "SECTION_ACTION" => COption::GetOptionString("catalog", "1C_SECTION_ACTION", "D"),
    "FILE_SIZE_LIMIT" => COption::GetOptionString("catalog", "1C_FILE_SIZE_LIMIT", 200*1024),
    "USE_CRC" => COption::GetOptionString("catalog", "1C_USE_CRC", "Y"),
    "USE_ZIP" => COption::GetOptionString("catalog", "1C_USE_ZIP", "Y"),
    "USE_OFFERS" => COption::GetOptionString("catalog", "1C_USE_OFFERS", "N"),
    "FORCE_OFFERS" => COption::GetOptionString("catalog", "1C_FORCE_OFFERS", "N"),
    "USE_IBLOCK_TYPE_ID" => COption::GetOptionString("catalog", "1C_USE_IBLOCK_TYPE_ID", "N"),
    "USE_IBLOCK_PICTURE_SETTINGS" => COption::GetOptionString("catalog", "1C_USE_IBLOCK_PICTURE_SETTINGS", "N"),
    "TRANSLIT_ON_ADD" => COption::GetOptionString("catalog", "1C_TRANSLIT_ON_ADD", "Y"),
    "TRANSLIT_ON_UPDATE" => COption::GetOptionString("catalog", "1C_TRANSLIT_ON_UPDATE", "Y"),
    "TRANSLIT_REPLACE_CHAR" => COption::GetOptionString("catalog", "1C_TRANSLIT_REPLACE_CHAR", "_"),
    "SKIP_ROOT_SECTION" => COption::GetOptionString("catalog", "1C_SKIP_ROOT_SECTION", "N"),
    "DISABLE_CHANGE_PRICE_NAME" => COption::GetOptionString("catalog", "1C_DISABLE_CHANGE_PRICE_NAME")
    )
    );
    }
    elseif($type=="reference")
    {
    $APPLICATION->IncludeComponent("bitrix:catalog.import.hl", "", Array(
    "INTERVAL" => COption::GetOptionString("catalog", "1C_INTERVAL", "-"),
    "GROUP_PERMISSIONS" => explode(",", COption::GetOptionString("catalog", "1C_GROUP_PERMISSIONS", "1")),
    "FILE_SIZE_LIMIT" => COption::GetOptionString("catalog", "1C_FILE_SIZE_LIMIT", 200*1024),
    "USE_CRC" => COption::GetOptionString("catalog", "1C_USE_CRC", "Y"),
    "USE_ZIP" => COption::GetOptionString("catalog", "1C_USE_ZIP", "Y"),
    )
    );
    }
    elseif($type=="get_catalog")
    {
    $APPLICATION->IncludeComponent("bitrix:catalog.export.1c", "", Array(
    "IBLOCK_ID" => COption::GetOptionString("catalog", "1CE_IBLOCK_ID", ""),
    "INTERVAL" => COption::GetOptionString("catalog", "1CE_INTERVAL", "-"),
    "ELEMENTS_PER_STEP" => COption::GetOptionString("catalog", "1CE_ELEMENTS_PER_STEP", 100),
    "GROUP_PERMISSIONS" => explode(",", COption::GetOptionString("catalog", "1CE_GROUP_PERMISSIONS", "1")),
    "USE_ZIP" => COption::GetOptionString("catalog", "1CE_USE_ZIP", "Y"),
    )
    );
    }
    elseif($type=="listen")
    {
    $APPLICATION->RestartBuffer();

    CModule::IncludeModule('sale');

    $timeLimit = 60;//1 minute
    $startExecTime = time();
    $max_execution_time = (intval(ini_get("max_execution_time")) * 0.75);
    $max_execution_time = ($max_execution_time > $timeLimit )? $timeLimit:$max_execution_time;

    if(CModule::IncludeModule("sale") && defined("CACHED_b_sale_order"))
    {
    while(!$CACHE_MANAGER->getImmediate(CACHED_b_sale_order, "sale_orders"))
    {
    usleep(1000);

    if(intVal(time() - $startExecTime) > $max_execution_time)
    {
    break;
    }
    }
    }

    if($CACHE_MANAGER->getImmediate(CACHED_b_sale_order, "sale_orders"))
    {
    echo "success\n";
    }
    else
    {
    CHTTP::SetStatus("304 Not Modified");
    }
    }
    else
    {
    $APPLICATION->RestartBuffer();
    echo "failure\n";
    echo "Unknown command type.";
    }
    ?>
    <?require($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/epilog_after.php");?>
  • Как обновить инфоблок по выгрузке из 1с?

    @pingvin156 Автор вопроса
    Есть справочник "Рекламные блоки", который должен отражаться на сайте. Сейчас очень древняя "заливка" на сайте отражается. Я нашел этот инфоблок. Он действительно в неактуальном состоянии.
    В 1с есть кнопка "Сервис - Обмен данными в Web-сайтом". Если на нее нажать, то процесс проходит нормально, вижу появление выгруженного файла XML. Данные в нём актуальны, но инфоблок как был так и остался со старыми данными...
  • Почему composer libphonenumber-for-php не устанавливается? Как исправить?

    @pingvin156 Автор вопроса
    как его установить?. подскажите, плиз
  • Как начать разрабатывать мобильную версию сайта для DRUPAL8?

    @pingvin156 Автор вопроса
    Есть одна проблема: эти модули для 7ки :(
  • Как начать разрабатывать мобильную версию сайта для DRUPAL8?

    @pingvin156 Автор вопроса
    Хм... тема очень сильно отличается. Попробую над этим подумать!
  • Как начать разрабатывать мобильную версию сайта для DRUPAL8?

    @pingvin156 Автор вопроса
    Я так понимаю адаптивная тема настраивается под ширину. А если еще необходима возможность принудительного переключения между версиями: мобильной и десктопной?
  • Разрастаются логи messages в Linux. Что надо сделать?

    @pingvin156 Автор вопроса
    CityCat4, нашел причину размножения записей в логе. Спасибо тебе огромное!
    Я так понимаю /usr/bin/bzip2 - это архиватор, но я не нашел его в папке /usr/bin/. Есть zip. Он подойдет?
    И еще один вопрос. Когда он запустит эту архивацию? В понедельник? Стоит значение weekly. Или есть настройка, которая об этом говорит?
  • Разрастаются логи messages в Linux. Что надо сделать?

    @pingvin156 Автор вопроса
    CityCat4, именно messages самый толстый. Остальные нормальные. Сейчас messages весит уже 13 Гб и продолжает расти.

    То есть я делаю так:
    Заменяю две строки
    # uncomment this if you want your log files compressed
    #compress

    на 5 строк
    # Compress all logs by default
    compress
    # uncomment this if you want your log files compressed
    compresscmd /usr/bin/bzip2
    compressext .bz2

    Верно я понял?
  • Разрастаются логи messages в Linux. Что надо сделать?

    @pingvin156 Автор вопроса
    Там такое содержание:

    # see "man logrotate" for details
    # rotate log files weekly
    weekly

    # keep 4 weeks worth of backlogs
    rotate 4

    # create new (empty) log files after rotating old ones
    create

    # use date as a suffix of the rotated file
    dateext

    # uncomment this if you want your log files compressed
    #compress

    # RPM packages drop log rotation information into this directory
    include /etc/logrotate.d

    # no packages own wtmp and btmp -- we'll rotate them here
    /var/log/wtmp {
    monthly
    create 0664 root utmp
    minsize 1M
    rotate 1
    }

    /var/log/btmp {
    missingok
    monthly
    create 0600 root utmp
    rotate 1
    }

    # system-specific logs may be also be configured here.
    include /etc/logrotate.d/web
  • Как настроить почтовый сервер для того чтобы письма не попадали в спам?

    @pingvin156 Автор вопроса
    Кто-нибудь настраивал свой почтовый сервер? Это вроде распространенная задача...
  • Письма Drupal8 попадают в спам. Как бороться?

    @pingvin156 Автор вопроса
    5a36cbaf8b238964792011.png5a36cbb2f11d3651909096.png
    Вроде всё корректно...
  • Письма Drupal8 попадают в спам. Как бороться?

    @pingvin156 Автор вопроса
    DKIM мне удалось добавить, но столкнулся с такой проблемой

    Ваша DKIM подпись не действительна
    DomainKeys Identified Mail (DKIM) представляет собой метод создания соответствия доменного имени в сообщении электронной почты, что позволяет человеку, роли или организации требовать определенную ответственность за это сообщение.
    Подпись DKIM Вашего письма:

    v=1;
    a=rsa-sha256;
    q=dns/txt;
    c=relaxed/relaxed;
    d=mysite.com;
    s=dkim;
    h=Content-Transfer-Encoding:Content-Type:MIME-Version:To:From:Subject:Date:Message-ID:Sender:Reply-To:Cc:Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To:References:List-Id:List-Help:List-Unsubscribe:List-Subscribe:List-Post:List-Owner:List-Archive;
    bh=IHvEREZh5+65s9WlWHQ5Oh+vpCudqrTUny0d3p6NZII=;
    b=VAIxJry6EE8xYfuFxI7Fr85+CdTx2gDBs5YuXsVKoWuraf2WlCZnoL1WSxzA2CCybYp2NQlIevPQf5EBMUWOCr0NO27h2XFNSCU8HB9GsR4KriRvxQTFeDKUmq5E0cDjxTHHycl0rYfxPgh8TUCfuHud6Jei7R4/6OIWyBglktk=;

    Нам не удалось получить Ваш открытый ключ.


    Куда копать?..
  • Письма Drupal8 попадают в спам. Как бороться?

    @pingvin156 Автор вопроса
    Используем свой почтовый сервер. Перешел мне от настройщика, но похоже, он недоработал...

    Результаты теста:

    MIME_HTML_ONLY Message only has text/html MIME parts
    Вам нужно добавить текстовую версию письма (text/plain)

    RDNS_NONE Delivered to internal network by a host with no rDNS
    Возможно это ложное срабатывание, но пожалуйста, проверьте обратную зону DNS

    [SPF] не позволяет Вашему серверу использовать

    [Sender ID] не позволяет Вашему серверу использовать

    Ваше сообщение не подписано DKIM

    Мы не нашли почтовый сервер (A-запись) на хосте
  • Не для всех работает протокол https. Как побороть?

    @pingvin156 Автор вопроса
    Андрей, попробую разобраться с этим вопросом. Большое тебе спасибо!!!!