Привязка метода доставки в способу оплаты
Василий, друзья, приветствую!
Собственно вопрос по существу — есть кастомная страница с заказом, из стандартных полей там есть оплата и доставка.Я не нашел мануала и не стал копаться в коде дабы проверить факт наличия JS скрипта, который при выборе определенного метода доставки убирал бы метод оплаты и написал по старинке на JS простейшие функции управления видимостью.
Собственно вопрос — есть ли в дефолтном MS2 какая-либо удобная реализация этого функционала?
Т.е например если я выбрал «Отправка почтой» то вариант с «Оплата наличными» должен спрятаться, а вместо этого выехать например «Оплата картой». Ведь по идее такая штука быть должна, не даром в админке есть удобная привязка, которую можно вполне было задействовать..?
Собственно вопрос по существу — есть кастомная страница с заказом, из стандартных полей там есть оплата и доставка.Я не нашел мануала и не стал копаться в коде дабы проверить факт наличия JS скрипта, который при выборе определенного метода доставки убирал бы метод оплаты и написал по старинке на JS простейшие функции управления видимостью.
Собственно вопрос — есть ли в дефолтном MS2 какая-либо удобная реализация этого функционала?
Т.е например если я выбрал «Отправка почтой» то вариант с «Оплата наличными» должен спрятаться, а вместо этого выехать например «Оплата картой». Ведь по идее такая штука быть должна, не даром в админке есть удобная привязка, которую можно вполне было задействовать..?
UniSender и "Could not load controller request..."
Добрый день! Установил UniSender, а при входе в компонент в админке мне пишет такую гадость «Could not load controller request handler»… подскажите пожалуйста, в какую сторону копать?
Через runProcessor обновляется только ресурс id=1
Подскажите пожалуйста.
Есть сниппет для редактирования ресурса с фронта, данные отправляю через FornIt.
Но работает только с ресурсом id=1, в остальных случаях ресурс не обновляется а логи пусты.
Есть сниппет для редактирования ресурса с фронта, данные отправляю через FornIt.
Но работает только с ресурсом id=1, в остальных случаях ресурс не обновляется а логи пусты.
Сортировка по дате в рамках дня в eventscalendar2
Добрый день, Василий.
Отличный календарь. Спасибо.
Для сортировки событий по дате в рамках дня можно было бы в eventscalendar2.class.php в getEvents() в самом конце, перед return $content добавить:
Отличный календарь. Спасибо.
Для сортировки событий по дате в рамках дня можно было бы в eventscalendar2.class.php в getEvents() в самом конце, перед return $content добавить:
if (!function_exists('compare')) {
function compare($v1, $v2) {
if ($v1["date"] == $v2["date"]) return 0;
return ($v1["date"] < $v2["date"])? -1: 1;
}
}
usort($content, "compare");
Возможно, кому-то будет полезно Javascript ошибка в MS2 Images в thumbnails
Захожу в Источник файлов: MS2 Images и пробую поменять размеры превьюшек (thumbnails — редактировать), но ничего не сохраняет — в консоли ошибка:
Uncaught TypeError: Cannot read property '4' of undefined
в файле:
modx.grid.source.properties.js:137
В журнале ошибок только одна запись:
[2013-10-30 13:05:02] (ERROR @ /connectors/layout/modx.config.js.php) Error caching lexicon topic lexicon/ru/core/resource
Uncaught TypeError: Cannot read property '4' of undefined
в файле:
modx.grid.source.properties.js:137
В журнале ошибок только одна запись:
[2013-10-30 13:05:02] (ERROR @ /connectors/layout/modx.config.js.php) Error caching lexicon topic lexicon/ru/core/resource
Ajax - getPage
Здравствуйте. Есть обычный обработчик ajax запросов. Там вызывается сниппет getPage и выскакивает ошибка
<b>Fatal error</b>: Call to a member function getParameters() on a non-object in <b>M:\OpenServer\domains\localhost\API\core\cache\includes\elements\modsnippet\1.include.cache.php</b> on line <b>75</b>
Нарыл в руководстве Боба Рэя ответОбычно это означает, что объект $modx не доступен в данном месте вашего кода. Если это код внутри функции, вам следует передать данный объект как:
global $modx;
в начале функции для того, чтобы дать PHP знать, что вы хотите использовать объект $modx извне функции, вместо создания нового.
Если это не сработало, иногда нужно передать $modx в функцию в качестве аргумента.
Вот мой код, куда это вставить? Пробовал в самом начале — не работает.<?php
header('Content-Type: text/html; charset=utf-8');
function getData($action, $id){
// global $modx;
$res;
$mtime = microtime();
$mtime = explode(" ", $mtime);
$mtime = $mtime[1] + $mtime[0];
$tstart = $mtime;
/* /////////////////////////////////////////////////////////////////////////////////////////////////////////////////// */
if(!defined('MODX_API_MODE')){
define('MODX_API_MODE', true);
}
$modx_cache_disabled = true;
// подключаем настройки и определим базовый путь для MODX
require_once '../../config.core.php';
if(!defined('MODX_CORE_PATH')) define('MODX_CORE_PATH', $_SERVER['DOCUMENT_ROOT'].'/core/');
// подключаем класс modX
if(!include_once (MODX_CORE_PATH . "model/modx/modx.class.php")){
$errorMessage = 'Site temporarily unavailable';
include(MODX_CORE_PATH . 'error/unavailable.include.php');
header('HTTP/1.1 503 Service Unavailable');
echo "<html><title>Error 503: Site temporarily unavailable</title><body><h1>Error 503</h1><p>{$errorMessage}</p></body></html>";
exit();
}
// вывод данных из буфера
ob_start();
if(empty($options) || !is_array($options)) $options = array();
$modx = new modX('',$options);
if(!is_object($modx) || !($modx instanceof modX)){
ob_end_flush();
$errorMessage = '<a href="setup/">MODx not installed. Install now?</a>';
include(MODX_CORE_PATH . 'error/unavailable.include.php');
header('HTTP/1.1 503 Service Unavailable');
echo "<html><title>Error 503: Site temporarily unavailable</title><body><h1>Error 503</h1><p>{$errorMessage}</p></body></html>";
exit();
}
$modx -> startTime = $tstart;
$modx -> setLogLevel(modX::LOG_LEVEL_ERROR);
$modx -> setLogTarget('FILE');
$modx -> setDebug(E_ALL & ~E_NOTICE);
$modx -> initialize('web');
$modx -> resource = $modx -> getObject('modResource', $id); //ОЧЕНЬ ВАЖНЫЯ СТРОКА (ПОЛУЧАЕМ ССЫЛКУ НА ТЕКУЩИЙ ОБЪЕКТ ИЗ AJAX ВЫЗОВА)
/* /////////////////////////////////////////////////////////////////////////////////////////////////////////////////// */
// Вызов нужного метода
switch($action){
case 'paging':
$params['parents'] = $id;
$params['tpl'] = 'ajaxResources';
$params['includeTVs'] = 1;
$params['processTVs'] = 1;
$params['showHidden'] = 1;
$params['element'] = 'getResources';
$params['limit'] = 1;
$res = $modx -> runSnippet('getPage', $params);
break;
}
if(!empty($res)) {
return $res;
}
}
// Откликаться будет ТОЛЬКО на ajax запросы
if($_SERVER['HTTP_X_REQUESTED_WITH'] != 'XMLHttpRequest'){
return;
}
// сниппет будет обрабатывать не один вид запросов, поэтому работать будем по запрашиваемому действию
$action = $_GET['action'];
// Если в массиве POST нет действия - выход
if (empty($action)){
return;
}
else{
echo getData($action,(int) $_POST['id']);
}
?>
проблемы после обновлений
Сегодня обновила Tickets, HybridAuth, PdoTools и после этого видимо какие-то скрипты перестали работать, так как: 1) в галлереи minishop2 при нажатии на изображение — открывается не в сплывающем окне, а в новом, 2) перестали работать кнопки SocialLikes. Я в панике!