1

I have a problem which has kept me occupied for three days already. When doing a password reset, customers get the email, and the token generation is valid, but when they click the link then they will be taken to a page which has the header, left column and footer and a blank col-main.

This is the wrong layout, it should get 1 column only...

I've done SUPEE 6788 and I've made sure that:

<customer_account_resetpassword translate="label">
<label>Reset a Password</label>
<remove name="right"/>
<remove name="left"/>

<reference name="head">
    <action method="setTitle" translate="title" module="customer">
        <title>Reset a Password</title>
    </action>
</reference>
<reference name="root">
    <action method="setTemplate">
        <template>page/1column.phtml</template>
    </action>
    <action method="setHeaderTitle" translate="title" module="customer">
        <title>Reset a Password</title>
    </action>
</reference>
<reference name="content">
    <block type="customer/account_resetpassword" name="resetPassword" template="customer/form/resetforgottenpassword.phtml"/>
</reference>

Was updated to:

<customer_account_changeforgotten translate="label">
<label>Reset a Password</label>
<remove name="right"/>
<remove name="left"/>

<reference name="head">
    <action method="setTitle" translate="title" module="customer">
        <title>Reset a Password</title>
    </action>
</reference>
<reference name="root">
    <action method="setTemplate">
        <template>page/1column.phtml</template>
    </action>
    <action method="setHeaderTitle" translate="title" module="customer">
        <title>Reset a Password</title>
    </action>
</reference>
<reference name="content">
    <block type="customer/account_changeforgotten" name="changeForgottenPassword" template="customer/form/resetforgottenpassword.phtml"/>
</reference>

Other customer account layout in the customer.xml Customer account ForgotPassword block:

<customer_account_forgotpassword translate="label">
    <label>Customer Forgot Password Form</label>
    <remove name="right"/>
    <remove name="left"/>

    <reference name="head">
        <action method="setTitle" translate="title" module="customer"><title>Forgot Your Password</title></action>
    </reference>
    <reference name="root">
        <action method="setTemplate"><template>page/1column.phtml</template></action>
        <action method="setHeaderTitle" translate="title" module="customer"><title>Password forgotten</title></action>
    </reference>
    <reference name="content">
        <!--<block type="core/template" name="forgotPassword" template="customer/form/forgotpassword.phtml"/>-->
        <block type="customer/account_forgotpassword" name="forgotPassword" template="customer/form/forgotpassword.phtml" />
    </reference>
</customer_account_forgotpassword>

Customer account Change Forgotten Block:

<customer_account_changeforgotten translate="label">
    <label>Reset a Password</label>
    <remove name="right"/>
    <remove name="left"/>

    <reference name="head">
        <action method="setTitle" translate="title" module="customer">
            <title>Reset a Password</title>
        </action>
    </reference>
    <reference name="root">
        <action method="setTemplate">
            <template>page/1column.phtml</template>
        </action>
        <action method="setHeaderTitle" translate="title" module="customer">
            <title>Reset a Password</title>
        </action>
    </reference>
    <reference name="content">
        <block type="customer/account_changeforgotten" name="changeForgottenPassword" template="customer/form/resetforgottenpassword.phtml"/>
    </reference>
</customer_account_changeforgotten>

Customer account Reset Password block:

<customer_account_resetpassword translate="label">
<label>Reset a Password</label>
<remove name="right"/>
<remove name="left"/>

<reference name="head">
    <action method="setTitle" translate="title" module="customer">
        <title>Reset a Password</title>
    </action>
</reference>
<reference name="root">
    <action method="setTemplate">
        <template>page/1column.phtml</template>
    </action>
    <action method="setHeaderTitle" translate="title" module="customer">
        <title>Reset a Password</title>
    </action>
</reference>
<reference name="content">
    <block type="customer/account_resetpassword" name="resetPassword" template="customer/form/resetforgottenpassword.phtml"/>
</reference>
</customer_account_resetpassword>

However, this is not the problem, I see the problem is the biggest in the fact that it goes to 2 col left layout while in customer.xml I clearly have the 1 column page.

I've spent three days now, and I do not know what to google for anymore :) Also here offcourse I couldn't find this case.

Adding also controller code:

public function changeForgottenAction()
{
    try {
        list($customerId, $resetPasswordLinkToken) = $this->_getRestorePasswordParameters($this->_getSession());
        $this->_validateResetPasswordLinkToken($customerId, $resetPasswordLinkToken);
        $this->loadLayout();
        $this->renderLayout();

    } catch (Exception $exception) {
        $this->_getSession()->addError(Mage::helper('customer')->__('Your password reset link has expired.'));
        $this->_redirect('*/*/forgotpassword');
    }
}

1 Answer 1

0

you need to add two line in xml

<remove name="right"/>
<remove name="left"/>

before your code

<reference name="head">
    <action method="setTitle" translate="title" module="customer">
        <title>Reset a Password</title>
    </action>
</reference>
<reference name="root">
    <action method="setTemplate">
        <template>page/1column.phtml</template>
    </action>
    <action method="setHeaderTitle" translate="title" module="customer">
        <title>Reset a Password</title>
    </action>
</reference>
<reference name="content">
    <block type="customer/account_changeforgotten" name="changeForgottenPassword" template="customer/form/resetforgottenpassword.phtml"/>
</reference>
8

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.