Forums / National / Russian / Убрать из полей формы подсказки

vpktz
#1 2023-04-09 17:54

Модуль payments, форма перевода среств другому зарегистрированному. 

Проблема в том что в случае неправильного заполнения полей или в не заполнении вовсе выходит файл с ошибками темы 

{FILE "{PHP.cfg.themes_dir}/{PHP.cfg.defaulttheme}/warnings.tpl"}

Это хорошо и мне нравится как это выглядит. Но именно в форме перевода средств выходят уведомления еще и под самими полями которые заполнены не корректно, это выглядит бессмыслено и хотелось бы это отключить вовсе. 

<form action="{TRANSFER_FORM_ACTION_URL}" method="post" id="transferform" class="uk-form-horizontal uk-margin-medium-top" action="{PAYOUT_FORM_ACTION_URL}" method="post">
                        <div class="uk-margin">
                            <label class="uk-form-label" for="form-horizontal-text">
                              Комментарий
                            </label>
                            <div class="uk-form-controls">
                              {TRANSFER_FORM_COMMENT|cot_rc_modify($this, 'class="uk-textarea font-monospace" rows="2" maxlength="250" placeholder="дополнительная информация для перевода"')}
                            </div>
                        </div>
                        <div class="uk-margin">
                            <label class="uk-form-label" for="form-horizontal-text">
                              Логин получателя
                            </label>
                            <div class="uk-form-controls">
                              {TRANSFER_FORM_USERNAME|cot_rc_modify($this, 'class="uk-input font-monospace" maxlength="15" placeholder="без ошибок и пробелов"')}
                            </div>
                        </div>
                        <div class="uk-margin">
                            <label class="uk-form-label" for="form-horizontal-select">
                              Сумма до 5000 ₽
                            </label>
                            <div class="uk-form-controls">
                                {TRANSFER_FORM_SUMM|cot_rc_modify($this, 'class="uk-input font-monospace" type="number" step="0.01" min="0" placeholder="0.00"')}
                            </div>
                        </div>
                        <div class="uk-margin">
                            <div class="uk-form-controls uk-form-controls-text">
                              <button class="uk-button uk-button-default">
                                Перевод
                              </button>
                            </div>
                        </div>
                    </form>

Выгялдит это так.

Эти посказки которые отметил синими стрелками, рушат всю форму. И смысла в этих подсказках нет так как они дублируются. Достаточно только того что в оранжевом овале.

webitproff
#2 2023-04-09 18:02

1. for="form-horizontal-select" - это сразу удалите из шаблона

2. |cot_rc_modify -  ну перемудрили.... до жести.

сам шаблон и мойскин.php и мойскин.resources.php файлы прикрпите

Добавлено 3 минуты спустя:

можете заменить этот участок на мой и показать скриншот?

 

				<!-- BEGIN: TRANSFERFORM -->
				<div class="uk-card uk-card-small uk-card-body uk-background-default uk-border-rounded uk-margin-bottom">
				  <h1 class="uk-heading-divider">
				    <span class="uk-text-warning">{PHP.L.payments_transfer}</span>
				  </h1> {FILE "{PHP.cfg.themes_dir}/{PHP.usr.theme}/warnings.tpl"} <form action="{TRANSFER_FORM_ACTION_URL}" method="post" id="transferform" class="uk-form-horizontal uk-margin-small">
				    <div class="uk-margin">
				      <label class="uk-form-label">
				        <span class="uk-text-warning uk-margin-small-right" uk-icon="icon: happy; ratio: 1.5"></span>
				        <span class="uk-h4 uk-text-middle uk-text-danger">{PHP.L.payments_balance_transfer_username}:</span>
				      </label>
				      <div class="uk-form-controls"> {TRANSFER_FORM_USERNAME} </div>
				    </div>
				    <div class="uk-margin">
				      <label class="uk-form-label">
				        <span class="uk-text-warning uk-margin-small-right" uk-icon="icon: commenting; ratio: 1.5"></span>
				        <span class="uk-h4 uk-text-middle uk-link-text">{PHP.L.payments_balance_transfer_comment}:</span>
				      </label>
				      <div class="uk-form-controls"> {TRANSFER_FORM_COMMENT} </div>
				    </div>
				    <div class="uk-margin" uk-margin>
				      <label class="uk-form-label">
				        <span class="uk-text-primary uk-margin-small-right" uk-icon="icon: credit-card; ratio: 1.5"></span>
				        <span class="uk-h4 uk-text-middle uk-text-bold uk-text-success">{PHP.L.payments_balance_transfer_summ}:</span>
				      </label>
				      <div class="uk-form-controls" uk-form-custom="target: true"> {TRANSFER_FORM_SUMM} </div>
				      <span class="uk-button uk-button-primary uk-button-small">{PHP.cfg.payments.valuta}</span>
				    </div>
				    <!-- IF {PHP.cfg.payments.transfertax} > 0 AND !{PHP.cfg.payments.transfertaxfromrecipient} -->
				    <div class="uk-margin">
				      <ul class="uk-list uk-list-divider">
				        <li>
				          <span class="uk-text-warning uk-margin-small-right" uk-icon="icon: info; ratio: 1.5"></span>
				          <span class="uk-h4 uk-text-middle uk-link-text">{PHP.L.payments_balance_transfer_tax} ({PHP.cfg.payments.transfertax} %): </span>
				          <span id="transfer_tax" class="uk-h4 uk-text-middle uk-text-danger">{TRANSFER_FORM_TAX}</span>
				          <span class="uk-h4 uk-text-middle uk-link-text"> {PHP.cfg.payments.valuta}</span>
				        </li>
				        <li>
				          <span class="uk-text-warning uk-margin-small-right" uk-icon="icon: warning; ratio: 1.5"></span>
				          <span class="uk-h4 uk-text-middle uk-link-text">{PHP.L.payments_balance_transfer_total}: </span>
				          <span id="transfer_total" class="uk-h4 uk-text-middle uk-text-danger">{TRANSFER_FORM_TOTAL}</span>
				          <span class="uk-h4 uk-text-middle uk-link-text"> {PHP.cfg.payments.valuta}</span>
				        </li>
				        <script>
				          $().ready(function() {
				            $('#transferform').bind('change click keyup', function() {
				              var summ = parseFloat($("input[name='summ']").val());
				              var tax = parseFloat({
				                PHP.cfg.payments.transfertax
				              });
				              if (isNaN(summ)) summ = 0;
				              var taxsumm = summ * tax / 100;
				              var totalsumm = summ + taxsumm;
				              $('#transfer_tax').html(taxsumm);
				              $('#transfer_total').html(totalsumm);
				            });
				          });
				        </script>
				      </ul>
				    </div>
				    <!-- ENDIF -->
				    <div class="form-group row">
				      <label class="col-md-3 control-label"></label>
				      <div class="col-md-2">
				        <button class="btn uk-button uk-button-linear uk-button-large">{PHP.L.Submit}</button>
				      </div>
				    </div>
				  </form>
				</div>
				<!-- END: TRANSFERFORM -->

 

Добавлено 2 минуты спустя:

а модификацию попробуйте только так

для плейсхолдера

{TRANSFER_FORM_COMMENT|cot_rc_modify($this, 'placeholder="дополнительная информация для перевода"')}

но я предпочитаю тултипы

Добавлено 11 минут спустя:

или что я не понял? убать или сообщения ошибок типа "не указаны комментарии к переводу" ?

уточните

Добавлено 6 минут спустя:

если беспокоит вывод ошибок как на скриншоте внизу справа - правьте свой warnings.tpl

 

Добавлено 42 секунды спустя:

у меня так на  ERROR

<!-- BEGIN: ERROR -->
		<div uk-scrollspy="cls: uk-animation-slide-right; target: .uk-card; delay: 300; repeat: true" >
			<div class="uk-card uk-box-shadow-medium uk-border-rounded-mdm uk-width-1-3@l uk-position-z-index uk-position-fixed uk-position-medium uk-position-bottom-right uk-alert-danger" uk-alert>
				<a class="uk-alert-close" uk-close></a>
				<h4 class="uk-text-bold uk-text-danger uk-animation-slide-right uk-animation-toggle" tabindex="0"><img class="uk-animation-shake uk-margin-small-right" width="27" height="27" alt="" uk-img="data-src: /themes/{PHP.theme}/img/icon/048-notification.svg" uk-svg="uk-preserve"><span class="uk-text-middle">{PHP.L.Error}!</span></h4>
				<!-- BEGIN: ERROR_ROW -->
				<p class="uk-link-text">{ERROR_ROW_MSG}</p>
				<!-- END: ERROR_ROW -->
			</div>
		</div>
<!-- END: ERROR -->

 

аккаунт удален - не срослось с разработчиками
ушел на другой движок
This post was edited by webitproff (2023-04-09 18:30, 1 year ago)
vpktz
#3 2023-04-09 18:48

если беспокоит вывод ошибок как на скриншоте внизу справа - правьте свой warnings.tpl

 

smiley   Нет, как раз как работает error м еня устраивает. Мне не нравится то что ошибки дублируются еще и в самой в форме.

то есть если wirning.tpl  выдает сообщение с верху то мне его и достаточно.

Мне не надо чтор сообщения еще и форме под каждым полем выходили,?   На моем скриншоте я пометил это синими стрелочками.

 

Ваш код полностью заменил свой, не поменялось. Сообщения об ошибке тоже выходят.

То что  я стрелочкой отметил это я хочу убрать в обще. Мне достаточно уведомлений сверху, 

 

webitproff
#4 2023-04-09 19:02

вы как бы себе самому противоречите, - устративает, потом убрать. я запутался...

аккаунт удален - не срослось с разработчиками
ушел на другой движок
Dayver
#5 2023-04-10 03:53
#46442 vpktz:

Эти посказки которые отметил синими стрелками, рушат всю форму. И смысла в этих подсказках нет так как они дублируются. Достаточно только того что в оранжевом овале.

Два способа решения.

Либо в админке Управление сайтом / Конфигурация / Темы опция "Показывать сообщения отдельно для каждого источника:" ставится в "Нет" но это сработает глобально по всему сайту.

Либо переопределите ресурсы к требуем строкам. Например глобально для всех инпутов вместо:

$R['input_default'] = '<input type="{$type}" name="{$name}" value="{$value}"{$attrs} />{$error}';

вот такое:

$R['input_default'] = '<input type="{$type}" name="{$name}" value="{$value}"{$attrs} />';

Или более целенаправлено, вместо:

$R['input_text'] = '<input type="text" name="{$name}" value="{$value}" {$attrs} />{$error}';

вот такое:

$R['input_text'] = '<input type="text" name="{$name}" value="{$value}" {$attrs} />';

Но можно точено конкретным строкам, например для вашего поля "Логин получателя" в вашей теме добавить ресурс

$R['input_text_username'] = '<input type="text" name="{$name}" value="{$value}" {$attrs} />';

Как видите просто для нужных полей из ресурса убрать {$error}

Pavlo Tkachenko aka Dayver
vpktz
#6 2023-04-10 07:30

Два способа решения.

Либо в админке Управление сайтом / Конфигурация / Темы опция "Показывать сообщения отдельно для каждого источника:" ставится в "Нет" но это сработает глобально по всему сайту.

Это применил, работает. глобально будет нормально. 

Но про строки тоже спасибо, это дало понимание тоже.cool