Сергей Лим

Сергей Лим

С нами с 24 мая 2015; Место в рейтинге пользователей: #50
Michael
21 декабря 2020, 11:57
1
0
Да, безусловно. Галочка создана.
Передаю ее в спипете через allowedFields как vladelec_viber а в самой форме как корректную обработку сделать я не знаю.
[[!ms2form?
      &parent=`38`
      &parentMse2form=`{"parents": "38"}`
      &parents=`76,77,84,188`
      &editor=`bootstrapMarkdown`
      &templates=`20==Квартира Премиум`
      &allowedFields=`parent,pagetitle,content,published,template,hidemenu,tags,fio,vladelec_phone,vladelec_viber`
      &requiredFields=`parent,pagetitle,content`
    ]]
Беру из бутстрапа готовый блок с галочкой и прописываю name=«vladelec_viber» а обработку как сделать. Надо наверное записывать что-то в value после проверки установлена ли галочка при передаче данных с формы.

<div class="form-group form-check">
    <input type="checkbox" class="form-check-input" name="vladelec_viber" id="vladelec_viber" value="">
    <label class="form-check-label" for="vladelec_viber">Viber</label>
  </div>
Андрей
21 марта 2020, 13:17
1
0
Поддержка твшек давно появилась и работала. Покажи как эти поля указываешь.

Опции задаются так: options-name, TV так: tv11 (где 11 — id твшки). Т.е.:
<input type="text" value="[[+tv11]]" name="tv11" class="form-control">

А в параметре allowedFields наоборот указывается не id а имя TV.
Володя
30 августа 2019, 06:35
1
0
удалить модификации продукта
$modx->removeCollection('msopModification', ['rid' => $rid]);
создать/ обновить
$modx->call('msopModification', 'saveProductModification', [&$modx, $rid, $modifications]);
Василий Столейков
17 мая 2018, 12:37
2
0
<?php
$res = $modx->getObject('modResource', $_GET['docid']);
if($res) {
    $createdby = $res->get('createdby');
    if($modx->user->isMember('Administrator') || $createdby == $modx->user->id) { // если админ или если ты автор ресурса
        $res->set('deleted', 1);
        if($res->save()) {
            return 'Ресурс отмечен как удаленный!';
        }
    }    
}
Володя
20 июня 2017, 17:55
1
0
[[+Option.value]]
{$option.value}
{$option|join}
{$option.0}
Сергей Водолагин
19 июня 2017, 18:43
8
+1
Вот друзья помогли (так как глубина от родителей до нужных ресурсов от 1 до 5 вот решение)
[[pdoResources?
    &parents=`4`
    &limit=`100`
    &sortby=`{ "pm5":"ASC","pm4":"ASC", "pm3":"ASC", "pm2":"ASC", "pm1":"ASC" }`
    &where=`{ "template": 10 }`
    &tpl=`tplSklad`
    &leftJoin=`{
        "p1": {
            "class": "modResource",
            "on": "p1.id = modResource.id"
        },
        "p2": {
            "class": "modResource",
            "on": "p2.id = p1.parent"
        },
        "p3": {
            "class": "modResource",
            "on": "p3.id = p2.parent"
        },
        "p4": {
            "class": "modResource",
            "on": "p4.id = p3.parent"
        },
        "p5": {
            "class": "modResource",
            "on": "p5.id = p4.parent"
        }
    }`
    &select=`{
        "modResource": "*",
        "p1": "COALESCE(p1.menuindex, 999999999) as pm1",
        "p2": "COALESCE(p2.menuindex, 999999999) as pm2",
        "p3": "COALESCE(p3.menuindex, 999999999) as pm3",
        "p4": "COALESCE(p4.menuindex, 999999999) as pm4",
        "p5": "COALESCE(p5.menuindex, 999999999) as pm5"
    }`
]]
mngatoff
21 сентября 2016, 12:02
1
+1
я уже делал)
вот тут
Максим Кузнецов
08 августа 2016, 10:34
3
+3
Реализовать ajax-запрос. Примерно вот так:

1. Вешаем на событие переключения селектора скрипт, который будет выполнять ajax-запрос:
<script>
	var canClick = true;

	$(document).on('change', 'select[name="selector-1"]', function(e) {
		if ($(this).val() != '' && canClick = true) {
    			$.ajax({
    				type: "POST",
    				url: "assets/ajax/getlist.php",
    				data: {
    					action: 'getList', 
    					parent: $("select[name='selector-1']").val()
       		        	},
    			
    				beforeSend: function(){
					canClick = false;
    				},
    			
    				success: function(response) {
    					var data = eval(response);
    
    					switch (data[1]) {
    						case 'success':
							//Если все ок - вставляем результат во второй селектор
							$("select[name='selector-2']").html("<option value='' selected disabled>Выберите значение из списка</option>" + data[0]).val("");

    							break;
    							
    						case 'error':
							//Если не ок - выводим ошибку (используется jGrowl)
    							$.jGrowl(data[0], {theme: 'error', position: 'center'});
    							
    							break;
    						
    					}

					canClick = true;
    				}
    			});
		}
	});
</script>

2. Создаем файл (в моем примере assets/ajax/getlist.php), на который ссылается скрипт и который будет возвращать нам результат:
<?php
	if ($_SERVER['HTTP_X_REQUESTED_WITH'] != 'XMLHttpRequest' || empty($_POST['action'])) {
		return;
	}

	define('MODX_API_MODE', true);

	require dirname(dirname(dirname(__FILE__))) . '/index.php';
	
	$modx->getService('error','error.modError');
	$modx->setLogLevel(modX::LOG_LEVEL_ERROR);
	$modx->setLogTarget('FILE');
	
	
	if ($_POST['action'] == "getList" && isset($_POST['parent'])) {
		//Получаем значение для второго селектора
		$snippetParams = array();
		$snippetParams['parents'] = intval($_POST['parent']);
		$snippetParams['tpl'] = '@INLINE <option value="[[+menutitle]]">[[+menutitle]]</option>';
		//Дописать параметры для сниппета получающего результаты по вкусу			

		$snippetResult = $modx->runSnippet('pdoResources', $snippetParams);

		$result = array($snippetResult, 'success');
	}
	else {
		$result = array('Некорректный запрос', 'error');
	}
	
	if (!empty($result)) {
		die(json_encode($result));
	}
Роман
25 ноября 2015, 09:17
1
+2
Была проблема что не пускало в админку, тупо писало, что не подходит пароль, хотя пароль был верен. Проблема была в кодировке: (на одном аккаунте крутился Битрикс + MODx)

Стояло для всего аккаунта:
php_value mbstring.internal_encoding cp1251
Разнес для каждого сайта отдельно, себе указал и проблема исчезла
php_value mbstring.internal_encoding UTF-8

Тема, где пытался решить вопрос общими усилиями ссылка более детальное описание!
Илья Уткин
15 сентября 2015, 15:28
1
+1
[[pdoMenu?
    &parents=`0`
    &level=`2`
    &where=`{"parent:!=":15}`
]]