Vidím, že tento problém se opětovně vyskytuje (a u mě taky), takže přikládám ještě řešení, která jsem našel na anglických podpůrných stránkách (pro mne fungovalo hned první). Jen poznamenávám, že hlavní problém je, že se vám na stránce nezobrazí políčko pro uživatelské jméno (pouze pro token):
1) Přihlašte se na FTP a přejděte do adresáře: templates/JMENO_VASI_SABLONY/html/com_user/reset/
a přejmenujte: confirm.php na confirm.php-BAK
Zkuste teď obnovit stránku pro zadání tokenu - už by se mělo objevit uživatelské jméno...
Pokud nemáte ten config.php nebo vám to nefunguje, tak zkuste:
2) Zkopírujte si z FTP soubor: /components/com_user/models/reset.php
Přejděte na řádku 126 - právě ta se musí vymazat, protože je tam špatná kontrola, která nikdy neprojde.
Takto by měly vypadat řádky 126 až 133:
$row = $db->loadObject();
// Verify the token
if (!($row = $db->loadObject()))
{
$this->setError(JText::_('INVALID_TOKEN'));
return false;
}
Takže odstraňte první řádku ( $row = $db->loadObject(); )
...a zkuste opět tu stránku pro zadání tokenu.
3) Ještě jeden návod od pána, který tam to uživatelské jméno "natvrdo" dopsal. Zkopírujte si přes FTP soubor templates/JMENO_VASI_SABLONY/html/com_user/reset/confirm.php
Najděte si v něm část, která vypisuje token a nad ní přidejte:
<tr>
<td height="40">
<label for="username" class="hasTip" title="<?php echo JText::_('RESET_PASSWORD_USERNAME_TIP_TITLE'); ?>::<?php echo JText::_('RESET_PASSWORD_USERNAME_TIP_TEXT'); ?>"><?php echo JText::_('User Name'); ?>:</label>
</td>
<td>
<input id="username" name="username" type="text" class="required" size="36" />
</td>
</tr>
Jinak upozorňuji, že v závislosti na tom, jakou máte šablonu a nainstalované pluginy, se může stránka pro změnu hesla nacházet i jinde. Konkrétně tento pán ji musel změnit zde:
/plugins/system/jat3/base-themes/default/html/com_user/reset/confirm.php
Těch confirm.php najdete na celých stránkách zřejmě více, ten hledaný by vždy měl vypadat jako .../com_user/reset/confirm.php