dzenlife
6/24/2019 - 8:55 AM

bitrix, form.result.new

radio, textarea, text

<?
if (!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED !== true)
    die();
?>

<? if ($arResult["isFormNote"] != "Y"): ?>
    <?= preg_replace('/<form/', '<form class="form" ', $arResult["FORM_HEADER"]) ?>
    <? if ($arResult["isFormErrors"] == "Y"): ?><?= $arResult["FORM_ERRORS_TEXT"]; ?><? endif; ?>
    <h3><?= $arResult['FORM_TITLE'] ?></h3>
    <div class="form-row">
        <div class="form-tab">
            <? foreach ($arResult["QUESTIONS_BLOCK"]['TYPE']['STRUCTURE'] as $item) : ?>
                <label class="form-field--radio-tab">
                    <input type="radio" name="form_radio_TYPE" value="<?= $item['ID'] ?>" <?= ($item['ID'] === $arResult["QUESTIONS_BLOCK"]['TYPE']['VALUE']) ? 'checked' : '' ?>>
                    <span><?= $item['MESSAGE'] ?></span>
                </label>
            <? endforeach; ?>
        </div>
    </div>

    <h3><?= GetMessage('FORM_TITLE_DATA_BLOCK') ?></h3>
    <div class="form-row">
        <? foreach ($arResult["QUESTIONS"] as $FIELD_SID => $arQuestion) : ?>
            <div class="form-item form-item--middle">
                <label class="form-label" for="input_<?= $FIELD_SID ?>"><?= $arQuestion['CAPTION'] ?></label>
                <div class="form-control <?= isset($arQuestion['ERROR']) ? 'error' : '' ?>">
                    <input class="form-field" type="text" id="input_<?= $FIELD_SID ?>" name="form_text_<?= $arQuestion['STRUCTURE'][0]['ID'] ?>" placeholder="<?= $arQuestion['STRUCTURE'][0]['FIELD_PARAM'] ?>" value="<?= $arQuestion['VALUE'] ?>">
                </div>
            </div>
        <? endforeach; ?>
    </div>

    <div class="form-row">
        <div class="form-item form-item--large">
            <label class="form-label" for="textarea"><?= $arResult["QUESTIONS_BLOCK"]['TEXT']['CAPTION'] ?></label>
            <div class="form-control <?= isset($arResult["QUESTIONS_BLOCK"]['TEXT']['ERROR']) ? 'error' : '' ?>"">
                <textarea class="form-field" id="textarea" rows="1" name="form_textarea_<?= $arResult["QUESTIONS_BLOCK"]['TEXT']['STRUCTURE'][0]['ID'] ?>" placeholder="<?= $arResult["QUESTIONS_BLOCK"]['TEXT']['STRUCTURE'][0]['FIELD_PARAM'] ?>"><?= $arResult["QUESTIONS_BLOCK"]['TEXT']['VALUE'] ?></textarea>
            </div>
        </div>
    </div>
    <div class="form-footer">
        <button type="submit" name="web_form_submit" class="btn btn-large btn-action" value="<?= htmlspecialcharsbx(strlen(trim($arResult["arForm"]["BUTTON"])) <= 0 ? GetMessage("FORM_ADD") : $arResult["arForm"]["BUTTON"]); ?>"><?= $arResult['arForm']['BUTTON'] ?></button>
        <p><?= GetMessage('FORM_AGREE_TEXT') ?></p>
    </div>
    <?= $arResult["FORM_FOOTER"] ?>
<? else : ?>
    <div class="form">
        <h3><?= $arResult['FORM_TITLE'] ?></h3>
        <div class="form-row">
            <p><?= GetMessage('FORM_MY_ADDOK') ?></p>
        </div>
    </div>
<? endif; ?>

<?

if (!defined('B_PROLOG_INCLUDED') || B_PROLOG_INCLUDED !== true)
    die();

//RADIO
$arResult["QUESTIONS_BLOCK"]['TYPE'] = $arResult['QUESTIONS']['TYPE'];
$NAME = 'form_radio_TYPE';
if (isset($arResult['arrVALUES'][$NAME])) {
    $arResult["QUESTIONS_BLOCK"]['TYPE']['VALUE'] = $arResult['arrVALUES'][$NAME];
} else {
    $arResult["QUESTIONS_BLOCK"]['TYPE']['VALUE'] = $arResult['QUESTIONS']['TYPE']['STRUCTURE'][0]['ID'];
}
unset($arResult['QUESTIONS']['TYPE']);

//QUESTIONS
foreach ($arResult["QUESTIONS"] as $FIELD_SID => $arQuestion) {
    if (is_array($arResult["FORM_ERRORS"]) && array_key_exists($FIELD_SID, $arResult['FORM_ERRORS'])) {
        $arResult["QUESTIONS"][$FIELD_SID]['ERROR'] = $arResult['FORM_ERRORS'][$FIELD_SID];
    }
    $ID = $arQuestion['STRUCTURE']['0']['ID'];
    $NAME = 'form_text_' . $ID;
    if ($arResult['arrVALUES'][$NAME]) {
        $arResult["QUESTIONS"][$FIELD_SID]['VALUE'] = $arResult['arrVALUES'][$NAME];
    }
}

//TEXTAREA
$NAME = 'form_textarea_' . $arResult['QUESTIONS']['TEXT']['STRUCTURE'][0]['ID'];
if ($arResult['arrVALUES'][$NAME]) {
    $arResult["QUESTIONS"]['TEXT']['VALUE'] = $arResult['arrVALUES'][$NAME];
}
$arResult["QUESTIONS_BLOCK"]['TEXT'] = $arResult['QUESTIONS']['TEXT'];
unset($arResult['QUESTIONS']['TEXT']);
<?
    $APPLICATION->IncludeComponent("bitrix:form.result.new", "callback", Array(
        "AJAX_MODE" => "Y", // режим AJAX
        "AJAX_OPTION_SHADOW" => "N", // затемнять область
        "AJAX_OPTION_JUMP" => "Y", // скроллить страницу до компонента
        "AJAX_OPTION_STYLE" => "Y", // подключать стили
        "AJAX_OPTION_HISTORY" => "N",
        "CACHE_TIME" => "3600", // Время кеширования (сек.)
        "CACHE_TYPE" => "A", // Тип кеширования
        "CHAIN_ITEM_LINK" => "", // Ссылка на дополнительном пункте в навигационной цепочке
        "CHAIN_ITEM_TEXT" => "", // Название дополнительного пункта в навигационной цепочке
        "EDIT_URL" => "", // Страница редактирования результата
        "IGNORE_CUSTOM_TEMPLATE" => "N", // Игнорировать свой шаблон
        "LIST_URL" => "", // Страница со списком результатов
        "SEF_MODE" => "N", // Включить поддержку ЧПУ
        "SUCCESS_URL" => "", // Страница с сообщением об успешной отправке
        "USE_EXTENDED_ERRORS" => "Y", // Использовать расширенный вывод сообщений об ошибках
        "VARIABLE_ALIASES" => array(
            "RESULT_ID" => "RESULT_ID",
            "WEB_FORM_ID" => "WEB_FORM_ID",
        ),
        "WEB_FORM_ID" => 1, // ID веб-формы
            ), false
    );
    ?>
<?
$MESS["FORM_MY_ADDOK"] = "Спасибо! Ваш отзыв отправлен!";
$MESS["FORM_AGREE_TEXT"] = "Нажимая кнопку «Подтвердить заказ» я даю согласие на обработку своих персональных данных.";
$MESS["FORM_TITLE_DATA_BLOCK"] = "Личные данные";
?>