Финансовая поддержка VPS, бесплатные дополнения и docs Донаты оплачивают сервер и двигают бесплатные дополнения MODX и документацию. Поддержать

Всего 126 128 комментариев

Wassi Wassinen
Wassi Wassinen
Николай, прежде всего — вы молодцы.
Что хотелось бы предложить ( не уверен, что предложение по адресу).

Добавьте на Modx.pro раздел «Краудфандинг». Или что-то схожее по названию и смыслу. Логика следующая — в этот раздел можно будет добавить тикеты о краудфандинге (сборе) на тот или иной компонент и доработки. За сбор можно будет проголосовать (поставив + к рейтингу) и это будет поднимать крауды в топе. По сути, это ещё один раздел с стандартными тикетами в которых будут ссылки на донаты. Эти тикеты всегда будут на виду и отранжированы по рейтингу.

В шапке главной странице добавьте блок с выводом трёх плашек-ссылок на краудфандинги. Краудфандинг на MS3 — чтобы его постоянно было видно на главной странице + ещё пару топовых по рейтингу сборов. Или он сам в топ вылезет (уверен).

Таким образом:
1. Будет больше внимания привлечено к донатам на развитие дополнений MODx
2. Донаты всегда будут на виду (сейчас информацию про них найти довольно сложно)
3. Это хорошая инициатива для развития других компонентов

Благодарю за внимание.
Алексей
Алексей
Все решил, не проследил что исполняющий файл создан от другого пользователя, у кого проблемы с cron, проверяйте права и пользователя.
Файл cron:
<?php
    define('MODX_API_MODE', true);
    require 'Полный пусть до файла index.php в корне';
    $modx->getService('error', 'error.modError');
    $modx->setLogLevel(modX::LOG_LEVEL_ERROR);
    
    $corePath = $modx->getOption('sync_core_path', null,
	$modx->getOption('core_path', null, MODX_CORE_PATH) . 'components/sync/');
	$Sync = $modx->getService('sync');

	$params = array(
	'service'   => 'moysklad',
	'action'    => 'mgr/mscategory/sync',
	'sync_step' => 'sync_init',
	);

	$response = $Sync->curlExec($params);
Sergey (Sentinel)
Sergey (Sentinel)
Да.
Я написал скрипт, который при клике на сердечко открывает modal окно
const modal = document.querySelector(".modal-wishlist-main");
const closeButton = document.querySelector(".close-btn");

function toggleModal() {
    modal.classList.toggle("open");
}

function windowOnClick(event) {
    if (event.target === modal || event.target.closest(".modal-wishlist-main")) {
        toggleModal();
    }
}

document.addEventListener("click", function(event) {
    if (event.target.classList.contains("myfavorites-btn")) {
        toggleModal();
    } else if (event.target === closeButton) {
        toggleModal();
    } else if (!modal.contains(event.target)) {
        if (modal.classList.contains("open")) {
            toggleModal();
        }
    }
});
Но
[[!pdoPage?
    &element=`msProducts`
    &parents=`0`
    &limit=`12`
    &resources=`[[!+myf.ids]]`
  ]]
обновляется только при перезагрузки страницы, соответственно при всплывании окна там пусто
Konstantin
Konstantin
На свой страх и риск вы можете не выносить core, однако создатели движка настоятельно рекомендуют это сделать и у меня несколько сайтов так работают. Хочется перейти на sendit, но без риска для сайтов. Сайты работают на обычных shared хостингах так что особенно там ничего не «сконфигурируешь».
Sergey (Sentinel)
Sergey (Sentinel)
А как-то можно чтобы
[[!MyFavorites.ids? &toPlaceholder=`myf.ids`]]
[[!+myf.ids:is=`-0`:then=`
  [[%myfavorites_info_list_empty]]
`:else=`
  [[!pdoPage?
    &element=`msProducts`
    &parents=`0`
    &limit=`12`
    &resources=`[[!+myf.ids]]`
  ]]
  <button class="btn btn-primary" data-myfavorites-clear>[[%myfavorites_clear_list]]</button>
  [[!+page.nav]]
`]]
через ajax обновлялось при добавлении товара? нужно в modal выводить список