Добре дошъл/дошла, Гост. Моля, въведи своето потребителско име или се регистрирай.

Влез с потребителско име, парола и продължителност на сесията

Новини:

Автор Тема: Save failed with the following error: Please enter your name.  (Прочетена 3145 пъти)

Неактивен ex3mist

  • Загряващ
  • *
  • Публикации: 218
  • ex3m.bg
  • Репутация: +2
    • Онлайн магазин за спортни стоки и туристическа екипировка
Save failed with the following error: Please enter your name.
« -: 12 Декември, 2015, 21:34:39 »
0
Здравейте,
Нещо се прецака във формата за регистрация на VM. Като попълня всички полета и натисна Register ми дава следното съобщение: "Save failed with the following error: Please enter your name.". Всички задължителни полета са попълнени уж, но...
Не мога да разбера аз ли направих нещо или какво. Може да е в следствие на последния ъпдейт, който правих преди около седмица, но не съм сигурен. Някой може ли да даде идея какво може да е? Нещо да проверя? Някакви омазани настройки?
ex3m.bg
allurebg.com

Неактивен ex3mist

  • Загряващ
  • *
  • Публикации: 218
  • ex3m.bg
  • Репутация: +2
    • Онлайн магазин за спортни стоки и туристическа екипировка
Re: Save failed with the following error: Please enter your name.
« Отговор #1 -: 13 Декември, 2015, 10:39:55 »
0
Успях да установя, че грешката е в резултат на това, че полето "Displayed Name" не е попълнено. Проблемът е, че също не е публикувано, не е задължително и т.н., всичките му настройки са на "No". Така искам и да си остане - да не се показва.

Опитах и да закоментирам кода, който проверява дали това поле е попълнено в /libraries/joomla/table/user.php, а именно:

Код: newbielink:javascript:void(0); [nonactive]
if ($filterInput->clean($this->name, 'TRIM') == '')
{
$this->setError(JText::_('JLIB_DATABASE_ERROR_PLEASE_ENTER_YOUR_NAME'));

return false;
}

Но и това не решава проблема - дава бял екран като натиснеш Register. Явно не може без този код.

Някаква идея как да се отърва от това поле?
ex3m.bg
allurebg.com

Неактивен ex3mist

  • Загряващ
  • *
  • Публикации: 218
  • ex3m.bg
  • Репутация: +2
    • Онлайн магазин за спортни стоки и туристическа екипировка
Re: Save failed with the following error: Please enter your name.
« Отговор #2 -: 15 Декември, 2015, 14:00:03 »
0
Намерих решение, което за сега работи нормално. Поствам го в случай, че и някой друг се интересува:

Редактира се файлът edit_address_userfields.php, като разбира се най-добре е да го копирате в папката на съответния темплейт, който ползвате: ../templates/[yourtemplate]/html/com_virtuemart/user
Заменяте следния код (около ред 71):

Код: newbielink:javascript:void(0); [nonactive]
<tr title="<?php echo strip_tags($descr?>">
<td class="key"  >
<label class="<?php echo $field['name'?>" for="<?php echo $field['name'?>_field">
<?php echo $field['title'] . ($field['required'] ? ' *' ''?>
</label>
</td>
<td>
<?php echo $field['formcode'?>
</td>
</tr>


с този:

Код: newbielink:javascript:void(0); [nonactive]
<tr title="<?php echo strip_tags($descr?>" <?php if ($field['name']=="name") {echo 'style=display:none;';};?> >
<td class="key"  >
<label class="<?php echo $field['name'?>" for="<?php echo $field['name'?>_field">
<?php echo $field['title'] . ($field['required'] ? ' *' ''?>
</label>
</td>
<td>
<?php echo $field['formcode'?>
</td>
</tr>


И накрая на файла добавяте това:

Код: newbielink:javascript:void(0); [nonactive]
<script type="text/javascript">
var $j = jQuery.noConflict(); //avoid conflict with other libraries

$j('#username_field').change(function () {             
var reg_user = $j('#username_field').val(); //set username value inside variable
    $j('#name_field').val(reg_user); //assign variable value to name
});
</script>


Не съм много в час с програмирането, но по обясненията в официалния VM форум разбрах, че полето "Displayed Name" се попълва автоматично с това, което е въведено в полето "Username" и бива скривано. Разбира се, "Displayed Name" трябва да е активно в админа.

За момента при мен всичко работи нормално с Joomla! 3.4.5 и VirtueMart 3.0.11.4.

Не забравяйте преди това да направите бекъп!
ex3m.bg
allurebg.com