MrKarandash

MrKarandash

С нами с 27 сентября 2013; Место в рейтинге пользователей: #272

[РЕШЕНО] Баг при обновлении с 2.6.4 на 2.7.3

Здравствуйте. Обновился на 2.7.3, но в настройках документа не появилась опция Использовать текущий псевдоним в пути псевдонимов. Кто нибудь сталкивался с таким? Спасибо за ответы!

MrKarandash
18 июня 2020, 10:38
modx.pro
97
0

[РЕШЕНО] xParser и регулярка для выреза тегов

Доброго времени суток. Использую xParser, в определенный момент столкнулся с трудность написать следующую регулярку:

Есть вот такой кусок кода, содержащий размеры, которые в последующем нужно будет отправить JSON массивом в опцию size:

<span class="cf4all_error_msg" style="display: none">Пожалуйста, выберите опцию!	</span>
	
		<div class="inline-control-group">
		<input type="radio" value="1909" id="cf4all_input_13927_22_" class="cf4all_radio" name="customProductData[2521][122][13927][customsforall_option]"><label class="cf4all_button cf4all_no_color_btn " for="cf4all_input_13927_22_">XXS	  </label>
	</div>
		<div class="inline-control-group">
		<input type="radio" value="1910" id="cf4all_input_13927_3_" class="cf4all_radio" name="customProductData[2521][122][13927][customsforall_option]"><label class="cf4all_button cf4all_no_color_btn " for="cf4all_input_13927_3_">XS	  </label>
	</div>
		<div class="inline-control-group">
		<input type="radio" value="1911" id="cf4all_input_13927_1_" class="cf4all_radio" name="customProductData[2521][122][13927][customsforall_option]"><label class="cf4all_button cf4all_no_color_btn " for="cf4all_input_13927_1_">S	  </label>
	</div>
		<div class="inline-control-group">
		<input type="radio" value="1912" id="cf4all_input_13927_2_" class="cf4all_radio" name="customProductData[2521][122][13927][customsforall_option]"><label class="cf4all_button cf4all_no_color_btn " for="cf4all_input_13927_2_">M	  </label>
	</div>
		<div class="inline-control-group">
		<input type="radio" value="1913" id="cf4all_input_13927_9_" class="cf4all_radio" name="customProductData[2521][122][13927][customsforall_option]"><label class="cf4all_button cf4all_no_color_btn " for="cf4all_input_13927_9_">L	  </label>
	</div>
		<div class="inline-control-group">
		<input type="radio" value="1914" id="cf4all_input_13927_12_" class="cf4all_radio" name="customProductData[2521][122][13927][customsforall_option]"><label class="cf4all_button cf4all_no_color_btn " for="cf4all_input_13927_12_">XL	  </label>
	</div>
Не могу вырезать теги так, что бы остался только список размеров XXL и так далее.

Максимум что получилось — regex101.com/r/mD8fB0/30

Спасибо за ответы!

UPD: стоило только написать заметку и решение пришло в голову:

При создании поля используем чанк
@INLINE {$size | preg_get_all : '/(?=<label.*?>)(.*)(?=<\/label>)/m' | preg_replace : '/<label.*?>/': '' | preg_replace : '/\t../': '' | toJSON}
Не знаю на сколько это корректно, но выдает то что нужно. Поправки и другие способы приветствуются )
MrKarandash
12 ноября 2019, 00:08
modx.pro
123
0

miniShop2 и доставка в корзине в модальном окне

Здравствуйте. Ситуация такая: корзина вызывается FancyBox + Ajax в модальном окне, соответственно default.js не подгружается в самом модальном окне. Проблема в том, что переключение способов доставки не изменяет конечной стоимости заказа. но если вручную вписать default.js в контент страницы корзины то все работает, но появляется следующая проблема — то все срабатывает по два раза. Может быть повесить какой нибудь тригер на радиобатоны для пересчета стоимости корзины или типа того? Спасибо за ответы!
MrKarandash
17 сентября 2019, 18:34
modx.pro
218
0

[РЕШЕНО] Альтернатива DynamicDropdownTV в MIGX

Всем привет. Появилась необходимость сделать зависимые поля в MIGX. Компонент DynamicDropdownTV с ним не работает. Есть ли какие то альтернативы? Спасибо за ответы!
MrKarandash
04 сентября 2019, 18:07
modx.pro
260
0

miniShop2 + система баллов (бонусов/кэшбека) P.S. msProfile не устанавливается

Всем привет. Есть задача:
1. При успешной онлайн оплате заказа на сайте человеку, в зависимости от того, в какой он группе находится, должен на внутренний счет зачисляться кэшбек. Его процент зависит от того, к какой группе относится человек.
2. При оплате товара через онлайн оплату должна быть функция выбора оплаты кэшбеком до 50% стоимости корзины
3. Кэшбек в течении 30 суток должен сгорать

пытался запустить msProfile на тестовом модхосте — не устанавливается


Есть ли какие то идеи, похожие дополнения? Может быть вы делали такое и готовы повторить за деньги?
Всем спасибо за ответы!
MrKarandash
16 августа 2019, 15:42
modx.pro
266
0

[РЕШЕНО] Мультисайтовость, поддомены и https

Здравствуйте. Настроил мультисайтовость (через поддомены), все работает кроме того, что при включении https при переходе на любой поддомен пишет Не возможно отобразить страницу
Если расскоментировать следующую строку в .htaccess

# Rewrite secure requests properly to prevent SSL cert warnings, e.g. prevent 
# https://www.domain.com when your cert only allows https://secure.domain.com
#RewriteCond %{SERVER_PORT} !^443
#RewriteRule (.*) https://site.ru/$1 [R=301,L]
Получаем перенаправление на основной домен.

Сертификат для поддомена действителен и включен

Спасибо за ответы!
MrKarandash
03 июня 2019, 19:59
modx.pro
300
0

[РЕШЕНО] $modx->newQuery получить значение TV зная id документа

Добрый вечер. По некоторым причинам нет возможности использовать конструкцию $modx->getObject, но существует еще $modx->newQuery
Как через данный запрос получить значение TV зная id документа?
Спасибо за ответы!

UPD
В моем случае решение выглядит так

<?php
switch ($modx->event->name) {
    case 'msOnGetProductPrice':
    	$values = & $modx->event->returnedValues;
		if (isset($values['price'])) {
			$price = $values['price'];
		}
		$parent = $product->get('parent');
		
        $q = $modx->newQuery('modTemplateVar');
        $q->leftJoin('modTemplateVarResource', 'modTemplateVarResource', 'modTemplateVarResource.tmplvarid = modTemplateVar.id');
        $q->where(array('modTemplateVar.name' => 'day', 'modTemplateVarResource.contentid' => $parent));
        $q->select('modTemplateVarResource.value');

        if ($q->prepare() AND $q->stmt->execute()) {        
            $sale_day = (string)$modx->getValue($q->stmt);
            if (date("N") == $sale_day) {
                $q = $modx->newQuery('modTemplateVar');
                $q->leftJoin('modTemplateVarResource', 'modTemplateVarResource', 'modTemplateVarResource.tmplvarid = modTemplateVar.id');
                $q->where(array('modTemplateVar.name' => 'percent', 'modTemplateVarResource.contentid' => $parent));
                $q->select('modTemplateVarResource.value');
                
                if ($q->prepare() AND $q->stmt->execute()) {
                    $sale_percent = (string)$modx->getValue($q->stmt);
                    $sale_percent = (100 - $sale_percent) / 100;
                    $price = preg_replace('/\s+/', '', $price);
                    $new_price = round($price * $sale_percent);
                    $values['price'] = $new_price;
                }
            }
        }
        break;
}
MrKarandash
20 мая 2019, 19:51
modx.pro
297
0

[РЕШЕНО] CKEditor и плагин image

Всем привет. Потребовалось расширить функционал кнопки Изображение в этом редакторе. По умолчанию дополнение устанавливается со всеми возможными плагинами, в том числе image и image2
Но они почему то не включаются и работа с изображениями выглядит стандартным способом:



В настройках добавил:
Дополнительные плагины ckeditor.extra_plugins image,image2

Но толку мало. Кто нибудь сталкивался? Спасибо за ответы!
MrKarandash
28 февраля 2019, 19:20
modx.pro
1 036
0

[РЕШЕНО] MiniShop2 автоматическая отчистка корзины раз в сутки

Здравствуйте. Кто нибудь может подсказать варианты автоматической очистки корзины раз в сутки? пробовал запускать через крон php файл, но так как нет авторизации в системе под админом, то он не очищает ничего. Спасибо за ответы!

UPD:
задал крону выполнение следующего файла раз в сутки в 00:00
Стирает все сессии, в админку приходится логинится каждый день

<?php
define('MODX_API_MODE', true);
require $_SERVER['DOCUMENT_ROOT'].'index.php';

$modx->getService('error','error.modError');
$modx->setLogLevel(modX::LOG_LEVEL_INFO);
$modx->setLogTarget(XPDO_CLI_MODE ? 'ECHO' : 'HTML');

$sql = "DELETE FROM modx_session";
$count = $modx->exec($sql);
// Получим количество удаленных записей
print("Удалено $count записей.");


?>
MrKarandash
06 февраля 2019, 15:58
modx.pro
467
0

[РЕШЕНО]ModX 2.7.0 Не работают вложенные URL

Здравствуйте. Поставил чистый 2.70, в процессе разработки пришел к тому что даже при включенной опции use_alias_path не работают вложенные URl. Все страницы имеют адрес первого уровня. Баг или нужно включить еще где то что то? .htaccess само собой переименован

Спасибо за ответы!

UPD: с версии 2.7.0 при редактировании ресурса во вкладке Настройки появилась галочка Использовать текущий псевдоним в пути псевдонимов, которая по умолчанию выключена у всех ресурсов. Глобальной настройки нет, так что у каждого контейнера выставлять вручную
MrKarandash
29 января 2019, 01:11
modx.pro
1 350
0