AjaxForm + FormIt + самописный сниппет всегда возвращает success: true, с чем это может быть связано?
        Пытаюсь понять, почему у меня форма всегда возвращает «Успешно», хотя на самом деле это не так. Пробую, упростив до максимума сделать так: 
Чанк form1
Чанк form1.form:
Спасибо, буду рад идеям.
    
    
                                                                                
            Чанк form1
[[!AjaxForm?
	&snippet=`FormIt`
	&form=`form1.form` 
	&formName=`Parcel` 
	&hooks=`snippet1,FormItSaveForm` 
	&formFields=`myvar` 
	&fieldNames=`myvar==Test Value` 
	&validate=`myvar:required` 
	&validationErrorMessage=`Please, correct form errors.` 
	&successMessage=`Thank you for sending!`
]]Чанк form1.form:
<form action="" method="post" class="ajax_form af_example" id="myAjaxForm">
	<div class="form-group">
		<label class="control-label" for="af_myvar">[[%af_label_myvar]]</label>
		<div class="controls">
			<input type="text" id="af_myvar" name="myvar" value="[[+fi.myvar]]" placeholder="" class="form-control"/>
			<span class="error_myvar">[[+fi.error.myvar]]</span>
		</div>
	</div>
	
	<div class="form-group">
		<div class="controls">
			<button type="reset" class="btn btn-default">[[%af_reset]]</button>
			<button type="submit" class="btn btn-primary">[[%af_submit]]</button>
		</div>
	</div>
    [[+fi.success:is=`1`:then=`
    <div class="alert alert-success">[[+fi.successMessage]]</div>
    `]]
    [[+fi.validation_error:is=`1`:then=`
    <div class="alert alert-danger">[[+fi.validation_error_message]]</div>
    `]]
</form>Ну и сам сниппет snippet1:<?php
if (empty($_POST['myvar'])) {
		$modx->log(1, "MyVar is empty", 1);
    return $AjaxForm->error('MyVar is empty');
}else{
		$modx->log(1, "MyVar is " . $myvar, 1);
		return $AjaxForm->success('Myvar exists.');
}
$modx->log(1, "Hello!", 1);
return $AjaxForm->error('Ну хоть на что-то сработай, пожалуйста.');
return true;В итоге, всё это всегда возвращает {"success":true,"message":"The form is successfully sent.","data":[]}, при этом в таблицу FormIt $myvar записывается, но ни в логах, ни вообще никаких ошибок не высвечивается. Почему так происходит? Вроде всё делалось строго по примерам. Такое ощущение, что MODX тупо «не видит» этот сниппет.Спасибо, буду рад идеям.
Комментарии: 11
                Попробуйте так
                    <?php
$values = $hook->getValues();
$myvar = $values['myvar'];
if (empty($myvar)) {
		$modx->log(1, "MyVar is empty", 1);
    return $AjaxForm->error('MyVar is empty');
}else{
		$modx->log(1, "MyVar is " . $myvar, 1);
		return $AjaxForm->success('Myvar exists.');
}
$modx->log(1, "Hello!", 1);
return $AjaxForm->error('Ну хоть на что-то сработай, пожалуйста.');
return true;            
                Попробовал. Без изменений: в логах ничего, в FormIt пишется поле. Куда девается сниппет — неясно.            
                    <?php
$values = $hook->getValues();
$myvar = $values['myvar'];
$modx->log(1, 'Данные '.$myvar);
if (empty($myvar)) {
		$modx->log(1, "MyVar is empty");
    return $AjaxForm->error('MyVar is empty');
}else{
		$modx->log(1, "MyVar is " . $myvar);
		return $AjaxForm->success('Myvar exists.');
}
$modx->log(1, "Hello!");
return $AjaxForm->error('Ну хоть на что-то сработай, пожалуйста.');
return true;проверил, дает данные            
                Ок, тогда как искать проблему? Я пробовал сменить шаблон на дефолтный — проблема осталась.            
                    
                вы попробуйте код который я вам дал, должны данные появится            
                    
                Скопировал и вставил. Выполнил. Журнал ошибок чист как слеза младенца. :(            
                    [2020-02-12 21:34:46] (ERROR @ /home/s/satalik2/challengesandsolutions.ru/public_html/core/cache/includes/elements/modsnippet/88.include.cache.php : 4) Данные test
[2020-02-12 21:34:46] (ERROR @ /home/s/satalik2/challengesandsolutions.ru/public_html/core/cache/includes/elements/modsnippet/88.include.cache.php : 9) MyVar is testвот спокойно передается в хук и выводится в лог            
                У кого как, у меня тишина. :( Может быть я попрошу вас посмотреть самому? Есть телеграмм или другое что?            
                    
                whatsapp +79195151313            
                    
                Нет вотсаппа. Что-то другое? Viber, Skype, etc?            
                    
                telegram https://t.me/Stanislav_Danilov            
                    
                            Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.