%PDF- %PDF-
Direktori : /home/bitrix/www/bitrix/components/bitrix/main.mail.form/templates/.default/ |
Current File : //home/bitrix/www/bitrix/components/bitrix/main.mail.form/templates/.default/template.php |
<? if (!defined('B_PROLOG_INCLUDED') || B_PROLOG_INCLUDED !== true) die(); $htmlFormId = htmlspecialcharsbx('main_mail_form_'.$arParams['FORM_ID']); $renderField = function($htmlFormId, $field, $isExt = false) { global $APPLICATION; if (in_array($field['type'], array('editor', 'files'))) return; $htmlFieldId = sprintf('%s_%s', $htmlFormId, htmlspecialcharsbx($field['id'])); ?><tr id="<?=$htmlFieldId ?>" <? if (!empty($field['hidden']) || !empty($field['folded'])): ?> style="display: none; "<? endif ?>><? $titleSubClass = 'main-mail-form-field-title-cell'; if (!empty($field['required'])) $titleSubClass .= ' main-mail-form-field-title-required'; $valueSubClass = 'main-mail-form-field-value-cell'; if (!empty($field['short'])) $valueSubClass .= ' main-mail-form-field-value-short'; if (!empty($field['menu'])) $valueSubClass .= ' main-mail-form-field-value-menu-ext'; switch ($field['type']) { case 'separator': ?> <td colspan="2" class="main-mail-form-fields-table-cell"> <div class="main-mail-form-border-bottom"></div> </td> <? break; case 'list': ?> <td class="main-mail-form-fields-table-cell <?=$titleSubClass ?>"> <span class="main-mail-form-field-spacer-25"></span> <span class="main-mail-form-field-title"><?=preg_replace('/[\r\n]+/', '<br>', htmlspecialcharsbx($field['title'])) ?>:</span> </td> <td class="main-mail-form-fields-table-cell <?=$valueSubClass ?>"> <input type="hidden" id="<?=$htmlFieldId ?>_value" name="<?=htmlspecialcharsbx($field['name']) ?>" value="<?=htmlspecialcharsbx($field['value']) ?>"> <span class="main-mail-form-field-spacer-25"></span> <span class="main-mail-form-field-title main-mail-form-field-value-menu"><? echo htmlspecialcharsbx($field['list'][$field['value']] ?: $field['placeholder']); ?></span> </td> <? break; case 'from': ?> <td class="main-mail-form-fields-table-cell <?=$titleSubClass ?>"> <span class="main-mail-form-field-spacer-25"></span> <span class="main-mail-form-field-title"><?=preg_replace('/[\r\n]+/', '<br>', htmlspecialcharsbx($field['title'])) ?>:</span> </td> <td class="main-mail-form-fields-table-cell <?=$valueSubClass ?>"> <? $mailboxes = $APPLICATION->includeComponent('bitrix:main.mail.confirm', '', array()); ?> <input type="hidden" id="<?=$htmlFieldId ?>_value" name="<?=htmlspecialcharsbx($field['name']) ?>" value="<?=htmlspecialcharsbx($field['value']) ?>"> <span class="main-mail-form-field-spacer-25"></span> <span class="main-mail-form-field-from-icon"></span> <span class="main-mail-form-field-title main-mail-form-field-value-menu"><? echo htmlspecialcharsbx($field['value'] ?: $field['placeholder']); ?></span> </td> <? break; case 'rcpt': $valueSubClass .= ' main-mail-form-field-value-rcpt'; ?> <td class="main-mail-form-fields-table-cell <?=$titleSubClass ?>"> <span class="main-mail-form-field-spacer"></span> <span class="main-mail-form-field-title"><?=preg_replace('/[\r\n]+/', '<br>', htmlspecialcharsbx($field['title'])) ?>:</span> </td> <td class="main-mail-form-fields-table-cell <?=$valueSubClass ?>"> <div class="main-mail-form-field-value-wrapper"> <span class="main-mail-form-field-rcpt-more-wrapper" style="display: none; "> <span class="feed-add-post-destination main-mail-form-field-rcpt-item-more" title="<?=getMessage('MAIN_MAIL_FORM_RCPT_MORE_HINT', array('#NUM#' => 0)) ?>">...</span> </span> <span class="main-mail-form-field-rcpt-value-wrapper" style="display: none; "> <input class="main-mail-form-field-value main-mail-form-field-rcpt-value" type="text" id="<?=$htmlFieldId ?>_fvalue"> </span> <a class="feed-add-destination-link main-mail-form-field-rcpt-add-link" href="javascript:void(0)"><? echo htmlspecialcharsbx($field['placeholder']); ?></a> </div> </td> <? break; case 'custom': $titleSpacerSubClass = isset($field['height']) && $field['height'] > 0 ? sprintf('main-mail-form-field-spacer-%u', $field['height']) : ''; ?> <td class="main-mail-form-fields-table-cell <?=$titleSubClass ?>"> <span class="main-mail-form-field-spacer <?=$titleSpacerSubClass ?>"></span> <span class="main-mail-form-field-title"><?=preg_replace('/[\r\n]+/', '<br>', htmlspecialcharsbx($field['title'])) ?>:</span> </td> <td class="main-mail-form-fields-table-cell <?=$valueSubClass ?>"> <?=(isset($field['render']) && is_callable($field['render']) ? $field['render']($field) : $field['value']); ?> </td> <? break; case 'text': default: ?> <td class="main-mail-form-fields-table-cell <?=$titleSubClass ?>"> <span class="main-mail-form-field-spacer"></span> <span class="main-mail-form-field-title"><?=preg_replace('/[\r\n]+/', '<br>', htmlspecialcharsbx($field['title'])) ?>:</span> </td> <td class="main-mail-form-fields-table-cell <?=$valueSubClass ?>"> <div class="main-mail-form-field-value-wrapper"> <input class="main-mail-form-field-value" type="text" id="<?=$htmlFieldId ?>_value" name="<?=htmlspecialcharsbx($field['name']) ?>" value="<?=htmlspecialcharsbx($field['value']) ?>" placeholder="<?=htmlspecialcharsbx($field['placeholder']) ?>"> <span class="main-mail-form-field-value-menu-ext-button"></span> </div> </td> <? } ?></tr><? }; \Bitrix\Main\UI\Extension::load('ui.buttons'); ?> <div class="main-mail-form-wrapper" id="<?=$htmlFormId ?>"> <div class="main-mail-form-fields-wrapper"> <table class="main-mail-form-fields-table"> <? foreach ($arParams['FIELDS'] as $field) $renderField($htmlFormId, $field); ?> <tr id="<?=sprintf('%s_fields_footer', $htmlFormId) ?>"> <td class="main-mail-form-fields-footer-cell" colspan="2"> <div class="main-mail-form-fields-buttons"> <? foreach ($arParams['FIELDS'] as $field): ?> <? if (in_array($field['type'], array('editor', 'files', 'separator'))) continue; ?> <span class="main-mail-form-field-button" data-target="<?=sprintf('%s_%s', $htmlFormId, htmlspecialcharsbx($field['id'])) ?>" <? if (empty($field['folded']) || !empty($field['hidden'])): ?> style="display: none; "<? endif ?>><? echo htmlspecialcharsbx($field['title']) ?></span> <? endforeach ?> </div> </td> </tr> </table> </div> <? $editorHeight = isset($arParams['EDITOR']['height']) && $arParams['EDITOR']['height'] > 0 ? (int) $arParams['EDITOR']['height'] : 200; $editorValue = ''; $fromField = false; foreach($arParams['FIELDS'] as $field) { if($field['type'] === 'from') { $fromField = $field; break; } } if(is_array($fromField) && $fromField['value']) { foreach($fromField['mailboxes'] as $mailbox) { if($mailbox['formated'] == $fromField['value'] && !empty($mailbox['signature'])) { $editorValue = '<div id="main-mail-form-signature"><br />--<br />'.$mailbox['signature'].'</div>'; break; } } } ?> <div id="<?=sprintf('%s_%s', $htmlFormId, htmlspecialcharsbx($arParams['EDITOR']['id'])) ?>" class="main-mail-form-editor-wrapper <? if (!empty($arParams['EDITOR']['menu'])): ?> main-mail-form-field-value-menu-ext<? endif ?>" style="min-height: <?=$editorHeight ?>px; "> <? $APPLICATION->includeComponent( 'bitrix:main.post.form', '', array( 'FORM_ID' => $htmlFormId, 'SHOW_MORE' => 'N', 'PARSER' => array( 'Bold', 'Italic', 'Underline', 'Strike', 'ForeColor', 'FontList', 'FontSizeList', 'RemoveFormat', 'Quote', 'Code', 'Source', 'Table', 'CreateLink', 'Image', 'UploadImage', 'Justify', 'InsertOrderedList', 'InsertUnorderedList', ), 'BUTTONS' => array_merge( !empty($arParams['FOLD_QUOTE']) ? array('ReplyQuote') : array(), array('UploadImage', 'UploadFile', 'Panel') ), 'BUTTONS_HTML' => array( 'ReplyQuote' => '<span class="main-mail-form-quote-button-wrapper"><span class="main-mail-form-quote-button">...</span></span>', 'Panel' => '<span class="feed-add-post-form-but-cnt"><span class="bxhtmled-top-bar-btn feed-add-post-form-editor-btn"></span></span>', ), 'TEXT' => array( 'INPUT_NAME' => 'dummy_'.$arParams['EDITOR']['name'], 'VALUE' => $editorValue, 'SHOW' => !empty($arParams['EDITOR_TOOLBAR']) ? 'Y' : 'N', ), 'PROPERTIES' => array( array( 'USER_TYPE_ID' => 'disk_file', 'USER_TYPE' => array('TAG' => 'ATTACHMENT'), 'FIELD_NAME' => $arParams['FILES']['name'].'[]', 'VALUE' => $arParams['FILES']['value'], 'HIDE_CHECKBOX_ALLOW_EDIT' => 'Y', ), ), 'LHE' => array( 'id' => sprintf('%s_editor', $htmlFormId), 'documentCSS' => 'body { color:#434343; }', 'fontFamily' => "'Helvetica Neue', Helvetica, Arial, sans-serif", 'fontSize' => '15px', 'height' => $editorHeight, 'lazyLoad' => true, 'bbCode' => false, 'setFocusAfterShow' => true, 'iframeCss' => 'body { padding-left: 10px !important; font-size: 15px; }', 'useFileDialogs' => false, 'useLinkStat' => false, 'uploadImagesFromClipboard' => false, 'controlsMap' => array( array('id' => 'Bold', 'compact' => true, 'sort' => 10), array('id' => 'Italic', 'compact' => true, 'sort' => 20), array('id' => 'Underline', 'compact' => true, 'sort' => 30), array('id' => 'Strikeout', 'compact' => true, 'sort' => 40), array('id' => 'RemoveFormat', 'compact' => true, 'sort' => 50), array('id' => 'Color', 'compact' => true, 'sort' => 60), array('id' => 'FontSelector', 'compact' => false, 'sort' => 70), array('id' => 'FontSize', 'compact' => false, 'sort' => 80), array('separator' => true, 'compact' => false, 'sort' => 90), array('id' => 'OrderedList', 'compact' => true, 'sort' => 100), array('id' => 'UnorderedList', 'compact' => true, 'sort' => 110), array('id' => 'AlignList', 'compact' => false, 'sort' => 120), array('separator' => true, 'compact' => false, 'sort' => 130), array('id' => 'InsertLink', 'compact' => true, 'sort' => 140), array('id' => 'InsertImage', 'compact' => false, 'sort' => 150), array('id' => 'InsertTable', 'compact' => false, 'sort' => 170), array('id' => 'Code', 'compact' => true, 'sort' => 180), array('id' => 'Quote', 'compact' => true, 'sort' => 190), array('separator' => true, 'compact' => false, 'sort' => 200), array('id' => 'Fullscreen', 'compact' => false, 'sort' => 210), array('id' => 'BbCode', 'compact' => false, 'sort' => 220), array('id' => 'More', 'compact' => true, 'sort' => 400), ), ), ), false, array('HIDE_ICONS' => 'Y', 'ACTIVE_COMPONENT' => 'Y') ); ?> <span class="main-mail-form-field-value-menu-ext-button"></span> </div> <? if (!empty($arParams['FIELDS_EXT'])): ?> <div class="main-mail-form-docs-wrapper main-mail-form-border-bottom"> <table class="main-mail-form-fields-table"> <? foreach ($arParams['FIELDS_EXT'] as $field) $renderField($htmlFormId, $field, true); ?> <tr id="<?=sprintf('%s_fields_ext_footer', $htmlFormId) ?>"> <td class="main-mail-form-fields-footer-cell" colspan="2"> <div class="main-mail-form-fields-buttons"> <? foreach ($arParams['FIELDS_EXT'] as $field): ?> <? if (in_array($field['type'], array('editor', 'files', 'separator'))) continue; ?> <span class="main-mail-form-field-button" data-target="<?=sprintf('%s_%s', $htmlFormId, htmlspecialcharsbx($field['id'])) ?>" <? if (empty($field['folded']) || !empty($field['hidden'])): ?> style="display: none; "<? endif ?>><? echo htmlspecialcharsbx($field['title']) ?></span> <? endforeach ?> </div> </td> </tr> </table> </div> <? else: ?> <div class="main-mail-form-border-bottom"></div> <? endif ?> <div class="main-mail-form-error" style="display: none; "></div> <div class="main-mail-form-footer-wrapper"> <div class="main-mail-form-footer"> <div class="main-mail-form-footer-buttons-wrapper"> <? foreach ($arParams['BUTTONS'] as $type => $item) { if (empty($item['class'])) { if ('submit' == $type) $item['class'] = 'ui-btn-success'; else if ('cancel' == $type) $item['class'] = 'ui-btn-link'; else $item['class'] = 'ui-btn-light-border'; } if ('submit' == $type) $item['class'] .= ' main-mail-form-submit-button'; else if ('cancel' == $type) $item['class'] .= ' main-mail-form-cancel-button'; ?><button class="ui-btn main-mail-form-footer-button <?=htmlspecialcharsbx($item['class']) ?>" type="button"><?=htmlspecialcharsbx($item['title']) ?></button><? } ?> </div> <div><?=$arParams['~FOOTER'] ?></div> </div> </div> <input id="<?=htmlspecialcharsbx($htmlFormId) ?>_<?=htmlspecialcharsbx($arParams['EDITOR']['id']) ?>_value" type="hidden" name="<?=htmlspecialcharsbx($arParams['EDITOR']['name']) ?>"> <input type="submit" name="<?=sprintf('%s_submit', $htmlFormId) ?>" value="Y" style="display: none; "> </div> <script type="text/javascript"> BX.message({ BXEdBbCode: '<?=\CUtil::jsEscape(getMessage('MAIN_MAIL_FORM_EDITOR_HTML_MODE_BTN_HINT')) ?>' }); BX.ready(function() { var form = new BXMainMailForm( '<?=\CUtil::jsEscape($arParams['FORM_ID']) ?>', <?=\Bitrix\Main\Web\Json::encode(array_merge( array_values($arParams['FIELDS']), array_values($arParams['FIELDS_EXT']) )) ?>, <?=\Bitrix\Main\Web\Json::encode(array( 'submitAjax' => !empty($arParams['SUBMIT_AJAX']), 'foldQuote' => !empty($arParams['FOLD_QUOTE']), 'foldFiles' => !empty($arParams['FOLD_FILES']), )) ?> ); <? if (empty($arParams['LAYOUT_ONLY'])): ?> form.init(); <? endif ?> }); </script>